docs/manual/: Fix docs to use _bin_add() before _link(), which fixes the examples...
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-08-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2
3         * docs/manual/advanced-dataaccess.xml:
4         * docs/manual/basics-helloworld.xml:
5           Fix docs to use _bin_add() before _link(), which fixes the examples
6           with recent core versions (reported by Madhan Raj M
7           <raj_madan@rediffmail.com>, #313199).
8
9 2005-08-16  Wim Taymans  <wim@fluendo.com>
10
11         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
12         Added subtract checks.
13
14         * docs/design/part-events.txt:
15         Some more docs about newsegment
16
17         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
18         Fix FIXME
19
20         * gst/gstcaps.c: (gst_caps_to_string):
21         Add comments, cleanups.
22         
23         * gst/gstelement.c: (gst_element_save_thyself):
24         cleanups
25         
26         * gst/gstvalue.c: (gst_value_collect_int_range),
27         (gst_string_unwrap), (gst_value_union_int_int_range),
28         (gst_value_union_int_range_int_range),
29         (gst_value_intersect_int_int_range),
30         (gst_value_intersect_int_range_int_range),
31         (gst_value_intersect_double_double_range),
32         (gst_value_intersect_double_range_double_range),
33         (gst_value_intersect_list), (gst_value_subtract_int_int_range),
34         (gst_value_subtract_int_range_int),
35         (gst_value_subtract_double_range_double),
36         (gst_value_subtract_double_range_double_range),
37         (gst_value_subtract_from_list), (gst_value_subtract_list),
38         (gst_value_can_compare), (gst_value_compare_fraction):
39         Cleanups, add comments, remove unneeded asserts.
40
41 2005-08-15  Thomas Vander Stichele  <thomas at apestaart dot org>
42
43         * tools/gst-launch.c: (event_loop):
44           don't convert NULL structures to strings
45
46 2005-08-15  Stefan Kost  <ensonic@users.sf.net>
47
48         * docs/gst/gstreamer-sections.txt:
49           made some defines private
50         * docs/gst/tmpl/gstconfig.sgml:
51         * docs/gst/tmpl/gstqueue.sgml:
52         * docs/gst/tmpl/gsttaglist.sgml:
53         * docs/gst/tmpl/gsttypes.sgml:
54         * docs/gst/tmpl/gstutils.sgml:
55         * docs/pwg/appendix-porting.xml:
56         * gst/base/gstbasesink.h:
57         * gst/base/gstbasesrc.c:
58         * gst/base/gstbasesrc.h:
59         * gst/elements/gstfakesink.c: (gst_fake_sink_class_init):
60         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init):
61         * gst/gstelement.c: (gst_element_class_init):
62         * gst/gstpad.c: (gst_pad_class_init):
63         * gst/gstqueue.c: (gst_queue_class_init):
64         * gst/gstxml.c: (gst_xml_class_init):
65           documented all undocumented signal inline
66         * libs/gst/controller/gst-controller.h:
67           added padding
68
69 2005-08-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
70
71         * docs/pwg/appendix-porting.xml:
72           Document _set_link_function -> _set_setcaps_function.
73
74 2005-08-15  Thomas Vander Stichele  <thomas at apestaart dot org>
75
76         * check/Makefile.am:
77           add a .check target for running the check
78         * check/gst-libs/controller.c: (GST_START_TEST):
79           cosmetic fixups
80         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
81           complete checks for gstbuffer; would be nice if I could get the
82           gcov stuff to work so I can see if I actually completed gstbuffer.c
83         * check/gstcheck.h:
84           add ASSERT_BUFFER_REFCOUNT
85
86 2005-08-13  Tim-Philipp Müller  <tim at centricular dot net>
87
88         * docs/gst/gstreamer-sections.txt:
89         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
90         * gst/gsttag.h:
91           Add GST_TAG_LANGUAGE_CODE as we have in 0.8, and don't
92           spew out a warning if a tag that is already registered
93           is re-registered, unless it is re-registered with a 
94           different type (#308438).
95
96 2005-08-12  Tim-Philipp Müller  <tim at centricular dot net>
97
98         * docs/pwg/appendix-porting.xml:
99         * docs/pwg/building-state.xml:
100           Add some paragraphs about state changes in 0.9 to the PWG
101           and the porting guide, in particular about the new meaning
102           of GST_STATE_PAUSED and how to write state change functions
103           with concurrent access by multiple threads in mind.
104
105 2005-08-11  Stefan Kost  <ensonic@users.sf.net>
106
107         * docs/gst/gstreamer-docs.sgml:
108         * docs/libs/gstreamer-libs-docs.sgml:
109           added deprecation and since indexes
110         * libs/gst/controller/gst-controller.c:
111         * libs/gst/controller/gst-helper.c:
112           added since tags
113
114
115 2005-08-11  Wim Taymans  <wim@fluendo.com>
116
117         * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked),
118         (gst_proxy_pad_set_target), (gst_proxy_pad_get_target),
119         (gst_proxy_pad_dispose), (gst_ghost_pad_do_activate_push),
120         (gst_ghost_pad_do_link), (gst_ghost_pad_set_internal),
121         (gst_ghost_pad_new_notarget), (gst_ghost_pad_get_target),
122         (gst_ghost_pad_set_target):
123         Actually implement (re)setting the target on a ghostpad
124         as described in the docs.
125
126 2005-08-10  Tim-Philipp Müller  <tim at centricular dot net>
127
128         * gst/gst.c: (gst_init_check_with_popt_table), (init_pre):
129           Check whether GST_DEBUG_NO_COLOR environment variable is
130           set and disable coloured debug output if that is the case.
131
132 2005-08-10  Tim-Philipp Müller  <tim at centricular dot net>
133
134         * gst/base/gsttypefindhelper.c: (helper_find_peek),
135         (gst_type_find_helper):
136           The memory returned by gst_type_find_peek() needs to
137           stay valid until the end of a typefind function, and
138           typefind functions may keep results from different 
139           offsets around, so we can't just unref the buffer from
140           the previous _peek(), but have to save all buffers 
141           returned by _peek() until typefinding is done and only
142           free them then.
143
144 2005-08-09  Tim-Philipp Müller  <tim at centricular dot net>
145
146         * docs/gst/gstreamer-sections.txt:
147         * gst/gstutils.h:
148           New macros: GST_ROUND_UP_2() through GST_ROUND_UP_64().
149
150 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
151
152         * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
153           Fix a pretty good memleak.
154
155 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
156
157         * gst/gstiterator.h:
158           Fix wrong include and 'make distcheck'.
159
160 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
161
162         * gst/gstbin.c: (bin_bus_handler):
163           Use gst_element_post_message() instead.
164
165 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
166
167         * gst/base/gstadapter.h:
168         * gst/base/gstbasesink.h:
169         * gst/base/gstbasesrc.h:
170         * gst/base/gstbasetransform.h:
171         * gst/base/gstcollectpads.h:
172         * gst/base/gstpushsrc.h:
173         * gst/gstiterator.h:
174           Add padding to our base elements' class and instance structs and
175           to GstIterator (you will need to rebuild all plugins and apps!)
176
177 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
178
179         * gst/gstbin.c: (bin_bus_handler):
180           Make default message forwarding from child->bus to bin->bus
181           threadsafe and make it not emit warnings if the parent has no bus.
182
183 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
184
185         * gst/gstelement.c: (activate_pads):
186           On paused->ready, set pad->caps to NULL, as is the documented
187           behaviour in this state change. Fixes playback of series of
188           media files when visualization is enabled in Totem.
189
190 2005-08-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
191
192         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
193           Allow NULL as filter-caps (which means "any").
194
195 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
196
197         * docs/libs/gstreamer-libs-sections.txt:
198         * libs/gst/controller/gst-controller.c:
199         * libs/gst/controller/gst-controller.h:
200         * libs/gst/controller/gst-helper.c:
201           adding more entries to the docs and fix small doc-bugs
202
203 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
204
205         * docs/gst/gstreamer-docs.sgml:
206         * docs/gst/gstreamer-sections.txt:
207         * docs/gst/gstreamer.types:
208         * docs/gst/tmpl/gstbasesink.sgml:
209         * docs/gst/tmpl/gstbasesrc.sgml:
210         * docs/gst/tmpl/gstbasetransform.sgml:
211         * docs/gst/tmpl/gstfakesrc.sgml:
212         * gst/base/gstcollectpads.c:
213         * gst/base/gstcollectpads.h:
214         * libs/gst/controller/gst-controller.c:
215         * libs/gst/controller/gst-controller.h:
216         * libs/gst/controller/gst-helper.c:
217         * libs/gst/controller/gst-interpolation.c:
218         * libs/gst/controller/lib.c:
219           added long/short desc for controller docs
220           added collectpads base class docs
221           added correct includes to base-class docs
222
223 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
224
225         * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
226         (gst_test_mono_source_set_property),
227         (gst_test_mono_source_class_init), (GST_START_TEST),
228         (gst_controller_suite):
229         * docs/gst/gstreamer-docs.sgml:
230         * docs/gst/gstreamer-sections.txt:
231         * docs/gst/gstreamer.types:
232         * docs/libs/gstreamer-libs-docs.sgml:
233         * docs/libs/gstreamer-libs-sections.txt:
234         * gst/base/gstadapter.c:
235         * libs/gst/controller/gst-controller.c:
236         (gst_controlled_property_new), (gst_controlled_property_free),
237         (gst_controller_new_valist),
238         (gst_controller_remove_properties_valist),
239         (gst_controller_sink_values), (_gst_controller_finalize):
240         * libs/gst/controller/gst-controller.h:
241         * libs/gst/controller/gst-helper.c:
242         (gst_object_control_properties), (gst_object_uncontrol_properties),
243         (gst_object_get_controller), (gst_object_set_controller),
244         (gst_object_sink_values), (gst_object_get_value_arrays),
245         (gst_object_get_value_array):
246           more tests (and fixes) for the controller
247           more docs for the controller
248           integrated companies docs for the adapter 
249
250 2005-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
251
252         * check/elements/gstfakesrc.c: (setup_fakesrc), (cleanup_fakesrc),
253         (GST_START_TEST), (fakesrc_suite):
254           add tests for sizetype
255
256 2005-08-04  Andy Wingo  <wingo@pobox.com>
257
258         * gst/elements/gstcapsfilter.c: Reimplement using basetransform,
259         fixes buffer_alloc proxying among other things.
260
261         * gst/base/gstbasetransform.c:
262         * gst/base/gstbasetransform.h:
263         Revert patch to gstbasetransform from 7-28 removing
264         delay_configure.
265
266         * gst/base/gstbasetransform.h (GstBaseTransformClass.get_size):
267         * gst/base/gstbasetransform.c (gst_base_transform_get_size):
268         Semantics changed, should return not the size of the output buffer
269         but the byte size of a buffer with a given caps.
270
271         * gst/base/gstbasetransform.c (gst_base_transform_getcaps): Better
272         debug object.
273         (gst_base_transform_configure_caps): Don't set out_size here: (in,
274         out) are not the pad caps until setcaps finishes.
275         (gst_base_transform_buffer_alloc): Proxy the buffer_alloc for the
276         not-in-place case as well. Deal with changing from in-place to
277         not-in-place within calling pad_alloc_buffer. Still a bit
278         concerned about the overhead here...
279
280 2005-08-03  Andy Wingo  <wingo@pobox.com>
281
282         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): Not
283         fixating is an error.
284
285 2005-08-04  Edward Hervey  <edward@fluendo.com>
286
287         * gst/base/gstadapter.h: 
288         Added gst_adapter_get_type() to the header
289
290 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
291
292         * check/Makefile.am:
293         * check/gst-libs/controller.c:
294         * libs/gst/controller/gst-controller.c:
295         (gst_controller_new_valist):
296           added check test suite for the controller
297         * gst/base/gstpushsrc.c:
298           fixed a doc typo
299
300 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
301
302         * docs/gst/Makefile.am:
303         * docs/gst/gstreamer-docs.sgml:
304         * docs/gst/gstreamer-sections.txt:
305         * docs/gst/gstreamer.types:
306         * docs/gst/tmpl/gstfakesrc.sgml:
307         * gst/base/README:
308         * gst/base/gstbasesink.c:
309         * gst/base/gstbasesink.h:
310         * gst/base/gstbasesrc.c:
311         * gst/base/gstbasesrc.h:
312         * gst/base/gstbasetransform.c:
313         * gst/base/gstpushsrc.c:
314         * gst/base/gstpushsrc.h:
315           add short/long description docs to base classes
316           add pushsrc to the docs
317           remove consolidated doc fragments
318
319 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
320
321         * configure.ac:
322         * docs/libs/Makefile.am:
323         * docs/libs/gstreamer-libs-docs.sgml:
324         * docs/libs/gstreamer-libs-sections.txt:
325         * docs/libs/gstreamer-libs.types:
326         * examples/Makefile.am:
327         * examples/controller/.cvsignore:
328         * examples/controller/Makefile.am:
329         * examples/controller/audio-example.c: (main):
330         * libs/gst/Makefile.am:
331         * libs/gst/controller/.cvsignore:
332         * libs/gst/controller/Makefile.am:
333         * libs/gst/controller/gst-controller.c:
334         (on_object_controlled_property_changed), (gst_timed_value_compare),
335         (gst_timed_value_find),
336         (gst_controlled_property_set_interpolation_mode),
337         (gst_controlled_property_new), (gst_controlled_property_free),
338         (gst_controller_find_controlled_property),
339         (gst_controller_new_valist), (gst_controller_new),
340         (gst_controller_remove_properties_valist),
341         (gst_controller_remove_properties), (gst_controller_set),
342         (gst_controller_set_from_list), (gst_controller_unset),
343         (gst_controller_get), (gst_controller_get_all),
344         (gst_controller_sink_values), (gst_controller_get_value_arrays),
345         (gst_controller_get_value_array),
346         (gst_controller_set_interpolation_mode),
347         (_gst_controller_finalize), (_gst_controller_init),
348         (_gst_controller_class_init), (gst_controller_get_type):
349         * libs/gst/controller/gst-controller.h:
350         * libs/gst/controller/gst-helper.c: (g_object_control_properties),
351         (g_object_uncontrol_properties), (g_object_get_controller),
352         (g_object_set_controller), (g_object_sink_values),
353         (g_object_get_value_arrays), (g_object_get_value_array):
354         * libs/gst/controller/gst-interpolation.c:
355         (gst_controlled_property_find_timed_value_node),
356         (interpolate_none_get), (interpolate_trigger_get),
357         (interpolate_trigger_get_value_array):
358         * libs/gst/controller/lib.c: (gst_controller_init):
359         * pkgconfig/Makefile.am:
360         * pkgconfig/gstreamer-control-uninstalled.pc.in:
361         * pkgconfig/gstreamer-control.pc.in:
362         * testsuite/Makefile.am:
363         * testsuite/controller/.cvsignore:
364         * testsuite/controller/Makefile.am:
365         * testsuite/controller/interpolator.c: (main):
366           added controller code
367           removed dparam pc files
368
369 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
370         * gst/base/gstcollectpads.c: (gst_collectpads_finalize),
371         (gst_collectpads_stop):
372           Broadcast the condition when shutting down, to make sure we wake all
373           threads up. Shut down pads on finalize, for safety.
374
375 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
376         * gst/base/gstbasetransform.c: (gst_base_transform_init),
377         (gst_base_transform_handle_buffer),
378         (gst_base_transform_change_state):
379           Handle PAUSED->READY->PAUSED transition after negotiation
380           occurred already.
381         * gst/gstmessage.c: (gst_message_init):
382           Extra piece of debug for new messages.
383
384 2005-08-01  Stefan Kost  <ensonic@users.sf.net>
385
386         * configure.ac:
387         * docs/gst/tmpl/gstbasesrc.sgml:
388         * docs/gst/tmpl/gstelement.sgml:
389         * docs/gst/tmpl/gstevent.sgml:
390         * docs/gst/tmpl/gstfakesrc.sgml:
391         * docs/gst/tmpl/gstformat.sgml:
392         * docs/gst/tmpl/gstghostpad.sgml:
393         * docs/gst/tmpl/gstpad.sgml:
394         * docs/gst/tmpl/gstquery.sgml:
395         * docs/gst/tmpl/gststructure.sgml:
396         * docs/gst/tmpl/gsttaglist.sgml:
397         * docs/gst/tmpl/gstvalue.sgml:
398         * docs/libs/gstreamer-libs-docs.sgml:
399         * docs/libs/gstreamer-libs-sections.txt:
400         * docs/libs/gstreamer-libs.types:
401         * libs/gst/Makefile.am:
402         * libs/gst/control/.cvsignore:
403         * libs/gst/control/Makefile.am:
404         * libs/gst/control/control.c:
405         * libs/gst/control/control.h:
406         * libs/gst/control/dparam.c:
407         * libs/gst/control/dparam.h:
408         * libs/gst/control/dparam_smooth.c:
409         * libs/gst/control/dparam_smooth.h:
410         * libs/gst/control/dparamcommon.h:
411         * libs/gst/control/dparammanager.c:
412         * libs/gst/control/dparammanager.h:
413         * libs/gst/control/dplinearinterp.c:
414         * libs/gst/control/dplinearinterp.h:
415         * libs/gst/control/unitconvert.c:
416         * libs/gst/control/unitconvert.h:
417         * testsuite/Makefile.am:
418         * testsuite/dynparams/.cvsignore:
419         * testsuite/dynparams/Makefile.am:
420         * testsuite/dynparams/dparamstest.c:
421         * tools/Makefile.am:
422         * tools/gst-inspect.c: (print_element_info), (main):
423         * tools/gst-xmlinspect.c: (print_element_info), (main):
424           deactivate and remove dparams (libgstcontrol)
425
426 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
427
428         * gst/elements/gsttypefindelement.c:
429         (gst_type_find_element_have_type), (gst_type_find_element_init),
430         (stop_typefinding), (gst_type_find_element_handle_event),
431         (gst_type_find_element_chain), (gst_type_find_element_getrange):
432         * gst/elements/gsttypefindelement.h:
433           Set caps on all outgoing buffers, not just the first one.
434
435 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
436
437         * gst/elements/gsttypefindelement.c:
438         (gst_type_find_element_have_type),
439         (gst_type_find_element_check_set_buffer_caps),
440         (gst_type_find_element_init), (stop_typefinding),
441         (gst_type_find_element_handle_event),
442         (gst_type_find_element_chain), (gst_type_find_element_getrange):
443         * gst/elements/gsttypefindelement.h:
444           Set caps on first outgoing buffer when we've found the type.
445
446 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
447
448         * docs/gst/gstreamer-docs.sgml:
449         * docs/gst/gstreamer-sections.txt:
450         * docs/gst/tmpl/gstscheduler.sgml:
451         * docs/gst/tmpl/gstschedulerfactory.sgml:
452           Remove some old cruft from docs.
453
454 2005-07-31  Tim-Philipp Müller  <tim at centricular dot net>
455
456         * gst/gstpad.h:
457           Fix inline docs for GstPadLinkReturn.
458           
459         * gst/gststructure.c: (gst_structure_has_name):
460         * gst/gststructure.h:
461         * docs/gst/gstreamer-sections.txt:
462           New API: gst_structure_has_name().
463
464 2005-07-30  Tim-Philipp Müller  <tim at centricular dot net>
465
466         * configure.ac:
467           Use AC_SYS_LARGEFILE, which will set _FILE_OFFSET_BITS=64
468           and _LARGEFILE_SOURCE in config.h as required. Do not 
469           export those flags in our .pc files any longer (#142209).
470
471           Remove unused GST_DISABLE_OMEGA_COTHREADS stuff.
472
473         * gst/elements/gstfilesink.c: (gst_file_sink_class_init),
474         (gst_file_sink_do_seek), (gst_file_sink_event),
475         (gst_file_sink_get_current_offset), (gst_file_sink_render):
476           Redo seek/tell calls with large file support in mind; add some
477           debugging messages; add log message that tells us when large
478           file support is unavailable or not enabled for some reason.
479
480         * gst/elements/gstfilesrc.c: (gst_file_src_class_init):
481           Add log message that tells us when large file support 
482           is unavailable or not enabled for some reason.
483
484 2005-07-29  Wim Taymans  <wim@fluendo.com>
485
486         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
487         Added test for removing an element with ghostpad from a bin.
488         Fixed test as current implementation does the right thing.
489
490         * gst/gstghostpad.c: (gst_proxy_pad_class_init),
491         (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
492         (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
493         (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
494         (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
495         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
496         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
497         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
498         (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
499         (gst_proxy_pad_get_target), (gst_proxy_pad_init),
500         (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
501         (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
502         (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
503         (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
504         (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
505         (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
506         * gst/gstghostpad.h:
507         Clean up ghostpads, remove properties for internal stuff.
508         Make threadsafe.
509         Fix refcounting.
510         Prepare for switching targets, not all use cases work yet.
511
512 2005-07-29  Wim Taymans  <wim@fluendo.com>
513
514         * docs/design/part-gstghostpad.txt:
515         Small update.
516
517         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
518         (gst_bin_remove_func):
519         Unlinking pads while holding the bin LOCK is not a good
520         idea.
521
522         * gst/gstpad.c: (gst_pad_class_init),
523         (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
524         (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
525         No prob setting template after creating the pad.
526
527 2005-07-29  Jan Schmidt  <thaytan@mad.scientist.com>
528
529         * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
530         (gst_bus_peek), (gst_bus_source_dispatch),
531         (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
532         (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
533           gst_bus_poll may be called from other threads. Handle
534           this nicely by not making poll_data disappear off the
535           stack once gst_bus_poll returns.
536           gst_bus_peek now increments the refcount on the returned
537           message.
538
539 2005-07-29  Wim Taymans  <wim@fluendo.com>
540
541         * docs/design/part-gstghostpad.txt:
542         Overview of current GhostPad datastructures and use
543         cases for changing the target.
544
545 2005-07-28  Wim Taymans  <wim@fluendo.com>
546
547         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
548         Added checks for hierarchy consistency whan adding linked
549         elements to bins.
550
551         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
552         Added check to test element scheduling without bin/pipeline.
553
554         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
555         First add elements to bin, then link.
556         
557         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
558         (gst_bin_remove_func):
559         Unlink pads from elements added/removed from bin to maintain
560         hierarchy consistency.
561
562 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
563
564         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
565         (gst_base_transform_handle_buffer):
566         * gst/base/gstbasetransform.h:
567           Remove broken delay_configure (fixes renegotiation of software
568           scaling pipelines); remove some leftover printf()s.
569
570 2005-07-28  Wim Taymans  <wim@fluendo.com>
571
572         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
573         Added some more tests for wrong hierarchy
574
575         * docs/design/part-overview.txt:
576         Some updates.
577
578         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
579         Cleanups.
580
581         * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
582         (gst_element_dispose):
583         Some more cleanups.
584
585         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
586         (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
587         (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
588         (gst_pad_set_caps), (gst_pad_send_event):
589         Check for correct hierarchy when linking pads. Moving to
590         strict requirement for ghostpads when linking elements in
591         different bins.
592
593         * gst/gstpad.h:
594         Clean ups. Added WRONG_HIERARCHY return value.
595
596 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
597
598         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
599           Better debug if no transform is possible.
600
601 2005-07-27  Wim Taymans  <wim@fluendo.com>
602
603         * docs/random/wtay/network-transp:
604         Some old doc I had.
605
606 2005-07-27  Wim Taymans  <wim@fluendo.com>
607
608         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
609         (gst_dp_event_from_packet):
610         Fix serialization of seek events.
611
612 2005-07-27  Wim Taymans  <wim@fluendo.com>
613
614         * check/gst-libs/gdp.c: (GST_START_TEST):
615         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
616         Fix compilation and fix event serialization.
617
618 2005-07-27  Wim Taymans  <wim@fluendo.com>
619
620         * CHANGES-0.9:
621         * docs/design/part-TODO.txt:
622         * docs/design/part-events.txt:
623         Some docs updates
624
625         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
626         (gst_base_sink_event), (gst_base_sink_do_sync),
627         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
628         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
629         (gst_base_src_do_seek), (gst_base_src_event_handler),
630         (gst_base_src_loop):
631         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
632         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
633         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
634         (gst_base_transform_event), (gst_base_transform_handle_buffer),
635         (gst_base_transform_set_passthrough),
636         (gst_base_transform_is_passthrough):
637         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
638         * gst/elements/gstfilesink.c: (gst_file_sink_event):
639         Event updates.
640
641         * gst/gstbuffer.h:
642         Use faster casts.
643
644         * gst/gstelement.c: (gst_element_seek):
645         * gst/gstelement.h:
646         Update gst_element_seek.
647
648         * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
649         (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
650         (gst_event_new_flush_start), (gst_event_new_flush_stop),
651         (gst_event_new_eos), (gst_event_new_newsegment),
652         (gst_event_parse_newsegment), (gst_event_new_tag),
653         (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
654         (gst_event_parse_qos), (gst_event_new_seek),
655         (gst_event_parse_seek), (gst_event_new_navigation):
656         * gst/gstevent.h:
657         Make GstEvent use GstStructure. Add parsing code, make sure the
658         API is sufficiently generic.
659         Mark possible directions of events and serialization.
660
661         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
662         (_gst_message_copy), (gst_message_new_segment_start),
663         (gst_message_new_segment_done), (gst_message_new_custom),
664         (gst_message_parse_segment_start),
665         (gst_message_parse_segment_done):
666         Small cleanups.
667
668         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
669         (gst_pad_set_caps), (gst_pad_send_event):
670         Update for new events. 
671         Catch events sent in wrong directions.
672
673         * gst/gstqueue.c: (gst_queue_link_src),
674         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
675         (gst_queue_handle_src_query):
676         Event updates.
677
678         * gst/gsttag.c:
679         * gst/gsttag.h:
680         Remove event code from this file.
681
682         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
683         (gst_dp_event_from_packet):
684         Event updates.
685
686 2005-07-27  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
687
688         * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
689         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
690         (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
691           Make debugging actually useful.
692
693 2005-07-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
694
695         * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
696         (gst_pad_fixate_caps):
697           Implement default fixation once again, so that gst_pad_fixate()
698           actually does anything at all. This probably needs to be some
699           sort of a last resort, and use profile-based fixation first, but
700           since that doesn't exist yet, this is the best we have. Fixes
701           visualization in Totem.
702
703 2005-07-22  Wim Taymans  <wim@fluendo.com>
704
705         * docs/design/part-events.txt:
706         Small update.
707
708         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
709         (gst_base_sink_do_sync), (gst_base_sink_activate_push),
710         (gst_base_sink_activate_pull):
711         Some more comments.
712
713         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
714         (gst_fake_src_create):
715         Fix handoff marshall.
716
717         * gst/elements/gstidentity.c: (gst_identity_class_init),
718         (gst_identity_transform_ip):
719         We're a real inplace element.
720
721         * gst/gstbus.c: (gst_bus_post):
722         Added some comments.
723
724         * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
725         * tests/muxing/case1.c: (main):
726         * tests/sched/dynamic-pipeline.c: (main):
727         * tests/sched/interrupt1.c: (main):
728         * tests/sched/interrupt2.c: (main):
729         * tests/sched/interrupt3.c: (main):
730         * tests/sched/runxml.c: (main):
731         * tests/sched/sched-stress.c: (main):
732         * tests/seeking/seeking1.c: (event_received), (main):
733         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
734         (main):
735         * tests/threadstate/threadstate3.c: (main):
736         * tests/threadstate/threadstate4.c: (main):
737         * tests/threadstate/threadstate5.c: (main):
738         Fix the tests.
739
740 2005-07-21  Wim Taymans  <wim@fluendo.com>
741
742         * docs/design/part-seeking.txt:
743         Some small additions.
744
745         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
746         (gst_base_sink_get_times), (gst_base_sink_do_sync),
747         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
748         * gst/base/gstbasesink.h:
749         discont values are gint64, handle the math correctly.
750
751         * gst/base/gstbasesrc.c: (gst_base_src_loop):
752         Make the basesrc report error if the source pad is not linked.
753
754         * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
755         (gst_queue_loop), (gst_queue_handle_src_query),
756         (gst_queue_src_activate_push):
757         Make queue collect data even if the srcpad is not linked.
758         Start pushing out data as soon as it is linked.
759
760         * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
761         * gst/gstutils.h:
762         Added gst_flow_get_name() to ease error reporting.
763
764 2005-07-20  Wim Taymans  <wim@fluendo.com>
765
766         * gst/gstmessage.c: (gst_message_new_segment_start),
767         (gst_message_new_segment_done), (gst_message_parse_segment_start),
768         (gst_message_parse_segment_done):
769         * gst/gstmessage.h:
770         Added a bunch of messages for advanced seeking.
771
772         * gst/parse/grammar.y:
773         * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
774         (gst_dpman_state_changed):
775         Fix some new-pad -> pad-added signals
776
777 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
778
779         * docs/manual/appendix-porting.xml:
780         * docs/pwg/appendix-porting.xml:
781           Document new-pad/state-change signal renames and the FixedList
782           type rename.
783
784 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
785
786         * docs/manual/advanced-autoplugging.xml:
787         * docs/manual/basics-helloworld.xml:
788         * docs/manual/basics-pads.xml:
789         * docs/random/ds/0.9-suggested-changes:
790         * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
791         * gst/gstelement.h:
792         * gst/gstevent.h:
793         * gst/gstformat.h:
794         * gst/gstquery.h:
795         * gst/gststructure.c: (gst_structure_value_get_generic_type),
796         (gst_structure_parse_array), (gst_structure_parse_value):
797         * gst/gstvalue.c: (gst_type_is_fixed),
798         (gst_value_list_prepend_value), (gst_value_list_append_value),
799         (gst_value_list_get_size), (gst_value_list_get_value),
800         (gst_value_transform_array_string), (gst_value_serialize_array),
801         (gst_value_deserialize_array), (gst_value_intersect_array),
802         (gst_value_is_fixed), (_gst_value_initialize):
803         * gst/gstvalue.h:
804           GstElement::new-pad -> pad-added, GstElement::state-change ->
805           state-changed, GstValueFixedList -> GstValueArray, add format and
806           flags as their own arguments in gst_element_seek() (should improve
807           "bindeability"), remove function generators since they don't work
808           under a whole bunch of compilers (they were deprecated already
809           anyway).
810
811 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
812
813         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
814         (_gst_debug_register_funcptr):
815         * gst/gstinfo.h:
816           Fix illegal cast on some platforms (#309253).
817
818 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
819
820         * gst/gstmessage.c: (gst_message_new_custom):
821         * gst/gstmessage.h:
822           Add _new_custom, make _new_application a macro to _new_custom.
823
824 2005-07-20  Wim Taymans  <wim@fluendo.com>
825
826         * gst/base/gstbasesrc.c: (gst_base_src_init),
827         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
828         * gst/base/gstbasesrc.h:
829         Add a gboolean to decide when to push out a discont.
830
831         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
832         (gst_queue_loop), (gst_queue_handle_src_query),
833         (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
834         (gst_queue_set_property), (gst_queue_get_property):
835         Some cleanups.
836
837         * tests/threadstate/threadstate1.c: (main):
838         Make a thread test compile and run... very silly..
839
840
841 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
842
843         * docs/manual/appendix-porting.xml:
844           Mention removal of libgstgconf-0.9.la and existence of gconf
845           elements.
846
847 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
848
849         * docs/pwg/advanced-clock.xml:
850         * docs/pwg/appendix-porting.xml:
851         * docs/pwg/intro-preface.xml:
852         * docs/pwg/other-base.xml:
853         * docs/pwg/other-manager.xml:
854         * docs/pwg/other-nton.xml:
855         * docs/pwg/other-ntoone.xml:
856         * docs/pwg/other-oneton.xml:
857         * docs/pwg/pwg.xml:
858           Document base classes, update sections of n-to-1 and 1-to-n (muxer,
859           demuxer), remove n-to-n (was never written), fix some code examples
860           and links and update the porting section to include all this.
861
862 2005-07-19  Wim Taymans  <wim@fluendo.com>
863
864         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
865         (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
866         (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
867         (gst_queue_src_activate_push), (gst_queue_change_state),
868         (gst_queue_get_property):
869         * gst/gstqueue.h:
870         Propagate GstFlowReturn more intelligently upstream and output
871         an ERROR/EOS when streaming stopped due to fatal error.
872
873 2005-07-19  Wim Taymans  <wim@fluendo.com>
874
875         * tools/gst-launch.c: (check_intr), (event_loop), (main):
876         Don't block forever for the state change to complete, the
877         pipeline already did with a sensible timeout.
878
879 2005-07-19  Wim Taymans  <wim@fluendo.com>
880
881         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
882         Make sure we never call the create function is we
883         got deactivated.
884
885 2005-07-19  Andy Wingo  <wingo@pobox.com>
886
887         * gst/parse/parse.l: Attempt to solve bug #172815.
888
889 2005-07-19  Wim Taymans  <wim@fluendo.com>
890
891         * docs/design/part-clocks.txt:
892         * docs/design/part-events.txt:
893         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
894         Small docs updates.
895         Only update the seeking values when we are not
896         busy streaming.
897
898 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
899
900         * gst/base/gstbasesrc.c: (gst_base_src_loop):
901           Oops, ignore the result of gst_pad_push_event here.
902
903 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
904
905         * gst/base/gstbasesrc.c: (gst_base_src_loop),
906         (gst_base_src_activate_push):
907           Send discont event from the loop function, as pads
908           aren't activated yet in the activate_push handler.
909
910         * gst/gstbin.c: (bin_bus_handler):
911           Don't leak element name.
912
913 2005-07-18  Andy Wingo  <wingo@pobox.com>
914
915         * configure.ac: Use AS_LIBTOOL_TAGS.
916
917 2005-07-18  Wim Taymans  <wim@fluendo.com>
918
919         * docs/gst/gstreamer.types:
920         Remove deleted types.
921
922 2005-07-18  Wim Taymans  <wim@fluendo.com>
923
924         * check/elements/gstfakesrc.c: (GST_START_TEST):
925         * configure.ac:
926         * gst/Makefile.am:
927         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
928         (init_popt_callback):
929         * gst/gst.h:
930         * gst/gst_private.h:
931         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
932         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
933         * gst/gstbin.h:
934         * gst/gstbus.h:
935         * gst/gstconfig.h.in:
936         * gst/gstelement.c: (gst_element_class_init),
937         (gst_element_set_base_time), (gst_element_get_base_time),
938         (iterator_fold_with_resync), (gst_element_change_state),
939         (gst_element_dispose), (gst_element_get_bus):
940         * gst/gstelement.h:
941         * gst/gstelementfactory.h:
942         * gst/gsterror.c: (_gst_core_errors_init):
943         * gst/gsterror.h:
944         * gst/gstevent.h:
945         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
946         * gst/gstindex.c:
947         * gst/gstinfo.c: (_gst_debug_init):
948         * gst/gstmessage.c: (_gst_message_copy):
949         * gst/gstmessage.h:
950         * gst/gstminiobject.h:
951         * gst/gstobject.c:
952         * gst/gstobject.h:
953         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
954         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
955         * gst/gstpad.h:
956         * gst/gstparse.h:
957         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
958         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
959         (gst_pipeline_get_last_stream_time):
960         * gst/gstpipeline.h:
961         * gst/gstpluginfeature.h:
962         * gst/gstquery.h:
963         * gst/gstscheduler.c:
964         * gst/gstscheduler.h:
965         * gst/gststructure.h:
966         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
967         (gst_task_finalize), (gst_task_func), (gst_task_create),
968         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
969         (gst_task_stop), (gst_task_pause):
970         * gst/gsttask.h:
971         * gst/gsttypefind.h:
972         * gst/gsttypes.h:
973         * gst/registries/gstlibxmlregistry.c: (load_feature),
974         (gst_xml_registry_load), (gst_xml_registry_save_feature):
975         * gst/registries/gstxmlregistry.c:
976         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
977         * gst/schedulers/threadscheduler.c:
978         * libs/gst/control/dparammanager.h:
979         * tools/gst-inspect.c: (print_element_list),
980         (print_plugin_features), (print_element_features):
981         * tools/gst-xmlinspect.c: (print_element_list),
982         (print_plugin_info), (main):
983         Removed plugable schedulers.
984         Removed Scheduler/Manager from elements.
985         Removed gsttypes.h, rearranged includes.
986         Removed dependency pad<->element, element<>pipeline, and
987         various others,  fix includes.
988         implement gst_pad_get_parent() with gst_object_get_parent()
989         Make GstTask sefcontained.
990         Fix _get_state() on GstBin, it did not return ASYNC with a 0
991         timeout.
992         Fix endless loop in iterator_fold_with_resync.
993
994
995 2005-07-18  Wim Taymans  <wim@fluendo.com>
996
997         * gst/Makefile.am:
998         * gst/gstarch.h:
999         Remove old file.
1000
1001 2005-07-18  Wim Taymans  <wim@fluendo.com>
1002
1003         * gst/Makefile.am:
1004         No more cothreads.h
1005
1006 2005-07-18  Wim Taymans  <wim@fluendo.com>
1007
1008         * gst/cothreads.c:
1009         * gst/cothreads.h:
1010         Let's remove these.
1011
1012 2005-07-18  Wim Taymans  <wim@fluendo.com>
1013
1014         * docs/design/part-dynamic.txt:
1015         * docs/design/part-events.txt:
1016         * docs/design/part-seeking.txt:
1017         Some more docs in the works.
1018
1019         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
1020         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
1021         (gst_base_transform_setcaps), (gst_base_transform_get_size),
1022         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
1023         (gst_base_transform_handle_buffer),
1024         (gst_base_transform_sink_activate_push),
1025         (gst_base_transform_src_activate_pull),
1026         (gst_base_transform_set_passthrough),
1027         (gst_base_transform_is_passthrough):
1028         Refcounting fixes.
1029
1030         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
1031         Cleanups.
1032
1033         * gst/gstevent.c: (gst_event_finalize):
1034         Set SRC to NULL.
1035
1036         * gst/gstutils.c: (gst_element_unlink),
1037         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
1038         (gst_pad_proxy_setcaps):
1039         * gst/gstutils.h:
1040         Add _get_parent_element() to get a pads parent as an element.
1041
1042 2005-07-18  Wim Taymans  <wim@fluendo.com>
1043
1044         * check/gst/gstbin.c: (GST_START_TEST):
1045         Remove bogus test.
1046
1047 2005-07-18  Wim Taymans  <wim@fluendo.com>
1048
1049         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
1050         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
1051         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
1052         (gst_base_sink_event), (gst_base_sink_do_sync),
1053         (gst_base_sink_chain), (gst_base_sink_loop),
1054         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
1055         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
1056         Refcounting fixes.
1057         Fix logic for returning ASYNC when not prerolled.
1058
1059 2005-07-18  Wim Taymans  <wim@fluendo.com>
1060
1061         * gst/gstqueue.c: (gst_queue_handle_sink_event):
1062         Fix nasty refcount bug.
1063
1064 2005-07-16 Philippe Khalaf <burger@speedy.org>
1065         * gst/elements/gstfdsrc.c:
1066         * gst/elements/gstfdsrc.h:
1067         * gst/elements/gstelements.c:
1068         * gst/elements/Makefile.am:
1069         Ported fdsrc to 0.9.
1070
1071 2005-07-16  Wim Taymans  <wim@fluendo.com>
1072
1073         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1074         (gst_base_sink_do_sync):
1075         Fix compile error.
1076
1077 2005-07-16  Wim Taymans  <wim@fluendo.com>
1078
1079         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1080         (gst_base_sink_event), (gst_base_sink_get_times),
1081         (gst_base_sink_do_sync), (gst_base_sink_change_state):
1082         * gst/base/gstbasesink.h:
1083         Store and use discont values when syncing buffers as described
1084         in design docs.
1085         
1086         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
1087         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
1088         (gst_base_src_activate_push):
1089         Push discont event when starting.
1090
1091         * gst/elements/gstidentity.c: (gst_identity_transform):
1092         Small cleanups.
1093
1094         * gst/gstbin.c: (gst_bin_change_state):
1095         Small cleanups in base_time  distribution.
1096
1097         * gst/gstelement.c: (gst_element_set_base_time),
1098         (gst_element_get_base_time), (gst_element_change_state):
1099         * gst/gstelement.h:
1100         Added methods for the base_time of the element.
1101         Some MT fixes.
1102
1103         * gst/gstpipeline.c: (gst_pipeline_send_event),
1104         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
1105         (gst_pipeline_get_last_stream_time):
1106         * gst/gstpipeline.h:
1107         MT fixes.
1108         Handle seeking as described in design doc, remove stream_time
1109         hack.
1110         Cleanups clock and stream_time selection code. Added accessors
1111         for the stream_time.
1112         
1113
1114 2005-07-16  Andy Wingo  <wingo@pobox.com>
1115
1116         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
1117         (#305291).
1118
1119 2005-07-16  Wim Taymans  <wim@fluendo.com>
1120
1121         * check/gst/gstbin.c: (GST_START_TEST):
1122         Make elements silent as the deep_notify refs the
1123         parent, which might make the test fail.
1124
1125         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
1126         Don't hold the lock for too long.
1127
1128 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
1129
1130         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
1131           Don't unref the caps we passed to gst_caps_make_writable() after
1132           passing them. gst_caps_make_writable() will do that for us.
1133
1134 2005-07-15  Andy Wingo  <wingo@pobox.com>
1135
1136         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
1137         (#157311).
1138
1139         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
1140         own marshalling function for the handoff signal. Properly type the
1141         buffer as a buffer. Fixes some warnings. Should do a more general
1142         solution.
1143         (gst_identity_class_init): Plug into the right marshaller.
1144
1145 2005-07-15  Wim Taymans  <wim@fluendo.com>
1146
1147         * docs/design/part-TODO.txt:
1148         * docs/design/part-clocks.txt:
1149         * docs/design/part-element-sink.txt:
1150         * docs/design/part-events.txt:
1151         * docs/design/part-gstpipeline.txt:
1152         Updated docs, mostly DISCONT related.
1153
1154 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
1155
1156         * docs/pwg/building-pads.xml:
1157           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
1158
1159 2005-07-15  Andy Wingo  <wingo@pobox.com>
1160
1161         * tools/gst-typefind.c: Update, add copyright block.
1162
1163         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
1164         Normalize and truncate caps before fixation.
1165
1166         * gst/gstcaps.h:
1167         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
1168         discards all but the first structure from its argument.
1169
1170 2005-07-15  Wim Taymans  <wim@fluendo.com>
1171
1172         * gst/base/gstbasetransform.c: (gst_base_transform_init),
1173         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
1174         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
1175         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
1176         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
1177         (gst_base_transform_chain), (gst_base_transform_change_state),
1178         (gst_base_transform_set_passthrough),
1179         (gst_base_transform_is_passthrough):
1180         * gst/base/gstbasetransform.h:
1181         Make passthrough work using the bufferpools.
1182         Changed API a bit, subclasses have to write into a buffer
1183         provided by the base class.
1184         More debug info in nego functions.
1185         
1186         * gst/elements/gstidentity.c: (gst_identity_init),
1187         (gst_identity_transform):
1188         Port to new base class.
1189
1190 2005-07-15  Wim Taymans  <wim@fluendo.com>
1191
1192         * gst/gstmessage.c: (gst_message_new_state_changed):
1193         * tools/gst-launch.c: (event_loop), (main):
1194         Totally dump messages in -launch with the -m option.
1195         Fix message name for State messages,
1196
1197 2005-07-14  Wim Taymans  <wim@fluendo.com>
1198
1199         * gst/base/gstbasesrc.c: (gst_base_src_loop):
1200         Post error messages on errors.
1201
1202 2005-07-14  Wim Taymans  <wim@fluendo.com>
1203
1204         * gst/gstcaps.c: (gst_caps_do_simplify):
1205         Remove debug info.
1206
1207         * gst/gsterror.h:
1208         Define error for stream stopped.
1209
1210         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1211         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
1212         Do proper return values.
1213
1214         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
1215         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
1216         (gst_pad_get_range):
1217         Better return values.
1218
1219         * gst/gstpad.h:
1220         Reorganise return values, add macro to check for fatal errors.
1221
1222         * gst/gstqueue.c: (gst_queue_chain):
1223         Return proper GstFlowReturn values,
1224
1225 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
1226
1227         * docs/gst/gstreamer-sections.txt:
1228         * docs/gst/gstreamer.types:
1229         * docs/gst/tmpl/gst.sgml:
1230         * docs/gst/tmpl/gstbasesink.sgml:
1231         * docs/gst/tmpl/gstbasesrc.sgml:
1232         * docs/gst/tmpl/gstbasetransform.sgml:
1233         * docs/gst/tmpl/gstbin.sgml:
1234         * docs/gst/tmpl/gstbuffer.sgml:
1235         * docs/gst/tmpl/gstcaps.sgml:
1236         * docs/gst/tmpl/gstclock.sgml:
1237         * docs/gst/tmpl/gstcompat.sgml:
1238         * docs/gst/tmpl/gstconfig.sgml:
1239         * docs/gst/tmpl/gstelement.sgml:
1240         * docs/gst/tmpl/gstelementdetails.sgml:
1241         * docs/gst/tmpl/gstelementfactory.sgml:
1242         * docs/gst/tmpl/gstenumtypes.sgml:
1243         * docs/gst/tmpl/gsterror.sgml:
1244         * docs/gst/tmpl/gstevent.sgml:
1245         * docs/gst/tmpl/gstfakesink.sgml:
1246         * docs/gst/tmpl/gstfakesrc.sgml:
1247         * docs/gst/tmpl/gstfilesink.sgml:
1248         * docs/gst/tmpl/gstfilesrc.sgml:
1249         * docs/gst/tmpl/gstfilter.sgml:
1250         * docs/gst/tmpl/gstformat.sgml:
1251         * docs/gst/tmpl/gstghostpad.sgml:
1252         * docs/gst/tmpl/gstimplementsinterface.sgml:
1253         * docs/gst/tmpl/gstindex.sgml:
1254         * docs/gst/tmpl/gstindexfactory.sgml:
1255         * docs/gst/tmpl/gstinfo.sgml:
1256         * docs/gst/tmpl/gstiterator.sgml:
1257         * docs/gst/tmpl/gstmacros.sgml:
1258         * docs/gst/tmpl/gstmemchunk.sgml:
1259         * docs/gst/tmpl/gstminiobject.sgml:
1260         * docs/gst/tmpl/gstobject.sgml:
1261         * docs/gst/tmpl/gstpad.sgml:
1262         * docs/gst/tmpl/gstpadtemplate.sgml:
1263         * docs/gst/tmpl/gstparse.sgml:
1264         * docs/gst/tmpl/gstpipeline.sgml:
1265         * docs/gst/tmpl/gstplugin.sgml:
1266         * docs/gst/tmpl/gstpluginfeature.sgml:
1267         * docs/gst/tmpl/gstquery.sgml:
1268         * docs/gst/tmpl/gstqueue.sgml:
1269         * docs/gst/tmpl/gstregistry.sgml:
1270         * docs/gst/tmpl/gstregistrypool.sgml:
1271         * docs/gst/tmpl/gstscheduler.sgml:
1272         * docs/gst/tmpl/gstschedulerfactory.sgml:
1273         * docs/gst/tmpl/gststructure.sgml:
1274         * docs/gst/tmpl/gstsystemclock.sgml:
1275         * docs/gst/tmpl/gsttaglist.sgml:
1276         * docs/gst/tmpl/gsttagsetter.sgml:
1277         * docs/gst/tmpl/gsttrace.sgml:
1278         * docs/gst/tmpl/gsttrashstack.sgml:
1279         * docs/gst/tmpl/gsttypefind.sgml:
1280         * docs/gst/tmpl/gsttypefindfactory.sgml:
1281         * docs/gst/tmpl/gsttypes.sgml:
1282         * docs/gst/tmpl/gsturihandler.sgml:
1283         * docs/gst/tmpl/gsturitype.sgml:
1284         * docs/gst/tmpl/gstutils.sgml:
1285         * docs/gst/tmpl/gstvalue.sgml:
1286         * docs/gst/tmpl/gstversion.sgml:
1287         * docs/gst/tmpl/gstxml.sgml:
1288         * docs/libs/tmpl/gstcontrol.sgml:
1289         * docs/libs/tmpl/gstdataprotocol.sgml:
1290         * docs/libs/tmpl/gstdparam.sgml:
1291         * docs/libs/tmpl/gstdplinint.sgml:
1292         * docs/libs/tmpl/gstdpman.sgml:
1293         * docs/libs/tmpl/gstdpsmooth.sgml:
1294         * docs/libs/tmpl/gstgetbits.sgml:
1295         * docs/libs/tmpl/gstunitconvert.sgml:
1296         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
1297         (gst_push_src_base_init), (gst_push_src_class_init),
1298         (gst_push_src_init), (gst_push_src_create):
1299         * gst/base/gstpushsrc.h:
1300         * gst/elements/gstelements.c:
1301         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
1302         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
1303         (gst_fake_sink_init), (gst_fake_sink_set_property),
1304         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
1305         (gst_fake_sink_event), (gst_fake_sink_preroll),
1306         (gst_fake_sink_render), (gst_fake_sink_change_state):
1307         * gst/elements/gstfakesink.h:
1308         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
1309         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
1310         (gst_fake_src_base_init), (gst_fake_src_class_init),
1311         (gst_fake_src_init), (gst_fake_src_event_handler),
1312         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
1313         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
1314         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
1315         (gst_fake_src_create_buffer), (gst_fake_src_create),
1316         (gst_fake_src_start), (gst_fake_src_stop):
1317         * gst/elements/gstfakesrc.h:
1318         * gst/elements/gstfilesink.c: (_do_init),
1319         (gst_file_sink_base_init), (gst_file_sink_class_init),
1320         (gst_file_sink_init), (gst_file_sink_dispose),
1321         (gst_file_sink_set_location), (gst_file_sink_set_property),
1322         (gst_file_sink_get_property), (gst_file_sink_open_file),
1323         (gst_file_sink_close_file), (gst_file_sink_query),
1324         (gst_file_sink_event), (gst_file_sink_render),
1325         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
1326         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
1327         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
1328         * gst/elements/gstfilesink.h:
1329         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
1330         (gst_file_src_class_init), (gst_file_src_init),
1331         (gst_file_src_finalize), (gst_file_src_set_location),
1332         (gst_file_src_set_property), (gst_file_src_get_property),
1333         (gst_file_src_map_region), (gst_file_src_map_small_region),
1334         (gst_file_src_create_mmap), (gst_file_src_create_read),
1335         (gst_file_src_create), (gst_file_src_is_seekable),
1336         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
1337         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
1338         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
1339         (gst_file_src_uri_handler_init):
1340         * gst/elements/gstfilesrc.h:
1341           more autistic cleanliness in functions/names/defines
1342
1343 2005-07-13  Andy Wingo  <wingo@pobox.com>
1344
1345         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
1346         source couldn't negotiate.
1347
1348         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
1349         connections again.
1350
1351         * gst/gstutils.h:
1352         * gst/gstutils.c (gst_element_link_pads_filtered): New old
1353         function. I am channeling Hades. Put your boots on suckers!!!
1354
1355 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
1356
1357         * testsuite/caps/Makefile.am:
1358         * testsuite/caps/value_compare.c:
1359         * testsuite/caps/value_intersect.c:
1360         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
1361           move two testsuite apps over to the check dir
1362
1363 2005-07-12  Wim Taymans  <wim@fluendo.com>
1364
1365         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
1366         Added more debug info in the negotiate process.
1367
1368         * gst/gstmessage.h:
1369         Prepare for segment playback.
1370
1371         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
1372         Better debugging.
1373
1374         * gst/gstutils.c:
1375         Some more docs.
1376
1377         * tools/gst-launch.c: (main):
1378         NULL pipeline on errors.
1379
1380 2005-07-12  Andy Wingo  <wingo@pobox.com>
1381
1382         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
1383         not it comes from a malloc region. Make sure our copy gets freed.
1384
1385 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1386
1387         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
1388         * check/gst/gstmessage.c: (GST_START_TEST):
1389         * check/gst/gststructure.c: (GST_START_TEST),
1390         (gst_structure_suite), (main):
1391           more testing
1392         * gst/gstelement.c: (gst_element_message_full):
1393           clean up GError and debug string now that they get copied
1394         * gst/gstmessage.c: (gst_message_new_error),
1395         (gst_message_new_warning), (gst_message_parse_error),
1396         (gst_message_parse_warning):
1397           use GST_TYPE_G_ERROR for structure_new, and take copies of
1398           arguments, so that we don't mess up refcounting
1399
1400 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1401
1402         * check/Makefile.am:
1403           add per-test valgrind targets
1404         * check/gst-libs/gdp.c: (GST_START_TEST),
1405         (gst_data_protocol_suite), (main):
1406           clean up
1407
1408 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1409
1410         * check/Makefile.am:
1411           instate more valgrindable tests
1412         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1413         (GST_START_TEST), (fakesrc_suite):
1414         * check/gst/gstpad.c: (GST_START_TEST):
1415         * check/gst/gststructure.c: (GST_START_TEST):
1416           fix test leaks
1417         * docs/gst/tmpl/gstminiobject.sgml:
1418         * gst/gstpad.c: (gst_pad_finalize):
1419           fix the static mutex leak
1420
1421 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1422
1423         * check/Makefile.am:
1424           add two more tests for valgrinding
1425         * check/gst/gstvalue.c: (GST_START_TEST):
1426           test refcount of deserialized buffer, found a leak
1427         * docs/gst/gstreamer-docs.sgml:
1428         * docs/gst/gstreamer-sections.txt:
1429         * docs/gst/gstreamer.types:
1430         * docs/gst/tmpl/gstminiobject.sgml:
1431           add miniobject to docs
1432         * gst/gstminiobject.c:
1433           add some docs
1434         * gst/gstvalue.c: (gst_value_deserialize_buffer),
1435         (gst_string_unwrap):
1436           fix a hard-to-find invalid write for one of the tests
1437           fix a leak for deserialized buffers
1438
1439 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1440
1441         * docs/pwg/advanced-events.xml:
1442         * docs/pwg/advanced-request.xml:
1443         * docs/pwg/advanced-scheduling.xml:
1444         * docs/pwg/appendix-porting.xml:
1445         * docs/pwg/building-boiler.xml:
1446         * docs/pwg/intro-preface.xml:
1447         * docs/pwg/other-ntoone.xml:
1448           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
1449           of example code and explanation for pad activation, loop() and
1450           getrange() functions and a bit more. Remove old comments pointing
1451           to loop-functions.
1452         * examples/pwg/Makefile.am:
1453           Add loop/getrange examples.
1454
1455 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1456
1457         * configure.ac:
1458           check for valgrind binary + some fixes
1459         * check/gst.supp:
1460           valgrind suppressions for the tests
1461         * check/Makefile.am:
1462           add a valgrind: target that valgrinds the unit tests
1463         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
1464         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
1465         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1466         * check/gst/gstghostpad.c:
1467           added some cleanup
1468         * check/gst/gstdata.c:
1469           removed
1470         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
1471         (thread_unref), (gst_mini_object_suite), (main):
1472           added
1473         * gst/gst.c: (gst_deinit):
1474         * gst/gst.h:
1475           add a method to clean up.
1476         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1477         (gst_system_clock_obtain):
1478           allow for disposing the system clock.
1479         * tools/gst-launch.c: (main):
1480           deinit
1481
1482 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1483
1484         * docs/gst/tmpl/gstbasesrc.sgml:
1485         * docs/gst/tmpl/gstfakesrc.sgml:
1486         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1487         (gst_base_src_init), (gst_base_src_set_property),
1488         (gst_base_src_get_property), (gst_base_src_get_range),
1489         (gst_base_src_start):
1490         * gst/base/gstbasesrc.h:
1491           add num-buffers property
1492         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1493         (gst_fakesrc_init), (gst_fakesrc_set_property),
1494         (gst_fakesrc_get_property), (gst_fakesrc_create),
1495         (gst_fakesrc_start):
1496           remove num-buffers property
1497
1498 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1499
1500         * docs/gst/gstreamer-sections.txt:
1501         * docs/gst/tmpl/gstbasesink.sgml:
1502         * docs/gst/tmpl/gstbasesrc.sgml:
1503         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
1504         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
1505         (gst_base_sink_finalize), (gst_base_sink_set_clock),
1506         (gst_base_sink_set_property), (gst_base_sink_get_property),
1507         (gst_base_sink_handle_object), (gst_base_sink_event),
1508         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
1509         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
1510         (gst_base_sink_loop), (gst_base_sink_deactivate),
1511         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
1512         (gst_base_sink_change_state):
1513         * gst/base/gstbasesink.h:
1514         * gst/base/gstbasesrc.h:
1515         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
1516         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
1517         (gst_filesink_init):
1518           more macro splitting
1519
1520 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1521
1522         * gst/gstelement.c: (gst_element_get_bus):
1523           add debug
1524         * tools/gst-launch.c: (check_intr), (event_loop):
1525           fix bus leaks
1526
1527 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1528
1529         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
1530           fix a caps leak
1531
1532 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1533
1534         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1535         (gst_base_src_finalize):
1536           add finalize method and clean up properly
1537         * gst/gstpipeline.c: (gst_pipeline_dispose):
1538           add debug
1539
1540 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1541
1542         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
1543         (gst_bin_suite):
1544           add more things to check
1545         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
1546         * gst/gstelement.c:
1547           more debug
1548
1549 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1550
1551         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1552         (GST_START_TEST), (fakesrc_suite):
1553         * check/gst-libs/gdp.c: (GST_START_TEST):
1554         * check/gst/gst.c: (GST_START_TEST):
1555         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
1556         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1557         * check/gst/gstbus.c: (GST_START_TEST):
1558         * check/gst/gstcaps.c: (GST_START_TEST):
1559         * check/gst/gstdata.c: (GST_START_TEST):
1560         * check/gst/gstelement.c: (GST_START_TEST):
1561         * check/gst/gstghostpad.c: (GST_START_TEST):
1562         * check/gst/gstiterator.c: (GST_START_TEST):
1563         * check/gst/gstmessage.c: (GST_START_TEST):
1564         * check/gst/gstobject.c: (GST_START_TEST):
1565         * check/gst/gstpad.c: (GST_START_TEST):
1566         * check/gst/gststructure.c: (GST_START_TEST):
1567         * check/gst/gstsystemclock.c: (GST_START_TEST),
1568         (gst_systemclock_suite):
1569         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
1570         * check/gst/gstvalue.c: (GST_START_TEST):
1571         * check/pipelines/cleanup.c: (GST_START_TEST):
1572         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
1573         * check/states/sinks.c: (GST_START_TEST):
1574         * check/gstcheck.c: (gst_check_init):
1575         * check/gstcheck.h:
1576           add debugging category
1577           use GST_START_TEST now, so we add a debug line
1578
1579 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1580
1581         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
1582           add test for state change message on a bin
1583         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
1584           add another test
1585         * gst/gstbin.c: (gst_bin_init):
1586         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
1587         * gst/gstelement.c: (gst_element_post_message),
1588         (gst_element_set_state):
1589         * gst/gstelementfactory.c: (gst_element_factory_create):
1590         * gst/gstmessage.c: (gst_message_new):
1591         * gst/gstscheduler.c:
1592           various debugging additions and cleanups
1593
1594 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1595
1596         * check/Makefile.am:
1597         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
1598         (main):
1599           adding tests for elements
1600         * gst/gstelement.c: (gst_element_dispose):
1601
1602 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1603
1604         * gst/registries/gstlibxmlregistry.c: (load_feature):
1605           plug more leaks.  A simple gst_init() now is leakfree, yay.
1606
1607 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1608
1609         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
1610         (gst_xml_registry_load):
1611           plug another memleak
1612
1613 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1614
1615         * configure.ac:
1616           use GST_SET_ERROR_CFLAGS
1617         * docs/faq/cvs.xml:
1618           change to ERROR_CFLAGS
1619
1620 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1621
1622         * configure.ac:
1623           make GST_ERROR_CFLAGS overridable and re-enable Werror
1624         * docs/faq/cvs.xml:
1625           add a note about error CFLAGS
1626         * docs/gst/tmpl/gstfakesrc.sgml:
1627         * gst/elements/gstfakesrc.c:
1628           comment out some unused code
1629         * gst/gst.c: (split_and_iterate):
1630         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
1631         (load_feature):
1632           plug some memleaks
1633
1634 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1635
1636         * common/Makefile.am:
1637         * common/gtk-doc.mak:
1638         * docs/gst/Makefile.am:
1639           factor out gtk-doc.mak
1640
1641 2005-07-07  Wim Taymans  <wim@fluendo.com>
1642
1643         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
1644         (gst_thread_scheduler_dispose):
1645         Unlock the STREAM_LOCK completely.
1646
1647 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1648
1649         * check/Makefile.am:
1650         * check/elements/.cvsignore:
1651         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1652         (START_TEST), (fakesrc_suite), (main):
1653         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1654         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
1655         (gst_fakesrc_create), (gst_fakesrc_start):
1656         * gst/elements/gstfakesrc.h:
1657           adding a first element test
1658
1659 2005-07-07  Andy Wingo  <wingo@pobox.com>
1660
1661         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
1662         debug message.
1663
1664 2005-07-07  Wim Taymans  <wim@fluendo.com>
1665
1666         * gst/gstquery.c:
1667         * gst/gstquery.h:
1668         Remove old types
1669
1670 2005-07-07  Wim Taymans  <wim@fluendo.com>
1671
1672         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
1673         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
1674         Allow subclasses to implement their own negotiation.
1675
1676 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1677
1678         * docs/design/part-gstbin.txt:
1679         * docs/design/part-gstpipeline.txt:
1680           Update design notes to reflect the movement of
1681           responsibility for bus handling from GstPipeline to
1682           GstBin
1683
1684 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1685
1686         * configure.ac:
1687           Remove unnecessary queue2/3/4 examples.
1688
1689 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1690
1691         * examples/Makefile.am:
1692         * examples/helloworld/helloworld.c: (event_loop), (main):
1693         * examples/queue/queue.c: (event_loop), (main):
1694         * examples/queue2/queue2.c: (main):
1695           Update a couple of the examples to work again.
1696
1697         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1698         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
1699          Spelling corrections and extra debug.
1700         
1701         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
1702         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
1703         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
1704         * gst/gstbin.h:
1705         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
1706         (gst_pipeline_change_state):
1707         * gst/gstpipeline.h:
1708           Move the bus handler for children to the GstBin, and create a
1709           separate bus for receiving messages from children to the one the
1710           bus sends 'upwards' on.
1711
1712 2005-07-06  Wim Taymans  <wim@fluendo.com>
1713
1714         * gst/base/README:
1715         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1716         (gst_base_sink_handle_object), (gst_base_sink_loop),
1717         (gst_base_sink_change_state):
1718         * gst/base/gstbasesink.h:
1719         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1720         (gst_base_src_init), (gst_base_src_setcaps),
1721         (gst_base_src_getcaps), (gst_base_src_loop),
1722         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
1723         (gst_base_src_start), (gst_base_src_change_state):
1724         * gst/base/gstbasesrc.h:
1725         Make basesrc negotiate.
1726         Handle the case where preroll fails in basesink.
1727         Update README.
1728
1729 2005-07-06  Wim Taymans  <wim@fluendo.com>
1730
1731         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
1732         Implement the fixate function.
1733         Clean up acceptcaps.
1734
1735 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1736
1737         * docs/pwg/building-filterfactory.xml:
1738         * docs/pwg/pwg.xml:
1739           Remove never-written filter-factory chapter; I'll add the various
1740           base classes to part 4 ("other element types") later on.
1741
1742 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1743
1744         * docs/pwg/advanced-negotiation.xml:
1745         * docs/pwg/building-boiler.xml:
1746         * docs/pwg/building-pads.xml:
1747         * docs/pwg/pwg.xml:
1748         * examples/pwg/Makefile.am:
1749           Add a chapter on caps negotiation, simplify the original code
1750           samples a bit w.r.t. caps negotiation, add link to the advanced
1751           section. Add a bunch of examples showing different use cases of
1752           different types of caps negotiation. Upstream renegotiation isn't
1753           fully documented yet since nobody knows how that works.
1754
1755 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
1756
1757         * check/gst/gstpad.c:
1758         * check/gstcheck.c:
1759         * gst/gstpad.c: (gst_pad_get_internal_links_default):
1760           if pad has no parent, return NULL as list of internal links
1761
1762 2005-07-05  Andy Wingo  <wingo@pobox.com>
1763
1764         * gst/elements/gstfilesrc.c:
1765         * gst/elements/gstfakesrc.c: 
1766         * gst/base/gstpushsrc.c:
1767         * gst/base/gstbasesrc.h: 
1768         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
1769         
1770 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
1771
1772         * Makefile.am:
1773           better report generation target (lcov needs a patch)
1774
1775 2005-07-05  Andy Wingo  <wingo@pobox.com>
1776
1777         * gst/elements, testsuite: Null if we got it...
1778
1779 2005-07-05  Wim Taymans  <wim@fluendo.com>
1780
1781         * configure.ac:
1782         * libs/gst/dataprotocol/Makefile.am:
1783         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
1784         * libs/gst/dataprotocol/dataprotocol.h:
1785         * pkgconfig/Makefile.am:
1786         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
1787         * pkgconfig/gstreamer-dataprotocol.pc.in:
1788         Ported dataprotol to 0.9. 
1789         Added pkgconfig files.
1790
1791 2005-07-05  Andy Wingo  <wingo@pobox.com>
1792
1793         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
1794         Default to returning TRUE for the case when tranform_caps returns
1795         a fixed caps, like for identity or volume.
1796
1797         * check/gst/gstbus.c (pound_bus_with_messages): 
1798         * check/gst/gstmessage.c (START_TEST): 
1799         * check/pipelines/simple_launch_lines.c (got_handoff): Application
1800         message API change.
1801
1802         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
1803         logic weaks here: always run transform_caps, trying passthrough
1804         operation only if the original caps intersects with the transform.
1805
1806         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
1807         source and sink caps.
1808
1809         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
1810         Intersect the peer caps with the pad template before going into
1811         transform_caps.
1812         (gst_base_transform_transform_caps): More debugging.
1813
1814         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
1815         src argument.
1816
1817 2005-07-04  Edward Hervey  <edward@fluendo.com>
1818
1819         * gst/gstutils.c:
1820         * gst/gstutils.h:
1821         (gst_pad_add_*_probe): now returns the signal id for better wrapping
1822         in bindings.
1823
1824 2005-07-04  Andy Wingo  <wingo@pobox.com>
1825
1826         * check/gst/gstpad.c: Only set explicit caps on pads.
1827
1828 2005-07-01  Andy Wingo  <wingo@pobox.com>
1829
1830         * tests/network-clock.scm: Commentary update.
1831
1832         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
1833         Didn't really make sense, not implementable with basetransform,
1834         etc.
1835         (gst_identity_transform): Unref inbuf via make_writable. Feeble
1836         attempt at implementing the sync property, needs an unlock method.
1837
1838         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
1839         New func, by default returns the same caps (the identity
1840         transformation).
1841         (gst_base_transform_getcaps): Uses transform_caps to return
1842         something sensible.
1843         (gst_base_transform_setcaps): Complicated logic to get caps on
1844         both pads, even if they are different, and to call set_caps once
1845         for every time both pads get their caps set.
1846         (gst_base_transform_handle_buffer): Give the ref to the transform
1847         function. Allows in-place modification of the buffer.
1848
1849         * gst/base/gstbasetransform.h (transform_caps): New class method.
1850         Given caps on one side, what can I do on the other.
1851         (set_caps): Take two caps, one for each side of the element.
1852
1853         * gst/gstpad.h:
1854         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
1855         caps in place. This is safe because we can check the mutability of
1856         the caps, and a good idea because fixate functions are just called
1857         as a matter of last resort. (Not actually implemented.)
1858         (gst_pad_set_caps): If the caps we're setting is actually the same
1859         as the existing pad caps, just update the pointer without calling
1860         setcaps. Assert that caps is either NULL or fixed, as per the
1861         docs.
1862
1863         * gst/gstghostpad.c: Update for fixate changes.
1864
1865 2005-07-02  Andy Wingo  <wingo@pobox.com>
1866
1867         * gst/gstcaps.c:
1868         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
1869         two refcounts makes it immutable, which is enough. Doc more.
1870
1871 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
1872
1873         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
1874           Put the mini_object into GValue as a mini_object,
1875           not a gpointer, since that's how we declared
1876           the signal.
1877
1878 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1879
1880         * examples/pwg/Makefile.am:
1881           Fix buildbot again.
1882
1883 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1884
1885         * docs/pwg/building-testapp.xml:
1886           Add extra check.
1887         * examples/pwg/Makefile.am:
1888           Fix buildbot.
1889
1890 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1891
1892         * configure.ac:
1893         * examples/Makefile.am:
1894         * examples/pwg/Makefile.am:
1895         * examples/pwg/extract.pl:
1896           Enable building the PWG examples.
1897         * docs/pwg/advanced-interfaces.xml:
1898           Add URI interface stub.
1899         * docs/pwg/advanced-types.xml:
1900         * docs/pwg/other-autoplugger.xml:
1901         * docs/pwg/appendix-porting.xml:
1902         * docs/pwg/pwg.xml:
1903           Add porting guide (mostly stubs), remove autoplugging (see ADM).
1904         * docs/pwg/building-boiler.xml:
1905         * docs/pwg/building-chainfn.xml:
1906         * docs/pwg/building-pads.xml:
1907         * docs/pwg/building-props.xml:
1908         * docs/pwg/building-state.xml:
1909         * docs/pwg/building-testapp.xml:
1910           Update the building-*.xml parts for 0.9 changes. All examples
1911           code blocks compile in examples/pwg/*.
1912
1913 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1914
1915         * docs/manual/advanced-autoplugging.xml:
1916         * docs/manual/appendix-checklist.xml:
1917         * docs/manual/appendix-integration.xml:
1918         * docs/manual/highlevel-components.xml:
1919           Fix playbin/decodebin examples, update docs a bit, mention bus
1920           instead of signals in various places, mention kmplayer and
1921           kaffeine since they have a working GStreamer backend in the KDE
1922           section.
1923
1924 2005-06-30  Wim Taymans  <wim@fluendo.com>
1925
1926         * CHANGES-0.9:
1927         * docs/design/draft-ghostpads.txt:
1928         * docs/design/draft-push-pull.txt:
1929         * docs/design/draft-query.txt:
1930         * docs/design/part-TODO.txt:
1931         * docs/design/part-query.txt:
1932         Added CHANGES-0.9 doc, updated status of other docs.
1933         
1934         * gst/gstquery.h:
1935         Remove "hmm" macro
1936
1937 2005-06-30  Wim Taymans  <wim@fluendo.com>
1938
1939         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1940         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
1941         (gst_base_sink_change_state):
1942         * gst/base/gstbasesink.h:
1943         Some tweaks, only EOS and a buffer complete a preroll.
1944
1945 2005-06-30  Andy Wingo  <wingo@pobox.com>
1946
1947         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
1948         activate_push down to the internal pad as well.
1949
1950 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
1951
1952         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1953
1954         * gst/gsttaginterface.c:
1955           Some documentation fixes (#307394 and #307397).
1956
1957 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
1958
1959         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1960
1961         * gst/gstvalue.c: (gst_value_intersect_list):
1962           Fix memleak (#309125).
1963
1964 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1965
1966         * docs/manual/advanced-dataaccess.xml:
1967           Fix fakesrc example to compile; doesn't work, bug somewhere...?
1968         * docs/manual/basics-pads.xml:
1969           Add reference for filtered caps to above chapter.
1970
1971 2005-06-30  Wim Taymans  <wim@fluendo.com>
1972
1973         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
1974         (gst_bin_change_state):
1975         Probes are gone.
1976         Lame attempt at making the state change function a bit
1977         more readable.
1978
1979 2005-06-30  Wim Taymans  <wim@fluendo.com>
1980
1981         * docs/design/part-clocks.txt:
1982         * docs/design/part-element-sink.txt:
1983         * docs/design/part-events.txt:
1984         * docs/design/part-preroll.txt:
1985         * docs/design/part-states.txt:
1986         Some more tweeks and additions to the docs.
1987
1988 2005-06-30  Wim Taymans  <wim@fluendo.com>
1989
1990         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1991         (default_have_data), (gst_pad_class_init), (gst_pad_init),
1992         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1993         (gst_pad_check_pull_range), (gst_pad_get_range),
1994         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
1995         * gst/gstpad.h:
1996         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
1997         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1998         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1999         (gst_pad_remove_buffer_probe):
2000         Removed atomic operations, use existing LOCK.
2001         Move exception handling out of main code path.
2002
2003 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2004
2005         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
2006         (silly_return_true_function), (gst_pad_class_init),
2007         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
2008         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
2009         (gst_pad_send_event):
2010           Fix accumulator, add default value by using _emitv() instead
2011           of _emit() for signal emission.
2012
2013 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2014
2015         * docs/manual/advanced-dataaccess.xml:
2016         * examples/manual/Makefile.am:
2017           Add probe example.
2018         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
2019           Make work (??).
2020
2021 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
2022
2023         * gst/elements/gstfilesink.c: (gst_filesink_render):
2024           Simplify code so that we don't have to handle short
2025           writes and return GST_FLOW_ERROR if an error occured.
2026
2027 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2028
2029         * docs/gst/gstreamer-docs.sgml:
2030           Remove probes more.
2031
2032 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2033
2034         * docs/gst/gstreamer-sections.txt:
2035         * docs/gst/tmpl/gstpad.sgml:
2036         * docs/gst/tmpl/gstprobe.sgml:
2037         * gst/Makefile.am:
2038         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
2039         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
2040         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
2041         (gst_pad_push_event), (gst_pad_send_event):
2042         * gst/gstpad.h:
2043         * gst/gstutils.c: (gst_pad_add_data_probe),
2044         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
2045         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
2046         (gst_pad_remove_buffer_probe):
2047         * gst/gstutils.h:
2048           Remove old probes, add new g-signal-based probes and some utility
2049           functions.
2050
2051 2005-06-29  Edward Hervey  <edward@fluendo.com>
2052
2053         * gst/gstelementfactory.c:
2054         * gst/gstutils.h:
2055         * gst/gstutils.c:
2056         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
2057         the definition to the header file.
2058
2059 2005-06-29  Andy Wingo  <wingo@pobox.com>
2060
2061         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
2062         plugins from the source directory.
2063
2064 2005-06-29  Wim Taymans  <wim@fluendo.com>
2065
2066         * docs/gst/tmpl/gstbuffer.sgml:
2067         * docs/gst/tmpl/gstclock.sgml:
2068         Some fixings for blantently wrong text.
2069
2070 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
2071
2072         * check/Makefile.am:
2073         * gst/gst.c: (add_path_func), (init_pre):
2074         * gst/gstregistry.c: (gst_registry_add_path):
2075           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
2076           only scan the GST_PLUGIN_PATH locations, and not add
2077           system locations
2078
2079 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
2080
2081         * docs/gst/gstreamer-sections.txt:
2082         * docs/gst/tmpl/gstbasesrc.sgml:
2083         * gst/gstelement.c:
2084         * gst/gstelement.h:
2085         * gst/gstevent.c:
2086         * gst/gstutils.c:
2087           doc fixes
2088
2089 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2090
2091         * docs/manual/advanced-autoplugging.xml:
2092           Fix autoplugging example.
2093
2094 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2095
2096         * docs/manual/advanced-autoplugging.xml:
2097         * docs/manual/mime-world.fig:
2098           Try to get autoplugging working, fix type detection. Fix text
2099           in hello-world image.
2100
2101 2005-06-29  Wim Taymans  <wim@fluendo.com>
2102
2103         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
2104         (gst_base_sink_change_state):
2105         Small debug line.
2106
2107         * gst/gstclock.h:
2108         map SIGNAL and BROADCAST to the right function.
2109
2110         * gst/gstobject.h:
2111         Remove redundant braces.
2112
2113         * gst/gstpad.c: (gst_pad_set_caps):
2114         Don't call setcaps function when reseting caps to NULL.
2115
2116         * gst/gstsystemclock.c: (gst_system_clock_dispose),
2117         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
2118         (gst_system_clock_id_unschedule):
2119         Use BROADCAST as this is what we do.
2120
2121 2005-06-29  Wim Taymans  <wim@fluendo.com>
2122
2123         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
2124         We are actually prerolling before commiting the state
2125         change. 
2126
2127 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2128
2129         * docs/manual/advanced-clocks.xml:
2130         * docs/manual/advanced-interfaces.xml:
2131         * docs/manual/advanced-metadata.xml:
2132         * docs/manual/advanced-position.xml:
2133         * docs/manual/advanced-schedulers.xml:
2134         * docs/manual/advanced-threads.xml:
2135         * docs/manual/appendix-porting.xml:
2136         * docs/manual/basics-bins.xml:
2137         * docs/manual/basics-bus.xml:
2138         * docs/manual/basics-elements.xml:
2139         * docs/manual/basics-helloworld.xml:
2140         * docs/manual/basics-pads.xml:
2141         * docs/manual/highlevel-components.xml:
2142         * docs/manual/manual.xml:
2143         * docs/manual/thread.fig:
2144           Update (until threads/scheduling) Application Development Manual;
2145           remove GstThread, add GstBus, add simple porting checklist, add
2146           documentation for tag writing, clocks, make all examples until this
2147           part compile and run.
2148         * examples/manual/Makefile.am:
2149           Update from changes to Application Development Manual; add bus
2150           example, remove thread example.
2151
2152 2005-06-28  Wim Taymans  <wim@fluendo.com>
2153
2154         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
2155         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
2156         (gst_bus_source_dispatch):
2157         Add debugging messages.
2158         Make internal methods static.
2159         Handle the case where the bus is flushed in the handler.
2160         
2161         * gst/gstelement.c: (gst_element_get_bus):
2162         Fix refcount in _get_bus();
2163
2164         * gst/gstpipeline.c: (gst_pipeline_change_state),
2165         (gst_pipeline_get_clock_func):
2166         Clock refcounting fixes.
2167         Handle the case where preroll timed out more gracefully.
2168         
2169         * gst/gstsystemclock.c: (gst_system_clock_dispose):
2170         Clean up the internal thread in dispose. This is needed
2171         for subclasses that actually get disposed.
2172         
2173         * gst/schedulers/threadscheduler.c:
2174         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
2175         (gst_thread_scheduler_dispose):
2176         Free thread pool in dispose.
2177
2178 2005-06-28  Andy Wingo  <wingo@pobox.com>
2179
2180         * tests/network-clock-utils.scm (debug, print-event): New utils.
2181
2182         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
2183         (*packet-loss*): Unified loss probability.
2184         (network-time): Report out-of-band events.
2185
2186         * tests/plot-data: Add support for out-of-band events. Hack it
2187         into this script instead of passing it down the pipe; should fix
2188         this later.
2189
2190 2005-06-28  Wim Taymans  <wim@fluendo.com>
2191
2192         * docs/gst/gstreamer.types:
2193         * docs/gst/tmpl/gstbasesrc.sgml:
2194         * docs/gst/tmpl/gstpad.sgml:
2195         Docs fixes.
2196
2197 2005-06-28  Wim Taymans  <wim@fluendo.com>
2198
2199         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2200         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
2201         (gst_proxy_pad_do_fixatecaps):
2202         Correctly proxy the check_pull_range function.
2203
2204 2005-06-28  Andy Wingo  <wingo@pobox.com>
2205
2206         * tests/network-clock.scm: Removed need for slib.
2207         
2208 2005-06-28  Wim Taymans  <wim@fluendo.com>
2209
2210         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
2211         (gst_basesink_preroll_queue_flush):
2212         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
2213         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
2214         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2215         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
2216         (gst_proxy_pad_set_property):
2217         * gst/gstpad.c:
2218         * gst/gstpad.h:
2219         * gst/gstqueue.c: (gst_queue_init):
2220         The deprecated pad loop function is removed now.
2221
2222 2005-06-28  Andy Wingo  <wingo@pobox.com>
2223
2224         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
2225         New parameters, simulate network packet loss.
2226
2227         * tests/network-clock-utils.scm: Initialize the RNG.
2228
2229 2005-06-28  Wim Taymans  <wim@fluendo.com>
2230
2231         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
2232         (gst_basesink_event), (gst_basesink_deactivate):
2233         Flushing the preroll queue always needs to unlock the waiters.
2234
2235 2005-06-28  Edward Hervey  <edward@fluendo.com>
2236
2237         * gst/gstpipeline.c: (gst_pipeline_send_event): 
2238         Wheen a seek was successful on a pipeline, set the stream_time to the
2239         seek offset in order to have a synchronized stream_time.
2240
2241 2005-06-28  Wim Taymans  <wim@fluendo.com>
2242
2243         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2244         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
2245         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
2246         (gst_proxy_pad_do_fixatecaps):
2247         Call wrapper function instead of just calling the function
2248         pointers. This takes care of any locking and whatmore.
2249
2250 2005-06-28  Wim Taymans  <wim@fluendo.com>
2251
2252         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
2253         (gst_pad_pull_range):
2254         * gst/gstpad.h:
2255         CONNECTED -> LINKED.
2256
2257 2005-06-28  Andy Wingo  <wingo@pobox.com>
2258
2259         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
2260         source-munging commit!!!
2261
2262         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
2263         (gst_object_sink): Take gpointer arguments, not GstObject --
2264         avoids casts. Like GLib.
2265
2266         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
2267         activate.
2268
2269 2005-06-27  Andy Wingo  <wingo@pobox.com>
2270
2271         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
2272         remaining buffer.
2273
2274         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
2275         returns a sorted copy of the trace list.
2276         (gst_alloc_trace_print_live): New API, only prints traces with
2277         live objects. Sort the list.
2278         (gst_alloc_trace_print_all): Sort the list.
2279         (gst_alloc_trace_print): Align columns.
2280
2281         * gst/elements/gstttypefindelement.c:
2282         * gst/elements/gsttee.c:
2283         * gst/base/gstbasesrc.c:
2284         * gst/base/gstbasesink.c:
2285         * gst/base/gstbasetransform.c:
2286         * gst/gstqueue.c: Adapt for pad activation changes.
2287
2288         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
2289         sched.
2290         (gst_pipeline_dispose): Drop ref on sched.
2291
2292         * gst/gstpad.c (gst_pad_init): Set the default activate func.
2293         (gst_pad_activate_default): Push mode by default.
2294         (pre_activate_switch, post_activate_switch): New stubs, things to
2295         do before and after switching activation modes on pads.
2296         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
2297         the pad's activate function to choose which mode to activate.
2298         Shortcut on deactivation and call the right function directly.
2299         (gst_pad_activate_pull): New API, (de)activates a pad in pull
2300         mode.
2301         (gst_pad_activate_push): New API, same for push mode.
2302         (gst_pad_set_activate_function) 
2303         (gst_pad_set_activatepull_function) 
2304         (gst_pad_set_activatepush_function): Setters for new API.
2305
2306         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
2307         Trace all miniobjects.
2308         (gst_mini_object_make_writable): Unref the arg if we copy, like
2309         gst_caps_make_writable.
2310
2311         * gst/gstmessage.c (_gst_message_initialize): No trace init.
2312
2313         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
2314         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
2315         Adapt for new pad API.
2316
2317         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
2318
2319         * gst/gstelement.h:
2320         * gst/gstelement.c (gst_element_iterate_src_pads) 
2321         (gst_element_iterate_sink_pads): New API functions.
2322         
2323         * gst/gstelement.c (iterator_fold_with_resync): New utility,
2324         should fold into gstiterator.c in some form.
2325         (gst_element_pads_activate): Simplified via use of fold and
2326         delegation of decisions to gstpad->activate.
2327
2328         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
2329         help in debugging.
2330
2331         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
2332         class once in init, like gstmessage. Didn't run into this issue
2333         but it seems correct. Don't initialize a trace, gstminiobject does
2334         that.
2335
2336         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
2337         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
2338         to the bus.
2339         (assert_live_count): New util function, uses alloc traces to check
2340         cleanup.
2341
2342         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
2343         To be modified when unlink drops the internal pad.
2344
2345 2005-06-27  Wim Taymans  <wim@fluendo.com>
2346
2347         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
2348         (gst_bin_change_state):
2349         Cleanup the get_state() function a little, make sure it
2350         iterates the same set of elements.
2351         Added stub iterate_state_order().
2352
2353 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
2354
2355         * docs/gst/gstreamer-docs.sgml:
2356         * docs/gst/gstreamer-sections.txt:
2357         * docs/gst/gstreamer.types:
2358         * docs/gst/tmpl/gstbasesink.sgml:
2359         * docs/gst/tmpl/gstbasesrc.sgml:
2360         * docs/gst/tmpl/gstbasetransform.sgml:
2361         * docs/gst/tmpl/gstelement.sgml:
2362         * docs/gst/tmpl/gstiterator.sgml:
2363         * gst/base/gstbasesrc.c:
2364         * gst/base/gstbasesrc.h:
2365         * gst/base/gstbasetransform.h:
2366         * gst/gstelement.c:
2367         * gst/gstiterator.h:
2368           adding basetransform and iterator docs
2369
2370 2005-06-27  Andy Wingo  <wingo@pobox.com>
2371
2372         * docs/design/part-activation.txt: Notes on how activation should
2373         work -- not quite implemented yet.
2374
2375 2005-06-25  Wim Taymans  <wim@fluendo.com>
2376
2377         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
2378         At least get the chain function correct, needs more
2379         fixing.
2380
2381 2005-06-25  Wim Taymans  <wim@fluendo.com>
2382
2383         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2384         (gst_basesink_handle_object), (gst_basesink_event),
2385         (gst_basesink_do_sync), (gst_basesink_handle_event),
2386         (gst_basesink_change_state):
2387         * gst/gsttask.h:
2388         Right, two problems here: ghostpads don't take locks and
2389         glib _rec_mutex_lock_full() with depth==0 still locks.
2390         Catch illegal locking and g_warn them.
2391
2392 2005-06-25  Wim Taymans  <wim@fluendo.com>
2393
2394         * check/states/sinks.c: (START_TEST), (gst_object_suite):
2395         Have to check for completion now...
2396
2397 2005-06-25  Wim Taymans  <wim@fluendo.com>
2398
2399         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2400         (gst_basesink_handle_object), (gst_basesink_event),
2401         (gst_basesink_do_sync), (gst_basesink_handle_event),
2402         (gst_basesink_change_state):
2403         * gst/gstpad.h:
2404         Unlock STREAM_LOCK whatever the recursion was.
2405
2406 2005-06-25  Wim Taymans  <wim@fluendo.com>
2407
2408         * gst/base/gstbasesink.c: (gst_basesink_set_property),
2409         (gst_basesink_preroll_queue_empty),
2410         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
2411         (gst_basesink_event), (gst_basesink_do_sync),
2412         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
2413         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
2414         (gst_basesink_change_state):
2415         Reworked the base sink, handle event and buffer serialisation
2416         correctly and removed possible deadlock.
2417         Handle EOS correctly.
2418
2419 2005-06-25  Wim Taymans  <wim@fluendo.com>
2420
2421         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
2422         (gst_pipeline_change_state):
2423         * tools/gst-launch.c: (check_intr), (event_loop), (main):
2424         Allow elements to post EOS in the state change function.
2425         Fix up -launch, make it exit the poll loop when the
2426         pipeline actually changed state.
2427         Fix up warning parsing in -launch.
2428
2429 2005-06-25  Wim Taymans  <wim@fluendo.com>
2430
2431         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
2432         (gst_tee_sink_activate):
2433         Core takes STREAM_LOCK for us now.
2434
2435 2005-06-25  Wim Taymans  <wim@fluendo.com>
2436
2437         * gst/gstelement.c: (gst_element_get_state_func),
2438         (gst_element_set_state):
2439         * gst/gstelement.h:
2440         * gst/gstmessage.c: (gst_message_parse_error),
2441         (gst_message_parse_warning):
2442         Keep track of current target state while performing a state
2443         change so that subclasses can do something interesting.
2444         Fix parsing of warning/error messages when GError is NULL.
2445
2446 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
2447
2448         * docs/gst/Makefile.am:
2449         * docs/gst/gstreamer-docs.sgml:
2450         * docs/gst/gstreamer-sections.txt:
2451         * docs/gst/gstreamer.types:
2452         * docs/gst/tmpl/gstbasesink.sgml:
2453         * docs/gst/tmpl/gstbasesrc.sgml:
2454         * docs/gst/tmpl/gstbin.sgml:
2455         * docs/gst/tmpl/gstcompat.sgml:
2456         * docs/gst/tmpl/gstfakesink.sgml:
2457         * docs/gst/tmpl/gstfakesrc.sgml:
2458         * docs/gst/tmpl/gstfilesink.sgml:
2459         * docs/gst/tmpl/gstfilesrc.sgml:
2460         * docs/gst/tmpl/gstindex.sgml:
2461         * docs/manual/appendix-quotes.xml:
2462         * gst/base/gstbasesrc.h:
2463         * gst/elements/gstfakesrc.h:
2464         * gst/gstmessage.h:
2465           start pulling in base classes and elements in our docs
2466
2467 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
2468
2469         * docs/gst/Makefile.am:
2470         * docs/libs/Makefile.am:
2471           fixed make distcheck with gtk-doc 1.3
2472
2473 2005-06-23  Wim Taymans  <wim@fluendo.com>
2474
2475         * gst/gstelement.c: (gst_element_get_state_func),
2476         (gst_element_set_state), (gst_element_change_state):
2477         When the state did not change, also report NO_PREROLL
2478         when it matters.
2479
2480 2005-06-23  Wim Taymans  <wim@fluendo.com>
2481
2482         * gst/gstpad.c: (gst_pad_event_default):
2483         * gst/gstqueue.c: (gst_queue_loop):
2484         No unsafe task pausing please.
2485
2486 2005-06-23  Wim Taymans  <wim@fluendo.com>
2487
2488         * gst/schedulers/threadscheduler.c:
2489         (gst_thread_scheduler_task_start),
2490         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
2491         Ref the task before pushing it on the threadpool. This
2492         makes sure that we have a ref when the threadfunction is
2493         actually called.
2494
2495 2005-06-23  Andy Wingo  <wingo@pobox.com>
2496
2497         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
2498         offset is greater than the file's size.
2499
2500         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
2501         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
2502         * gst/gstobject.c (gst_object_class_init): Make the class lock
2503         recursive. Wim won't let me drop deep_notify. Decodebin works
2504         again, whoopdy doo.
2505
2506         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
2507         internal pad, and hacks accordingly. Doesn't do it on the target
2508         pad because we change its caps. Probably catches all cases of
2509         interest tho.
2510         (gst_ghost_pad_set_property): Connect to notify::caps as
2511         appropritate.
2512
2513         * tests/network-clock.scm (plot-simulation): Pipe data to the
2514         elite python skript.
2515
2516         * tests/network-clock-utils.scm (define-parameter): New macro,
2517         defines a parameter that can be set via the command line.
2518         (set-parameter!, parse-parameter-arguments): Command line args
2519         parser.
2520
2521         * tests/plot-data: Simple matplotlib-based plotter, takes input on
2522         stdin.
2523
2524 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
2525
2526         * gst/elements/gsttypefindelement.c:
2527         (gst_type_find_element_handle_event):
2528           Don't restart typefinding on a discont.
2529         * gst/gstelement.c: (gst_element_set_state):
2530           Debug spelling fix.
2531         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
2532           Allow changing mode of an active pad.
2533           Debug output fixes.
2534         * gst/registries/gstlibxmlregistry.c: (load_feature):
2535           Don't cast a static pad template to a normal pad template.
2536
2537 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
2538
2539         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2540         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2541           remove gst_strtoll completely, since it didn't actually do
2542           anything more than what g_ascii_strtoull already does.
2543           check for range errors when deserializing
2544           do a cast for the unsigned cases; but further fixing needs
2545           a decision on what the interpretation of "(int)" and
2546           deserialization should be for values that fall outside the
2547           type's boundaries (ie, refuse, or interpret as casting)
2548
2549 2005-06-23  Wim Taymans  <wim@fluendo.com>
2550
2551         * check/Makefile.am:
2552         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
2553         * docs/design/part-live-source.txt:
2554         * docs/design/part-states.txt:
2555         * gst/base/gstbasesrc.c: (gst_basesrc_init),
2556         (gst_basesrc_set_live), (gst_basesrc_is_live),
2557         (gst_basesrc_get_range), (gst_basesrc_activate),
2558         (gst_basesrc_change_state):
2559         * gst/base/gstbasesrc.h:
2560         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2561         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
2562         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
2563         * gst/gstelement.c: (gst_element_get_state_func),
2564         (gst_element_set_state):
2565         * gst/gstelement.h:
2566         * gst/gsttypes.h:
2567         * tools/gst-launch.c: (event_loop), (main):
2568         Added support for live sources and other elements that
2569         cannot do preroll.
2570         Updated design docs, added live-source design doc.
2571         Implemented live source functionality in basesrc
2572         Fix error condition in _bin_get_state()
2573         Implement live source handling in -launch.
2574         Added check for live sources.
2575         Fixed case in GstBin where elements were changed state
2576         multiple times.
2577
2578
2579 2005-06-23  Andy Wingo  <wingo@pobox.com>
2580
2581         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
2582         borken refcounting.
2583
2584         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
2585         gst_caps_replace takes care of this for us.
2586
2587         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
2588         gst_pad_set_caps on the target, not just its setcaps() function.
2589
2590         * tests/network-clock.scm: 
2591         * tests/network-clock-utils.scm: A network clock simulator.
2592         Something of an algorithmic testbed before doing something in C.
2593
2594 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2595
2596         * check/Makefile.am:
2597         * check/gst/capslist.h:
2598           copy over from 0.8, and add two with bitmasks specified with
2599           (int) 0xFF...
2600         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2601           add test to parse everything from capslist.h
2602         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
2603         (main):
2604           add test for structure deserialization
2605         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2606           add tests for deserialization of strings to int types
2607         * gst/gststructure.c: (gst_structure_nth_field_name):
2608         * gst/gststructure.h:
2609           add a way to get the name of a field referenced by index
2610         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2611           instead of checking if the resulting long long lies between
2612           min and max, we check if the long long would fit into
2613           a number of bytes for the final type.
2614           This fixes cases where a string represents 2^32 - 1, which
2615           when cast to int would be the (valid) -1, but is bigger than
2616           G_MAXINT
2617
2618 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2619
2620         * gst/parse/grammar.y:
2621           add a log line for type deserialization
2622
2623 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2624
2625         * check/gst/gstvalue.c: (START_TEST):
2626         * gst/gstvalue.c: (gst_value_deserialize):
2627           return long long, not int, so gint64 deserialization actually
2628           works.  Is there any flag that makes the compiler check this ?
2629           Fixes #308559
2630
2631 2005-06-22  Wim Taymans  <wim@fluendo.com>
2632
2633         * gst/gstbuffer.h:
2634         Added convenience macros for setting buffers in GValue.
2635
2636 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2637
2638         * check/gst/.cvsignore:
2639         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2640           add a test deserializing int64, and comment part out because
2641           it fails, yay !
2642
2643 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2644
2645         * check/Makefile.am:
2646         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
2647         * testsuite/Makefile.am:
2648         * testsuite/caps/Makefile.am:
2649         * testsuite/caps/value_serialize.c:
2650         * testsuite/test_gst_init.c:
2651           move a value_serialize test over
2652
2653 2005-06-20  Wim Taymans  <wim@fluendo.com>
2654
2655         * gst/gstpad.c:
2656         Small doc updates.
2657         
2658         * gst/gstvalue.c: (gst_value_compare_buffer),
2659         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
2660         (gst_value_compare_flags), (gst_value_serialize_flags),
2661         (gst_value_deserialize_flags), (_gst_value_initialize):
2662         Fix serialisation of buffers, they are not boxed types anymore
2663
2664 2005-06-20  Wim Taymans  <wim@fluendo.com>
2665
2666         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2667         Testcase to show error in buffer-on-caps serialisation.
2668
2669 2005-06-20  Andy Wingo  <wingo@pobox.com>
2670
2671         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
2672         will be adding to later.
2673
2674         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
2675         if its socks fill with rocks.
2676         (gst_system_clock_obtain): Set the name on object construction.
2677         Avoid double-checked locking.
2678
2679 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
2680
2681         * gst/gsturi.c: (gst_element_make_from_uri):
2682           Fix potential endless loop.
2683
2684 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2685
2686         * check/Makefile.am:
2687           add gsttag
2688         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
2689         (main):
2690           move over from testsuite dir and clean up
2691         * configure.ac:
2692         * gst/gsttag.c:
2693         * testsuite/Makefile.am:
2694         * testsuite/tags/.cvsignore:
2695         * testsuite/tags/Makefile.am:
2696         * testsuite/tags/merge.c:
2697           remove testsuite/tags
2698
2699 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2700
2701         * docs/gst/gstreamer-sections.txt:
2702         * docs/gst/tmpl/gstenumtypes.sgml:
2703         * win32/gstenumtypes.c:
2704           clean up documentation build a little
2705
2706 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2707
2708         * check/gstcheck.h:
2709           add macros for checking refcounts on objects and caps
2710         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
2711           add some more unit tests
2712         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
2713         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
2714           fix leaked refcounts (I hope :)) so unittest works
2715         * gst/gstpad.h:
2716           whitespace removal
2717
2718 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2719
2720         * configure.ac: back to HEAD
2721
2722 === release 0.9.1 ===
2723
2724 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2725
2726         * NEWS:
2727         * RELEASE:
2728           updated
2729
2730 2005-06-17  Andy Wingo  <wingo@pobox.com>
2731
2732         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
2733         assert; it's always possible that the pad gets deactivated in
2734         between the checks in gstpad.c and the implementation. Rely on
2735         finish_preroll() to return a FLUSHING or similar instead of on the
2736         assert.
2737         
2738         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
2739         clock and post an EOS message if we come out of finish_preroll in
2740         the playing state.
2741
2742 2005-06-16  David Schleef  <ds@schleef.org>
2743
2744         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
2745         (gst_capsfilter_set_property): Allow NULL as possible value
2746         for filter_caps property, indicating GST_CAPS_ANY.
2747
2748 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2749
2750         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
2751           fix debug output
2752         * gst/schedulers/Makefile.am:
2753           use libgst prefix
2754         * gstreamer.spec.in:
2755           fix spec for it
2756
2757 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2758
2759         * gstreamer.spec.in:
2760           clean up
2761
2762 2005-06-08  Andy Wingo  <wingo@pobox.com>
2763
2764         * gst/gstutils.c: RPAD fixes all around.
2765         (gst_element_link_pads): Refcounting fixes.
2766
2767         * tools/gst-inspect.c:
2768         * tools/gst-xmlinspect.c:
2769         * parse/grammar.y:
2770         * gst/base/gsttypefindhelper.c:
2771         * gst/base/gstbasesink.c:
2772         * gst/gstqueue.c: RPAD fixes.
2773
2774         * gst/gstghostpad.h:
2775         * gst/gstghostpad.c: New ghost pad implementation as full proxy
2776         pads. The tricky thing is they provide both source and sink
2777         interfaces, since they proxy the internal pad for the external
2778         pad, and vice versa. Implement with lower-level ProxyPad objects,
2779         with the interior proxy pad as a child of the exterior ghost pad.
2780         Should write a doc on this.
2781         
2782         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
2783         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
2784         gst_object API.
2785         
2786         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
2787         pads are real pads. No ghost pads in this file. Not documenting
2788         the myriad s/RPAD/PAD/ and REALIZE fixes.
2789         (gst_pad_class_init): Add properties for "direction" and
2790         "template". Both are construct-only, so they can't change during
2791         the life of the pad. Fixes properly deriving from GstPad.
2792         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
2793         derived objects, just set properties when creating the objects via
2794         g_object_new.
2795         (gst_pad_get_parent): Implement as a function, return NULL if the
2796         parent is not an element.
2797         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
2798         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
2799         
2800         * gst/gstobject.c (gst_object_class_init): Make name a construct
2801         property. Don't set it in the object init.
2802
2803         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
2804         with UNKNOWN direction.
2805         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
2806         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
2807         (gst_element_remove_pad): Remove ghost-pad special cases.
2808         (gst_element_pads_activate): Remove rpad cruft.
2809
2810         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
2811         catch the pad's-parent-not-an-element case.
2812
2813         * gst/gst.h: Include gstghostpad.h.
2814
2815         * gst/gst.c (init_post): No more real, ghost pads.
2816
2817         * gst/Makefile.am: Add gstghostpad.[ch].
2818
2819         * check/Makefile.am:
2820         * check/gst/gstbin.c:
2821         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
2822         into a bin creates ghost pads, and that the refcounts are right.
2823         Partly moved from gstbin.c.
2824
2825 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2826
2827         * check/gst-libs/.cvsignore:
2828         * check/gst/.cvsignore:
2829         * check/pipelines/.cvsignore:
2830           ignore more
2831         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
2832         (START_TEST), (cleanup_suite), (main):
2833           add some tests related to cleanup after running pipelines
2834
2835 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2836
2837         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
2838           add a testsuite for GstBuffer
2839
2840 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2841
2842         * gst/gstminiobject.h:
2843           add defines for accessing the refcount
2844
2845 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
2846
2847         * Makefile.am: added support for html unit test coverage reports
2848
2849 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
2850
2851         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
2852           Free existing caps if the capsfilter changes. Add a FIXME about
2853           setting those caps on the pads.
2854
2855         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
2856           Before adding a ghost pad to a parent bin, check that there isn't
2857           already one for the element on the bin. Prevents infinite recursion
2858           when using decodebin in parse pipelines. Andy says he'll rewrite the
2859           way this works anyway, so ignore the hack.
2860
2861 2005-06-02  Andy Wingo  <wingo@pobox.com>
2862
2863         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
2864         file size, pass it on to the type find helper.
2865
2866         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
2867         segment_start and segment_end properly according to the seek
2868         method. Segment_end is still a bit flaky because offset can be
2869         negative for CUR and END cases, but it takes -1 as an "unset"
2870         value.
2871
2872 2005-06-02  Wim Taymans  <wim@fluendo.com>
2873
2874         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
2875         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
2876         (gst_basesink_activate):
2877         * gst/base/gstbasesink.h:
2878         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2879         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2880         (gst_pad_query), (gst_pad_start_task):
2881         * gst/gstpad.h:
2882         * gst/gstqueue.c: (gst_queue_bufferalloc),
2883         (gst_queue_handle_sink_event), (gst_queue_chain):
2884         Bufferalloc: return GstFlowReturn to more accuratly report
2885         why allocation failed.
2886
2887 2005-06-02  Wim Taymans  <wim@fluendo.com>
2888
2889         * gst/gstpipeline.c: (gst_pipeline_send_event):
2890         Take snapshot of state without blocking.
2891
2892 2005-06-02  Wim Taymans  <wim@fluendo.com>
2893
2894         * docs/design/part-TODO.txt:
2895         * docs/design/part-caps.txt:
2896         * docs/design/part-clocks.txt:
2897         * docs/design/part-negotiation.txt:
2898         * docs/design/part-preroll.txt:
2899         Small doc updates 
2900
2901 2005-05-30  Wim Taymans  <wim@fluendo.com>
2902
2903         * gst/elements/gstidentity.c: (gst_identity_event),
2904         (gst_identity_transform), (gst_identity_get_property):
2905         Protect last_message property as it is accessed from
2906         multiple threads.
2907
2908 2005-05-30  Wim Taymans  <wim@fluendo.com>
2909
2910         * gst/gstelement.c: (gst_element_init),
2911         (gst_element_pads_activate), (gst_element_change_state):
2912         Slicker pad activation code.
2913
2914 2005-05-30  Wim Taymans  <wim@fluendo.com>
2915
2916         * gst/Makefile.am:
2917         * gst/gstelement.h:
2918         * gst/gstelementfactory.h:
2919         * gst/gsttypes.h:
2920         Move elementfactory methods to separate .h file.
2921
2922 2005-05-30  Wim Taymans  <wim@fluendo.com>
2923
2924         * docs/design/part-overview.txt:
2925         * gst/gstsystemclock.h:
2926         Small typo fixes, doc updates.
2927
2928 2005-05-30  Wim Taymans  <wim@fluendo.com>
2929
2930         * gst/gst.c: (gst_init_get_popt_table), (init_post),
2931         (init_popt_callback):
2932         Remove cpu-opt flag.
2933
2934 2005-05-30  Wim Taymans  <wim@fluendo.com>
2935
2936         * gst/gstbuffer.c: (gst_subbuffer_finalize),
2937         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
2938         * gst/gstbuffer.h:
2939         Avoid typechecking in places where not needed.
2940         Added accessor for malloc_data.
2941
2942 2005-05-30  Wim Taymans  <wim@fluendo.com>
2943
2944         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
2945         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
2946         (gst_pad_configure_sink), (gst_pad_configure_src),
2947         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
2948         (gst_pad_start_task):
2949         Propagate errors from _set_caps() in configure_src/sink
2950         functions instead of returning TRUE.
2951         FLUSH events can travel up and downstream
2952
2953
2954 2005-05-30  Wim Taymans  <wim@fluendo.com>
2955
2956         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2957         (gst_basesink_activate):
2958         Handle EOS in preroll.
2959
2960 2005-05-30  Wim Taymans  <wim@fluendo.com>
2961
2962         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2963         (gst_queue_loop), (gst_queue_handle_src_event):
2964         Remove old pieces of code
2965         Flushing the queue in an upstream event is a very bad idea.
2966
2967 2005-05-26  Andy Wingo  <wingo@pobox.com>
2968
2969         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
2970         gst_value_set_mini_object so as to add a ref on the object (which
2971         will be removed when the value is unset).
2972
2973         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
2974         arg type in ::handoff.
2975
2976         * gst/gstelement.c (gst_element_change_state): Also deactivate
2977         pads in READY->NULL, just in case the element didn't make it to
2978         PAUSED. Wingo tested, Wim approved.
2979
2980 2005-05-26  Wim Taymans  <wim@fluendo.com>
2981
2982         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2983         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2984         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
2985         A flushing pad cannot be used to alloc_buffer from.
2986
2987 2005-05-26  Wim Taymans  <wim@fluendo.com>
2988
2989         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
2990         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
2991         (gst_bus_source_dispatch), (gst_bus_source_finalize),
2992         (gst_bus_create_watch), (gst_bus_add_watch_full):
2993         * gst/gstbus.h:
2994         Implement a real GSource and use g_main_context_wakeup() to
2995         signal new messages instead of the socketpair.
2996
2997 2005-05-25  Wim Taymans  <wim@fluendo.com>
2998
2999         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
3000         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
3001         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3002         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
3003         (gst_pad_send_event), (gst_pad_start_task):
3004         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
3005         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
3006         (gst_queue_sink_activate), (gst_queue_src_activate),
3007         (gst_queue_change_state):
3008         * gst/gstqueue.h:
3009         Fix state changes for non sinks. We now change sinks, then elements
3010         with unconnected srcpads, then the rest.
3011         More efficient queue unlocking in flush and state changes.
3012         Set the pad activate mode even if it does not have an activate
3013         function.
3014
3015 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3016
3017         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
3018           Don't go in pull mode for non-seekable sources.
3019         * gst/elements/gsttypefindelement.h:
3020         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3021         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
3022         (free_entry), (stop_typefinding),
3023         (gst_type_find_element_handle_event), (find_peek),
3024         (gst_type_find_element_chain), (do_pull_typefind),
3025         (gst_type_find_element_change_state):
3026           Allow typefinding (w/o seeking) in push-mode, simplified version
3027           of what was in 0.8.
3028         * gst/gstutils.c: (gst_buffer_join):
3029         * gst/gstutils.h:
3030           gst_buffer_join() from 0.8.
3031
3032 2005-05-25  Wim Taymans  <wim@fluendo.com>
3033
3034         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3035         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
3036         (gst_pad_send_event), (gst_pad_start_task):
3037         Disable attempt at mode switching until it is figured out.
3038
3039 2005-05-25  Wim Taymans  <wim@fluendo.com>
3040
3041         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
3042         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
3043         (gst_basesink_finish_preroll), (gst_basesink_chain),
3044         (gst_basesink_loop), (gst_basesink_activate),
3045         (gst_basesink_change_state):
3046         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
3047         (gst_basesrc_get_range), (gst_basesrc_loop),
3048         (gst_basesrc_activate):
3049         * gst/elements/gsttee.c: (gst_tee_sink_activate):
3050         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
3051         (gst_real_pad_init), (gst_real_pad_set_property),
3052         (gst_real_pad_get_property), (gst_pad_set_active),
3053         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
3054         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
3055         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
3056         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
3057         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3058         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
3059         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
3060         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
3061         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
3062         (gst_pad_stop_task):
3063         * gst/gstpad.h:
3064         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
3065         (gst_queue_loop), (gst_queue_src_activate):
3066         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
3067         (gst_task_get_state):
3068         * gst/gsttask.h:
3069         * gst/schedulers/threadscheduler.c:
3070         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
3071         Implement gst_pad_pause/start/stop_task(), take STREAM lock
3072         in task function.
3073         Remove ACTIVE pad flag, use FLUSHING everywhere
3074         Added _pad_chain(), _pad_get_range() to call chain/getrange 
3075         functions.
3076         Add locks around IS_FLUSHING when reading.
3077         Take STREAM lock in chain(), get_range() functions so plugins
3078         don't need to take it anymore.
3079         
3080
3081
3082 2005-05-25  Wim Taymans  <wim@fluendo.com>
3083
3084         * tools/gst-launch.c: (event_loop):
3085         Unref message after using its contents instead of
3086         before.
3087
3088 2005-05-24  Wim Taymans  <wim@fluendo.com>
3089
3090         * docs/design/draft-ghostpads.txt:
3091         * docs/design/draft-push-pull.txt:
3092         * docs/design/draft-query.txt:
3093         * docs/design/part-overview.txt:
3094         Docs updates, added general overview doc.
3095
3096 2005-05-21  David Schleef  <ds@schleef.org>
3097
3098         * docs/gst/tmpl/old/GstBin.sgml:
3099         * docs/gst/tmpl/old/GstBuffer.sgml:
3100         * docs/gst/tmpl/old/GstCaps.sgml:
3101         * docs/gst/tmpl/old/GstClock.sgml:
3102         * docs/gst/tmpl/old/GstCompat.sgml:
3103         * docs/gst/tmpl/old/GstData.sgml:
3104         * docs/gst/tmpl/old/GstElement.sgml:
3105         * docs/gst/tmpl/old/GstEvent.sgml:
3106         * docs/gst/tmpl/old/GstIndex.sgml:
3107         * docs/gst/tmpl/old/GstStructure.sgml:
3108         * docs/gst/tmpl/old/GstTag.sgml:
3109         * docs/gst/tmpl/old/cothreads.sgml:
3110         * docs/gst/tmpl/old/cothreads_compat.sgml:
3111         * docs/gst/tmpl/old/gettext.sgml:
3112         * docs/gst/tmpl/old/gobject2gtk.sgml:
3113         * docs/gst/tmpl/old/grammar.tab.sgml:
3114         * docs/gst/tmpl/old/gst-i18n-app.sgml:
3115         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
3116         * docs/gst/tmpl/old/gst_private.sgml:
3117         * docs/gst/tmpl/old/gstaggregator.sgml:
3118         * docs/gst/tmpl/old/gstarch.sgml:
3119         * docs/gst/tmpl/old/gstatomic_impl.sgml:
3120         * docs/gst/tmpl/old/gstbufferstore.sgml:
3121         * docs/gst/tmpl/old/gstdata_private.sgml:
3122         * docs/gst/tmpl/old/gstdisksink.sgml:
3123         * docs/gst/tmpl/old/gstdisksrc.sgml:
3124         * docs/gst/tmpl/old/gstelementfactory.sgml:
3125         * docs/gst/tmpl/old/gstextratypes.sgml:
3126         * docs/gst/tmpl/old/gstfakesink.sgml:
3127         * docs/gst/tmpl/old/gstfakesrc.sgml:
3128         * docs/gst/tmpl/old/gstfdsink.sgml:
3129         * docs/gst/tmpl/old/gstfdsrc.sgml:
3130         * docs/gst/tmpl/old/gstfilesink.sgml:
3131         * docs/gst/tmpl/old/gstfilesrc.sgml:
3132         * docs/gst/tmpl/old/gsthttpsrc.sgml:
3133         * docs/gst/tmpl/old/gstidentity.sgml:
3134         * docs/gst/tmpl/old/gstindexfactory.sgml:
3135         * docs/gst/tmpl/old/gstmarshal.sgml:
3136         * docs/gst/tmpl/old/gstmd5sink.sgml:
3137         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
3138         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
3139         * docs/gst/tmpl/old/gstpadtemplate.sgml:
3140         * docs/gst/tmpl/old/gstpipefilter.sgml:
3141         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
3142         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
3143         * docs/gst/tmpl/old/gstshaper.sgml:
3144         * docs/gst/tmpl/old/gstspider.sgml:
3145         * docs/gst/tmpl/old/gstspideridentity.sgml:
3146         * docs/gst/tmpl/old/gststatistics.sgml:
3147         * docs/gst/tmpl/old/gsttee.sgml:
3148         * docs/gst/tmpl/old/gsttimecache.sgml:
3149         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
3150         * docs/gst/tmpl/old/gstxmlregistry.sgml:
3151         * docs/gst/tmpl/old/gthread-cothreads.sgml:
3152         * docs/gst/tmpl/old/types.sgml:
3153           I didn't intend to add these or check them in.
3154
3155 2005-05-19  David Schleef  <ds@schleef.org>
3156
3157         * configure.ac: Use -no-common everywhere.  In a sane world, it
3158           would be the default in libtool, because without it, you can't
3159           build DLLs on Windows.
3160         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
3161         * docs/gst/gstreamer-sections.txt:
3162         * docs/gst/tmpl/gstcpu.sgml:
3163         * docs/gst/tmpl/gstdata.sgml:
3164         * docs/gst/tmpl/gstthread.sgml:
3165
3166 2005-05-19  David Schleef  <ds@schleef.org>
3167
3168         * gst/gstminiobject.c: (gst_value_set_mini_object),
3169         (gst_value_take_mini_object), (gst_value_get_mini_object):
3170         * gst/gstminiobject.h: Add GValue set/get functions.
3171
3172 2005-05-19  Wim Taymans  <wim@fluendo.com>
3173
3174         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
3175         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
3176         (gst_subbuffer_init), (gst_buffer_is_span_fast):
3177         * gst/gstbuffer.h:
3178         * gst/gstbus.c: (gst_bus_post):
3179         * gst/gstelement.c: (gst_element_get_random_pad):
3180         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
3181         Make subbufer unref the parent in finalize.
3182         some more debugging info.
3183
3184
3185 2005-05-19  Wim Taymans  <wim@fluendo.com>
3186
3187         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3188         (gst_basesink_init), (gst_basesink_finalize),
3189         (gst_basesink_activate), (gst_basesink_change_state):
3190         Don't free preroll queue too early.
3191
3192 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3193
3194         * gst/Makefile.am:
3195         * gst/ROADMAP:
3196           Hi, I'm outdated. Please shoot me.
3197
3198 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3199
3200         * gst/gstpipeline.c: (gst_pipeline_send_event):
3201           Do not access variables after they have been deleted.
3202
3203 2005-05-19  Wim Taymans  <wim@fluendo.com>
3204
3205         * tools/gst-inspect.c: (print_plugin_features):
3206         A plugin feature does unfortunatly not use the
3207         object name yet...
3208
3209 2005-05-18  Wim Taymans  <wim@fluendo.com>
3210
3211         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
3212         Port _span() functions to new subbuffers.
3213
3214 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3215
3216         * gst/gstbin.c: (gst_bin_add_func):
3217           Fix clock settery in bins when adding kids after the clock has
3218           been selected.
3219
3220 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3221
3222         * gst/elements/gstidentity.c: (gst_identity_class_init):
3223           Workaround until signals support GstMiniObject.
3224
3225 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
3226
3227         * gst/gstbuffer.c:
3228         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
3229
3230 2005-05-18  Wim Taymans  <wim@fluendo.com>
3231
3232         * gst/base/Makefile.am:
3233         * gst/base/gstadapter.c: (gst_adapter_base_init),
3234         (gst_adapter_class_init), (gst_adapter_init),
3235         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
3236         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
3237         (gst_adapter_flush), (gst_adapter_available),
3238         (gst_adapter_available_fast):
3239         * gst/base/gstadapter.h:
3240         Ported and added adapter to the base classes.
3241
3242 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3243
3244         * gst/gst.c:
3245         * gst/gstmessage.c:
3246           Make sure the class is reffed/unreffed once before threads can be
3247           used.  Fixes #304551.
3248
3249 2005-05-17  Wim Taymans  <wim@fluendo.com>
3250
3251         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
3252         (gst_basesink_chain_unlocked), (gst_basesink_activate):
3253         * gst/gstminiobject.c: (gst_mini_object_get_type),
3254         (gst_mini_object_free):
3255         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
3256         (gst_pad_push), (gst_pad_push_event):
3257         * gst/gstqueue.c: (gst_queue_change_state):
3258         Don't queue buffers in basesink when we are flushing.
3259         Unref buffer when flushing in basesink.
3260         Flush queue when going to READY
3261         Unref buffer when _push() returns an error.
3262         Don't free MiniObject instance when refcount is incremented
3263         in _finalize() so that we can recover objects.
3264
3265 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
3266
3267         * docs/manual/advanced-schedulers.xml:
3268         * docs/manual/appendix-checklist.xml:
3269         * docs/pwg/advanced-clock.xml:
3270         * docs/pwg/advanced-interfaces.xml:
3271         * docs/pwg/advanced-request.xml:
3272         * docs/pwg/advanced-types.xml:
3273         * docs/pwg/intro-preface.xml:
3274         * examples/plugins/example.c: (gst_example_get_type),
3275         (gst_example_class_init), (gst_example_chain),
3276         (gst_example_set_property), (gst_example_get_property),
3277         (gst_example_change_state), (plugin_init):
3278         * examples/plugins/example.h:
3279           small doc fixes
3280
3281 2005-05-17  Wim Taymans  <wim@fluendo.com>
3282
3283         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
3284         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
3285         * gst/gstqueue.c: (gst_queue_change_state):
3286         Clear queue when going to READY.
3287         Remove IN_SETCAPS flag too.
3288
3289 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
3290
3291         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
3292           Remove implicit cast from gboolean to GstElementStateReturn;
3293           make sure we still return failure in paused => ready case if
3294           the parent class fails to change state and our own stop 
3295           vfunc succeeds.
3296
3297 2005-05-17  Wim Taymans  <wim@fluendo.com>
3298
3299         * tools/gst-launch.c: (event_loop):
3300         Message was unreffed too soon.
3301
3302 2005-05-16  Andy Wingo  <wingo@pobox.com>
3303
3304         * gst/gstbin.c (sink_iterator_filter): Err... um...
3305
3306         * check/gst/gstbin.c (test_ghost_pads): New test for the
3307         ghosting-if-elements-not-in-same-bin behavior.
3308
3309 2005-05-16  David Schleef  <ds@schleef.org>
3310
3311         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
3312         accessing refcount directly.
3313
3314 2005-05-15  David Schleef  <ds@schleef.org>
3315
3316         * check/Makefile.am: remove GstData checks
3317         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
3318         * gst/Makefile.am: add miniobject, remove data
3319         * gst/gst.h: add miniobject, remove data
3320         * gst/gstdata.c: remove
3321         * gst/gstdata.h: remove
3322         * gst/gstdata_private.h: remove
3323         * gst/gsttypes.h: remove GstEvent and GstMessage
3324         * gst/gstelement.c: (gst_element_post_message): fix for API changes
3325         * gst/gstmarshal.list: change BOXED -> OBJECT
3326
3327         Implement GstMiniObject.
3328         * gst/gstminiobject.c:
3329         * gst/gstminiobject.h:
3330
3331         Modify to be subclasses of GstMiniObject.
3332         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
3333         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
3334         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
3335         (gst_subbuffer_get_type), (gst_subbuffer_init),
3336         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
3337         (gst_buffer_span):
3338         * gst/gstbuffer.h:
3339         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
3340         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
3341         (_gst_event_copy), (gst_event_new):
3342         * gst/gstevent.h:
3343         * gst/gstmessage.c: (_gst_message_initialize),
3344         (gst_message_get_type), (gst_message_class_init),
3345         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
3346         (gst_message_new), (gst_message_new_error),
3347         (gst_message_new_warning), (gst_message_new_tag),
3348         (gst_message_new_state_changed), (gst_message_new_application):
3349         * gst/gstmessage.h:
3350         * gst/gstprobe.c: (gst_probe_perform),
3351         (gst_probe_dispatcher_dispatch):
3352         * gst/gstprobe.h:
3353         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
3354         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
3355         (_gst_query_copy), (gst_query_new):
3356
3357         Update elements for GstData -> GstMiniObject changes
3358         * gst/gstquery.h:
3359         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
3360         (gst_queue_chain), (gst_queue_loop):
3361         * gst/elements/gstbufferstore.c:
3362         (gst_buffer_store_add_buffer_func),
3363         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
3364         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3365         (gst_fakesink_render):
3366         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
3367         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
3368         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
3369         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
3370         (gst_filesrc_create_read):
3371         * gst/elements/gstidentity.c: (gst_identity_class_init):
3372         * gst/elements/gsttypefindelement.c:
3373         (gst_type_find_element_src_event), (free_entry_buffers),
3374         (gst_type_find_element_handle_event):
3375         * libs/gst/dataprotocol/dataprotocol.c:
3376         (gst_dp_header_from_buffer):
3377         * libs/gst/dataprotocol/dataprotocol.h:
3378         * libs/gst/dataprotocol/dp-private.h:
3379
3380 2005-05-15  David Schleef  <ds@schleef.org>
3381
3382         * gst/elements/gstelements.c: Don't include headers that were
3383         just removed.
3384
3385 2005-05-15  David Schleef  <ds@schleef.org>
3386
3387         * gst/elements/Makefile.am: Remove some elements that don't
3388         need to be in the core (or even exist at all).
3389         * gst/elements/gstaggregator.c:
3390         * gst/elements/gstaggregator.h:
3391         * gst/elements/gstmd5sink.c:
3392         * gst/elements/gstmd5sink.h:
3393         * gst/elements/gstmultifilesrc.c:
3394         * gst/elements/gstmultifilesrc.h:
3395         * gst/elements/gstpipefilter.c:
3396         * gst/elements/gstpipefilter.h:
3397         * gst/elements/gstshaper.c:
3398         * gst/elements/gstshaper.h:
3399         * gst/elements/gststatistics.c:
3400         * gst/elements/gststatistics.h:
3401         * po/POTFILES.in: Remove above files.
3402
3403 2005-05-14  Andy Wingo  <wingo@pobox.com>
3404
3405         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
3406         so as to get the refs right.
3407         (sink_iterator_filter): New function, wraps bin_element_is_sink,
3408         unreffing objects that don't pass the filter.
3409
3410         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
3411         gst_element_set_bus.
3412         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
3413         normal cases, this will destroy the bus.
3414
3415         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
3416         object.
3417
3418         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
3419         has no sinks.
3420
3421 2005-05-13  Andy Wingo  <wingo@pobox.com>
3422
3423         * gst/gstutils.c (gst_element_link_pads): Instead of calling
3424         gst_pad_link, call pad_link_maybe_ghosting,
3425         (pad_link_maybe_ghosting): Links pads, making sure that the
3426         elements being linked are in the same bin.
3427         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
3428         Helpers for pad_link_maybe_ghosting.
3429
3430 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3431
3432         * configure.ac:
3433           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
3434
3435 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3436
3437         * docs/design/part-element-source.txt:
3438           Mention GstPushSrc
3439
3440 2005-05-12  Wim Taymans  <wim@fluendo.com>
3441
3442         * gst/base/gstbasesink.c: (gst_basesink_init),
3443         (gst_basesink_activate):
3444         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
3445         (gst_basesrc_is_seekable):
3446         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
3447         (bin_element_is_sink), (gst_bin_change_state):
3448         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3449         * gst/gstelement.h:
3450         Identify sinks by their flag to avoid overly complicated
3451         checks (fow now).
3452         Do state changes even for elements not reachable from the
3453         sinks.
3454         BaseSink is a sink now :)
3455         Some more debugging info in the basesrc.
3456
3457
3458 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3459
3460         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
3461           Implement _query on a bin, similar to _send_event.
3462
3463 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
3464
3465         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
3466           Discont event offset format should be GST_FORMAT_BYTES,
3467           not GST_FORMAT_TIME.
3468
3469 2005-05-12  Wim Taymans  <wim@fluendo.com>
3470
3471         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
3472         Same fix as Ronald's but without the signal. 
3473
3474 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3475
3476         * gst/gstutils.c: (gst_element_query_position):
3477           No, an element is not a pad.
3478
3479 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3480
3481         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
3482         (gst_bin_get_state):
3483           If a child is removed from a bin while we remove the child from
3484           the bin and while we're retrieving its state, signal this to the
3485           get_state function so we abort the wait (instead of waiting for
3486           a timeout) and can immediately re-iterate over all other elements.
3487
3488 2005-05-12  Wim Taymans  <wim@fluendo.com>
3489
3490         * gst/base/Makefile.am:
3491         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
3492         (gst_basesrc_start):
3493         * gst/base/gstbasesrc.h:
3494         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
3495         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
3496         (gst_pushsrc_init), (gst_pushsrc_create):
3497         * gst/base/gstpushsrc.h:
3498         Added is_seekable to BaseSrc
3499         Added simple PushSrc.
3500
3501 2005-05-11  Wim Taymans  <wim@fluendo.com>
3502
3503         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3504         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3505         (gst_element_link_pads), (gst_element_query_position),
3506         (gst_element_query_convert), (intersect_caps_func),
3507         (gst_pad_query_position), (gst_pad_query_convert):
3508         Fix refcounting in utils function.
3509         No point in trying to activate a pad when it's added, it could
3510         be added from the state change function and then we deadlock, the
3511         element has to decide what to do.
3512
3513 2005-05-10  Andy Wingo  <wingo@pobox.com>
3514
3515         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
3516         *all* the arguments.
3517
3518         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
3519         stream lock if it's a FLUSH_DONE; normal flushes don't get the
3520         lock (according to the docs -- if this is wrong change the docs).
3521
3522         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
3523         flush messages in the NULL state.
3524
3525         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
3526         message immediately and return.
3527         (gst_bus_set_flushing): New function. If a bus is flushing, it
3528         flushes out any queued messages and immediately unrefs new
3529         messages. This is so when an element goes to NULL, all of the
3530         unhandled messages coming from it can be freed, and their
3531         references to the element dropped. In other words: message source
3532         ref considered harmful :P
3533
3534         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
3535         we're finished with it.
3536
3537         * gst/gstmessage.c (gst_message_new_state_changed): 
3538
3539 2005-05-10  Wim Taymans  <wim@fluendo.com>
3540
3541         * gst/gstvalue.c: (gst_value_compare_flags),
3542         (gst_value_serialize_flags), (gst_value_deserialize_flags),
3543         (_gst_value_initialize):
3544         Added flags serialize/deserialize/compare code.
3545
3546 2005-05-09  Andy Wingo  <wingo@pobox.com>
3547
3548         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
3549         Intersect the peer's caps with our caps.
3550
3551 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3552
3553         * gst/base/gsttypefindhelper.c: (helper_find_peek):
3554         * gst/elements/gsttypefindelement.c: (find_peek):
3555           Handle negative offsets better. Fixes decodebin.
3556
3557 2005-05-09  Wim Taymans  <wim@fluendo.com>
3558
3559         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
3560         (gst_base_transform_event):
3561         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
3562         Implement accept_caps.
3563         Fix silly lock/unlock mismatch in base class.
3564
3565 2005-05-09  Wim Taymans  <wim@fluendo.com>
3566
3567         * docs/design/draft-push-pull.txt:
3568         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
3569         * gst/elements/gstfilesink.c: (gst_filesink_init),
3570         (gst_filesink_query):
3571         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3572         (gst_type_find_handle_src_query), (find_element_get_length):
3573         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
3574         * gst/gstelement.h:
3575         * gst/gstmessage.c:
3576         * gst/gstmessage.h:
3577         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
3578         (gst_real_pad_get_caps_unlocked),
3579         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
3580         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3581         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
3582         (gst_real_pad_dispose), (gst_real_pad_finalize),
3583         (gst_pad_load_and_link), (gst_pad_save_thyself),
3584         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
3585         (gst_pad_check_pull_range), (gst_pad_pull_range),
3586         (gst_pad_template_get_type), (gst_pad_template_class_init),
3587         (gst_pad_template_init), (gst_pad_template_dispose),
3588         (name_is_valid), (gst_static_pad_template_get),
3589         (gst_pad_template_new), (gst_static_pad_template_get_caps),
3590         (gst_pad_template_get_caps), (gst_pad_set_element_private),
3591         (gst_pad_get_element_private), (gst_pad_start_task),
3592         (gst_pad_pause_task), (gst_pad_stop_task),
3593         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
3594         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
3595         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
3596         (gst_ghost_pad_new):
3597         * gst/gstpad.h:
3598         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
3599         (gst_query_new_position), (gst_query_set_position),
3600         (gst_query_parse_position), (gst_query_new_convert),
3601         (gst_query_set_convert), (gst_query_parse_convert):
3602         * gst/gstquery.h:
3603         * gst/gstqueryutils.c:
3604         * gst/gstqueryutils.h:
3605         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3606         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3607         (gst_queue_handle_src_query):
3608         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3609         (gst_element_query_position), (gst_element_query_convert),
3610         (intersect_caps_func), (gst_pad_query_position),
3611         (gst_pad_query_convert):
3612         * gst/gstutils.h:
3613         * tools/gst-inspect.c: (print_pad_info):
3614         * tools/gst-xmlinspect.c: (print_element_info):
3615         Remove old query functions. Ported old code.
3616         Added position/convert helper functions to gstutils.
3617         Reordered gstpad.c code, grouping relevant things.
3618         Remove gst_message_new(), always need to speficy a specific
3619         message.
3620
3621
3622 2005-05-09  Andy Wingo  <wingo@pobox.com>
3623
3624         * gst/gstiterator.h: Add some includes.
3625
3626         * gst/gstqueryutils.h: Include more headers.
3627
3628         * gst/gstpad.h:
3629         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
3630         some uses of gst_pad_query.
3631
3632         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
3633         NULL out parameters.
3634         (gst_query_new_position): New proc, allocates a new position
3635         query.
3636
3637         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
3638         gstqueryutils.c to the build.
3639
3640         * gst/gststructure.c (gst_structure_set_valist): Implement with
3641         the generic G_VALUE_COLLECT.
3642         
3643 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
3644
3645         * gst/Makefile.am: (gst_headers):
3646         Added gstqueryutils.h to the list of headers to install, that was
3647         a 'nachty' move wingo :)
3648
3649 2005-05-06  Andy Wingo  <wingo@pobox.com>
3650
3651         * gst/gstquery.h
3652         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
3653         GstData, init a memchunk.
3654         (standard_definitions): Add a few query types, deprecate a few.
3655         (gst_query_get_type): New proc.
3656         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
3657         implementation.
3658         (gst_query_new_application, gst_query_get_structure): New public
3659         procs.
3660
3661         * docs/design/draft-query.txt: Removed LINKS from the query types,
3662         because all the rest can be dispatched to other pads -- seemed
3663         ugly to have a query that couldn't be dispatched. internal_links
3664         is fine as a pad method.
3665
3666         * gst/gstpad.h: Add query2 as a pad method, add the new functions
3667         in gstpad.c, but maintain binary compatibility for the moment.
3668         Will fix before 0.9 is out.
3669
3670         * gst/gstqueryutils.c: 
3671         * gst/gstqueryutils.h: New files, implement 3 methods for each
3672         query type: parse_query, parse_response, and set. Probably need an
3673         allocator as well.
3674
3675         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
3676
3677         * gst/elements/gstfilesink.c (gst_filesink_query2):
3678         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
3679         query_types, and formats methods.
3680
3681         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
3682         (gst_pad_set_query2_function): New functions.
3683         (gst_real_pad_init): Set query2_default as the default query2
3684         function. Basically just dispatches to internally linked pads.
3685
3686         Needs review!
3687         
3688         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
3689         without using the atomic operations. Only one thread can possibly
3690         be accessing the data at this point. Changed so as to avoid
3691         gst_atomic operations.
3692
3693 2005-05-06  Wim Taymans  <wim@fluendo.com>
3694
3695         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
3696         Also set caps if we use the fallback buffer alloc.
3697
3698 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
3699
3700         * docs/gst/Makefile.am:
3701         * docs/gst/gstreamer-docs.sgml:
3702         * docs/gst/gstreamer-sections.txt:
3703         * docs/gst/tmpl/gstatomic.sgml:
3704         * docs/gst/tmpl/gstmemchunk.sgml:
3705         * testsuite/elements/struct_i386.h:
3706         * win32/GStreamer.vcproj:
3707         * win32/Makefile:
3708           Purge GstAtomic stuff from docs and win32 makefiles as well
3709
3710 2005-05-06  Wim Taymans  <wim@fluendo.com>
3711
3712         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
3713         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
3714         * gst/gstpad.c: (gst_pad_peer_get_caps):
3715         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3716         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3717         (gst_queue_src_activate), (gst_queue_change_state):
3718         * gst/gstqueue.h:
3719         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3720         (intersect_caps_func):
3721         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
3722         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
3723         Some fixes for the peer_get_caps() change.
3724
3725 2005-05-06  Wim Taymans  <wim@fluendo.com>
3726
3727         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
3728         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
3729         (gst_basesink_activate):
3730         Actually do something with error codes returned from the push
3731         functions.
3732
3733 2005-05-06  Wim Taymans  <wim@fluendo.com>
3734
3735         * docs/design/part-element-sink.txt:
3736         * docs/design/part-element-source.txt:
3737         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3738         (gst_basesink_event), (gst_basesink_activate):
3739         * gst/base/gstbasesink.h:
3740         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
3741         (gst_basesrc_activate):
3742         * gst/base/gstbasesrc.h:
3743         * gst/gstelement.c: (gst_element_pads_activate):
3744         Some more documentation.
3745         Fixed scheduling decision in _pads_activate().
3746
3747 2005-05-05  Andy Wingo  <wingo@pobox.com>
3748
3749         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
3750         the test suite.
3751
3752 2005-05-05  Wim Taymans  <wim@fluendo.com>
3753
3754         * gst/base/Makefile.am:
3755         * gst/base/gstbasesink.h:
3756         * gst/base/gstbasesrc.c: (gst_basesrc_init),
3757         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
3758         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
3759         (gst_collectpads_class_init), (gst_collectpads_init),
3760         (gst_collectpads_finalize), (gst_collectpads_new),
3761         (gst_collectpads_set_function), (gst_collectpads_add_pad),
3762         (find_pad), (gst_collectpads_remove_pad),
3763         (gst_collectpads_is_active), (gst_collectpads_collect),
3764         (gst_collectpads_collect_range), (gst_collectpads_start),
3765         (gst_collectpads_stop), (gst_collectpads_peek),
3766         (gst_collectpads_pop), (gst_collectpads_available),
3767         (gst_collectpads_read), (gst_collectpads_flush),
3768         (gst_collectpads_chain):
3769         * gst/base/gstcollectpads.h:
3770         * gst/elements/Makefile.am:
3771         * gst/elements/gstelements.c:
3772         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3773         (gst_fakesink_get_times), (gst_fakesink_event),
3774         (gst_fakesink_preroll), (gst_fakesink_render):
3775         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
3776         (gst_filesink_init), (gst_filesink_set_location),
3777         (gst_filesink_open_file), (gst_filesink_close_file),
3778         (gst_filesink_pad_query), (gst_filesink_event),
3779         (gst_filesink_render), (gst_filesink_change_state):
3780         * gst/elements/gstfilesink.h:
3781         Added object to help in making collect pad based elements.
3782         Ported filesink.
3783         Make event function in sink baseclass return gboolean.
3784
3785 2005-05-05  Wim Taymans  <wim@fluendo.com>
3786
3787         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
3788         (gst_bin_get_by_name):
3789         * gst/gstbuffer.h:
3790         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
3791         (gst_clock_finalize):
3792         * gst/gstdata.c: (gst_data_replace):
3793         * gst/gstdata.h:
3794         * gst/gstelement.c: (gst_element_request_pad),
3795         (gst_element_pads_activate):
3796         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
3797         (gst_object_unref):
3798         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3799         (gst_pad_set_checkgetrange_function),
3800         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
3801         (gst_pad_check_pull_range), (gst_pad_pull_range),
3802         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3803         (gst_pad_pause_task), (gst_pad_stop_task):
3804         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3805         (gst_element_request_pad), (gst_pad_proxy_getcaps):
3806         Fix name lookup in GstBin.
3807         Added _data_replace() function and _buffer_replace()
3808         Use finalize method to clean up clock.
3809         Fix refcounting on request pads.
3810         Fix pad schedule mode error.
3811         Some more object refcounting debug info,
3812
3813
3814 2005-05-04  Andy Wingo <wingo@pobox.com>
3815
3816         * check/Makefile.am:
3817         * docs/gst/tmpl/gstatomic.sgml:
3818         * docs/gst/tmpl/gstplugin.sgml:
3819         * gst/base/gstbasesink.c: (gst_basesink_activate):
3820         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
3821         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
3822         (gst_basesrc_query), (gst_basesrc_set_property),
3823         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
3824         (gst_basesrc_activate):
3825         * gst/base/gstbasesrc.h:
3826         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
3827         (gst_base_transform_src_activate):
3828         * gst/elements/gstelements.c:
3829         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3830         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
3831         * gst/elements/gsttee.c: (gst_tee_sink_activate):
3832         * gst/elements/gsttypefindelement.c: (find_element_get_length),
3833         (gst_type_find_element_checkgetrange),
3834         (gst_type_find_element_activate):
3835         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
3836         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
3837         (gst_caps_load_thyself):
3838         * gst/gstelement.c: (gst_element_pads_activate),
3839         (gst_element_save_thyself), (gst_element_restore_thyself):
3840         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
3841         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
3842         * gst/gstpad.h:
3843         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
3844         (gst_xml_parse_file), (gst_xml_parse_memory),
3845         (gst_xml_get_element), (gst_xml_make_element):
3846         * gst/indexers/gstfileindex.c: (gst_file_index_load),
3847         (_file_index_id_save_xml), (gst_file_index_commit):
3848         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
3849         (read_enum), (load_pad_template), (load_feature), (load_plugin),
3850         (load_paths):
3851         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
3852         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
3853         * tools/gst-complete.c: (main):
3854         * tools/gst-compprep.c: (main):
3855         * tools/gst-inspect.c: (print_element_properties_info):
3856         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
3857         * tools/gst-xmlinspect.c: (print_element_properties):
3858         GCC 4 fixen.
3859         
3860 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
3861
3862         * gst/gstplugin.c: (gst_plugin_check_module),
3863         (gst_plugin_check_file), (gst_plugin_load_file):
3864             apply patch from #172526 to make register work on MacOSX
3865
3866 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3867
3868         * docs/gst/tmpl/gstconfig.sgml:
3869         * gst/gstconfig.h.in:
3870           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
3871         * testsuite/debug/printf_extension.c: (main):
3872           Do not use GST_PTR_FORMAT on pointers to types with
3873           sizeof < sizeof(gpointer).  Fixes test on 64-bit
3874         * testsuite/elements/property.h:
3875           use correct printf format
3876
3877 2005-05-02  Wim Taymans  <wim@fluendo.com>
3878
3879         * docs/design/draft-push-pull.txt:
3880         * docs/design/draft-query.txt:
3881         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
3882         (gst_basesrc_start):
3883         Added draft for new query API.
3884         Added draft for better selecting scheduling methods.
3885         Make basesrc ignore length if the subclass does not support
3886         it.
3887
3888 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3889
3890         * gst/Makefile.am:
3891           possible fixes for automake-1.5 - _LIBADD is reserved
3892
3893 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3894
3895         * docs/faq/Makefile.am:
3896         * docs/manual/Makefile.am:
3897         * docs/manuals.mak:
3898         * docs/pwg/Makefile.am:
3899         * gst/Makefile.am:
3900           possible fixes for automake-1.5
3901
3902 2005-04-28  Wim Taymans  <wim@fluendo.com>
3903
3904         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3905         (gst_basesink_pad_getcaps), (gst_basesink_init),
3906         (gst_basesink_do_sync):
3907         * gst/gstclock.c: (gst_clock_entry_new):
3908         * gst/gstevent.c: (gst_event_discont_get_value):
3909         * gst/gstpipeline.c: (pipeline_bus_handler),
3910         (gst_pipeline_change_state):
3911         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
3912         Better debugging of clocking info.
3913         Allow NULL values when getting discont values.
3914
3915 2005-04-27  Wim Taymans  <wim@fluendo.com>
3916
3917         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
3918         * check/gst/gstpad.c: (gst_pad_suite):
3919         Increase timeout for checks.
3920
3921 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3922
3923         * check/Makefile.am:
3924           fix the broken rule for cleanup.  Apparently this rule is
3925           only needed on FC2, so maybe this warrants further autotool
3926           inspection.
3927
3928 2005-04-26  Wim Taymans  <wim@fluendo.com>
3929
3930         * gst/gsttrashstack.h:
3931         Ooohh. a nasty one! After having a failed pop() from the stack,
3932         it's possible that the stack is empty. In that case, don't
3933         follow the NULL pointer.
3934
3935 2005-04-25  Wim Taymans  <wim@fluendo.com>
3936
3937         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3938         (gst_pad_set_checkgetrange_function),
3939         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
3940         (gst_pad_check_pull_range), (gst_pad_pull_range),
3941         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3942         (gst_pad_pause_task), (gst_pad_stop_task):
3943         * gst/gstplugin.c: (gst_plugin_load):
3944         * gst/gstplugin.h:
3945         Remove gst_library_load as it does more harm than good with
3946         the new g_module flags.
3947         Revert bogus caps template check in pad linking, pad caps
3948         are important when linking not the template, which is more
3949         general than the current caps.
3950
3951 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3952
3953         * gst/autoplug/.cvsignore:
3954         * gst/autoplug/Makefile.am:
3955         * gst/autoplug/gstsearchfuncs.c:
3956         * gst/autoplug/gstsearchfuncs.h:
3957         * gst/autoplug/gstspider.c:
3958         * gst/autoplug/gstspider.h:
3959         * gst/autoplug/gstspideridentity.c:
3960         * gst/autoplug/gstspideridentity.h:
3961         * gst/autoplug/spidertest.c:
3962           Die, spider, die.
3963
3964 2005-04-25  Wim Taymans  <wim@fluendo.com>
3965
3966         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3967         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3968         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
3969         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
3970         * gst/gstpad.h:
3971         Added stubs for unimplemented functions. 
3972
3973 2005-04-24  David Schleef  <ds@schleef.org>
3974
3975         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
3976         please fix.
3977
3978 2005-04-24  David Schleef  <ds@schleef.org>
3979
3980         Convert everything from GstAtomicInt to g_atomic_int_*, and
3981         remove gstatomic.
3982         * gst/Makefile.am:
3983         * gst/gstatomic.c:
3984         * gst/gstatomic.h:
3985         * gst/gstatomic_impl.h:
3986         * gst/gstbuffer.c:
3987         * gst/gstcaps.c:
3988         * gst/gstcaps.h:
3989         * gst/gstclock.c:
3990         * gst/gstclock.h:
3991         * gst/gstdata.c:
3992         * gst/gstdata.h:
3993         * gst/gstdata_private.h:
3994         * gst/gstevent.c:
3995         * gst/gstinfo.c:
3996         * gst/gstinfo.h:
3997         * gst/gstmessage.c:
3998         * gst/gstobject.c:
3999         * gst/gstobject.h:
4000         * gst/gststructure.c:
4001         * gst/gststructure.h:
4002         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
4003         * gst/gstutils.h:
4004
4005 2005-04-24  David Schleef  <ds@schleef.org>
4006
4007         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
4008         make the regressions tests work.  Remove some code that is no
4009         longer true.
4010         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
4011         Disable warning for pads without templates.
4012
4013 2005-04-24  David Schleef  <ds@schleef.org>
4014
4015         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
4016         functions that handle filtered links.
4017         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
4018         removed functions.
4019         * gst/gstutils.c: Fix/remove utility functions that handle
4020         filtered caps.
4021         * gst/gstutils.h:
4022         * gst/gstvalue.c: Add serialization/deserialization of caps
4023         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
4024         requires fixing so that the filter caps notation creates
4025         a capsfilter element and sets the filter_caps property.  I
4026         think everyone probably wants to keep the shorthand notation.
4027         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
4028         * docs/gst/tmpl/gstpad.sgml:
4029
4030         * gst/elements/gstelements.c: Register capsfilter element.
4031         * gst/Makefile.am: fix spacing
4032         * docs/random/ds/0.9-suggested-changes: random
4033
4034 2005-04-23  David Schleef  <ds@schleef.org>
4035
4036         * gst/elements/Makefile.am:
4037         * gst/elements/gstcapsfilter.c: New element that acts like an
4038         identity, but filters caps.  Will eventually replace filtered
4039         caps in pad linking.
4040         * gst/gstutils.c: (gst_element_create_all_pads): New function
4041         to create all the ALWAYS pads that are registered with an
4042         element class.  This functionality should eventually be
4043         merged in with GstElement initialization.
4044         * gst/gstutils.h:
4045         * testsuite/trigger/README: part of trigger test code that should
4046         have been checked in a long time ago.
4047
4048 2005-04-23  David Schleef  <ds@schleef.org>
4049
4050         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
4051         needed with new versions of libtool (nobody will confirm this),
4052         and hard to carry around.
4053         * gst/autoplug/Makefile.am:
4054         * gst/base/Makefile.am:
4055         * gst/elements/Makefile.am:
4056         * gst/indexers/Makefile.am:
4057         * gst/schedulers/Makefile.am:
4058         * libs/gst/bytestream/Makefile.am:
4059         * libs/gst/control/Makefile.am:
4060         * libs/gst/dataprotocol/Makefile.am:
4061         * libs/gst/getbits/Makefile.am:
4062
4063 2005-04-21  Wim Taymans  <wim@fluendo.com>
4064
4065         * docs/design/draft-push-pull.txt:
4066         * docs/design/part-MT-refcounting.txt:
4067         * docs/design/part-TODO.txt:
4068         * docs/design/part-caps.txt:
4069         * docs/design/part-events.txt:
4070         * docs/design/part-gstbus.txt:
4071         * docs/design/part-gstpipeline.txt:
4072         * docs/design/part-messages.txt:
4073         * docs/design/part-push-pull.txt:
4074         * docs/design/part-query.txt:
4075         Some more docs.
4076
4077 2005-04-21  Wim Taymans  <wim@fluendo.com>
4078
4079         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
4080         (gst_message_new), (gst_message_new_error),
4081         (gst_message_new_warning), (gst_message_new_tag),
4082         (gst_message_new_state_changed), (gst_message_new_application),
4083         (gst_message_get_structure):
4084         * gst/gstmessage.h:
4085         * gst/gststructure.c: (gst_structure_set_parent_refcount),
4086         (gst_structure_copy_conditional):
4087         Use parent refcount in GstMessage to ensure GstStructure
4088         consistency.
4089         Cleaned up headers a bit.
4090         
4091
4092 2005-04-20  Wim Taymans  <wim@fluendo.com>
4093
4094         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4095         (gst_basesink_pad_getcaps), (gst_basesink_init),
4096         (gst_basesink_chain_unlocked):
4097         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
4098         (gst_type_find_helper):
4099         * gst/elements/gsttypefindelement.c:
4100         (gst_type_find_element_have_type), (gst_type_find_element_init),
4101         (stop_typefinding), (gst_type_find_element_handle_event),
4102         (find_suggest), (gst_type_find_element_chain),
4103         (gst_type_find_element_checkgetrange),
4104         (gst_type_find_element_getrange), (do_typefind),
4105         (gst_type_find_element_activate):
4106         * gst/gstbuffer.c: (_gst_buffer_sub_free),
4107         (gst_buffer_default_free), (gst_buffer_default_copy),
4108         (gst_buffer_set_caps):
4109         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
4110         (gst_caps_replace):
4111         * gst/gstmessage.c: (gst_message_new),
4112         (gst_message_new_state_changed):
4113         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4114         (gst_pad_set_checkgetrange_function),
4115         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
4116         (gst_pad_set_caps), (gst_pad_check_pull_range),
4117         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
4118         * gst/gstpad.h:
4119         * gst/gsttypefind.c: (gst_type_find_register):
4120         Make gst_caps_replace() work like other _replace() functions.
4121         Use _caps_replace() where possible.
4122         Make sure _message_new() initialises its field.
4123         Add gst_static_pad_template_get_caps()
4124
4125
4126 2005-04-18  Andy Wingo  <wingo@pobox.com>
4127
4128         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
4129         on the peer, not the pad. I think that was a typo. Pass an extra
4130         arg to see if random access is possible. Activate the pads as
4131         PULL_RANGE if possible.
4132
4133         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
4134
4135         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
4136         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
4137         to PROP_....
4138
4139 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4140
4141         * docs/faq/using.xml:
4142           Add note on gstreamer-properties (#154996).
4143
4144 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4145
4146         * docs/random/bbb/optional-properties:
4147           Some analysis on optional properties.
4148
4149 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4150
4151         * docs/gst/tmpl/gstelementfactory.sgml:
4152         * gst/gstelement.h:
4153         * gst/gstelementfactory.c: (gst_element_factory_init),
4154         (gst_element_factory_cleanup), (gst_element_register),
4155         (__gst_element_factory_add_static_pad_template),
4156         (gst_element_factory_get_static_pad_templates),
4157         (gst_element_factory_can_src_caps),
4158         (gst_element_factory_can_sink_caps):
4159         * gst/registries/Makefile.am:
4160         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
4161         (gst_xml_registry_class_init), (gst_xml_registry_init),
4162         (gst_xml_registry_new), (gst_xml_registry_set_property),
4163         (gst_xml_registry_get_property), (get_time), (make_dir),
4164         (gst_xml_registry_get_perms_func),
4165         (plugin_times_older_than_recurse), (plugin_times_older_than),
4166         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
4167         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
4168         (add_to_char_array), (read_string), (read_uint), (read_enum),
4169         (load_pad_template), (load_feature), (load_plugin), (load_paths),
4170         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
4171         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
4172         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
4173         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
4174         (gst_xml_registry_rebuild):
4175         * gst/registries/gstlibxmlregistry.h:
4176         * tools/gst-compprep.c: (main):
4177         * tools/gst-inspect.c: (print_pad_templates_info):
4178         * tools/gst-xmlinspect.c: (print_element_info):
4179           Use libxml2 for registry parsing, use staticpadtemplates in
4180           elementfactories. Makes gst_init() +/- 10x faster.
4181
4182 2005-04-12  Wim Taymans  <wim@fluendo.com>
4183
4184         * gst/base/Makefile.am:
4185         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4186         (gst_basesink_pad_getcaps), (gst_basesink_init),
4187         (gst_basesink_event), (gst_basesink_change_state):
4188         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4189         (gst_basesrc_init), (gst_basesrc_query),
4190         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
4191         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
4192         (gst_basesrc_check_get_range), (gst_basesrc_loop),
4193         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
4194         (gst_basesrc_stop), (gst_basesrc_activate),
4195         (gst_basesrc_change_state):
4196         * gst/base/gsttypefindhelper.c: (helper_find_peek),
4197         (helper_find_suggest), (gst_type_find_helper):
4198         * gst/base/gsttypefindhelper.h:
4199         * gst/elements/Makefile.am:
4200         * gst/elements/gstelements.c:
4201         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
4202         (gst_fakesink_get_times), (gst_fakesink_event),
4203         (gst_fakesink_preroll), (gst_fakesink_render):
4204         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4205         (gst_fakesrc_init), (gst_fakesrc_event_handler),
4206         (gst_fakesrc_get_property), (gst_fakesrc_create),
4207         (gst_fakesrc_start), (gst_fakesrc_stop):
4208         * gst/elements/gstfakesrc.h:
4209         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
4210         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
4211         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
4212         (gst_filesrc_create_read), (gst_filesrc_create),
4213         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
4214         (gst_filesrc_start):
4215         * gst/elements/gsttypefindelement.c:
4216         (gst_type_find_element_have_type), (gst_type_find_element_init),
4217         (start_typefinding), (stop_typefinding), (push_buffer_store),
4218         (gst_type_find_element_handle_event),
4219         (gst_type_find_element_chain),
4220         (gst_type_find_element_checkgetrange),
4221         (gst_type_find_element_getrange), (do_typefind),
4222         (gst_type_find_element_activate),
4223         (gst_type_find_element_change_state):
4224         * gst/elements/gsttypefindelement.h:
4225         * gst/gstpipeline.c: (pipeline_bus_handler):
4226         Added typefind helper.
4227         Small preroll fix in the base sink.
4228         Disable typefind code in basesrc.
4229         Crude port of typefindelement.
4230         Fakesrc cleanups.
4231
4232
4233 2005-04-11  Wim Taymans  <wim@fluendo.com>
4234
4235         * check/gst/gstbus.c: (gstbus_suite):
4236         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
4237         * check/gstcheck.h:
4238           Fix up the timeout so that the test does not fail.
4239
4240 2005-04-06  Wim Taymans  <wim@fluendo.com>
4241
4242         * gst/base/README:
4243         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4244         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
4245         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
4246         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
4247         (gst_basesrc_check_get_range), (gst_basesrc_loop),
4248         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
4249         (gst_basesrc_stop), (gst_basesrc_activate),
4250         (gst_basesrc_change_state), (basesrc_find_peek),
4251         (basesrc_find_suggest), (gst_basesrc_type_find):
4252         * gst/base/gstbasesrc.h:
4253         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
4254         (gst_filesrc_class_init), (gst_filesrc_init),
4255         (gst_filesrc_finalize), (gst_filesrc_set_location),
4256         (gst_filesrc_set_property), (gst_filesrc_get_property),
4257         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
4258         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
4259         (gst_filesrc_create_read), (gst_filesrc_create),
4260         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
4261         * gst/elements/gstfilesrc.h:
4262         * gst/gstelement.c: (gst_element_get_state_func),
4263         (gst_element_lost_state), (gst_element_pads_activate):
4264         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4265         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
4266         (gst_pad_pull_range):
4267         * gst/gstpad.h:
4268         More work on the generic source base class, implement seeking,
4269         query.
4270         Make filesrc extend the base source class.
4271         Added gst_pad_set_checkgetrange_function to GstPad.
4272
4273 2005-04-06  Andy Wingo  <wingo@pobox.com>
4274
4275         * pkgconfig/gstreamer-base.pc.in:
4276         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
4277
4278         * pkgconfig/Makefile.am:
4279         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
4280
4281 2005-04-04  Wim Taymans  <wim@fluendo.com>
4282
4283         * gst/base/Makefile.am:
4284         * gst/base/README:
4285         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4286         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4287         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4288         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
4289         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4290         (gst_basesrc_base_init), (gst_basesrc_class_init),
4291         (gst_basesrc_init), (gst_basesrc_get_formats),
4292         (gst_basesrc_get_query_types), (gst_basesrc_query),
4293         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
4294         (gst_basesrc_set_property), (gst_basesrc_get_property),
4295         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
4296         (gst_basesrc_loop), (gst_basesrc_activate),
4297         (gst_basesrc_change_state):
4298         * gst/base/gstbasesrc.h:
4299         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
4300         (gst_fakesrc_class_init), (gst_fakesrc_init),
4301         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
4302         (gst_fakesrc_get_property), (gst_fakesrc_create):
4303         * gst/elements/gstfakesrc.h:
4304         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
4305         (gst_filesrc_open_file), (gst_filesrc_loop),
4306         (gst_filesrc_activate), (filesrc_find_peek),
4307         (gst_filesrc_type_find):
4308         Made base source class, make fakesrc extend it.
4309         Add comments to basesink class.
4310         Some filesrc cleanup.
4311
4312 2005-03-31  David Schleef  <ds@schleef.org>
4313
4314         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
4315         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
4316         expected to link against libgstreamer.
4317         * gst/base/Makefile.am: link against libgstreamer
4318         * gst/elements/Makefile.am: same
4319
4320 2005-03-31  Andy Wingo  <wingo@pobox.com>
4321
4322         * tests/instantiate/Makefile.am:
4323         * tests/instantiate/caps.c: Add test to test speed of caps copy
4324         and free.
4325
4326         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
4327         GMemChunk to be fair.
4328
4329         * gst/gsttrashstack.h: Remove warning about using the fallback
4330         trash stack implementation, it's still faster than malloc.
4331
4332 2005-03-30  Andy Wingo  <wingo@pobox.com>
4333
4334         * tests/complexity.c: Add a copyright.
4335
4336 2005-03-31  Wim Taymans  <wim@fluendo.com>
4337
4338         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
4339         (gst_base_transform_class_init), (gst_base_transform_init),
4340         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
4341         (gst_base_transform_get_property),
4342         (gst_base_transform_sink_activate),
4343         (gst_base_transform_src_activate),
4344         (gst_base_transform_change_state):
4345         * gst/base/gstbasetransform.h:
4346         * gst/elements/gstidentity.c: (gst_identity_class_init),
4347         (gst_identity_event), (gst_identity_check_perfect),
4348         (gst_identity_transform), (gst_identity_start),
4349         (gst_identity_stop):
4350         Added start/stop methods to transform base class so subclasses 
4351         don't need to deal with state changes even.
4352
4353 2005-03-31  Wim Taymans  <wim@fluendo.com>
4354
4355         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
4356         (gst_event_new_discontinuous), (gst_event_discont_get_value):
4357         * gst/gstevent.h:
4358         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4359         (gst_pad_pull_range):
4360         Added rate to the discont event to prepare for variable speed
4361         and reverse playback.
4362
4363 2005-03-29  David Schleef  <ds@schleef.org>
4364
4365         * configure.ac:
4366         * testsuite/trigger/Makefile.am:
4367         * testsuite/trigger/trigger.c: A little example program to show
4368         how trigger-based elements can work.
4369
4370 2005-03-29  Wim Taymans  <wim@fluendo.com>
4371
4372         * gst/base/Makefile.am:
4373         * gst/base/README:
4374         * gst/base/gstbasesink.c: (gst_basesink_get_type),
4375         (gst_basesink_base_init), (gst_basesink_class_init),
4376         (gst_basesink_pad_getcaps), (gst_basesink_init),
4377         (gst_basesink_activate), (gst_basesink_change_state):
4378         * gst/base/gstbasesink.h:
4379         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
4380         (gst_base_transform_base_init), (gst_base_transform_finalize),
4381         (gst_base_transform_class_init), (gst_base_transform_init),
4382         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
4383         (gst_base_transform_event), (gst_base_transform_getrange),
4384         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
4385         (gst_base_transform_set_property),
4386         (gst_base_transform_get_property),
4387         (gst_base_transform_sink_activate),
4388         (gst_base_transform_src_activate),
4389         (gst_base_transform_change_state):
4390         * gst/base/gstbasetransform.h:
4391         * gst/elements/gstidentity.c: (gst_identity_finalize),
4392         (gst_identity_class_init), (gst_identity_init),
4393         (gst_identity_event), (gst_identity_check_perfect),
4394         (gst_identity_transform), (gst_identity_set_property),
4395         (gst_identity_get_property), (gst_identity_change_state):
4396         * gst/elements/gstidentity.h:
4397         * gst/gstelement.c: (gst_element_get_state_func),
4398         (gst_element_lost_state), (gst_element_pads_activate):
4399         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4400         (gst_pad_check_pull_range), (gst_pad_pull_range):
4401         * gst/gstpad.h:
4402         Simplify pad activation.
4403         Added function to check if pull_range can be performed.
4404         Error out when pulling inactive or flushing pads.
4405         Removed const from refcounted types as it does not make sense.
4406         Simplify pad templates in basesink
4407         Added base class for simple 1-to-1 transforms.
4408         Make identity subclass the base transform.
4409
4410 2005-03-29  Andy Wingo  <wingo@pobox.com>
4411
4412         * docs/libs/gstreamer-libs-overrides.txt: 
4413         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
4414         really don't understand what's going on, but like whatever. I want
4415         green buildbot!
4416
4417         * docs/gst/Makefile.am:
4418         * docs/libs/Makefile.am: Dist the overrides files.
4419
4420         * check/Makefile.am (clean-local): Remove .libs directories.
4421
4422         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
4423         elements to EXTRA_DIST, so po/ files are happy.
4424
4425         * po/POTFILES.in: Er, remove it here.
4426
4427         * po/POTFILES: Remove gstspider.c.
4428
4429         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
4430
4431         * docs/libs/gstreamer-libs-docs.sgml: 
4432         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
4433         bytestream.
4434
4435         * tests/complexity.c (main): Set the length of the preroll queue
4436         on the sinks to prevent a lockup.
4437
4438         * libs/gst/dataprotocol/Makefile.am: 
4439         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
4440         the same as the one in check/gst-libs/gdp.c.
4441
4442         * po/, docs/gst/: Commit automatic changes to docs and po files.
4443
4444         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
4445         the versioned libgstbase.
4446
4447         * check/Makefile.am: Depend on an unversioned gst-register, seems
4448         to make autoconf happier.
4449
4450         * gst/base/Makefile.am: Make libgstbase a versioned lib.
4451
4452 2005-03-28  Wim Taymans  <wim@fluendo.com>
4453
4454         * configure.ac:
4455         * docs/design/part-gstelement.txt:
4456         * docs/design/part-negotiation.txt:
4457         * docs/design/part-preroll.txt:
4458         * docs/design/part-scheduling.txt:
4459         * docs/design/part-states.txt:
4460         * gst/Makefile.am:
4461         * gst/base/Makefile.am:
4462         * gst/base/README:
4463         * gst/base/gstbasesink.c: (gst_basesink_get_template),
4464         (gst_basesink_base_init), (gst_basesink_class_init),
4465         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4466         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4467         (gst_basesink_set_pad_functions),
4468         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
4469         (gst_basesink_set_property), (gst_basesink_get_property),
4470         (gst_base_sink_get_template), (gst_base_sink_get_caps),
4471         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
4472         (gst_basesink_preroll_queue_push),
4473         (gst_basesink_preroll_queue_empty),
4474         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
4475         (gst_basesink_event), (gst_basesink_get_times),
4476         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
4477         (gst_basesink_chain_unlocked), (gst_basesink_chain),
4478         (gst_basesink_loop), (gst_basesink_activate),
4479         (gst_basesink_change_state):
4480         * gst/base/gstbasesink.h:
4481         * gst/elements/Makefile.am:
4482         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
4483         (gst_fakesink_class_init), (gst_fakesink_init),
4484         (gst_fakesink_set_property), (gst_fakesink_get_property),
4485         (gst_fakesink_get_times), (gst_fakesink_event),
4486         (gst_fakesink_preroll), (gst_fakesink_render),
4487         (gst_fakesink_change_state):
4488         * gst/elements/gstfakesink.h:
4489         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4490         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
4491         * gst/gstelement.c: (gst_element_add_pad),
4492         (gst_element_get_state_func), (gst_element_abort_state),
4493         (gst_element_commit_state), (gst_element_lost_state),
4494         (gst_element_set_state), (gst_element_pads_activate):
4495         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
4496         * gst/gstpipeline.c: (gst_pipeline_send_event),
4497         (gst_pipeline_change_state):
4498         Added state change code.
4499         Added/updated docs.
4500         Added sink base class, make fakesink extend the base class.
4501         Small cleanups in GstPipeline.
4502
4503 2005-03-26  David Schleef  <ds@schleef.org>
4504
4505         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
4506         is broken and should be implemented in a different library.
4507         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
4508         * gst/gst.h: remove gstcpu.h
4509         * gst/gstcpu.c: remove
4510         * gst/gstcpu.h: remove
4511         * gst/Makefile.am.future: Remove this file.  It's ancient.
4512
4513 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4514
4515         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4516         (gst_bin_send_event):
4517           Add default event/set_manager handlers. The set_manager handler
4518           takes care that the manager is distributed over kids that were
4519           already in the bin before the manager was set. The event handler
4520           is a utility virtual function that sends the event over all sinks,
4521           so that gst_element_send_event (bin, event); has the expected
4522           behaviour.
4523         * gst/gstpad.c: (gst_pad_event_default):
4524           Re-install default event handling for discontinuities, so that
4525           seeking works without requiring hacks in applications or extra
4526           code in sinks.
4527         * gst/gstpipeline.c: (gst_pipeline_class_init),
4528         (gst_pipeline_send_event):
4529           Half hack, half utility: set a pipeline to PAUSED for seek events,
4530           since that is the only way we can guarantee a/v sync. Means that
4531           you can do gst_element_seek (pipeline, method, pos); on a pipeline
4532           and it "just works".
4533
4534 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4535
4536         * gst/gstpipeline.c: (gst_pipeline_use_clock):
4537           Lock/unlock mismatch.
4538
4539 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
4540
4541         * docs/faq/gst-uninstalled:
4542           add gst-plugins-base
4543         * docs/gst/Makefile.am:
4544           don't error out until docs are fixed
4545         * docs/gst/gstreamer.types:
4546           remove thread
4547
4548 2005-03-22  Wim Taymans  <wim@fluendo.com>
4549
4550         * check/Makefile.am:
4551         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
4552         * gst/gststructure.c: (gst_structure_set_valist),
4553         (gst_structure_copy_conditional):
4554         Activated more tests.
4555         Added message test.
4556         Added G_TYPE_POINTER to GstStructure.
4557         
4558
4559 2005-03-22  Wim Taymans  <wim@fluendo.com>
4560
4561         * docs/design/part-TODO.txt:
4562         * docs/design/part-events.txt:
4563         * docs/design/part-gstbin.txt:
4564         * docs/design/part-gstbus.txt:
4565         * docs/design/part-gstpipeline.txt:
4566         * docs/design/part-messages.txt:
4567         * gst/gstbus.c:
4568         * gst/gstmessage.c:
4569         Docs updates
4570
4571 2005-03-21  Wim Taymans  <wim@fluendo.com>
4572
4573         * gst/gstbus.c: (gst_bus_post):
4574         Fix copy-and-paste error.
4575
4576 2005-03-21  Wim Taymans  <wim@fluendo.com>
4577
4578         * check/Makefile.am:
4579         * gst/Makefile.am:
4580         * gst/elements/Makefile.am:
4581         * gst/elements/gstelements.c:
4582         * gst/elements/gstfakesink.c: (gst_fakesink_init),
4583         (gst_fakesink_event), (gst_fakesink_chain):
4584         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4585         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
4586         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
4587         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
4588         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
4589         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
4590         (gst_fakesrc_loop), (gst_fakesrc_activate),
4591         (gst_fakesrc_change_state):
4592         * gst/elements/gstfakesrc.h:
4593         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
4594         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
4595         (gst_filesrc_open_file), (gst_filesrc_loop),
4596         (gst_filesrc_activate), (gst_filesrc_change_state),
4597         (filesrc_find_peek), (filesrc_find_suggest),
4598         (gst_filesrc_type_find):
4599         * gst/elements/gstidentity.c: (gst_identity_finalize),
4600         (gst_identity_class_init), (gst_identity_init),
4601         (gst_identity_proxy_getcaps), (identity_queue_push),
4602         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
4603         (gst_identity_getrange), (gst_identity_chain),
4604         (gst_identity_sink_loop), (gst_identity_src_loop),
4605         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
4606         (gst_identity_set_property), (gst_identity_get_property),
4607         (gst_identity_change_state):
4608         * gst/elements/gstidentity.h:
4609         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
4610         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
4611         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
4612         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
4613         (gst_tee_sink_activate):
4614         * gst/elements/gsttee.h:
4615         * gst/gst.c: (gst_register_core_elements), (init_post):
4616         * gst/gst.h:
4617         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
4618         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
4619         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
4620         (gst_bin_change_state):
4621         * gst/gstbin.h:
4622         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
4623         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
4624         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
4625         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
4626         (gst_bus_set_sync_handler), (gst_bus_create_watch),
4627         (bus_watch_callback), (bus_watch_destroy),
4628         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
4629         (poll_timeout), (gst_bus_poll):
4630         * gst/gstbus.h:
4631         * gst/gstcaps.h:
4632         * gst/gstdata.h:
4633         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4634         (gst_element_post_message), (gst_element_message_full),
4635         (gst_element_get_state_func), (gst_element_get_state),
4636         (gst_element_abort_state), (gst_element_commit_state),
4637         (gst_element_lost_state), (gst_element_set_state),
4638         (gst_element_pads_activate), (gst_element_change_state),
4639         (gst_element_dispose), (gst_element_set_manager_func),
4640         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
4641         (gst_element_set_manager), (gst_element_get_manager),
4642         (gst_element_set_bus), (gst_element_get_bus),
4643         (gst_element_set_scheduler), (gst_element_get_scheduler):
4644         * gst/gstelement.h:
4645         * gst/gstevent.c: (gst_event_new_segment_seek),
4646         (gst_event_new_flush):
4647         * gst/gstevent.h:
4648         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
4649         (_gst_message_free), (gst_message_get_type), (gst_message_new),
4650         (gst_message_new_eos), (gst_message_new_error),
4651         (gst_message_new_warning), (gst_message_new_tag),
4652         (gst_message_new_state_changed), (gst_message_new_application),
4653         (gst_message_get_structure), (gst_message_parse_tag),
4654         (gst_message_parse_state_changed), (gst_message_parse_error),
4655         (gst_message_parse_warning):
4656         * gst/gstmessage.h:
4657         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
4658         (gst_real_pad_set_property), (gst_pad_set_active),
4659         (gst_pad_is_active), (gst_pad_set_blocked_async),
4660         (gst_pad_set_blocked), (gst_pad_is_blocked),
4661         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
4662         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
4663         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
4664         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
4665         (gst_pad_link_filtered), (gst_pad_relink_filtered),
4666         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
4667         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
4668         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
4669         (gst_pad_set_caps), (gst_pad_configure_sink),
4670         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
4671         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
4672         (gst_real_pad_dispose), (gst_real_pad_finalize),
4673         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
4674         (gst_pad_event_default_dispatch), (gst_pad_event_default),
4675         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
4676         * gst/gstpad.h:
4677         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
4678         (pipeline_bus_handler), (gst_pipeline_change_state),
4679         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
4680         * gst/gstpipeline.h:
4681         * gst/gstprobe.h:
4682         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
4683         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
4684         (gst_queue_link_src), (gst_queue_bufferalloc),
4685         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
4686         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
4687         (gst_queue_loop), (gst_queue_handle_src_event),
4688         (gst_queue_handle_src_query), (gst_queue_src_activate),
4689         (gst_queue_change_state):
4690         * gst/gstqueue.h:
4691         * gst/gstscheduler.c: (gst_scheduler_init),
4692         (gst_scheduler_dispose), (gst_scheduler_create_task),
4693         (gst_scheduler_factory_create):
4694         * gst/gstscheduler.h:
4695         * gst/gststructure.c: (gst_structure_get_type),
4696         (gst_structure_copy_conditional):
4697         * gst/gststructure.h:
4698         * gst/gsttaginterface.h:
4699         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
4700         (gst_task_init), (gst_task_dispose), (gst_task_create),
4701         (gst_task_get_state), (gst_task_start), (gst_task_stop),
4702         (gst_task_pause):
4703         * gst/gsttask.h:
4704         * gst/gstthread.c:
4705         * gst/gstthread.h:
4706         * gst/gsttypes.h:
4707         * gst/schedulers/Makefile.am:
4708         * gst/schedulers/cothreads_compat.h:
4709         * gst/schedulers/entryscheduler.c:
4710         * gst/schedulers/faircothreads.c:
4711         * gst/schedulers/faircothreads.h:
4712         * gst/schedulers/fairscheduler.c:
4713         * gst/schedulers/gstbasicscheduler.c:
4714         * gst/schedulers/gstoptimalscheduler.c:
4715         * gst/schedulers/gthread-cothreads.h:
4716         * gst/schedulers/threadscheduler.c:
4717         (gst_thread_scheduler_task_get_type),
4718         (gst_thread_scheduler_task_class_init),
4719         (gst_thread_scheduler_task_init),
4720         (gst_thread_scheduler_task_start),
4721         (gst_thread_scheduler_task_stop),
4722         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
4723         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
4724         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
4725         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
4726         (plugin_init):
4727         * libs/gst/Makefile.am:
4728         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
4729         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
4730         (gst_file_pad_parent_set):
4731         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
4732         (gst_dp_event_from_packet):
4733         * tests/complexity.c: (main):
4734         * tests/mass_elements.c: (main):
4735         * testsuite/states/locked.c: (message_received), (main):
4736         * testsuite/states/parent.c: (main):
4737         * tools/gst-inspect.c: (print_element_flag_info),
4738         (print_implementation_info), (print_pad_info):
4739         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
4740         (main):
4741         * tools/gst-md5sum.c: (event_loop), (main):
4742         * tools/gst-typefind.c: (main):
4743         * tools/gst-xmlinspect.c: (print_element_info):
4744         Next big merge.
4745         Added GstBus for mainloop integration.
4746         Added GstMessage for sending notifications on the bus.
4747         Added GstTask as an abstraction for pipeline entry points.
4748         Removed GstThread.
4749         Removed Schedulers.
4750         Simplified GstQueue for multithreaded core.
4751         Made _link threadsafe, removed old capsnego.
4752         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
4753         Added pad blocking functions.
4754         Reworked scheduling functions in GstPad to prepare for
4755         scheduling updates soon.
4756         Moved events out of data stream.
4757         Simplified GstEvent types.
4758         Added return values to push/pull.
4759         Removed clocking from GstElement.
4760         Added prototypes for state change function for next merge.
4761         Removed iterate from bins and state change management.
4762         Fixed some elements, disabled others for now.
4763         Fixed -inspect and -launch.
4764         Added check for GstBus.
4765
4766 2005-03-10  Wim Taymans  <wim@fluendo.com>
4767
4768         * docs/design/part-MT-refcounting.txt:
4769         * docs/design/part-clocks.txt:
4770         * docs/design/part-gstelement.txt:
4771         * docs/design/part-gstobject.txt:
4772         * docs/design/part-standards.txt:
4773         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4774         (gst_bin_remove_func), (gst_bin_remove):
4775         * gst/gstbin.h:
4776         * gst/gstbuffer.c:
4777         * gst/gstcaps.h:
4778         * testsuite/clock/clock1.c: (main):
4779         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
4780         (main):
4781         * testsuite/dlopen/loadgst.c: (do_test):
4782         * testsuite/refcounting/bin.c: (add_remove_test1),
4783         (add_remove_test2), (main):
4784         * testsuite/refcounting/element.c: (main):
4785         * testsuite/refcounting/element_pad.c: (main):
4786         * testsuite/refcounting/pad.c: (main):
4787         * tools/gst-launch.c: (sigint_handler_sighandler):
4788         * tools/gst-typefind.c: (main):
4789         Doc updates.
4790         Added doc about clock.
4791         removed gst_bin_iterate_recurse_up(), marked methods
4792         for removal.
4793         Fix more testsuites.
4794
4795 2005-03-09  Wim Taymans  <wim@fluendo.com>
4796
4797         * gst/gstpad.c: (gst_pad_get_direction),
4798         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
4799         (gst_pad_collect_valist):
4800         * testsuite/bins/interface.c: (main):
4801         * testsuite/caps/audioscale.c: (test_caps):
4802         * testsuite/caps/caps.c: (test1), (test2), (test3):
4803         * testsuite/caps/deserialize.c: (main):
4804         * testsuite/caps/enumcaps.c: (main):
4805         * testsuite/caps/filtercaps.c: (main):
4806         * testsuite/caps/intersect2.c: (main):
4807         * testsuite/caps/random.c: (main):
4808         * testsuite/caps/renegotiate.c: (my_fixate), (main):
4809         * testsuite/caps/sets.c: (check_caps):
4810         * testsuite/caps/simplify.c: (check_caps), (main):
4811         * testsuite/caps/subtract.c: (check_caps):
4812         Fix _pad_get_direction wrt ghostpads.
4813         Fix caps testsuite.
4814
4815 2005-03-09  Wim Taymans  <wim@fluendo.com>
4816
4817         * check/Makefile.am:
4818         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
4819         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
4820         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
4821         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
4822         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
4823         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
4824         (gst_bin_remove), (gst_bin_iterate_recurse_up),
4825         (bin_element_is_sink), (gst_bin_iterate_sinks),
4826         (gst_bin_iterate_all_by_interface):
4827         * gst/gstbin.h:
4828         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
4829         (gst_element_change_state), (gst_element_dispose),
4830         (gst_element_finalize), (gst_element_set_loop_function):
4831         * gst/gstelement.h:
4832         * gst/gstiterator.c: (find_custom_fold_func):
4833         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4834         (gst_pad_collectv), (gst_pad_collect_valist),
4835         (gst_pad_template_new):
4836         * gst/gstpipeline.c: (gst_pipeline_class_init),
4837         (gst_pipeline_dispose), (gst_pipeline_set_property),
4838         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
4839         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
4840         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
4841         * gst/gstutils.h:
4842         * gst/schedulers/entryscheduler.c:
4843         * gst/schedulers/gstbasicscheduler.c:
4844         (gst_basic_scheduler_cothreaded_chain),
4845         (gst_basic_scheduler_chain_add_element):
4846         * testsuite/bins/interface.c: (main):
4847         Added GstBin test.
4848         Added GstSystemClock test.
4849         Implemented clock distribution code in GstBin.
4850         Implemented iterate sinks method for future use.
4851         Rearranged gstelement.h
4852         Fix GstIterator comparison bug.
4853         Moved some code to GstPipeline, mostly clocking related.
4854
4855 2005-03-09  Wim Taymans  <wim@fluendo.com>
4856
4857         * configure.ac:
4858         * gst/gst_private.h:
4859         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4860         (gst_bin_remove_func), (gst_bin_remove),
4861         (gst_bin_get_by_name_recurse_up):
4862         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
4863         (gst_clock_id_compare_func), (gst_clock_id_wait),
4864         (gst_clock_id_wait_async), (gst_clock_init),
4865         (gst_clock_adjust_unlocked), (gst_clock_get_time):
4866         * gst/gstelement.h:
4867         * gst/gstinfo.c: (_gst_debug_init):
4868         * gst/gstobject.h:
4869         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4870         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
4871         * gst/gstpad.h:
4872         Bump version number, we're now 0.9.0
4873         Add future debugging category.
4874         Fix NULL _unref() in _get_by_name_recurse_up
4875         Rearrange gstpad.h.
4876         Update some docs.
4877
4878 2005-03-08  Wim Taymans  <wim@fluendo.com>
4879
4880         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
4881         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4882         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
4883         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
4884         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
4885         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
4886         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
4887         * gst/elements/gstidentity.c: (gst_identity_class_init):
4888         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
4889         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
4890         * gst/elements/gstshaper.c: (gst_shaper_class_init):
4891         * gst/elements/gststatistics.c: (gst_statistics_class_init):
4892         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
4893         (gst_tee_link):
4894         * gst/gstelement.c: (gst_element_class_init),
4895         (gst_element_base_class_init), (gst_element_init),
4896         (gst_element_get_random_pad), (gst_element_wait_state_change),
4897         (gst_element_change_state), (gst_element_dispose),
4898         (gst_element_finalize), (gst_element_set_loop_function):
4899         * gst/gstelement.h:
4900         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
4901         * gst/gstthread.c: (gst_thread_class_init),
4902         (gst_thread_release_children_locks), (gst_thread_change_state):
4903         * gst/schedulers/gstbasicscheduler.c:
4904         (gst_basic_scheduler_loopfunc_wrapper),
4905         (gst_basic_scheduler_chain_wrapper),
4906         (gst_basic_scheduler_src_wrapper),
4907         (gst_basic_scheduler_remove_element):
4908         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4909         Remove threadsafe properties. Fix elements because GObject
4910         complains when installing a property before declaring a
4911         set/get_property handler.
4912         Rearrange gstelement.h file, use STATE macros for state locks.
4913         Free mutexes in the finalize method instead of dispose.
4914
4915 2005-03-08  Wim Taymans  <wim@fluendo.com>
4916
4917         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
4918         * gst/gstthread.c: (gst_thread_release_children_locks):
4919         Added parentage check.
4920         Fix build og GstThread again.
4921
4922 2005-03-08  Wim Taymans  <wim@fluendo.com>
4923
4924         * docs/design/part-MT-refcounting.txt:
4925         * docs/design/part-conventions.txt:
4926         * docs/design/part-gstobject.txt:
4927         * docs/design/part-relations.txt:
4928         * docs/design/part-standards.txt:
4929         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4930         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
4931         (gst_bin_get_by_name), (gst_bin_get_by_interface),
4932         (gst_bin_iterate_all_by_interface):
4933         * gst/gstbuffer.h:
4934         * gst/gstclock.h:
4935         * gst/gstelement.c: (gst_element_class_init),
4936         (gst_element_change_state), (gst_element_set_loop_function):
4937         * gst/gstelement.h:
4938         * gst/gstiterator.c:
4939         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
4940         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
4941         (gst_object_dispatch_properties_changed), (gst_object_set_name),
4942         (gst_object_set_parent), (gst_object_unparent),
4943         (gst_object_check_uniqueness):
4944         * gst/gstobject.h:
4945         Docs updates, clean up some headers.
4946
4947 2005-03-07  Wim Taymans  <wim@fluendo.com>
4948
4949         * check/.cvsignore:
4950         * check/Makefile.am:
4951         * check/gst-libs/.cvsignore:
4952         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
4953         * check/gst/.cvsignore:
4954         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
4955         (START_TEST), (gstbus_suite), (main):
4956         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
4957         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
4958         (gst_data_suite), (main):
4959         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
4960         (add_fold_func), (gstiterator_suite), (main):
4961         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
4962         (thread_name_object), (thread_name_object_default),
4963         (gst_object_name_compare), (gst_object_suite), (main):
4964         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
4965         (gst_pad_suite), (main):
4966         * check/gstcheck.c: (gst_check_log_message_func),
4967         (gst_check_log_critical_func), (gst_check_init):
4968         * check/gstcheck.h:
4969         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
4970         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
4971         Added checks.
4972
4973 2005-03-07  Wim Taymans  <wim@fluendo.com>
4974
4975         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
4976         (gst_list_iterator_next), (gst_list_iterator_resync),
4977         (gst_list_iterator_free), (gst_iterator_new_list),
4978         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
4979         (gst_iterator_free), (gst_iterator_push), (filter_next),
4980         (filter_resync), (filter_uninit), (filter_free),
4981         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
4982         (gst_iterator_foreach), (find_custom_fold_func),
4983         (gst_iterator_find_custom):
4984         * gst/gstiterator.h:
4985         Added missing files.
4986
4987 2005-03-07  Wim Taymans  <wim@fluendo.com>
4988
4989         * Makefile.am:
4990         * configure.ac:
4991         * docs/design/part-MT-refcounting.txt:
4992         * docs/design/part-conventions.txt:
4993         * docs/design/part-gstobject.txt:
4994         * docs/design/part-relations.txt:
4995         * examples/mixer/mixer.c: (main):
4996         * examples/thread/thread.c: (eos), (main):
4997         * gst/Makefile.am:
4998         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
4999         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
5000         (gst_spider_plug_from_srcpad):
5001         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
5002         (gst_spider_identity_change_state),
5003         (gst_spider_identity_sink_loop_type_finding):
5004         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
5005         * gst/elements/gstidentity.c: (gst_identity_init):
5006         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
5007         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
5008         * gst/elements/gsttypefindelement.c: (free_entry):
5009         * gst/gst.c:
5010         * gst/gst.h:
5011         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
5012         (gst_bin_set_clock_func), (gst_bin_auto_clock),
5013         (gst_bin_set_index), (gst_bin_set_element_sched),
5014         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
5015         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
5016         (gst_bin_iterate_elements), (iterate_child_recurse),
5017         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
5018         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
5019         (compare_interface), (gst_bin_get_by_interface),
5020         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
5021         * gst/gstbin.h:
5022         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
5023         (gst_buffer_default_free), (gst_buffer_default_copy),
5024         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
5025         (gst_buffer_create_sub):
5026         * gst/gstbuffer.h:
5027         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
5028         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
5029         (gst_caps_unref), (gst_static_caps_get),
5030         (gst_caps_remove_and_get_structure), (gst_caps_append),
5031         (gst_caps_append_structure), (gst_caps_remove_structure),
5032         (gst_caps_copy_nth), (gst_caps_set_simple),
5033         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
5034         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
5035         (gst_caps_structure_intersect_field), (gst_caps_intersect),
5036         (gst_caps_structure_subtract_field), (gst_caps_subtract),
5037         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
5038         (gst_caps_structure_figure_out_union),
5039         (gst_caps_switch_structures), (gst_caps_do_simplify),
5040         (gst_caps_replace), (gst_caps_from_string),
5041         (gst_caps_copy_conditional):
5042         * gst/gstcaps.h:
5043         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
5044         (_gst_clock_id_free), (gst_clock_id_unref),
5045         (gst_clock_id_compare_func), (gst_clock_id_wait),
5046         (gst_clock_id_wait_async), (gst_clock_class_init),
5047         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
5048         (gst_clock_get_time), (gst_clock_set_time_adjust),
5049         (gst_clock_set_property), (gst_clock_get_property):
5050         * gst/gstclock.h:
5051         * gst/gstcompat.h:
5052         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
5053         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
5054         * gst/gstdata.h:
5055         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
5056         (gst_element_requires_clock), (gst_element_provides_clock),
5057         (gst_element_set_clock), (gst_element_clock_wait),
5058         (gst_element_wait), (gst_element_set_time_delay),
5059         (gst_element_is_indexable), (gst_element_add_pad),
5060         (gst_element_add_ghost_pad), (gst_element_remove_pad),
5061         (pad_compare_name), (gst_element_get_static_pad),
5062         (gst_element_request_pad), (gst_element_get_request_pad),
5063         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
5064         (gst_element_class_get_pad_template_list),
5065         (gst_element_class_get_pad_template), (gst_element_error_func),
5066         (gst_element_get_random_pad), (gst_element_get_event_masks),
5067         (gst_element_send_event), (gst_element_seek),
5068         (gst_element_get_query_types), (gst_element_query),
5069         (gst_element_get_formats), (gst_element_convert),
5070         (gst_element_is_locked_state), (gst_element_set_locked_state),
5071         (gst_element_sync_state_with_parent), (gst_element_change_state),
5072         (gst_element_finalize), (gst_element_yield),
5073         (gst_element_interrupt), (gst_element_set_scheduler),
5074         (gst_element_get_scheduler), (gst_element_set_loop_function):
5075         * gst/gstelement.h:
5076         * gst/gstevent.h:
5077         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
5078         (gst_format_get_by_nick), (gst_format_get_details),
5079         (gst_format_iterate_definitions):
5080         * gst/gstformat.h:
5081         * gst/gstindex.c: (gst_index_gtype_resolver):
5082         * gst/gstinfo.c:
5083         * gst/gstinfo.h:
5084         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
5085         (gst_mem_chunk_free):
5086         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
5087         (gst_object_ref), (gst_object_unref), (gst_object_sink),
5088         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
5089         (gst_object_dispatch_properties_changed),
5090         (gst_object_set_name_default), (gst_object_set_name),
5091         (gst_object_get_name), (gst_object_set_name_prefix),
5092         (gst_object_get_name_prefix), (gst_object_set_parent),
5093         (gst_object_get_parent), (gst_object_unparent),
5094         (gst_object_check_uniqueness), (gst_object_save_thyself),
5095         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
5096         (gst_object_set_property), (gst_object_get_property),
5097         (gst_object_get_path_string):
5098         * gst/gstobject.h:
5099         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
5100         (gst_real_pad_init), (gst_real_pad_get_property),
5101         (gst_pad_custom_new), (gst_pad_get_direction),
5102         (gst_pad_set_active), (gst_pad_is_active),
5103         (gst_pad_set_event_function), (gst_pad_is_linked),
5104         (gst_pad_link_free), (gst_pad_link_intersect),
5105         (gst_pad_link_fixate), (gst_pad_set_caps),
5106         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
5107         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
5108         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
5109         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
5110         (gst_pad_get_caps), (gst_pad_peer_get_caps),
5111         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
5112         (gst_pad_realize), (gst_pad_get_allowed_caps),
5113         (gst_real_pad_dispose), (gst_real_pad_finalize),
5114         (gst_pad_collectv), (gst_pad_collect_valist),
5115         (gst_pad_template_dispose), (gst_pad_template_new),
5116         (gst_pad_get_internal_links):
5117         * gst/gstpad.h:
5118         * gst/gstpipeline.c: (gst_pipeline_dispose),
5119         (gst_pipeline_change_state):
5120         * gst/gstpipeline.h:
5121         * gst/gstplugin.c:
5122         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
5123         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
5124         * gst/gstpluginfeature.h:
5125         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5126         * gst/gstquery.c: (_gst_query_type_initialize),
5127         (gst_query_type_register), (gst_query_type_get_by_nick),
5128         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
5129         * gst/gstquery.h:
5130         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
5131         * gst/gstscheduler.c: (gst_scheduler_add_element),
5132         (gst_scheduler_factory_create):
5133         * gst/gststructure.c: (gst_structure_set_parent_refcount),
5134         (gst_structure_free), (gst_structure_set_name),
5135         (gst_structure_id_set_value), (gst_structure_set_value),
5136         (gst_structure_set_valist), (gst_structure_remove_field),
5137         (gst_structure_remove_fields),
5138         (gst_structure_remove_fields_valist),
5139         (gst_structure_remove_all_fields), (gst_structure_foreach),
5140         (gst_structure_map_in_place),
5141         (gst_caps_structure_fixate_field_nearest_int),
5142         (gst_caps_structure_fixate_field_nearest_double):
5143         * gst/gststructure.h:
5144         * gst/gstsystemclock.c: (gst_system_clock_class_init),
5145         (gst_system_clock_init), (gst_system_clock_dispose),
5146         (gst_system_clock_async_thread),
5147         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
5148         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
5149         * gst/gstsystemclock.h:
5150         * gst/gsttag.c: (gst_tag_list_add_value_internal),
5151         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
5152         * gst/gsttaginterface.c:
5153         * gst/gstthread.c: (gst_thread_dispose),
5154         (gst_thread_release_children_locks), (gst_thread_change_state),
5155         (gst_thread_main_loop):
5156         * gst/gsttrashstack.h:
5157         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
5158         * gst/gsttypes.h:
5159         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
5160         (gst_element_request_pad), (gst_element_get_pad_from_template),
5161         (gst_element_request_compatible_pad),
5162         (gst_element_get_compatible_pad_filtered),
5163         (gst_element_get_compatible_pad), (gst_element_state_get_name),
5164         (gst_element_link_pads_filtered), (gst_element_link_filtered),
5165         (gst_element_link_many), (gst_element_link),
5166         (gst_element_link_pads), (gst_element_unlink_pads),
5167         (gst_element_unlink_many), (gst_element_unlink),
5168         (gst_pad_can_link_filtered), (gst_pad_can_link),
5169         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
5170         (gst_object_default_error), (gst_bin_add_many),
5171         (gst_bin_remove_many), (gst_element_populate_std_props),
5172         (gst_element_class_install_std_props), (gst_buffer_merge),
5173         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
5174         (link_fold_func), (gst_pad_proxy_setcaps):
5175         * gst/gstutils.h:
5176         * gst/gstvalue.c: (gst_value_deserialize_string):
5177         * gst/parse/grammar.y:
5178         * gst/schedulers/gstbasicscheduler.c:
5179         (gst_basic_scheduler_cothreaded_chain),
5180         (gst_basic_scheduler_chain_recursive_add),
5181         (gst_basic_scheduler_pad_link):
5182         * gst/schedulers/gstoptimalscheduler.c:
5183         (get_group_schedule_function),
5184         (gst_opt_scheduler_state_transition),
5185         (gst_opt_scheduler_add_element), (element_get_reachables_func):
5186         * libs/gst/bytestream/bytestream.c:
5187         * libs/gst/dataprotocol/dataprotocol.c:
5188         (gst_dp_header_from_buffer):
5189         * po/nb.po:
5190         * po/ru.po:
5191         * tests/threadstate/threadstate2.c: (eos):
5192         * tools/gst-compprep.c: (main):
5193         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
5194         (print_pad_info), (print_children_info):
5195         * tools/gst-launch.c: (idle_func), (main):
5196         * tools/gst-md5sum.c: (idle_func), (main):
5197         * tools/gst-xmlinspect.c: (print_element_info):
5198         First THREADED backport attempt, focusing on adding locks and
5199         making sure the API is threadsafe. Needs more work. More docs
5200         follow this week.
5201
5202 2005-02-24  Andy Wingo  <wingo@pobox.com>
5203
5204         * tests/bench-complexity.scm:
5205         * tests/complexity.gnuplot: New files, good for running complexity
5206         benchmarks.
5207
5208         * tests/Makefile.am:
5209         * tests/complexity.c: New test, sets up N elements, at each level
5210         teeing into M streams per element. Eeeenteresting.
5211
5212         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
5213         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
5214         running bench-mass_elements.scm.
5215
5216         * tests/bench-mass_elements.scm: New script, runs mass_elements
5217         for various numbers of identities, outputting the results to a
5218         file. Requires guile 1.6. Just for testing.
5219
5220 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5221
5222         * gst/schedulers/fairscheduler.c:
5223           compile with debug disabled
5224
5225 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
5226
5227         * configure.ac:
5228           hunting season on 0.9 is now OPEN
5229
5230 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
5231
5232         * docs/libs/tmpl/gstcontrol.sgml:
5233         * docs/libs/tmpl/gstdparam.sgml:
5234         * docs/libs/tmpl/gstdplinint.sgml:
5235         * docs/libs/tmpl/gstdpman.sgml:
5236         * docs/libs/tmpl/gstdpsmooth.sgml:
5237         * docs/libs/tmpl/gstunitconvert.sgml:
5238           more docs for the state of dparams
5239
5240 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5241
5242         * gst/gstelementfactory.c: (gst_element_factory_create):
5243         * gst/gstobject.c: (gst_object_init),
5244         (gst_object_set_name_default), (gst_object_set_name):
5245           name objects by default, not in gst_element_factory_create. Allows
5246           using elements created with g_object_new. (fixes #167283)
5247
5248 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5249
5250         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
5251           make the time that debugging functions print relative to when
5252           gst_init was called
5253
5254 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
5255
5256         * gst/gsttaginterface.c:
5257           Fix inline docs: tag setter vararg functions are NULL-terminated,
5258           GST_TAG_INVALID doesn't exist any more.
5259
5260 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5261
5262         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
5263         Allocate the 1 byte more memory that was forgotten!!!!!
5264         fixes memory corruption on 64bit platforms
5265
5266 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
5267
5268         * docs/pwg/building-pads.xml:
5269         * docs/pwg/intro-basics.xml:
5270           fixed a few typos, relabeled introductionary list of types
5271         * docs/random/ensonic/dparams.txt:
5272           more notes abut dparam changes
5273         * libs/gst/control/dparam.c: (gst_dparam_attach):
5274         * libs/gst/control/dparammanager.c:
5275         * libs/gst/control/dparammanager.h:
5276           - many comments and notes on dparam implementation
5277           - new dparams are were not initialized to the default value
5278             from param spec
5279
5280 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
5281
5282         submitted by: Peter Astakhov
5283
5284         * po/LINGUAS:
5285         * po/ru.po:
5286           adding Russian translation
5287
5288 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5289
5290         * configure.ac:
5291         * docs/gst/Makefile.am:
5292         * docs/libs/Makefile.am:
5293           make sure popt is added to gtk-doc flags.  Fixes #147782.
5294
5295 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
5296
5297         * docs/faq/using.xml:
5298           Fix typo in FAQ (artssink => artsdsink)
5299
5300 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5301
5302         * tools/gst-launch.1.in:
5303           Fix typo (#166699).
5304
5305 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
5306
5307         * docs/faq/using.xml:
5308           Add -v argument to fakesrc/fakesink gst-launch line,
5309           so that the promised output will actually show up.
5310
5311 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5312
5313         * gst/gstthread.c: (gst_thread_change_state):
5314           Implement state-change error handling (#166073).
5315
5316 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5317
5318         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
5319           Release interrupt after handling (#166250).
5320
5321 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5322
5323         * configure.ac:
5324           back to HEAD
5325
5326 === release 0.8.9 ===
5327
5328 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5329
5330         * NEWS:
5331         * RELEASE:
5332         * configure.ac:
5333           releasing 0.8.9, "Like Eating Glass"
5334
5335 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5336
5337         submitted by: Clytie Siddall
5338
5339         * po/vi.po: Added Vietnamese translation
5340
5341 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5342
5343         patch by: Tim Philipp-Müller
5344
5345         * configure.ac:
5346         * gst/gstpad.c:
5347           unref data when probe function returns FALSE.  Fixes #166362
5348
5349 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5350
5351         * gst/gst.c: (gst_init_get_popt_table):
5352           Fix typo (#166269).
5353
5354 2005-02-04  Andy Wingo  <wingo@pobox.com>
5355
5356         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
5357         the debugging on whether the caps are compatible.
5358
5359 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5360
5361         * docs/manual/basics-elements.xml:
5362           Fix two typos.
5363
5364 2005-02-02  Wim Taymans  <wim@fluendo.com>
5365
5366         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
5367         (schedule_chain), (get_invalid_call), (chain_invalid_call),
5368         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
5369         Remove some FIXMEs after analysing and commenting why they
5370         are not issues.
5371
5372 2005-02-02  Wim Taymans  <wim@fluendo.com>
5373
5374         * gst/schedulers/gstoptimalscheduler.c:
5375         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
5376         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
5377         (get_invalid_call), (chain_invalid_call),
5378         (get_group_schedule_function), (loop_group_schedule_function),
5379         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
5380         (gst_opt_scheduler_state_transition),
5381         (gst_opt_scheduler_add_element),
5382         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
5383         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
5384         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
5385         (gst_opt_scheduler_show):
5386         Added lock to protect scheduler data structures.
5387
5388 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5389
5390         * testsuite/threads/threadi.c: (cb_data):
5391           Fix buglet in test.
5392
5393 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5394
5395         * testsuite/threads/Makefile.am:
5396         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
5397           On Wim's request, split the test in three separately-compiled
5398           tests that each test a very specific bug. Two of them still fail,
5399           will create bugs for those. threadi.c indicates why they fail.
5400
5401 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5402
5403         * gst/schedulers/gstoptimalscheduler.c:
5404         (get_group_schedule_function):
5405           Try to work with the threading mess that queue_link is.
5406
5407 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5408
5409         * gst/gstbin.c: (gst_bin_remove_func):
5410           Explicitely make an element release locks in a group when being
5411           remove from a bin.
5412         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
5413           If there's no scheduler, always return immediately (similar to
5414           gst_element_interrupt).
5415
5416 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5417
5418         * gst/gstbin.c: (gst_bin_child_state_change_func):
5419           Remove a piece of code that could never be reached.
5420         * docs/gst/gstreamer-sections.txt:
5421         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
5422         (gst_pad_call_get_function):
5423         * gst/gstpad.h:
5424         * testsuite/pad/Makefile.am:
5425           Fix #150546, enable tests.
5426
5427 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5428
5429         * docs/pwg/advanced-types.xml:
5430           Fix description for buffer-frames=0.
5431         * docs/gst/tmpl/gstbin.sgml:
5432         * gst/gstbin.c: (gst_bin_child_state_change_func),
5433         (gst_bin_change_state), (gst_bin_change_state_norecurse):
5434         * gst/gstbin.h:
5435         * testsuite/threads/Makefile.am:
5436         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
5437         (cb_state), (cb_play), (main):
5438           Fix non-recursive state changes to *really* change the state
5439           of the object, and not just call parent_class->state_change.
5440           Fix a lot of lockups caused by this. Fixes #132775. Add test
5441           for the problem. Also enable test to show #142588 (fixed).
5442         * gst/gstthread.c: (gst_thread_change_state),
5443         (gst_thread_child_state_change):
5444           Don't exit the thread if we go to NULL and are inside thread
5445           context. Instead, return control to the main thread context
5446           and exit from there.
5447         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
5448           Don't unset virtual functions, since those may still be used.
5449           That's not necessarily correct, but suffices for now.
5450         * configure.ac:
5451         * testsuite/Makefile.am:
5452         * testsuite/pad/Makefile.am:
5453         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
5454         (gst_test_sink_base_init), (gst_test_sink_chain),
5455         (gst_test_sink_init), (main):
5456         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
5457         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
5458         (main):
5459         * testsuite/pad/link.c: (gst_test_element_class_init),
5460         (gst_test_element_base_init), (gst_test_src_get),
5461         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
5462         (gst_test_filter_loop), (gst_test_filter_init),
5463         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
5464         (cb_error), (main):
5465           Add tests to show #150546. Pass, but should fail (currently
5466           disabled from the testsuite).
5467         * gst/gstscheduler.c: (gst_scheduler_dispose):
5468           Dereference child schedulers on dispose (#94464).
5469         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
5470           Fix typo.
5471         * testsuite/threads/thread.c: (main):
5472           Add more debug.
5473
5474 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5475
5476         * gst/gstpad.c: (gst_pad_push):
5477           Oops, revert previous commit, broke testsuite...
5478
5479 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5480
5481         * gst/gstpad.c: (gst_pad_push):
5482           Add check that the pad on which the push is performed is not a
5483           get-based pad (#150546).
5484
5485 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5486
5487         * gst/elements/gsttypefindelement.c:
5488         (gst_type_find_element_handle_event):
5489           Fix buffer pushing if stream EOSes during typefinding.
5490
5491 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
5492
5493         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5494
5495         * gst/gstvalue.c: (gst_string_wrap):
5496           Allow NULL-strings as argument (#165365).
5497
5498 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
5499
5500         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5501
5502         * gst/schedulers/faircothreads.c:
5503         (gst_fair_scheduler_cothread_queue_show):
5504           Fix build without debug enabled.
5505
5506 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
5507
5508         * docs/gst/gstreamer-sections.txt:
5509         * docs/libs/gstreamer-libs-docs.sgml:
5510         * docs/libs/gstreamer-libs-sections.txt:
5511         * docs/libs/tmpl/gstcontrol.sgml:
5512         * docs/libs/tmpl/gstdparam.sgml:
5513         * docs/libs/tmpl/gstdplinint.sgml:
5514         * docs/libs/tmpl/gstdpman.sgml:
5515         * docs/libs/tmpl/gstdpsmooth.sgml:
5516         * docs/libs/tmpl/gstputbits.sgml:
5517         * docs/libs/tmpl/gstunitconvert.sgml:
5518         * libs/gst/control/dparam.c:
5519         * libs/gst/control/dparam.h:
5520         * libs/gst/control/dparammanager.c:
5521         (gst_dpman_add_required_dparam_callback),
5522         (gst_dpman_add_required_dparam_direct),
5523         (gst_dpman_add_required_dparam_array),
5524         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
5525         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
5526         (gst_dpman_get_manager)
5527           restructured DParam docs
5528
5529 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
5530
5531         * gst-element-check.m4:
5532           Only check for gst-inspect if we haven't already
5533           found it in previous element check runs
5534
5535 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
5536
5537         * docs/gst/Makefile.am:
5538         * docs/libs/Makefile.am:
5539           fixed install rules to treat style.css as optional
5540
5541 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
5542
5543         * docs/gst/Makefile.am:
5544         * docs/libs/Makefile.am:
5545           install style.css along with docs
5546         * docs/gst/tmpl/gstbin.sgml:
5547         * docs/gst/tmpl/gstclock.sgml:
5548         * docs/gst/tmpl/gstdata.sgml:
5549         * docs/gst/tmpl/gstelement.sgml:
5550         * gst/gstbin.h:
5551         * gst/gstelement.c: (gst_element_class_init):
5552         * gst/gstelement.h:
5553           fixing incomplete docs
5554
5555 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
5556
5557         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5558           Don't unref seek event twice when fflush() fails
5559           
5560 2005-01-22  David Schleef  <ds@schleef.org>
5561
5562         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
5563
5564 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
5565
5566         * docs/gst/Makefile.am:
5567         * docs/libs/Makefile.am:
5568           added params for deprecation guards
5569         * gst/gst.c:
5570         * gst/gst.h:
5571         * gst/gsterror.c: (_gst_resource_errors_init),
5572         (_gst_stream_errors_init):
5573         * gst/gsterror.h:
5574           documented some more enums
5575
5576 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
5577         * gst/autoplug/gstspideridentity.c:
5578         Cosmetic fix - spider_find_peek should be static
5579         * gst/parse/parse.l:
5580         Applying fix for #164261
5581
5582 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
5583
5584         * docs/gst/gstreamer-sections.txt:
5585         * docs/gst/tmpl/gstplugin.sgml:
5586         * docs/libs/gstreamer-libs-sections.txt:
5587         * docs/libs/tmpl/gstcontrol.sgml:
5588         * gst/gstbuffer.h:
5589         * gst/gsttag.h:
5590         * gst/gstvalue.c:
5591           added docs for the TAG defines
5592
5593 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5594
5595         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
5596           Only unref entry if there is an entry.
5597
5598 2005-01-17  Wim Taymans  <wim@fluendo.com>
5599
5600         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5601         (remove_from_group), (schedule_group), (normalize_group),
5602         (gst_opt_scheduler_iterate):
5603         Also ref/unref decoupled elements before iterating the
5604         group since they are not added to the list of elements.
5605
5606 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5607
5608         * docs/manual/highlevel-components.xml:
5609           Add subtitle/streamselection as new features to playbin.
5610
5611 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5612
5613         * docs/manual/manual.xml:
5614           Re-enable dataaccess docs (oops).
5615
5616 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5617
5618         * docs/pwg/advanced-types.xml:
5619         * docs/random/mimetypes:
5620           Add documentation on libsndfile types (#163309), by Steve Baker
5621           <steve@stevebaker.org>.
5622         * gst/gstelement.c: (gst_element_release_request_pad):
5623           If an element has no explicit function, just remove the pad.
5624
5625 2005-01-17  Luca Ognibene  <luogni@tin.it>
5626
5627         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5628
5629         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
5630           Fix memleak (#163801).
5631
5632 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5633
5634         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
5635           I think this is actually more correct...
5636
5637 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5638
5639         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5640           Another workaround for memory access while destroyed in callback.
5641           Please, someone with refcount knowledge, have a look at this.
5642
5643 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5644
5645         * docs/faq/faq.xml:
5646         * docs/faq/legal.xml:
5647           move the legal Q&A here
5648
5649 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5650
5651         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
5652         (gst_tee_request_new_pad):
5653           Fix negotiation.
5654
5655 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5656
5657         * docs/random/omega/caps2:
5658         * testsuite/caps/caps_strings:
5659           replace framerate aproximations by their real value
5660           (24000/1001, 30000/1001, 60000/1001)
5661           Partially fixes bug #164049
5662
5663 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5664
5665         * docs/gst/Makefile.am:
5666           don't fail on the stupid GstPoptOption
5667
5668 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5669
5670         * gst/gstpad.h:
5671         * gst/gstprobe.c:
5672           allow probes to work on ghost pads by realizing the pad
5673           probe debugging
5674
5675 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5676
5677         * docs/gst/gstreamer-sections.txt:
5678         * docs/gst/tmpl/gstpad.sgml:
5679         * gst/gstpad.c: (gst_pad_set_active_recursive):
5680         * gst/gstpad.h:
5681           Add gst_pad_set_active_recursive().
5682
5683 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5684
5685         * docs/random/release:
5686           updates
5687         * gst/gst_private.h:
5688         * gst/gstinfo.c:
5689         * gst/gstobject.c:
5690           move deep_notify logging to a new category
5691         * gst/gstprobe.c:
5692         * gst/gstprobe.h:
5693           add stuff so bindings can wrap probes
5694
5695 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5696
5697         * gst/gstplugin.c: (gst_plugin_load):
5698           Fix plugin loading if plugin/lib was already loaded. Fixes
5699           #163383
5700
5701 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
5702
5703         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5704
5705         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
5706           Protect plugin loading by a mutex so it's threadsafe. Fixes
5707           #163234.
5708
5709 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5710
5711         * gst/gstevent.c: (_gst_event_copy):
5712           Reference source object when copying events, since it'll be
5713           dereferenced on event dereferencing as well.
5714
5715 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5716
5717         * docs/gst/gstreamer-sections.txt:
5718         * docs/gst/tmpl/gstevent.sgml:
5719         * gst/gstevent.c: (gst_event_new_filler_stamped),
5720         (gst_event_filler_get_duration):
5721         * gst/gstevent.h:
5722           Add two new functions for filler events (which are used to
5723           synchronize streams if one of them is not having any data
5724           for a while) without interrupting the actual data-stream.
5725           Basically a no-op.
5726         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5727         (gst_queue_link_sink), (gst_queue_link_src),
5728         (gst_queue_change_state):
5729           Allow for renegotiation while filled. Required for stream
5730           switching while playing.
5731
5732 2005-01-08  Benjamin Otte  <otte@gnome.org>
5733
5734         * gst/gstelement.c: (gst_element_link_many):
5735           fix up g_return_if_fail's
5736         * po/LINGUAS:
5737         * po/de.po:
5738           add German translation, that was somehow not included
5739
5740 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5741
5742         * docs/random/mimetypes:
5743           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
5744           do not add them to riff-lib as they are not common
5745
5746 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5747
5748         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5749           Check for existence of probe after performing the probe before
5750           re-accessing it to prevent segfaults caused by removal of the
5751           probe in the callback.
5752
5753 2005-01-05  David Schleef  <ds@schleef.org>
5754
5755         * testsuite/registry/Makefile.am:
5756         * testsuite/registry/gst-print-formats.c:
5757         (print_pad_templates_info), (print_element_list),
5758         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
5759         (g_list_uniqify), (get_pad_templates_info),
5760         (get_element_mime_list), (print_mime_list), (main): A little
5761         program that looks through the registry to find elements of
5762         a given type.  Not particularly interesting as a test, except
5763         that there's no other test covering the same area.
5764
5765 2005-01-05  David Schleef  <ds@schleef.org>
5766
5767         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
5768         (fault_handler_sigaction), (fault_spin),
5769         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
5770         in signal.h-type signal handlers by not calling forbidden functions,
5771         including gst_element_set_state().
5772
5773 2005-01-05  David Schleef  <ds@schleef.org>
5774
5775         * gst/gstvalue.h: Mark _gst_reserved[] as private
5776
5777 2005-01-05  David Schleef  <ds@schleef.org>
5778
5779         * gst/gstvalue.c: Fix doc build problem.
5780
5781 2005-01-05  David Schleef  <ds@schleef.org>
5782
5783         * gst/gstvalue.c: Add some documentation
5784
5785 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
5786
5787         * docs/README:
5788           another shell oneliner for empty return value docs
5789         * gst/gstcaps.c:
5790         * gst/gstvalue.c:
5791         * libs/gst/control/dparam.c:
5792           more doc fixes (parameters and return values)
5793
5794 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
5795
5796         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5797
5798         * gst/gstregistry.h:
5799         * gst/registries/gstxmlregistry.c:
5800           Fix macro's for Mingw (fixes #162276).
5801
5802 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
5803
5804         * docs/README:
5805           quick shell oneliner to find undocumented members
5806         * docs/gst/tmpl/gstplugin.sgml:
5807         * docs/gst/tmpl/gstscheduler.sgml:
5808         * docs/gst/tmpl/gstthread.sgml:
5809           more enumtypes cleanup
5810         * gst/gsterror.h:
5811           activated documentation comments, now someone needs to document
5812           the enums :(
5813
5814 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5815
5816         * docs/manual/manual.xml:
5817           Add dataaccess part (doh!).
5818
5819 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5820
5821         * docs/manual/advanced-autoplugging.xml:
5822           Fix typo (intiate -> initiate).
5823
5824 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5825
5826         * docs/random/bbb/streamselection:
5827           Add some notes on how to handle multi-subtitle/-audio streams.
5828
5829 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
5830
5831         * docs/gst/gstreamer-docs.sgml:
5832         * docs/gst/gstreamer-sections.txt:
5833         * docs/gst/tmpl/gstenumtypes.sgml:
5834         * docs/gst/tmpl/gsterror.sgml:
5835         * docs/gst/tmpl/gstevent.sgml:
5836         * docs/gst/tmpl/gstpad.sgml:
5837         * docs/gst/tmpl/gstpadtemplate.sgml:
5838         * docs/gst/tmpl/gstthread.sgml:
5839           removed gstenumtypes section from docs and put all the enums into
5840           their sections
5841
5842 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5843
5844         * gst/gstplugin.c:
5845           document gst_library_load a bit more (riff special case + return
5846           value if already loaded)
5847         * testsuite/bytestream/filepadsink.c:
5848           plugin name is 'gstbytestream', not 'bytestream'
5849
5850 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5851
5852         * docs/random/bbb/subtitles:
5853           Add some first mind rumblings on proper subtitle support.
5854
5855 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
5856
5857         * po/ca.po:
5858         * po/sv.po:
5859           updated translations
5860
5861 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5862
5863         * docs/manual/advanced-dataaccess.xml:
5864           Add section on how to use fakesrc/fakesink/identity in your
5865           application, plus section on how to embed plugins. Also mention
5866           probes.
5867         * docs/manual/appendix-checklist.xml:
5868         * docs/manual/appendix-debugging.xml:
5869         * docs/manual/appendix-gnome.xml:
5870         * docs/manual/appendix-integration.xml:
5871           Debug -> checklist, GNOME -> integration, add sections on Linux,
5872           KDE integration and add other things useful for application
5873           development.
5874         * docs/manual/manual.xml:
5875           Remove some fixmes, update some file pointers.
5876         * docs/pwg/appendix-checklist.xml:
5877           Fix typo.
5878         * docs/pwg/building-boiler.xml:
5879           Remove ugly header and add commented fixme.
5880         * docs/pwg/pwg.xml:
5881           Add fixme.
5882         * examples/manual/Makefile.am:
5883           Add example for added docs.
5884
5885 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5886
5887         * configure.ac:
5888           back to HEAD
5889
5890 === release 0.8.8 ===
5891
5892 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5893
5894         * NEWS:
5895         * RELEASE:
5896         * configure.ac:
5897           Releasing 0.8.8, "I'll Take Care Of You"
5898
5899 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5900
5901         * configure.ac:
5902           second prerelease
5903
5904 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5905
5906         patch by: Wim Taymans
5907
5908         * gst/gstbin.c:
5909           Fix for #159852 - make iterate emission threadsafe
5910
5911 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5912
5913         * docs/faq/cvs.xml:
5914           notes about new fdo account request
5915
5916 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
5917
5918         * docs/gst/gstreamer-docs.sgml:
5919         * docs/gst/tmpl/gstenumtypes.sgml:
5920         * docs/gst/tmpl/gstplugin.sgml:
5921         * docs/libs/gstreamer-libs-docs.sgml:
5922           Added missing short docs. Added ids for navigation.
5923
5924 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5925
5926         * docs/manual/advanced-autoplugging.xml:
5927         * docs/manual/advanced-schedulers.xml:
5928         * docs/manual/advanced-threads.xml:
5929           Rewrites. Remove cothreads, go a bit into opt specifically,
5930           document threads and their gotchas, and do some technical stuff
5931           on autoplugging plus add some working examples. Fixes #157395.
5932         * examples/manual/Makefile.am:
5933           Add typefind/autoplugger example (one that actually works).
5934           Remove queue example since it's a duplicate of the thread one.
5935
5936 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5937
5938         * gst/gstvalue.c: (gst_value_deserialize_string):
5939           use deprecated g_value_set_string_take_ownership to keep compatible
5940           with glib 2.2
5941
5942 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5943
5944         * gst/gstvalue.c: (gst_value_deserialize_string):
5945           revert last patch, only dom a g_utf8_validate now before accepting
5946           the string - caps parsing strips " from strings so we can't rely on
5947           them
5948         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5949           disable a test that tested the above and comment it
5950
5951 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
5952
5953         Patch reviewed by David Schleef  <ds@schleef.org>
5954
5955         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
5956         bug #153882)
5957         * win32/gstenumtypes.h: same
5958
5959 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5960
5961         * gst/gstpad.c: (gst_pad_query):
5962           Do query on realized pad, similar to how convert/send_event handle
5963           this. Also makes sense, since this pad belongs to the function to
5964           which this query will be sent. Fixes #158163.
5965
5966 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
5967
5968         * docs/manual/appendix-programs.xml: fix pipeline to actually work
5969
5970 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5971
5972         * docs/faq/general.xml: fix pipeline to actually work
5973
5974 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5975
5976         * gst/gstvalue.c: (gst_value_deserialize_string):
5977           check that a simple string that gets deserialized does not contain
5978           invalid characters
5979         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5980           remove a test that tested a wring behaviour
5981
5982 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
5983
5984         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5985
5986         * docs/manual/intro-motivation.xml:
5987           Fix typos.
5988
5989 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
5990
5991         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5992
5993         * docs/gst/tmpl/gstprobe.sgml:
5994           Fix documentation of probe callback - it is supposed to return
5995           FALSE, not TRUE, to remove data from the stream (#159087).
5996
5997 2004-12-16  Daniel Gazard  <dany42@free.fr>
5998
5999         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6000
6001         * gst/gstelementfactory.c: (gst_element_factory_create):
6002           Fix compile failure if compiling without libxml2 support (#149936).
6003
6004 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6005
6006         * docs/manual/advanced-autoplugging.xml:
6007         * docs/manual/highlevel-components.xml:
6008           Move spider from autoplugging to components. Autoplugging is for
6009           internals, not for solutions. ;-).
6010
6011 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6012
6013         * docs/random/ds/0.9-suggested-changes:
6014           Make note on device/location/uri property names.
6015
6016 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6017
6018         * docs/manual/advanced-autoplugging.xml:
6019         * docs/manual/advanced-clocks.xml:
6020         * docs/manual/advanced-interfaces.xml:
6021         * docs/manual/advanced-metadata.xml:
6022         * docs/manual/advanced-position.xml:
6023         * docs/manual/advanced-schedulers.xml:
6024         * docs/manual/advanced-threads.xml:
6025         * docs/manual/appendix-gnome.xml:
6026         * docs/manual/appendix-programs.xml:
6027         * docs/manual/appendix-quotes.xml:
6028         * docs/manual/autoplugging.xml:
6029         * docs/manual/basics-bins.xml:
6030         * docs/manual/basics-data.xml:
6031         * docs/manual/basics-elements.xml:
6032         * docs/manual/basics-helloworld.xml:
6033         * docs/manual/basics-init.xml:
6034         * docs/manual/basics-pads.xml:
6035         * docs/manual/basics-plugins.xml:
6036         * docs/manual/bins-api.xml:
6037         * docs/manual/bins.xml:
6038         * docs/manual/buffers-api.xml:
6039         * docs/manual/buffers.xml:
6040         * docs/manual/clocks.xml:
6041         * docs/manual/components.xml:
6042         * docs/manual/cothreads.xml:
6043         * docs/manual/debugging.xml:
6044         * docs/manual/dparams-app.xml:
6045         * docs/manual/dynamic.xml:
6046         * docs/manual/elements-api.xml:
6047         * docs/manual/elements.xml:
6048         * docs/manual/factories.xml:
6049         * docs/manual/gnome.xml:
6050         * docs/manual/goals.xml:
6051         * docs/manual/helloworld.xml:
6052         * docs/manual/helloworld2.xml:
6053         * docs/manual/highlevel-components.xml:
6054         * docs/manual/highlevel-xml.xml:
6055         * docs/manual/init-api.xml:
6056         * docs/manual/intro-basics.xml:
6057         * docs/manual/intro-motivation.xml:
6058         * docs/manual/intro-preface.xml:
6059         * docs/manual/intro.xml:
6060         * docs/manual/links-api.xml:
6061         * docs/manual/links.xml:
6062         * docs/manual/manual.xml:
6063         * docs/manual/motivation.xml:
6064         * docs/manual/pads-api.xml:
6065         * docs/manual/pads.xml:
6066         * docs/manual/plugins-api.xml:
6067         * docs/manual/plugins.xml:
6068         * docs/manual/programs.xml:
6069         * docs/manual/queues.xml:
6070         * docs/manual/quotes.xml:
6071         * docs/manual/schedulers.xml:
6072         * docs/manual/states-api.xml:
6073         * docs/manual/states.xml:
6074         * docs/manual/threads.xml:
6075         * docs/manual/typedetection.xml:
6076         * docs/manual/win32.xml:
6077         * docs/manual/xml.xml:
6078           Try 2. This time, include a short preface as a "general
6079           introduction", also add code blocks around all code samples
6080           so they get compiled. We still need a way to tell readers
6081           the filename of the code sample. In some cases, don't show
6082           all code in the documentation, but do include it in the generated
6083           code. This allows for focussing on specific bits in the docs,
6084           while still having a full test application available.
6085         * examples/manual/Makefile.am:
6086           Fix up examples for new ADM. Add several of the new examples that
6087           were either added or were missing from the build system.
6088         * examples/manual/extract.pl:
6089           Allow nameless blocks.
6090
6091 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6092
6093         * docs/manual/elements-api.xml:
6094         * docs/manual/helloworld.xml:
6095         * examples/manual/extract.pl:
6096           fix last example.  Add example of adding code blocks that are not
6097           shown in docbook output.
6098
6099 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6100
6101         * docs/manual/dynamic.xml:
6102         * docs/manual/elements-api.xml:
6103         * docs/manual/gnome.xml:
6104         * docs/manual/helloworld2.xml:
6105         * docs/manual/init-api.xml:
6106         * docs/manual/queues.xml:
6107         * docs/manual/threads.xml:
6108         * docs/manual/xml.xml:
6109         * examples/manual/extract.pl:
6110           Make it possible to extract example code from separate blocks.
6111           Should make Ronald happy.
6112
6113 2004-12-15  Wim Taymans  <wim@fluendo.com>
6114
6115         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6116         (remove_from_group), (group_elements_set_visited),
6117         (normalize_group), (gst_opt_scheduler_iterate):
6118         Fix bug where a flag was not updated on a decoupled entry point 
6119         because we were just checking the group element list and decoupled
6120         elements are not in that list..
6121
6122 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6123
6124         * docs/manual/advanced-autoplugging.xml:
6125         * docs/manual/advanced-clocks.xml:
6126         * docs/manual/advanced-dparams.xml:
6127         * docs/manual/advanced-interfaces.xml:
6128         * docs/manual/advanced-metadata.xml:
6129         * docs/manual/advanced-position.xml:
6130         * docs/manual/advanced-schedulers.xml:
6131         * docs/manual/advanced-threads.xml:
6132         * docs/manual/appendix-debugging.xml:
6133         * docs/manual/appendix-gnome.xml:
6134         * docs/manual/appendix-programs.xml:
6135         * docs/manual/appendix-quotes.xml:
6136         * docs/manual/appendix-win32.xml:
6137         * docs/manual/autoplugging.xml:
6138         * docs/manual/basics-bins.xml:
6139         * docs/manual/basics-data.xml:
6140         * docs/manual/basics-elements.xml:
6141         * docs/manual/basics-helloworld.xml:
6142         * docs/manual/basics-init.xml:
6143         * docs/manual/basics-pads.xml:
6144         * docs/manual/basics-plugins.xml:
6145         * docs/manual/bins-api.xml:
6146         * docs/manual/bins.xml:
6147         * docs/manual/buffers-api.xml:
6148         * docs/manual/buffers.xml:
6149         * docs/manual/clocks.xml:
6150         * docs/manual/components.xml:
6151         * docs/manual/cothreads.xml:
6152         * docs/manual/debugging.xml:
6153         * docs/manual/dparams-app.xml:
6154         * docs/manual/dynamic.xml:
6155         * docs/manual/elements-api.xml:
6156         * docs/manual/elements.xml:
6157         * docs/manual/factories.xml:
6158         * docs/manual/gnome.xml:
6159         * docs/manual/goals.xml:
6160         * docs/manual/helloworld.xml:
6161         * docs/manual/helloworld2.xml:
6162         * docs/manual/highlevel-components.xml:
6163         * docs/manual/highlevel-xml.xml:
6164         * docs/manual/init-api.xml:
6165         * docs/manual/intro-motivation.xml:
6166         * docs/manual/intro-preface.xml:
6167         * docs/manual/intro.xml:
6168         * docs/manual/links-api.xml:
6169         * docs/manual/links.xml:
6170         * docs/manual/manual.xml:
6171         * docs/manual/motivation.xml:
6172         * docs/manual/pads-api.xml:
6173         * docs/manual/pads.xml:
6174         * docs/manual/plugins-api.xml:
6175         * docs/manual/plugins.xml:
6176         * docs/manual/programs.xml:
6177         * docs/manual/queues.xml:
6178         * docs/manual/quotes.xml:
6179         * docs/manual/schedulers.xml:
6180         * docs/manual/states-api.xml:
6181         * docs/manual/states.xml:
6182         * docs/manual/threads.xml:
6183         * docs/manual/typedetection.xml:
6184         * docs/manual/win32.xml:
6185         * docs/manual/xml.xml:
6186           First try at rewriting the ADM. Needs lotsamore work, but some
6187           parts might already be somewhat useful.
6188         * docs/pwg/advanced-interfaces.xml:
6189           Remove properties interface, it never actually existed (except for
6190           on my HD...).
6191
6192 2004-12-13  David Schleef  <ds@schleef.org>
6193
6194         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
6195         be NULL (bug #160220).
6196
6197 2004-12-13  David Schleef  <ds@schleef.org>
6198
6199         * configure.ac: remove all mmx stuff, because it's not used.
6200         * docs/random/ds/0.9-suggested-changes: additional notes
6201         * include/Makefile.am: we don't use these anymore
6202         * include/mmx.h: remove
6203         * include/sse.h: remove
6204
6205 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6206
6207         * docs/random/mimetypes:
6208           Add FOURCC code for h264 codec (VSSH)
6209           Add alternate FOURCC codes for h263 related codecs
6210
6211 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
6212
6213         * docs/manual/programs.xml:
6214           Added more gst-launch examples.
6215
6216 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6217
6218         * gst/gstqueue.c: (gst_queue_handle_src_query):
6219           Check for availability again.
6220
6221 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6222
6223         * gst/gstcaps.c: (gst_caps_compare_structures):
6224           Simple caps go first. This has the nice side-effect of fixing an
6225           obscure warning.
6226
6227 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6228
6229         * gst/gstversion.h.in:
6230           Protect header.
6231
6232 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6233
6234         * gst/schedulers/gstoptimalscheduler.c:
6235         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
6236         (gst_opt_scheduler_get_wrapper):
6237           When we're recursing into a chain run, only run the directly
6238           related group, not all queued ones. This will fix a possible
6239           deadlock in chains with more than two groups.
6240
6241 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6242
6243         * autogen.sh:
6244           remove patch if autopoint fails
6245
6246 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6247
6248         * docs/gst/gstreamer-sections.txt:
6249           Document Thomas' addition, fix build, make Luis the sheriff happy.
6250
6251 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
6252
6253         * gst/gstplugin.c:
6254         * gst/gstplugin.h:
6255           add accessor for version field
6256
6257 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6258
6259         submitted by: Luca Ferretti <elle.uca@infinito.it>
6260
6261         * po/LINGUAS:
6262         * po/it.po:
6263           New tranlation added: Italian
6264
6265 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6266
6267         * gst/gstpad.c: (gst_pad_is_negotiated),
6268         (gst_pad_get_negotiated_caps):
6269           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
6270           it doesn't actually check the contents), so be sure to hand it
6271           a RealPad else we'll crash.
6272
6273 2004-12-03  Wim Taymans  <wim@fluendo.com>
6274
6275         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
6276         (gst_queue_link), (gst_queue_handle_src_query):
6277         Reverted to 1.110 until this makes the testsuite and various
6278         apps work.
6279
6280 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
6281
6282         * docs/upload.mak: fix included CVS conflict strings
6283
6284 2004-12-01  William Jon McCann  <mccann@jhu.edu>
6285
6286         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6287
6288         * gst/gstelement.c: (gst_element_error_full):
6289           Use g_error_new_literal because error text may have
6290           percentage signs in it. Fixes #160019.
6291
6292 2004-12-01  Benjamin Otte  <otte@gnome.org>
6293
6294         * gst/elements/gstbufferstore.c:
6295         (gst_buffer_store_add_buffer_func):
6296           don't try to make subbuffers bigger than they can be. (fixes
6297           #159970)
6298
6299 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6300
6301         * docs/gst/gstreamer-sections.txt:
6302         * docs/gst/tmpl/gstvalue.sgml:
6303           Add new function to docs to fix build.
6304
6305 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6306
6307         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
6308         * gst/gstpad.c: (_gst_pad_default_fixate_value),
6309         (_gst_pad_default_fixate_foreach):
6310         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
6311         * gst/gstvalue.h:
6312           Deprecate _type_is_fixed, use _value_is_fixed instead, since
6313           in some cases (arrays), the fixedness depends on the content.
6314         * gst/gstqueue.c: (gst_queue_handle_src_query):
6315           Check for availability before doing something.
6316
6317 2004-11-29  Wim Taymans  <wim@fluendo.com>
6318
6319         * testsuite/threads/Makefile.am:
6320         * testsuite/threads/signals.c: (gst_test_get_type),
6321         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
6322         (gst_test_set_property), (gst_test_get_property),
6323         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
6324         (gst_test_do_prop), (run_thread), (main):
6325         Added a bunch of testcases that show threadsafety bugs in glib.
6326
6327 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
6328
6329         * docs/manual/programs.xml:
6330           Added a first batch of gst-launch examples, as provided by Ronald
6331           and others from the devel-mlist
6332
6333 2004-11-28  Benjamin Otte  <otte@gnome.org>
6334
6335         * gst/gstelement.c: (gst_element_negotiate_pads):
6336           simplify
6337         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
6338         (gst_value_serialize_string), (gst_value_deserialize_string):
6339           add unwrapping of previously wrapped strings. Fix bug in wrapping
6340           while at it.
6341         * testsuite/caps/value_serialize.c: (test1),
6342         (test_string_serialization), (test_string_deserialization), (main):
6343           add tests for string (de)serialization
6344
6345 2004-11-26  Wim Taymans  <wim@fluendo.com>
6346
6347         * testsuite/threads/159566.c: (object_deep_notify), (main):
6348         * testsuite/threads/Makefile.am:
6349         Added testsuite to show bug #159566
6350
6351 2004-11-25  Wim Taymans  <wim@fluendo.com>
6352
6353         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
6354         (gst_thread_child_state_change), (gst_thread_main_loop):
6355         Ref the thread object in the GThread mainloop. Break out of the
6356         thread mainloop if it holds the last ref. This properly exits
6357         the threads when disposing the thread from its own context. It
6358         also avoids possible deadlocks in the dispose function.
6359
6360 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
6361
6362         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
6363         it is necessary to wait.
6364
6365 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6366
6367         * docs/pwg/building-boiler.xml:
6368           Make description somewhat clearer.
6369
6370 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6371
6372         * docs/upload.mak:
6373           Apparently docs changed location on FDO's server.
6374
6375 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6376
6377         * docs/pwg/appendix-checklist.xml:
6378           Add some random notes on things to check when writing an element.
6379           This list can be extended as people see fit.
6380
6381 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
6382
6383         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
6384         (gst_queue_link_src): Allow for renegotiating the caps of the sink
6385         pad. The queue will now wait until it is empty and forward the new
6386         caps to the source.
6387         * gst/gstbin.c (gst_bin_set_element_sched)
6388         (gst_bin_unset_element_sched): Make sure that all elements and
6389         links are registered and unregistered with the scheduler exactly
6390         once. This elaborates on a fix by Benjamin Otte, but
6391         guarantees that decoupled elements are also registered.
6392
6393 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
6394
6395         * docs/manual/quotes.xml:
6396           add a quote
6397         * configure.ac:
6398         * gst/gst.c:
6399         * gst/gstinfo.c:
6400           add LIBDIR and move init message higher up so it's at the start
6401
6402 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
6403
6404         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
6405         * gstreamer.spec.in: add fair
6406
6407 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6408
6409         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6410         * gst/elements/gstidentity.c: (gst_identity_class_init):
6411           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
6412           <teuf@gnome.org> (#157263).
6413         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
6414         (gst_type_find_handle_src_query):
6415           Subtract size of internally stored data from position queries.
6416
6417 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
6418
6419         * gst/schedulers/fairscheduler.c:
6420         * gst/schedulers/faircothreads.c:
6421         * gst/schedulers/faircothreads.h:
6422         New cothread based scheduler: Fair scheduler.
6423         * gst/schedulers/gthread-cothreads.h: 
6424         Add the standard #if around the whole file.
6425         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
6426         compilation of the functions defined in this file. This is
6427         necessary to be able to use this file as a normal header.
6428         * gst/schedulers/Makefile.am: Add compiling support for fair
6429         scheduler.
6430         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
6431         scheduler cothreads layer from documentation generation.
6432
6433 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6434
6435         * gst/autoplug/gstspideridentity.c:
6436         (gst_spider_identity_sink_loop_type_finding):
6437           Don't crash if that function is not implemented.
6438
6439 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6440
6441         * docs/pwg/advanced-types.xml:
6442           Another typo.
6443
6444 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6445
6446         * docs/pwg/intro-preface.xml:
6447           Hm, ok, so the brackets weren't really useful...
6448         * docs/pwg/other-ntoone.xml:
6449           Fix embarassing typo.
6450
6451 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6452
6453         * docs/pwg/intro-preface.xml:
6454           Rewrite preface.
6455
6456 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6457
6458         * docs/pwg/advanced-scheduling.xml:
6459         * docs/pwg/advanced-tagging.xml:
6460         * docs/pwg/advanced-types.xml:
6461         * docs/pwg/building-boiler.xml:
6462         * docs/pwg/building-chainfn.xml:
6463         * docs/pwg/building-signals.xml:
6464         * docs/pwg/building-state.xml:
6465         * docs/pwg/building-testapp.xml:
6466         * docs/pwg/intro-basics.xml:
6467         * docs/pwg/other-manager.xml:
6468         * docs/pwg/other-source.xml:
6469           Typo fixes.
6470         * docs/pwg/other-manager.xml:
6471           Add some first content. No example code yet.
6472         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
6473           Remove double newlines.
6474
6475 2004-11-04  Wim Taymans  <wim@fluendo.com>
6476
6477         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6478         (remove_from_group), (normalize_group), (group_migrate_connected),
6479         (gst_opt_scheduler_iterate):
6480         * testsuite/schedulers/.cvsignore:
6481         * testsuite/schedulers/Makefile.am:
6482         * testsuite/schedulers/queue_link.c: (main):
6483         Added testcase for scheduler segfault.
6484         Fix scheduler segfault when removing a decoupled
6485         entry point as the last element from a group.
6486
6487 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6488
6489         * gst/gstmarshal.list: add missing marshaller, fixes build
6490
6491 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6492
6493         * docs/random/signal: added notes about using BOXED for GstBuffer
6494         signal marshallers, not POINTER
6495
6496 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6497
6498         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6499         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
6500         POINTER=>BOXED changes to marshal GstBuffers
6501
6502 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6503
6504         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
6505         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
6506
6507 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
6508
6509         * docs/gst/gstreamer-sections.txt:
6510         * docs/gst/tmpl/gstcaps.sgml:
6511         * docs/gst/tmpl/gsterror.sgml:
6512         * docs/gst/tmpl/gstinfo.sgml:
6513         * docs/gst/tmpl/gstmacros.sgml:
6514         * docs/gst/tmpl/gstutils.sgml:
6515         * docs/random/ensonic/interfaces.txt:
6516         * gst/gstinfo.h:
6517           added some more docs, removed two obsolete defines
6518
6519 2004-11-02  Kjartan Maraas <as at gnome.org>
6520
6521         reviewed by: Wim Taymans, Ronald Bultje.
6522
6523         * gst/cothreads.c: (cothread_create):
6524         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
6525         (gst_bin_child_state_change_func):
6526         * gst/gstbuffer.c: (gst_buffer_span):
6527         * gst/gstelement.c: (gst_element_get_index),
6528         (gst_element_get_event_masks), (gst_element_get_query_types),
6529         (gst_element_get_formats):
6530         * gst/gsterror.c: (_gst_core_errors_init),
6531         (_gst_library_errors_init), (_gst_resource_errors_init),
6532         (_gst_stream_errors_init):
6533         * gst/gstobject.c: (gst_object_default_deep_notify):
6534         * gst/gstpad.c: (gst_pad_get_event_masks),
6535         (gst_pad_get_internal_links_default):
6536         * gst/gstplugin.c: (gst_plugin_register_func),
6537         (gst_plugin_get_module):
6538         * gst/gststructure.c: (gst_structure_get_string),
6539         (gst_structure_get_abbrs), (gst_structure_from_abbr),
6540         (gst_structure_to_abbr):
6541         * gst/gstutils.c: (gst_print_element_args):
6542         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6543         (setup_group_scheduler), (gst_opt_scheduler_iterate):
6544         Aplied part of patch #157127: Cleanup of issues reported by 
6545         sparse.
6546         Also do not try to use cothreads when there is no cothread
6547         context yet.
6548
6549 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
6550
6551         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6552         (gst_opt_scheduler_iterate):
6553         Applied patch #154061. Running a pipeline in which an element 
6554         calls GST_ELEMENT_ERROR in the chain function, the opt 
6555         scheduler doesn't unref the chain so it never gets freed.
6556
6557 2004-11-02  Wim Taymans  <wim@fluendo.com>
6558
6559         * gst/gststructure.c: (gst_structure_get_abbrs),
6560         (gst_structure_from_abbr), (gst_structure_to_abbr):
6561         Remove that ugly if-then thing in the code that converts
6562         between strings and types.
6563
6564 2004-11-02  Wim Taymans  <wim@fluendo.com>
6565
6566         * gst/gstscheduler.c: (gst_scheduler_add_element),
6567         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
6568         Aplied clock distribution patch, this should fix bug
6569         #148787.
6570
6571 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
6572
6573         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
6574
6575         * po/LINGUAS:
6576         * po/nb.po:
6577           Added Norwegian Bokmaal translation
6578
6579 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6580
6581         * tools/gst-inspect.c: (print_signal_info):
6582           print signal arguments as pointers if they are
6583
6584 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
6585
6586         * docs/pwg/building-boiler.xml:
6587           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
6588
6589 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6590
6591         * gst/parse/parse.l:
6592         * testsuite/parse/parse1.c: (main):
6593         Since parse can do 'element name=a:b' make 'a:b.' work as
6594         well. 
6595         Added testcase to verify fix.
6596
6597 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6598
6599         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
6600         Use the realpad when printing the direction.
6601         Add extra \n when printing extensions of typefind factories.
6602
6603 2004-10-13  David Schleef  <ds@schleef.org>
6604
6605         * examples/manual/Makefile.am: $< isn't portable in Makefile
6606         rules.
6607
6608 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
6609
6610         * docs/gst/tmpl/gstobject.sgml:
6611         * docs/gst/tmpl/gstplugin.sgml:
6612         * docs/gst/tmpl/gstpluginfeature.sgml:
6613         * docs/gst/tmpl/gstregistry.sgml:
6614         * docs/gst/tmpl/gstversion.sgml:
6615         * gst/gstbin.c:
6616           more api documentation
6617         * gst/gstplugin.c: (gst_plugin_register_func),
6618         (gst_plugin_check_file), (gst_plugin_load_file):
6619           better error signaling and logging
6620
6621 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6622
6623         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
6624           Subtract current queue contents from position queries.
6625
6626 2004-10-11  Johan Dahlin  <johan@gnome.org>
6627
6628         * gst/gsturi.c (gst_uri_get_location): unescape string
6629         (gst_uri_construct): escape string.
6630
6631 2004-10-11  Benjamin Otte  <otte@gnome.org>
6632
6633         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
6634         (gst_pad_try_set_caps_nonfixed):
6635           allow renegotiation of unconnected pads (as inside spider). Simply
6636           return OK if unconnected - mimic try_set_caps there.
6637
6638 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6639
6640         * gst/gstbin.c: (gst_bin_sync_children_state):
6641           Add missing break.
6642
6643 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6644
6645         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
6646         Set element to EOS before sending EOS event
6647
6648 2004-10-08  Wim Taymans  <wim at fluendo dot com>
6649
6650         * gst/elements/gsttypefindelement.c:
6651         (gst_type_find_element_handle_event):
6652         Handle EOS events when doing the transition from
6653         typefind to data passing. This should fix the
6654         infinite loops in short files.
6655
6656 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6657
6658         * gst/gstthread.c: (gst_thread_change_state),
6659         (gst_thread_child_state_change):
6660         Make sure no iteration happens while performing
6661         the state change as it could mess up the internal
6662         consistency of the thread state.
6663
6664 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6665
6666         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
6667         (gst_thread_change_state), (gst_thread_child_state_change):
6668         Do not try to grab the iterate lock in the state change method
6669         when we are in the same thread as the iterate or else we
6670         could deadlock. Some other cleanups.
6671
6672 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6673
6674         * configure.ac:
6675           bump nano to cvs
6676
6677 === release 0.8.7 ===
6678
6679 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6680
6681         * configure.ac:
6682         * NEWS:
6683         * RELEASE:
6684         * configure.ac:
6685           releasing 0.8.7, "A Cruise"
6686
6687 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6688
6689         * docs/random/mimetypes:
6690         Add an entry for Sony ATRAC3 audio format with mime-type
6691         used by rmdemux et riff-read
6692
6693 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6694
6695         * gst/elements/gsttypefindelement.c: (stop_typefinding):
6696         Push the buffer store instead of clearing it in case that
6697         the stream is not seekable.
6698
6699 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6700
6701         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
6702         (gst_thread_main_loop):
6703         Lock the iteration and the state change so that automatic
6704         negotiation and fixation does not happen at the same time
6705         as the in stream negotiation.
6706
6707 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6708
6709         * configure.ac:
6710           bump nano to cvs
6711
6712 === release 0.8.6 ===
6713
6714 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6715
6716         * configure.ac:
6717         * NEWS:
6718         * RELEASE:
6719         * configure.ac:
6720           releasing 0.8.6, "Narc"
6721
6722 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6723
6724         * configure.ac:
6725           prerel bump
6726
6727 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6728
6729         patch by: Steve Lhomme
6730
6731         * gst/elements/gstfakesrc.c:
6732         * gst/elements/gstidentity.c:
6733         * gst/gstthread.c:
6734           Fix for #153881
6735
6736 2004-10-01  Wim Taymans  <wim at fluendo dot com>
6737
6738         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
6739         Fix threadsafety of the crc checking function.
6740
6741 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6742
6743         patch by: Ronald Bultje
6744
6745         * gst/elements/gsttypefindelement.c: (stop_typefinding),
6746         (gst_type_find_element_handle_event),
6747         (gst_type_find_element_chain):
6748         * gst/elements/gsttypefindelement.h:
6749          #153657.
6750          Filter out discont event from seekable sources when typefind
6751          asks them to seek.  Fixes typefind with demuxers for
6752          avi, asf and matroska.
6753
6754 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6755
6756         * docs/gst/gstreamer-sections.txt:
6757         * gst/gstcaps.c:
6758         * gst/gstcaps.h:
6759         * gst/gstpad.c:
6760           Revert preferred caps: (#147789)
6761
6762 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
6763
6764         * win32/dirent.c:
6765           fix a memory leak
6766
6767 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6768
6769         * configure.ac:
6770           bump for prerelease
6771
6772 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6773
6774         * docs/Makefile.am:
6775         * docs/manual/elements-api.xml:
6776           restructure so that common stuff is shown first
6777         * docs/manual/init-api.xml:
6778           convert to examples
6779         * docs/manual/manual.xml:
6780         * docs/manuals.mak:
6781         * docs/url.entities:
6782           link to API on the website, possibly override later in build
6783         * examples/manual/.cvsignore:
6784           ignore more
6785         * examples/manual/Makefile.am:
6786           add more examples
6787         * examples/manual/extract.pl:
6788           error out on failure
6789
6790 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6791
6792         * docs/gst/tmpl/gstthread.sgml:
6793         * docs/manual/init-api.xml:
6794         * examples/manual/Makefile.am:
6795           convert two code bits to examples
6796
6797 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6798
6799         * gst/gstelement.c: (gst_element_change_state):
6800           Well, actually, I was about to remove this insane assert when
6801           I noticed Wim already did that. A warning is nice so we can
6802           fix actual ugs (using --g-fatal-warnings and backtraces), so
6803           I added that instead.
6804
6805 2004-09-06  Wim Taymans  <wim@fluendo.com>
6806
6807         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
6808         (gst_element_threadsafe_properties_post_run),
6809         (gst_element_set_state), (gst_element_change_state):
6810         Added extra refcounting around various places. 
6811
6812 2004-09-06  Wim Taymans  <wim@fluendo.com>
6813
6814         * gst/gstpad.c: (gst_pad_link_call_link_functions):
6815         Fix debug info.
6816
6817 2004-09-06  Wim Taymans  <wim@fluendo.com>
6818
6819         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6820         (remove_from_group):
6821         Some more debug info.
6822
6823 2004-09-03  Wim Taymans  <wim@fluendo.com>
6824
6825         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
6826         (gst_fakesrc_init), (gst_fakesrc_set_clock),
6827         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
6828         (gst_fakesrc_get), (gst_fakesrc_change_state):
6829         * gst/elements/gstfakesrc.h:
6830         * gst/elements/gstidentity.c: (gst_identity_class_init),
6831         (gst_identity_init), (gst_identity_chain),
6832         (gst_identity_set_property), (gst_identity_get_property),
6833         (gst_identity_change_state):
6834         * gst/elements/gstidentity.h:
6835         Added datarate properties to limit the datarate.
6836
6837 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6838
6839         * gst/autoplug/gstspider.c: (plugin_init):
6840           don't set a rank. We don't want to autoplug by inserting spiders.
6841
6842 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6843
6844         * gst/autoplug/gstspider.c: (gst_spider_class_init),
6845         (gst_spider_identity_plug):
6846           add a template for spider's sink
6847         * gst/gst.c: (gst_register_core_elements):
6848           queue's rank should be NULL, we don't want spider to add it.
6849
6850 2004-08-18  David Schleef  <ds@schleef.org>
6851
6852         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
6853         * docs/libs/Makefile.am: same
6854         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
6855         * docs/random/ds/0.9-planning: random additions
6856         * docs/random/ds/0.9-suggested-changes: same
6857         * gst/gstxml.h: remove vestigal GstXMLNs definition
6858
6859         Preferred caps: (#147789)
6860         * docs/gst/gstreamer-sections.txt: Add symbols
6861         * docs/gst/tmpl/gstcaps.sgml: Add symbols
6862         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
6863         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
6864         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
6865         (gst_caps_get_preferred), (gst_caps_set_preferred),
6866         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
6867         (gst_caps_use_preferred): Handle caps preferences
6868         * gst/gstcaps.h: Add caps preferences
6869         * gst/gstpad.c: (gst_pad_link_get_preferred),
6870         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
6871         (gst_pad_renegotiate), (gst_pad_guess_preferred),
6872         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
6873         negotiation.
6874
6875 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6876
6877         * gst/autoplug/gstspideridentity.c:
6878         (gst_spider_identity_request_new_pad):
6879         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
6880         (gst_aggregator_init):
6881         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
6882         (gst_fakesink_init):
6883         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
6884         (gst_fakesrc_init):
6885         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
6886         (gst_fdsink_init):
6887         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
6888         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
6889         (gst_filesink_init):
6890         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
6891         (gst_filesrc_init):
6892         * gst/elements/gstidentity.c: (gst_identity_base_init),
6893         (gst_identity_init):
6894         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
6895         (gst_multifilesrc_init):
6896         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
6897         (gst_pipefilter_init):
6898         * gst/elements/gststatistics.c: (gst_statistics_base_init),
6899         (gst_statistics_init):
6900         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
6901         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
6902           s/gst_pad_new/&_from_template/
6903           register pad templates in the base_init function
6904           add static pad template definitions
6905
6906 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6907
6908         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
6909         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
6910         * testsuite/refcounting/pad.c: (main):
6911         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
6912           s/gst_pad_new/&_from_template/
6913           prepare deprecation of gst_pad_new
6914
6915 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
6916
6917         patch by: Luca Ognibene <skaboy81@virgilio.it>
6918
6919         * gst/gstcaps.c:
6920         * gst/gstelement.c:
6921         * gst/gstpad.c:
6922         * gst/gstxml.c:
6923           fix memleaks.  Fixes #150001
6924
6925 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6926
6927         * docs/random/ds/0.9-suggested-changes:
6928           add notes - mostly about pad templates
6929
6930 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
6931
6932         * win32/GStreamer.vcproj:
6933           temporary locale files are .gmo not .mo
6934
6935 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6936
6937         * configure.ac: bump nano to cvs
6938
6939 === release 0.8.5 ===
6940
6941 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6942
6943         * configure.ac:
6944           releasing 0.8.5, "Stuttgart"
6945         * NEWS:
6946         * RELEASE:
6947         * configure.ac:
6948         * docs/random/release:
6949           updates for release
6950
6951 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6952
6953         patch by: Wim Taymans (wim@fluendo.com)
6954
6955         * gst/gstbuffer.c:
6956         * gst/gstindex.h:
6957         * libs/gst/dataprotocol/dataprotocol.c:
6958           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
6959
6960 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6961
6962         * Makefile.am:
6963         * win32/MANIFEST:
6964           add win32 dir to the build.  Fixes #149981.
6965
6966 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6967
6968         * configure.ac:
6969           bump libtool versioning
6970         * gst/gststructure.c:
6971           mark function as static
6972         * po/af.po:
6973         * po/az.po:
6974         * po/ca.po:
6975         * po/cs.po:
6976         * po/en_GB.po:
6977         * po/fr.po:
6978         * po/nl.po:
6979         * po/sq.po:
6980         * po/sr.po:
6981         * po/sv.po:
6982         * po/tr.po:
6983         * po/uk.po:
6984           translations update
6985         * win32/README.txt:
6986           trademark protection
6987
6988 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6989
6990         * configure.ac:
6991           fix GST_ORIGIN
6992           set GST_PACKAGE to source, and distinguish between release and other
6993         * tools/gst-inspect.c:
6994           print out plugin an element factory is part of so we see this info
6995
6996 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6997
6998         * docs/gst/gstreamer-sections.txt:
6999         * docs/gst/tmpl/gstbuffer.sgml:
7000         * docs/gst/tmpl/gstschedulerfactory.sgml:
7001           reorder docs a little, make GstBuffer's more sensible.
7002         * gst/gstbuffer.h:
7003           API: added GST_BUFFER_FLAG_DELTA_UNIT
7004         * gst/gstscheduler.c:
7005           comment API addition
7006
7007 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7008
7009         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
7010           work with non-regular files that can be mmapped (like /dev/zero)
7011         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
7012           get rid of typefinds that require a seek when we can't seek instead
7013           of trying them over and over again
7014         * tools/gst-launch.c: (idle_func), (error_cb), (main):
7015           return non-zero failure value when the pipeline was interrupted or
7016           an error occurred
7017
7018 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
7019
7020         * win32/config.h:
7021         * win32/GStreamer.vcproj:
7022           compile and install the locales
7023
7024 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
7025
7026         * gst/gstvalue.c:
7027           fix a possible memory leak under Windows
7028
7029 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
7030
7031         * win32/GStreamer.vcproj:
7032           fix a memory leak that occured under Windows
7033         * win32/gstreamer.def:
7034           add gst_scheduler_register
7035
7036 2004-08-11  Benjamin Otte  <otte@gnome.org>
7037
7038         * docs/gst/gstreamer-sections.txt:
7039         * gst/gstscheduler.c: (gst_scheduler_register):
7040         * gst/gstscheduler.h:
7041           API:
7042           add gst_scheduler_register shortcut similar to gst_element_register
7043         * gst/schedulers/entryscheduler.c: (plugin_init):
7044         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
7045         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
7046           use it
7047
7048 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
7049
7050         * gst/gstvalue.h:
7051           fix a memory leak that occured under Windows
7052
7053 2004-08-10  Colin Walters  <walters@redhat.com>
7054
7055         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
7056         Don't use O_EXCL to open temporary registry.  It will prevent
7057         registry creation if a temporary one already exists, which
7058         is unnecessary.
7059
7060 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7061
7062         * docs/gst/gstreamer-sections.txt:
7063         * docs/gst/tmpl/gstvalue.sgml:
7064           remove some valuable stuff from the documentation due to the use of GST_EXPORT
7065
7066 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7067
7068         * win32/gstbytestream.vcproj:
7069         * win32/gstelements.vcproj:
7070         * win32/gstgetbits.vcproj:
7071         * win32/gst-inspect.vcproj:
7072         * win32/gst-launch.vcproj:
7073         * win32/gstoptimalscheduler.vcproj:
7074         * win32/GStreamer.vcproj:
7075         * win32/gst-register.vcproj:
7076         * win32/gstspider.vcproj:
7077           update the include and lib dirs to fit standard libraries as
7078           described in the Win32 manual
7079
7080 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7081
7082         * win32/config.h:
7083         * win32/gstversion.h:
7084           enable NLS again, push the version number for the coming 0.8.5 release
7085
7086 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7087
7088         * gst/gstvalue.h:
7089           export gst_type_XXX for windows DLLs
7090
7091 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7092
7093         * docs/faq/gst-uninstalled:
7094           fix PKG_CONFIG_PATH and PYTHONPATH
7095         * gst/schedulers/Makefile.am:
7096           cleanup
7097         * libs/gst/bytestream/bytestream.c:
7098           remove newline
7099         * po/LINGUAS:
7100         * po/sq.po:
7101           adding Albanian translation (Laurent Dhima)
7102         * po/cs.po:
7103           updated
7104
7105 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7106
7107         * po/ca.po:
7108         * po/sv.po:
7109           updated translations
7110
7111 2004-08-04  Benjamin Otte  <otte@gnome.org>
7112
7113         * tests/mass_elements.c: (main):
7114           allow specifying src and sink element explicitly, so I can test
7115           videotestsrc instead of fakesrc
7116
7117 2004-08-04  Benjamin Otte  <otte@gnome.org>
7118
7119         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
7120         (gst_structure_id_empty_new), (gst_structure_empty_new),
7121         (gst_structure_copy):
7122           add gst_structure_id_empty_new_with_size to allow preallocating
7123           value array sizes. Use this in gst_structure_copy to get rid of
7124           reallocs.
7125           don't do quark=>string=>quark when copying structures
7126
7127 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
7128
7129         * docs/manual/win32.xml:
7130         * win32/README.txt:
7131           update documentation with the clean version of dependencies
7132
7133 2004-08-03  Benjamin Otte  <otte@gnome.org>
7134
7135         * gst/schedulers/entryscheduler.c:
7136         (gst_entry_scheduler_remove_element):
7137           fix for GST_DISABLE_DEBUG
7138         * tools/gst-launch.c: (print_tag):
7139           fixes for G_DISABLE_ASSERT
7140
7141 2004-08-03  Benjamin Otte  <otte@gnome.org>
7142
7143         * gst/gst.c: (gst_register_core_elements):
7144           fix for G_DISABLE_ASSERT
7145         * gst/gstinfo.c: (__gst_in_valgrind):
7146           add for GST_DISABLE_DEBUG
7147
7148 2004-08-03  Benjamin Otte  <otte@gnome.org>
7149
7150         * gst/parse/parse.l:
7151           fix for G_DISABLE_ASSERT
7152
7153 2004-08-03  Wim Taymans  <wim@fluendo.com>
7154
7155         * gst/gstbin.c: (gst_bin_get_type),
7156         (gst_bin_child_state_change_func):
7157         * gst/gstthread.c: (gst_thread_change_state):
7158         Backported some debug logging from a reverted patch
7159         Don't try to destroy the thread twice. Added some more
7160         debugging in GstThread. Unlock and signal even if we
7161         are in the thread context.
7162
7163 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7164
7165         * po/uk.po:
7166           updated translation
7167
7168 2004-07-30  David Schleef  <ds@schleef.org>
7169
7170         * gst/gstatomic_impl.h: Enable atomic code for x86_64
7171
7172 2004-07-29  David Schleef  <ds@schleef.org>
7173
7174         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
7175         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
7176
7177 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
7178
7179         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7180         (gst_bin_add_func), (gst_bin_remove_func),
7181         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
7182         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
7183         (gst_bin_change_state_norecurse), (gst_bin_dispose),
7184         (gst_bin_sync_children_state):
7185         * gst/gstbin.h:
7186         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
7187         (gst_thread_change_state):
7188         * testsuite/states/Makefile.am:
7189           revert state change patches as agreed so we can rework them
7190           gradually
7191
7192 2004-07-29  Benjamin Otte  <otte@gnome.org>
7193
7194         * libs/gst/control/Makefile.am:
7195           link to libgstreamer (fixes Debian bug 262019, see
7196           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
7197
7198 2004-07-29  Wim Taymans  <wim@fluendo.com>
7199
7200         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
7201         (check_from_fraction_convert), (transform_test), (main):
7202         Make the test less pedantic about float roundoff errors.
7203
7204 2004-07-29  Benjamin Otte  <otte@gnome.org>
7205
7206         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
7207         (gst_filesrc_srcpad_event):
7208           make seek events to before start/after end of file not fail, but
7209           seek to start/end instead
7210         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
7211           add more output
7212
7213 2004-07-29  Benjamin Otte  <otte@gnome.org>
7214
7215         * gst/gstpad.c: (gst_pad_set_explicit_caps):
7216           check that caps are fixed
7217         * gst/gstpad.c: (gst_pad_template_new):
7218           don't try to simplify caps, costs too much time on gst_init
7219         * gst/gstplugin.c: (gst_plugin_add_feature):
7220           G_ERROR if features are added twice
7221         * gst/gsttypefind.c: (gst_type_find_register):
7222         * gst/gstelementfactory.c: (gst_element_register):
7223           don't add features twice
7224         * docs/random/ds/0.9-suggested-changes:
7225           add note about possible gst_init optimization
7226
7227 2004-07-28  David Schleef  <ds@schleef.org>
7228
7229         * testsuite/elements/Makefile.am:
7230         * testsuite/elements/struct_i386.h:
7231         * testsuite/elements/struct_size.c: (main):  A little test
7232         to keep distcheck from working if someone changes a structure
7233         size accidentally.
7234
7235 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7236
7237         * docs/libs/Makefile.am:
7238         * docs/libs/gstreamer-libs-docs.sgml:
7239         * docs/libs/gstreamer-libs-sections.txt:
7240         * docs/libs/tmpl/gstbytestream.sgml:
7241         * docs/libs/tmpl/gstcontrol.sgml:
7242         * docs/libs/tmpl/gstdataprotocol.sgml:
7243         * docs/libs/tmpl/gstgetbits.sgml:
7244         * libs/gst/bytestream/Makefile.am:
7245         * libs/gst/bytestream/bytestream.c:
7246         * libs/gst/bytestream/bytestream.h:
7247         * libs/gst/control/Makefile.am:
7248         * libs/gst/dataprotocol/Makefile.am:
7249         * libs/gst/getbits/Makefile.am:
7250         * libs/gst/getbits/getbits.h:
7251           various doc and style fixes, adding bytestream to libs docs.
7252
7253 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7254
7255         * docs/gst/gstreamer-docs.sgml:
7256         * docs/libs/Makefile.am:
7257         * docs/libs/gstreamer-libs-docs.sgml:
7258         * docs/libs/gstreamer-libs-sections.txt:
7259         * libs/gst/control/dparam.c:
7260           more doc fixes.  gst-libs docs now build the same way as gst.
7261
7262 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7263
7264         * configure.ac:
7265         * testsuite/Makefile.am:
7266         * testsuite/bins/Makefile.am:
7267         * testsuite/caps/Makefile.am:
7268         * testsuite/cleanup/Makefile.am:
7269         * testsuite/clock/Makefile.am:
7270         * testsuite/debug/Makefile.am:
7271         * testsuite/dlopen/Makefile.am:
7272         * testsuite/dynparams/Makefile.am:
7273         * testsuite/elements/.cvsignore:
7274         * testsuite/elements/Makefile.am:
7275         * testsuite/enumcaps/Makefile.am:
7276         * testsuite/enumcaps/enumcaps.c:
7277         * testsuite/ghostpads/Makefile.am:
7278         * testsuite/indexers/Makefile.am:
7279         * testsuite/negotiation/Makefile.am:
7280         * testsuite/parse/Makefile.am:
7281         * testsuite/plugin/Makefile.am:
7282         * testsuite/refcounting/Makefile.am:
7283         * testsuite/schedulers/.cvsignore:
7284         * testsuite/states/Makefile.am:
7285         * testsuite/tags/Makefile.am:
7286         * testsuite/threads/Makefile.am:
7287           fold enumcaps into caps dir
7288           clean up Makefile.am's for testsuite
7289
7290 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7291
7292         * docs/gst/Makefile.am:
7293         * docs/libs/Makefile.am:
7294           clean up docs build.  Fixes needless rebuilding of template files.
7295
7296 2004-07-28  Wim Taymans  <wim@fluendo.com>
7297
7298         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
7299         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
7300         Make sure that a bin state change tries to keep the children
7301         in sync. 
7302         Added debug logging to the thread.
7303
7304 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
7305
7306         * win32/GStreamer.vcproj:
7307         * win32/gstreamer.def:
7308           more exports for the plugins
7309
7310 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
7311
7312         * win32/gstgetbits.vcproj:
7313         * win32/gstgetbits.def:
7314         * win32/msvc71.sln:
7315           add support for the getbits plugin
7316
7317 2004-07-27  Wim Taymans  <wim@fluendo.com>
7318
7319         * gst/gstvalue.c: (gst_value_transform_double_fraction),
7320         (gst_value_transform_fraction_double), (_gst_value_initialize):
7321         * testsuite/caps/Makefile.am:
7322         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
7323         (check_from_fraction_convert), (transform_test), (main):
7324         Added transform functions between double and fraction.
7325         Added testcase to verify transforms
7326
7327 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7328
7329         * win32/GStreamer.vcproj:
7330           rename GStreamer-0.8.lib to libgstreamer.lib
7331
7332 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7333
7334         * win32/gstelements.vcproj:
7335         * win32/gstoptimalscheduler.vcproj:
7336           fixes for the Release build
7337
7338 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7339
7340         * win32/config.h:
7341           update the version number
7342
7343 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7344
7345         * win32/GStreamer.vcproj:
7346           add gstinterface to the build
7347
7348 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7349
7350         * win32/gstreamer.def:
7351           add many definitions needed by plugins,
7352           GST_CAT_DEFAULT only available in the Debug build ?
7353
7354 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7355
7356         * gst/gstelement.c: (gst_element_set_eos_recursive):
7357           various whitespace fixes.
7358           doc fix, fixes #148497
7359
7360 2004-07-25  Benjamin Otte  <otte@gnome.org>
7361
7362         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
7363           don't delay links on the sink elements, it causes unnegotiated
7364           links.
7365         * gst/elements/gsttypefindelement.c:
7366         (gst_type_find_element_base_init):
7367           add our padtemplates, we indeed do have some.
7368         * gst/elements/gsttypefindelement.c:
7369         (gst_type_find_element_handle_event),
7370         (gst_type_find_element_chain):
7371           don't push data when typefinding failed.
7372         * gst/gstpad.c: (gst_pad_link_fixate):
7373           check that no fixate function returns empty caps.
7374         * gst/gstpad.c: (gst_pad_push):
7375           check that the link is negotiated before data gets pushed.
7376         * tools/gst-register.c: (main):
7377           don't assert (fixes #148283)
7378
7379 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7380
7381         * docs/gst/gstreamer-sections.txt:
7382         * docs/gst/tmpl/gstconfig.sgml:
7383           add GST_PLUGIN_EXPORT definition
7384
7385 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7386
7387         * gst/gstplugin.h:
7388         * gst/gstconfig.h.in:
7389         * win32/gstconfig.h:
7390         * win32/gstelements.def:
7391         * win32/gstelements.vcproj:
7392         * win32/gstoptimalscheduler.def:
7393         * win32/gstoptimalscheduler.vcproj:
7394         * win32/gstspider.def:
7395         * win32/gstspider.vcproj:
7396           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
7397
7398 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7399
7400         * docs/gst/gstreamer-sections.txt:
7401           remove GST_CAT_DEFAULT because the type has changed
7402
7403 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7404
7405         * win32/gstbytestream.vcproj:
7406         * win32/gstelements.vcproj:
7407         * win32/gst-inspect.vcproj:
7408         * win32/gst-launch.vcproj:
7409         * win32/gstoptimalscheduler.vcproj:
7410         * win32/GStreamer.vcproj:
7411         * win32/gst-register.vcproj:
7412         * win32/gstspider.vcproj:
7413         * win32/msvc71.sln:
7414           Copy the files where needed after building, The testsuite will be
7415           built separately
7416
7417 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7418
7419         * win32/config.h:
7420         * win32/README.txt:
7421         * docs/manual/win32.xml:
7422         Fixed the plugin and GStreamer location
7423
7424 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7425
7426         * win32/gstreamer.def:
7427         More exports for the plugins
7428
7429 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7430
7431         * gst/gstinfo.h:
7432         Marc was right, we need to export literally GST_CAT_DEFAULT
7433
7434 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7435
7436         * win32/config.h:
7437         NLS crashes in gettext, disabled until this is solved
7438
7439 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7440
7441         * win32/gst-inspect.vcproj:
7442         * win32/gst-launch.vcproj:
7443         Should use NLS when available
7444
7445 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7446
7447         * gst/registries/gstxmlregistry.c:
7448         removing the file doesn't seem to be a good idea on Linux
7449
7450 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7451
7452         * gst/registries/gstxmlregistry.c:
7453         Remove the registry before renaming the tempfile (needed for Windows)
7454
7455 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7456
7457         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
7458         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
7459         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
7460         * gst/elements/gstmultifilesrc.h:
7461         Added newmedia property so it generates newmedia events between each
7462         file when property is set, as well as fixed eos handling
7463
7464 2004-07-22  David Schleef  <ds@schleef.org>
7465
7466         * gst/gststructure.c: (gst_structure_id_empty_new),
7467         (gst_structure_empty_new):  Set type field correctly.
7468         * gst/gststructure.h: Check type field correctly.
7469         * testsuite/caps/Makefile.am:
7470         * testsuite/caps/structure.c: (test1), (main): Add a very small
7471         test for structures.
7472
7473 2004-07-22  David Schleef  <ds@schleef.org>
7474
7475         * docs/random/ds/0.9-suggested-changes: more comments
7476         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
7477
7478 2004-07-22  Benjamin Otte  <otte@gnome.org>
7479
7480         * gst/gstelementfactory.c: (gst_element_register):
7481           set the factory in the class struct, so gst_element_get_factory
7482           actually works
7483         * gst/parse/grammar.y:
7484           set element to playing when it gets unlocked as we can't rely on the
7485           bin state - all elements in the bin state might still be locked in
7486           NULL)
7487
7488 2004-07-22  Benjamin Otte  <otte@gnome.org>
7489
7490         * gst/gstelement.c: (gst_element_set_state_func):
7491           make this a static function
7492
7493 2004-07-22  Wim Taymans  <wim@fluendo.com>
7494
7495         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
7496         (gst_opt_scheduler_pad_link):
7497         fix 147894-2 and the group_link problem.
7498
7499 2004-07-22  Wim Taymans  <wim@fluendo.com>
7500
7501         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7502         (handoff_identity), (main):
7503         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7504         (handoff_identity), (main):
7505         * testsuite/schedulers/Makefile.am:
7506         * testsuite/schedulers/group_link.c: (main):
7507         Show bug in scheduler when linking chain and loop based element 
7508         where the chain based element was not yet in a group.
7509
7510 2004-07-21  Benjamin Otte  <otte@gnome.org>
7511
7512         * gst/.cvsignore:
7513         * gst/autoplug/.cvsignore:
7514         * gst/elements/.cvsignore:
7515         * gst/indexers/.cvsignore:
7516         * libs/gst/bytestream/.cvsignore:
7517         * libs/gst/control/.cvsignore:
7518         * libs/gst/getbits/.cvsignore:
7519         * testsuite/states/.cvsignore:
7520         * testsuite/threads/.cvsignore:
7521           keep this up to date, since I seem to be the only one who cares
7522           about not missing files on commits (editor's note: no you don't,
7523           but feel free to change them at the time you add stuff instead
7524           of later on)
7525
7526 2004-07-21  Benjamin Otte  <otte@gnome.org>
7527
7528         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7529         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
7530         (gst_bin_child_state_change_func), (set_kid_state_func),
7531         (gst_bin_set_state), (gst_bin_change_state_norecurse):
7532           make state changes work correctly and reentrant (so removing
7533           elements from bins during state changes of bins doesn't cause
7534           segfaults or even wrong states)
7535           add debugging category and debugging output to print children states
7536         * gst/gstbin.c: (gst_bin_dispose): 
7537           add some assertion checks
7538         * gst/gstbin.h:
7539         * gst/gstbin.c: (gst_bin_sync_children_state):
7540           deprecate this function - it just does gst_bin_set_state (bin,
7541           GST_STATE (bin)) 
7542         * testsuite/threads/queue.c: (main):
7543           don't use gst_bin_sync_children_state anymore
7544         * testsuite/states/Makefile.am:
7545         * testsuite/states/bin.c:
7546           test that the state changes of bins work as expected
7547         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
7548           some adjustments to change states correctly, too
7549         * gst/gstthread.c: (gst_thread_change_state):
7550           don't enable/disable "threadsafe" properties, they're unused and
7551           cause random segfaults
7552         * testsuite/threads/Makefile.am:
7553           the queue check randomly passes now, ignore it
7554
7555 2004-07-21  Benjamin Otte  <otte@gnome.org>
7556
7557         * gst/gstpad.c:
7558           check if data is NULL before outputting debug info. (fixes #145100)
7559
7560 2004-07-21  Benjamin Otte  <otte@gnome.org>
7561
7562         * gst/schedulers/entryscheduler.c:
7563         (gst_entry_scheduler_loop_wrapper),
7564         (gst_entry_scheduler_chain_wrapper),
7565         (gst_entry_scheduler_get_wrapper):
7566           reset the state when the cothread starts, so we don't get assertion
7567           failures on restarting of cothreads
7568
7569 2004-07-20  Benjamin Otte  <otte@gnome.org>
7570
7571         * gst/gstelement.c: (gst_element_link_pads_filtered):
7572           use correct sinkpad, if only sinkpad is specified, but not srcpad
7573           (fixes #147889)
7574         * gst/gstelement.c: (gst_element_set_state_func),
7575         (gst_element_change_state): ref/unref the element, signal handlers
7576         could get rid of the element otherwise
7577
7578 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7579
7580         * docs/random/ds/0.9-suggested-changes:
7581           Make note about renaming fixed-list to array.
7582         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
7583         (_gst_value_initialize):
7584           Add array intersections.
7585         * testsuite/caps/intersect2.c: (main):
7586           Add test for array intersections.
7587
7588 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7589
7590         * configure.ac: back to cvs
7591
7592 === release 0.8.4 ===
7593
7594 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7595
7596         * configure.ac:
7597           releasing 0.8.4, "Paella"
7598           bump libtool versioning
7599
7600 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7601
7602         * po/LINGUAS:
7603         * po/ca.po:
7604           adding Catalan translation (Jordi Mallach)
7605
7606 2004-07-20  Wim Taymans  <wim@fluendo.com>
7607
7608         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7609         (handoff_identity), (main):
7610         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7611         (handoff_identity), (main):
7612         * testsuite/schedulers/Makefile.am:
7613         Added failing testcase for variant of #147894
7614
7615 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7616
7617         patch by: David Moore
7618
7619         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7620         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
7621         (group_migrate_connected):
7622         * testsuite/schedulers/Makefile.am:
7623           fix for #142813 (Deadlock in optimal scheduler)
7624
7625 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7626
7627         patch by: Wim Taymans
7628
7629         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7630         (gst_opt_scheduler_schedule_run_queue),
7631         (gst_opt_scheduler_get_wrapper), (get_group),
7632         (group_migrate_connected):
7633         * testsuite/schedulers/Makefile.am:
7634           fix for #147819 (Add some checks in the opt scheduler)
7635
7636 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7637
7638         patch by: Benjamin Otte
7639
7640         * gst/gstelementfactory.c: (__gst_element_details_set):
7641           fix for #147929: running gst-register in non-utf8 locale can cause
7642           invalid registry
7643
7644 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7645
7646         patch by: Wim Taymans
7647
7648         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
7649         (group_has_element), (element_get_reachables_func),
7650         (group_migrate_connected):
7651           fix for #147894 (opt scheduler decoupled elements mismanagement)
7652         * testsuite/schedulers/Makefile.am:
7653           testsuite app now passes
7654
7655 2004-07-19  Wim Taymans  <wim@fluendo.com>
7656
7657         * testsuite/schedulers/147819.c: (handoff_identity1),
7658         (handoff_identity2), (main):
7659         * testsuite/schedulers/Makefile.am:
7660         Added testcase for bug 147819
7661
7662 2004-07-19  Wim Taymans  <wim@fluendo.com>
7663
7664         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7665         (handoff_identity), (main):
7666         * testsuite/schedulers/Makefile.am:
7667         Added testcase for bug 147894
7668
7669 2004-07-16  Wim Taymans  <wim@fluendo.com>
7670
7671         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
7672         * testsuite/schedulers/142183.c: (handoff_identity), (main):
7673         * testsuite/schedulers/Makefile.am:
7674         Added testsuite for bug 142183 in its two incarnations. Refcount
7675         is not increased for scheduled elements and threadsafe properties
7676         mutexes are not properly unlocked.
7677
7678 2004-07-16  Wim Taymans  <wim@fluendo.com>
7679
7680         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
7681         (create_chain), (destroy_chain), (create_group), (destroy_group),
7682         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
7683         (group_dec_link), (gst_opt_scheduler_pad_link),
7684         (group_inc_links_for_element), (group_migrate_connected):
7685         Call group_inc_link with the proper src->sink ordering -- 
7686         break this, and we break sort_chain. patch from wingo for bug
7687         147713.
7688         Partially revert patch 1.89. When adding a loop based element to 
7689         the scheduler, the links to other groups are automatically followed
7690         and incremented. This should not happen because the bin will call
7691         pad_link explicitly for those connection, resulting in them counted 
7692         twice. Results in assertion failure on pipeline cleanup.
7693
7694 2004-07-16  Wim Taymans  <wim@fluendo.com>
7695
7696         * testsuite/schedulers/143777-2.c: (main):
7697         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
7698         (main):
7699         * testsuite/schedulers/Makefile.am:
7700         Added cleanup code to testcase 143777-2.
7701         Added testcase to show bug 147713, does not really show the
7702         deadlock as I can't figure out how to trigger it, but it does
7703         demonstrate bad ordering in the scheduler.
7704
7705 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7706
7707         * gst/gstvalue.c: (gst_value_deserialize_fraction):
7708           change strndup to g_strndup.  Fixes #147707
7709
7710 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7711
7712         * po/af.po:
7713         * po/az.po:
7714         * po/cs.po:
7715         * po/en_GB.po:
7716         * po/fr.po:
7717         * po/nl.po:
7718         * po/sr.po:
7719         * po/sv.po:
7720         * po/tr.po:
7721         * po/uk.po:
7722           updated translations
7723
7724 2004-07-16  Benjamin Otte  <otte@gnome.org>
7725
7726         * gst/gstvalue.c: (gst_greatest_common_divisor):
7727           use ints and return ints, fractions only use ints, too, so this
7728           avoids accidently casting multiplications to unsigned
7729         (gst_value_lcopy_fraction): it's ints, not uint32
7730         (gst_value_set_fraction): disallow minint, multiplying and negation
7731           are broken with it
7732         (gst_value_fraction_multiply): fix to make large numbers work and get
7733         rid of the assumption that the multiplication of two ints fits an
7734         int64 - dunno if that's true for all systems
7735         * testsuite/caps/Makefile.am:
7736         * testsuite/caps/fraction-multiply-and-zero.c:
7737         (check_multiplication), (check_equal), (zero_test), (main):
7738           add tests for all the stuff above
7739         * testsuite/caps/value_compare.c: (test1):
7740           fix comment
7741         * tests/.cvsignore:
7742         * testsuite/caps/.cvsignore:
7743         * testsuite/debug/.cvsignore:
7744         * testsuite/dlopen/.cvsignore:
7745         * testsuite/states/.cvsignore:
7746           get up to date
7747
7748 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7749
7750         * docs/manual/bins-api.xml:
7751         * docs/manual/factories.xml:
7752         * docs/manual/helloworld.xml:
7753         * docs/manual/links-api.xml: 
7754           fixes for out of date info, incorrect info and grammar
7755
7756 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7757
7758         * docs/manual/pads.xml:
7759         * docs/manual/pads-api.xml: grammar fix
7760
7761 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7762
7763         * docs/manual/pads-api.xml: typo + grammar fix
7764
7765 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7766
7767         * docs/gst/gstreamer-sections.txt:
7768           add new symbols
7769         * docs/gst/tmpl/gstelement.sgml:
7770         * docs/gst/tmpl/gstpad.sgml:
7771         * docs/gst/tmpl/gsttypes.sgml:
7772         * docs/gst/tmpl/gstvalue.sgml:
7773           update docs
7774         * gst/gststructure.c: (gst_structure_set_valist),
7775         (gst_structure_from_abbr), (gst_structure_to_abbr):
7776         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
7777         (gst_greatest_common_divisor), (gst_value_init_fraction),
7778         (gst_value_copy_fraction), (gst_value_collect_fraction),
7779         (gst_value_lcopy_fraction), (gst_value_set_fraction),
7780         (gst_value_get_fraction_numerator),
7781         (gst_value_get_fraction_denominator),
7782         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
7783         (gst_value_deserialize_fraction),
7784         (gst_value_transform_fraction_string),
7785         (gst_value_transform_string_fraction),
7786         (gst_value_compare_fraction), (_gst_value_initialize):
7787         * gst/gstvalue.h:
7788           adding GstFraction GValue type, get/set, and multiply
7789         * testsuite/caps/Makefile.am:
7790         * testsuite/caps/fraction.c: (test), (main):
7791         * testsuite/caps/string-conversions.c: (main):
7792         * testsuite/caps/value_compare.c: (test1), (main):
7793           add regression tests for GstFraction
7794
7795 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7796         
7797         * docs/manual/init-api.xml: Grammar fix
7798
7799 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7800
7801         * docs/manual/states.xml: Fix inconsistent information
7802
7803 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7804
7805         * gst/gstelement.c: (gst_element_set_state):
7806         * gst/gstpad.c: (gst_pad_try_set_caps):
7807         * gst/gststructure.c:
7808         * gst/gstthread.c: (gst_thread_child_state_change):
7809         * gst/gstvalue.c: (gst_value_compare_double):
7810         * gst/gstvalue.h:
7811         * testsuite/parse/parse1.c: (main):
7812           debugging additions and style cleanups
7813
7814 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7815
7816         * docs/manual/states.xml: Grammar fix
7817
7818 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7819
7820         * docs/manual/pads.xml: Grammar fix
7821
7822 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7823
7824         * docs/manual/elements.xml: Fixed image reference
7825
7826 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7827
7828         * docs/manual/goals.xml: Grammar fix
7829
7830 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7831
7832         * docs/manual/motivation.xml:
7833         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
7834
7835 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7836
7837         * docs/manual/motivation.xml: Fix spelling
7838
7839 2004-07-15  Benjamin Otte  <otte@gnome.org>
7840
7841         * gst/gstelement.h: 
7842           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
7843           strings.
7844         * gst/gstelement.c (gst_element_class_init):
7845           GError's are boxed, not objects
7846         * gst/gstmarshal.list:
7847           update list for the fixed error signal
7848
7849 2004-07-14  Andy Wingo  <wingo@pobox.com>
7850
7851         * gst/gsttag.c: Add a tag merge func for pointers. The header was
7852         there all along, but the function wasn't. (guile-gstreamer's build
7853         system uses the address of the function -- I wasn't actually
7854         trying to use this.)
7855
7856 2004-07-14  Andy Wingo  <wingo@pobox.com>
7857
7858         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
7859         as gst_pad_proxy_pad_link) just link to every other pad when they
7860         are called. In the case where the graph has cycles, this will mean
7861         that a call to try_set_caps will recurse. Allow this recursion
7862         and return OK, while we wait for the first try_set_caps to give a
7863         proper return value.
7864         (gst_pad_link_call_link_functions): Since this function is the
7865         only one to set the NEGOTIATING flag on a pad, if the flag is set
7866         it means that the link functions have indirectly recursed. If this
7867         happens, error out to avoid infinite recursion and an eventual
7868         SEGV.
7869         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
7870         (gst_pad_proxy_getcaps): Intersect the result with the template
7871         caps to ensure that the return value is valid.
7872
7873 2004-07-14  Andy Wingo  <wingo@pobox.com>
7874
7875         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
7876         one refcount, the calling function is the owner of the buffer.
7877
7878 2004-07-14  Wim Taymans  <wim@fluendo.com>
7879
7880         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7881         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7882         Fix stupid warning when an element is to be migrated but
7883         is already migrated.
7884
7885 2004-07-14  Wim Taymans  <wim@fluendo.com>
7886
7887         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7888         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7889         Make sure that a single non-loop-based element does not 
7890         end up in a group. This fixes the testsuite again.
7891
7892 2004-07-14  Wim Taymans  <wim@fluendo.com>
7893
7894         * gst/schedulers/gstoptimalscheduler.c: (create_group),
7895         (add_to_group), (merge_groups), (schedule_group),
7896         (gst_opt_scheduler_get_wrapper), (group_elements),
7897         (group_dec_link), (gst_opt_scheduler_pad_link),
7898         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
7899         (gst_opt_scheduler_iterate):
7900         move isolated groups to a new chain.
7901         Emit a warning instead of segfaulting in some error cases.
7902         Fix a bug where the link count between groups was not calculated 
7903         correctly. Fixes #144510.
7904
7905 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
7906         * gst/elements/gstfilesrc.c:
7907           Binary files support under Windows now OK
7908       
7909 2004-07-13  Benjamin Otte  <otte@gnome.org>
7910
7911           compatibility fixes for Solaris 8/gcc 2.95
7912         * configure.ac:
7913           include libintl libs in LDFLAGS
7914         * gstvalue.c (gst_value_deserialize_buffer):
7915           cast isxdigit stuff to int to silence compiler warning
7916
7917 2004-07-12  Benjamin Otte  <otte@gnome.org>
7918
7919         * gst/gsttypes.h:
7920           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
7921           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
7922           just causes support madness
7923         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7924           make it work without this
7925         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
7926         (gst_file_index_commit):
7927           glib IO channels don't want binary mode
7928         * testsuite/bytestream/filepadsink.c: (main):
7929         * testsuite/bytestream/test1.c: (read_param_file):
7930           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
7931
7932 2004-07-12  Benjamin Otte  <otte@gnome.org>
7933
7934         * gst/gstelement.c: (gst_element_class_init),
7935         (gst_element_set_state), (gst_element_set_state_func):
7936           virutalize gst_element_set_state, use set_state member in class
7937           struct that was already added in 0.7 for this.
7938         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
7939         (gst_bin_change_state):
7940           make gst_bin_foreach works similar to other foreach functions, plug
7941           memleaks in it. Make functions using it work with the new approach.
7942           Document gst_bin_foreach, so it can be exported if we want to
7943         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
7944           use virtualized set_state to make set_state on bins set the state of
7945           all its children.
7946
7947 2004-07-12  Benjamin Otte  <otte@gnome.org>
7948
7949         * configure.ac:
7950           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
7951           http://bugs.gentoo.org/show_bug.cgi?id=53967)
7952         * gst/gstpad.c: (gst_pad_alloc_buffer):
7953           allow buffer_alloc functions to return NULL and allocate a normal
7954           buffer in that case
7955
7956 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7957         * gst/elements/gstfilesink.c:
7958         * gst/elements/gstfilesrc.c:
7959         * gst/indexers/gstfileindex.c:
7960         * gst/gsttypes.h:
7961         * testsuite/bytestream/filepadsink.c:
7962         * testsuite/bytestream/test1.c:
7963           Handle binary files under Windows
7964
7965 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7966         * docs/manual/win32.xml:
7967         * win32/config.h:
7968         * win32/gst-register.vcproj:
7969         * win32/gstreamer.def:
7970           Update to another gettext public build
7971
7972 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7973         * gst/gstplugin.c:
7974           Fix an impossible C syntax
7975         * win32/config.h:
7976           Disable i18n under Windows for the moment
7977         * win32/gst-register.vcproj:
7978           Use this configuration
7979
7980 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
7981         * docs/manual/quotes.xml:
7982           Keep the quotes file alive
7983         * docs/random/ds/0.9-suggested-changes:
7984           Add the suggestion of including a 'rowstride' as part of video
7985           format caps
7986
7987 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7988
7989         * gst/gstelement.c: (gst_element_set_state),
7990         (gst_element_change_state):
7991           d'oh.  Set PENDING state correctly before forcing bin to change.
7992         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7993         (gst_structure_parse_fixed_list):
7994         * gst/schedulers/gstoptimalscheduler.c:
7995         (gst_opt_scheduler_state_transition):
7996         * testsuite/states/parent.c: (main):
7997           remove comment now that it's fixed.
7998
7999 2004-07-11  Benjamin Otte  <otte@gnome.org>
8000
8001         * gst/gstclock.h:
8002           GST_SECOND shouldn't cause a conversion to unsigned.
8003         * testsuite/clock/.cvsignore:
8004         * testsuite/clock/Makefile.am:
8005         * testsuite/clock/signedness.c: (main):
8006           make sure it never will again
8007
8008 2004-07-11  Andy Wingo  <wingo@pobox.com>
8009
8010         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
8011         whose state is higher than the bin state, raise the bin state to
8012         ensure that bin state := highest child state.
8013         
8014 2004-07-11  Andy Wingo  <wingo@pobox.com>
8015
8016         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
8017         procedure on the children of a bin. Assumes that the procedure can
8018         change the set of children.
8019         (set_kid_state_func): New static function.
8020         (gst_bin_change_state): Use gst_bin_foreach to call
8021         set_kid_state_func. Fixes a bug: if a child had a state-change
8022         handler that removes it from the bin, there would be a segfault.
8023         Hopefully it should also work in the case where the state-change
8024         handler on one child adds or removes other children. In any case,
8025         fixes should go to gst_bin_foreach.
8026
8027 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
8028
8029         * gst/gstelement.c: (gst_element_set_state):
8030           compatibility fix for latest plugins release.  Change loop back
8031           to while {}
8032
8033 2004-07-09  Wim Taymans  <wim@fluendo.com>
8034
8035         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
8036         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
8037         (gst_thread_main_loop):
8038         Since remove is virtual in GstBin we must not assume the 
8039         elements GList to have anothing useful.
8040         Add some more logging to GstThread and be a bit more paranoid
8041         when resetting the scheduler.
8042         Set the state of the bin to NULL before removing the children.
8043
8044 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8045
8046         * testsuite/threads/Makefile.am:
8047         * testsuite/threads/threadg.c:
8048           added test to check if problem when removing all elements from a
8049           GstThread before setting GstThread state to NULL
8050
8051 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8052
8053         * docs/gst/tmpl/gstelement.sgml:
8054         * docs/gst/tmpl/gsttypes.sgml:
8055         * gst/gstbin.c: (gst_bin_change_state):
8056         * gst/gstelement.c: (gst_element_set_state),
8057         (gst_element_change_state):
8058           rework so that for bins we try to set the state on all children
8059           as well even if the bin is in the correct state already.
8060           change while to do so at least one iteration is done.
8061           For regular elements, we fall back to the previous behaviour for
8062           now since we first need a new plugins release.
8063         * testsuite/states/parent.c: (main):
8064           test for this case
8065           Fixes #123774
8066
8067 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8068
8069         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
8070         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
8071         (gst_queue_release_locks), (gst_queue_change_state),
8072         (gst_queue_set_property):
8073           add proper lock debugging.  Change dispose to finalize, since
8074           we're freeing mutexes and other stuff which should happen only once.
8075
8076 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8077
8078         * docs/gst/tmpl/gstelement.sgml:
8079         * docs/gst/tmpl/gstplugin.sgml:
8080         * docs/gst/tmpl/gsttypes.sgml:
8081         * docs/pwg/building-state.xml:
8082         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
8083         * gst/gstelement.c: (gst_element_change_state):
8084         * gst/gstthread.c: (gst_thread_change_state):
8085           catch wrong state changes in element base class.
8086
8087 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8088
8089         * gst/gstinfo.h:
8090           clean up layout a little.
8091
8092 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8093
8094         * configure.ac:
8095         * testsuite/Makefile.am:
8096         * testsuite/states/Makefile.am:
8097         * testsuite/states/parent.c: (main):
8098           re-enable states testsuite dir.  Add test for state changes and
8099           parent behaviour
8100
8101 2004-07-09  Wim Taymans  <wim@fluendo.com>
8102
8103         * gst/schedulers/gstoptimalscheduler.c:
8104         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
8105         (element_get_reachables_func), (element_get_reachables),
8106         (debug_element), (rechain_group), (group_migrate_connected),
8107         (gst_opt_scheduler_pad_unlink):
8108         Do not try to migrate decoupled elements to a new group since
8109         they are not added to groups.
8110
8111 2004-07-08  Benjamin Otte  <otte@gnome.org>
8112
8113         * gst/gstelement.c: (gst_element_error_func):
8114           make reentrant (= allow removing elements in error handler)
8115
8116 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8117
8118         * gst/gstpad.c: (gst_pad_event_default_dispatch),
8119         (gst_pad_send_event), (gst_pad_call_chain_function):
8120           events sent to elements below PAUSED cannot be handled, so
8121           don't try to
8122
8123 2004-07-08  Wim Taymans  <wim@fluendo.com>
8124
8125         * gst/schedulers/gstoptimalscheduler.c:
8126         (chain_recursively_migrate_group), (create_group),
8127         (schedule_group), (gst_opt_scheduler_pad_link),
8128         (group_elements_set_visited), (element_get_reachables_func),
8129         (element_get_reachables), (group_can_reach_group), (debug_element),
8130         (rechain_group), (group_migrate_connected),
8131         (gst_opt_scheduler_pad_unlink):
8132         * testsuite/schedulers/Makefile.am:
8133         Implemented group splitting and rechaining.
8134         Fixes 143777 and 143777-2 in the testsuite.
8135
8136 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8137
8138         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
8139           extra debugging
8140         * gst/gstevent.h:
8141         * gst/gstinfo.c: (gst_debug_log_default):
8142           print time nicely.  add thread pointer until someone figures out
8143           a completely portable way of getting at thread id's.
8144         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
8145         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
8146         (gst_pad_call_chain_function):
8147           extra debugging
8148         * gst/schedulers/gstoptimalscheduler.c:
8149         (get_group_schedule_function), (loop_group_schedule_function),
8150         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
8151         (pad_clear_queued), (gst_opt_scheduler_iterate):
8152           rename BUFPEN and friends to DATAPEN since that's what they are.
8153
8154 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8155
8156         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
8157         * gst/gstbuffer.h:
8158         * gst/gstpad.c:
8159           cleanups and debugging
8160
8161 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8162
8163         * configure.ac:
8164         * gst/gstvalue.c: (gst_value_compare_enum),
8165         (gst_value_serialize_enum), (gst_value_deserialize_enum),
8166         (gst_value_can_compare), (gst_value_compare):
8167         * testsuite/Makefile.am:
8168         * testsuite/enumcaps/Makefile.am:
8169         * testsuite/enumcaps/enumcaps.c:
8170           Fix enum serialization, deserialization, comparison in caps, add
8171           a test to ensure that this continues working in the future.
8172
8173 2004-07-06  David Schleef  <ds@schleef.org>
8174
8175         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
8176         Fix memleak.
8177
8178 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8179
8180         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
8181         * gst/gstplugin.h:
8182         * gst/registries/gstxmlregistry.c:
8183         (plugin_times_older_than_recurse), (plugin_times_older_than),
8184         (gst_xml_registry_parse_padtemplate):
8185           only rebuild registry when actual plugins have a newer time than
8186           the registry.  Fixes #145520
8187
8188 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8189
8190         * docs/manual/manual.xml:
8191         * docs/manual/win32.xml:
8192           add chapter on win32 building.  fixes #142422
8193
8194 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8195
8196         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
8197
8198         * gst/autoplug/gstspider.c: (gst_spider_init),
8199         (gst_spider_dispose):
8200           fix spider memleaks.  fixes #137863
8201
8202 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8203
8204         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
8205
8206         * gst/schedulers/gstoptimalscheduler.c:
8207         (gst_opt_scheduler_pad_unlink):
8208           fix SIGBUS error, fixes #145338
8209
8210 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8211
8212         * gst/gstobject.c: (gst_object_replace):
8213         * gst/gstscheduler.c: (gst_scheduler_get_clock):
8214         * gst/gstsystemclock.c: (gst_system_clock_obtain):
8215           clean up clock lifecycle.  Fixes #109831
8216
8217 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8218
8219         * po/LINGUAS:
8220         * po/cs.po:
8221           added Czech translation (Miloslav Trmac)
8222
8223 2004-07-04  David Schleef  <ds@schleef.org>
8224
8225         * tools/Makefile.am:
8226         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
8227
8228 2004-07-04  David Schleef  <ds@schleef.org>
8229
8230         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
8231
8232 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8233
8234         * gst/gstbin.c: (gst_bin_restore_thyself):
8235           chain to parent restore so the bins get restored correctly
8236           in the editor
8237
8238 2004-07-03  David Schleef  <ds@schleef.org>
8239
8240         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
8241         Actually do something in these functions, like before the big
8242         caps change.  (bug #145137)
8243
8244 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8245
8246         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
8247         (gst_element_get_compatible_pad_filtered):
8248         * gst/gstthread.c: (gst_thread_main_loop):
8249           more debugging
8250
8251 2004-07-02  David Schleef  <ds@schleef.org>
8252
8253         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
8254         * gst/gstobject.h:
8255         * gst/gstparse.h:
8256         * gst/gsttrace.h:
8257         * gst/gstxml.h:
8258
8259 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8260
8261         * gst/gstpad.c: (gst_pad_check_schedulers),
8262         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
8263         (gst_pad_link_prepare):
8264           revert until testsuite is fixed
8265
8266 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8267
8268         * testsuite/Makefile.am:
8269         * testsuite/caps/filtercaps.c: (main):
8270         * testsuite/clock/clock1.c: (main):
8271         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
8272           fix some more tests
8273
8274 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8275
8276         * testsuite/cleanup/cleanup1.c: (create_pipeline):
8277         * testsuite/cleanup/cleanup2.c: (create_pipeline):
8278         * testsuite/cleanup/cleanup4.c: (main):
8279           fix testsuite
8280
8281 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8282
8283         * libs/gst/control/control.c:
8284         * libs/gst/control/dparam.c:
8285         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
8286         * libs/gst/control/dparammanager.c:
8287         * libs/gst/control/dparammanager.h:
8288         * testsuite/dynparams/Makefile.am:
8289         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
8290         (gst_dptest_change_state), (gst_dptest_chain), (main):
8291           fix testcase for dparams
8292           add debugging category
8293
8294 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8295
8296         * testsuite/Rules:
8297           change path
8298
8299 2004-07-02  Benjamin Otte  <otte@gnome.org>
8300
8301         * tests/.cvsignore:
8302         * tests/Makefile.am:
8303         * tests/mass_elements.c: (gst_get_current_time), (main):
8304           add simple benchmark to test various speeds of fakesrc ! identity !
8305           identity ! ... ! fakesink.
8306           Usage: mass_elements [num_identities] [num_buffers]
8307           If not specified they default to 1000.
8308
8309 2004-07-02  Benjamin Otte  <otte@gnome.org>
8310
8311         * gst/gstpad.c: (gst_pad_check_schedulers),
8312         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
8313         (gst_pad_link_prepare):
8314           check that pads that get linked belong to the same manager. The old
8315           code allowed linking elements before putting them into bins, so it
8316           worked to link them and then put them in different threads, which
8317           lead to weird behaviour.
8318           Since this effectively disallows linking elements before putting
8319           them in a bin, some applications might not work after this and error
8320           out. If these applications are too critical, we might need to revert
8321           that patch. Please test this before the next release...
8322
8323 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8324
8325         * gst/gstpad.c: (gst_pad_get_caps):
8326           throw an error if the getcaps function does not return a subset of
8327           the template caps.
8328         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
8329           make disconts without position info an error in debugging
8330         * tests/spidey_bench.c: (handoff), (main):
8331           don't count first try when averaging
8332
8333 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8334
8335         * gst/gstplugin.c: (gst_plugin_load_file):
8336           figure out problem with dynamic test
8337
8338 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8339
8340         * docs/gst/Makefile.am:
8341           fix docs build
8342
8343 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8344
8345         * po/POTFILES.in:
8346         * po/af.po:
8347         * po/az.po:
8348         * po/en_GB.po:
8349         * po/fr.po:
8350         * po/nl.po:
8351         * po/sr.po:
8352         * po/sv.po:
8353         * po/tr.po:
8354         * po/uk.po:
8355         * tools/gst-register.c: (plugin_added_func), (main):
8356           i18n-ize -register, fix plural
8357
8358 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8359
8360         * gst/elements/gstidentity.c: (gst_identity_class_init),
8361         (gst_identity_init), (gst_identity_chain),
8362         (gst_identity_set_property), (gst_identity_get_property):
8363         * gst/elements/gstidentity.h:
8364           check for perfect stream
8365
8366 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8367
8368         * gst/elements/gstidentity.c: (gst_identity_chain):
8369           print offset_end
8370
8371 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8372
8373         * docs/gst/Makefile.am:
8374         * docs/gst/gstreamer-docs.sgml:
8375           doc fixes
8376
8377 2004-06-24  David Schleef  <ds@schleef.org>
8378
8379         * autogen.sh:  Remove call to env, since the buildbot isn't
8380         broken anymore.
8381
8382 2004-06-24  Wim Taymans  <wim@fluendo.com>
8383
8384         * gst/elements/Makefile.am:
8385         * gst/elements/gstelements.c:
8386         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
8387         (gst_multifdsink_class_init), (gst_multifdsink_init),
8388         (gst_multifdsink_add), (gst_multifdsink_remove),
8389         (gst_multifdsink_clear), (gst_multifdsink_chain),
8390         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
8391         * gst/elements/gstmultifdsink.h:
8392         Added an element that writes to multiple filedescriptors at once.
8393
8394 2004-06-24  Benjamin Otte  <otte@gnome.org>
8395
8396         * gst/parse/grammar.y:
8397           don't try to link elements before they have been added to bins
8398
8399 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8400
8401         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
8402         (gst_file_pad_get_length):
8403         * libs/gst/bytestream/filepad.h:
8404           add 2 new functions
8405
8406 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8407
8408         * docs/gst/gstreamer-sections.txt:
8409         remove from docs, the define that Benjamin removed from gstelement.h
8410
8411 2004-06-22  Benjamin Otte  <otte@gnome.org>
8412
8413         * gst/gstelement.h:
8414           remove define that referenced a nonexisting GstElement struct member
8415
8416 2004-06-20  Benjamin Otte  <otte@gnome.org>
8417
8418         * gst/gstdata.c: (gst_data_is_writable):
8419           whoops, return values were wrong, so writable data was marked as
8420           non-writable and vice versa. (fixes #143953, spotted by Francis
8421           Labonte)
8422           Shows how rarely we need to copy data ;)
8423
8424 2004-06-20  Benjamin Otte  <otte@gnome.org>
8425
8426         * testsuite/schedulers/.cvsignore:
8427         * testsuite/schedulers/Makefile.am:
8428         * testsuite/schedulers/143777-2.c: (main):
8429           add test for opt breakage in bug #143777
8430
8431 2004-06-20  Benjamin Otte  <otte@gnome.org>
8432
8433         * gst/gstpad.c: (gst_pad_call_chain_function):
8434           check for if we were unlinked while inside the chainfunction (fixes
8435           entrygthread having issues with #143777)
8436         * testsuite/schedulers/143777.c: (main):
8437         * testsuite/schedulers/Makefile.am:
8438           add a test for that fix
8439
8440 2004-06-20  Benjamin Otte  <otte@gnome.org>
8441
8442         * gst/gstvalue.c: (gst_value_set_int_range):
8443           test that start is smaller then end
8444         * libs/gst/bytestream/Makefile.am:
8445         * libs/gst/bytestream/filepad.c: 
8446         * libs/gst/bytestream/filepad.h:
8447           add GstFilePad - a pad that behaves like a FILE*
8448         * testsuite/bytestream/.cvsignore:
8449         * testsuite/bytestream/Makefile.am:
8450         * testsuite/bytestream/filepadsink.c: 
8451           test for the GstFilePad
8452
8453 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8454
8455         * gst/elements/gstidentity.c: (gst_identity_class_init),
8456         (gst_identity_init), (gst_identity_set_clock),
8457         (gst_identity_chain), (gst_identity_set_property),
8458         (gst_identity_get_property):
8459         * gst/elements/gstidentity.h:
8460         * gst/gstclock.c: (gst_clock_id_wait):
8461           add a "sync" property to sync to the clock
8462
8463 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8464
8465         * gst/gstelementfactory.c: (gst_element_factory_create):
8466           make the freakin "elementfactory bla has no type" message more
8467           useful. So we actually can do something when someone shows up
8468           complaining about it.
8469
8470 2004-06-15  Johan Dahlin  <johan@gnome.org>
8471
8472         * tools/gst-inspect.c (main): Fallback to plugin if no element is
8473         found. This matches the old behavior better. Thanks to Thomas for
8474         pointing out.
8475
8476 2004-06-14  David Schleef  <ds@schleef.org>
8477
8478         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
8479         -fomit-frame-pointer.  Appears to generate correct code in
8480         other cases as well.
8481
8482 2004-06-14  Johan Dahlin  <johan@gnome.org>
8483
8484         * tools/gst-inspect.c (main): Add two new command line options: -a
8485         to print all elements and -n to print the name on each line. Also
8486         fix some error reporting.
8487         (main): Simplify, remove -n and always print names if -a is specified
8488
8489 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
8490
8491         * win32/gstconfig.h:
8492         * win32/GSTreamer.vcproj:
8493         * win32/Makefile:
8494         * gst/gstconfig.h.in:
8495         * gst/gst.h:
8496         * gst/gstbin.h:
8497         * gst/gstelement.h:
8498         * gst/gstevent.h:
8499         * gst/gstobject.h:
8500         * gst/gstpad.h:
8501         * docs/gst/gstreamer-sections.txt:
8502         * docs/gst/tmpl/gstconfig.sgml:
8503           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
8504
8505 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8506         * docs/gst/gstreamer-sections.txt:
8507         * docs/gst/tmpl/gstconfig.sgml:
8508         Add the GSTREAMER_EXPORT macro to the docs
8509
8510 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8511
8512         * tools/gst-compprep.c: (handle_xmlerror), (main):
8513         Add a check for the version that introduced SetStructuredError to fix
8514         the build on FC1
8515
8516 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8517
8518         * win32/msvc71.sln:
8519         * win32/testsuite/:
8520           prepare to compile the testsuite with MSVC
8521
8522 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8523
8524         * docs/manual/win32.xml:
8525           attempt to transform the Win32 README into an XML doc
8526
8527 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8528
8529         * gst/gst.c:
8530         * gst/gstbin.*:
8531         * gst/config.h.in:
8532         * gst/gstelement.*:
8533         * gst/gstevent.h:
8534         * gst/gstobject.*:
8535         * gst/gstpad.h:
8536         * tools/gst-register.c:
8537         * win32/gstreamer.def:
8538           extern symbols are now exported for the Windows DLL
8539
8540 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8541
8542         * gst/gstinfo.h:
8543           fix a problem to enable/disable DEBUG under MSVC
8544
8545 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8546
8547         * win32/:
8548           enable more debug code in DEBUG build
8549
8550 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8551
8552         * win32/config.h:
8553         * gst/gst-i18n-app.h:
8554           enable NLS under Windows
8555
8556 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
8557         * tools/gst-compprep.c: (handle_xmlerror), (main):
8558           Make an error that baffled me a bit clearer
8559
8560 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8561
8562         * gst/gstqueue.c:
8563           don't use g_queue_get_length () because it's 2.4, use ->length
8564
8565 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
8566
8567         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
8568
8569         * tools/gst-inspect.c: (print_signal_info):
8570           don't free random data twice. (fixes #144185)
8571
8572 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
8573
8574         * gst/gstqueue.c:
8575         * gst/gstqueue.h:
8576           fix removing from the wrong queue on event timeout
8577           fix disposing of the event queue by casting correctly
8578           add mutexes for handling the event queue
8579           someone was sleeping when fixing queue last time around :)
8580
8581 2004-06-10  Johan Dahlin  <johan@gnome.org>
8582
8583         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
8584         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
8585
8586 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8587
8588         * docs/random/gdp:
8589         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
8590         * libs/gst/dataprotocol/dataprotocol.c:
8591         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8592         (gst_dp_buffer_from_header):
8593         * libs/gst/dataprotocol/dataprotocol.h:
8594         * libs/gst/dataprotocol/dp-private.h:
8595           rev version to 0.1, add buffer flags and copy them
8596
8597 2004-06-09  Johan Dahlin  <johan@gnome.org>
8598
8599         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
8600         the flags from the buffer we're copying.
8601
8602 2004-06-09  Wim Taymans  <wim@fluendo.com>
8603
8604         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
8605         * gst/elements/gstidentity.c: (gst_identity_init),
8606         (gst_identity_chain):
8607         Print more buffer info in fakesink.
8608         Make identity output similar to fakesink.
8609
8610 2004-06-07  Daniel Gazard  <dany42@free.fr>
8611
8612         reviewed by Benjamin Otte  <otte@gnome.org>
8613
8614         * configure.ac:
8615           fix cross compiling not working. (fixes #143741)
8616
8617 2004-06-07  Benjamin Otte  <otte@gnome.org>
8618
8619         * gst/gstelement.c: (gst_element_set_time_delay):
8620           add failure check
8621         * gst/gstinfo.h:
8622           put brackets around macro arguments of GST_TIME_ARGS, add note to
8623           move it to correct header in 0.9
8624
8625 2004-06-07  Benjamin Otte  <otte@gnome.org>
8626
8627         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
8628         (gst_file_index_load), (_file_index_id_save_entries),
8629         (gst_file_index_commit), (gst_file_index_add_association),
8630         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
8631         (gst_file_index_plugin_init):
8632           make debugging use a default category
8633
8634 2004-06-06  David Moore  <dcm@acm.org>
8635
8636         reviewed by Benjamin Otte  <otte@gnome.org>
8637
8638         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
8639         (gst_fdsrc_change_state):
8640           reset offset counter when going READY => PAUSED. (fixes #142903)
8641
8642 2004-06-06  ed@catmur.co.uk
8643
8644         reviewed by Benjamin Otte  <otte@gnome.org>
8645
8646         * gst/registries/gstxmlregistry.c:
8647         (gst_xml_registry_rebuild_recurse):
8648           don't rely on g_dir_open to figure out if a file is a directory, use
8649           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
8650           directories. (fixes #142850)
8651
8652 2004-06-06  Benjamin Otte  <otte@gnome.org>
8653
8654         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
8655           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
8656         * libs/gst/bytestream/adapter.c:
8657         * libs/gst/bytestream/adapter.h:
8658           fix copyright in header and typo in debugging category name
8659
8660 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8661
8662         * configure.ac:
8663           bump nano to cvs
8664
8665 === release 0.8.3 ===
8666
8667 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8668
8669         * configure.ac:
8670           update libtool versioning
8671           do a new release
8672         * docs/gst/tmpl/gstelement.sgml:
8673         * docs/gst/tmpl/gsttypes.sgml:
8674         * gst/gstinfo.c: (_gst_debug_init):
8675           put back GST_CAT_DATAFLOW to fix API breakage
8676
8677 2004-06-04  David Schleef  <ds@schleef.org>
8678
8679         * autogen.sh: Add a temporary 'env' to test buildbot problems.
8680
8681 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8682
8683         * configure.ac:
8684           bump nano to cvs
8685
8686 === release 0.8.2 ===
8687
8688 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8689
8690         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
8691           check GST_DEBUG environment variable which is parsed the same way
8692           as --gst-debug=
8693
8694 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8695
8696         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
8697                             gstmd5sink.c gstshaper.c gsttee.c
8698                             gsttypefindelement.c
8699         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
8700
8701           - removing trailing commas at end of enums
8702             it is correct C99 code but C90 compilers would complain
8703             (AIX, Forte, ...)
8704             ('should' fix #143290, at least partially)
8705
8706 2004-05-27  Wim Taymans  <wim@fluendo.com>
8707
8708         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
8709         (chain_group_set_enabled), (create_group), (add_to_group),
8710         (merge_groups), (setup_group_scheduler), (group_elements),
8711         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
8712         Don't try to follow the pad connections with other groups
8713         when a loop based element is added to the scheduler because
8714         the bin will inform the scheduler about the pad links a little
8715         later.
8716
8717 2004-05-27  Wim Taymans  <wim@fluendo.com>
8718
8719         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8720         (remove_from_chain), (chain_group_set_enabled),
8721         (setup_group_scheduler), (group_element_set_enabled),
8722         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
8723         (gst_opt_scheduler_show):
8724         Elements without a group can do a state change as well, just wait
8725         with the setup of the scheduling function when it is added to a
8726         chain.
8727
8728 2004-05-27  Wim Taymans  <wim@fluendo.com>
8729
8730         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8731         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
8732         (merge_groups), (setup_group_scheduler),
8733         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
8734         (gst_opt_scheduler_show):
8735         Fixes to maintain internal consistency of the scheduler data
8736         structures. 
8737          - adding an enabled group to a chain should increment the
8738            number of enabled elements in that chain.
8739          - removing an enabled group from a chain could disable the
8740            chain.
8741          - removing a disabled group from a chain could enable the
8742            chain.
8743          - add g_assert when internal inconsistency is detected.
8744          - adding an element to a group could increase the number of
8745            links this group has with other groups.
8746          - merging two groups also merges the chains.
8747          - also show group links in the _show method.
8748            
8749
8750 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8751
8752         * gst/gstcaps.c: (gst_caps_structure_simplify):
8753           don't print error messages when there is no error
8754         * gst/gstvalue.c: (gst_value_compare_int_range):
8755           compare the second value, too
8756         * testsuite/caps/Makefile.am:
8757         * testsuite/caps/random.c: (assert_on_error), (main):
8758           add tests to make sure the two things above are checked for
8759
8760 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8761
8762         * configure.ac:
8763         * libs/gst/dataprotocol/Makefile.am:
8764         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
8765         * libs/gst/dataprotocol/dataprotocol.h:
8766           wrap header in GST_ENABLE_NEW.  make code use it
8767
8768 2004-05-23  Johan Dahlin  <johan@gnome.org>
8769
8770         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
8771         so verbose and print GstElement signal names all the time.
8772
8773 2004-05-22  David Schleef  <ds@schleef.org>
8774
8775         * gst/registries/gstxmlregistry.c:
8776         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
8777         (bug #142957)
8778
8779 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
8780
8781         * configure.ac:
8782           scrub cflags for glib2 so gcc doesn't complain when glib is in
8783           /usr/local
8784
8785 2004-05-21  Johan Dahlin  <johan@gnome.org>
8786
8787         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
8788         __GNUC__, patch from Brian Cameron, fixes bug #142804
8789
8790 2004-05-20  David Schleef  <ds@schleef.org>
8791
8792         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
8793         comparison code.  (bug #142819)
8794
8795 2004-05-20  Wim Taymans  <wim@fluendo.com>
8796
8797         * gst/gstbuffer.c: (gst_buffer_default_copy):
8798         * gst/gstbuffer.h:
8799         Added Comment to a flag.
8800         copy relevant flags in _buffer_copy.
8801
8802 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8803
8804         reviewed by: Wim Taymans <wim at fluendo dot com>
8805
8806         * gst/gstbuffer.h:
8807           add GST_BUFFER_IN_CAPS buffer flag
8808         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8809         (gst_structure_parse_any_list), (gst_structure_parse_list),
8810         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
8811         * gst/gstvalue.c: (gst_value_serialize_any_list),
8812         (gst_value_transform_any_list_string),
8813         (gst_value_list_prepend_value), (gst_value_list_append_value),
8814         (gst_value_list_get_size), (gst_value_list_get_value),
8815         (gst_value_transform_list_string),
8816         (gst_value_transform_fixed_list_string),
8817         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
8818         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
8819         (_gst_value_initialize):
8820         * gst/gstvalue.h:
8821           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
8822           < , > as a format.
8823         * testsuite/caps/string-conversions.c: (main):
8824           add regression tests for < >
8825
8826 2004-05-20  Johan Dahlin  <johan@gnome.org>
8827
8828         * docs/gst/Makefile.am (all-local): Re-add
8829
8830 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8831
8832         * docs/gst/Makefile.am:
8833         * docs/gst/gstreamer-docs.sgml:
8834         * docs/libs/Makefile.am:
8835         * docs/libs/gstreamer-libs-docs.sgml:
8836           fix distcheck issues
8837
8838 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8839
8840         * libs/gst/dataprotocol/Makefile.am:
8841           add to autotest
8842
8843 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8844
8845         * libs/gst/dataprotocol/Makefile.am:
8846         * libs/gst/dataprotocol/dataprotocol.c:
8847         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8848         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
8849         * libs/gst/dataprotocol/dp-private.h:
8850           use GST macros to read/write fixed length ints
8851           add some more asserts
8852
8853 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8854
8855         * docs/libs/gstreamer-libs-docs.sgml:
8856         * docs/libs/gstreamer-libs-sections.txt:
8857           remove idct and putbits
8858         * configure.ac:
8859         * docs/libs/tmpl/gstdataprotocol.sgml:
8860         * libs/gst/Makefile.am:
8861         * libs/gst/dataprotocol/Makefile.am:
8862         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
8863         (buffer_test), (caps_test), (event_test), (main):
8864         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
8865         (gst_dp_dump_byte_array), (gst_dp_init),
8866         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
8867         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8868         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
8869         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
8870         (gst_dp_validate_header), (gst_dp_validate_payload),
8871         (gst_dp_validate_packet), (plugin_init):
8872         * libs/gst/dataprotocol/dataprotocol.h:
8873         * libs/gst/dataprotocol/dp-private.h:
8874           add dataprotocol
8875
8876 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8877
8878         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
8879           fix int variable deserialization and add a helper so we can actually
8880           debug this.
8881
8882 2004-05-18  David Schleef  <ds@schleef.org>
8883
8884         * testsuite/debug/commandline.c: (main): Call ./commandline, not
8885           argv[0].  Calling yourself is probably not the best way to
8886           construct a test like this, btw.
8887
8888 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8889
8890         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
8891           don't claim to be more intelligent than a scheduler when the
8892           scheduler claims the pipeline is stopped
8893         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
8894         (safe_cothread_destroy),
8895         (gst_entry_scheduler_remove_all_cothreads),
8896         (gst_entry_scheduler_reset), (_remove_cothread),
8897         (gst_entry_scheduler_state_transition):
8898           hold off cothread destruction if we're not in main cothread
8899         * configure.ac:
8900         * testsuite/Makefile.am:
8901           add new test dir
8902         * testsuite/schedulers/.cvsignore:
8903         * testsuite/schedulers/Makefile.am:
8904           add tests
8905         * testsuite/schedulers/relink.c: (cb_handoff), (main):
8906           check relinking and adding/removing elements from a running pipeline
8907         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
8908           check unlinking in a running pipeline
8909         * testsuite/schedulers/unref.c: (cb_handoff), (main):
8910           check unreffing a running pipeline
8911         * testsuite/schedulers/useless_iteration.c: (main):
8912           check iterating a pipeline that contains running threads works
8913
8914 2004-05-18  David Schleef  <ds@schleef.org>
8915
8916         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
8917           is false.
8918
8919 2004-05-18  Wim Taymans  <wim@fluendo.com>
8920
8921         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8922         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
8923         Fixed an error introduced with patch for 1.63. When setting
8924         a get based element as the entry point in a group, make sure
8925         to mark the group as GET based.
8926
8927 2004-05-18  Wim Taymans  <wim@fluendo.com>
8928
8929         * gst/schedulers/gstoptimalscheduler.c: (create_group),
8930         (setup_group_scheduler), (loop_group_schedule_function),
8931         (gst_opt_scheduler_pad_link):
8932         Added some more debug info and fixed a bug where the group
8933         type was set to LOOP but it was in fact unknown.
8934
8935 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8936
8937         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
8938           make resetting scheduler work twice in a row
8939
8940 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8941
8942         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
8943         (CREATE_USERIALIZATION), (_gst_value_initialize),
8944         (gst_value_compare_float), (gst_value_serialize_float),
8945         (gst_value_deserialize_float), (gst_value_compare_enum),
8946         (gst_value_serialize_enum), (gst_value_deserialize_enum):
8947           add serialization and comparison functions for long, int64, enum and
8948           float values
8949         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
8950           use best serialization function in type hierarchy instead of only a
8951           matching one. This is required for enums to work.
8952         * gst/parse/grammar.y:
8953           use gst_caps_deserialize
8954         * testsuite/parse/Makefile.am:
8955           parse1 now works
8956         * testsuite/parse/parse1.c: (main):
8957           remove aggregator check, aggregator is broken, this test works now
8958           but fails because of bug #138012
8959         * testsuite/parse/parse2.c: (main):
8960           s/xvideosink/xvimagesink - this test looks a lot like we should
8961           disable it
8962
8963 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8964
8965         * gst/gstelement.c: (gst_element_class_init):
8966           whoops, store the signal id correctly
8967         * gst/schedulers/gstbasicscheduler.c:
8968         (gst_basic_scheduler_chain_wrapper):
8969           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
8970           chain function isn't linked
8971
8972 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
8973         * configure.ac:
8974         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
8975         support until we decide where the flags should be used
8976         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
8977         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
8978         * gst/gstpad.c: (gst_pad_link_call_link_functions):
8979         Output refused caps in the debug info
8980
8981 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8982
8983         * gst/elements/gstidentity.c: (gst_identity_chain):
8984           add duration debug
8985         * gst/gstinfo.c: (gst_debug_log_default):
8986           add timestamp
8987
8988 2004-05-13  Benjamin Otte  <otte@gnome.org>
8989
8990         * gst/gstpipeline.c: (gst_pipeline_dispose),
8991         (gst_pipeline_change_state):
8992           call gst_scheduler_reset on dispose (fixes #141416)
8993
8994 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8995
8996         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8997           compute mapsize correctly
8998         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8999           use correct datatypes when calling a varargs function
9000         * gst/elements/gsttypefindelement.c: (stop_typefinding):
9001           push a DISCONT event as first thing
9002         * gst/gst_private.h:
9003         * gst/gstinfo.c: (_gst_debug_init):
9004           remove GST_DATAFLOW debugging category
9005         * gst/gstbin.c: (gst_bin_iterate):
9006           use GST_SCHEDULING category
9007         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
9008         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
9009         (gst_pad_call_get_function):
9010           add GST_DATAFLOW to easily track flow of buffers or events.
9011         * gst/gstqueue.c: (gst_queue_get_type),
9012         (gst_queue_handle_pending_events), (gst_queue_chain),
9013         (gst_queue_get), (gst_queue_handle_src_event):
9014           use own static debugging category GST_DATAFLOW for dataflow,
9015           use DEBUG category for showing which path events go, use LOG
9016           category for buffers.
9017
9018 2004-05-10  David Schleef  <ds@schleef.org>
9019
9020         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
9021
9022 2004-05-10  David Schleef  <ds@schleef.org>
9023
9024         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
9025         symbols, because otherwise we don't know what they are.  Thanks,
9026         the GStreamer team.
9027         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
9028
9029 2004-05-10  David Schleef  <ds@schleef.org>
9030
9031         (from Steve Lhomme)
9032         * win32/Makefile: When using make clean the MS Visual Studio makefiles
9033         are deleted.  Fix.
9034         * win32/Makefile.inspect:
9035         * win32/Makefile.launch:
9036         * win32/Makefile.register:
9037
9038 2004-05-10  David Schleef  <ds@schleef.org>
9039
9040         * gst/gstinfo.h: Add missing inline function.
9041         * gst/gsttrace.c: add include
9042         * gst/parse/grammar.y: remove unused code
9043         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
9044         more portable.
9045         * tools/gst-register.c: wrap unistd.h
9046         
9047         More additions/fixes from Steve for the MSVC build.
9048         * win32/GStreamer.vcproj:
9049         * win32/Makefile:
9050         * win32/Makefile.inspect:
9051         * win32/Makefile.launch:
9052         * win32/Makefile.register:
9053         * win32/README.txt:
9054         * win32/gst-inspect.vcproj:
9055         * win32/gst-launch.vcproj:
9056         * win32/gst-register.vcproj:
9057         * win32/gstbytestream.def:
9058         * win32/gstbytestream.vcproj:
9059         * win32/gstconfig.h:
9060         * win32/gstelements.def:
9061         * win32/gstelements.vcproj:
9062         * win32/gstenumtypes.c:
9063         * win32/gstenumtypes.h:
9064         * win32/gstoptimalscheduler.def:
9065         * win32/gstoptimalscheduler.vcproj:
9066         * win32/gstreamer.def:
9067         * win32/gstspider.def:
9068         * win32/gstspider.vcproj:
9069         * win32/gstversion.h:
9070         * win32/msvc71.sln:
9071
9072 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9073
9074         * gst/gstelement.c: (gst_element_class_init),
9075         (gst_element_no_more_pads):
9076         * gst/gstelement.h:
9077           add gst_element_no_more_pads and the "no-more-pads" signal
9078
9079 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9080
9081         * gst/gstregistry.c: (gst_registry_add_plugin):
9082           refuse to add plugins when a plugin with same name is already
9083           registered. Fixes a bunch of "How to remove plugins?" issues.
9084           May lead to other problems though, let's test
9085
9086 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9087
9088         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
9089         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
9090         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
9091
9092 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9093
9094         * tests/Makefile.am: fix am16 issue
9095
9096 2004-05-09  Benjamin Otte  <otte@gnome.org>
9097
9098         * libs/gst/bytestream/Makefile.am:
9099           we should indeed add .c files to makefiles or they won't be built
9100           (d'oh)
9101
9102 2004-05-08  Benjamin Otte  <otte@gnome.org>
9103
9104         * gst/gstpad.c: (gst_pad_proxy_fixate):
9105           really reduce the set of caps
9106
9107 2004-05-08  Benjamin Otte  <otte@gnome.org>
9108
9109         * tests/Makefile.am:
9110         * tests/spidey_bench.c: (handoff), (main):
9111           add benchmark to test how long spider needs to create a pipeline
9112
9113 2004-05-08  Benjamin Otte  <otte@gnome.org>
9114
9115         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
9116           mark links as unengaged when unnegotiating instead of deactivating.
9117           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
9118
9119 2004-05-08  Benjamin Otte  <otte@gnome.org>
9120
9121         * docs/manual/helloworld.xml:
9122           s/audiosink/osssink (patch by Patrick Guimond)
9123
9124 2004-05-07  David Schleef  <ds@schleef.org>
9125
9126         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
9127         since it contains important stuff.
9128
9129 2004-05-07  David Schleef  <ds@schleef.org>
9130
9131         * testsuite/caps/caps.c: (test3), (main): A check for appending
9132         ANY caps.
9133
9134 2004-05-07  David Schleef  <ds@schleef.org>
9135
9136         * common/m4/as-compiler-flag.m4: Properly quote arguments,
9137         which may contain commas.  Fixes detection of -Wa,-mregnames
9138
9139 2004-05-06  David Schleef  <ds@schleef.org>
9140
9141         Changes to handle compilers that don't have variadic macro
9142         support.  In particular, glib headers define some inlines
9143         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
9144         builds.
9145         * gst/Makefile.am:
9146         * gst/cothreads.c:
9147         * gst/elements/gstfdsink.c:
9148         * gst/elements/gstfdsrc.c:
9149         * gst/elements/gstfilesink.c:
9150         * gst/elements/gstfilesrc.c:
9151         * gst/gst_private.h:
9152         * gst/gstatomic.c:
9153         * gst/gstcaps.c: (gst_caps_append):
9154         * gst/gstcpu.c: (gst_cpuid_i386):
9155         * gst/gstelement.c:
9156         * gst/gsterror.c:
9157         * gst/gstfilter.c:
9158         * gst/gstinfo.h:
9159         * gst/gstprobe.c:
9160         * gst/gstquery.c:
9161         * gst/gstregistry.c:
9162         * gst/gststructure.c:
9163         * gst/gsttaginterface.c:
9164         * gst/gsttrace.c: (gst_trace_new):
9165         * gst/gsttrashstack.c:
9166         * gst/gsturi.c:
9167         * gst/gstvalue.c:
9168         * gst/parse/grammar.y:
9169         * gst/parse/parse.l:
9170         * tools/gst-inspect.c: (main):
9171         * tools/gst-launch.c: (main):
9172         * tools/gst-xmlinspect.c: (PUT_STRING):
9173
9174 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9175
9176         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9177         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9178         * gst/elements/gstfilesrc.h:
9179           send NEW_MEDIA events correctly
9180         * gst/elements/gsttypefindelement.c: (start_typefinding),
9181         (gst_type_find_element_handle_event):
9182           restart typefinding when we get a NEW_MEDIA event
9183         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
9184         (gst_bin_dispose):
9185           don't die when someone removes elements in callbacks
9186         * gst/gstelement.c: (gst_element_change_state):
9187           improve debugging
9188         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
9189           we need a NEW_MEDIA event to engage a link
9190         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
9191           don't g_print debugging stuff
9192         * testsuite/caps/simplify.c: (check_caps):
9193
9194 2004-05-04  Benjamin Otte  <otte@gnome.org>
9195
9196         * gst/parse/grammar.y:
9197           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
9198
9199 2004-05-04  Benjamin Otte  <otte@gnome.org>
9200
9201         * testsuite/caps/renegotiate.c: (main):
9202           improve output in error case
9203
9204 2004-05-04  Benjamin Otte  <otte@gnome.org>
9205
9206         * gst/parse/grammar.y:
9207           fix assert to not trigger when there's no error argument
9208         * gst/parse/parse.l:
9209           fix definition of caps to allow more than two structures
9210         * testsuite/caps/Makefile.am:
9211         * testsuite/caps/renegotiate.c: (main):
9212           it's sinesrc and works in that case
9213
9214 2004-05-04  Wim Taymans  <wim@fluendo.com>
9215
9216         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
9217         (group_dec_link), (gst_opt_scheduler_pad_unlink):
9218         when removing an element from a group, we always need to
9219         decrement the link count that this group had with other 
9220         groups through the element.
9221         added an extra assert to catch inconsistencies when decrementing
9222         the link count.
9223
9224 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9225
9226         * configure.ac:
9227         * docs/gst/Makefile.am:
9228         * docs/gst/gstreamer-sections.txt:
9229         * docs/gst/tmpl/gstcompat.sgml:
9230         * examples/appreader/Makefile.am:
9231         * examples/cutter/Makefile.am:
9232         * examples/events/Makefile.am:
9233         * examples/helloworld/Makefile.am:
9234         * examples/helloworld2/Makefile.am:
9235         * examples/launch/Makefile.am:
9236         * examples/manual/Makefile.am:
9237         * examples/mixer/Makefile.am:
9238         * examples/pingpong/Makefile.am:
9239         * examples/plugins/Makefile.am:
9240         * examples/queue/Makefile.am:
9241         * examples/queue2/Makefile.am:
9242         * examples/queue3/Makefile.am:
9243         * examples/queue4/Makefile.am:
9244         * examples/retag/Makefile.am:
9245         * examples/thread/Makefile.am:
9246         * examples/typefind/Makefile.am:
9247         * examples/xml/Makefile.am:
9248         * gst/Makefile.am:
9249         * gst/autoplug/Makefile.am:
9250         * gst/elements/Makefile.am:
9251         * gst/gstcompat.h:
9252         * gst/indexers/Makefile.am:
9253         * gst/parse/Makefile.am:
9254         * gst/registries/Makefile.am:
9255         * gst/schedulers/Makefile.am:
9256         * libs/gst/bytestream/Makefile.am:
9257         * libs/gst/control/Makefile.am:
9258         * libs/gst/getbits/Makefile.am:
9259         * po/af.po:
9260         * po/az.po:
9261         * po/en_GB.po:
9262         * po/fr.po:
9263         * po/nl.po:
9264         * po/sr.po:
9265         * po/sv.po:
9266         * po/tr.po:
9267         * po/uk.po:
9268         * tests/Makefile.am:
9269         * tests/bufspeed/Makefile.am:
9270         * tests/instantiate/Makefile.am:
9271         * tests/memchunk/Makefile.am:
9272         * tests/muxing/Makefile.am:
9273         * tests/negotiation/Makefile.am:
9274         * tests/probes/Makefile.am:
9275         * tests/sched/Makefile.am:
9276         * tests/seeking/Makefile.am:
9277         * tests/threadstate/Makefile.am:
9278         * testsuite/caps/Makefile.am:
9279         * testsuite/cleanup/Makefile.am:
9280         * testsuite/dlopen/Makefile.am:
9281         * testsuite/dynparams/Makefile.am:
9282         * testsuite/plugin/Makefile.am:
9283         * testsuite/states/Makefile.am:
9284         * tools/Makefile.am:
9285           reorganize compile/link flags to be consistent
9286           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
9287
9288 2004-05-04  David Schleef  <ds@schleef.org>
9289
9290         The "once more, with feeling" check-in.
9291         * testsuite/caps/Makefile.am: dist caps_strings
9292         * testsuite/caps/renegotiate.c: (main): This test triggers a
9293           segfault in the core.  Marking as failing.
9294
9295 2004-05-03  David Schleef  <ds@schleef.org>
9296
9297         * testsuite/caps/deserialize.c: (main): Fix problems noticed
9298           by the build bots.
9299         * testsuite/caps/renegotiate.c: (main): Same.
9300
9301 2004-05-03  David Schleef  <ds@schleef.org>
9302
9303         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
9304
9305 2004-05-03  David Schleef  <ds@schleef.org>
9306
9307         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
9308           variable to find our source file.
9309
9310 2004-05-03  David Schleef  <ds@schleef.org>
9311
9312         * configure.ac:  Link plugins with libgstreamer and dependent
9313           libraries
9314         * testsuite/caps/Makefile.am:
9315         * testsuite/caps/caps_strings:
9316         * testsuite/caps/deserialize.c: (main): Add a little test to slog
9317           through a file of caps strings and test each one
9318
9319 2004-05-04  Benjamin Otte  <otte@gnome.org>
9320
9321         * libs/gst/bytestream/Makefile.am:
9322         * libs/gst/bytestream/adapter.c: 
9323         * libs/gst/bytestream/adapter.h:
9324           add GstAdapter, similar to bytestream, but doesn't require ugly event
9325           handling or uglier loopbased elements
9326
9327 2004-05-03  David Schleef  <ds@schleef.org>
9328
9329         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
9330         * testsuite/caps/erathostenes.c:
9331         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
9332
9333 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9334
9335         * docs/pwg/pwg.xml:
9336           remove hardcoded stylesheet path (duh)
9337         * docs/random/release:
9338         * docs/gst/gstreamer-sections.txt:
9339         * gst/Makefile.am:
9340         * gst/gst.h:
9341         * gst/gst_private.h:
9342         * gst/gstcaps.c:
9343         * gst/gstevent.c:
9344         * gst/gstformat.c:
9345         * gst/gstinfo.c:
9346         * gst/gstinfo.h:
9347         * gst/gstinterface.c:
9348         * gst/gstmemchunk.c:
9349         * gst/gstprobe.c:
9350         * gst/gstquery.c:
9351         * gst/gstregistry.c:
9352         * gst/gstregistrypool.c:
9353         * gst/gststructure.c:
9354         * gst/gsttaginterface.c:
9355         * gst/gstthread.c:
9356         * gst/gsttrace.c:
9357         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
9358         * gst/gsturi.c:
9359         * gst/gstvalue.c:
9360           deprecate gst_info; remove gstlog.h
9361    
9362
9363 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9364
9365         * Makefile.am:
9366         * po/en_GB.po:
9367         * po/sv.po:
9368         * po/uk.po:
9369           updated translations
9370
9371 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9372
9373         * gst/gstbin.c: (gst_bin_dispose):
9374           better debugging
9375
9376 2004-05-03  Johan Dahlin  <johan@gnome.org>
9377
9378         * gst/schedulers/gstoptimalscheduler.c
9379         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
9380         really is a GstElement. Avoids critical when running gst-launch -v
9381         and a oggdemux/decoding pipeline.
9382
9383 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9384
9385         * docs/gst/tmpl/gstpipeline.sgml :
9386         * docs/manual/elements-api.xml :
9387                 doc fix by Patrick Guimond (Protector) from devel ML
9388                 reviewed by ronald
9389
9390 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9391
9392         * docs/gst/Makefile.am :
9393         * docs/libs/Makefile.am :
9394                 apply a patch from Arwed v. Merkatz so that gtk-doc
9395                 generated docs install (same for .devhelp file)
9396                 (fixes part 1 of #138836)
9397
9398 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9399
9400         * docs/faq/dependencies.xml: typo
9401         * docs/faq/getting.xml :
9402             - fix download URL for new gstreamer site
9403             - hide sf.net download page as latest version aren't there
9404             - fix apt URLs
9405             - fill "get via CVS" paragraph (link to dev page on the site)
9406         * docs/faq/general.xml:
9407             hide status tables as they no more exists
9408             change case on plugins license file to reflect reality
9409         * docs/faq/troubleshooting.xml:
9410             remove the wiki question/answer as there is no more wiki
9411
9412 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9413
9414         * gst/gsterror.h:
9415           include the headers needed for declarations used in this header
9416
9417 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9418
9419         * docs/random/uraeus/gstreamer_and_midi.txt :
9420           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
9421           (fixes #132288)
9422
9423 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
9424
9425         reviewed by Benjamin Otte  <otte@gnome.org>
9426
9427         * gst/schedulers/gthread-cothreads.h:
9428           free allocated data for main cothread, too when destroying context
9429           (fixes #141417)
9430
9431 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9432
9433         * docs/manual/goals.xml : remove duplicated paragraph at end 
9434         of doc page (fixes #141448)
9435
9436 2004-04-29  David Schleef  <ds@schleef.org>
9437
9438         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
9439         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
9440
9441 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9442
9443         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
9444           fix property
9445         * gst/gstcaps.c:
9446           fix doc string
9447         * po/POTFILES.in:
9448           rename typefind source file
9449
9450 2004-04-28  David Schleef  <ds@schleef.org>
9451
9452         Several new files from Steve Lhomme's MSVC patch (bug #141317):
9453         * win32/GStreamer.vcproj:
9454         * win32/Makefile:
9455         * win32/config.h:
9456         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
9457         (_trewinddir), (_ttelldir), (_tseekdir):
9458         * win32/dirent.h:
9459         * win32/gst-inspect.vcproj:
9460         * win32/gst-launch.vcproj:
9461         * win32/gst-register.vcproj:
9462         * win32/gstbytestream.vcproj:
9463         * win32/gstelements.vcproj:
9464         * win32/gstoptimalscheduler.vcproj:
9465         * win32/gstspider.vcproj:
9466         * win32/gtchar.h:
9467         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
9468         * win32/mman.h:
9469         * win32/mman.inl:
9470         * win32/msvc71.sln:
9471
9472 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9473
9474         * gst/gst.c: (init_post):
9475         * gst/gstinfo.c:
9476           remove useless _gst_progname stuff
9477         * tools/gst-inspect.c: (print_field), (print_caps):
9478           improve caps output
9479
9480 2004-04-28  David Schleef  <ds@schleef.org>
9481
9482         Disable parsing of a lot of files that aren't part of the
9483         exported API.  Move corresponding template files to old/,
9484         waiting for removal when they don't contain anything
9485         interesting.
9486         * docs/gst/Makefile.am:
9487         * docs/gst/gstreamer-sections.txt:
9488         * docs/gst/tmpl/cothreads.sgml:
9489         * docs/gst/tmpl/cothreads_compat.sgml:
9490         * docs/gst/tmpl/gettext.sgml:
9491         * docs/gst/tmpl/gobject2gtk.sgml:
9492         * docs/gst/tmpl/grammar.tab.sgml:
9493         * docs/gst/tmpl/gst-i18n-app.sgml:
9494         * docs/gst/tmpl/gst-i18n-lib.sgml:
9495         * docs/gst/tmpl/gst_private.sgml:
9496         * docs/gst/tmpl/gstaggregator.sgml:
9497         * docs/gst/tmpl/gstarch.sgml:
9498         * docs/gst/tmpl/gstatomic_impl.sgml:
9499         * docs/gst/tmpl/gstbufferstore.sgml:
9500         * docs/gst/tmpl/gstdata_private.sgml:
9501         * docs/gst/tmpl/gstdisksink.sgml:
9502         * docs/gst/tmpl/gstdisksrc.sgml:
9503         * docs/gst/tmpl/gstelementfactory.sgml:
9504         * docs/gst/tmpl/gstextratypes.sgml:
9505         * docs/gst/tmpl/gstfakesink.sgml:
9506         * docs/gst/tmpl/gstfakesrc.sgml:
9507         * docs/gst/tmpl/gstfdsink.sgml:
9508         * docs/gst/tmpl/gstfdsrc.sgml:
9509         * docs/gst/tmpl/gstfilesink.sgml:
9510         * docs/gst/tmpl/gstfilesrc.sgml:
9511         * docs/gst/tmpl/gsthttpsrc.sgml:
9512         * docs/gst/tmpl/gstidentity.sgml:
9513         * docs/gst/tmpl/gstindexfactory.sgml:
9514         * docs/gst/tmpl/gstmarshal.sgml:
9515         * docs/gst/tmpl/gstmd5sink.sgml:
9516         * docs/gst/tmpl/gstmultidisksrc.sgml:
9517         * docs/gst/tmpl/gstmultifilesrc.sgml:
9518         * docs/gst/tmpl/gstpadtemplate.sgml:
9519         * docs/gst/tmpl/gstpipefilter.sgml:
9520         * docs/gst/tmpl/gstschedulerfactory.sgml:
9521         * docs/gst/tmpl/gstsearchfuncs.sgml:
9522         * docs/gst/tmpl/gstshaper.sgml:
9523         * docs/gst/tmpl/gstspider.sgml:
9524         * docs/gst/tmpl/gstspideridentity.sgml:
9525         * docs/gst/tmpl/gststatistics.sgml:
9526         * docs/gst/tmpl/gsttee.sgml:
9527         * docs/gst/tmpl/gsttimecache.sgml:
9528         * docs/gst/tmpl/gsttypefind.sgml:
9529         * docs/gst/tmpl/gsttypefindfactory.sgml:
9530         * docs/gst/tmpl/gstxmlregistry.sgml:
9531         * docs/gst/tmpl/gthread-cothreads.sgml:
9532         * docs/gst/tmpl/old/cothreads.sgml:
9533         * docs/gst/tmpl/old/cothreads_compat.sgml:
9534         * docs/gst/tmpl/old/gettext.sgml:
9535         * docs/gst/tmpl/old/gobject2gtk.sgml:
9536         * docs/gst/tmpl/old/grammar.tab.sgml:
9537         * docs/gst/tmpl/old/gst-i18n-app.sgml:
9538         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
9539         * docs/gst/tmpl/old/gst_private.sgml:
9540         * docs/gst/tmpl/old/gstaggregator.sgml:
9541         * docs/gst/tmpl/old/gstarch.sgml:
9542         * docs/gst/tmpl/old/gstatomic_impl.sgml:
9543         * docs/gst/tmpl/old/gstbufferstore.sgml:
9544         * docs/gst/tmpl/old/gstdata_private.sgml:
9545         * docs/gst/tmpl/old/gstdisksink.sgml:
9546         * docs/gst/tmpl/old/gstdisksrc.sgml:
9547         * docs/gst/tmpl/old/gstelementfactory.sgml:
9548         * docs/gst/tmpl/old/gstextratypes.sgml:
9549         * docs/gst/tmpl/old/gstfakesink.sgml:
9550         * docs/gst/tmpl/old/gstfakesrc.sgml:
9551         * docs/gst/tmpl/old/gstfdsink.sgml:
9552         * docs/gst/tmpl/old/gstfdsrc.sgml:
9553         * docs/gst/tmpl/old/gstfilesink.sgml:
9554         * docs/gst/tmpl/old/gstfilesrc.sgml:
9555         * docs/gst/tmpl/old/gsthttpsrc.sgml:
9556         * docs/gst/tmpl/old/gstidentity.sgml:
9557         * docs/gst/tmpl/old/gstindexfactory.sgml:
9558         * docs/gst/tmpl/old/gstmarshal.sgml:
9559         * docs/gst/tmpl/old/gstmd5sink.sgml:
9560         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
9561         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
9562         * docs/gst/tmpl/old/gstpadtemplate.sgml:
9563         * docs/gst/tmpl/old/gstpipefilter.sgml:
9564         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
9565         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
9566         * docs/gst/tmpl/old/gstshaper.sgml:
9567         * docs/gst/tmpl/old/gstspider.sgml:
9568         * docs/gst/tmpl/old/gstspideridentity.sgml:
9569         * docs/gst/tmpl/old/gststatistics.sgml:
9570         * docs/gst/tmpl/old/gsttee.sgml:
9571         * docs/gst/tmpl/old/gsttimecache.sgml:
9572         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
9573         * docs/gst/tmpl/old/gstxmlregistry.sgml:
9574         * docs/gst/tmpl/old/gthread-cothreads.sgml:
9575         * docs/gst/tmpl/old/types.sgml:
9576         * docs/gst/tmpl/types.sgml:
9577
9578         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
9579         gtkdoc-scan doesn't like files with the same name in different
9580         directories.
9581         * gst/elements/Makefile.am:
9582         * gst/elements/gstelements.c:
9583         * gst/elements/gsttypefind.c: 
9584         * gst/elements/gsttypefind.h:
9585         * gst/elements/gsttypefindelement.c:
9586         * gst/elements/gsttypefindelement.h:
9587
9588 2004-04-28  David Schleef  <ds@schleef.org>
9589
9590         A bunch of portability fixes, derived from Steve Lhomme's MSVC
9591         patch (bug #141317):
9592         * gst/gst-i18n-lib.h: Allow disabling gettext.
9593         * gst/gstatomic_impl.h: disable warning when it's dumb.
9594         * gst/gstclock.c: fix include
9595         * gst/gstcompat.h: fix variadic macro
9596         * gst/gstinfo.c: fix include
9597         * gst/gstmacros.h: add defines for inlines on MSVC
9598         * gst/gstplugin.c: fix includes
9599         * gst/gstregistry.c: fix includes
9600         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
9601         * gst/gstsystemclock.c: fix include
9602         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
9603         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
9604         * gst/registries/gstxmlregistry.c:
9605         (gst_xml_registry_parse_element_factory): fix use of non-portable
9606         functions
9607         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
9608         * libs/gst/control/dparammanager.h: same
9609
9610 2004-04-28  David Schleef  <ds@schleef.org>
9611
9612         Move a bunch of unused files to old/ with names that are
9613         not case-insensitive-unique.  These files still contain some
9614         useful information that needs to be merged into gstbin.sgml,
9615         etc., so they shouldn't be deleted yet.
9616         * docs/gst/tmpl/GstBin.sgml:
9617         * docs/gst/tmpl/GstBuffer.sgml:
9618         * docs/gst/tmpl/GstCaps.sgml:
9619         * docs/gst/tmpl/GstClock.sgml:
9620         * docs/gst/tmpl/GstCompat.sgml:
9621         * docs/gst/tmpl/GstData.sgml:
9622         * docs/gst/tmpl/GstElement.sgml:
9623         * docs/gst/tmpl/GstEvent.sgml:
9624         * docs/gst/tmpl/GstIndex.sgml:
9625         * docs/gst/tmpl/GstStructure.sgml:
9626         * docs/gst/tmpl/GstTag.sgml:
9627         * docs/gst/tmpl/old/GstBin.sgml:
9628         * docs/gst/tmpl/old/GstBuffer.sgml:
9629         * docs/gst/tmpl/old/GstCaps.sgml:
9630         * docs/gst/tmpl/old/GstClock.sgml:
9631         * docs/gst/tmpl/old/GstCompat.sgml:
9632         * docs/gst/tmpl/old/GstData.sgml:
9633         * docs/gst/tmpl/old/GstElement.sgml:
9634         * docs/gst/tmpl/old/GstEvent.sgml:
9635         * docs/gst/tmpl/old/GstIndex.sgml:
9636         * docs/gst/tmpl/old/GstStructure.sgml:
9637         * docs/gst/tmpl/old/GstTag.sgml:
9638
9639 2004-04-28  David Schleef  <ds@schleef.org>
9640
9641         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
9642         (gst_caps_append), (gst_caps_append_structure),
9643         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
9644         (gst_caps_set_simple), (gst_caps_set_simple_valist),
9645         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
9646         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
9647         (gst_caps_intersect), (gst_caps_normalize),
9648         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
9649         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
9650         * gst/gstcaps.h: use GST_IS_CAPS().
9651
9652 2004-04-26  David Schleef  <ds@schleef.org>
9653
9654         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
9655         assembly.  gcc doesn't handle it correctly. (bug #141083)
9656         * gst/gsttrashstack.h: same
9657
9658 2004-04-25  Benjamin Otte  <otte@gnome.org>
9659
9660         * gst/gstelement.c: (gst_element_change_state):
9661           fix assertion to do an int comparison
9662
9663 2004-04-25  Benjamin Otte  <otte@gnome.org>
9664
9665         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9666           better debugging output on error
9667
9668 2004-04-25  Benjamin Otte  <otte@gnome.org>
9669
9670         * gst/gstcaps.c: (gst_caps_subtract):
9671           fix memleak
9672
9673 2004-04-23  Benjamin Otte  <otte@gnome.org>
9674
9675         * gst/gstvalue.c: (gst_value_compare_buffer),
9676         (_gst_value_initialize):
9677           add comparison function for buffers
9678
9679 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9680
9681         * docs/pwg/pwg.xml:
9682           Just found out that this so-called "ima-wav" format is really
9683           just "dvi adpcm" (according to the MS WAV documentation). So
9684           renaming it. We didn't use it yet anyway.
9685
9686 2004-04-23  Benjamin Otte  <otte@gnome.org>
9687
9688         * gst/gstcaps.c: (gst_caps_is_always_compatible):
9689           call gst_caps_is_subset
9690
9691 2004-04-23  Benjamin Otte  <otte@gnome.org>
9692
9693         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
9694         (gst_caps_is_subset):
9695           add documentation
9696
9697 2004-04-23  Benjamin Otte  <otte@gnome.org>
9698           
9699         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
9700         (gst_caps_structure_subtract), (gst_caps_subtract),
9701         (gst_caps_structure_figure_out_union),
9702         (gst_caps_structure_simplify), (gst_caps_do_simplify):
9703           fix simplifying and subtracting not working correctly with optional
9704           properties
9705           solve assorted problems that make it now simplify ebven more
9706         * docs/gst/tmpl/gstcaps.sgml:
9707         * gst/gstcaps.h:
9708           make gst_caps_do_simplify return a bool to indicate if it simplified
9709         * testsuite/caps/simplify.c: (main):
9710           add more checks. The tests is quite a bit useless right now because
9711           the core is heavily simplifying itself.
9712         * testsuite/caps/caps.h:
9713           fix caps to contain all optional properties
9714
9715 2004-04-22  Benjamin Otte  <otte@gnome.org>
9716
9717         * docs/gst/tmpl/gstcaps.sgml:
9718         * docs/gst/tmpl/gstfilesrc.sgml:
9719         * docs/gst/tmpl/gststructure.sgml:
9720         * docs/gst/tmpl/gstvalue.sgml:
9721           update for recent API changes
9722         * gst/gstcaps.c: (gst_caps_do_simplify):
9723           fix to stop trying with a freed structure
9724         * gst/gstpad.c: (gst_pad_link_fixate):
9725           simplify caps
9726         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
9727           remove C++ comment
9728         * gst/gstpad.h:
9729           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
9730         * gst/gststructure.c: (gst_structure_value_get_generic_type),
9731         (gst_structure_to_string):
9732           keep the correct type when using lists of ranges
9733         * gst/gstvalue.c: (gst_value_list_prepend_value),
9734         (gst_value_list_append_value):
9735           copy the value before adding to the list (d'oh)
9736         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
9737         (gst_value_subtract_int_range_int_range):
9738           handle overflows correctly
9739         * gst/gstvalue.c: (gst_value_subtract_from_list):
9740           fix memleak
9741         * testsuite/caps/caps.h:
9742           add a caps that caused segfaults
9743
9744 2004-04-22  Benjamin Otte  <otte@gnome.org>
9745
9746         * testsuite/refcounting/pad.c: (main):
9747           fix test
9748
9749 2004-04-22  Benjamin Otte  <otte@gnome.org>
9750
9751         * gst/gstcaps.c: (gst_caps_subtract):
9752           allow subtracting ANY and EMPTY from ANY caps
9753
9754 2004-04-22  Benjamin Otte  <otte@gnome.org>
9755
9756         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
9757         (gst_caps_union):
9758           only simplify in functions that create new caps. Simplifying in
9759           gst_caps_append breaks tests.
9760
9761 2004-04-22  Benjamin Otte  <otte@gnome.org>
9762
9763         * gst/gstcaps.c: (gst_caps_structure_simplify):
9764           unset GValue after use
9765         * gst/gstcaps.c: (gst_caps_append), 
9766         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
9767           use gst_caps_simplify (reduces registry size by 30%)
9768         * gst/gstpad.c: (gst_pad_template_new):
9769           don't allow NULL caps
9770
9771 2004-04-22  Benjamin Otte  <otte@gnome.org>
9772
9773         * docs/gst/gstreamer-sections.txt:
9774           add gst_caps_do_simplify
9775         * gst/gstcaps.c:
9776           add documentation for gst_caps_do_simplify
9777         * gst/gstvalue.h:
9778           fix typo in gst_value_register_subtract_func declaration for gst-doc
9779
9780 2004-04-22  Benjamin Otte  <otte@gnome.org>
9781
9782         * gst/gstcaps.c: (gst_caps_from_string_inplace):
9783           fix bug when converting from empty string.
9784         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
9785         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
9786           use gst_caps_new_empty to allocate a new caps. Only that function
9787           allocates memory for caps now.
9788         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
9789         (gst_caps_remove_structure):
9790           add ability to remove one structure (but not to header yet)
9791         * gst/gstcaps.c: (gst_caps_compare_structures),
9792         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
9793         (gst_caps_structure_simplify), (gst_caps_do_simplify),
9794         * gst/gstcaps.h:
9795           add gst_caps_do_simplify that tries to simplify a caps in place.
9796           Deprecate old gst_caps_simplify function.
9797         * testsuite/caps/caps.h:
9798           add caps.h containing a common set of caps to test against.
9799         * testsuite/caps/sets.c: (check_caps), (main):
9800           use it.
9801         * testsuite/caps/.cvsignore:
9802         * testsuite/caps/Makefile.am:
9803         * testsuite/caps/simplify.c: (check_caps), (main):
9804           add test to check correctness and efficency of caps simplification.
9805
9806 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
9807
9808         reviewed by Benjamin Otte  <otte@gnome.org>
9809
9810         * gst/gstparse.c: (_gst_parse_escape):
9811           Free the GString used in _gst_parse_escape()
9812
9813 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9814
9815         * gst/gstpad.c: (gst_pad_link_negotiate):
9816           refuse to link if the link is not possible
9817         * configure.ac:
9818         * testsuite/Makefile.am:
9819         * testsuite/negotiation/.cvsignore:
9820         * testsuite/negotiation/Makefile.am:
9821         * testsuite/negotiation/pad_link.c: (main):
9822           add test that checks the above behaviour
9823
9824 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9825
9826         * docs/gst/gstreamer-sections.txt:
9827           add newly added API
9828
9829 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9830
9831         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9832         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
9833         (gst_filesrc_open_file), (gst_filesrc_close_file),
9834         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
9835         * gst/elements/gstfilesrc.h:
9836           add support for non-regular files (#140734)
9837
9838 2004-04-21  Benjamin Otte  <otte@gnome.org>
9839
9840         * gst/gstpad.c: (gst_pad_link_fixate):
9841           add sophisticated error checking code to see if fixation functions
9842           did their fixation right
9843
9844 2004-04-21  Benjamin Otte  <otte@gnome.org>
9845
9846         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
9847           check for ANY caps before appending/unioning
9848         * gst/gstcaps.c: (gst_caps_is_subset),
9849         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
9850         (gst_caps_structure_subtract), (gst_caps_subtract):
9851         * gst/gstcaps.h:
9852           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
9853           the API. deprecate gst_caps_is_equal_fixed
9854         * gst/gstpad.c: (gst_pad_try_set_caps):
9855         * gst/gstqueue.c: (gst_queue_link):
9856           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
9857         * gst/gststructure.c: (gst_structure_get_name_id):
9858         * gst/gststructure.h:
9859           add function gst_structure_get_name_id
9860         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
9861         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
9862         (gst_value_subtract_int_range_int_range),
9863         (gst_value_subtract_double_double_range),
9864         (gst_value_subtract_double_range_double),
9865         (gst_value_subtract_double_range_double_range),
9866         (gst_value_subtract_from_list), (gst_value_subtract_list),
9867         (gst_value_can_intersect), (gst_value_subtract),
9868         (gst_value_can_subtract), (gst_value_register_subtract_func),
9869         (_gst_value_initialize):
9870         * gst/gstvalue.h:
9871           add support for subtracting values from each other. Note that
9872           subtracting means subtracting as in set theory. Required for caps
9873           stuff above.
9874         * testsuite/caps/.cvsignore:
9875         * testsuite/caps/Makefile.am:
9876         * testsuite/caps/erathostenes.c: (erathostenes), (main):
9877         * testsuite/caps/sets.c: (check_caps), (main):
9878         * testsuite/caps/subtract.c: (check_caps), (main):
9879           add tests for subtraction and equality code.
9880
9881 2004-04-20  David Schleef  <ds@schleef.org>
9882
9883         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
9884         * gst/indexers/Makefile.am:
9885         * gst/schedulers/Makefile.am:
9886         * libs/gst/bytestream/Makefile.am:
9887         * libs/gst/control/Makefile.am:
9888         * libs/gst/getbits/Makefile.am:
9889
9890 2004-04-20  David Schleef  <ds@schleef.org>
9891
9892         * common/as-libtool.mak: Fine-tune DLL building.
9893         * configure.ac: Link plugins against libgstreamer.  Define plugindir
9894         (like gst-plugins)
9895         * examples/plugins/Makefile.am: remove plugindir
9896         * gst/autoplug/Makefile.am: DLL building fixes
9897         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
9898         Windows.
9899         * gst/elements/gstelements.c: Conditionally disable pipefilter.
9900         * gst/indexers/Makefile.am: DLL building fixes
9901         * gst/schedulers/Makefile.am: DLL building fixes.
9902         * libs/gst/bytestream/Makefile.am: DLL building fixes.
9903         * libs/gst/control/Makefile.am: same
9904         * libs/gst/getbits/Makefile.am: same
9905         * testsuite/Makefile.am: New dlopen directory
9906         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
9907         when dlopened.
9908         * testsuite/dlopen/dlopen_gst.c: (main): same
9909         * testsuite/dlopen/loadgst.c: (do_test): same
9910
9911 2004-04-20  David Schleef  <ds@schleef.org>
9912
9913         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
9914         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
9915
9916 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9917
9918         * gst/gstelement.c: (gst_element_wait),
9919         (gst_element_set_time_delay), (gst_element_change_state):
9920           Use GST_TIME_*
9921
9922 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9923
9924         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
9925         (gst_spider_identity_plug):
9926           improve debugging messages
9927         * gst/gstbin.c: (gst_bin_remove_func):
9928           make sure the state_change function is only called with simple state
9929           transitions
9930
9931 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9932
9933         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
9934         (gst_fakesink_set_property), (gst_fakesink_chain):
9935         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
9936         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
9937         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
9938         * gst/elements/gstidentity.c: (gst_identity_chain),
9939         (gst_identity_set_property):
9940         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
9941         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
9942           add warnings to _set_property for unknown arguments
9943           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
9944
9945 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9946
9947         * Makefile.am:
9948         * docs/manuals.mak:
9949           add .po file download snippet
9950           fix a bug in the doc makefile
9951
9952 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9953
9954         * Makefile.am:
9955         * po/LINGUAS:
9956         * po/en_GB.po:
9957           Added en_GB translation (Gareth Owen)
9958
9959 2004-04-20  Johan Dahlin  <johan@gnome.org>
9960
9961         * gst/gstpad.c (_invent_event): Clean up
9962
9963 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9964
9965         * testsuite/caps/filtercaps.c: (main):
9966           fix test to test things correctly (caps are complicated)
9967
9968 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9969
9970         * testsuite/caps/Makefile.am:
9971         * testsuite/caps/filtercaps.c: (main):
9972           add test (that doesn't work right now, but should)
9973
9974 2004-04-19  David Schleef  <ds@schleef.org>
9975
9976         * configure.ac: Add test for allowing unaligned access.  Add define
9977         to put in gstconfig.h.
9978         * docs/gst/gstreamer-sections.txt: New symbols
9979         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
9980         * docs/gst/tmpl/gstfilesrc.sgml:
9981         * docs/gst/tmpl/gstparse.sgml:
9982         * docs/gst/tmpl/gsttypes.sgml:
9983         * docs/gst/tmpl/gstutils.sgml:
9984         * docs/gst/tmpl/gstvalue.sgml:
9985         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
9986         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
9987         on most !i386/!powerpc architectures.  From Daniel Gazard
9988         <daniel.gazard@free.fr>.  (bug #140156)
9989         * po/af.po: Check in changes made by gettext.
9990         * po/az.po:
9991         * po/fr.po:
9992         * po/nl.po:
9993         * po/sr.po:
9994         * po/sv.po:
9995
9996 2004-04-20  Benjamin Otte  <otte@gnome.org>
9997
9998         * gst/schedulers/entryscheduler.c: 
9999         (gst_entry_scheduler_yield):
10000           refuse to yield when decoupled elements insist on doing that.
10001           At least it's better than crashing
10002
10003 2004-04-19  David Schleef  <ds@schleef.org>
10004
10005         * docs/libs/Makefile.am: Change sinclude to include
10006         * docs/gst/Makefile.am: same
10007         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
10008
10009 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10010
10011         * po/LINGUAS:
10012         * po/uk.po:
10013           Added Ukrainian translation (Maxim V. Dziumanenko)
10014
10015 2004-04-19  Johan Dahlin  <johan@gnome.org>
10016
10017         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
10018         checking here, do it before calling the function.
10019         Clean up, use for loops instead of while loops while iterating
10020         over lists.
10021
10022         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
10023         in debug message.
10024         (gst_spider_create_and_plug): Improve debug message.
10025         General: Replace while loops which iterates over GLists with for
10026         loops. Which are much cleaner, improves readability, especially
10027         for gst_spider_identity_plug
10028
10029         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
10030         fixes bug 140477
10031
10032 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10033
10034         * po/LINGUAS:
10035         * po/tr.po:
10036           Added Turkish translation (Baris Cicek)
10037
10038 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10039
10040         * docs/faq/troubleshooting.xml:
10041           Mention gst-register in the FAQ (fixes 139045).
10042
10043 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10044
10045         * docs/gst/gstreamer-sections.txt:
10046
10047 2004-04-17  Benjamin Otte  <otte@gnome.org>
10048
10049         * gst/gstelement.c: (gst_element_dispose):
10050           simplify
10051         * gst/gstpad.c: (gst_pad_call_chain_function):
10052           don't create loads of events due to bad macro usage
10053
10054 2004-04-16  David Schleef  <ds@schleef.org>
10055
10056         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
10057         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
10058         * gst/gstvalue.c: (gst_value_serialize_buffer),
10059         (gst_value_deserialize_buffer), (gst_type_is_fixed),
10060         (_gst_value_initialize): Create a new function gst_type_is_fixed()
10061         to indicate types that are fixed wrt caps or not.  Switching to
10062         this function fixes (bug #140298).
10063         * gst/gstvalue.h:
10064
10065 2004-04-16  David Schleef  <ds@schleef.org>
10066
10067         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
10068         for GST_UNALIGNED_ACESS, since we essentially know which archs
10069         are ok.
10070
10071 2004-04-17  Benjamin Otte  <otte@gnome.org>
10072
10073         * docs/gst/Makefile.am:
10074           ignore gst/parse directory when building docs (fixes #140205)
10075
10076 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10077
10078         * testsuite/refcounting/mem.c: (vmsize):
10079           do error checking
10080
10081 2004-04-16  Johan Dahlin  <johan@gnome.org>
10082
10083         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
10084         and gst_pad_call_get_function.
10085
10086 2004-04-15  David Schleef  <ds@schleef.org>
10087
10088         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
10089         checks if we can access unaligned memory.
10090         * configure.ac: Use it.
10091
10092 2004-04-16  Benjamin Otte  <otte@gnome.org>
10093
10094         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
10095         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
10096         * gst/elements/gstfilesrc.h:
10097           s/seek_happened/need_discont/ and require discont before sending any
10098           data
10099
10100 2004-04-15  David Schleef  <ds@schleef.org>
10101
10102         * gst/gstvalue.c: (gst_value_serialize_buffer),
10103         (gst_value_deserialize_buffer), (_gst_value_initialize):
10104         Register these types as fundamental types. (bug #140015)
10105
10106 2004-04-16  Benjamin Otte  <otte@gnome.org>
10107
10108         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
10109         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
10110         (gst_pad_pull):
10111           implement enforcing discont events before buffers are passed. This
10112           allows state changes of only some elements and later correctly going
10113           on where they left off (or in short: you can now set audio sinks to
10114           NULL to release the device when the pipeline is paused)
10115         * gst/gstpad.c: (gst_pad_call_chain_function),
10116         (gst_pad_call_get_function):
10117         * gst/gstpad.h:
10118           add gst_pad_call_chain_function and gst_pad_call_get_function for
10119           scheduler interaction. They are required because of the changes
10120           above.
10121         * gst/schedulers/entryscheduler.c: (get_buffer),
10122         (gst_entry_scheduler_chain_wrapper),
10123         (gst_entry_scheduler_get_wrapper),
10124         (gst_entry_scheduler_state_transition),
10125         (gst_entry_scheduler_pad_link):
10126         * gst/schedulers/gstbasicscheduler.c:
10127         (gst_basic_scheduler_chain_wrapper),
10128         (gst_basic_scheduler_src_wrapper),
10129         (gst_basic_scheduler_chainhandler_proxy),
10130         (gst_basic_scheduler_gethandler_proxy),
10131         (gst_basic_scheduler_cothreaded_chain),
10132         (gst_basic_scheduler_chain_elements):
10133         * gst/schedulers/gstoptimalscheduler.c:
10134         (get_group_schedule_function), (pad_clear_queued),
10135         (gst_opt_scheduler_pad_link):
10136           use the new functions instead of calling get/chain-functions
10137           directly.
10138
10139 2004-04-15  David Schleef  <ds@schleef.org>
10140
10141         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
10142         * docs/gst/tmpl/gstinfo.sgml: same
10143         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
10144         gtk-doc put here.
10145         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
10146         * examples/queue/queue.c: (main):  We iterate pipelines, not
10147         bins.  (bug #139996)
10148
10149 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10150
10151         * docs/pwg/advanced-types.xml:
10152           Add MS RLE support. Also document Qt RLE although I have no sample
10153           files for that yet. And document an extra property for ADPCM.
10154
10155 2004-04-15  David Schleef  <ds@schleef.org>
10156
10157         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
10158         (_gst_plugin_fault_handler_setup):  Disable more stuff on
10159         Windows.
10160
10161 2004-04-15  David Schleef  <ds@schleef.org>
10162
10163         * gst/gstinfo.c: (_gst_debug_init): Change some internal
10164         symbol names to not conflict with new gstinfo.h symbols.
10165         * gst/gstinfo.h: Add inline functions for all those crazy
10166         compilers that don't know how to handle variadic macros (MSVC).
10167
10168 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10169
10170         * configure.ac: bump nano to 1
10171
10172 === release 0.8.1 ===
10173
10174 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10175
10176         * NEWS:
10177         * RELEASE:
10178         * configure.ac:
10179           releasing 0.8.1, "Snow Brigade"
10180
10181 2004-04-14  David Schleef  <ds@schleef.org>
10182
10183         * testsuite/Makefile.am: define tests_ignore
10184         * testsuite/Rules: Added new tests_ignore, which get compiled,
10185         but not run (generally because they're inconsistent or have
10186         heisenbugs).  Now we can ensure all the .c files compile in
10187         testsuite/.
10188         * testsuite/bins/Makefile.am: define tests_ignore
10189         * testsuite/bytestream/Makefile.am:
10190         * testsuite/caps/Makefile.am:
10191         * testsuite/clock/Makefile.am:
10192         * testsuite/debug/Makefile.am:
10193         * testsuite/debug/global.c: (gst_debug_log_one),
10194         (gst_debug_log_two): Fix compilation problem.
10195         * testsuite/dynparams/Makefile.am:
10196         * testsuite/elements/Makefile.am:
10197         * testsuite/ghostpads/Makefile.am:
10198         * testsuite/indexers/Makefile.am:
10199         * testsuite/parse/Makefile.am:
10200         * testsuite/plugin/Makefile.am:
10201         * testsuite/refcounting/Makefile.am:
10202         * testsuite/refcounting/element_pad.c: (main): Don't return leak
10203         results, because it's not calculated correctly.
10204         * testsuite/refcounting/pad.c: (main): same
10205         * testsuite/states/Makefile.am:
10206         * testsuite/tags/Makefile.am:
10207         * testsuite/threads/Makefile.am:
10208
10209 2004-04-14  David Schleef  <ds@schleef.org>
10210
10211         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
10212         generating bad code around the cpu detection asm code.
10213
10214 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10215
10216         * tools/gst-inspect.c: (print_element_info):
10217           print numeric version of rank as well, since we added some - 1
10218           rank values to elements
10219
10220 2004-04-13  David Schleef  <ds@schleef.org>
10221
10222         * configure.ac:  Disable various code when compiling for MinGW.
10223         * gst/elements/Makefile.am:
10224         * gst/elements/gstelements.c:
10225         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10226         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
10227         * gst/registries/gstxmlregistry.c: (make_dir):
10228
10229 2004-04-13  David Schleef  <ds@schleef.org>
10230
10231         * gst/Makefile.am:
10232         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
10233         assembly.
10234         * gst/gstcpuid_i386.s: remove
10235
10236 2004-04-13  David Schleef  <ds@schleef.org>
10237
10238         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
10239         seems to think it needs to be done.
10240         * docs/gst/tmpl/gstfakesink.sgml:
10241         * docs/gst/tmpl/gstfakesrc.sgml:
10242         * docs/gst/tmpl/gstfdsink.sgml:
10243         * docs/gst/tmpl/gstfdsrc.sgml:
10244         * docs/gst/tmpl/gstfilesink.sgml:
10245         * docs/gst/tmpl/gstfilesrc.sgml:
10246         * docs/gst/tmpl/gstidentity.sgml:
10247         * docs/gst/tmpl/gstmd5sink.sgml:
10248         * docs/gst/tmpl/gstmultifilesrc.sgml:
10249         * docs/gst/tmpl/gstpipefilter.sgml:
10250         * docs/gst/tmpl/gstshaper.sgml:
10251         * docs/gst/tmpl/gstspider.sgml:
10252         * docs/gst/tmpl/gstspideridentity.sgml:
10253         * docs/gst/tmpl/gststatistics.sgml:
10254         * docs/gst/tmpl/gsttee.sgml:
10255         * docs/gst/tmpl/gsttypefind.sgml:
10256         * docs/gst/tmpl/gstutils.sgml:
10257
10258 2004-04-13  David Schleef  <ds@schleef.org>
10259
10260         * configure.ac: Changes to remove POSIXisms (mmap in this case)
10261         and to build DLLs on Windows.
10262         * gst/Makefile.am:
10263         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
10264         (gst_filesrc_open_file):
10265         * gst/schedulers/Makefile.am:
10266
10267 2004-04-13  David Schleef  <ds@schleef.org>
10268
10269         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
10270         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
10271         fixating lists.
10272
10273 2004-04-12  David Schleef  <ds@schleef.org>
10274
10275         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
10276         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
10277         to using it.
10278         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
10279         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
10280         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
10281         * gst/gststructure.c: (gst_structure_set_valist),
10282         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
10283         support for buffers.
10284         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
10285         intended to be const.
10286         * gst/gsttag.h: same
10287         * gst/gstvalue.c: (gst_value_serialize_buffer),
10288         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
10289         to (de)serialize buffers.
10290         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
10291         * testsuite/caps/string-conversions.c: (main):
10292         * testsuite/caps/value_serialize.c: add new test
10293
10294 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10295
10296         * docs/pwg/advanced-types.xml:
10297           Document MS video 1 (video/x-msvideocodec) mimetype/format.
10298
10299 2004-04-11  Benjamin Otte  <otte@gnome.org>
10300
10301         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
10302           rename categories to basic_*
10303         * gst/schedulers/gstbasicscheduler.c: 
10304         (gst_basic_scheduler_chain_wrapper),
10305         (gst_basic_scheduler_chainhandler_proxy),
10306         (gst_basic_scheduler_gethandler_proxy),
10307         (gst_basic_scheduler_eventhandler_proxy):
10308           debugging category fixes - put common stuff in log category
10309         * gst/schedulers/gstbasicscheduler.c: 
10310         (gst_basic_scheduler_chain_elements):
10311           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
10312           active and linking two active chains
10313
10314 2004-04-10  Benjamin Otte  <otte@gnome.org>
10315
10316         * docs/pwg/intro-preface.xml:
10317           fix dead links and remove reference to Wiki
10318
10319 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10320
10321         * gst/schedulers/gstbasicscheduler.c:
10322           make sure we can switch back to the main function if we're still in
10323           the main function (supposed to fix #139617)
10324         * gst/schedulers/gthread-cothreads.h:
10325           don't throw an error when switching to the same cothread
10326
10327 2004-04-09  Benjamin Otte  <otte@gnome.org>
10328
10329         * gst/gstbin.c: (gst_bin_get_type):
10330         * gst/gstclock.c: (gst_clock_get_type):
10331         * gst/gstindex.c: (gst_index_get_type):
10332         * gst/gstobject.c: (gst_object_get_type),
10333         (gst_signal_object_get_type):
10334         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
10335         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
10336         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
10337         * gst/gstqueue.c: (gst_queue_get_type):
10338         * gst/gstregistry.c: (gst_registry_get_type):
10339         * gst/gstsystemclock.c: (gst_system_clock_get_type):
10340         * gst/gstthread.c: (gst_thread_get_type):
10341           don't use memchunks for these objects, use malloc instead
10342
10343 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10344
10345         * docs/gst/.cvsignore:
10346         * docs/gst/Makefile.am:
10347         * docs/gst/gstreamer-sections.txt:
10348         * docs/gst/tmpl/gstaggregator.sgml:
10349         * docs/gst/tmpl/gstbuffer.sgml:
10350         * docs/gst/tmpl/gstclock.sgml:
10351         * docs/gst/tmpl/gstelement.sgml:
10352         * docs/gst/tmpl/gstfakesink.sgml:
10353         * docs/gst/tmpl/gstfakesrc.sgml:
10354         * docs/gst/tmpl/gstfdsink.sgml:
10355         * docs/gst/tmpl/gstfdsrc.sgml:
10356         * docs/gst/tmpl/gstfilesink.sgml:
10357         * docs/gst/tmpl/gstfilesrc.sgml:
10358         * docs/gst/tmpl/gstidentity.sgml:
10359         * docs/gst/tmpl/gstindex.sgml:
10360         * docs/gst/tmpl/gstinfo.sgml:
10361         * docs/gst/tmpl/gstmd5sink.sgml:
10362         * docs/gst/tmpl/gstmultifilesrc.sgml:
10363         * docs/gst/tmpl/gstpad.sgml:
10364         * docs/gst/tmpl/gstpipefilter.sgml:
10365         * docs/gst/tmpl/gstpipeline.sgml:
10366         * docs/gst/tmpl/gstpluginfeature.sgml:
10367         * docs/gst/tmpl/gstqueue.sgml:
10368         * docs/gst/tmpl/gstregistry.sgml:
10369         * docs/gst/tmpl/gstscheduler.sgml:
10370         * docs/gst/tmpl/gstshaper.sgml:
10371         * docs/gst/tmpl/gstspider.sgml:
10372         * docs/gst/tmpl/gstspideridentity.sgml:
10373         * docs/gst/tmpl/gststatistics.sgml:
10374         * docs/gst/tmpl/gstsystemclock.sgml:
10375         * docs/gst/tmpl/gsttee.sgml:
10376         * docs/gst/tmpl/gstthread.sgml:
10377         * docs/gst/tmpl/gsttypefind.sgml:
10378         * docs/gst/tmpl/gstutils.sgml:
10379           further doc build fixes
10380
10381 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10382
10383         * docs/gst/Makefile.am:
10384           make docs exit on scanning problems
10385           fix nonsrcdir build issues
10386         * docs/gst/gstreamer-sections.txt:
10387           adding stuff from -unused
10388         * gst/gstqueue.h:
10389           create GstQueueSize
10390         * gst/schedulers/cothreads_compat.h:
10391           fix cothread warnings
10392
10393 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10394
10395         * docs/gst/gstreamer-sections.txt:
10396           remove defines deprecated by Benjamin
10397
10398 2004-04-07  Benjamin Otte  <otte@gnome.org>
10399
10400         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10401           when the buffer is complete, don't check if other buffers are needed
10402         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
10403           check that the offset is >0 so we don't try to read before the
10404           beginning of the file
10405         * gst/gstpad.c: (gst_pad_set_pad_template):
10406           sink the template, so we don't end up with 130k pad templates
10407
10408 2004-04-06  Benjamin Otte  <otte@gnome.org>
10409
10410         * gst/autoplug/gstspider.c: (gst_spider_link_add):
10411           don't ref the element, adding already reffed it. And we didn't unref
10412           it later anyway... (huge memleak when you used many spider elements)
10413         * gst/gstelement.c: (gst_element_base_class_finalize):
10414         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
10415         (gst_element_register):
10416         * gst/gsturi.c: (gst_element_make_from_uri):
10417           use gst_object_(un)ref instead of g_object(un)ref
10418
10419 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10420
10421         * gst/gstbuffer.h:
10422           remove macro that wouldn't work anymore because struct member has
10423           been removed.
10424         * gst/schedulers/entryscheduler.c: (schedule_forward):
10425           fix segfault for unconnected pads
10426         
10427 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10428
10429         reviewed by David Schleef <ds@schleef.org>
10430
10431         * gst/gstinfo.h:
10432           *_FORMAT modifiers should require putting a % in front of them for
10433           consistency reasons.
10434
10435 2004-04-05  Colin Walters  <walters@redhat.com>
10436
10437         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
10438         space.
10439
10440 2004-04-05  Benjamin Otte  <otte@gnome.org>
10441
10442         * configure.ac:
10443         * gst/Makefile.am:
10444         * gst/gst_private.h:
10445         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
10446           add support for detecting if GStreamer runs inside valgrind.
10447           requires valgrind (d'oh) and --enable-debug for correct cdetection.
10448           print a big message in valgrind that GStreamer has detected it's
10449           running inside and might now use different code.
10450         * gst/gstmemchunk.c: (populate), (free_area),
10451         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
10452         (gst_mem_chunk_free):
10453           flag memchunks for valgrind, so it can detect leaking of chunks.
10454           This allows detecting leaks of GstBuffer and GstEvent correctly
10455           inside valgrind.
10456
10457 2004-04-05  David Schleef  <ds@schleef.org>
10458
10459         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
10460           jensgr@gmx.net (Jens Granseuer)
10461
10462 2004-04-05  David Schleef  <ds@schleef.org>
10463
10464         * gst/gstbuffer.c: (_gst_buffer_sub_free),
10465         (gst_buffer_default_free), (gst_buffer_default_copy),
10466         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
10467         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
10468         structures in one place.
10469
10470 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10471
10472         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
10473           (GST_TIME_FORMAT, GST_TIME_ARGS)
10474
10475 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10476
10477         * testsuite/elements/Makefile.am:
10478           disable test until it stops breaking make distcheck
10479
10480 2004-04-05  Johan Dahlin  <johan@gnome.org>
10481
10482         * po/sv.po: Updated translation
10483
10484 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10485
10486         * gst/gstplugin.c: (gst_plugin_load_file):
10487           fix segfault for when original plugin was loaded statically
10488
10489 2004-04-05  Benjamin Otte  <otte@gnome.org>
10490
10491         * testsuite/debug/category.c: (main):
10492         * testsuite/debug/commandline.c: (main):
10493         * testsuite/debug/output.c: (main):
10494           fix tests to work again with debugging enabled
10495
10496 2004-04-05  Benjamin Otte  <otte@gnome.org>
10497
10498         * gst/schedulers/gstbasicscheduler.c:
10499         (gst_basic_scheduler_pad_link):
10500           fix to work with recent scheduling changes
10501
10502 2004-04-05  Benjamin Otte  <otte@gnome.org>
10503
10504         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
10505         prepareChangeLog doesn't work when cvs indents):
10506           don't throw an error when no element can be scheduled, there's too
10507           many weird reasons why it doesn't work. Return STOPPED instead.
10508           decoupled elemts' schedulability doesn't depend on bufpens.
10509
10510 2004-04-04  Benjamin Otte  <otte@gnome.org>
10511
10512         * gst/schedulers/gstbasicscheduler.c:
10513         (gst_basic_scheduler_pad_select):
10514           fix uninitialized variable warnings
10515
10516 2004-04-04  Benjamin Otte  <otte@gnome.org>
10517
10518         * gst/gstpad.c: (gst_pad_collect_valist):
10519           fix uninitialized variable warning
10520         * gst/schedulers/entryscheduler.c: (schedule_forward):
10521           fix shadowed variable
10522
10523 2004-04-04  Benjamin Otte  <otte@gnome.org>
10524
10525         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
10526         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
10527         (gst_pad_select):
10528         * gst/gstpad.h:
10529         * gst/gstscheduler.c: (gst_scheduler_pad_select),
10530         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
10531         * gst/gstscheduler.h:
10532           implement gst_pad_collect as replacement for gst_pad_select.
10533           deprecate gst_pad_select and gst_scheduler_(un)lock_element
10534           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
10535           new pad_select, lock and unlock calls.
10536         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
10537         * gst/cothreads.h:
10538         * gst/schedulers/cothreads_compat.h:
10539         * gst/schedulers/gthread-cothreads.h:
10540           remove unused cothread_lock and cothread_unlock calls
10541         * gst/schedulers/entryscheduler.c:
10542         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
10543         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
10544         (gst_entry_scheduler_pad_select):
10545           update to new API
10546         * gst/schedulers/gstbasicscheduler.c:
10547         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
10548         (gst_basic_scheduler_pad_select):
10549           remove useless lock and unlock calls, update pad_select to new API
10550           (untested)
10551         * gst/schedulers/gstoptimalscheduler.c:
10552         (gst_opt_scheduler_class_init):
10553           remove useless select, lock and unlock function calls
10554         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
10555           use gst_pad_collect instead of gst_pad_select
10556
10557 2004-04-04  Benjamin Otte  <otte@gnome.org>
10558
10559         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
10560         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
10561         (schedule_next_element), (print_entry):
10562           add can_schedule_pad to handle element states.
10563           add schedule_forward to select the correct entry to schedule next
10564
10565 2004-04-03  Benjamin Otte  <otte@gnome.org>
10566
10567         * gst/schedulers/entryscheduler.c: 
10568           remove unused variable, fix error inside Rb, fix compile warning in
10569           unreachable code
10570
10571 2004-04-03  Benjamin Otte  <otte@gnome.org>
10572
10573         * gst/schedulers/entryscheduler.c:
10574           completely revamp the inner workings, so it's a lot easier to
10575           understand and extend
10576
10577 2004-04-03  Andy Wingo  <wingo@pobox.com>
10578
10579         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
10580         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
10581         This allows better introspection of pipeline topology.
10582         (add_to_chain): Don't do trickery to put loop elements first;
10583         rather, queue a chain sort by marking the chain as dirty.
10584         (remove_from_chain): Mark the chain dirty.
10585         (sort_chain): New function. Sorts the group list so that terminal
10586         sinks are first. This means elements on the sink side will be
10587         preferentially sscheduled before elements on the src side of the
10588         pipeline.
10589         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
10590         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
10591         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
10592         (group_inc_link): Change argument and variable names to match the
10593         new link structure member names (src and sink).
10594         (group_dec_link): Add some description
10595
10596 2004-04-03  Benjamin Otte  <otte@gnome.org>
10597
10598         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
10599         * gst/gstinfo.h:
10600         * testsuite/debug/category.c: (main):
10601         * testsuite/debug/commandline.c: (main):
10602         * testsuite/debug/output.c: (main):
10603         * testsuite/debug/printf_extension.c: (main):
10604           fix to successfully build and test with --disable-gst-debug
10605           configure switch (fixes #138705)
10606
10607 2004-04-03  Benjamin Otte  <otte@gnome.org>
10608
10609         * docs/pwg/building-boiler.xml:
10610           add cvs login line and s/anonymous/anoncvs/
10611
10612 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
10613
10614         reviewed by Benjamin Otte  <otte@gnome.org>
10615
10616         * gst/gststructure.c: (gst_structure_free):
10617           memleak fix: free fields array (partial fix for #134839)
10618
10619 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10620
10621         * docs/random/ds/0.9-suggested-changes:
10622           Add a note to change handoff use in fakesrc to be usable in
10623           a more generic way (fakesrc should be renamed to appsrc or so).
10624         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
10625           Change signal type to scope, so we can fill the buffer in the
10626           handoff handler (that's the whole use of this signal...).
10627
10628 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10629
10630         * docs/pwg/other-ntoone.xml:
10631           Document muxers and n-to-1 elements.
10632
10633 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
10634
10635         * gst/registries/gstxmlregistry.c
10636         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
10637         determine if a file is a G_MODULE. The old one discards paths
10638         containing "so" somewhere in the middle. My home directory is
10639         called "soto". Go figure...
10640
10641 2004-03-31  David Schleef  <ds@schleef.org>
10642
10643         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
10644         to eventually deprecate gst_buffer_merge().  (bug: #136408)
10645         * gst/gstbuffer.h:
10646
10647 2004-03-31  David Schleef  <ds@schleef.org>
10648
10649         * gst/gstvalue.c: (gst_value_union_int_int_range),
10650         (gst_value_union_int_range_int_range), (gst_value_can_union),
10651         (gst_value_union), (_gst_value_initialize):  Add some union
10652         implementations.  We didn't have any previously.
10653         * testsuite/caps/Makefile.am:
10654         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
10655         (gst_audioscale_getcaps), (test_caps), (main): A little test
10656         that is the same as the caps manipulation in audioscale.
10657
10658 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10659
10660         * docs/faq/general.xml:
10661           add entry about "does gst support format X?"
10662
10663 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10664
10665         * gst/gstthread.c:
10666           fix docs
10667         * gst/gstutils.h:
10668           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
10669
10670 2004-03-30  Benjamin Otte  <otte@gnome.org>
10671
10672         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10673           set the offset of the buffer to the requested offset
10674         * gst/elements/gsttypefind.c: (stop_typefinding):
10675           revert patch 1.18 (which I unfortunately don't know the reason for).
10676           This is needed to allow downstream elements to seek. Otherwise
10677           typefind might overwrite a previous seek by downstream elements.
10678           This lead to errors with id3tag and typefind on some mp3s.
10679         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10680         (gst_entry_scheduler_iterate):
10681           be more verbose when debugging
10682
10683 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10684
10685         * gst/gstcaps.c: (gst_caps_from_string_inplace):
10686           make sure we don't get NULL strings
10687
10688 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10689
10690         * gst/gstcaps.c:
10691         * gst/gstelement.c:
10692         * gst/gstelementfactory.c: (gst_element_factory_get_type):
10693         * gst/gstindex.c: (gst_index_resolver_get_type),
10694         (gst_index_get_type), (gst_index_factory_get_type):
10695         * gst/gstinfo.c:
10696         * gst/gstpad.c:
10697         * gst/gstplugin.c:
10698         * gst/gsturi.c: (gst_uri_handler_get_type):
10699         * gst/gstvalue.c:
10700           first batch of documentation fixes
10701
10702 2004-03-29  David Schleef  <ds@schleef.org>
10703
10704         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
10705         * docs/gst/gstreamer-docs.sgml:  More hacking
10706         * docs/gst/gstreamer-sections.txt:
10707         * docs/gst/tmpl/cothreads_compat.sgml:
10708         * docs/gst/tmpl/gstcaps.sgml:
10709         * docs/gst/tmpl/gstclock.sgml:
10710         * docs/gst/tmpl/gstelement.sgml:
10711         * docs/gst/tmpl/gstevent.sgml:
10712         * docs/gst/tmpl/gstpad.sgml:
10713         * docs/gst/tmpl/gstutils.sgml:
10714         * docs/gst/tmpl/gstxml.sgml:
10715         * docs/gst/tmpl/gthread-cothreads.sgml:
10716         * docs/random/ds/0.9-suggested-changes:
10717         * gst/elements/gstfakesink.h: doc fixes
10718         * gst/elements/gstfakesrc.h: doc fixes
10719         * gst/gstcaps.c: doc fixes
10720         * gst/gstcaps.h: doc fixes
10721         * gst/gstelement.c: doc fixes
10722         * gst/gstelement.h: doc fixes
10723         * gst/gstindex.c: doc fixes
10724         * gst/gstinfo.c: doc fixes
10725         * gst/gstpad.c: doc fixes
10726         * gst/gstpad.h: doc fixes
10727         * gst/gstplugin.c: doc fixes
10728         * gst/gsttypefind.h: doc fixes
10729         * gst/gsturi.c: doc fixes
10730         * gst/gstvalue.c: doc fixes
10731
10732 2004-03-29  Colin Walters  <walters@redhat.com>
10733
10734         * gst/registries/gstxmlregistry.c (get_time)
10735         (plugin_times_older_than_recurse):
10736         Use the result of stat to determine whether a path is a file,
10737         so we don't attempt to opendir() files.
10738
10739 2004-03-29  Benjamin Otte  <otte@gnome.org>
10740
10741         * gst/gstpad.c: (gst_pad_set_explicit_caps):
10742           print caps in debugging output when setting caps failed
10743         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10744         (schedule_next_element), (get_buffer), (run_chainhandler),
10745         (element_may_start), (gst_entry_scheduler_chain_handler),
10746         (gst_entry_scheduler_get_handler),
10747         (gst_entry_scheduler_state_transition),
10748         (gst_entry_scheduler_pad_link):
10749           make this scheduler a testcase for mandatory
10750           discont-before-first-buffer which is needed if we want to allow apps
10751           to release the sound device.
10752           add SCHED_ASSERT macro to print scheduler state before an assertion
10753           triggers.
10754
10755 2004-03-29  Benjamin Otte  <otte@gnome.org>
10756
10757         * COPYING:
10758           replace by LGPL (former COPYING.LIB). The core is completely
10759           licensed LGPL.
10760         * COPYING.LIB:
10761           remove
10762
10763 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10764
10765         * po/af.po:
10766         * po/sv.po:
10767           updated Afrikaans and Swedish
10768
10769 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10770
10771         * po/LINGUAS:
10772         * po/az.po:
10773           adding Azerbaijani (Mətin Əmirov)
10774
10775 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
10776
10777         * gst/gstelement.h: 
10778         * gst/gstelement.c (gst_element_set_time_delay): New function for
10779         setting element time taking into account a hardware buffering
10780         delay.
10781         (gst_element_set_time): Now just an invocation of
10782         gst_element_set_time_delay.
10783         * gst/gstclock.h: 
10784         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
10785         allowing to set event times in the future.
10786         (gst_clock_get_event_time): Now just an invocation of
10787         gst_clock_get_event_time_delay.
10788
10789 2004-03-28  Benjamin Otte  <otte@gnome.org>
10790
10791         * gst/gstbin.c: (gst_bin_set_element_sched),
10792         (gst_bin_unset_element_sched):
10793           don't add decoupled elements to schedulers - otherwise it's
10794           impossible to control if a link to a decoupled element was already
10795           removed from a scheduler or not.
10796         * gst/schedulers/cothreads_compat.h:
10797         * gst/schedulers/gthread-cothreads.h:
10798           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
10799           is no "unused" warning.
10800         * gst/schedulers/Makefile.am:
10801         * gst/schedulers/entryscheduler.c:
10802           add new scheduler, based on ideas from talking to David and Martin.
10803           It's supposed to be small and correct. Currently it's also slow (but
10804           it's not noticable)
10805         * examples/retag/retag.c: (main):
10806         * testsuite/bytestream/test1.c: (main):
10807           fix missing NULLs at end of variadic functions
10808         * testsuite/elements/.cvsignore:
10809           update
10810
10811 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
10812
10813         * gst/gstevent.h:
10814         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
10815
10816 2004-03-25  David Schleef  <ds@schleef.org>
10817
10818         * docs/gst/gstreamer-sections.txt:  More doc hacking.
10819         * docs/gst/tmpl/gstaggregator.sgml:
10820         * docs/gst/tmpl/gstautoplugfactory.sgml:
10821         * docs/gst/tmpl/gstbin.sgml:
10822         * docs/gst/tmpl/gstbuffer.sgml:
10823         * docs/gst/tmpl/gstbufferstore.sgml:
10824         * docs/gst/tmpl/gstfakesink.sgml:
10825         * docs/gst/tmpl/gstfakesrc.sgml:
10826         * docs/gst/tmpl/gstmd5sink.sgml:
10827         * docs/gst/tmpl/gstreamer-unused.sgml:
10828         * docs/gst/tmpl/gstsearchfuncs.sgml:
10829         * docs/gst/tmpl/gstshaper.sgml:
10830         * docs/gst/tmpl/gstspider.sgml:
10831         * docs/gst/tmpl/gsttee.sgml:
10832         * docs/gst/tmpl/gstutils.sgml:
10833         * docs/gst/tmpl/gstvalue.sgml:
10834         * docs/gst/tmpl/gstxml.sgml:
10835         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
10836         and we don't support it.
10837         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
10838         (gst_use_threads), (gst_has_threads): same
10839         * gst/gstthreaddummy.c: same
10840         * gst/autoplug/gstspider.c: Make gst_spider_details static.
10841         * gst/autoplug/gstspider.h: same
10842         * gst/elements/gstaggregator.h: Remove bogus function from header
10843         * gst/elements/gstfakesink.h: same
10844         * gst/elements/gstfakesrc.h: same
10845         * gst/elements/gstmd5sink.h: same
10846         * gst/elements/gstshaper.h: same
10847         * gst/elements/gsttee.h: same
10848         * gst/gstbin.c: doc fixes
10849         * gst/gstbin.h: Remove unused definition.
10850         * gst/gstbuffer.c: doc fixes
10851         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
10852         * gst/gstfilter.c: doc fixes
10853         * gst/gsttag.c: doc fixes
10854         * gst/gstvalue.c: doc fixes
10855
10856 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10857
10858         * docs/pwg/advanced-types.xml:
10859           Document typefinding.
10860         * docs/pwg/other-oneton.xml:
10861           Document one-to-n elements, demuxers and parsers.
10862
10863 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
10864
10865         reviewed by: David Schleef  <ds@schleef.org>
10866
10867         * configure.ac: Check bison version (bug #127838)
10868
10869 2004-03-25  David Schleef  <ds@schleef.org>
10870
10871         * docs/gst/gstreamer-docs.sgml: More fine tuning.
10872         * docs/gst/gstreamer-sections.txt:
10873         * docs/gst/tmpl/gstautoplug.sgml:
10874         * docs/gst/tmpl/gststaticautoplug.sgml:
10875         * docs/gst/tmpl/gststaticautoplugrender.sgml:
10876         * docs/gst/tmpl/gstutils.sgml:
10877         * docs/gst/tmpl/gstxml.sgml:
10878
10879 2004-03-24  David Schleef  <ds@schleef.org>
10880
10881         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
10882         manual being such complete crap, that I decided to do major
10883         hacking of it.  This checkin replaces any fine tuning that
10884         may have been done previously, with the benefit of actually
10885         being complete for much of the API that was changed since
10886         0.6.  Further fine tuning will occur shortly.  (bug #134721)
10887         * docs/gst/gstreamer-sections.txt:
10888         * docs/gst/tmpl/GstBin.sgml:
10889         * docs/gst/tmpl/GstBuffer.sgml:
10890         * docs/gst/tmpl/GstCaps.sgml:
10891         * docs/gst/tmpl/GstClock.sgml:
10892         * docs/gst/tmpl/GstCompat.sgml:
10893         * docs/gst/tmpl/GstData.sgml:
10894         * docs/gst/tmpl/GstElement.sgml:
10895         * docs/gst/tmpl/GstEvent.sgml:
10896         * docs/gst/tmpl/GstIndex.sgml:
10897         * docs/gst/tmpl/GstStructure.sgml:
10898         * docs/gst/tmpl/GstTag.sgml:
10899         * docs/gst/tmpl/cothreads.sgml:
10900         * docs/gst/tmpl/cothreads_compat.sgml:
10901         * docs/gst/tmpl/gettext.sgml:
10902         * docs/gst/tmpl/grammar.tab.sgml:
10903         * docs/gst/tmpl/gst-i18n-app.sgml:
10904         * docs/gst/tmpl/gst-i18n-lib.sgml:
10905         * docs/gst/tmpl/gst.sgml:
10906         * docs/gst/tmpl/gst_private.sgml:
10907         * docs/gst/tmpl/gstaggregator.sgml:
10908         * docs/gst/tmpl/gstarch.sgml:
10909         * docs/gst/tmpl/gstatomic.sgml:
10910         * docs/gst/tmpl/gstatomic_impl.sgml:
10911         * docs/gst/tmpl/gstbin.sgml:
10912         * docs/gst/tmpl/gstbuffer.sgml:
10913         * docs/gst/tmpl/gstbufferstore.sgml:
10914         * docs/gst/tmpl/gstcaps.sgml:
10915         * docs/gst/tmpl/gstclock.sgml:
10916         * docs/gst/tmpl/gstcompat.sgml:
10917         * docs/gst/tmpl/gstconfig.sgml:
10918         * docs/gst/tmpl/gstcpu.sgml:
10919         * docs/gst/tmpl/gstdata.sgml:
10920         * docs/gst/tmpl/gstdata_private.sgml:
10921         * docs/gst/tmpl/gstelement.sgml:
10922         * docs/gst/tmpl/gstenumtypes.sgml:
10923         * docs/gst/tmpl/gsterror.sgml:
10924         * docs/gst/tmpl/gstevent.sgml:
10925         * docs/gst/tmpl/gstfakesink.sgml:
10926         * docs/gst/tmpl/gstfakesrc.sgml:
10927         * docs/gst/tmpl/gstfilesink.sgml:
10928         * docs/gst/tmpl/gstfilter.sgml:
10929         * docs/gst/tmpl/gstindex.sgml:
10930         * docs/gst/tmpl/gstinfo.sgml:
10931         * docs/gst/tmpl/gstinterface.sgml:
10932         * docs/gst/tmpl/gstlog.sgml:
10933         * docs/gst/tmpl/gstmacros.sgml:
10934         * docs/gst/tmpl/gstmarshal.sgml:
10935         * docs/gst/tmpl/gstmd5sink.sgml:
10936         * docs/gst/tmpl/gstmultifilesrc.sgml:
10937         * docs/gst/tmpl/gstobject.sgml:
10938         * docs/gst/tmpl/gstpad.sgml:
10939         * docs/gst/tmpl/gstparse.sgml:
10940         * docs/gst/tmpl/gstpipeline.sgml:
10941         * docs/gst/tmpl/gstplugin.sgml:
10942         * docs/gst/tmpl/gstpluginfeature.sgml:
10943         * docs/gst/tmpl/gstqueue.sgml:
10944         * docs/gst/tmpl/gstreamer-unused.sgml:
10945         * docs/gst/tmpl/gstregistry.sgml:
10946         * docs/gst/tmpl/gstregistrypool.sgml:
10947         * docs/gst/tmpl/gstscheduler.sgml:
10948         * docs/gst/tmpl/gstsearchfuncs.sgml:
10949         * docs/gst/tmpl/gstshaper.sgml:
10950         * docs/gst/tmpl/gstspider.sgml:
10951         * docs/gst/tmpl/gstspideridentity.sgml:
10952         * docs/gst/tmpl/gststructure.sgml:
10953         * docs/gst/tmpl/gstsystemclock.sgml:
10954         * docs/gst/tmpl/gsttag.sgml:
10955         * docs/gst/tmpl/gsttaginterface.sgml:
10956         * docs/gst/tmpl/gsttee.sgml:
10957         * docs/gst/tmpl/gstthread.sgml:
10958         * docs/gst/tmpl/gsttrace.sgml:
10959         * docs/gst/tmpl/gsttrashstack.sgml:
10960         * docs/gst/tmpl/gsttypefind.sgml:
10961         * docs/gst/tmpl/gsttypes.sgml:
10962         * docs/gst/tmpl/gsturi.sgml:
10963         * docs/gst/tmpl/gsturitype.sgml:
10964         * docs/gst/tmpl/gstutils.sgml:
10965         * docs/gst/tmpl/gstvalue.sgml:
10966         * docs/gst/tmpl/gstversion.sgml:
10967         * docs/gst/tmpl/gstxml.sgml:
10968         * docs/gst/tmpl/gstxmlregistry.sgml:
10969         * docs/gst/tmpl/gthread-cothreads.sgml:
10970         * docs/gst/tmpl/types.sgml:
10971
10972 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10973
10974         * docs/pwg/other-sink.xml:
10975         * docs/pwg/other-source.xml:
10976           Documentation on how to write source and sink elements. Other
10977           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
10978           manager, autoplugger) are all still pending.
10979
10980 2004-03-25  Benjamin Otte  <otte@gnome.org>
10981
10982         * testsuite/elements/Makefile.am:
10983         * testsuite/elements/gst-compprep-check:
10984           add check to make sure gst-compprep works
10985         * testsuite/elements/gst-inspect-check.in:
10986           improve initialization output
10987         * testsuite/Makefile.am:
10988         * testsuite/gst-inspect-check:
10989           remove old file
10990
10991 2004-03-24  David Schleef  <ds@schleef.org>
10992
10993         * testsuite/elements/Makefile.am:
10994         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
10995         to the testsuite.
10996
10997 2004-03-24  Benjamin Otte  <otte@gnome.org>
10998
10999         * libs/gst/control/dparam.c: (gst_dparam_attach),
11000         (gst_dparam_detach):
11001         * libs/gst/control/dparammanager.c: (gst_dpman_init):
11002           fix lvalue casts for real
11003
11004 2004-03-24  Benjamin Otte  <otte@gnome.org>
11005
11006         * gst/schedulers/gstbasicscheduler.c:
11007         (gst_basic_scheduler_src_wrapper):
11008         * gst/schedulers/gstoptimalscheduler.c:
11009         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
11010         (pad_clear_queued), (gst_opt_scheduler_add_element),
11011         (gst_opt_scheduler_remove_element):
11012           fix GStreamer to not have issues with lvalue casts anymore (fixes
11013           #136841)
11014
11015 2004-03-24  Benjamin Otte  <otte@gnome.org>
11016
11017         * gst/gstelement.c:
11018           add documentation about a gobject quirk where the object hasn't the
11019           correct class pointer set on initialization
11020         * gst/schedulers/gstbasicscheduler.c:
11021         (gst_basic_scheduler_src_wrapper):
11022           make sure to not run into an infinite loop
11023
11024 2004-03-22  Benjamin Otte  <otte@gnome.org>
11025
11026         * gst/gstutils.c: (gst_util_dump_mem):
11027         * gst/gstutils.h:
11028           first argument of gst_util_dump_mem should be const
11029
11030 2004-03-22  Johan Dahlin  <johan@gnome.org>
11031
11032         * gst/gstvalue.h: Clean up a little bit.
11033
11034 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
11035
11036         reviewed by Benjamin Otte  <otte@gnome.org>
11037
11038         * gst/autoplug/gstspider.c: (gst_spider_dispose):
11039         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
11040         (gst_aggregator_class_init), (gst_aggregator_init):
11041         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
11042         (gst_filesrc_dispose), (gst_filesrc_set_location):
11043         * gst/elements/gstidentity.c: (gst_identity_finalize),
11044         (gst_identity_class_init), (gst_identity_chain):
11045         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11046         * gst/elements/gststatistics.c: (gst_statistics_finalize),
11047         (gst_statistics_class_init):
11048         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
11049         (gst_tee_get_property):
11050           clean up used memory in this elements correctly on teardown (closes
11051           #137279)
11052
11053 2004-03-20  Colin Walters  <walters@redhat.com>
11054
11055         * gst/registries/gstxmlregistry.c:
11056         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
11057         registry saving atomic.
11058
11059 2004-03-20  Colin Walters  <walters@redhat.com>
11060
11061         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
11062         Just use
11063         access() instead of actually creating and deleting files.
11064
11065 2004-03-18  David Schleef  <ds@schleef.org>
11066
11067         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
11068         (bug #137625)
11069
11070 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11071
11072         * po/sv.po: updated translation (Christian Rose)
11073
11074 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11075
11076         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
11077         (gst_filesink_get_query_types), (_do_init),
11078         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
11079           return FALSE silently
11080         * po/af.po: updated translation (Petri Jooste)
11081
11082 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11083
11084         * Makefile.am:
11085         * configure.ac:
11086           dist common properly
11087         * po/af.po:
11088         * po/fr.po:
11089         * po/nl.po:
11090         * po/sr.po:
11091         * po/sv.po:
11092           refreshing translations
11093
11094 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11095
11096         * po/LINGUAS:
11097         * po/sv.po:
11098         * po/af.po:
11099           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
11100
11101 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11102
11103         * Makefile.am: use common/release.mak
11104
11105 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11106
11107         * docs/faq/gst-uninstalled:
11108           adding gst-monkeysaudio to the list of possible plugin dirs
11109
11110 2004-03-16  David Schleef  <ds@schleef.org>
11111
11112         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
11113         (gst_init_check_with_popt_table):  Fix some gettext strings to
11114         make them easier to translate.  Required making the strings
11115         non-const.
11116
11117 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11118
11119         * configure.ac: bump nano to 1
11120
11121 === release 0.8.0 ===
11122
11123 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11124
11125         * configure.ac: release 0.8.0, "Executive Slacks"
11126
11127 2004-03-16  Johan Dahlin  <johan@gnome.org>
11128
11129         * gst/schedulers/gstoptimalscheduler.c
11130         (gst_opt_scheduler_pad_unlink): Remove double ;,
11131         spotted by Scott Wheeler
11132
11133 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11134
11135         * configure.ac: bump libtool version
11136
11137 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11138
11139         * gst/gstcaps.h:
11140         * gst/gststructure.h:
11141           add reserved padding
11142
11143 2004-03-15  Benjamin Otte  <otte@gnome.org>
11144
11145         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
11146           set the first parameter for select call correctly.
11147           (fixes #137230)
11148
11149 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11150
11151         * *.c,*.h: don't mix tabs and spaces
11152
11153 2004-03-15  Johan Dahlin  <johan@gnome.org>
11154
11155         * gst/schedulers/gstoptimalscheduler.c
11156         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
11157         crash on MPEG playback. My boolean arithmetic is a bit rusty.
11158
11159         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
11160         
11161 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11162
11163         * testsuite/Rules:
11164           fix gst-register rules
11165
11166 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11167
11168         * testsuite/Rules:
11169           use versioned gst-register
11170
11171 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11172
11173         * docs/libs/gstreamer-libs-sections.txt:
11174           remove </SUBSECTION>
11175         * gst/gstplugin.c:
11176         * gst/gstregistry.c: (gst_registry_add_plugin):
11177         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
11178         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
11179           add debugging and fix some comment blocks
11180
11181 2004-03-15  Johan Dahlin  <johan@gnome.org>
11182
11183         * *.h: Revert indent changes.
11184         
11185 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
11186
11187         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
11188           g_error_free the g_error
11189         * tools/gst-feedback-m.m:
11190           check for other versions of gstreamer
11191         * tools/gst-indent:
11192           use sh, not bash
11193
11194 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
11195
11196         * tools/gst-register.c: do not spill paths when registries are not
11197           writable, until we fix the "user running gst-register" case.
11198
11199 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11200
11201         * *.c, *.h: commit of gst-indent run on core
11202
11203 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11204
11205         * tools/gst-indent:
11206         * tools/Makefile.am:
11207           add our indentation style as a script
11208
11209 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11210
11211         * po/sr.po:
11212         * po/LINGUAS:
11213           added Serbian translation
11214
11215 2004-03-13  Benjamin Otte  <otte@gnome.org>
11216
11217         * gst/gstelement.c:
11218           add documentation note about gst_element_found_tags_for_pad not
11219           being usable in getfunctions. (see #137042)
11220
11221 2004-03-12  David Schleef  <ds@schleef.org>
11222
11223         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
11224         change API right now!  Readd gst_caps_is_simple() macro.
11225         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
11226         uninitialized variable.  I'd bet this caused crashes.
11227         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
11228
11229 2004-03-12  Johan Dahlin  <johan@gnome.org>
11230
11231         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
11232         * gst/gstcaps.h: Clean up
11233
11234         * gst/gst.c (init_post): call gst_caps_get_type() instead of
11235         _gst_caps_initalize()
11236
11237         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
11238         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
11239
11240         * gst/gststructure.c (gst_structure_get_type): Ditto
11241
11242         * gst/gststructure.h: Ditto
11243         
11244 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11245
11246         * gst/gstqueue.c: (gst_queue_init):
11247           Reset default max. values in queues. Reason is simply to avoid
11248           braindead use. If you want wider values, use the properties. The
11249           default is supposed to always work. Wider values would make this
11250           beast a memory hog by default (250 full-PAL RGB32 video frames?
11251           That's 440 MB! No thank you).
11252
11253 2004-03-10  David Schleef  <ds@schleef.org>
11254
11255         * tools/gst-run.c: (main):  Fix crash when no relevant tools
11256         were found.  (bug #136793)
11257
11258 2004-03-10  Johan Dahlin  <johan@gnome.org>
11259
11260         * gst/schedulers/gstoptimalscheduler.c
11261         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
11262         links to elements within the same group, so we can finally remove
11263         that annoying warning. Refactor the code a little bit
11264         (group_dec_links_for_element): Split out
11265
11266 2004-03-09  David Schleef  <ds@schleef.org>
11267
11268         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
11269         (bug #134863)
11270
11271 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11272
11273         * configure.ac: first bug fix due to major/minor bump
11274
11275 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11276
11277         * configure.ac: bump nano to 1
11278
11279 === release 0.7.6 ===
11280
11281 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11282
11283         * NEWS:
11284         * RELEASE:
11285         * configure.ac:
11286           releasing 0.7.6, "Almost"
11287         * po/fr.po:
11288         * po/nl.po:
11289         * tools/Makefile.am:
11290         * tools/gst-feedback-m.m:
11291           unversioned source
11292
11293 2004-03-09  Johan Dahlin  <johan@gnome.org>
11294
11295         Reviewed by: Thomas Vander Stichele
11296
11297         * gst/gstelement.c (gst_element_class_init): register second
11298         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
11299         language bindings can (de)marshall correctly.
11300
11301         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
11302
11303         * gst/gsterror.c (gst_g_error_get_type): New function
11304
11305         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
11306         with VOID:OBJECT,OBJECT,STRING 
11307
11308 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
11309
11310         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
11311         Free a leaked g_timer on early returns.
11312
11313 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11314
11315         * docs/pwg/advanced-types.xml:
11316           Add cinepak description.
11317
11318 2004-03-07  David Schleef  <ds@schleef.org>
11319
11320         * docs/random/mimetypes:  Added cinepak description
11321
11322 2004-03-07  Andy Wingo  <wingo@pobox.com>
11323
11324         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
11325
11326         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
11327         there are no links to other groups when a group is destroyed.
11328         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
11329         removed from a group, make sure the link count to elements linked
11330         to other pads is appropriately decremented. This really fixes
11331         #135672.
11332
11333         The 1.60->1.61 patch has been reapplied in light of this fix.
11334
11335         * gst/gstelement.c (gst_element_dispose): Really protect against
11336         multiple invocations this time.
11337
11338 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11339
11340         * docs/gst/gstreamer-sections.txt:
11341         * docs/gst/tmpl/gsttag.sgml:
11342           remove some deprecated functions, document some existing ones
11343         * gst/gsttag.c: (gst_tag_get_flag):
11344         * gst/gsttag.h:
11345           add accessor function
11346
11347 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11348
11349         * docs/gst/gstreamer-sections.txt:
11350         * docs/gst/tmpl/gsttag.sgml:
11351         * docs/gst/tmpl/gstxml.sgml:
11352         * gst/gsttag.c: (gst_tag_get_flag):
11353         * gst/gsttag.h:
11354
11355 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
11356
11357         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
11358         leak
11359
11360 2004-03-05  David Schleef  <ds@schleef.org>
11361
11362         * REQUIREMENTS: Add bison and flex.
11363         * configure.ac: Fix comment about bison.
11364         * docs/random/ds/0.9-suggested-changes: yer ma
11365         * tools/gst-inspect.c: (print_element_info):  Fix warning.
11366
11367 2004-03-05  Benjamin Otte  <otte@gnome.org>
11368
11369         * gst/gstelement.c: (gst_element_error_full):
11370           revert recent recursive state changing commit - messing with other
11371           elements' states is evil and should be done by apps only.
11372
11373 2004-03-05  Benjamin Otte  <otte@gnome.org>
11374
11375         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
11376           check for empty intersection instead of NULL caps
11377         (gst_element_get_compatible_pad_filtered):
11378           remove old workaround that is only a bug nowadays
11379
11380 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11381
11382         * gst/gstelement.c: (gst_element_error_full):
11383           make elements try to recursively change state to PAUSED on all
11384           parents after an error to suppress ensuing warnings
11385         * gst/parse/grammar.y:
11386           make it check if it was able to sync the state, and throw an error
11387           if not, so stuff like
11388           oggdemux ! vorbisdec ! osssink gets caught
11389
11390 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11391
11392         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
11393           it contains lib64; use AS_AC_EXPAND to handle it properly
11394
11395 2004-03-05  David Schleef  <ds@schleef.org>
11396
11397         * gst/gstcpuid_i386.s:  Remove unused code
11398         * libs/gst/getbits/getbits.c: (gst_getbits_init),
11399         (gst_getbits_newbuf): Remove MMX code
11400         * libs/gst/getbits/getbits.h: Remove MMX code
11401
11402 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
11403
11404         * debian/.cvsignore:
11405         * debian/README.Debian:
11406         * debian/changelog:
11407         * debian/control:
11408         * debian/control.in:
11409         * debian/copyright:
11410         * debian/gstreamer-core-libs-dev.files:
11411         * debian/gstreamer-core-libs.files:
11412         * debian/gstreamer-core.files:
11413         * debian/gstreamer-core.postinst:
11414         * debian/gstreamer-core.postrm:
11415         * debian/gstreamer-doc.files:
11416         * debian/gstreamer-doc.links:
11417         * debian/gstreamer-doc.lintian:
11418         * debian/gstreamer-runtime.files:
11419         * debian/gstreamer-runtime.manpages:
11420         * debian/gstreamer-runtime.postinst:
11421         * debian/gstreamer-runtime.postrm:
11422         * debian/gstreamer-tools.files:
11423         * debian/gstreamer-tools.manpages:
11424         * debian/libgstreamer-dev.files:
11425         * debian/libgstreamer0.4.1.files:
11426         * debian/libgstreamerVERSION.files:
11427         * debian/rules:
11428         Debian package info not maintained here.
11429
11430 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11431
11432         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11433         * gst/gstbin.c: (gst_bin_class_init):
11434         * gst/gstelement.c: (gst_element_class_init):
11435         * gst/gstindex.c: (gst_index_class_init):
11436         * gst/gstobject.c: (gst_object_class_init),
11437         (gst_signal_object_class_init):
11438         * gst/gstpad.c: (gst_pad_template_class_init):
11439         * gst/gstregistry.c: (gst_registry_class_init):
11440         * gst/gsturi.c: (gst_uri_handler_base_init):
11441         * gst/gstxml.c: (gst_xml_class_init):
11442         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11443         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
11444           make all signal names use dashes instead of underscore
11445
11446 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11447
11448         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
11449
11450 2004-03-03  Benjamin Otte  <otte@gnome.org>
11451
11452         * gst/schedulers/gstoptimalscheduler.c:
11453           revert last commit by Andy Wingo. It causes segfaults on unreffing
11454           in Rhythmbox. (see bug #135672)
11455
11456 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11457
11458         * po/fr.po: fix typo
11459
11460 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11461
11462         * tools/gst-inspect.c: (main): 
11463         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
11464
11465 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11466
11467         * configure.ac:
11468           get GLIB_ONLY and POPT flags for the nonversioned binaries
11469         * tools/Makefile.am:
11470           use them
11471
11472 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11473
11474         * gst/gst.c: (init_post):
11475           change so that GST_REGISTRY now is where the global registry gets
11476           saved, since that is where plugins now get attached to first, and
11477           spilled over to the user registry.  Note that in the case of using
11478           GST_REGISTRY env var, we don't want to affect any real registries
11479           beyond the one given by this var, and thus we don't set a user
11480           registry to spill to.  So make sure GST_REGISTRY is writable.
11481
11482 2004-03-01  David Schleef  <ds@schleef.org>
11483
11484         * AUTHORS:  Added some names.  Add yourself if you're missing.
11485
11486 2004-03-01  David Schleef  <ds@schleef.org>
11487
11488         * MAINTAINERS: Add
11489
11490 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
11491
11492         * configure.ac:
11493           remove whitespace
11494         * docs/gst/tmpl/gstbuffer.sgml:
11495         * docs/gst/tmpl/gstdata.sgml:
11496         * docs/gst/tmpl/gstreamer-unused.sgml:
11497         * docs/gst/tmpl/gstxml.sgml:
11498           doc update
11499         * docs/manuals.mak:
11500           add a FIXME
11501         * docs/pwg/intro-preface.xml:
11502         * docs/pwg/pwg.xml:
11503           remove GNOME
11504         * gst/gst.c: (init_post):
11505           try GST_PLUGIN_PATH paths for the _global_registry first
11506         * gst/gstelement.h:
11507           add the error message as well, otherwise (null) debug info doesn't
11508           make much sense
11509         * tools/gst-register.c: (main):
11510           spill paths to next registry if this registry is not writable
11511         * po/fr.po:
11512         * po/nl.po:
11513           translation updates
11514
11515 2004-03-01  Johan Dahlin  <johan@gnome.org>
11516
11517         * gst/gstbuffer.c (_gst_buffer_initialize): 
11518         * gst/gstdata.c (gst_data_get_type): 
11519         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
11520         instead of ref, since some applications that uses GBoxed
11521         routines depends on a function that actually returns a copy.
11522
11523 2004-02-27  Benjamin Otte  <otte@gnome.org>
11524
11525         * gst/gstbuffer.h:
11526           remove gst_buffer_free, use gst_data_unref
11527         * gst/gstdata.c: (gst_data_get_type):
11528           use refcounting in GstData GBoxed registration
11529         * gst/gstdata.h:
11530           remove gst_data_free, use gst_data_unref
11531
11532 2004-02-27  Johan Dahlin  <johan@gnome.org>
11533
11534         * gst/gstdata.c (gst_data_get_type): New function, register
11535         GstData as a GBoxed type.
11536
11537         * gst/gstdata.h (GST_TYPE_DATA): New macro
11538
11539 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
11540
11541         * Makefile.am:
11542         * gstreamer.spec.in:
11543           put back RELEASE
11544         * gst/Makefile.am:
11545           clean up non-disting of built files
11546         * testsuite/debug/commandline.c:
11547           test fix for option rename
11548
11549 2004-02-26  David Schleef  <ds@schleef.org>
11550
11551         * configure.ac:  We don't really need glib-2.3.  Also remove
11552         some unneeded checks for library functions.
11553         * gst/Makefile.am:  Instead, we need to not dist files created
11554         by glib-genmarshal.
11555
11556 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11557
11558         * configure.ac:
11559           bump glib required version to 2.3.0 for g_value_takes_boxed
11560
11561  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
11562
11563         * common/m4/gst-docs.m4
11564         change flavour text from enable to disable as enable is our default
11565         closes bug Bug 135304
11566
11567 === release 0.7.5 ===
11568  
11569  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11570  
11571         * NEWS:
11572           instate NEWS file
11573         * Makefile.am:
11574         * gstreamer.spec.in:
11575         * RELEASE:
11576           put back release
11577         * configure.ac:
11578         * docs/random/release:
11579           more updates
11580
11581 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11582
11583         * gst/gsttag.c: (_gst_tag_initialize):
11584         * po/fr.po:
11585         * po/nl.po:
11586           remove hyphen from codec tags
11587
11588 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11589
11590         * gst/parse/Makefile.am:
11591           fix dependency so that a make from a clean build works the first
11592           time
11593
11594 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11595
11596         * docs/random/release:
11597           update release strategy
11598         * po/fr.po:
11599           auto-update po file
11600         * po/nl.po:
11601           update dutch translation
11602
11603 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11604
11605         * docs/manual/debugging.xml:
11606         fix manual for new debugging system
11607
11608 2004-02-25  Andy Wingo  <wingo@pobox.com>
11609
11610         * gst/gstpad.c (gst_pad_link_prepare): Re-add
11611         gst_pad_link_prepare. Please email the list with specific reasons
11612         for reverting.
11613
11614 2004-02-24  Andy Wingo  <wingo@pobox.com>
11615
11616         * gst/gstelement.c (gst_element_dispose): Protect against multiple
11617         invocations.
11618
11619         * gst/schedulers/gstoptimalscheduler.c:
11620         I added a mess of prototypes at the top of the file by way of
11621         documentation. Some of the operations on chains and groups were
11622         re-organized.
11623
11624         (create_group): Added a type argument so if the group is enabled,
11625         the setup_group_scheduler knows what to do.
11626         (group_elements): Added a type argument here, too, to be passed on
11627         to create_group.
11628         (group_element_set_enabled): If an unlinked PLAYING element is
11629         added to a bin, we have to create a new group to hold the element,
11630         and this function will be called before the group is added to the
11631         chain. Thus we have a valid case for group->chain==NULL. Instead
11632         of calling chain_group_set_enabled, just set the flag on the group
11633         (the chain's status will be set when the group is added to it).
11634         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
11635         Setup the group scheduler when the group is enabled, not
11636         specifically when an element goes PAUSED->PLAYING. This means
11637         PLAYING elements can be added, linked, and scheduled into a
11638         PLAYING pipeline, as was intended.
11639         (add_to_group): Don't ref the group twice. I don't know when this
11640         double-ref got in here. Removing it has the potential to cause
11641         segfaults if other parts of the scheduler are buggy. If you find
11642         that the scheduler is segfaulting for you, put in an extra ref
11643         here and see if that hacks over the underlying issue. Of course,
11644         then find out what code is unreffing a group it doesn't own...
11645         (create_group): Make the extra refcount floating, and remove it
11646         after adding the element. This means that...
11647         (unref_group): Destroy when the refcount reaches 0, not 1, like
11648         every other refcounted object in the known universe.
11649         (remove_from_group): When a group becomes empty, set it to be not
11650         active, and remove it from its chain. Don't unref it again,
11651         there's no floating reference any more.
11652         (destroy_group): We have to remove the group from the chain in
11653         remove_from_group (rather than here) to break refcounting cycles
11654         (the chain always has a ref on the group). So assert that
11655         group->chain==NULL.
11656         (ref_group_by_count): Removed, it was commented out anyway.
11657         (merge_chains): Use the remove_from_chain and add_to_chain
11658         primitives to do the reparenting, instead of rolling our own
11659         implementation.
11660         (add_to_chain): The first non-disabled group in the chain's group
11661         list will be the entry point for the chain. Because buffers can
11662         accumulate in loop elements' peer bufpens, we preferentially
11663         schedule loop groups before get groups to avoid unnecessary
11664         execution of get-based groups when the bufpens are already full.
11665         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
11666         (get_group_schedule_function): Ditto.
11667         (loop_group_schedule_function): Ditto.
11668         (gst_opt_scheduler_loop_wrapper): Ditto.
11669         (gst_opt_scheduler_iterate): Ditto.
11670
11671         I understand the opt scheduler now, yippee!
11672
11673         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
11674         (gst_pad_get_name, gst_pad_set_chain_function) 
11675         (gst_pad_set_get_function, gst_pad_set_event_function) 
11676         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
11677         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
11678         (gst_pad_set_query_function, gst_pad_get_query_types) 
11679         (gst_pad_get_query_types_default) 
11680         (gst_pad_set_internal_link_function) 
11681         (gst_pad_set_formats_function, gst_pad_set_link_function) 
11682         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
11683         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
11684         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
11685         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
11686         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
11687         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
11688         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
11689         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
11690         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
11691         (gst_pad_event_default_dispatch, gst_pad_event_default) 
11692         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
11693         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
11694         (gst_pad_get_formats_default, gst_pad_get_formats): Better
11695         argument checks, and some doc fixes.
11696
11697         (gst_pad_custom_new_from_template): Um, does anyone
11698         use these functions? Actually make a custom pad instead of a
11699         normal one.
11700         (gst_pad_try_set_caps): Transpose some checks.
11701         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
11702         the pad is in negotiation.
11703         (gst_pad_try_relink_filtered): Use pad_link_prepare.
11704         
11705         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
11706
11707         * gst/gstelement.h: 
11708         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
11709         on the list.
11710
11711 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11712
11713         * gst/gstbin.c: (gst_bin_add):
11714           add error for not being able to add elements
11715
11716 2004-02-22  Julien MOUTTE <julien@moutte.net>
11717
11718         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
11719         audio-codec and video-codec.
11720
11721 2004-02-22  Benjamin Otte  <otte@gnome.org>
11722
11723         reported by: Padraig O'Briain <padraig.obriain@sun.com>
11724
11725         * autogen.sh:
11726           replace test -e with test -x for mkinstalldirs to be more portable.
11727           (fixes #134816)
11728
11729 2004-02-22  Benjamin Otte  <otte@gnome.org>
11730
11731         * gst/gstpad.c:
11732           revert last patch from Andy, it makes gst_pad_can_link_filtered much
11733           too noisy
11734         * gst/gsttag.c: (_gst_tag_initialize):
11735         * gst/gsttag.h:
11736           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
11737         * libs/gst/control/dparam.c: (gst_dparam_attach):
11738         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
11739           check that types for attached dparams match
11740
11741 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11742
11743         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
11744         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11745         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11746           fix errors
11747
11748 2004-02-20  Andy Wingo  <wingo@pobox.com>
11749
11750         * gst/gstbin.c:
11751         * gst/gstbuffer.c:
11752         * gst/gstplugin.c:
11753         * gst/registries/gstxmlregistry.c: 
11754         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
11755
11756         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
11757         (gst_element_add_pad): DEBUG->INFO, some fixes.
11758         (gst_element_get_compatible_pad_template): Just see if the
11759         templates' caps intersect, not if one is a strict subset of the
11760         other. This conforms more to what gst_pad_link_intersect() does.
11761         (gst_element_class_add_pad_template): Don't memcpy the pad
11762         template, just ref it.
11763         (gst_element_get_compatible_pad_filtered): Clean up debug messages
11764
11765         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
11766         (gst_pad_link_filtered): Debug changes.
11767         (gst_pad_link_prepare): New function, consolidated from
11768         can_link_filtered and link_filtered.
11769
11770         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
11771         look more like that of the functions in gstelement.c
11772
11773         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
11774         object, and return the empty string if object is NULL.
11775
11776         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
11777         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
11778         LOG, not DEBUG. We still get flex info on debug.
11779
11780         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
11781         debug string more verbose.
11782         (plugin_times_older_than): DEBUG->LOG.
11783
11784 2004-02-20  Julien MOUTTE <julien@moutte.net>
11785
11786         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
11787         will emit found_tag for each stream they demux with the codec.
11788
11789 2004-02-20  Benjamin Otte  <otte@gnome.org>
11790
11791         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
11792           copy navigation event correctly. Check freeing tag lists. 
11793         * gst/gstthread.c: (gst_thread_change_state):
11794           don't abort() on state changing mess - it might happen because of
11795           bugs.
11796         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
11797           use boxed functions
11798         * gst/gstvalue.h:
11799           fix GST_VALUE_HOLDS_CAPS
11800
11801 2004-02-19  David Schleef  <ds@schleef.org>
11802
11803         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
11804         and use it for GST_FUNCTION.  (bug #134750)
11805
11806 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11807
11808         * po/fr.po:
11809         * po/nl.po:
11810           updating translations
11811
11812 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11813
11814         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
11815
11816 2004-02-18  kost@imn.htwk-leipzig.de
11817
11818         reviewed by: David Schleef  <ds@schleef.org>
11819
11820         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
11821         for libgstcontrol.
11822
11823 2004-02-18  David Schleef  <ds@schleef.org>
11824
11825         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11826         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11827         (gst_dpsmooth_new): Additional fixes to get double dparams working.
11828         * tools/gst-inspect.c: (print_element_info): Support dumping of
11829         double dparam information.
11830
11831 2004-02-17  David Schleef  <ds@schleef.org>
11832
11833         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11834         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
11835         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
11836         Use GST_TYPE_CAPS in signal prototype.
11837         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
11838         Convert GST_TYPE_CAPS to boxed.
11839         * gst/gstelement.c: (gst_element_class_init):
11840         Use GST_TYPE_TAG_LIST in signal prototype.
11841         * gst/gstindex.c: (gst_index_class_init):
11842         * gst/gstindex.h:
11843         Add GST_TYPE_INDEX_ENTRY type.
11844         * gst/gstmarshal.list:
11845         Add necessary marshal types.
11846         * gst/gstpad.c: (gst_real_pad_class_init),
11847         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
11848         (gst_pad_recover_caps_error):
11849         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
11850         * gst/gststructure.c: (_gst_structure_initialize),
11851         (gst_structure_copy), (_gst_structure_copy_conditional):
11852         * gst/gststructure.h:
11853         Convert GST_TYPE_STRUCTURE to boxed.
11854         * gst/gsttag.c: (gst_tag_list_get_type):
11855         * gst/gsttag.h:
11856         Add GST_TYPE_TAG_LIST type.
11857
11858 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11859
11860         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
11861         to what we agreed with david.
11862         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
11863
11864 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11865
11866         * po/nl.po: update translation
11867
11868 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11869
11870         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
11871           throw an error if spider is trying to play a mime type there is
11872           no decoder for
11873         * po/POTFILES.in:
11874           add gst/autoplug/gstspider.c for translation
11875
11876 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11877
11878         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
11879         silently when the pad is negotiating.
11880
11881 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11882
11883         * docs/faq/Makefile.am:
11884           add script to run gstreamer uninstalled 
11885         * docs/faq/faq.xml:
11886         * docs/faq/developing.xml:
11887         * docs/faq/gst-uninstalled:
11888           extract script to run gstreamer uninstalled
11889         * docs/manuals.mak:
11890           add EXTRA_SOURCES variable for Makefile.am's to set to
11891           use additional SOURCE files for the doc build
11892
11893 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11894
11895         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
11896
11897 2004-02-15  Julien MOUTTE  <julien@moutte.net>
11898
11899         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
11900         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
11901         an error was thrown by osssink. Basically a state change failure for
11902         an element in a different scheduling group was considered as
11903         successful, which means that caps nego was going on and weird stuff
11904         happened. Like I wrote in the comment there, if someone wants to
11905         revert that please drop me a mail explaining why because I really see
11906         no point in keeping that broken behaviour there.
11907         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
11908         be empty, we then return NULL which will trigger a nice error when 
11909         pulling from the pad.
11910
11911 2004-02-13  David Schleef  <ds@schleef.org>
11912
11913         * libs/gst/control/dparam.c: (gst_dparam_class_init),
11914         (gst_dparam_get_property), (gst_dparam_set_property),
11915         (gst_dparam_do_update_default):
11916         * libs/gst/control/dparam.h:
11917         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11918         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
11919         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
11920         (gst_dpsmooth_do_update_double):
11921         * libs/gst/control/dparam_smooth.h:
11922         * libs/gst/control/dparammanager.c:
11923         (gst_dpman_inline_direct_update):
11924         Add support for double dparams.
11925
11926 2004-02-13  David Schleef  <ds@schleef.org>
11927
11928         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
11929         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
11930
11931 2004-02-13  Mattias Wadman  <mattias@sudac.org>
11932
11933         reviewed by: David Schleef  <ds@schleef.org>
11934
11935         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
11936         (gst_fdsrc_init), (gst_fdsrc_set_property),
11937         (gst_fdsrc_get_property), (gst_fdsrc_get):
11938         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
11939         and sends an EOS event if file descriptor reading times out.
11940
11941 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11942
11943         * configure.ac:
11944           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
11945
11946 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11947
11948         * configure.ac: pass required libxml version as argument
11949         (bug reported by Christophe Fergeau)
11950
11951 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11952   
11953         * docs/gst/gstreamer-docs.sgml:
11954         * docs/gst/tmpl/gstxml.sgml:
11955         * docs/libs/gstreamer-libs-docs.sgml:
11956           version API docs
11957
11958 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11959
11960         * gst/gstinfo.c:
11961         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
11962         (gst_registry_pool_feature_filter):
11963         * gst/gstthread.c: (gst_thread_class_init):
11964         * gst/gstvalue.c:
11965           add includes exposed by building without libxml
11966         * gst/indexers/Makefile.am:
11967           do not build fileindex when LOADSAVE disabled; we should have
11968           a better libxml check later since fileindex depends on xml, not
11969           LOADSAVE or REGISTRY
11970         * libs/gst/control/Makefile.am:
11971           link with m
11972         * tools/Makefile.am:
11973           fix wrong source code for gst-xmlinspect
11974
11975 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11976
11977         * configure.ac:
11978           fix gcov help output
11979           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
11980         * docs/random/release:
11981           some updated releasing notes
11982         * gstreamer.spec.in:
11983           more updates
11984
11985 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11986
11987         * docs/faq/faq.xml:
11988         * docs/manual/manual.xml:
11989         * docs/pwg/pwg.xml:
11990         * docs/pwg/titlepage.xml:
11991           put version in documentation
11992
11993 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11994
11995         * tools/Makefile.am: fix man page installation
11996
11997 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11998
11999         * configure.ac:
12000           don't check for libxml when load/save and registry disabled (#105844)
12001         * gstreamer.spec.in:
12002           sync with fedora candidate spec
12003
12004 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12005
12006         * po/fr.po:
12007         * po/nl.po:
12008           replace multidisksrc with multifilesrc
12009
12010 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12011
12012         * po/POTFILES.in:
12013           update to multidisksrc => multifilesrc file renaming (#134145)
12014
12015 2004-02-11  David Schleef  <ds@schleef.org>
12016
12017         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
12018         * docs/gst/tmpl/gstpadtemplate.sgml: same
12019         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
12020         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
12021         fixing dance.
12022         * gst/gstutils.c: Remove disabled code that uses GstProps.
12023         * gst/registries/gstxmlregistry.h: same
12024         * docs/random/ds/0.9-suggested-changes: random notes
12025
12026 2004-02-11  kost@imn.htwk-leipzig.de
12027
12028         reviewed by: David Schleef  <ds@schleef.org>
12029
12030         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
12031         initialisation of clock (bug #134128)
12032
12033 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12034
12035         * configure.ac:
12036         * gst/elements/Makefile.am:
12037         * gst/elements/gstelements.c:
12038         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
12039         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
12040         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
12041         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
12042         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
12043         * gst/elements/gstmultifilesrc.h:
12044           rename multidisksrc to multifilesrc (part of #122200)
12045
12046 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12047
12048         * docs/manuals.mak:
12049           fix automake complaints
12050         * gst-element-check.m4:
12051           fix unquotedness
12052
12053 2004-02-11  David Schleef  <ds@schleef.org>
12054
12055         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
12056         * gst/gstatomic_impl.h: Disable sparc implementation.
12057
12058 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12059
12060         * gst-element-check.m4:
12061           fix underquoted macros as reported by automake 1.8.x (#133800)
12062         * configure.ac:
12063           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
12064           by autopoint (fixes #132996)
12065
12066 2004-02-10  Andy Wingo  <wingo@pobox.com>
12067
12068         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
12069         way to do inheritance.
12070         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
12071         (gst_pad_get_query_types, gst_pad_get_query_types_default):
12072         Routine docs.
12073         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
12074         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
12075         doc.
12076         (gst_pad_unlink, gst_pad_is_linked): Docs.
12077         (gst_pad_renegotiate): A brief description of capsnego.
12078         (gst_pad_try_set_caps): Document.
12079         (gst_pad_try_set_caps_nonfixed): Document.
12080         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
12081         (gst_pad_set_parent): Deprecated (although not out of the API).
12082         (gst_pad_get_parent): Deprecated, although many plugins use this.
12083         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
12084         are private and will go away in 0.9.
12085         (gst_pad_perform_negotiate): Doc.
12086         (gst_pad_link_unnegotiate): I think this is meant to be static.
12087         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
12088         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
12089         (gst_pad_get_peer): Doc updates.
12090         (gst_pad_caps_change_notify): Doc.
12091         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
12092         (gst_ghost_pad_new): Doc fixes.
12093
12094         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
12095         (gst_object_check_uniqueness): 
12096
12097         * gst/gstelement.c (gst_element_add_pad) 
12098         (gst_element_add_ghost_pad, gst_element_remove_pad) 
12099         (gst_element_remove_ghost_pad, gst_element_get_pad) 
12100         (gst_element_get_static_pad, gst_element_get_pad_list) 
12101         (gst_element_class_get_pad_template_list) 
12102         (gst_element_class_get_pad_template): Work on the docs.
12103         (gst_element_get_pad_template_list): Uses the class method.
12104         (gst_element_get_compatible_pad_template): Docs, and consolidate
12105         some test conditions. 
12106         (gst_element_get_pad_from_template): New static function.
12107         (gst_element_request_compatible_pad): Docs, and work with
12108         non-request compatible templates. 
12109         (gst_element_get_compatible_pad_filtered): Docs and remove
12110         redundant checks.
12111         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
12112         (gst_element_link_filtered, gst_element_link_many) 
12113         (gst_element_link, gst_element_link_pads) 
12114         (gst_element_unlink_many): Docs.
12115
12116 2004-02-05  Andy Wingo  <wingo@pobox.com>
12117
12118         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
12119         s/pointer/boxed/.
12120
12121         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
12122
12123         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
12124         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
12125         with the type=GST_TYPE_CAPS. This allows language bindings to know
12126         what kind of data they're dealing with.
12127
12128         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
12129         to NULL when g_value_init is called. GstCaps, which rolls its own
12130         type implementation, now does the same instead of allocating empty
12131         caps.
12132         (_gst_caps_initialize, _gst_caps_collect_value,
12133         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
12134         table methods. This allows G_VALUE_COLLECT to work.
12135
12136 2004-02-05  Andy Wingo  <wingo@pobox.com>
12137
12138         * configure.ac:
12139         * testsuite/Makefile.am (SUBDIRS): 
12140         * testsuite/ghostpads/Makefile.am: 
12141         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
12142
12143         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
12144         These two routines are the only ones that set
12145         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
12146         pad template. They should be made static, depending on ABI needs.
12147         (gst_real_pad_dispose): Handle the case of ghost pads without a
12148         parent. Assert after dealing with ghost pads that the ghost pad
12149         list is empty.
12150         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
12151         set after creation.
12152         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
12153         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
12154         functions. set_property will call add_ghost_pad/remove_ghost_pad
12155         as appropriate.
12156         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
12157
12158         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
12159         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
12160         (gst_element_remove_pad): Handle ghost pads as well.
12161         (gst_element_remove_ghost_pad): Deprecated (could be removed,
12162         depending on API-stability needs).
12163
12164 2004-02-05  Andy Wingo  <wingo@pobox.com>
12165
12166         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
12167         of course they're const
12168
12169 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12170
12171         * tools/Makefile.am:
12172         * tools/gst-feedback:
12173         * tools/gst-feedback-0.7:
12174           make gst-feedback versioned too for consistency
12175
12176 2004-02-11  David Schleef  <ds@schleef.org>
12177
12178         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12179         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
12180
12181 2004-02-10  Julien MOUTTE <julien@moutte.net>
12182
12183         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
12184         the structure does not contain a valid tag list. Adding a safety check
12185         to remove a noisy warning in that case.
12186
12187 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
12188
12189         * gst/gst.c: fix name to be in line with others
12190
12191 2004-02-09  Julien MOUTTE <julien@moutte.net>
12192
12193         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
12194         not shout that loud when len is 0. Just return 0 silently.
12195
12196 2004-02-09  Julien MOUTTE  <julien@moutte.net>
12197
12198         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
12199         because data_unref has one and I prefer the debug to be symetric.
12200         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
12201         were refed when added to the queue and unrefed only once when the queue
12202         was flushed. Now the flush handler unref the buffers two times : first
12203         unref for the ref added when pushing in the queue's tail and second
12204         unref to destroy the flushed buffer.
12205
12206 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
12207
12208         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
12209
12210 2004-02-06  David Schleef  <ds@schleef.org>
12211
12212         * docs/random/ds/0.9-suggested-changes: Random ramblings
12213         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
12214         to int before printing.
12215         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
12216         * gst/parse/parse.l: same.  See bug #129600
12217
12218 2004-02-06  David Schleef  <ds@schleef.org>
12219
12220         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
12221         (gst_index_add_entry), (gst_index_add_associationv),
12222         (gst_index_add_association): Add gst_index_add_associationv()
12223         and clean up gst_index_add_association(). #127133
12224
12225 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12226
12227         * autogen.sh: check out common with right tag if CVS/Tag exists
12228
12229 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12230
12231         * testsuite/ghostpads/ghostpads.c: (main):
12232           fix testsuite from segfaulting
12233
12234 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12235
12236         * Makefile.am: add release target
12237         * configure.ac: bump nano to 1
12238         * docs/random/release:
12239
12240 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12241
12242         * gst/gstcaps.h:
12243         * gst/gstelement.c: (gst_element_base_class_init),
12244         (gst_element_class_set_details), (gst_element_clear_pad_caps):
12245         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12246         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
12247         (gst_real_pad_dispose):
12248         * gst/gststructure.c: (gst_structure_free),
12249         (gst_structure_from_string):
12250           put reverted patch back in
12251         * gst/gstelement.c: (gst_element_remove_pad):
12252           free explicit caps if they're set
12253         * gst/gstpad.c: (_gst_pad_default_fixate_func):
12254           copy the structure when fixating
12255
12256 2004-02-05  David Schleef  <ds@schleef.org>
12257
12258         * gst/gstmarshal.list:
12259         * gst/gstpad.c: (gst_real_pad_class_init),
12260         (_gst_real_pad_fixate_accumulator):
12261         Revert POINTER->BOXED change in signal marshaller.
12262
12263 === release 0.7.4 ===
12264                                                                                 
12265 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12266                                                                                 
12267         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
12268         * configure.ac: changed for release
12269
12270 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
12271
12272         * gstreamer.spec.in:
12273           bump required version of gtk-doc
12274
12275 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
12276
12277         * gst/gstcaps.h:
12278         * gst/gstelement.c: (gst_element_base_class_init),
12279         (gst_element_class_set_details), (gst_element_clear_pad_caps):
12280         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12281         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
12282         (gst_real_pad_dispose):
12283         * gst/gststructure.c: (gst_structure_free),
12284         (gst_structure_from_string):
12285           revert patch that breaks applications, reapply after release
12286           to get this fixed properly
12287
12288 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12289
12290         * gst/gsttag.c: (_gst_tag_initialize):
12291         * gst/gsttag.h:
12292           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
12293
12294 2004-02-04  David Schleef  <ds@schleef.org>
12295
12296         Fix some memleaks:
12297         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
12298         (gst_spider_plug_from_srcpad):
12299         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
12300
12301 2004-02-04  David Schleef  <ds@schleef.org>
12302
12303         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
12304         a GstRealPad before accessing its structure members.
12305
12306 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12307
12308         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
12309         (gst_clock_get_speed):
12310         * gst/gstclock.h:
12311           reset padding, remove unused fields
12312
12313 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12314
12315         * gst/autoplug/gstspideridentity.c:
12316         (gst_spider_identity_sink_loop_type_finding):
12317           use get_allowed_caps, not get_caps (fixes #132519)
12318         * gst/elements/gsttypefind.c: (stop_typefinding):
12319           use correct order when sending buffers and seeking
12320
12321 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12322
12323         * configure.ac:
12324         * gst/gstelement.h:
12325         * gst/gstpad.h:
12326         * gst/gstqueue.h:
12327           upgrade libtool CURRENT, reset padding
12328
12329 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12330
12331         * configure.ac:
12332           bump to prerelease
12333           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
12334
12335 2004-02-04  David Schleef  <ds@schleef.org>
12336
12337         * docs/random/ds/0.9-suggested-changes: random notes
12338         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
12339         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
12340         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
12341         expansion.
12342         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
12343         (gst_filesink_get_query_types): same
12344         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
12345         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
12346         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
12347         to use new GST_PTR_FORMAT.
12348         * gst/gstelement.h: deprecate function factory macros
12349         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
12350         These are our last variadic macros that can't be replaced with
12351         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
12352         attempting to deprecate gst_element_clock_wait().
12353         * gst/gstevent.h: same
12354         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12355         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
12356         * gst/gstpad.h: deprecate function factory macros similar to above.
12357
12358 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12359
12360         * configure.ac:
12361         * tools/Makefile.am:
12362         * tools/gst-run.c: (popt_callback), (hash_print_key),
12363         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
12364         (get_candidates), (main):
12365           add new source file to generate non-versioned wrapper binaries
12366           for our tools.
12367
12368 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12369
12370         * gst/gstevent.c: (_gst_event_free):
12371           actually break; inside the switch statement
12372         * gst/parse/grammar.y:
12373           fix memleak where GValues weren't unset
12374
12375 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12376
12377         * gst/gststructure.c: (gst_structure_from_string):
12378           fix huge memleak
12379         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12380         (new_entry), (gst_type_find_element_chain):
12381         * gst/gstelement.c: (gst_element_base_class_init),
12382         (gst_element_class_set_details):
12383         * gst/gstpad.c: (gst_pad_can_link_filtered):
12384           fix smaller memleaks
12385         * gst/gstpad.c: (gst_real_pad_dispose):
12386           check that explicit caps are gone
12387         * gst/gststructure.c: (gst_structure_free):
12388           actually free the structure
12389         * gst/gstelement.c: (gst_element_clear_pad_caps):
12390           unset explicit caps
12391
12392 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12393
12394         * tools/Makefile.am:
12395           use AM_CFLAGS since all the CFLAGS are the same
12396           use AM_LDFAGS
12397
12398 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12399
12400         * docs/manual/gnome.xml:
12401           expand example a little
12402         * gst/gst.c: (gst_init_with_popt_table),
12403         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
12404           make sure popt option displays are done with right textdomain
12405           use GstPoptOption type
12406         * gst/gst.h:
12407           create GstPoptOption type
12408
12409 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12410
12411         * gst/gsterror.c: (_gst_stream_errors_init):
12412         * gst/gsterror.h:
12413           adding error type for no codec
12414         * po/POTFILES.in:
12415           add gst-inspect
12416         * po/nl.po:
12417           update dutch translation
12418         * tools/gst-inspect.c: (print_element_list), (main):
12419           do proper internationalization
12420         * tools/gst-launch.c: (idle_func):
12421           remove commented out function call
12422
12423 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12424
12425         * docs/README:
12426           add some error fixing notes
12427         * docs/gst/gstreamer-sections.txt:
12428           remove double entries
12429         * docs/gst/tmpl/gstbin.sgml:
12430         * docs/gst/tmpl/gstclock.sgml:
12431           remove override
12432         * docs/gst/tmpl/gstelement.sgml:
12433         * docs/gst/tmpl/gstindex.sgml:
12434         * docs/gst/tmpl/gstobject.sgml:
12435         * docs/gst/tmpl/gstpadtemplate.sgml:
12436         * docs/gst/tmpl/gstreamer-unused.sgml:
12437         * docs/gst/tmpl/gsttag.sgml:
12438         * docs/gst/tmpl/gstthread.sgml:
12439         * docs/gst/tmpl/gstxml.sgml:
12440         * gst/gsttag.h:
12441           sync header prototypes with c decls
12442         * gst/gsttaginterface.c:
12443           fix doc headers
12444
12445 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12446
12447         * gst/parse/Makefile.am:
12448         * gst/gstobject.h:
12449           get rid of gstmarshal.h dependency. It's not needed.
12450         * gst/gst.h:
12451         * gst/elements/gstfakesink.c:
12452         * gst/elements/gstfakesrc.c:
12453         * gst/elements/gstidentity.c:
12454         * gst/gstbin.c:
12455         * gst/gstelement.c:
12456         * gst/gstindex.c:
12457         * gst/gstobject.c:
12458         * gst/gstpad.c:
12459         * gst/gstthread.c:
12460         * gst/gstxml.c:
12461         * libs/gst/control/dparam.c:
12462         * libs/gst/control/dparammanager.c:
12463           include gstmarshal.h.
12464         Fixes #132045
12465
12466 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12467
12468         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
12469         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
12470         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
12471         * gst/elements/gstfilesrc.h:
12472           don't ref the filesrc when creating mmaped buffers. Don't keep a
12473           list of not-yet-destroyed buffers.
12474         * gst/gstbuffer.h:
12475           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
12476
12477 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12478
12479         * gst/gst.c: (init_pre):
12480           remove textdomain
12481
12482 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12483
12484         * docs/pwg/advanced-events.xml:
12485         * docs/pwg/advanced-scheduling.xml:
12486         * docs/pwg/intro-basics.xml:
12487         * docs/pwg/other-manager.xml:
12488         * docs/pwg/other-nton.xml:
12489         * docs/pwg/other-ntoone.xml:
12490         * docs/pwg/other-oneton.xml:
12491         * docs/pwg/pwg.xml:
12492           All sort of documentation... Forgot what. Point is that I want this
12493           in before I leave. The 'other-*' will be the last section and will
12494           explain issues specific to these type of elements.
12495
12496 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12497
12498         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12499         (gst_filesrc_get_read):
12500           set all the values on buffers that we can
12501
12502 2004-02-02  David Schleef  <ds@schleef.org>
12503
12504         Change usage of isblah() to g_ascii_isblah() to be more locale
12505         independent.  (#133076)
12506         * gst/gsturi.c: (gst_uri_protocol_check_internal):
12507         * gst/gstutils.c:
12508         * gst/parse/parse.l:
12509
12510 2004-02-02  Jon Trowbridge  <trow@gnu.org>
12511
12512         reviewed by: David Schleef  <ds@schleef.org>
12513
12514         Fix memory leaks:
12515         * gst/gstcaps.c: (gst_caps_to_string):
12516         * gst/registries/gstxmlregistry.c:
12517         (gst_xml_registry_add_path_list_func),
12518         (gst_xml_registry_parse_padtemplate):
12519
12520 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12521
12522         * gst/gstelement.c: (gst_element_default_error):
12523           suffix error messages with period
12524
12525 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12526
12527         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12528         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12529         * gst/gsterror.c: (gst_error_get_message):
12530           Suffix with dots
12531         * po/fr.po:
12532         * po/nl.po:
12533           Update translation files
12534
12535 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12536
12537         * gst/autoplug/gstspideridentity.c:
12538         (gst_spider_identity_sink_loop_type_finding):
12539         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12540         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12541         (gst_filesink_close_file), (gst_filesink_handle_event),
12542         (gst_filesink_chain):
12543         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12544         (gst_filesrc_get_read), (gst_filesrc_open_file):
12545         * gst/elements/gstidentity.c: (gst_identity_chain):
12546         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12547         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12548         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12549         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12550         * gst/gsterror.c: (_gst_core_errors_init),
12551         (_gst_library_errors_init), (_gst_resource_errors_init),
12552         (_gst_stream_errors_init), (gst_error_get_message):
12553         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12554         (gst_pad_recover_caps_error), (gst_pad_pull):
12555         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12556         * gst/schedulers/gstbasicscheduler.c:
12557         (gst_basic_scheduler_chainhandler_proxy),
12558         (gst_basic_scheduler_gethandler_proxy),
12559         (gst_basic_scheduler_cothreaded_chain):
12560           Suffix error messages with period.
12561           Use (NULL) instead of NULL
12562
12563 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12564
12565         * docs/gst/tmpl/gstelement.sgml:
12566         * docs/gst/tmpl/gstxml.sgml:
12567         * gst/gstelement.c: (gst_element_error_full):
12568           add element path to error
12569
12570 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12571
12572         * docs/random/mimetypes:
12573           update raw int/float info
12574         * gst/gsttag.c: (_gst_tag_initialize):
12575         * gst/gsttag.h:
12576           add GST_TAG_ENCODER
12577
12578 2004-01-30  David Schleef  <ds@schleef.org>
12579
12580         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
12581           missing (#132991)
12582
12583 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
12584
12585         reviewed by Benjamin Otte 
12586           parts of the patch submitted in bug #113913
12587
12588         * configure.ac:
12589           use AC_C_INLINE. Use = instead of == with test
12590         * examples/plugins/example.c:
12591         * gst/autoplug/gstspideridentity.c:
12592         * gst/elements/gstfdsrc.c:
12593         * gst/elements/gstfilesrc.c:
12594         * gst/elements/gstidentity.c:
12595         * gst/elements/gstmultidisksrc.c:
12596         * gst/elements/gststatistics.c:
12597         * gst/gstelement.c:
12598         * gst/gstobject.c:
12599         * gst/gstpad.c:
12600         * gst/gstpipeline.c:
12601         * gst/gstthread.c:
12602           don't end enums with a comma
12603         * gst/gstindex.c: (gst_index_compare_func):
12604           do explicit casting to gint
12605         * gst/gsttrace.c: (gst_trace_text_flush):
12606           #define strsize as a macro
12607
12608 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
12609
12610         * docs/README:
12611         * docs/gst/gstreamer-docs.sgml:
12612         * docs/gst/gstreamer-sections.txt:
12613         * docs/gst/tmpl/gstelement.sgml:
12614         * docs/gst/tmpl/gsterror.sgml:
12615         * docs/gst/tmpl/gstinterface.sgml:
12616         * docs/gst/tmpl/gstreamer-unused.sgml:
12617         * docs/gst/tmpl/gststructure.sgml:
12618         * docs/gst/tmpl/gsttag.sgml:
12619         * docs/gst/tmpl/gsttaginterface.sgml:
12620         * docs/gst/tmpl/gstvalue.sgml:
12621         make sure all API ends up in the built docs
12622         * gst/gstinterface.c:
12623         * gst/gststructure.c: (gst_structure_id_set_value),
12624         (gst_structure_set_value), (gst_structure_id_get_value):
12625         * gst/gststructure.h:
12626         * gst/gstvalue.h:
12627         sync .h with .c declarations
12628
12629 2004-01-30  Julien Moutte  <julien@moutte.net>
12630
12631         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
12632         Ronald will fix riffread.
12633
12634 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12635
12636         * docs/pwg/advanced-interfaces.xml:
12637           Added tuner interface docs.
12638
12639 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12640
12641         * docs/random/mimetypes:
12642           correct Theora information
12643         * gst/gstelement.h:
12644           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
12645
12646 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12647
12648         * gst/gstelement.c: (gst_element_error_full):
12649         * gst/gstelement.h:
12650           GST_ELEMENT_ERROR in enum -> _IN_ERROR
12651
12652 2004-01-29  Julien MOUTTE  <julien@moutte.net>
12653
12654         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
12655         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
12656         again and even before DISCONT.
12657         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
12658         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
12659         bytestream so that it's not stopping to fill the bytestream if events
12660         different than EOS or DISCONT are received. Instead it process them so
12661         that they go downstream.
12662
12663 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12664
12665         * docs/gst/tmpl/gstelement.sgml:
12666         * docs/gst/tmpl/gstreamer-unused.sgml:
12667         * docs/gst/tmpl/gstxml.sgml:
12668         * gst/autoplug/gstspideridentity.c:
12669         (gst_spider_identity_sink_loop_type_finding):
12670         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12671         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12672         (gst_filesink_close_file), (gst_filesink_handle_event),
12673         (gst_filesink_chain):
12674         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12675         (gst_filesrc_get_read), (gst_filesrc_open_file):
12676         * gst/elements/gstidentity.c: (gst_identity_chain):
12677         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12678         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12679         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12680         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12681         * gst/gstelement.h:
12682         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12683         (gst_pad_recover_caps_error), (gst_pad_pull):
12684         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12685         * gst/schedulers/gstbasicscheduler.c:
12686         (gst_basic_scheduler_chainhandler_proxy),
12687         (gst_basic_scheduler_gethandler_proxy),
12688         (gst_basic_scheduler_cothreaded_chain):
12689           gst_element_error -> GST_ELEMENT_ERROR
12690
12691 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12692
12693         * docs/Makefile.am:
12694         * docs/gst/tmpl/gstelement.sgml:
12695         * docs/gst/tmpl/gstxml.sgml:
12696         * docs/manuals.mak:
12697         * docs/pwg/advanced-request.xml:
12698         * docs/pwg/advanced-scheduling.xml:
12699         * docs/pwg/advanced-tagging.xml:
12700           fix non-validating docbook using CDATA
12701           make sure make check-local gets run first to check if it validates
12702
12703 2004-01-29  Julien MOUTTE <julien@moutte.net>
12704
12705         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
12706         handling (up and downstream).
12707         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
12708         my_filter thing.
12709
12710 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12711
12712         * docs/pwg/advanced-tagging.xml:
12713           Add docs about tag writing.
12714
12715 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12716
12717         * docs/pwg/advanced-tagging.xml:
12718           Add a part about tag reading and application signalling... Tag
12719           writing still needs to be documented.
12720         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12721           We can set file locations in READY, too.
12722
12723 2004-01-29  Julien MOUTTE <julien@moutte.net>
12724
12725         * docs/random/ds/element-checklist: Adding some notes about src
12726         events.
12727
12728 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12729
12730         * docs/random/mimetypes:
12731           Update docs to point to correct elements for various mimetypes, and
12732           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
12733           <stephane.loeuillet@tiscali.fr>.
12734
12735 2004-01-28  David Schleef  <ds@schleef.org>
12736
12737         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
12738
12739 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12740
12741         * docs/random/mimetypes:
12742           update docs for audio/x-raw-float. Add "buffer-frames=0 means
12743           undefined"
12744         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12745           make it only work in NULL.
12746         * gst/gstcaps.c:
12747           don't posion NULL caps
12748         * gst/gstelement.c: (gst_element_set_time):
12749           add debugging statement
12750         * gst/gstelement.c: (gst_element_emit_found_tag),
12751         (gst_element_found_tag_func), (gst_element_found_tags):
12752         * gst/gstelement.h:
12753           These functions take const taglists
12754         * gst/gstpad.c: (gst_pad_proxy_getcaps):
12755           fix memleak
12756         * gst/gstpad.c: (gst_pad_event_default):
12757           make more effort on handling discont and clocks, g_warn if everything
12758           fails
12759         * gst/gststructure.c: (gst_structure_remove_fields),
12760         (gst_structure_remove_fields_valist):
12761         * gst/gststructure.h:
12762           add gst_structure_remove_fields(_valist)
12763         * gst/gsttag.c:
12764           fix doc glitch
12765
12766 2004-01-28  David Schleef  <ds@schleef.org>
12767
12768         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
12769         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
12770         Fix memory leakage of gst_caps_to_string().
12771
12772         Use GST_PTR_FORMAT instead of gst_caps_to_string():
12773         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
12774         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
12775         (gst_spider_identity_sink_loop_type_finding):
12776         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12777         (find_suggest):
12778         * gst/gstpad.c: (gst_pad_try_relink_filtered),
12779         (gst_pad_set_explicit_caps):
12780         * gst/parse/grammar.y:
12781
12782 2004-01-28  David Schleef  <ds@schleef.org>
12783
12784         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
12785         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
12786         * docs/random/ds/0.9-suggested-changes: Notes from Company.
12787         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
12788         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
12789         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
12790         (gst_debug_log_default), (_gst_info_printf_extension),
12791         (_gst_info_printf_extension_arginfo):  Add printf extension.
12792         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
12793         * gst/gststructure.c: (gst_structure_to_string),
12794         (_gst_structure_parse_value): Use gst_value_deserialize() and
12795         remove old code.
12796         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
12797         (gst_value_deserialize_boolean), (gst_strtoi),
12798         (gst_value_deserialize_int), (gst_value_deserialize_double),
12799         (gst_value_deserialize_string), (gst_value_deserialize): Implement
12800         a bunch of deserialize functions and gst_value_deserialize.
12801         * gst/gstvalue.h: er, _de_serialize, not unserialize
12802         * testsuite/caps/string-conversions.c: (main): We don't currently
12803         handle (float) in caps, so convert these to (double).
12804         * testsuite/debug/Makefile.am: Add new test for the printf extension
12805         * testsuite/debug/printf_extension.c: (main): same
12806
12807 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12808
12809         * docs/random/company/time:
12810           Add some docs about clocking and time
12811
12812 2004-01-28  Julien MOUTTE <julien@moutte.net>
12813
12814         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
12815
12816 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12817
12818         * docs/pwg/advanced-clock.xml:
12819         * docs/pwg/advanced-dparams.xml:
12820         * docs/pwg/advanced-events.xml:
12821         * docs/pwg/advanced-interfaces.xml:
12822         * docs/pwg/advanced-midi.xml:
12823         * docs/pwg/advanced-request.xml:
12824         * docs/pwg/advanced-scheduling.xml:
12825         * docs/pwg/advanced-tagging.xml:
12826         * docs/pwg/advanced-types.xml:
12827         * docs/pwg/appendix-checklist.xml:
12828         * docs/pwg/building-boiler.xml:
12829         * docs/pwg/building-chainfn.xml:
12830         * docs/pwg/building-filterfactory.xml:
12831         * docs/pwg/building-pads.xml:
12832         * docs/pwg/building-props.xml:
12833         * docs/pwg/building-signals.xml:
12834         * docs/pwg/building-state.xml:
12835         * docs/pwg/building-testapp.xml:
12836         * docs/pwg/intro-basics.xml:
12837         * docs/pwg/intro-preface.xml:
12838         * docs/pwg/other-autoplugger.xml:
12839         * docs/pwg/other-sink.xml:
12840         * docs/pwg/other-source.xml:
12841         * docs/pwg/titlepage.xml:
12842           fix up id's
12843
12844 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12845
12846         * docs/95NonPath:
12847         * docs/HACKING:
12848         * docs/README:
12849         * docs/building-the-docs-on-debian:
12850           collect relevant bits of doc info
12851
12852 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12853
12854         * docs/pwg/advanced_tagging.xml:
12855           Half-assed commit so Thomas can re-arrange document IDs here to be
12856           consistent, too.
12857
12858 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12859
12860         * docs/manual/autoplugging.xml:
12861         * docs/manual/bins-api.xml:
12862         * docs/manual/bins.xml:
12863         * docs/manual/buffers-api.xml:
12864         * docs/manual/buffers.xml:
12865         * docs/manual/clocks.xml:
12866         * docs/manual/components.xml:
12867         * docs/manual/cothreads.xml:
12868         * docs/manual/debugging.xml:
12869         * docs/manual/dparams-app.xml:
12870         * docs/manual/dynamic.xml:
12871         * docs/manual/elements-api.xml:
12872         * docs/manual/elements.xml:
12873         * docs/manual/factories.xml:
12874         * docs/manual/gnome.xml:
12875         * docs/manual/goals.xml:
12876         * docs/manual/helloworld.xml:
12877         * docs/manual/helloworld2.xml:
12878         * docs/manual/init-api.xml:
12879         * docs/manual/intro.xml:
12880         * docs/manual/links-api.xml:
12881         * docs/manual/links.xml:
12882         * docs/manual/manual.xml:
12883         * docs/manual/motivation.xml:
12884         * docs/manual/pads-api.xml:
12885         * docs/manual/pads.xml:
12886         * docs/manual/plugins-api.xml:
12887         * docs/manual/plugins.xml:
12888         * docs/manual/programs.xml:
12889         * docs/manual/queues.xml:
12890         * docs/manual/quotes.xml:
12891         * docs/manual/schedulers.xml:
12892         * docs/manual/states-api.xml:
12893         * docs/manual/states.xml:
12894         * docs/manual/threads.xml:
12895         * docs/manual/typedetection.xml:
12896         * docs/manual/xml.xml:
12897           use chapter, part, section or misc as id starts for all bits
12898
12899 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12900
12901         * docs/gst/gstreamer-sections.txt:
12902           Fix up TITLE of the sections
12903
12904 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12905
12906         * docs/pwg/advanced_interfaces.xml:
12907           Add documentation on propertyprobing.
12908         * docs/pwg/advanced_events.xml:
12909         * docs/pwg/advanced_tagging.xml:
12910         * docs/pwg/building_boiler.xml:
12911         * docs/pwg/building_filterfactory.xml:
12912         * docs/pwg/pwg.xml:
12913           Move filterfactory and tagging into their own chapter, add a chapter
12914           on events. all these are empty placeholders that will be filled in
12915           some day.
12916
12917 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12918
12919         * docs/pwg/advanced_interfaces.xml:
12920           Docs for mixer interface. Also a check for website uploading.
12921
12922 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12923
12924         * docs/HACKING:
12925         * docs/Makefile.am:
12926         * docs/faq/Makefile.am:
12927         * docs/gst/Makefile.am:
12928         * docs/gst/tmpl/gstelement.sgml:
12929         * docs/gst/tmpl/gstplugin.sgml:
12930         * docs/gst/tmpl/gstreamer-unused.sgml:
12931         * docs/libs/Makefile.am:
12932         * docs/manual/Makefile.am:
12933         * docs/manuals.mak:
12934         * docs/pwg/Makefile.am:
12935         * docs/upload.mak:
12936           Separate out upload target and make it similar for
12937           both docbook and gtk-doc docs
12938
12939 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12940
12941         * docs/manuals.mak:
12942           Fix upload target to work with freedesktop
12943
12944 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12945
12946         * docs/pwg/advanced_types.xml:
12947           Add notes on creating your own types.
12948         * docs/pwg/building_boiler.xml:
12949         * docs/pwg/building_pads.xml:
12950         * docs/pwg/building_state.xml:
12951           Add some stuff about how to retrieve values from structures, how
12952           that relates to types and change layout slightly again to be almost
12953           perfect.
12954
12955 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12956
12957         * docs/pwg/advanced_dparams.xml:
12958         * docs/pwg/advanced_scheduling.xml:
12959           Change index layout slightly.
12960
12961 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12962
12963         * docs/pwg/advanced_clock.xml:
12964         * docs/pwg/advanced_interfaces.xml:
12965         * docs/pwg/advanced_midi.xml:
12966           General placeholders for now.
12967         * docs/pwg/advanced_request.xml:
12968           Explanation about sometimes and request pads.
12969         * docs/pwg/advanced_scheduling.xml:
12970           Concept of bytestream, loopfunctions and schedulers.
12971         * docs/pwg/building_boiler.xml:
12972           Add something about plugin-init.
12973
12974 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12975
12976         * docs/pwg/building_pads.xml:
12977           Fix broken docbook
12978
12979 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12980
12981         * docs/pwg/advanced_interfaces.xml:
12982         * docs/pwg/pwg.xml:
12983           Add as a placeholder for future filling-in.
12984         * docs/pwg/basics_autoplugging.xml:
12985         * docs/pwg/basics_buffers.xml:
12986         * docs/pwg/basics_elements.xml:
12987         * docs/pwg/basics_events.xml:
12988         * docs/pwg/basics_plugins.xml:
12989         * docs/pwg/basics_types.xml:
12990           Remove, because unused (this is all in intro_basics.xml).
12991         * docs/pwg/building_signals.xml:
12992           Short intro to signals + reference to GObject docs - we really
12993           shouldn't go into these sort of things to deply because we don't
12994           use them that extensively anyway.
12995         * docs/pwg/building_state.xml:
12996           Explanation of states. Benjamin, please check.
12997         * docs/pwg/building_testapp.xml:
12998           Put everything in one page - putting only a few lines of content
12999           per page doesn't really make sense.
13000
13001           Time to get into the advanced topics. ;).
13002
13003 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13004
13005         * docs/pwg/advanced_types.xml:
13006           Finish documenting the current state of mimetypes.
13007         * docs/pwg/building_boiler.xml:
13008         * docs/pwg/building_chainfn.xml:
13009         * docs/pwg/building_pads.xml:
13010         * docs/pwg/building_props.xml:
13011         * docs/pwg/building_testapp.xml:
13012           Start documenting the "how to build a simple audio filter" part
13013           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
13014           states and (maybe?) a short introduction to capsnego in the chapter
13015           on pads (building_pads.xml). Capsnego should probably be explained
13016           fully in advanced_capsnego.xml or so.
13017
13018 2004-01-26  David Schleef  <ds@schleef.org>
13019
13020         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
13021         * gst/gstpad.h: Add new function to allow element to (somewhat)
13022         specify non-fixed caps on a pad.
13023         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
13024         that I added a few weeks ago.
13025
13026 2004-01-26  David Schleef  <ds@schleef.org>
13027
13028         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
13029           making try_set_caps() work with non-fixed caps.
13030
13031 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13032
13033         * docs/pwg/advanced_types.xml:
13034         * docs/pwg/intro_basics.xml:
13035         * docs/pwg/intro_preface.xml:
13036         * docs/pwg/pwg.xml:
13037         * docs/pwg/titlepage.xml:
13038           First try to resurrect the PWG. I'm halfway integrating the mimetypes
13039           in here (docs/random/mimetypes), and will from there on work on both
13040           updating outdated parts and adding missing parts.
13041           That doesn't mean I'll fix it completely, but I'll try at least. ;).
13042
13043 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
13044
13045         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
13046           policy is set
13047
13048 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13049
13050         * gst/gstelement.h:
13051           remove gst_element_factory_get_version. It doesn't exist anymore.
13052         * gst/gstplugin.c:
13053         * gst/gstplugin.h:
13054           remove gst_plugin_set_name and change gst_plugin_get_longname to
13055           gst_plugin_get_description to match code.
13056         * gst/gsterror.h:
13057           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
13058         * gst/gstpad.c: (gst_pad_try_set_caps):
13059           make it work with nonfixed caps.
13060           Note that even in the nonfixed case the link function of the pad
13061           that tries to set caps isn't called.
13062
13063 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13064
13065         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
13066           fix bug where buffer was not assembled correctly
13067         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
13068           silence by default
13069         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
13070           only seek if there's no more buffers that could work without seeking
13071
13072 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13073
13074         * gst/gsttag.c: (_gst_tag_initialize):
13075         * gst/gsttag.h:
13076           Add application tag (for encoding/muxing app).
13077
13078 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13079
13080         * autogen.sh:
13081           make autopoint force, and libtoolize not copy
13082         * common/m4/as-docbook.m4:
13083           added docbook xml catalog setup check
13084         * common/m4/gst-doc.m4:
13085           use docbook check
13086
13087 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
13088
13089         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
13090         * gst/gsttag.h:
13091           add GstTagFlag
13092
13093 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13094
13095         * docs/gst/gstreamer-sections.txt:
13096         * docs/gst/tmpl/gst.sgml:
13097         * docs/gst/tmpl/gstbuffer.sgml:
13098         * docs/gst/tmpl/gstclock.sgml:
13099         * docs/gst/tmpl/gstelement.sgml:
13100         * docs/gst/tmpl/gstreamer-unused.sgml:
13101         * docs/gst/tmpl/gstxml.sgml:
13102           sync latest API changes to docs
13103
13104 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13105
13106         * gst/gstpluginfeature.c:
13107           fix doc snippet
13108         * tools/gst-inspect.c: (print_element_list):
13109           fix output of typefind
13110           add GPL header
13111         * tools/gst-launch.c:
13112           add GPL header
13113
13114 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13115
13116         * gst/elements/Makefile.am:
13117         * gst/elements/gstelements.c:
13118         * gst/elements/gsttypefindelement.c:
13119         * gst/elements/gsttypefindelement.h:
13120         * po/POTFILES.in:
13121         * po/fr.po:
13122         * po/nl.po:
13123           renamed gsttypefindelement to gsttypefind, conserving CVS history
13124
13125 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13126
13127         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
13128         * gst/gsttag.h:
13129           add some tags used in ogg as well
13130           fix _ in replaygain tags
13131
13132 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13133
13134         * gst/gsterror.h:
13135           fix wrong GST_LIBRARY_ERROR_ENCODE addition
13136
13137 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13138
13139         * gst/gstelement.c: (gst_element_error_full):
13140         * gst/gstelement.h:
13141           change _extended to _full
13142
13143 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13144
13145         reviewed by: <delete if not using a buddy>
13146
13147         * docs/gst/tmpl/gst.sgml:
13148         * docs/gst/tmpl/gstbuffer.sgml:
13149         * docs/gst/tmpl/gstclock.sgml:
13150         * docs/gst/tmpl/gstelement.sgml:
13151         * docs/gst/tmpl/gstreamer-unused.sgml:
13152         * docs/gst/tmpl/gstxml.sgml:
13153         * gst/gstelement.c: (gst_element_error_full):
13154         * gst/gstelement.h:
13155
13156 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13157
13158         * gst/gstelement.h: fix _gst_element_error_printf prototype
13159
13160 2004-01-20  David Schleef  <ds@schleef.org>
13161
13162         * gst/gststructure.c: (gst_structure_to_string):
13163         Convert function to use gst_value_serialize().
13164         * gst/gstvalue.c: (gst_value_serialize_list),
13165         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
13166         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
13167         (gst_value_serialize_int), (gst_value_serialize_double),
13168         (gst_string_wrap), (gst_value_serialize_string),
13169         (gst_value_serialize), (gst_value_deserialize):
13170         * gst/gstvalue.h:
13171         Add implementations for serialize.
13172
13173 2004-01-20  Julien MOUTTE  <julien@moutte.net>
13174
13175         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
13176         we want to keep that one in the future or change xvidenc.c to use 
13177         another error.
13178
13179 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13180
13181         * gst/gstelement.c: (_gst_element_error_printf):
13182         * gst/gstelement.h:
13183           privatise function
13184
13185 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13186
13187         * docs/random/error:
13188           doc explaining error system
13189         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
13190           cleanup
13191
13192 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13193
13194         * gst/gst-i18n-app.h:
13195         * gst/gst-i18n-lib.h:
13196           remove inclusion of config.h
13197         * po/POTFILES.in:
13198         * po/nl.po:
13199           add gst/gstelement.c
13200
13201 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13202
13203         * po/nl.po: updated Dutch translation
13204
13205 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13206
13207         * gst/gsterror.c: (_gst_core_errors_init),
13208         (_gst_library_errors_init), (_gst_resource_errors_init),
13209         (_gst_stream_errors_init):
13210         remove ending punctuation dots
13211
13212 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13213
13214         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
13215         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
13216         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13217         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13218         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13219         use GST_ERROR_SYSTEM
13220
13221 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13222
13223         * gst/gstelement.c: (gst_element_error_printf),
13224         (gst_element_error_extended):
13225         * gst/gstelement.h:
13226           add a helper printf function so we can have NULL values passed.
13227
13228 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13229
13230         * gst/gstelement.h:
13231           add G_STMT macros to gst_element_error, which isn't strictly
13232           necessary but people tell me to anyway.
13233
13234 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
13235
13236         * gst/Makefile.am:
13237         * gst/autoplug/gstspideridentity.c:
13238         (gst_spider_identity_sink_loop_type_finding):
13239         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
13240         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
13241         (gst_filesink_close_file), (gst_filesink_handle_event),
13242         (gst_filesink_chain):
13243         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
13244         (gst_filesrc_map_region), (gst_filesrc_get_read),
13245         (gst_filesrc_open_file):
13246         * gst/elements/gstidentity.c: (gst_identity_chain):
13247         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13248         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13249         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13250         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
13251         * gst/gst.h:
13252         * gst/gst_private.h:
13253         * gst/gstelement.c: (gst_element_class_init),
13254         (gst_element_default_error), (gst_element_error_func),
13255         (gst_element_error_extended):
13256         * gst/gstelement.h:
13257         * gst/gsterror.c: (_gst_core_errors_init),
13258         (_gst_library_errors_init), (_gst_resource_errors_init),
13259         (_gst_stream_errors_init), (gst_error_get_message):
13260         * gst/gsterror.h:
13261         * gst/gstinfo.c: (_gst_debug_init):
13262         * gst/gstmarshal.list:
13263         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13264         (gst_pad_recover_caps_error), (gst_pad_pull):
13265         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
13266         * gst/schedulers/gstbasicscheduler.c:
13267         (gst_basic_scheduler_chainhandler_proxy),
13268         (gst_basic_scheduler_gethandler_proxy),
13269         (gst_basic_scheduler_cothreaded_chain):
13270         * po/POTFILES.in:
13271         * po/fr.po:
13272         * po/nl.po:
13273           change error signal
13274           add error categories
13275
13276 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
13277
13278         * gst/gsttag.c: (_gst_tag_initialize):
13279         * gst/gsttag.h:
13280         Add replaygain tag
13281
13282 2004-01-18  Colin Walters  <walters@verbum.org>
13283
13284         * examples/retag/retag.c: Call gst_init before processing
13285         program args.  Add g_assert to _link_many call.
13286
13287 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13288
13289         * gst/gstpad.c: (gst_pad_alloc_buffer):
13290           Return a newly allocated buffer when the pad has no peer.
13291
13292 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13293
13294         * gst/gstclock.c: (gst_clock_get_time):
13295           make it compile with gcc 2.95 again.
13296           Patch by Scott Wheeler
13297
13298 2004-01-15  David Schleef  <ds@schleef.org>
13299
13300         * gst/gstcaps.h:
13301         Added gst_caps_is_simple() macro.
13302         * testsuite/caps/caps.c: (test1):
13303         * testsuite/caps/intersect2.c: (main):
13304         * testsuite/caps/intersection.c: (main):
13305         Fixes to make 'make check' work again after removing
13306         gst_caps_is_chained().
13307
13308 2004-01-15  Leif Johnson <leif@ambient.2y.net>
13309
13310         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
13311         and additions to the MIDI document.
13312
13313 2004-01-15  David Schleef  <ds@schleef.org>
13314
13315         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
13316         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
13317         of GST_RPAD_, since we don't know if it's a real or ghost pad.
13318
13319 2004-01-15  David Schleef  <ds@schleef.org>
13320
13321         * gst/gstqueue.c:
13322         * gst/gstqueue.h:
13323         Fix the spelling of "treshold" and make min_threshold actually
13324         affect the queue.
13325
13326 2004-01-15  David Schleef  <ds@schleef.org>
13327
13328         * gst/gstcaps.c:
13329         Add lots of documentation.
13330         * gst/gstcaps.h:
13331         Deprecate a few functions.
13332         * gst/gstpad.c:
13333         Removed use of deprecated functions.
13334
13335 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13336
13337         * gst/gstpad.c: (gst_pad_is_linked):
13338         * gst/gstpad.h:
13339           implement gst_pad_is_linked
13340         * gst/gstelement.h:
13341           reserve space for initiate_state_change
13342
13343 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13344
13345         * gst/autoplug/gstspideridentity.c:
13346         (gst_spider_identity_sink_loop_type_finding):
13347           break infinite loop by just returning instead of looping
13348         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
13349           set event time difference correctly. Set it to 1 second instead
13350           of 100ms to be more tolerant
13351         * gst/gstelement.c: (gst_element_set_time):
13352           add debugging output
13353
13354 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13355
13356         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
13357           query if buffers are inside the pool, ignore events
13358
13359 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13360
13361         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
13362         (gst_clock_set_speed), (gst_clock_set_active),
13363         (gst_clock_is_active), (gst_clock_reset),
13364         (gst_clock_handle_discont):
13365         * gst/gstclock.h:
13366           deprecate old interface and disable functions that aren't in use
13367           anymore.
13368         * gst/gstelement.h:
13369         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
13370         (gst_element_set_time), (gst_element_adjust_time):
13371           add concept of "element time" and functions to get/set this time.
13372         * gst/gstelement.c: (gst_element_change_state):
13373           update element time correctly.
13374         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13375           This is a debug message, not a g_critical.
13376         * gst/gstpad.c: (gst_pad_event_default):
13377           handle discontinuous events right with element time.
13378         * gst/gstscheduler.c: (gst_scheduler_state_transition):
13379           update to clocking fixes.
13380           set clocks on elements in READY=>PAUSED. The old behaviour caused
13381           a wrong element time on the first element that started playing.
13382         * gst/schedulers/gstbasicscheduler.c:
13383         (gst_basic_scheduler_class_init):
13384         * gst/schedulers/gstoptimalscheduler.c:
13385         (gst_opt_scheduler_class_init):
13386           remove code that just implements the default behaviour.
13387         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
13388           update to use new clocking functions
13389         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
13390         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
13391           update to test new element time.
13392         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
13393           use _get_allowed_caps instead of _get_caps. This catches filtered
13394           caps correctly.
13395         * testsuite/debug/commandline.c:
13396           update for new GST_DEBUG syntax.
13397         * testsuite/threads/Makefile.am:
13398           disable a test that only works sometimes.
13399
13400 2004-01-13  Julien MOUTTE <julien@moutte.net>
13401
13402         * po/LINGUAS: Adding fr.
13403         * po/fr.po: Adding french translation.
13404
13405 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13406
13407         * gst/parse/grammar.y:
13408         * po/POTFILES.in:
13409         * po/nl.po:
13410         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
13411           translate parsing error messages
13412
13413 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13414
13415         * po/POTFILES.in: adding gst-launch
13416         * po/nl.po: updated translation, all 99 strings translated
13417         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
13418         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
13419           fix strings for translation
13420
13421 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13422
13423         * gst/gst.c:
13424           - capitalize beginnings of popt options
13425           - fix strings for translation
13426           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
13427
13428 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13429
13430         * po/README: add some notes on how to update translations
13431
13432 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13433
13434         * ABOUT-NLS: removed, is autogenerated from autopoint
13435         * autogen.sh: add autopoint stuff
13436         * configure.ac: fix up gettext stuff
13437         * gst/Makefile.am: add i18n headers to noinst_HEADERS
13438         * gst/elements/gsttypefindelement.c: add header include
13439         * gst/gettext.h: add header, copy from system-installed header
13440         * gst/gst-i18n-app.h: to be included by each app having translations
13441         * gst/gst-i18n-lib.h: to be included by each lib having translations
13442         * gst/gst.c: (init_pre): fix up gettext calls
13443         * gst/gst_private.h: remove i18n stuff, moving to separate headers
13444         * po/LINGUAS: the new way to specify translations present
13445         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
13446         * po/Makevars: the variables filled in for GStreamer
13447         * po/POTFILES.in: added new files with translations
13448         * po/de.po: has new strings
13449         * po/nl.po: readded, has new strings
13450
13451 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13452
13453         * gst/gsttag.c: fix some strings marked for translation
13454
13455 2004-01-13  Iain <iain@prettypeople.org>
13456
13457         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
13458         group when we add an element to it, cos we unref it when we remove one
13459
13460 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
13461
13462         * testsuite/debug/commandline.c: (debug_not_reached):
13463         * testsuite/debug/output.c: (check_message):
13464           fix testsuite
13465
13466 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13467
13468         * examples/cutter/.cvsignore:
13469         * examples/helloworld/.cvsignore:
13470         * examples/launch/.cvsignore:
13471         * examples/manual/.cvsignore:
13472         * examples/mixer/.cvsignore:
13473         * examples/pingpong/.cvsignore:
13474         * examples/plugins/.cvsignore:
13475         * examples/queue/.cvsignore:
13476         * examples/queue2/.cvsignore:
13477         * examples/queue3/.cvsignore:
13478         * examples/queue4/.cvsignore:
13479         * examples/retag/.cvsignore:
13480         * examples/thread/.cvsignore:
13481         * examples/typefind/.cvsignore:
13482         * examples/xml/.cvsignore:
13483         * gst/.cvsignore:
13484         * gst/autoplug/.cvsignore:
13485         * gst/elements/.cvsignore:
13486         * gst/indexers/.cvsignore:
13487         * gst/parse/.cvsignore:
13488         * gst/registries/.cvsignore:
13489         * gst/schedulers/.cvsignore:
13490         * libs/gst/bytestream/.cvsignore:
13491         * libs/gst/control/.cvsignore:
13492         * libs/gst/getbits/.cvsignore:
13493         * tests/.cvsignore:
13494         * tests/bufspeed/.cvsignore:
13495         * tests/instantiate/.cvsignore:
13496         * tests/memchunk/.cvsignore:
13497         * tests/muxing/.cvsignore:
13498         * tests/sched/.cvsignore:
13499         * tests/seeking/.cvsignore:
13500         * tests/threadstate/.cvsignore:
13501         * testsuite/.cvsignore:
13502         * testsuite/caps/.cvsignore:
13503         * testsuite/cleanup/.cvsignore:
13504         * testsuite/dynparams/.cvsignore:
13505         * testsuite/plugin/.cvsignore:
13506         * tools/.cvsignore:
13507           update - this is huge, because it includes *.bb, *.bbg and *.da files
13508           which are generated for gcov.
13509
13510 2004-01-11  David Schleef  <ds@schleef.org>
13511
13512         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
13513         a function to parse integers in ways that strto[u]l() does not.
13514
13515 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13516
13517         * tools/gst-inspect.c: (print_caps):
13518           improve output of caps a bit
13519
13520 2004-01-11  David Schleef  <ds@schleef.org>
13521
13522         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
13523         inherit correct flags (READONLY and DONTKEEP).
13524
13525 2004-01-11  David Schleef  <ds@schleef.org>
13526
13527         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
13528         (gst_filesrc_map_region):
13529         * gst/gstbuffer.c: (_gst_buffer_initialize),
13530         (_gst_buffer_sub_free), (gst_buffer_default_copy),
13531         (gst_buffer_new), (gst_buffer_create_sub),
13532         (gst_buffer_is_span_fast), (gst_buffer_span):
13533         * gst/gstbuffer.h:
13534         Change GstBuffer private structure element names. (all files)
13535         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
13536         (gst_queue_link):
13537         * gst/gstqueue.h:
13538         Implement getcaps/pad_link functions that handle the case where
13539         there are data in the queue.
13540
13541 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13542
13543         * gst/elements/gstbufferstore.c:
13544           initialize debugging structure correctly
13545         * gst/elements/gsttee.c: (gst_tee_set_property):
13546           g_object_notify when property was changed
13547         * gst/elements/gsttypefindelement.c:
13548         (gst_type_find_element_change_state):
13549           clear caps correctly
13550
13551 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13552
13553         * gst/gstqueue.c: (gst_queue_init):
13554           Use better defaults for when a queue should block. This
13555           gets rid of jerky playback for quite a few files.
13556           It takes more memory.
13557
13558 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
13559
13560         (gst_xml_registry_parse_padtemplate):
13561           make critical message slightly more useful
13562
13563 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13564
13565         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
13566         (gst_debug_message_get), (gst_debug_log_default):
13567         * gst/gstinfo.h:
13568           Change gst_debug_log(_valist) to take a const format string.
13569           Change prototype of log function and functions using those to 
13570           take a GstDebugMessage instead of a string that requires using
13571           gst_debug_message_get.
13572
13573 2004-01-08  David Schleef  <ds@schleef.org>
13574
13575         * Makefile.am:
13576         * configure.ac:
13577         Add option --enable-gcov to build GStreamer with -fprofile-arcs
13578         and -ftest-coverage, which allows gcov to show information about
13579         testsuite coverage.
13580
13581 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13582
13583         * gst/gstutils.h:
13584           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
13585           GST_PARENT_CALL_WITH_DEFAULT
13586         * gst/elements/gstaggregator.c: 
13587         * gst/elements/gstbufferstore.c: 
13588         * gst/elements/gstfakesink.c: 
13589         * gst/elements/gstfakesrc.c: 
13590         * gst/elements/gstfdsink.c: 
13591         * gst/elements/gstfdsrc.c: 
13592         * gst/elements/gstfilesink.c: 
13593         * gst/elements/gstfilesrc.c: 
13594         * gst/elements/gstidentity.c: 
13595         * gst/elements/gstmd5sink.c: 
13596         * gst/elements/gstmultidisksrc.c:
13597         * gst/elements/gstpipefilter.c: 
13598         * gst/elements/gstshaper.c:
13599         * gst/elements/gststatistics.c:
13600         * gst/elements/gsttee.c:
13601         * gst/elements/gsttypefindelement.c:
13602           use them.
13603
13604 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
13605
13606         * docs/gst/gstreamer-docs.sgml: remove props
13607         * docs/gst/gstreamer-sections.txt: remove props
13608         * docs/gst/tmpl/gst.sgml:
13609         * docs/gst/tmpl/gstbin.sgml:
13610         * docs/gst/tmpl/gstbuffer.sgml:
13611         * docs/gst/tmpl/gstcaps.sgml:
13612         * docs/gst/tmpl/gstclock.sgml:
13613         * docs/gst/tmpl/gstelement.sgml:
13614         * docs/gst/tmpl/gstindex.sgml:
13615         * docs/gst/tmpl/gstobject.sgml:
13616         * docs/gst/tmpl/gstpad.sgml:
13617         * docs/gst/tmpl/gstpadtemplate.sgml:
13618         * docs/gst/tmpl/gstreamer-unused.sgml:
13619         * docs/gst/tmpl/gstthread.sgml:
13620         * docs/gst/tmpl/gstxml.sgml:
13621           sync with code reorganization
13622
13623 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
13624
13625         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13626         Make the 'Could not find compatible pad' message more informative.
13627
13628 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13629                                                                                 
13630         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
13631           Fix for if we pass NULL as property to location.
13632         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
13633         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
13634           Fix for instantiate-test (see below).
13635         * gst/gststructure.c: (_gst_structure_parse_value):
13636           Fix compile error on gcc-2.96.
13637         * configure.ac:
13638         * tests/Makefile.am:
13639         * tests/instantiate/Makefile.am:
13640         * tests/instantiate/create.c: (create_all_elements), (main):
13641           Add a test that instantiates all elements. This makes it easy to
13642           track dead code for old API/design (like setting event functions
13643           on sink pads and so on).
13644
13645 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
13646
13647         * gst/gstcaps.c: (gst_caps_append_structure):
13648           Move the poisoning to allow a NULL structure
13649         * gst/gstevent.c: (_gst_event_free):
13650           When freeing a navigation event, free the structure
13651           also
13652
13653 2004-01-04  David Schleef  <ds@schleef.org>
13654
13655         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13656         Remove usage of gst_pad_proxy_fixate.
13657         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
13658         (gst_caps_split_one), (gst_caps_replace):
13659         Add poisoning code.
13660         * gst/gstmarshal.list:
13661         Add pointer__pointer for fixate signal
13662         * gst/gstpad.c: (gst_real_pad_class_init),
13663         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
13664         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
13665         (gst_pad_set_explicit_caps), (gst_pad_template_new):
13666         Add poisoning code. Add fixate signal on RealPad. Change
13667         set_explicit_caps() to take const GstCaps, like try_set_caps().
13668         * gst/gstpad.h:
13669         * testsuite/caps/Makefile.am:
13670         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
13671
13672 2004-01-03  David Schleef  <ds@schleef.org>
13673
13674         * gst/elements/gsttypefindelement.c:
13675         (gst_type_find_element_have_type), (gst_type_find_element_init):
13676         Use gst_pad_use_explicit_caps for src pad.
13677         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
13678         before using it.
13679
13680 2004-01-03  David Schleef  <ds@schleef.org>
13681
13682         * gst/gstelement.c: (gst_element_link_pads_filtered),
13683         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
13684         that linking was successful.
13685         * gst/gstpad.c: (gst_pad_link_free),
13686         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
13687         (gst_pad_link_try), (gst_pad_link_unnegotiate),
13688         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
13689         GstPadLinkReturn correctly between functions, and don't fail
13690         when DELAYED is used (DELAYED is very important).  Better
13691         cleanup on unlinking and unnegotiation.  Should fix some spider
13692         bugs.
13693
13694 2004-01-02  David Schleef  <ds@schleef.org>
13695
13696         * gst/gstelement.c: (gst_element_class_init),
13697         (gst_element_base_class_init): ->padtemplates should be cleared
13698         in base_init, since we need to have a fresh list for every
13699         class.  (Alternately, we chould copy the list and share the
13700         actual pad templates (not the list), but that would require
13701         changing every plugin to move pad template registration from
13702         base_init to class_init.)
13703
13704 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13705
13706         * gst/gstelement.c: (gst_element_class_add_pad_template):
13707           Refuse registering a pad template if another pad template
13708           with the same name already exists (#114715).
13709
13710 2004-01-02  David Schleef  <ds@schleef.org>
13711
13712         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
13713         (gst_caps_is_equal_fixed): Add new function.
13714         * gst/gstcaps.h: ditto.
13715         * gst/gstpad.c: (gst_real_pad_class_init),
13716         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
13717         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
13718         check new caps against existing caps -- if they're the same, return
13719         OK without renegotiating.  caps-nego-failed signal fixed so that
13720         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
13721         to save an extra caps copy.  Don't complete negotiation if a pad
13722         link function returns DELAYED.
13723
13724 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13725
13726         * gst/gstpad.c: (gst_pad_try_relink_filtered):
13727           Fix wrong g_return_if_fail
13728
13729 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
13730
13731         * gst/gstbin.c: (gst_bin_class_init):
13732         Change the marshalling of element_added/element_removed
13733         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
13734         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
13735
13736 2004-01-01  David Schleef  <ds@schleef.org>
13737
13738         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13739         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
13740         (gst_pad_use_explicit_caps):
13741         * gst/gstpad.h:
13742         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
13743         to use an internal getcaps and link fuction so that negotiation
13744         always results in the explicitly set caps.
13745         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
13746         are particularly useful for decoders.
13747
13748 2003-12-31  David Schleef  <ds@schleef.org>
13749
13750         * gst/elements/gstidentity.c: (gst_identity_class_init),
13751         (gst_identity_init), (gst_identity_chain),
13752         (gst_identity_set_property), (gst_identity_get_property):
13753         * gst/elements/gstidentity.h:
13754         * gst/gstqueue.c: (gst_queue_init):
13755           Negotiation fixes.
13756
13757 2003-12-31  David Schleef  <ds@schleef.org>
13758
13759         * gst/gstcaps.c: (gst_caps_intersect),
13760         (_gst_caps_normalize_foreach), (gst_caps_normalize):
13761           Implement gst_caps_normalize().
13762         * testsuite/caps/normalisation.c: (main):
13763           Add an additional test
13764
13765 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13766
13767         * gst/gstqueue.c: (gst_queue_init):
13768           use gst_pad_proxy_getcaps()
13769
13770 2003-12-31  David Schleef  <ds@schleef.org>
13771
13772         * gst/elements/gstshaper.c: (gst_shaper_link):
13773         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13774         * gst/gstqueue.c: (gst_queue_link):
13775           Negotiation fixes.
13776
13777 2003-12-31  David Schleef  <ds@schleef.org>
13778
13779         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
13780         * gst/gstpad.h: Add functions that are useful as default pad
13781         link and fixate functions for elements.
13782
13783 2003-12-30  David Schleef  <ds@schleef.org>
13784
13785         * gst/gstpad.c: (gst_pad_link_try):
13786           Fix segfault when attempting to return to old caps
13787
13788 2003-12-29  David Schleef  <ds@schleef.org>
13789
13790         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
13791         (gst_caps_structure_simplify), (gst_caps_simplify):
13792         * gst/gstcaps.h:
13793           Add simplify function
13794         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
13795         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
13796         * gst/gstpad.h:
13797           Copy over srcnotify, sinknotify when calling old pad_link
13798           functions.  Add new is_negotiated() function.
13799         * gst/gststructure.c: (gst_structure_copy):
13800           Fix an incredibly stupid bug that should have been noticed
13801           weeks ago.  _copy() returned the argument, not the new copy.
13802
13803 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13804
13805         * gst/gstcaps.c: (gst_caps_append):
13806           add sanity checks
13807         * gst/gstcaps.h: (gst_caps_debug):
13808           remove, it doesn't exist anymore.
13809         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
13810         (gst_element_threadsafe_properties_post_run):
13811           make debugging messages not clutter up THREAD debug category
13812         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
13813         (gst_element_change_state):
13814           update to new caps API
13815         * gst/gstinterface.c: (gst_implements_interface_cast):
13816           don't put vital code in g_return_if_fail
13817         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
13818         (gst_pad_link_filtered):
13819           add pst_pad_try_link and use it.
13820         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
13821           implement correctly, deprecate first one.
13822         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
13823           add and implement.
13824         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
13825           implement.
13826         (gst_pad_get_negotiated_caps):
13827           add and implement. Make GST_PAD_CAPS call this function.
13828         (gst_pad_get_caps):
13829           remove unneeded check..
13830         (gst_pad_recover_caps_error):
13831           disable, always return FALSE.
13832         (gst_real_pad_dispose):
13833           don't free caps and appfilter anymore, they're unused.
13834         * gst/gstpad.h:
13835           Reflect changes mentioned above.
13836         * gst/gstsystemclock.c: (gst_system_clock_wait):
13837           Make 'clock is way behind' a debugging message.
13838         * gst/gstthread.c: (gst_thread_change_state):
13839           Fix debugging message
13840
13841 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
13842
13843         * gst/gstinfo.h:
13844           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
13845         * docs/gst/tmpl/gstreamer-unused.sgml:
13846           removed all traces of cvs conflicts
13847
13848 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13849
13850         * configure.ac:
13851         * gst/schedulers/cothreads_compat.h:
13852         * libs/Makefile.am:
13853           remove last instances of wingo cothread usage
13854
13855 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13856
13857         * gst/gstplugin.c:
13858         * gst/gstversion.h.in:
13859         * gst/parse/grammar.y:
13860           change comment block from /** to /* when not gtk-doc comments
13861
13862 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13863
13864         * gst/gst.c: whitespace and doc style fixes
13865
13866 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13867
13868         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
13869
13870 2003-12-24  Colin Walters  <walters@verbum.org>
13871
13872         * gst/elements/gsttypefindelement.c:
13873           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
13874           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
13875           Don't double-free caps.
13876
13877 2003-12-23  David Schleef  <ds@schleef.org>
13878
13879         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
13880           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
13881           Many little fixes and additions of debug statements to
13882           get rhythmbox working.
13883
13884 2003-12-23  Colin Walters  <walters@verbum.org>
13885
13886         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
13887         Use GST_PAD_LINK_SUCCESSFUL.
13888
13889 2003-12-23  David Schleef  <ds@schleef.org>
13890
13891         * gst/elements/gstaggregator.c:
13892         * gst/elements/gsttee.c:
13893           Use gst_pad_proxy_getcaps().
13894         * gst/gstpad.c:
13895         * gst/gstpad.h:
13896           Add gst_pad_proxy_getcaps(), which filter elements can use
13897           as a generic getcaps implementation.
13898           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
13899           was advertised.
13900
13901 2003-12-23  David Schleef  <ds@schleef.org>
13902
13903         * gst/gstpad.c:
13904           Rearrange/rewrite much of the pad negotiation code, since it
13905           resembled pasta.  This actually changes the way some
13906           negotiation works, since the previous code was inconsistent
13907           depending on how it was invoked.  Add (internal) structure
13908           GstPadLink, which is used to hold some information (more in
13909           the future) about the link between two pads.  Fixes a number
13910           of bugs, including random lossage of filter caps when the
13911           initial negotiation is delayed.  A few functions are still
13912           unimplemented.
13913         * gst/gstpad.h:
13914           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
13915           these when testing GstPadLinkReturn values instead of comparing
13916           directly.
13917
13918 2003-12-23  David Schleef  <ds@schleef.org>
13919
13920         * gst/gstvalue.c: 
13921         * gst/gstvalue.h:
13922           Rearrange lots of code.  Change registration of compare function
13923           into registration of compare/serialize/deserialize functions.
13924           Doesn't include implementation of gst_value_[de]serialize(),
13925           but that should be easy.
13926
13927 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13928
13929         * docs/gst/gstreamer-sections.txt:
13930         * docs/gst/tmpl/gstprops.sgml: removed
13931         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
13932           David removed props and caps code, so let's remove their docs as well.
13933           Removed all no longer existing symbols from gstreamer-sections.txt
13934           
13935 2003-12-22  Colin Walters  <walters@verbum.org>
13936
13937         * gst/gsttaginterface.c, gst/gsttaginterface.h,
13938           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
13939           of tags directly.
13940
13941 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13942
13943         * gst/elements/gstelements.c:
13944           Set ranks of elements to NONE, so the autoplugger doesn't use them.
13945         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
13946           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
13947           gst_caps (peer).
13948
13949 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13950
13951         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
13952         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
13953         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
13954         (gst_spider_identity_sink_loop_type_finding):
13955         * gst/autoplug/gstspideridentity.h:
13956           Fix autoplugging in spider element, so it works with new caps.
13957           This was mainly caused by identifying empty caps incorrectly.
13958
13959 2003-12-22  David Schleef  <ds@schleef.org>
13960
13961         * gststructure.c, gstvalue.c, gstvalue.h: Add
13962           gst_value_init_and_copy() and use it, to avoid silly mistakes in
13963           using g_value_copy()
13964
13965 2003-12-21  David Schleef  <ds@schleef.org>
13966
13967         * many, many files: Merge CAPS branch.  This includes:
13968           - implemention of GstValue and several GstValue types
13969           - implemention of GstStructure
13970           - entire rewrite of GstCaps
13971           - removal of GstProps
13972           - many changes to GstPad to compensate for new caps paradigm
13973           - removal of GstBufferpool
13974         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
13975         gstvalue.h, gst/gstcaps[2]*.[ch]:
13976           - rename gstcaps2.[ch] to gstcaps.[ch]
13977
13978 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13979
13980         * gst/gstqueue.c: (gst_queue_handle_pending_events),
13981         (gst_queue_chain), (gst_queue_handle_src_event):
13982           implement timeout for sending events. Workaround for if the
13983           pipeline on this queue is not passing any data.
13984
13985 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
13986                                                                                 
13987         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
13988         * moved CVS to freedesktop.org