check/gst/gstvalue.c: Added subtract checks.
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-08-16  Wim Taymans  <wim@fluendo.com>
2
3         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
4         Added subtract checks.
5
6         * docs/design/part-events.txt:
7         Some more docs about newsegment
8
9         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
10         Fix FIXME
11
12         * gst/gstcaps.c: (gst_caps_to_string):
13         Add comments, cleanups.
14         
15         * gst/gstelement.c: (gst_element_save_thyself):
16         cleanups
17         
18         * gst/gstvalue.c: (gst_value_collect_int_range),
19         (gst_string_unwrap), (gst_value_union_int_int_range),
20         (gst_value_union_int_range_int_range),
21         (gst_value_intersect_int_int_range),
22         (gst_value_intersect_int_range_int_range),
23         (gst_value_intersect_double_double_range),
24         (gst_value_intersect_double_range_double_range),
25         (gst_value_intersect_list), (gst_value_subtract_int_int_range),
26         (gst_value_subtract_int_range_int),
27         (gst_value_subtract_double_range_double),
28         (gst_value_subtract_double_range_double_range),
29         (gst_value_subtract_from_list), (gst_value_subtract_list),
30         (gst_value_can_compare), (gst_value_compare_fraction):
31         Cleanups, add comments, remove unneeded asserts.
32
33 2005-08-15  Thomas Vander Stichele  <thomas at apestaart dot org>
34
35         * tools/gst-launch.c: (event_loop):
36           don't convert NULL structures to strings
37
38 2005-08-15  Stefan Kost  <ensonic@users.sf.net>
39
40         * docs/gst/gstreamer-sections.txt:
41           made some defines private
42         * docs/gst/tmpl/gstconfig.sgml:
43         * docs/gst/tmpl/gstqueue.sgml:
44         * docs/gst/tmpl/gsttaglist.sgml:
45         * docs/gst/tmpl/gsttypes.sgml:
46         * docs/gst/tmpl/gstutils.sgml:
47         * docs/pwg/appendix-porting.xml:
48         * gst/base/gstbasesink.h:
49         * gst/base/gstbasesrc.c:
50         * gst/base/gstbasesrc.h:
51         * gst/elements/gstfakesink.c: (gst_fake_sink_class_init):
52         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init):
53         * gst/gstelement.c: (gst_element_class_init):
54         * gst/gstpad.c: (gst_pad_class_init):
55         * gst/gstqueue.c: (gst_queue_class_init):
56         * gst/gstxml.c: (gst_xml_class_init):
57           documented all undocumented signal inline
58         * libs/gst/controller/gst-controller.h:
59           added padding
60
61 2005-08-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
62
63         * docs/pwg/appendix-porting.xml:
64           Document _set_link_function -> _set_setcaps_function.
65
66 2005-08-15  Thomas Vander Stichele  <thomas at apestaart dot org>
67
68         * check/Makefile.am:
69           add a .check target for running the check
70         * check/gst-libs/controller.c: (GST_START_TEST):
71           cosmetic fixups
72         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
73           complete checks for gstbuffer; would be nice if I could get the
74           gcov stuff to work so I can see if I actually completed gstbuffer.c
75         * check/gstcheck.h:
76           add ASSERT_BUFFER_REFCOUNT
77
78 2005-08-13  Tim-Philipp Müller  <tim at centricular dot net>
79
80         * docs/gst/gstreamer-sections.txt:
81         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
82         * gst/gsttag.h:
83           Add GST_TAG_LANGUAGE_CODE as we have in 0.8, and don't
84           spew out a warning if a tag that is already registered
85           is re-registered, unless it is re-registered with a 
86           different type (#308438).
87
88 2005-08-12  Tim-Philipp Müller  <tim at centricular dot net>
89
90         * docs/pwg/appendix-porting.xml:
91         * docs/pwg/building-state.xml:
92           Add some paragraphs about state changes in 0.9 to the PWG
93           and the porting guide, in particular about the new meaning
94           of GST_STATE_PAUSED and how to write state change functions
95           with concurrent access by multiple threads in mind.
96
97 2005-08-11  Stefan Kost  <ensonic@users.sf.net>
98
99         * docs/gst/gstreamer-docs.sgml:
100         * docs/libs/gstreamer-libs-docs.sgml:
101           added deprecation and since indexes
102         * libs/gst/controller/gst-controller.c:
103         * libs/gst/controller/gst-helper.c:
104           added since tags
105
106
107 2005-08-11  Wim Taymans  <wim@fluendo.com>
108
109         * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked),
110         (gst_proxy_pad_set_target), (gst_proxy_pad_get_target),
111         (gst_proxy_pad_dispose), (gst_ghost_pad_do_activate_push),
112         (gst_ghost_pad_do_link), (gst_ghost_pad_set_internal),
113         (gst_ghost_pad_new_notarget), (gst_ghost_pad_get_target),
114         (gst_ghost_pad_set_target):
115         Actually implement (re)setting the target on a ghostpad
116         as described in the docs.
117
118 2005-08-10  Tim-Philipp Müller  <tim at centricular dot net>
119
120         * gst/gst.c: (gst_init_check_with_popt_table), (init_pre):
121           Check whether GST_DEBUG_NO_COLOR environment variable is
122           set and disable coloured debug output if that is the case.
123
124 2005-08-10  Tim-Philipp Müller  <tim at centricular dot net>
125
126         * gst/base/gsttypefindhelper.c: (helper_find_peek),
127         (gst_type_find_helper):
128           The memory returned by gst_type_find_peek() needs to
129           stay valid until the end of a typefind function, and
130           typefind functions may keep results from different 
131           offsets around, so we can't just unref the buffer from
132           the previous _peek(), but have to save all buffers 
133           returned by _peek() until typefinding is done and only
134           free them then.
135
136 2005-08-09  Tim-Philipp Müller  <tim at centricular dot net>
137
138         * docs/gst/gstreamer-sections.txt:
139         * gst/gstutils.h:
140           New macros: GST_ROUND_UP_2() through GST_ROUND_UP_64().
141
142 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
143
144         * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
145           Fix a pretty good memleak.
146
147 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
148
149         * gst/gstiterator.h:
150           Fix wrong include and 'make distcheck'.
151
152 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
153
154         * gst/gstbin.c: (bin_bus_handler):
155           Use gst_element_post_message() instead.
156
157 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
158
159         * gst/base/gstadapter.h:
160         * gst/base/gstbasesink.h:
161         * gst/base/gstbasesrc.h:
162         * gst/base/gstbasetransform.h:
163         * gst/base/gstcollectpads.h:
164         * gst/base/gstpushsrc.h:
165         * gst/gstiterator.h:
166           Add padding to our base elements' class and instance structs and
167           to GstIterator (you will need to rebuild all plugins and apps!)
168
169 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
170
171         * gst/gstbin.c: (bin_bus_handler):
172           Make default message forwarding from child->bus to bin->bus
173           threadsafe and make it not emit warnings if the parent has no bus.
174
175 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
176
177         * gst/gstelement.c: (activate_pads):
178           On paused->ready, set pad->caps to NULL, as is the documented
179           behaviour in this state change. Fixes playback of series of
180           media files when visualization is enabled in Totem.
181
182 2005-08-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
183
184         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
185           Allow NULL as filter-caps (which means "any").
186
187 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
188
189         * docs/libs/gstreamer-libs-sections.txt:
190         * libs/gst/controller/gst-controller.c:
191         * libs/gst/controller/gst-controller.h:
192         * libs/gst/controller/gst-helper.c:
193           adding more entries to the docs and fix small doc-bugs
194
195 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
196
197         * docs/gst/gstreamer-docs.sgml:
198         * docs/gst/gstreamer-sections.txt:
199         * docs/gst/gstreamer.types:
200         * docs/gst/tmpl/gstbasesink.sgml:
201         * docs/gst/tmpl/gstbasesrc.sgml:
202         * docs/gst/tmpl/gstbasetransform.sgml:
203         * docs/gst/tmpl/gstfakesrc.sgml:
204         * gst/base/gstcollectpads.c:
205         * gst/base/gstcollectpads.h:
206         * libs/gst/controller/gst-controller.c:
207         * libs/gst/controller/gst-controller.h:
208         * libs/gst/controller/gst-helper.c:
209         * libs/gst/controller/gst-interpolation.c:
210         * libs/gst/controller/lib.c:
211           added long/short desc for controller docs
212           added collectpads base class docs
213           added correct includes to base-class docs
214
215 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
216
217         * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
218         (gst_test_mono_source_set_property),
219         (gst_test_mono_source_class_init), (GST_START_TEST),
220         (gst_controller_suite):
221         * docs/gst/gstreamer-docs.sgml:
222         * docs/gst/gstreamer-sections.txt:
223         * docs/gst/gstreamer.types:
224         * docs/libs/gstreamer-libs-docs.sgml:
225         * docs/libs/gstreamer-libs-sections.txt:
226         * gst/base/gstadapter.c:
227         * libs/gst/controller/gst-controller.c:
228         (gst_controlled_property_new), (gst_controlled_property_free),
229         (gst_controller_new_valist),
230         (gst_controller_remove_properties_valist),
231         (gst_controller_sink_values), (_gst_controller_finalize):
232         * libs/gst/controller/gst-controller.h:
233         * libs/gst/controller/gst-helper.c:
234         (gst_object_control_properties), (gst_object_uncontrol_properties),
235         (gst_object_get_controller), (gst_object_set_controller),
236         (gst_object_sink_values), (gst_object_get_value_arrays),
237         (gst_object_get_value_array):
238           more tests (and fixes) for the controller
239           more docs for the controller
240           integrated companies docs for the adapter 
241
242 2005-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
243
244         * check/elements/gstfakesrc.c: (setup_fakesrc), (cleanup_fakesrc),
245         (GST_START_TEST), (fakesrc_suite):
246           add tests for sizetype
247
248 2005-08-04  Andy Wingo  <wingo@pobox.com>
249
250         * gst/elements/gstcapsfilter.c: Reimplement using basetransform,
251         fixes buffer_alloc proxying among other things.
252
253         * gst/base/gstbasetransform.c:
254         * gst/base/gstbasetransform.h:
255         Revert patch to gstbasetransform from 7-28 removing
256         delay_configure.
257
258         * gst/base/gstbasetransform.h (GstBaseTransformClass.get_size):
259         * gst/base/gstbasetransform.c (gst_base_transform_get_size):
260         Semantics changed, should return not the size of the output buffer
261         but the byte size of a buffer with a given caps.
262
263         * gst/base/gstbasetransform.c (gst_base_transform_getcaps): Better
264         debug object.
265         (gst_base_transform_configure_caps): Don't set out_size here: (in,
266         out) are not the pad caps until setcaps finishes.
267         (gst_base_transform_buffer_alloc): Proxy the buffer_alloc for the
268         not-in-place case as well. Deal with changing from in-place to
269         not-in-place within calling pad_alloc_buffer. Still a bit
270         concerned about the overhead here...
271
272 2005-08-03  Andy Wingo  <wingo@pobox.com>
273
274         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): Not
275         fixating is an error.
276
277 2005-08-04  Edward Hervey  <edward@fluendo.com>
278
279         * gst/base/gstadapter.h: 
280         Added gst_adapter_get_type() to the header
281
282 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
283
284         * check/Makefile.am:
285         * check/gst-libs/controller.c:
286         * libs/gst/controller/gst-controller.c:
287         (gst_controller_new_valist):
288           added check test suite for the controller
289         * gst/base/gstpushsrc.c:
290           fixed a doc typo
291
292 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
293
294         * docs/gst/Makefile.am:
295         * docs/gst/gstreamer-docs.sgml:
296         * docs/gst/gstreamer-sections.txt:
297         * docs/gst/gstreamer.types:
298         * docs/gst/tmpl/gstfakesrc.sgml:
299         * gst/base/README:
300         * gst/base/gstbasesink.c:
301         * gst/base/gstbasesink.h:
302         * gst/base/gstbasesrc.c:
303         * gst/base/gstbasesrc.h:
304         * gst/base/gstbasetransform.c:
305         * gst/base/gstpushsrc.c:
306         * gst/base/gstpushsrc.h:
307           add short/long description docs to base classes
308           add pushsrc to the docs
309           remove consolidated doc fragments
310
311 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
312
313         * configure.ac:
314         * docs/libs/Makefile.am:
315         * docs/libs/gstreamer-libs-docs.sgml:
316         * docs/libs/gstreamer-libs-sections.txt:
317         * docs/libs/gstreamer-libs.types:
318         * examples/Makefile.am:
319         * examples/controller/.cvsignore:
320         * examples/controller/Makefile.am:
321         * examples/controller/audio-example.c: (main):
322         * libs/gst/Makefile.am:
323         * libs/gst/controller/.cvsignore:
324         * libs/gst/controller/Makefile.am:
325         * libs/gst/controller/gst-controller.c:
326         (on_object_controlled_property_changed), (gst_timed_value_compare),
327         (gst_timed_value_find),
328         (gst_controlled_property_set_interpolation_mode),
329         (gst_controlled_property_new), (gst_controlled_property_free),
330         (gst_controller_find_controlled_property),
331         (gst_controller_new_valist), (gst_controller_new),
332         (gst_controller_remove_properties_valist),
333         (gst_controller_remove_properties), (gst_controller_set),
334         (gst_controller_set_from_list), (gst_controller_unset),
335         (gst_controller_get), (gst_controller_get_all),
336         (gst_controller_sink_values), (gst_controller_get_value_arrays),
337         (gst_controller_get_value_array),
338         (gst_controller_set_interpolation_mode),
339         (_gst_controller_finalize), (_gst_controller_init),
340         (_gst_controller_class_init), (gst_controller_get_type):
341         * libs/gst/controller/gst-controller.h:
342         * libs/gst/controller/gst-helper.c: (g_object_control_properties),
343         (g_object_uncontrol_properties), (g_object_get_controller),
344         (g_object_set_controller), (g_object_sink_values),
345         (g_object_get_value_arrays), (g_object_get_value_array):
346         * libs/gst/controller/gst-interpolation.c:
347         (gst_controlled_property_find_timed_value_node),
348         (interpolate_none_get), (interpolate_trigger_get),
349         (interpolate_trigger_get_value_array):
350         * libs/gst/controller/lib.c: (gst_controller_init):
351         * pkgconfig/Makefile.am:
352         * pkgconfig/gstreamer-control-uninstalled.pc.in:
353         * pkgconfig/gstreamer-control.pc.in:
354         * testsuite/Makefile.am:
355         * testsuite/controller/.cvsignore:
356         * testsuite/controller/Makefile.am:
357         * testsuite/controller/interpolator.c: (main):
358           added controller code
359           removed dparam pc files
360
361 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
362         * gst/base/gstcollectpads.c: (gst_collectpads_finalize),
363         (gst_collectpads_stop):
364           Broadcast the condition when shutting down, to make sure we wake all
365           threads up. Shut down pads on finalize, for safety.
366
367 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
368         * gst/base/gstbasetransform.c: (gst_base_transform_init),
369         (gst_base_transform_handle_buffer),
370         (gst_base_transform_change_state):
371           Handle PAUSED->READY->PAUSED transition after negotiation
372           occurred already.
373         * gst/gstmessage.c: (gst_message_init):
374           Extra piece of debug for new messages.
375
376 2005-08-01  Stefan Kost  <ensonic@users.sf.net>
377
378         * configure.ac:
379         * docs/gst/tmpl/gstbasesrc.sgml:
380         * docs/gst/tmpl/gstelement.sgml:
381         * docs/gst/tmpl/gstevent.sgml:
382         * docs/gst/tmpl/gstfakesrc.sgml:
383         * docs/gst/tmpl/gstformat.sgml:
384         * docs/gst/tmpl/gstghostpad.sgml:
385         * docs/gst/tmpl/gstpad.sgml:
386         * docs/gst/tmpl/gstquery.sgml:
387         * docs/gst/tmpl/gststructure.sgml:
388         * docs/gst/tmpl/gsttaglist.sgml:
389         * docs/gst/tmpl/gstvalue.sgml:
390         * docs/libs/gstreamer-libs-docs.sgml:
391         * docs/libs/gstreamer-libs-sections.txt:
392         * docs/libs/gstreamer-libs.types:
393         * libs/gst/Makefile.am:
394         * libs/gst/control/.cvsignore:
395         * libs/gst/control/Makefile.am:
396         * libs/gst/control/control.c:
397         * libs/gst/control/control.h:
398         * libs/gst/control/dparam.c:
399         * libs/gst/control/dparam.h:
400         * libs/gst/control/dparam_smooth.c:
401         * libs/gst/control/dparam_smooth.h:
402         * libs/gst/control/dparamcommon.h:
403         * libs/gst/control/dparammanager.c:
404         * libs/gst/control/dparammanager.h:
405         * libs/gst/control/dplinearinterp.c:
406         * libs/gst/control/dplinearinterp.h:
407         * libs/gst/control/unitconvert.c:
408         * libs/gst/control/unitconvert.h:
409         * testsuite/Makefile.am:
410         * testsuite/dynparams/.cvsignore:
411         * testsuite/dynparams/Makefile.am:
412         * testsuite/dynparams/dparamstest.c:
413         * tools/Makefile.am:
414         * tools/gst-inspect.c: (print_element_info), (main):
415         * tools/gst-xmlinspect.c: (print_element_info), (main):
416           deactivate and remove dparams (libgstcontrol)
417
418 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
419
420         * gst/elements/gsttypefindelement.c:
421         (gst_type_find_element_have_type), (gst_type_find_element_init),
422         (stop_typefinding), (gst_type_find_element_handle_event),
423         (gst_type_find_element_chain), (gst_type_find_element_getrange):
424         * gst/elements/gsttypefindelement.h:
425           Set caps on all outgoing buffers, not just the first one.
426
427 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
428
429         * gst/elements/gsttypefindelement.c:
430         (gst_type_find_element_have_type),
431         (gst_type_find_element_check_set_buffer_caps),
432         (gst_type_find_element_init), (stop_typefinding),
433         (gst_type_find_element_handle_event),
434         (gst_type_find_element_chain), (gst_type_find_element_getrange):
435         * gst/elements/gsttypefindelement.h:
436           Set caps on first outgoing buffer when we've found the type.
437
438 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
439
440         * docs/gst/gstreamer-docs.sgml:
441         * docs/gst/gstreamer-sections.txt:
442         * docs/gst/tmpl/gstscheduler.sgml:
443         * docs/gst/tmpl/gstschedulerfactory.sgml:
444           Remove some old cruft from docs.
445
446 2005-07-31  Tim-Philipp Müller  <tim at centricular dot net>
447
448         * gst/gstpad.h:
449           Fix inline docs for GstPadLinkReturn.
450           
451         * gst/gststructure.c: (gst_structure_has_name):
452         * gst/gststructure.h:
453         * docs/gst/gstreamer-sections.txt:
454           New API: gst_structure_has_name().
455
456 2005-07-30  Tim-Philipp Müller  <tim at centricular dot net>
457
458         * configure.ac:
459           Use AC_SYS_LARGEFILE, which will set _FILE_OFFSET_BITS=64
460           and _LARGEFILE_SOURCE in config.h as required. Do not 
461           export those flags in our .pc files any longer (#142209).
462
463           Remove unused GST_DISABLE_OMEGA_COTHREADS stuff.
464
465         * gst/elements/gstfilesink.c: (gst_file_sink_class_init),
466         (gst_file_sink_do_seek), (gst_file_sink_event),
467         (gst_file_sink_get_current_offset), (gst_file_sink_render):
468           Redo seek/tell calls with large file support in mind; add some
469           debugging messages; add log message that tells us when large
470           file support is unavailable or not enabled for some reason.
471
472         * gst/elements/gstfilesrc.c: (gst_file_src_class_init):
473           Add log message that tells us when large file support 
474           is unavailable or not enabled for some reason.
475
476 2005-07-29  Wim Taymans  <wim@fluendo.com>
477
478         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
479         Added test for removing an element with ghostpad from a bin.
480         Fixed test as current implementation does the right thing.
481
482         * gst/gstghostpad.c: (gst_proxy_pad_class_init),
483         (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
484         (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
485         (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
486         (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
487         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
488         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
489         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
490         (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
491         (gst_proxy_pad_get_target), (gst_proxy_pad_init),
492         (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
493         (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
494         (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
495         (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
496         (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
497         (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
498         * gst/gstghostpad.h:
499         Clean up ghostpads, remove properties for internal stuff.
500         Make threadsafe.
501         Fix refcounting.
502         Prepare for switching targets, not all use cases work yet.
503
504 2005-07-29  Wim Taymans  <wim@fluendo.com>
505
506         * docs/design/part-gstghostpad.txt:
507         Small update.
508
509         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
510         (gst_bin_remove_func):
511         Unlinking pads while holding the bin LOCK is not a good
512         idea.
513
514         * gst/gstpad.c: (gst_pad_class_init),
515         (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
516         (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
517         No prob setting template after creating the pad.
518
519 2005-07-29  Jan Schmidt  <thaytan@mad.scientist.com>
520
521         * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
522         (gst_bus_peek), (gst_bus_source_dispatch),
523         (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
524         (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
525           gst_bus_poll may be called from other threads. Handle
526           this nicely by not making poll_data disappear off the
527           stack once gst_bus_poll returns.
528           gst_bus_peek now increments the refcount on the returned
529           message.
530
531 2005-07-29  Wim Taymans  <wim@fluendo.com>
532
533         * docs/design/part-gstghostpad.txt:
534         Overview of current GhostPad datastructures and use
535         cases for changing the target.
536
537 2005-07-28  Wim Taymans  <wim@fluendo.com>
538
539         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
540         Added checks for hierarchy consistency whan adding linked
541         elements to bins.
542
543         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
544         Added check to test element scheduling without bin/pipeline.
545
546         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
547         First add elements to bin, then link.
548         
549         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
550         (gst_bin_remove_func):
551         Unlink pads from elements added/removed from bin to maintain
552         hierarchy consistency.
553
554 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
555
556         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
557         (gst_base_transform_handle_buffer):
558         * gst/base/gstbasetransform.h:
559           Remove broken delay_configure (fixes renegotiation of software
560           scaling pipelines); remove some leftover printf()s.
561
562 2005-07-28  Wim Taymans  <wim@fluendo.com>
563
564         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
565         Added some more tests for wrong hierarchy
566
567         * docs/design/part-overview.txt:
568         Some updates.
569
570         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
571         Cleanups.
572
573         * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
574         (gst_element_dispose):
575         Some more cleanups.
576
577         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
578         (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
579         (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
580         (gst_pad_set_caps), (gst_pad_send_event):
581         Check for correct hierarchy when linking pads. Moving to
582         strict requirement for ghostpads when linking elements in
583         different bins.
584
585         * gst/gstpad.h:
586         Clean ups. Added WRONG_HIERARCHY return value.
587
588 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
589
590         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
591           Better debug if no transform is possible.
592
593 2005-07-27  Wim Taymans  <wim@fluendo.com>
594
595         * docs/random/wtay/network-transp:
596         Some old doc I had.
597
598 2005-07-27  Wim Taymans  <wim@fluendo.com>
599
600         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
601         (gst_dp_event_from_packet):
602         Fix serialization of seek events.
603
604 2005-07-27  Wim Taymans  <wim@fluendo.com>
605
606         * check/gst-libs/gdp.c: (GST_START_TEST):
607         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
608         Fix compilation and fix event serialization.
609
610 2005-07-27  Wim Taymans  <wim@fluendo.com>
611
612         * CHANGES-0.9:
613         * docs/design/part-TODO.txt:
614         * docs/design/part-events.txt:
615         Some docs updates
616
617         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
618         (gst_base_sink_event), (gst_base_sink_do_sync),
619         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
620         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
621         (gst_base_src_do_seek), (gst_base_src_event_handler),
622         (gst_base_src_loop):
623         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
624         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
625         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
626         (gst_base_transform_event), (gst_base_transform_handle_buffer),
627         (gst_base_transform_set_passthrough),
628         (gst_base_transform_is_passthrough):
629         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
630         * gst/elements/gstfilesink.c: (gst_file_sink_event):
631         Event updates.
632
633         * gst/gstbuffer.h:
634         Use faster casts.
635
636         * gst/gstelement.c: (gst_element_seek):
637         * gst/gstelement.h:
638         Update gst_element_seek.
639
640         * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
641         (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
642         (gst_event_new_flush_start), (gst_event_new_flush_stop),
643         (gst_event_new_eos), (gst_event_new_newsegment),
644         (gst_event_parse_newsegment), (gst_event_new_tag),
645         (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
646         (gst_event_parse_qos), (gst_event_new_seek),
647         (gst_event_parse_seek), (gst_event_new_navigation):
648         * gst/gstevent.h:
649         Make GstEvent use GstStructure. Add parsing code, make sure the
650         API is sufficiently generic.
651         Mark possible directions of events and serialization.
652
653         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
654         (_gst_message_copy), (gst_message_new_segment_start),
655         (gst_message_new_segment_done), (gst_message_new_custom),
656         (gst_message_parse_segment_start),
657         (gst_message_parse_segment_done):
658         Small cleanups.
659
660         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
661         (gst_pad_set_caps), (gst_pad_send_event):
662         Update for new events. 
663         Catch events sent in wrong directions.
664
665         * gst/gstqueue.c: (gst_queue_link_src),
666         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
667         (gst_queue_handle_src_query):
668         Event updates.
669
670         * gst/gsttag.c:
671         * gst/gsttag.h:
672         Remove event code from this file.
673
674         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
675         (gst_dp_event_from_packet):
676         Event updates.
677
678 2005-07-27  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
679
680         * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
681         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
682         (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
683           Make debugging actually useful.
684
685 2005-07-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
686
687         * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
688         (gst_pad_fixate_caps):
689           Implement default fixation once again, so that gst_pad_fixate()
690           actually does anything at all. This probably needs to be some
691           sort of a last resort, and use profile-based fixation first, but
692           since that doesn't exist yet, this is the best we have. Fixes
693           visualization in Totem.
694
695 2005-07-22  Wim Taymans  <wim@fluendo.com>
696
697         * docs/design/part-events.txt:
698         Small update.
699
700         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
701         (gst_base_sink_do_sync), (gst_base_sink_activate_push),
702         (gst_base_sink_activate_pull):
703         Some more comments.
704
705         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
706         (gst_fake_src_create):
707         Fix handoff marshall.
708
709         * gst/elements/gstidentity.c: (gst_identity_class_init),
710         (gst_identity_transform_ip):
711         We're a real inplace element.
712
713         * gst/gstbus.c: (gst_bus_post):
714         Added some comments.
715
716         * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
717         * tests/muxing/case1.c: (main):
718         * tests/sched/dynamic-pipeline.c: (main):
719         * tests/sched/interrupt1.c: (main):
720         * tests/sched/interrupt2.c: (main):
721         * tests/sched/interrupt3.c: (main):
722         * tests/sched/runxml.c: (main):
723         * tests/sched/sched-stress.c: (main):
724         * tests/seeking/seeking1.c: (event_received), (main):
725         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
726         (main):
727         * tests/threadstate/threadstate3.c: (main):
728         * tests/threadstate/threadstate4.c: (main):
729         * tests/threadstate/threadstate5.c: (main):
730         Fix the tests.
731
732 2005-07-21  Wim Taymans  <wim@fluendo.com>
733
734         * docs/design/part-seeking.txt:
735         Some small additions.
736
737         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
738         (gst_base_sink_get_times), (gst_base_sink_do_sync),
739         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
740         * gst/base/gstbasesink.h:
741         discont values are gint64, handle the math correctly.
742
743         * gst/base/gstbasesrc.c: (gst_base_src_loop):
744         Make the basesrc report error if the source pad is not linked.
745
746         * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
747         (gst_queue_loop), (gst_queue_handle_src_query),
748         (gst_queue_src_activate_push):
749         Make queue collect data even if the srcpad is not linked.
750         Start pushing out data as soon as it is linked.
751
752         * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
753         * gst/gstutils.h:
754         Added gst_flow_get_name() to ease error reporting.
755
756 2005-07-20  Wim Taymans  <wim@fluendo.com>
757
758         * gst/gstmessage.c: (gst_message_new_segment_start),
759         (gst_message_new_segment_done), (gst_message_parse_segment_start),
760         (gst_message_parse_segment_done):
761         * gst/gstmessage.h:
762         Added a bunch of messages for advanced seeking.
763
764         * gst/parse/grammar.y:
765         * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
766         (gst_dpman_state_changed):
767         Fix some new-pad -> pad-added signals
768
769 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
770
771         * docs/manual/appendix-porting.xml:
772         * docs/pwg/appendix-porting.xml:
773           Document new-pad/state-change signal renames and the FixedList
774           type rename.
775
776 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
777
778         * docs/manual/advanced-autoplugging.xml:
779         * docs/manual/basics-helloworld.xml:
780         * docs/manual/basics-pads.xml:
781         * docs/random/ds/0.9-suggested-changes:
782         * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
783         * gst/gstelement.h:
784         * gst/gstevent.h:
785         * gst/gstformat.h:
786         * gst/gstquery.h:
787         * gst/gststructure.c: (gst_structure_value_get_generic_type),
788         (gst_structure_parse_array), (gst_structure_parse_value):
789         * gst/gstvalue.c: (gst_type_is_fixed),
790         (gst_value_list_prepend_value), (gst_value_list_append_value),
791         (gst_value_list_get_size), (gst_value_list_get_value),
792         (gst_value_transform_array_string), (gst_value_serialize_array),
793         (gst_value_deserialize_array), (gst_value_intersect_array),
794         (gst_value_is_fixed), (_gst_value_initialize):
795         * gst/gstvalue.h:
796           GstElement::new-pad -> pad-added, GstElement::state-change ->
797           state-changed, GstValueFixedList -> GstValueArray, add format and
798           flags as their own arguments in gst_element_seek() (should improve
799           "bindeability"), remove function generators since they don't work
800           under a whole bunch of compilers (they were deprecated already
801           anyway).
802
803 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
804
805         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
806         (_gst_debug_register_funcptr):
807         * gst/gstinfo.h:
808           Fix illegal cast on some platforms (#309253).
809
810 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
811
812         * gst/gstmessage.c: (gst_message_new_custom):
813         * gst/gstmessage.h:
814           Add _new_custom, make _new_application a macro to _new_custom.
815
816 2005-07-20  Wim Taymans  <wim@fluendo.com>
817
818         * gst/base/gstbasesrc.c: (gst_base_src_init),
819         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
820         * gst/base/gstbasesrc.h:
821         Add a gboolean to decide when to push out a discont.
822
823         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
824         (gst_queue_loop), (gst_queue_handle_src_query),
825         (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
826         (gst_queue_set_property), (gst_queue_get_property):
827         Some cleanups.
828
829         * tests/threadstate/threadstate1.c: (main):
830         Make a thread test compile and run... very silly..
831
832
833 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
834
835         * docs/manual/appendix-porting.xml:
836           Mention removal of libgstgconf-0.9.la and existence of gconf
837           elements.
838
839 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
840
841         * docs/pwg/advanced-clock.xml:
842         * docs/pwg/appendix-porting.xml:
843         * docs/pwg/intro-preface.xml:
844         * docs/pwg/other-base.xml:
845         * docs/pwg/other-manager.xml:
846         * docs/pwg/other-nton.xml:
847         * docs/pwg/other-ntoone.xml:
848         * docs/pwg/other-oneton.xml:
849         * docs/pwg/pwg.xml:
850           Document base classes, update sections of n-to-1 and 1-to-n (muxer,
851           demuxer), remove n-to-n (was never written), fix some code examples
852           and links and update the porting section to include all this.
853
854 2005-07-19  Wim Taymans  <wim@fluendo.com>
855
856         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
857         (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
858         (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
859         (gst_queue_src_activate_push), (gst_queue_change_state),
860         (gst_queue_get_property):
861         * gst/gstqueue.h:
862         Propagate GstFlowReturn more intelligently upstream and output
863         an ERROR/EOS when streaming stopped due to fatal error.
864
865 2005-07-19  Wim Taymans  <wim@fluendo.com>
866
867         * tools/gst-launch.c: (check_intr), (event_loop), (main):
868         Don't block forever for the state change to complete, the
869         pipeline already did with a sensible timeout.
870
871 2005-07-19  Wim Taymans  <wim@fluendo.com>
872
873         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
874         Make sure we never call the create function is we
875         got deactivated.
876
877 2005-07-19  Andy Wingo  <wingo@pobox.com>
878
879         * gst/parse/parse.l: Attempt to solve bug #172815.
880
881 2005-07-19  Wim Taymans  <wim@fluendo.com>
882
883         * docs/design/part-clocks.txt:
884         * docs/design/part-events.txt:
885         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
886         Small docs updates.
887         Only update the seeking values when we are not
888         busy streaming.
889
890 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
891
892         * gst/base/gstbasesrc.c: (gst_base_src_loop):
893           Oops, ignore the result of gst_pad_push_event here.
894
895 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
896
897         * gst/base/gstbasesrc.c: (gst_base_src_loop),
898         (gst_base_src_activate_push):
899           Send discont event from the loop function, as pads
900           aren't activated yet in the activate_push handler.
901
902         * gst/gstbin.c: (bin_bus_handler):
903           Don't leak element name.
904
905 2005-07-18  Andy Wingo  <wingo@pobox.com>
906
907         * configure.ac: Use AS_LIBTOOL_TAGS.
908
909 2005-07-18  Wim Taymans  <wim@fluendo.com>
910
911         * docs/gst/gstreamer.types:
912         Remove deleted types.
913
914 2005-07-18  Wim Taymans  <wim@fluendo.com>
915
916         * check/elements/gstfakesrc.c: (GST_START_TEST):
917         * configure.ac:
918         * gst/Makefile.am:
919         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
920         (init_popt_callback):
921         * gst/gst.h:
922         * gst/gst_private.h:
923         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
924         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
925         * gst/gstbin.h:
926         * gst/gstbus.h:
927         * gst/gstconfig.h.in:
928         * gst/gstelement.c: (gst_element_class_init),
929         (gst_element_set_base_time), (gst_element_get_base_time),
930         (iterator_fold_with_resync), (gst_element_change_state),
931         (gst_element_dispose), (gst_element_get_bus):
932         * gst/gstelement.h:
933         * gst/gstelementfactory.h:
934         * gst/gsterror.c: (_gst_core_errors_init):
935         * gst/gsterror.h:
936         * gst/gstevent.h:
937         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
938         * gst/gstindex.c:
939         * gst/gstinfo.c: (_gst_debug_init):
940         * gst/gstmessage.c: (_gst_message_copy):
941         * gst/gstmessage.h:
942         * gst/gstminiobject.h:
943         * gst/gstobject.c:
944         * gst/gstobject.h:
945         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
946         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
947         * gst/gstpad.h:
948         * gst/gstparse.h:
949         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
950         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
951         (gst_pipeline_get_last_stream_time):
952         * gst/gstpipeline.h:
953         * gst/gstpluginfeature.h:
954         * gst/gstquery.h:
955         * gst/gstscheduler.c:
956         * gst/gstscheduler.h:
957         * gst/gststructure.h:
958         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
959         (gst_task_finalize), (gst_task_func), (gst_task_create),
960         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
961         (gst_task_stop), (gst_task_pause):
962         * gst/gsttask.h:
963         * gst/gsttypefind.h:
964         * gst/gsttypes.h:
965         * gst/registries/gstlibxmlregistry.c: (load_feature),
966         (gst_xml_registry_load), (gst_xml_registry_save_feature):
967         * gst/registries/gstxmlregistry.c:
968         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
969         * gst/schedulers/threadscheduler.c:
970         * libs/gst/control/dparammanager.h:
971         * tools/gst-inspect.c: (print_element_list),
972         (print_plugin_features), (print_element_features):
973         * tools/gst-xmlinspect.c: (print_element_list),
974         (print_plugin_info), (main):
975         Removed plugable schedulers.
976         Removed Scheduler/Manager from elements.
977         Removed gsttypes.h, rearranged includes.
978         Removed dependency pad<->element, element<>pipeline, and
979         various others,  fix includes.
980         implement gst_pad_get_parent() with gst_object_get_parent()
981         Make GstTask sefcontained.
982         Fix _get_state() on GstBin, it did not return ASYNC with a 0
983         timeout.
984         Fix endless loop in iterator_fold_with_resync.
985
986
987 2005-07-18  Wim Taymans  <wim@fluendo.com>
988
989         * gst/Makefile.am:
990         * gst/gstarch.h:
991         Remove old file.
992
993 2005-07-18  Wim Taymans  <wim@fluendo.com>
994
995         * gst/Makefile.am:
996         No more cothreads.h
997
998 2005-07-18  Wim Taymans  <wim@fluendo.com>
999
1000         * gst/cothreads.c:
1001         * gst/cothreads.h:
1002         Let's remove these.
1003
1004 2005-07-18  Wim Taymans  <wim@fluendo.com>
1005
1006         * docs/design/part-dynamic.txt:
1007         * docs/design/part-events.txt:
1008         * docs/design/part-seeking.txt:
1009         Some more docs in the works.
1010
1011         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
1012         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
1013         (gst_base_transform_setcaps), (gst_base_transform_get_size),
1014         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
1015         (gst_base_transform_handle_buffer),
1016         (gst_base_transform_sink_activate_push),
1017         (gst_base_transform_src_activate_pull),
1018         (gst_base_transform_set_passthrough),
1019         (gst_base_transform_is_passthrough):
1020         Refcounting fixes.
1021
1022         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
1023         Cleanups.
1024
1025         * gst/gstevent.c: (gst_event_finalize):
1026         Set SRC to NULL.
1027
1028         * gst/gstutils.c: (gst_element_unlink),
1029         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
1030         (gst_pad_proxy_setcaps):
1031         * gst/gstutils.h:
1032         Add _get_parent_element() to get a pads parent as an element.
1033
1034 2005-07-18  Wim Taymans  <wim@fluendo.com>
1035
1036         * check/gst/gstbin.c: (GST_START_TEST):
1037         Remove bogus test.
1038
1039 2005-07-18  Wim Taymans  <wim@fluendo.com>
1040
1041         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
1042         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
1043         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
1044         (gst_base_sink_event), (gst_base_sink_do_sync),
1045         (gst_base_sink_chain), (gst_base_sink_loop),
1046         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
1047         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
1048         Refcounting fixes.
1049         Fix logic for returning ASYNC when not prerolled.
1050
1051 2005-07-18  Wim Taymans  <wim@fluendo.com>
1052
1053         * gst/gstqueue.c: (gst_queue_handle_sink_event):
1054         Fix nasty refcount bug.
1055
1056 2005-07-16 Philippe Khalaf <burger@speedy.org>
1057         * gst/elements/gstfdsrc.c:
1058         * gst/elements/gstfdsrc.h:
1059         * gst/elements/gstelements.c:
1060         * gst/elements/Makefile.am:
1061         Ported fdsrc to 0.9.
1062
1063 2005-07-16  Wim Taymans  <wim@fluendo.com>
1064
1065         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1066         (gst_base_sink_do_sync):
1067         Fix compile error.
1068
1069 2005-07-16  Wim Taymans  <wim@fluendo.com>
1070
1071         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1072         (gst_base_sink_event), (gst_base_sink_get_times),
1073         (gst_base_sink_do_sync), (gst_base_sink_change_state):
1074         * gst/base/gstbasesink.h:
1075         Store and use discont values when syncing buffers as described
1076         in design docs.
1077         
1078         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
1079         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
1080         (gst_base_src_activate_push):
1081         Push discont event when starting.
1082
1083         * gst/elements/gstidentity.c: (gst_identity_transform):
1084         Small cleanups.
1085
1086         * gst/gstbin.c: (gst_bin_change_state):
1087         Small cleanups in base_time  distribution.
1088
1089         * gst/gstelement.c: (gst_element_set_base_time),
1090         (gst_element_get_base_time), (gst_element_change_state):
1091         * gst/gstelement.h:
1092         Added methods for the base_time of the element.
1093         Some MT fixes.
1094
1095         * gst/gstpipeline.c: (gst_pipeline_send_event),
1096         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
1097         (gst_pipeline_get_last_stream_time):
1098         * gst/gstpipeline.h:
1099         MT fixes.
1100         Handle seeking as described in design doc, remove stream_time
1101         hack.
1102         Cleanups clock and stream_time selection code. Added accessors
1103         for the stream_time.
1104         
1105
1106 2005-07-16  Andy Wingo  <wingo@pobox.com>
1107
1108         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
1109         (#305291).
1110
1111 2005-07-16  Wim Taymans  <wim@fluendo.com>
1112
1113         * check/gst/gstbin.c: (GST_START_TEST):
1114         Make elements silent as the deep_notify refs the
1115         parent, which might make the test fail.
1116
1117         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
1118         Don't hold the lock for too long.
1119
1120 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
1121
1122         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
1123           Don't unref the caps we passed to gst_caps_make_writable() after
1124           passing them. gst_caps_make_writable() will do that for us.
1125
1126 2005-07-15  Andy Wingo  <wingo@pobox.com>
1127
1128         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
1129         (#157311).
1130
1131         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
1132         own marshalling function for the handoff signal. Properly type the
1133         buffer as a buffer. Fixes some warnings. Should do a more general
1134         solution.
1135         (gst_identity_class_init): Plug into the right marshaller.
1136
1137 2005-07-15  Wim Taymans  <wim@fluendo.com>
1138
1139         * docs/design/part-TODO.txt:
1140         * docs/design/part-clocks.txt:
1141         * docs/design/part-element-sink.txt:
1142         * docs/design/part-events.txt:
1143         * docs/design/part-gstpipeline.txt:
1144         Updated docs, mostly DISCONT related.
1145
1146 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
1147
1148         * docs/pwg/building-pads.xml:
1149           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
1150
1151 2005-07-15  Andy Wingo  <wingo@pobox.com>
1152
1153         * tools/gst-typefind.c: Update, add copyright block.
1154
1155         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
1156         Normalize and truncate caps before fixation.
1157
1158         * gst/gstcaps.h:
1159         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
1160         discards all but the first structure from its argument.
1161
1162 2005-07-15  Wim Taymans  <wim@fluendo.com>
1163
1164         * gst/base/gstbasetransform.c: (gst_base_transform_init),
1165         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
1166         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
1167         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
1168         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
1169         (gst_base_transform_chain), (gst_base_transform_change_state),
1170         (gst_base_transform_set_passthrough),
1171         (gst_base_transform_is_passthrough):
1172         * gst/base/gstbasetransform.h:
1173         Make passthrough work using the bufferpools.
1174         Changed API a bit, subclasses have to write into a buffer
1175         provided by the base class.
1176         More debug info in nego functions.
1177         
1178         * gst/elements/gstidentity.c: (gst_identity_init),
1179         (gst_identity_transform):
1180         Port to new base class.
1181
1182 2005-07-15  Wim Taymans  <wim@fluendo.com>
1183
1184         * gst/gstmessage.c: (gst_message_new_state_changed):
1185         * tools/gst-launch.c: (event_loop), (main):
1186         Totally dump messages in -launch with the -m option.
1187         Fix message name for State messages,
1188
1189 2005-07-14  Wim Taymans  <wim@fluendo.com>
1190
1191         * gst/base/gstbasesrc.c: (gst_base_src_loop):
1192         Post error messages on errors.
1193
1194 2005-07-14  Wim Taymans  <wim@fluendo.com>
1195
1196         * gst/gstcaps.c: (gst_caps_do_simplify):
1197         Remove debug info.
1198
1199         * gst/gsterror.h:
1200         Define error for stream stopped.
1201
1202         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1203         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
1204         Do proper return values.
1205
1206         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
1207         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
1208         (gst_pad_get_range):
1209         Better return values.
1210
1211         * gst/gstpad.h:
1212         Reorganise return values, add macro to check for fatal errors.
1213
1214         * gst/gstqueue.c: (gst_queue_chain):
1215         Return proper GstFlowReturn values,
1216
1217 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
1218
1219         * docs/gst/gstreamer-sections.txt:
1220         * docs/gst/gstreamer.types:
1221         * docs/gst/tmpl/gst.sgml:
1222         * docs/gst/tmpl/gstbasesink.sgml:
1223         * docs/gst/tmpl/gstbasesrc.sgml:
1224         * docs/gst/tmpl/gstbasetransform.sgml:
1225         * docs/gst/tmpl/gstbin.sgml:
1226         * docs/gst/tmpl/gstbuffer.sgml:
1227         * docs/gst/tmpl/gstcaps.sgml:
1228         * docs/gst/tmpl/gstclock.sgml:
1229         * docs/gst/tmpl/gstcompat.sgml:
1230         * docs/gst/tmpl/gstconfig.sgml:
1231         * docs/gst/tmpl/gstelement.sgml:
1232         * docs/gst/tmpl/gstelementdetails.sgml:
1233         * docs/gst/tmpl/gstelementfactory.sgml:
1234         * docs/gst/tmpl/gstenumtypes.sgml:
1235         * docs/gst/tmpl/gsterror.sgml:
1236         * docs/gst/tmpl/gstevent.sgml:
1237         * docs/gst/tmpl/gstfakesink.sgml:
1238         * docs/gst/tmpl/gstfakesrc.sgml:
1239         * docs/gst/tmpl/gstfilesink.sgml:
1240         * docs/gst/tmpl/gstfilesrc.sgml:
1241         * docs/gst/tmpl/gstfilter.sgml:
1242         * docs/gst/tmpl/gstformat.sgml:
1243         * docs/gst/tmpl/gstghostpad.sgml:
1244         * docs/gst/tmpl/gstimplementsinterface.sgml:
1245         * docs/gst/tmpl/gstindex.sgml:
1246         * docs/gst/tmpl/gstindexfactory.sgml:
1247         * docs/gst/tmpl/gstinfo.sgml:
1248         * docs/gst/tmpl/gstiterator.sgml:
1249         * docs/gst/tmpl/gstmacros.sgml:
1250         * docs/gst/tmpl/gstmemchunk.sgml:
1251         * docs/gst/tmpl/gstminiobject.sgml:
1252         * docs/gst/tmpl/gstobject.sgml:
1253         * docs/gst/tmpl/gstpad.sgml:
1254         * docs/gst/tmpl/gstpadtemplate.sgml:
1255         * docs/gst/tmpl/gstparse.sgml:
1256         * docs/gst/tmpl/gstpipeline.sgml:
1257         * docs/gst/tmpl/gstplugin.sgml:
1258         * docs/gst/tmpl/gstpluginfeature.sgml:
1259         * docs/gst/tmpl/gstquery.sgml:
1260         * docs/gst/tmpl/gstqueue.sgml:
1261         * docs/gst/tmpl/gstregistry.sgml:
1262         * docs/gst/tmpl/gstregistrypool.sgml:
1263         * docs/gst/tmpl/gstscheduler.sgml:
1264         * docs/gst/tmpl/gstschedulerfactory.sgml:
1265         * docs/gst/tmpl/gststructure.sgml:
1266         * docs/gst/tmpl/gstsystemclock.sgml:
1267         * docs/gst/tmpl/gsttaglist.sgml:
1268         * docs/gst/tmpl/gsttagsetter.sgml:
1269         * docs/gst/tmpl/gsttrace.sgml:
1270         * docs/gst/tmpl/gsttrashstack.sgml:
1271         * docs/gst/tmpl/gsttypefind.sgml:
1272         * docs/gst/tmpl/gsttypefindfactory.sgml:
1273         * docs/gst/tmpl/gsttypes.sgml:
1274         * docs/gst/tmpl/gsturihandler.sgml:
1275         * docs/gst/tmpl/gsturitype.sgml:
1276         * docs/gst/tmpl/gstutils.sgml:
1277         * docs/gst/tmpl/gstvalue.sgml:
1278         * docs/gst/tmpl/gstversion.sgml:
1279         * docs/gst/tmpl/gstxml.sgml:
1280         * docs/libs/tmpl/gstcontrol.sgml:
1281         * docs/libs/tmpl/gstdataprotocol.sgml:
1282         * docs/libs/tmpl/gstdparam.sgml:
1283         * docs/libs/tmpl/gstdplinint.sgml:
1284         * docs/libs/tmpl/gstdpman.sgml:
1285         * docs/libs/tmpl/gstdpsmooth.sgml:
1286         * docs/libs/tmpl/gstgetbits.sgml:
1287         * docs/libs/tmpl/gstunitconvert.sgml:
1288         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
1289         (gst_push_src_base_init), (gst_push_src_class_init),
1290         (gst_push_src_init), (gst_push_src_create):
1291         * gst/base/gstpushsrc.h:
1292         * gst/elements/gstelements.c:
1293         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
1294         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
1295         (gst_fake_sink_init), (gst_fake_sink_set_property),
1296         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
1297         (gst_fake_sink_event), (gst_fake_sink_preroll),
1298         (gst_fake_sink_render), (gst_fake_sink_change_state):
1299         * gst/elements/gstfakesink.h:
1300         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
1301         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
1302         (gst_fake_src_base_init), (gst_fake_src_class_init),
1303         (gst_fake_src_init), (gst_fake_src_event_handler),
1304         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
1305         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
1306         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
1307         (gst_fake_src_create_buffer), (gst_fake_src_create),
1308         (gst_fake_src_start), (gst_fake_src_stop):
1309         * gst/elements/gstfakesrc.h:
1310         * gst/elements/gstfilesink.c: (_do_init),
1311         (gst_file_sink_base_init), (gst_file_sink_class_init),
1312         (gst_file_sink_init), (gst_file_sink_dispose),
1313         (gst_file_sink_set_location), (gst_file_sink_set_property),
1314         (gst_file_sink_get_property), (gst_file_sink_open_file),
1315         (gst_file_sink_close_file), (gst_file_sink_query),
1316         (gst_file_sink_event), (gst_file_sink_render),
1317         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
1318         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
1319         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
1320         * gst/elements/gstfilesink.h:
1321         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
1322         (gst_file_src_class_init), (gst_file_src_init),
1323         (gst_file_src_finalize), (gst_file_src_set_location),
1324         (gst_file_src_set_property), (gst_file_src_get_property),
1325         (gst_file_src_map_region), (gst_file_src_map_small_region),
1326         (gst_file_src_create_mmap), (gst_file_src_create_read),
1327         (gst_file_src_create), (gst_file_src_is_seekable),
1328         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
1329         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
1330         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
1331         (gst_file_src_uri_handler_init):
1332         * gst/elements/gstfilesrc.h:
1333           more autistic cleanliness in functions/names/defines
1334
1335 2005-07-13  Andy Wingo  <wingo@pobox.com>
1336
1337         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
1338         source couldn't negotiate.
1339
1340         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
1341         connections again.
1342
1343         * gst/gstutils.h:
1344         * gst/gstutils.c (gst_element_link_pads_filtered): New old
1345         function. I am channeling Hades. Put your boots on suckers!!!
1346
1347 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
1348
1349         * testsuite/caps/Makefile.am:
1350         * testsuite/caps/value_compare.c:
1351         * testsuite/caps/value_intersect.c:
1352         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
1353           move two testsuite apps over to the check dir
1354
1355 2005-07-12  Wim Taymans  <wim@fluendo.com>
1356
1357         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
1358         Added more debug info in the negotiate process.
1359
1360         * gst/gstmessage.h:
1361         Prepare for segment playback.
1362
1363         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
1364         Better debugging.
1365
1366         * gst/gstutils.c:
1367         Some more docs.
1368
1369         * tools/gst-launch.c: (main):
1370         NULL pipeline on errors.
1371
1372 2005-07-12  Andy Wingo  <wingo@pobox.com>
1373
1374         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
1375         not it comes from a malloc region. Make sure our copy gets freed.
1376
1377 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1378
1379         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
1380         * check/gst/gstmessage.c: (GST_START_TEST):
1381         * check/gst/gststructure.c: (GST_START_TEST),
1382         (gst_structure_suite), (main):
1383           more testing
1384         * gst/gstelement.c: (gst_element_message_full):
1385           clean up GError and debug string now that they get copied
1386         * gst/gstmessage.c: (gst_message_new_error),
1387         (gst_message_new_warning), (gst_message_parse_error),
1388         (gst_message_parse_warning):
1389           use GST_TYPE_G_ERROR for structure_new, and take copies of
1390           arguments, so that we don't mess up refcounting
1391
1392 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1393
1394         * check/Makefile.am:
1395           add per-test valgrind targets
1396         * check/gst-libs/gdp.c: (GST_START_TEST),
1397         (gst_data_protocol_suite), (main):
1398           clean up
1399
1400 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1401
1402         * check/Makefile.am:
1403           instate more valgrindable tests
1404         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1405         (GST_START_TEST), (fakesrc_suite):
1406         * check/gst/gstpad.c: (GST_START_TEST):
1407         * check/gst/gststructure.c: (GST_START_TEST):
1408           fix test leaks
1409         * docs/gst/tmpl/gstminiobject.sgml:
1410         * gst/gstpad.c: (gst_pad_finalize):
1411           fix the static mutex leak
1412
1413 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1414
1415         * check/Makefile.am:
1416           add two more tests for valgrinding
1417         * check/gst/gstvalue.c: (GST_START_TEST):
1418           test refcount of deserialized buffer, found a leak
1419         * docs/gst/gstreamer-docs.sgml:
1420         * docs/gst/gstreamer-sections.txt:
1421         * docs/gst/gstreamer.types:
1422         * docs/gst/tmpl/gstminiobject.sgml:
1423           add miniobject to docs
1424         * gst/gstminiobject.c:
1425           add some docs
1426         * gst/gstvalue.c: (gst_value_deserialize_buffer),
1427         (gst_string_unwrap):
1428           fix a hard-to-find invalid write for one of the tests
1429           fix a leak for deserialized buffers
1430
1431 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1432
1433         * docs/pwg/advanced-events.xml:
1434         * docs/pwg/advanced-request.xml:
1435         * docs/pwg/advanced-scheduling.xml:
1436         * docs/pwg/appendix-porting.xml:
1437         * docs/pwg/building-boiler.xml:
1438         * docs/pwg/intro-preface.xml:
1439         * docs/pwg/other-ntoone.xml:
1440           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
1441           of example code and explanation for pad activation, loop() and
1442           getrange() functions and a bit more. Remove old comments pointing
1443           to loop-functions.
1444         * examples/pwg/Makefile.am:
1445           Add loop/getrange examples.
1446
1447 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1448
1449         * configure.ac:
1450           check for valgrind binary + some fixes
1451         * check/gst.supp:
1452           valgrind suppressions for the tests
1453         * check/Makefile.am:
1454           add a valgrind: target that valgrinds the unit tests
1455         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
1456         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
1457         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1458         * check/gst/gstghostpad.c:
1459           added some cleanup
1460         * check/gst/gstdata.c:
1461           removed
1462         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
1463         (thread_unref), (gst_mini_object_suite), (main):
1464           added
1465         * gst/gst.c: (gst_deinit):
1466         * gst/gst.h:
1467           add a method to clean up.
1468         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1469         (gst_system_clock_obtain):
1470           allow for disposing the system clock.
1471         * tools/gst-launch.c: (main):
1472           deinit
1473
1474 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1475
1476         * docs/gst/tmpl/gstbasesrc.sgml:
1477         * docs/gst/tmpl/gstfakesrc.sgml:
1478         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1479         (gst_base_src_init), (gst_base_src_set_property),
1480         (gst_base_src_get_property), (gst_base_src_get_range),
1481         (gst_base_src_start):
1482         * gst/base/gstbasesrc.h:
1483           add num-buffers property
1484         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1485         (gst_fakesrc_init), (gst_fakesrc_set_property),
1486         (gst_fakesrc_get_property), (gst_fakesrc_create),
1487         (gst_fakesrc_start):
1488           remove num-buffers property
1489
1490 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1491
1492         * docs/gst/gstreamer-sections.txt:
1493         * docs/gst/tmpl/gstbasesink.sgml:
1494         * docs/gst/tmpl/gstbasesrc.sgml:
1495         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
1496         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
1497         (gst_base_sink_finalize), (gst_base_sink_set_clock),
1498         (gst_base_sink_set_property), (gst_base_sink_get_property),
1499         (gst_base_sink_handle_object), (gst_base_sink_event),
1500         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
1501         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
1502         (gst_base_sink_loop), (gst_base_sink_deactivate),
1503         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
1504         (gst_base_sink_change_state):
1505         * gst/base/gstbasesink.h:
1506         * gst/base/gstbasesrc.h:
1507         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
1508         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
1509         (gst_filesink_init):
1510           more macro splitting
1511
1512 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1513
1514         * gst/gstelement.c: (gst_element_get_bus):
1515           add debug
1516         * tools/gst-launch.c: (check_intr), (event_loop):
1517           fix bus leaks
1518
1519 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1520
1521         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
1522           fix a caps leak
1523
1524 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1525
1526         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1527         (gst_base_src_finalize):
1528           add finalize method and clean up properly
1529         * gst/gstpipeline.c: (gst_pipeline_dispose):
1530           add debug
1531
1532 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1533
1534         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
1535         (gst_bin_suite):
1536           add more things to check
1537         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
1538         * gst/gstelement.c:
1539           more debug
1540
1541 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1542
1543         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1544         (GST_START_TEST), (fakesrc_suite):
1545         * check/gst-libs/gdp.c: (GST_START_TEST):
1546         * check/gst/gst.c: (GST_START_TEST):
1547         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
1548         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1549         * check/gst/gstbus.c: (GST_START_TEST):
1550         * check/gst/gstcaps.c: (GST_START_TEST):
1551         * check/gst/gstdata.c: (GST_START_TEST):
1552         * check/gst/gstelement.c: (GST_START_TEST):
1553         * check/gst/gstghostpad.c: (GST_START_TEST):
1554         * check/gst/gstiterator.c: (GST_START_TEST):
1555         * check/gst/gstmessage.c: (GST_START_TEST):
1556         * check/gst/gstobject.c: (GST_START_TEST):
1557         * check/gst/gstpad.c: (GST_START_TEST):
1558         * check/gst/gststructure.c: (GST_START_TEST):
1559         * check/gst/gstsystemclock.c: (GST_START_TEST),
1560         (gst_systemclock_suite):
1561         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
1562         * check/gst/gstvalue.c: (GST_START_TEST):
1563         * check/pipelines/cleanup.c: (GST_START_TEST):
1564         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
1565         * check/states/sinks.c: (GST_START_TEST):
1566         * check/gstcheck.c: (gst_check_init):
1567         * check/gstcheck.h:
1568           add debugging category
1569           use GST_START_TEST now, so we add a debug line
1570
1571 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1572
1573         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
1574           add test for state change message on a bin
1575         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
1576           add another test
1577         * gst/gstbin.c: (gst_bin_init):
1578         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
1579         * gst/gstelement.c: (gst_element_post_message),
1580         (gst_element_set_state):
1581         * gst/gstelementfactory.c: (gst_element_factory_create):
1582         * gst/gstmessage.c: (gst_message_new):
1583         * gst/gstscheduler.c:
1584           various debugging additions and cleanups
1585
1586 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1587
1588         * check/Makefile.am:
1589         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
1590         (main):
1591           adding tests for elements
1592         * gst/gstelement.c: (gst_element_dispose):
1593
1594 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1595
1596         * gst/registries/gstlibxmlregistry.c: (load_feature):
1597           plug more leaks.  A simple gst_init() now is leakfree, yay.
1598
1599 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1600
1601         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
1602         (gst_xml_registry_load):
1603           plug another memleak
1604
1605 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1606
1607         * configure.ac:
1608           use GST_SET_ERROR_CFLAGS
1609         * docs/faq/cvs.xml:
1610           change to ERROR_CFLAGS
1611
1612 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1613
1614         * configure.ac:
1615           make GST_ERROR_CFLAGS overridable and re-enable Werror
1616         * docs/faq/cvs.xml:
1617           add a note about error CFLAGS
1618         * docs/gst/tmpl/gstfakesrc.sgml:
1619         * gst/elements/gstfakesrc.c:
1620           comment out some unused code
1621         * gst/gst.c: (split_and_iterate):
1622         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
1623         (load_feature):
1624           plug some memleaks
1625
1626 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1627
1628         * common/Makefile.am:
1629         * common/gtk-doc.mak:
1630         * docs/gst/Makefile.am:
1631           factor out gtk-doc.mak
1632
1633 2005-07-07  Wim Taymans  <wim@fluendo.com>
1634
1635         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
1636         (gst_thread_scheduler_dispose):
1637         Unlock the STREAM_LOCK completely.
1638
1639 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1640
1641         * check/Makefile.am:
1642         * check/elements/.cvsignore:
1643         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1644         (START_TEST), (fakesrc_suite), (main):
1645         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1646         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
1647         (gst_fakesrc_create), (gst_fakesrc_start):
1648         * gst/elements/gstfakesrc.h:
1649           adding a first element test
1650
1651 2005-07-07  Andy Wingo  <wingo@pobox.com>
1652
1653         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
1654         debug message.
1655
1656 2005-07-07  Wim Taymans  <wim@fluendo.com>
1657
1658         * gst/gstquery.c:
1659         * gst/gstquery.h:
1660         Remove old types
1661
1662 2005-07-07  Wim Taymans  <wim@fluendo.com>
1663
1664         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
1665         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
1666         Allow subclasses to implement their own negotiation.
1667
1668 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1669
1670         * docs/design/part-gstbin.txt:
1671         * docs/design/part-gstpipeline.txt:
1672           Update design notes to reflect the movement of
1673           responsibility for bus handling from GstPipeline to
1674           GstBin
1675
1676 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1677
1678         * configure.ac:
1679           Remove unnecessary queue2/3/4 examples.
1680
1681 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1682
1683         * examples/Makefile.am:
1684         * examples/helloworld/helloworld.c: (event_loop), (main):
1685         * examples/queue/queue.c: (event_loop), (main):
1686         * examples/queue2/queue2.c: (main):
1687           Update a couple of the examples to work again.
1688
1689         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1690         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
1691          Spelling corrections and extra debug.
1692         
1693         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
1694         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
1695         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
1696         * gst/gstbin.h:
1697         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
1698         (gst_pipeline_change_state):
1699         * gst/gstpipeline.h:
1700           Move the bus handler for children to the GstBin, and create a
1701           separate bus for receiving messages from children to the one the
1702           bus sends 'upwards' on.
1703
1704 2005-07-06  Wim Taymans  <wim@fluendo.com>
1705
1706         * gst/base/README:
1707         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1708         (gst_base_sink_handle_object), (gst_base_sink_loop),
1709         (gst_base_sink_change_state):
1710         * gst/base/gstbasesink.h:
1711         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1712         (gst_base_src_init), (gst_base_src_setcaps),
1713         (gst_base_src_getcaps), (gst_base_src_loop),
1714         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
1715         (gst_base_src_start), (gst_base_src_change_state):
1716         * gst/base/gstbasesrc.h:
1717         Make basesrc negotiate.
1718         Handle the case where preroll fails in basesink.
1719         Update README.
1720
1721 2005-07-06  Wim Taymans  <wim@fluendo.com>
1722
1723         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
1724         Implement the fixate function.
1725         Clean up acceptcaps.
1726
1727 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1728
1729         * docs/pwg/building-filterfactory.xml:
1730         * docs/pwg/pwg.xml:
1731           Remove never-written filter-factory chapter; I'll add the various
1732           base classes to part 4 ("other element types") later on.
1733
1734 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1735
1736         * docs/pwg/advanced-negotiation.xml:
1737         * docs/pwg/building-boiler.xml:
1738         * docs/pwg/building-pads.xml:
1739         * docs/pwg/pwg.xml:
1740         * examples/pwg/Makefile.am:
1741           Add a chapter on caps negotiation, simplify the original code
1742           samples a bit w.r.t. caps negotiation, add link to the advanced
1743           section. Add a bunch of examples showing different use cases of
1744           different types of caps negotiation. Upstream renegotiation isn't
1745           fully documented yet since nobody knows how that works.
1746
1747 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
1748
1749         * check/gst/gstpad.c:
1750         * check/gstcheck.c:
1751         * gst/gstpad.c: (gst_pad_get_internal_links_default):
1752           if pad has no parent, return NULL as list of internal links
1753
1754 2005-07-05  Andy Wingo  <wingo@pobox.com>
1755
1756         * gst/elements/gstfilesrc.c:
1757         * gst/elements/gstfakesrc.c: 
1758         * gst/base/gstpushsrc.c:
1759         * gst/base/gstbasesrc.h: 
1760         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
1761         
1762 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
1763
1764         * Makefile.am:
1765           better report generation target (lcov needs a patch)
1766
1767 2005-07-05  Andy Wingo  <wingo@pobox.com>
1768
1769         * gst/elements, testsuite: Null if we got it...
1770
1771 2005-07-05  Wim Taymans  <wim@fluendo.com>
1772
1773         * configure.ac:
1774         * libs/gst/dataprotocol/Makefile.am:
1775         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
1776         * libs/gst/dataprotocol/dataprotocol.h:
1777         * pkgconfig/Makefile.am:
1778         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
1779         * pkgconfig/gstreamer-dataprotocol.pc.in:
1780         Ported dataprotol to 0.9. 
1781         Added pkgconfig files.
1782
1783 2005-07-05  Andy Wingo  <wingo@pobox.com>
1784
1785         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
1786         Default to returning TRUE for the case when tranform_caps returns
1787         a fixed caps, like for identity or volume.
1788
1789         * check/gst/gstbus.c (pound_bus_with_messages): 
1790         * check/gst/gstmessage.c (START_TEST): 
1791         * check/pipelines/simple_launch_lines.c (got_handoff): Application
1792         message API change.
1793
1794         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
1795         logic weaks here: always run transform_caps, trying passthrough
1796         operation only if the original caps intersects with the transform.
1797
1798         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
1799         source and sink caps.
1800
1801         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
1802         Intersect the peer caps with the pad template before going into
1803         transform_caps.
1804         (gst_base_transform_transform_caps): More debugging.
1805
1806         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
1807         src argument.
1808
1809 2005-07-04  Edward Hervey  <edward@fluendo.com>
1810
1811         * gst/gstutils.c:
1812         * gst/gstutils.h:
1813         (gst_pad_add_*_probe): now returns the signal id for better wrapping
1814         in bindings.
1815
1816 2005-07-04  Andy Wingo  <wingo@pobox.com>
1817
1818         * check/gst/gstpad.c: Only set explicit caps on pads.
1819
1820 2005-07-01  Andy Wingo  <wingo@pobox.com>
1821
1822         * tests/network-clock.scm: Commentary update.
1823
1824         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
1825         Didn't really make sense, not implementable with basetransform,
1826         etc.
1827         (gst_identity_transform): Unref inbuf via make_writable. Feeble
1828         attempt at implementing the sync property, needs an unlock method.
1829
1830         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
1831         New func, by default returns the same caps (the identity
1832         transformation).
1833         (gst_base_transform_getcaps): Uses transform_caps to return
1834         something sensible.
1835         (gst_base_transform_setcaps): Complicated logic to get caps on
1836         both pads, even if they are different, and to call set_caps once
1837         for every time both pads get their caps set.
1838         (gst_base_transform_handle_buffer): Give the ref to the transform
1839         function. Allows in-place modification of the buffer.
1840
1841         * gst/base/gstbasetransform.h (transform_caps): New class method.
1842         Given caps on one side, what can I do on the other.
1843         (set_caps): Take two caps, one for each side of the element.
1844
1845         * gst/gstpad.h:
1846         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
1847         caps in place. This is safe because we can check the mutability of
1848         the caps, and a good idea because fixate functions are just called
1849         as a matter of last resort. (Not actually implemented.)
1850         (gst_pad_set_caps): If the caps we're setting is actually the same
1851         as the existing pad caps, just update the pointer without calling
1852         setcaps. Assert that caps is either NULL or fixed, as per the
1853         docs.
1854
1855         * gst/gstghostpad.c: Update for fixate changes.
1856
1857 2005-07-02  Andy Wingo  <wingo@pobox.com>
1858
1859         * gst/gstcaps.c:
1860         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
1861         two refcounts makes it immutable, which is enough. Doc more.
1862
1863 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
1864
1865         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
1866           Put the mini_object into GValue as a mini_object,
1867           not a gpointer, since that's how we declared
1868           the signal.
1869
1870 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1871
1872         * examples/pwg/Makefile.am:
1873           Fix buildbot again.
1874
1875 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1876
1877         * docs/pwg/building-testapp.xml:
1878           Add extra check.
1879         * examples/pwg/Makefile.am:
1880           Fix buildbot.
1881
1882 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1883
1884         * configure.ac:
1885         * examples/Makefile.am:
1886         * examples/pwg/Makefile.am:
1887         * examples/pwg/extract.pl:
1888           Enable building the PWG examples.
1889         * docs/pwg/advanced-interfaces.xml:
1890           Add URI interface stub.
1891         * docs/pwg/advanced-types.xml:
1892         * docs/pwg/other-autoplugger.xml:
1893         * docs/pwg/appendix-porting.xml:
1894         * docs/pwg/pwg.xml:
1895           Add porting guide (mostly stubs), remove autoplugging (see ADM).
1896         * docs/pwg/building-boiler.xml:
1897         * docs/pwg/building-chainfn.xml:
1898         * docs/pwg/building-pads.xml:
1899         * docs/pwg/building-props.xml:
1900         * docs/pwg/building-state.xml:
1901         * docs/pwg/building-testapp.xml:
1902           Update the building-*.xml parts for 0.9 changes. All examples
1903           code blocks compile in examples/pwg/*.
1904
1905 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1906
1907         * docs/manual/advanced-autoplugging.xml:
1908         * docs/manual/appendix-checklist.xml:
1909         * docs/manual/appendix-integration.xml:
1910         * docs/manual/highlevel-components.xml:
1911           Fix playbin/decodebin examples, update docs a bit, mention bus
1912           instead of signals in various places, mention kmplayer and
1913           kaffeine since they have a working GStreamer backend in the KDE
1914           section.
1915
1916 2005-06-30  Wim Taymans  <wim@fluendo.com>
1917
1918         * CHANGES-0.9:
1919         * docs/design/draft-ghostpads.txt:
1920         * docs/design/draft-push-pull.txt:
1921         * docs/design/draft-query.txt:
1922         * docs/design/part-TODO.txt:
1923         * docs/design/part-query.txt:
1924         Added CHANGES-0.9 doc, updated status of other docs.
1925         
1926         * gst/gstquery.h:
1927         Remove "hmm" macro
1928
1929 2005-06-30  Wim Taymans  <wim@fluendo.com>
1930
1931         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1932         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
1933         (gst_base_sink_change_state):
1934         * gst/base/gstbasesink.h:
1935         Some tweaks, only EOS and a buffer complete a preroll.
1936
1937 2005-06-30  Andy Wingo  <wingo@pobox.com>
1938
1939         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
1940         activate_push down to the internal pad as well.
1941
1942 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
1943
1944         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1945
1946         * gst/gsttaginterface.c:
1947           Some documentation fixes (#307394 and #307397).
1948
1949 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
1950
1951         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1952
1953         * gst/gstvalue.c: (gst_value_intersect_list):
1954           Fix memleak (#309125).
1955
1956 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1957
1958         * docs/manual/advanced-dataaccess.xml:
1959           Fix fakesrc example to compile; doesn't work, bug somewhere...?
1960         * docs/manual/basics-pads.xml:
1961           Add reference for filtered caps to above chapter.
1962
1963 2005-06-30  Wim Taymans  <wim@fluendo.com>
1964
1965         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
1966         (gst_bin_change_state):
1967         Probes are gone.
1968         Lame attempt at making the state change function a bit
1969         more readable.
1970
1971 2005-06-30  Wim Taymans  <wim@fluendo.com>
1972
1973         * docs/design/part-clocks.txt:
1974         * docs/design/part-element-sink.txt:
1975         * docs/design/part-events.txt:
1976         * docs/design/part-preroll.txt:
1977         * docs/design/part-states.txt:
1978         Some more tweeks and additions to the docs.
1979
1980 2005-06-30  Wim Taymans  <wim@fluendo.com>
1981
1982         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1983         (default_have_data), (gst_pad_class_init), (gst_pad_init),
1984         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1985         (gst_pad_check_pull_range), (gst_pad_get_range),
1986         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
1987         * gst/gstpad.h:
1988         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
1989         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1990         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1991         (gst_pad_remove_buffer_probe):
1992         Removed atomic operations, use existing LOCK.
1993         Move exception handling out of main code path.
1994
1995 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1996
1997         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1998         (silly_return_true_function), (gst_pad_class_init),
1999         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
2000         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
2001         (gst_pad_send_event):
2002           Fix accumulator, add default value by using _emitv() instead
2003           of _emit() for signal emission.
2004
2005 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2006
2007         * docs/manual/advanced-dataaccess.xml:
2008         * examples/manual/Makefile.am:
2009           Add probe example.
2010         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
2011           Make work (??).
2012
2013 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
2014
2015         * gst/elements/gstfilesink.c: (gst_filesink_render):
2016           Simplify code so that we don't have to handle short
2017           writes and return GST_FLOW_ERROR if an error occured.
2018
2019 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2020
2021         * docs/gst/gstreamer-docs.sgml:
2022           Remove probes more.
2023
2024 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2025
2026         * docs/gst/gstreamer-sections.txt:
2027         * docs/gst/tmpl/gstpad.sgml:
2028         * docs/gst/tmpl/gstprobe.sgml:
2029         * gst/Makefile.am:
2030         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
2031         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
2032         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
2033         (gst_pad_push_event), (gst_pad_send_event):
2034         * gst/gstpad.h:
2035         * gst/gstutils.c: (gst_pad_add_data_probe),
2036         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
2037         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
2038         (gst_pad_remove_buffer_probe):
2039         * gst/gstutils.h:
2040           Remove old probes, add new g-signal-based probes and some utility
2041           functions.
2042
2043 2005-06-29  Edward Hervey  <edward@fluendo.com>
2044
2045         * gst/gstelementfactory.c:
2046         * gst/gstutils.h:
2047         * gst/gstutils.c:
2048         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
2049         the definition to the header file.
2050
2051 2005-06-29  Andy Wingo  <wingo@pobox.com>
2052
2053         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
2054         plugins from the source directory.
2055
2056 2005-06-29  Wim Taymans  <wim@fluendo.com>
2057
2058         * docs/gst/tmpl/gstbuffer.sgml:
2059         * docs/gst/tmpl/gstclock.sgml:
2060         Some fixings for blantently wrong text.
2061
2062 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
2063
2064         * check/Makefile.am:
2065         * gst/gst.c: (add_path_func), (init_pre):
2066         * gst/gstregistry.c: (gst_registry_add_path):
2067           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
2068           only scan the GST_PLUGIN_PATH locations, and not add
2069           system locations
2070
2071 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
2072
2073         * docs/gst/gstreamer-sections.txt:
2074         * docs/gst/tmpl/gstbasesrc.sgml:
2075         * gst/gstelement.c:
2076         * gst/gstelement.h:
2077         * gst/gstevent.c:
2078         * gst/gstutils.c:
2079           doc fixes
2080
2081 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2082
2083         * docs/manual/advanced-autoplugging.xml:
2084           Fix autoplugging example.
2085
2086 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2087
2088         * docs/manual/advanced-autoplugging.xml:
2089         * docs/manual/mime-world.fig:
2090           Try to get autoplugging working, fix type detection. Fix text
2091           in hello-world image.
2092
2093 2005-06-29  Wim Taymans  <wim@fluendo.com>
2094
2095         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
2096         (gst_base_sink_change_state):
2097         Small debug line.
2098
2099         * gst/gstclock.h:
2100         map SIGNAL and BROADCAST to the right function.
2101
2102         * gst/gstobject.h:
2103         Remove redundant braces.
2104
2105         * gst/gstpad.c: (gst_pad_set_caps):
2106         Don't call setcaps function when reseting caps to NULL.
2107
2108         * gst/gstsystemclock.c: (gst_system_clock_dispose),
2109         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
2110         (gst_system_clock_id_unschedule):
2111         Use BROADCAST as this is what we do.
2112
2113 2005-06-29  Wim Taymans  <wim@fluendo.com>
2114
2115         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
2116         We are actually prerolling before commiting the state
2117         change. 
2118
2119 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2120
2121         * docs/manual/advanced-clocks.xml:
2122         * docs/manual/advanced-interfaces.xml:
2123         * docs/manual/advanced-metadata.xml:
2124         * docs/manual/advanced-position.xml:
2125         * docs/manual/advanced-schedulers.xml:
2126         * docs/manual/advanced-threads.xml:
2127         * docs/manual/appendix-porting.xml:
2128         * docs/manual/basics-bins.xml:
2129         * docs/manual/basics-bus.xml:
2130         * docs/manual/basics-elements.xml:
2131         * docs/manual/basics-helloworld.xml:
2132         * docs/manual/basics-pads.xml:
2133         * docs/manual/highlevel-components.xml:
2134         * docs/manual/manual.xml:
2135         * docs/manual/thread.fig:
2136           Update (until threads/scheduling) Application Development Manual;
2137           remove GstThread, add GstBus, add simple porting checklist, add
2138           documentation for tag writing, clocks, make all examples until this
2139           part compile and run.
2140         * examples/manual/Makefile.am:
2141           Update from changes to Application Development Manual; add bus
2142           example, remove thread example.
2143
2144 2005-06-28  Wim Taymans  <wim@fluendo.com>
2145
2146         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
2147         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
2148         (gst_bus_source_dispatch):
2149         Add debugging messages.
2150         Make internal methods static.
2151         Handle the case where the bus is flushed in the handler.
2152         
2153         * gst/gstelement.c: (gst_element_get_bus):
2154         Fix refcount in _get_bus();
2155
2156         * gst/gstpipeline.c: (gst_pipeline_change_state),
2157         (gst_pipeline_get_clock_func):
2158         Clock refcounting fixes.
2159         Handle the case where preroll timed out more gracefully.
2160         
2161         * gst/gstsystemclock.c: (gst_system_clock_dispose):
2162         Clean up the internal thread in dispose. This is needed
2163         for subclasses that actually get disposed.
2164         
2165         * gst/schedulers/threadscheduler.c:
2166         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
2167         (gst_thread_scheduler_dispose):
2168         Free thread pool in dispose.
2169
2170 2005-06-28  Andy Wingo  <wingo@pobox.com>
2171
2172         * tests/network-clock-utils.scm (debug, print-event): New utils.
2173
2174         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
2175         (*packet-loss*): Unified loss probability.
2176         (network-time): Report out-of-band events.
2177
2178         * tests/plot-data: Add support for out-of-band events. Hack it
2179         into this script instead of passing it down the pipe; should fix
2180         this later.
2181
2182 2005-06-28  Wim Taymans  <wim@fluendo.com>
2183
2184         * docs/gst/gstreamer.types:
2185         * docs/gst/tmpl/gstbasesrc.sgml:
2186         * docs/gst/tmpl/gstpad.sgml:
2187         Docs fixes.
2188
2189 2005-06-28  Wim Taymans  <wim@fluendo.com>
2190
2191         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2192         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
2193         (gst_proxy_pad_do_fixatecaps):
2194         Correctly proxy the check_pull_range function.
2195
2196 2005-06-28  Andy Wingo  <wingo@pobox.com>
2197
2198         * tests/network-clock.scm: Removed need for slib.
2199         
2200 2005-06-28  Wim Taymans  <wim@fluendo.com>
2201
2202         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
2203         (gst_basesink_preroll_queue_flush):
2204         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
2205         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
2206         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2207         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
2208         (gst_proxy_pad_set_property):
2209         * gst/gstpad.c:
2210         * gst/gstpad.h:
2211         * gst/gstqueue.c: (gst_queue_init):
2212         The deprecated pad loop function is removed now.
2213
2214 2005-06-28  Andy Wingo  <wingo@pobox.com>
2215
2216         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
2217         New parameters, simulate network packet loss.
2218
2219         * tests/network-clock-utils.scm: Initialize the RNG.
2220
2221 2005-06-28  Wim Taymans  <wim@fluendo.com>
2222
2223         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
2224         (gst_basesink_event), (gst_basesink_deactivate):
2225         Flushing the preroll queue always needs to unlock the waiters.
2226
2227 2005-06-28  Edward Hervey  <edward@fluendo.com>
2228
2229         * gst/gstpipeline.c: (gst_pipeline_send_event): 
2230         Wheen a seek was successful on a pipeline, set the stream_time to the
2231         seek offset in order to have a synchronized stream_time.
2232
2233 2005-06-28  Wim Taymans  <wim@fluendo.com>
2234
2235         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2236         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
2237         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
2238         (gst_proxy_pad_do_fixatecaps):
2239         Call wrapper function instead of just calling the function
2240         pointers. This takes care of any locking and whatmore.
2241
2242 2005-06-28  Wim Taymans  <wim@fluendo.com>
2243
2244         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
2245         (gst_pad_pull_range):
2246         * gst/gstpad.h:
2247         CONNECTED -> LINKED.
2248
2249 2005-06-28  Andy Wingo  <wingo@pobox.com>
2250
2251         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
2252         source-munging commit!!!
2253
2254         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
2255         (gst_object_sink): Take gpointer arguments, not GstObject --
2256         avoids casts. Like GLib.
2257
2258         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
2259         activate.
2260
2261 2005-06-27  Andy Wingo  <wingo@pobox.com>
2262
2263         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
2264         remaining buffer.
2265
2266         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
2267         returns a sorted copy of the trace list.
2268         (gst_alloc_trace_print_live): New API, only prints traces with
2269         live objects. Sort the list.
2270         (gst_alloc_trace_print_all): Sort the list.
2271         (gst_alloc_trace_print): Align columns.
2272
2273         * gst/elements/gstttypefindelement.c:
2274         * gst/elements/gsttee.c:
2275         * gst/base/gstbasesrc.c:
2276         * gst/base/gstbasesink.c:
2277         * gst/base/gstbasetransform.c:
2278         * gst/gstqueue.c: Adapt for pad activation changes.
2279
2280         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
2281         sched.
2282         (gst_pipeline_dispose): Drop ref on sched.
2283
2284         * gst/gstpad.c (gst_pad_init): Set the default activate func.
2285         (gst_pad_activate_default): Push mode by default.
2286         (pre_activate_switch, post_activate_switch): New stubs, things to
2287         do before and after switching activation modes on pads.
2288         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
2289         the pad's activate function to choose which mode to activate.
2290         Shortcut on deactivation and call the right function directly.
2291         (gst_pad_activate_pull): New API, (de)activates a pad in pull
2292         mode.
2293         (gst_pad_activate_push): New API, same for push mode.
2294         (gst_pad_set_activate_function) 
2295         (gst_pad_set_activatepull_function) 
2296         (gst_pad_set_activatepush_function): Setters for new API.
2297
2298         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
2299         Trace all miniobjects.
2300         (gst_mini_object_make_writable): Unref the arg if we copy, like
2301         gst_caps_make_writable.
2302
2303         * gst/gstmessage.c (_gst_message_initialize): No trace init.
2304
2305         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
2306         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
2307         Adapt for new pad API.
2308
2309         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
2310
2311         * gst/gstelement.h:
2312         * gst/gstelement.c (gst_element_iterate_src_pads) 
2313         (gst_element_iterate_sink_pads): New API functions.
2314         
2315         * gst/gstelement.c (iterator_fold_with_resync): New utility,
2316         should fold into gstiterator.c in some form.
2317         (gst_element_pads_activate): Simplified via use of fold and
2318         delegation of decisions to gstpad->activate.
2319
2320         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
2321         help in debugging.
2322
2323         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
2324         class once in init, like gstmessage. Didn't run into this issue
2325         but it seems correct. Don't initialize a trace, gstminiobject does
2326         that.
2327
2328         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
2329         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
2330         to the bus.
2331         (assert_live_count): New util function, uses alloc traces to check
2332         cleanup.
2333
2334         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
2335         To be modified when unlink drops the internal pad.
2336
2337 2005-06-27  Wim Taymans  <wim@fluendo.com>
2338
2339         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
2340         (gst_bin_change_state):
2341         Cleanup the get_state() function a little, make sure it
2342         iterates the same set of elements.
2343         Added stub iterate_state_order().
2344
2345 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
2346
2347         * docs/gst/gstreamer-docs.sgml:
2348         * docs/gst/gstreamer-sections.txt:
2349         * docs/gst/gstreamer.types:
2350         * docs/gst/tmpl/gstbasesink.sgml:
2351         * docs/gst/tmpl/gstbasesrc.sgml:
2352         * docs/gst/tmpl/gstbasetransform.sgml:
2353         * docs/gst/tmpl/gstelement.sgml:
2354         * docs/gst/tmpl/gstiterator.sgml:
2355         * gst/base/gstbasesrc.c:
2356         * gst/base/gstbasesrc.h:
2357         * gst/base/gstbasetransform.h:
2358         * gst/gstelement.c:
2359         * gst/gstiterator.h:
2360           adding basetransform and iterator docs
2361
2362 2005-06-27  Andy Wingo  <wingo@pobox.com>
2363
2364         * docs/design/part-activation.txt: Notes on how activation should
2365         work -- not quite implemented yet.
2366
2367 2005-06-25  Wim Taymans  <wim@fluendo.com>
2368
2369         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
2370         At least get the chain function correct, needs more
2371         fixing.
2372
2373 2005-06-25  Wim Taymans  <wim@fluendo.com>
2374
2375         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2376         (gst_basesink_handle_object), (gst_basesink_event),
2377         (gst_basesink_do_sync), (gst_basesink_handle_event),
2378         (gst_basesink_change_state):
2379         * gst/gsttask.h:
2380         Right, two problems here: ghostpads don't take locks and
2381         glib _rec_mutex_lock_full() with depth==0 still locks.
2382         Catch illegal locking and g_warn them.
2383
2384 2005-06-25  Wim Taymans  <wim@fluendo.com>
2385
2386         * check/states/sinks.c: (START_TEST), (gst_object_suite):
2387         Have to check for completion now...
2388
2389 2005-06-25  Wim Taymans  <wim@fluendo.com>
2390
2391         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2392         (gst_basesink_handle_object), (gst_basesink_event),
2393         (gst_basesink_do_sync), (gst_basesink_handle_event),
2394         (gst_basesink_change_state):
2395         * gst/gstpad.h:
2396         Unlock STREAM_LOCK whatever the recursion was.
2397
2398 2005-06-25  Wim Taymans  <wim@fluendo.com>
2399
2400         * gst/base/gstbasesink.c: (gst_basesink_set_property),
2401         (gst_basesink_preroll_queue_empty),
2402         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
2403         (gst_basesink_event), (gst_basesink_do_sync),
2404         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
2405         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
2406         (gst_basesink_change_state):
2407         Reworked the base sink, handle event and buffer serialisation
2408         correctly and removed possible deadlock.
2409         Handle EOS correctly.
2410
2411 2005-06-25  Wim Taymans  <wim@fluendo.com>
2412
2413         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
2414         (gst_pipeline_change_state):
2415         * tools/gst-launch.c: (check_intr), (event_loop), (main):
2416         Allow elements to post EOS in the state change function.
2417         Fix up -launch, make it exit the poll loop when the
2418         pipeline actually changed state.
2419         Fix up warning parsing in -launch.
2420
2421 2005-06-25  Wim Taymans  <wim@fluendo.com>
2422
2423         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
2424         (gst_tee_sink_activate):
2425         Core takes STREAM_LOCK for us now.
2426
2427 2005-06-25  Wim Taymans  <wim@fluendo.com>
2428
2429         * gst/gstelement.c: (gst_element_get_state_func),
2430         (gst_element_set_state):
2431         * gst/gstelement.h:
2432         * gst/gstmessage.c: (gst_message_parse_error),
2433         (gst_message_parse_warning):
2434         Keep track of current target state while performing a state
2435         change so that subclasses can do something interesting.
2436         Fix parsing of warning/error messages when GError is NULL.
2437
2438 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
2439
2440         * docs/gst/Makefile.am:
2441         * docs/gst/gstreamer-docs.sgml:
2442         * docs/gst/gstreamer-sections.txt:
2443         * docs/gst/gstreamer.types:
2444         * docs/gst/tmpl/gstbasesink.sgml:
2445         * docs/gst/tmpl/gstbasesrc.sgml:
2446         * docs/gst/tmpl/gstbin.sgml:
2447         * docs/gst/tmpl/gstcompat.sgml:
2448         * docs/gst/tmpl/gstfakesink.sgml:
2449         * docs/gst/tmpl/gstfakesrc.sgml:
2450         * docs/gst/tmpl/gstfilesink.sgml:
2451         * docs/gst/tmpl/gstfilesrc.sgml:
2452         * docs/gst/tmpl/gstindex.sgml:
2453         * docs/manual/appendix-quotes.xml:
2454         * gst/base/gstbasesrc.h:
2455         * gst/elements/gstfakesrc.h:
2456         * gst/gstmessage.h:
2457           start pulling in base classes and elements in our docs
2458
2459 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
2460
2461         * docs/gst/Makefile.am:
2462         * docs/libs/Makefile.am:
2463           fixed make distcheck with gtk-doc 1.3
2464
2465 2005-06-23  Wim Taymans  <wim@fluendo.com>
2466
2467         * gst/gstelement.c: (gst_element_get_state_func),
2468         (gst_element_set_state), (gst_element_change_state):
2469         When the state did not change, also report NO_PREROLL
2470         when it matters.
2471
2472 2005-06-23  Wim Taymans  <wim@fluendo.com>
2473
2474         * gst/gstpad.c: (gst_pad_event_default):
2475         * gst/gstqueue.c: (gst_queue_loop):
2476         No unsafe task pausing please.
2477
2478 2005-06-23  Wim Taymans  <wim@fluendo.com>
2479
2480         * gst/schedulers/threadscheduler.c:
2481         (gst_thread_scheduler_task_start),
2482         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
2483         Ref the task before pushing it on the threadpool. This
2484         makes sure that we have a ref when the threadfunction is
2485         actually called.
2486
2487 2005-06-23  Andy Wingo  <wingo@pobox.com>
2488
2489         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
2490         offset is greater than the file's size.
2491
2492         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
2493         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
2494         * gst/gstobject.c (gst_object_class_init): Make the class lock
2495         recursive. Wim won't let me drop deep_notify. Decodebin works
2496         again, whoopdy doo.
2497
2498         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
2499         internal pad, and hacks accordingly. Doesn't do it on the target
2500         pad because we change its caps. Probably catches all cases of
2501         interest tho.
2502         (gst_ghost_pad_set_property): Connect to notify::caps as
2503         appropritate.
2504
2505         * tests/network-clock.scm (plot-simulation): Pipe data to the
2506         elite python skript.
2507
2508         * tests/network-clock-utils.scm (define-parameter): New macro,
2509         defines a parameter that can be set via the command line.
2510         (set-parameter!, parse-parameter-arguments): Command line args
2511         parser.
2512
2513         * tests/plot-data: Simple matplotlib-based plotter, takes input on
2514         stdin.
2515
2516 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
2517
2518         * gst/elements/gsttypefindelement.c:
2519         (gst_type_find_element_handle_event):
2520           Don't restart typefinding on a discont.
2521         * gst/gstelement.c: (gst_element_set_state):
2522           Debug spelling fix.
2523         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
2524           Allow changing mode of an active pad.
2525           Debug output fixes.
2526         * gst/registries/gstlibxmlregistry.c: (load_feature):
2527           Don't cast a static pad template to a normal pad template.
2528
2529 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
2530
2531         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2532         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2533           remove gst_strtoll completely, since it didn't actually do
2534           anything more than what g_ascii_strtoull already does.
2535           check for range errors when deserializing
2536           do a cast for the unsigned cases; but further fixing needs
2537           a decision on what the interpretation of "(int)" and
2538           deserialization should be for values that fall outside the
2539           type's boundaries (ie, refuse, or interpret as casting)
2540
2541 2005-06-23  Wim Taymans  <wim@fluendo.com>
2542
2543         * check/Makefile.am:
2544         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
2545         * docs/design/part-live-source.txt:
2546         * docs/design/part-states.txt:
2547         * gst/base/gstbasesrc.c: (gst_basesrc_init),
2548         (gst_basesrc_set_live), (gst_basesrc_is_live),
2549         (gst_basesrc_get_range), (gst_basesrc_activate),
2550         (gst_basesrc_change_state):
2551         * gst/base/gstbasesrc.h:
2552         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2553         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
2554         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
2555         * gst/gstelement.c: (gst_element_get_state_func),
2556         (gst_element_set_state):
2557         * gst/gstelement.h:
2558         * gst/gsttypes.h:
2559         * tools/gst-launch.c: (event_loop), (main):
2560         Added support for live sources and other elements that
2561         cannot do preroll.
2562         Updated design docs, added live-source design doc.
2563         Implemented live source functionality in basesrc
2564         Fix error condition in _bin_get_state()
2565         Implement live source handling in -launch.
2566         Added check for live sources.
2567         Fixed case in GstBin where elements were changed state
2568         multiple times.
2569
2570
2571 2005-06-23  Andy Wingo  <wingo@pobox.com>
2572
2573         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
2574         borken refcounting.
2575
2576         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
2577         gst_caps_replace takes care of this for us.
2578
2579         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
2580         gst_pad_set_caps on the target, not just its setcaps() function.
2581
2582         * tests/network-clock.scm: 
2583         * tests/network-clock-utils.scm: A network clock simulator.
2584         Something of an algorithmic testbed before doing something in C.
2585
2586 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2587
2588         * check/Makefile.am:
2589         * check/gst/capslist.h:
2590           copy over from 0.8, and add two with bitmasks specified with
2591           (int) 0xFF...
2592         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2593           add test to parse everything from capslist.h
2594         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
2595         (main):
2596           add test for structure deserialization
2597         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2598           add tests for deserialization of strings to int types
2599         * gst/gststructure.c: (gst_structure_nth_field_name):
2600         * gst/gststructure.h:
2601           add a way to get the name of a field referenced by index
2602         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2603           instead of checking if the resulting long long lies between
2604           min and max, we check if the long long would fit into
2605           a number of bytes for the final type.
2606           This fixes cases where a string represents 2^32 - 1, which
2607           when cast to int would be the (valid) -1, but is bigger than
2608           G_MAXINT
2609
2610 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2611
2612         * gst/parse/grammar.y:
2613           add a log line for type deserialization
2614
2615 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2616
2617         * check/gst/gstvalue.c: (START_TEST):
2618         * gst/gstvalue.c: (gst_value_deserialize):
2619           return long long, not int, so gint64 deserialization actually
2620           works.  Is there any flag that makes the compiler check this ?
2621           Fixes #308559
2622
2623 2005-06-22  Wim Taymans  <wim@fluendo.com>
2624
2625         * gst/gstbuffer.h:
2626         Added convenience macros for setting buffers in GValue.
2627
2628 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2629
2630         * check/gst/.cvsignore:
2631         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2632           add a test deserializing int64, and comment part out because
2633           it fails, yay !
2634
2635 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2636
2637         * check/Makefile.am:
2638         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
2639         * testsuite/Makefile.am:
2640         * testsuite/caps/Makefile.am:
2641         * testsuite/caps/value_serialize.c:
2642         * testsuite/test_gst_init.c:
2643           move a value_serialize test over
2644
2645 2005-06-20  Wim Taymans  <wim@fluendo.com>
2646
2647         * gst/gstpad.c:
2648         Small doc updates.
2649         
2650         * gst/gstvalue.c: (gst_value_compare_buffer),
2651         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
2652         (gst_value_compare_flags), (gst_value_serialize_flags),
2653         (gst_value_deserialize_flags), (_gst_value_initialize):
2654         Fix serialisation of buffers, they are not boxed types anymore
2655
2656 2005-06-20  Wim Taymans  <wim@fluendo.com>
2657
2658         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2659         Testcase to show error in buffer-on-caps serialisation.
2660
2661 2005-06-20  Andy Wingo  <wingo@pobox.com>
2662
2663         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
2664         will be adding to later.
2665
2666         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
2667         if its socks fill with rocks.
2668         (gst_system_clock_obtain): Set the name on object construction.
2669         Avoid double-checked locking.
2670
2671 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
2672
2673         * gst/gsturi.c: (gst_element_make_from_uri):
2674           Fix potential endless loop.
2675
2676 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2677
2678         * check/Makefile.am:
2679           add gsttag
2680         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
2681         (main):
2682           move over from testsuite dir and clean up
2683         * configure.ac:
2684         * gst/gsttag.c:
2685         * testsuite/Makefile.am:
2686         * testsuite/tags/.cvsignore:
2687         * testsuite/tags/Makefile.am:
2688         * testsuite/tags/merge.c:
2689           remove testsuite/tags
2690
2691 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2692
2693         * docs/gst/gstreamer-sections.txt:
2694         * docs/gst/tmpl/gstenumtypes.sgml:
2695         * win32/gstenumtypes.c:
2696           clean up documentation build a little
2697
2698 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2699
2700         * check/gstcheck.h:
2701           add macros for checking refcounts on objects and caps
2702         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
2703           add some more unit tests
2704         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
2705         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
2706           fix leaked refcounts (I hope :)) so unittest works
2707         * gst/gstpad.h:
2708           whitespace removal
2709
2710 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2711
2712         * configure.ac: back to HEAD
2713
2714 === release 0.9.1 ===
2715
2716 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2717
2718         * NEWS:
2719         * RELEASE:
2720           updated
2721
2722 2005-06-17  Andy Wingo  <wingo@pobox.com>
2723
2724         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
2725         assert; it's always possible that the pad gets deactivated in
2726         between the checks in gstpad.c and the implementation. Rely on
2727         finish_preroll() to return a FLUSHING or similar instead of on the
2728         assert.
2729         
2730         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
2731         clock and post an EOS message if we come out of finish_preroll in
2732         the playing state.
2733
2734 2005-06-16  David Schleef  <ds@schleef.org>
2735
2736         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
2737         (gst_capsfilter_set_property): Allow NULL as possible value
2738         for filter_caps property, indicating GST_CAPS_ANY.
2739
2740 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2741
2742         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
2743           fix debug output
2744         * gst/schedulers/Makefile.am:
2745           use libgst prefix
2746         * gstreamer.spec.in:
2747           fix spec for it
2748
2749 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2750
2751         * gstreamer.spec.in:
2752           clean up
2753
2754 2005-06-08  Andy Wingo  <wingo@pobox.com>
2755
2756         * gst/gstutils.c: RPAD fixes all around.
2757         (gst_element_link_pads): Refcounting fixes.
2758
2759         * tools/gst-inspect.c:
2760         * tools/gst-xmlinspect.c:
2761         * parse/grammar.y:
2762         * gst/base/gsttypefindhelper.c:
2763         * gst/base/gstbasesink.c:
2764         * gst/gstqueue.c: RPAD fixes.
2765
2766         * gst/gstghostpad.h:
2767         * gst/gstghostpad.c: New ghost pad implementation as full proxy
2768         pads. The tricky thing is they provide both source and sink
2769         interfaces, since they proxy the internal pad for the external
2770         pad, and vice versa. Implement with lower-level ProxyPad objects,
2771         with the interior proxy pad as a child of the exterior ghost pad.
2772         Should write a doc on this.
2773         
2774         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
2775         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
2776         gst_object API.
2777         
2778         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
2779         pads are real pads. No ghost pads in this file. Not documenting
2780         the myriad s/RPAD/PAD/ and REALIZE fixes.
2781         (gst_pad_class_init): Add properties for "direction" and
2782         "template". Both are construct-only, so they can't change during
2783         the life of the pad. Fixes properly deriving from GstPad.
2784         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
2785         derived objects, just set properties when creating the objects via
2786         g_object_new.
2787         (gst_pad_get_parent): Implement as a function, return NULL if the
2788         parent is not an element.
2789         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
2790         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
2791         
2792         * gst/gstobject.c (gst_object_class_init): Make name a construct
2793         property. Don't set it in the object init.
2794
2795         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
2796         with UNKNOWN direction.
2797         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
2798         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
2799         (gst_element_remove_pad): Remove ghost-pad special cases.
2800         (gst_element_pads_activate): Remove rpad cruft.
2801
2802         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
2803         catch the pad's-parent-not-an-element case.
2804
2805         * gst/gst.h: Include gstghostpad.h.
2806
2807         * gst/gst.c (init_post): No more real, ghost pads.
2808
2809         * gst/Makefile.am: Add gstghostpad.[ch].
2810
2811         * check/Makefile.am:
2812         * check/gst/gstbin.c:
2813         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
2814         into a bin creates ghost pads, and that the refcounts are right.
2815         Partly moved from gstbin.c.
2816
2817 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2818
2819         * check/gst-libs/.cvsignore:
2820         * check/gst/.cvsignore:
2821         * check/pipelines/.cvsignore:
2822           ignore more
2823         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
2824         (START_TEST), (cleanup_suite), (main):
2825           add some tests related to cleanup after running pipelines
2826
2827 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2828
2829         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
2830           add a testsuite for GstBuffer
2831
2832 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2833
2834         * gst/gstminiobject.h:
2835           add defines for accessing the refcount
2836
2837 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
2838
2839         * Makefile.am: added support for html unit test coverage reports
2840
2841 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
2842
2843         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
2844           Free existing caps if the capsfilter changes. Add a FIXME about
2845           setting those caps on the pads.
2846
2847         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
2848           Before adding a ghost pad to a parent bin, check that there isn't
2849           already one for the element on the bin. Prevents infinite recursion
2850           when using decodebin in parse pipelines. Andy says he'll rewrite the
2851           way this works anyway, so ignore the hack.
2852
2853 2005-06-02  Andy Wingo  <wingo@pobox.com>
2854
2855         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
2856         file size, pass it on to the type find helper.
2857
2858         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
2859         segment_start and segment_end properly according to the seek
2860         method. Segment_end is still a bit flaky because offset can be
2861         negative for CUR and END cases, but it takes -1 as an "unset"
2862         value.
2863
2864 2005-06-02  Wim Taymans  <wim@fluendo.com>
2865
2866         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
2867         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
2868         (gst_basesink_activate):
2869         * gst/base/gstbasesink.h:
2870         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2871         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2872         (gst_pad_query), (gst_pad_start_task):
2873         * gst/gstpad.h:
2874         * gst/gstqueue.c: (gst_queue_bufferalloc),
2875         (gst_queue_handle_sink_event), (gst_queue_chain):
2876         Bufferalloc: return GstFlowReturn to more accuratly report
2877         why allocation failed.
2878
2879 2005-06-02  Wim Taymans  <wim@fluendo.com>
2880
2881         * gst/gstpipeline.c: (gst_pipeline_send_event):
2882         Take snapshot of state without blocking.
2883
2884 2005-06-02  Wim Taymans  <wim@fluendo.com>
2885
2886         * docs/design/part-TODO.txt:
2887         * docs/design/part-caps.txt:
2888         * docs/design/part-clocks.txt:
2889         * docs/design/part-negotiation.txt:
2890         * docs/design/part-preroll.txt:
2891         Small doc updates 
2892
2893 2005-05-30  Wim Taymans  <wim@fluendo.com>
2894
2895         * gst/elements/gstidentity.c: (gst_identity_event),
2896         (gst_identity_transform), (gst_identity_get_property):
2897         Protect last_message property as it is accessed from
2898         multiple threads.
2899
2900 2005-05-30  Wim Taymans  <wim@fluendo.com>
2901
2902         * gst/gstelement.c: (gst_element_init),
2903         (gst_element_pads_activate), (gst_element_change_state):
2904         Slicker pad activation code.
2905
2906 2005-05-30  Wim Taymans  <wim@fluendo.com>
2907
2908         * gst/Makefile.am:
2909         * gst/gstelement.h:
2910         * gst/gstelementfactory.h:
2911         * gst/gsttypes.h:
2912         Move elementfactory methods to separate .h file.
2913
2914 2005-05-30  Wim Taymans  <wim@fluendo.com>
2915
2916         * docs/design/part-overview.txt:
2917         * gst/gstsystemclock.h:
2918         Small typo fixes, doc updates.
2919
2920 2005-05-30  Wim Taymans  <wim@fluendo.com>
2921
2922         * gst/gst.c: (gst_init_get_popt_table), (init_post),
2923         (init_popt_callback):
2924         Remove cpu-opt flag.
2925
2926 2005-05-30  Wim Taymans  <wim@fluendo.com>
2927
2928         * gst/gstbuffer.c: (gst_subbuffer_finalize),
2929         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
2930         * gst/gstbuffer.h:
2931         Avoid typechecking in places where not needed.
2932         Added accessor for malloc_data.
2933
2934 2005-05-30  Wim Taymans  <wim@fluendo.com>
2935
2936         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
2937         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
2938         (gst_pad_configure_sink), (gst_pad_configure_src),
2939         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
2940         (gst_pad_start_task):
2941         Propagate errors from _set_caps() in configure_src/sink
2942         functions instead of returning TRUE.
2943         FLUSH events can travel up and downstream
2944
2945
2946 2005-05-30  Wim Taymans  <wim@fluendo.com>
2947
2948         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2949         (gst_basesink_activate):
2950         Handle EOS in preroll.
2951
2952 2005-05-30  Wim Taymans  <wim@fluendo.com>
2953
2954         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2955         (gst_queue_loop), (gst_queue_handle_src_event):
2956         Remove old pieces of code
2957         Flushing the queue in an upstream event is a very bad idea.
2958
2959 2005-05-26  Andy Wingo  <wingo@pobox.com>
2960
2961         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
2962         gst_value_set_mini_object so as to add a ref on the object (which
2963         will be removed when the value is unset).
2964
2965         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
2966         arg type in ::handoff.
2967
2968         * gst/gstelement.c (gst_element_change_state): Also deactivate
2969         pads in READY->NULL, just in case the element didn't make it to
2970         PAUSED. Wingo tested, Wim approved.
2971
2972 2005-05-26  Wim Taymans  <wim@fluendo.com>
2973
2974         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2975         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2976         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
2977         A flushing pad cannot be used to alloc_buffer from.
2978
2979 2005-05-26  Wim Taymans  <wim@fluendo.com>
2980
2981         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
2982         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
2983         (gst_bus_source_dispatch), (gst_bus_source_finalize),
2984         (gst_bus_create_watch), (gst_bus_add_watch_full):
2985         * gst/gstbus.h:
2986         Implement a real GSource and use g_main_context_wakeup() to
2987         signal new messages instead of the socketpair.
2988
2989 2005-05-25  Wim Taymans  <wim@fluendo.com>
2990
2991         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
2992         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
2993         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2994         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2995         (gst_pad_send_event), (gst_pad_start_task):
2996         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
2997         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
2998         (gst_queue_sink_activate), (gst_queue_src_activate),
2999         (gst_queue_change_state):
3000         * gst/gstqueue.h:
3001         Fix state changes for non sinks. We now change sinks, then elements
3002         with unconnected srcpads, then the rest.
3003         More efficient queue unlocking in flush and state changes.
3004         Set the pad activate mode even if it does not have an activate
3005         function.
3006
3007 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3008
3009         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
3010           Don't go in pull mode for non-seekable sources.
3011         * gst/elements/gsttypefindelement.h:
3012         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3013         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
3014         (free_entry), (stop_typefinding),
3015         (gst_type_find_element_handle_event), (find_peek),
3016         (gst_type_find_element_chain), (do_pull_typefind),
3017         (gst_type_find_element_change_state):
3018           Allow typefinding (w/o seeking) in push-mode, simplified version
3019           of what was in 0.8.
3020         * gst/gstutils.c: (gst_buffer_join):
3021         * gst/gstutils.h:
3022           gst_buffer_join() from 0.8.
3023
3024 2005-05-25  Wim Taymans  <wim@fluendo.com>
3025
3026         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3027         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
3028         (gst_pad_send_event), (gst_pad_start_task):
3029         Disable attempt at mode switching until it is figured out.
3030
3031 2005-05-25  Wim Taymans  <wim@fluendo.com>
3032
3033         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
3034         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
3035         (gst_basesink_finish_preroll), (gst_basesink_chain),
3036         (gst_basesink_loop), (gst_basesink_activate),
3037         (gst_basesink_change_state):
3038         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
3039         (gst_basesrc_get_range), (gst_basesrc_loop),
3040         (gst_basesrc_activate):
3041         * gst/elements/gsttee.c: (gst_tee_sink_activate):
3042         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
3043         (gst_real_pad_init), (gst_real_pad_set_property),
3044         (gst_real_pad_get_property), (gst_pad_set_active),
3045         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
3046         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
3047         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
3048         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
3049         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3050         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
3051         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
3052         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
3053         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
3054         (gst_pad_stop_task):
3055         * gst/gstpad.h:
3056         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
3057         (gst_queue_loop), (gst_queue_src_activate):
3058         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
3059         (gst_task_get_state):
3060         * gst/gsttask.h:
3061         * gst/schedulers/threadscheduler.c:
3062         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
3063         Implement gst_pad_pause/start/stop_task(), take STREAM lock
3064         in task function.
3065         Remove ACTIVE pad flag, use FLUSHING everywhere
3066         Added _pad_chain(), _pad_get_range() to call chain/getrange 
3067         functions.
3068         Add locks around IS_FLUSHING when reading.
3069         Take STREAM lock in chain(), get_range() functions so plugins
3070         don't need to take it anymore.
3071         
3072
3073
3074 2005-05-25  Wim Taymans  <wim@fluendo.com>
3075
3076         * tools/gst-launch.c: (event_loop):
3077         Unref message after using its contents instead of
3078         before.
3079
3080 2005-05-24  Wim Taymans  <wim@fluendo.com>
3081
3082         * docs/design/draft-ghostpads.txt:
3083         * docs/design/draft-push-pull.txt:
3084         * docs/design/draft-query.txt:
3085         * docs/design/part-overview.txt:
3086         Docs updates, added general overview doc.
3087
3088 2005-05-21  David Schleef  <ds@schleef.org>
3089
3090         * docs/gst/tmpl/old/GstBin.sgml:
3091         * docs/gst/tmpl/old/GstBuffer.sgml:
3092         * docs/gst/tmpl/old/GstCaps.sgml:
3093         * docs/gst/tmpl/old/GstClock.sgml:
3094         * docs/gst/tmpl/old/GstCompat.sgml:
3095         * docs/gst/tmpl/old/GstData.sgml:
3096         * docs/gst/tmpl/old/GstElement.sgml:
3097         * docs/gst/tmpl/old/GstEvent.sgml:
3098         * docs/gst/tmpl/old/GstIndex.sgml:
3099         * docs/gst/tmpl/old/GstStructure.sgml:
3100         * docs/gst/tmpl/old/GstTag.sgml:
3101         * docs/gst/tmpl/old/cothreads.sgml:
3102         * docs/gst/tmpl/old/cothreads_compat.sgml:
3103         * docs/gst/tmpl/old/gettext.sgml:
3104         * docs/gst/tmpl/old/gobject2gtk.sgml:
3105         * docs/gst/tmpl/old/grammar.tab.sgml:
3106         * docs/gst/tmpl/old/gst-i18n-app.sgml:
3107         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
3108         * docs/gst/tmpl/old/gst_private.sgml:
3109         * docs/gst/tmpl/old/gstaggregator.sgml:
3110         * docs/gst/tmpl/old/gstarch.sgml:
3111         * docs/gst/tmpl/old/gstatomic_impl.sgml:
3112         * docs/gst/tmpl/old/gstbufferstore.sgml:
3113         * docs/gst/tmpl/old/gstdata_private.sgml:
3114         * docs/gst/tmpl/old/gstdisksink.sgml:
3115         * docs/gst/tmpl/old/gstdisksrc.sgml:
3116         * docs/gst/tmpl/old/gstelementfactory.sgml:
3117         * docs/gst/tmpl/old/gstextratypes.sgml:
3118         * docs/gst/tmpl/old/gstfakesink.sgml:
3119         * docs/gst/tmpl/old/gstfakesrc.sgml:
3120         * docs/gst/tmpl/old/gstfdsink.sgml:
3121         * docs/gst/tmpl/old/gstfdsrc.sgml:
3122         * docs/gst/tmpl/old/gstfilesink.sgml:
3123         * docs/gst/tmpl/old/gstfilesrc.sgml:
3124         * docs/gst/tmpl/old/gsthttpsrc.sgml:
3125         * docs/gst/tmpl/old/gstidentity.sgml:
3126         * docs/gst/tmpl/old/gstindexfactory.sgml:
3127         * docs/gst/tmpl/old/gstmarshal.sgml:
3128         * docs/gst/tmpl/old/gstmd5sink.sgml:
3129         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
3130         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
3131         * docs/gst/tmpl/old/gstpadtemplate.sgml:
3132         * docs/gst/tmpl/old/gstpipefilter.sgml:
3133         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
3134         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
3135         * docs/gst/tmpl/old/gstshaper.sgml:
3136         * docs/gst/tmpl/old/gstspider.sgml:
3137         * docs/gst/tmpl/old/gstspideridentity.sgml:
3138         * docs/gst/tmpl/old/gststatistics.sgml:
3139         * docs/gst/tmpl/old/gsttee.sgml:
3140         * docs/gst/tmpl/old/gsttimecache.sgml:
3141         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
3142         * docs/gst/tmpl/old/gstxmlregistry.sgml:
3143         * docs/gst/tmpl/old/gthread-cothreads.sgml:
3144         * docs/gst/tmpl/old/types.sgml:
3145           I didn't intend to add these or check them in.
3146
3147 2005-05-19  David Schleef  <ds@schleef.org>
3148
3149         * configure.ac: Use -no-common everywhere.  In a sane world, it
3150           would be the default in libtool, because without it, you can't
3151           build DLLs on Windows.
3152         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
3153         * docs/gst/gstreamer-sections.txt:
3154         * docs/gst/tmpl/gstcpu.sgml:
3155         * docs/gst/tmpl/gstdata.sgml:
3156         * docs/gst/tmpl/gstthread.sgml:
3157
3158 2005-05-19  David Schleef  <ds@schleef.org>
3159
3160         * gst/gstminiobject.c: (gst_value_set_mini_object),
3161         (gst_value_take_mini_object), (gst_value_get_mini_object):
3162         * gst/gstminiobject.h: Add GValue set/get functions.
3163
3164 2005-05-19  Wim Taymans  <wim@fluendo.com>
3165
3166         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
3167         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
3168         (gst_subbuffer_init), (gst_buffer_is_span_fast):
3169         * gst/gstbuffer.h:
3170         * gst/gstbus.c: (gst_bus_post):
3171         * gst/gstelement.c: (gst_element_get_random_pad):
3172         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
3173         Make subbufer unref the parent in finalize.
3174         some more debugging info.
3175
3176
3177 2005-05-19  Wim Taymans  <wim@fluendo.com>
3178
3179         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3180         (gst_basesink_init), (gst_basesink_finalize),
3181         (gst_basesink_activate), (gst_basesink_change_state):
3182         Don't free preroll queue too early.
3183
3184 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3185
3186         * gst/Makefile.am:
3187         * gst/ROADMAP:
3188           Hi, I'm outdated. Please shoot me.
3189
3190 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3191
3192         * gst/gstpipeline.c: (gst_pipeline_send_event):
3193           Do not access variables after they have been deleted.
3194
3195 2005-05-19  Wim Taymans  <wim@fluendo.com>
3196
3197         * tools/gst-inspect.c: (print_plugin_features):
3198         A plugin feature does unfortunatly not use the
3199         object name yet...
3200
3201 2005-05-18  Wim Taymans  <wim@fluendo.com>
3202
3203         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
3204         Port _span() functions to new subbuffers.
3205
3206 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3207
3208         * gst/gstbin.c: (gst_bin_add_func):
3209           Fix clock settery in bins when adding kids after the clock has
3210           been selected.
3211
3212 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3213
3214         * gst/elements/gstidentity.c: (gst_identity_class_init):
3215           Workaround until signals support GstMiniObject.
3216
3217 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
3218
3219         * gst/gstbuffer.c:
3220         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
3221
3222 2005-05-18  Wim Taymans  <wim@fluendo.com>
3223
3224         * gst/base/Makefile.am:
3225         * gst/base/gstadapter.c: (gst_adapter_base_init),
3226         (gst_adapter_class_init), (gst_adapter_init),
3227         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
3228         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
3229         (gst_adapter_flush), (gst_adapter_available),
3230         (gst_adapter_available_fast):
3231         * gst/base/gstadapter.h:
3232         Ported and added adapter to the base classes.
3233
3234 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3235
3236         * gst/gst.c:
3237         * gst/gstmessage.c:
3238           Make sure the class is reffed/unreffed once before threads can be
3239           used.  Fixes #304551.
3240
3241 2005-05-17  Wim Taymans  <wim@fluendo.com>
3242
3243         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
3244         (gst_basesink_chain_unlocked), (gst_basesink_activate):
3245         * gst/gstminiobject.c: (gst_mini_object_get_type),
3246         (gst_mini_object_free):
3247         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
3248         (gst_pad_push), (gst_pad_push_event):
3249         * gst/gstqueue.c: (gst_queue_change_state):
3250         Don't queue buffers in basesink when we are flushing.
3251         Unref buffer when flushing in basesink.
3252         Flush queue when going to READY
3253         Unref buffer when _push() returns an error.
3254         Don't free MiniObject instance when refcount is incremented
3255         in _finalize() so that we can recover objects.
3256
3257 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
3258
3259         * docs/manual/advanced-schedulers.xml:
3260         * docs/manual/appendix-checklist.xml:
3261         * docs/pwg/advanced-clock.xml:
3262         * docs/pwg/advanced-interfaces.xml:
3263         * docs/pwg/advanced-request.xml:
3264         * docs/pwg/advanced-types.xml:
3265         * docs/pwg/intro-preface.xml:
3266         * examples/plugins/example.c: (gst_example_get_type),
3267         (gst_example_class_init), (gst_example_chain),
3268         (gst_example_set_property), (gst_example_get_property),
3269         (gst_example_change_state), (plugin_init):
3270         * examples/plugins/example.h:
3271           small doc fixes
3272
3273 2005-05-17  Wim Taymans  <wim@fluendo.com>
3274
3275         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
3276         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
3277         * gst/gstqueue.c: (gst_queue_change_state):
3278         Clear queue when going to READY.
3279         Remove IN_SETCAPS flag too.
3280
3281 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
3282
3283         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
3284           Remove implicit cast from gboolean to GstElementStateReturn;
3285           make sure we still return failure in paused => ready case if
3286           the parent class fails to change state and our own stop 
3287           vfunc succeeds.
3288
3289 2005-05-17  Wim Taymans  <wim@fluendo.com>
3290
3291         * tools/gst-launch.c: (event_loop):
3292         Message was unreffed too soon.
3293
3294 2005-05-16  Andy Wingo  <wingo@pobox.com>
3295
3296         * gst/gstbin.c (sink_iterator_filter): Err... um...
3297
3298         * check/gst/gstbin.c (test_ghost_pads): New test for the
3299         ghosting-if-elements-not-in-same-bin behavior.
3300
3301 2005-05-16  David Schleef  <ds@schleef.org>
3302
3303         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
3304         accessing refcount directly.
3305
3306 2005-05-15  David Schleef  <ds@schleef.org>
3307
3308         * check/Makefile.am: remove GstData checks
3309         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
3310         * gst/Makefile.am: add miniobject, remove data
3311         * gst/gst.h: add miniobject, remove data
3312         * gst/gstdata.c: remove
3313         * gst/gstdata.h: remove
3314         * gst/gstdata_private.h: remove
3315         * gst/gsttypes.h: remove GstEvent and GstMessage
3316         * gst/gstelement.c: (gst_element_post_message): fix for API changes
3317         * gst/gstmarshal.list: change BOXED -> OBJECT
3318
3319         Implement GstMiniObject.
3320         * gst/gstminiobject.c:
3321         * gst/gstminiobject.h:
3322
3323         Modify to be subclasses of GstMiniObject.
3324         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
3325         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
3326         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
3327         (gst_subbuffer_get_type), (gst_subbuffer_init),
3328         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
3329         (gst_buffer_span):
3330         * gst/gstbuffer.h:
3331         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
3332         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
3333         (_gst_event_copy), (gst_event_new):
3334         * gst/gstevent.h:
3335         * gst/gstmessage.c: (_gst_message_initialize),
3336         (gst_message_get_type), (gst_message_class_init),
3337         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
3338         (gst_message_new), (gst_message_new_error),
3339         (gst_message_new_warning), (gst_message_new_tag),
3340         (gst_message_new_state_changed), (gst_message_new_application):
3341         * gst/gstmessage.h:
3342         * gst/gstprobe.c: (gst_probe_perform),
3343         (gst_probe_dispatcher_dispatch):
3344         * gst/gstprobe.h:
3345         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
3346         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
3347         (_gst_query_copy), (gst_query_new):
3348
3349         Update elements for GstData -> GstMiniObject changes
3350         * gst/gstquery.h:
3351         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
3352         (gst_queue_chain), (gst_queue_loop):
3353         * gst/elements/gstbufferstore.c:
3354         (gst_buffer_store_add_buffer_func),
3355         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
3356         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3357         (gst_fakesink_render):
3358         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
3359         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
3360         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
3361         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
3362         (gst_filesrc_create_read):
3363         * gst/elements/gstidentity.c: (gst_identity_class_init):
3364         * gst/elements/gsttypefindelement.c:
3365         (gst_type_find_element_src_event), (free_entry_buffers),
3366         (gst_type_find_element_handle_event):
3367         * libs/gst/dataprotocol/dataprotocol.c:
3368         (gst_dp_header_from_buffer):
3369         * libs/gst/dataprotocol/dataprotocol.h:
3370         * libs/gst/dataprotocol/dp-private.h:
3371
3372 2005-05-15  David Schleef  <ds@schleef.org>
3373
3374         * gst/elements/gstelements.c: Don't include headers that were
3375         just removed.
3376
3377 2005-05-15  David Schleef  <ds@schleef.org>
3378
3379         * gst/elements/Makefile.am: Remove some elements that don't
3380         need to be in the core (or even exist at all).
3381         * gst/elements/gstaggregator.c:
3382         * gst/elements/gstaggregator.h:
3383         * gst/elements/gstmd5sink.c:
3384         * gst/elements/gstmd5sink.h:
3385         * gst/elements/gstmultifilesrc.c:
3386         * gst/elements/gstmultifilesrc.h:
3387         * gst/elements/gstpipefilter.c:
3388         * gst/elements/gstpipefilter.h:
3389         * gst/elements/gstshaper.c:
3390         * gst/elements/gstshaper.h:
3391         * gst/elements/gststatistics.c:
3392         * gst/elements/gststatistics.h:
3393         * po/POTFILES.in: Remove above files.
3394
3395 2005-05-14  Andy Wingo  <wingo@pobox.com>
3396
3397         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
3398         so as to get the refs right.
3399         (sink_iterator_filter): New function, wraps bin_element_is_sink,
3400         unreffing objects that don't pass the filter.
3401
3402         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
3403         gst_element_set_bus.
3404         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
3405         normal cases, this will destroy the bus.
3406
3407         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
3408         object.
3409
3410         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
3411         has no sinks.
3412
3413 2005-05-13  Andy Wingo  <wingo@pobox.com>
3414
3415         * gst/gstutils.c (gst_element_link_pads): Instead of calling
3416         gst_pad_link, call pad_link_maybe_ghosting,
3417         (pad_link_maybe_ghosting): Links pads, making sure that the
3418         elements being linked are in the same bin.
3419         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
3420         Helpers for pad_link_maybe_ghosting.
3421
3422 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3423
3424         * configure.ac:
3425           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
3426
3427 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3428
3429         * docs/design/part-element-source.txt:
3430           Mention GstPushSrc
3431
3432 2005-05-12  Wim Taymans  <wim@fluendo.com>
3433
3434         * gst/base/gstbasesink.c: (gst_basesink_init),
3435         (gst_basesink_activate):
3436         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
3437         (gst_basesrc_is_seekable):
3438         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
3439         (bin_element_is_sink), (gst_bin_change_state):
3440         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3441         * gst/gstelement.h:
3442         Identify sinks by their flag to avoid overly complicated
3443         checks (fow now).
3444         Do state changes even for elements not reachable from the
3445         sinks.
3446         BaseSink is a sink now :)
3447         Some more debugging info in the basesrc.
3448
3449
3450 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3451
3452         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
3453           Implement _query on a bin, similar to _send_event.
3454
3455 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
3456
3457         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
3458           Discont event offset format should be GST_FORMAT_BYTES,
3459           not GST_FORMAT_TIME.
3460
3461 2005-05-12  Wim Taymans  <wim@fluendo.com>
3462
3463         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
3464         Same fix as Ronald's but without the signal. 
3465
3466 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3467
3468         * gst/gstutils.c: (gst_element_query_position):
3469           No, an element is not a pad.
3470
3471 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3472
3473         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
3474         (gst_bin_get_state):
3475           If a child is removed from a bin while we remove the child from
3476           the bin and while we're retrieving its state, signal this to the
3477           get_state function so we abort the wait (instead of waiting for
3478           a timeout) and can immediately re-iterate over all other elements.
3479
3480 2005-05-12  Wim Taymans  <wim@fluendo.com>
3481
3482         * gst/base/Makefile.am:
3483         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
3484         (gst_basesrc_start):
3485         * gst/base/gstbasesrc.h:
3486         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
3487         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
3488         (gst_pushsrc_init), (gst_pushsrc_create):
3489         * gst/base/gstpushsrc.h:
3490         Added is_seekable to BaseSrc
3491         Added simple PushSrc.
3492
3493 2005-05-11  Wim Taymans  <wim@fluendo.com>
3494
3495         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3496         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3497         (gst_element_link_pads), (gst_element_query_position),
3498         (gst_element_query_convert), (intersect_caps_func),
3499         (gst_pad_query_position), (gst_pad_query_convert):
3500         Fix refcounting in utils function.
3501         No point in trying to activate a pad when it's added, it could
3502         be added from the state change function and then we deadlock, the
3503         element has to decide what to do.
3504
3505 2005-05-10  Andy Wingo  <wingo@pobox.com>
3506
3507         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
3508         *all* the arguments.
3509
3510         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
3511         stream lock if it's a FLUSH_DONE; normal flushes don't get the
3512         lock (according to the docs -- if this is wrong change the docs).
3513
3514         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
3515         flush messages in the NULL state.
3516
3517         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
3518         message immediately and return.
3519         (gst_bus_set_flushing): New function. If a bus is flushing, it
3520         flushes out any queued messages and immediately unrefs new
3521         messages. This is so when an element goes to NULL, all of the
3522         unhandled messages coming from it can be freed, and their
3523         references to the element dropped. In other words: message source
3524         ref considered harmful :P
3525
3526         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
3527         we're finished with it.
3528
3529         * gst/gstmessage.c (gst_message_new_state_changed): 
3530
3531 2005-05-10  Wim Taymans  <wim@fluendo.com>
3532
3533         * gst/gstvalue.c: (gst_value_compare_flags),
3534         (gst_value_serialize_flags), (gst_value_deserialize_flags),
3535         (_gst_value_initialize):
3536         Added flags serialize/deserialize/compare code.
3537
3538 2005-05-09  Andy Wingo  <wingo@pobox.com>
3539
3540         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
3541         Intersect the peer's caps with our caps.
3542
3543 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3544
3545         * gst/base/gsttypefindhelper.c: (helper_find_peek):
3546         * gst/elements/gsttypefindelement.c: (find_peek):
3547           Handle negative offsets better. Fixes decodebin.
3548
3549 2005-05-09  Wim Taymans  <wim@fluendo.com>
3550
3551         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
3552         (gst_base_transform_event):
3553         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
3554         Implement accept_caps.
3555         Fix silly lock/unlock mismatch in base class.
3556
3557 2005-05-09  Wim Taymans  <wim@fluendo.com>
3558
3559         * docs/design/draft-push-pull.txt:
3560         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
3561         * gst/elements/gstfilesink.c: (gst_filesink_init),
3562         (gst_filesink_query):
3563         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3564         (gst_type_find_handle_src_query), (find_element_get_length):
3565         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
3566         * gst/gstelement.h:
3567         * gst/gstmessage.c:
3568         * gst/gstmessage.h:
3569         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
3570         (gst_real_pad_get_caps_unlocked),
3571         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
3572         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3573         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
3574         (gst_real_pad_dispose), (gst_real_pad_finalize),
3575         (gst_pad_load_and_link), (gst_pad_save_thyself),
3576         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
3577         (gst_pad_check_pull_range), (gst_pad_pull_range),
3578         (gst_pad_template_get_type), (gst_pad_template_class_init),
3579         (gst_pad_template_init), (gst_pad_template_dispose),
3580         (name_is_valid), (gst_static_pad_template_get),
3581         (gst_pad_template_new), (gst_static_pad_template_get_caps),
3582         (gst_pad_template_get_caps), (gst_pad_set_element_private),
3583         (gst_pad_get_element_private), (gst_pad_start_task),
3584         (gst_pad_pause_task), (gst_pad_stop_task),
3585         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
3586         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
3587         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
3588         (gst_ghost_pad_new):
3589         * gst/gstpad.h:
3590         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
3591         (gst_query_new_position), (gst_query_set_position),
3592         (gst_query_parse_position), (gst_query_new_convert),
3593         (gst_query_set_convert), (gst_query_parse_convert):
3594         * gst/gstquery.h:
3595         * gst/gstqueryutils.c:
3596         * gst/gstqueryutils.h:
3597         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3598         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3599         (gst_queue_handle_src_query):
3600         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3601         (gst_element_query_position), (gst_element_query_convert),
3602         (intersect_caps_func), (gst_pad_query_position),
3603         (gst_pad_query_convert):
3604         * gst/gstutils.h:
3605         * tools/gst-inspect.c: (print_pad_info):
3606         * tools/gst-xmlinspect.c: (print_element_info):
3607         Remove old query functions. Ported old code.
3608         Added position/convert helper functions to gstutils.
3609         Reordered gstpad.c code, grouping relevant things.
3610         Remove gst_message_new(), always need to speficy a specific
3611         message.
3612
3613
3614 2005-05-09  Andy Wingo  <wingo@pobox.com>
3615
3616         * gst/gstiterator.h: Add some includes.
3617
3618         * gst/gstqueryutils.h: Include more headers.
3619
3620         * gst/gstpad.h:
3621         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
3622         some uses of gst_pad_query.
3623
3624         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
3625         NULL out parameters.
3626         (gst_query_new_position): New proc, allocates a new position
3627         query.
3628
3629         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
3630         gstqueryutils.c to the build.
3631
3632         * gst/gststructure.c (gst_structure_set_valist): Implement with
3633         the generic G_VALUE_COLLECT.
3634         
3635 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
3636
3637         * gst/Makefile.am: (gst_headers):
3638         Added gstqueryutils.h to the list of headers to install, that was
3639         a 'nachty' move wingo :)
3640
3641 2005-05-06  Andy Wingo  <wingo@pobox.com>
3642
3643         * gst/gstquery.h
3644         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
3645         GstData, init a memchunk.
3646         (standard_definitions): Add a few query types, deprecate a few.
3647         (gst_query_get_type): New proc.
3648         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
3649         implementation.
3650         (gst_query_new_application, gst_query_get_structure): New public
3651         procs.
3652
3653         * docs/design/draft-query.txt: Removed LINKS from the query types,
3654         because all the rest can be dispatched to other pads -- seemed
3655         ugly to have a query that couldn't be dispatched. internal_links
3656         is fine as a pad method.
3657
3658         * gst/gstpad.h: Add query2 as a pad method, add the new functions
3659         in gstpad.c, but maintain binary compatibility for the moment.
3660         Will fix before 0.9 is out.
3661
3662         * gst/gstqueryutils.c: 
3663         * gst/gstqueryutils.h: New files, implement 3 methods for each
3664         query type: parse_query, parse_response, and set. Probably need an
3665         allocator as well.
3666
3667         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
3668
3669         * gst/elements/gstfilesink.c (gst_filesink_query2):
3670         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
3671         query_types, and formats methods.
3672
3673         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
3674         (gst_pad_set_query2_function): New functions.
3675         (gst_real_pad_init): Set query2_default as the default query2
3676         function. Basically just dispatches to internally linked pads.
3677
3678         Needs review!
3679         
3680         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
3681         without using the atomic operations. Only one thread can possibly
3682         be accessing the data at this point. Changed so as to avoid
3683         gst_atomic operations.
3684
3685 2005-05-06  Wim Taymans  <wim@fluendo.com>
3686
3687         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
3688         Also set caps if we use the fallback buffer alloc.
3689
3690 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
3691
3692         * docs/gst/Makefile.am:
3693         * docs/gst/gstreamer-docs.sgml:
3694         * docs/gst/gstreamer-sections.txt:
3695         * docs/gst/tmpl/gstatomic.sgml:
3696         * docs/gst/tmpl/gstmemchunk.sgml:
3697         * testsuite/elements/struct_i386.h:
3698         * win32/GStreamer.vcproj:
3699         * win32/Makefile:
3700           Purge GstAtomic stuff from docs and win32 makefiles as well
3701
3702 2005-05-06  Wim Taymans  <wim@fluendo.com>
3703
3704         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
3705         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
3706         * gst/gstpad.c: (gst_pad_peer_get_caps):
3707         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3708         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3709         (gst_queue_src_activate), (gst_queue_change_state):
3710         * gst/gstqueue.h:
3711         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3712         (intersect_caps_func):
3713         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
3714         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
3715         Some fixes for the peer_get_caps() change.
3716
3717 2005-05-06  Wim Taymans  <wim@fluendo.com>
3718
3719         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
3720         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
3721         (gst_basesink_activate):
3722         Actually do something with error codes returned from the push
3723         functions.
3724
3725 2005-05-06  Wim Taymans  <wim@fluendo.com>
3726
3727         * docs/design/part-element-sink.txt:
3728         * docs/design/part-element-source.txt:
3729         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3730         (gst_basesink_event), (gst_basesink_activate):
3731         * gst/base/gstbasesink.h:
3732         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
3733         (gst_basesrc_activate):
3734         * gst/base/gstbasesrc.h:
3735         * gst/gstelement.c: (gst_element_pads_activate):
3736         Some more documentation.
3737         Fixed scheduling decision in _pads_activate().
3738
3739 2005-05-05  Andy Wingo  <wingo@pobox.com>
3740
3741         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
3742         the test suite.
3743
3744 2005-05-05  Wim Taymans  <wim@fluendo.com>
3745
3746         * gst/base/Makefile.am:
3747         * gst/base/gstbasesink.h:
3748         * gst/base/gstbasesrc.c: (gst_basesrc_init),
3749         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
3750         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
3751         (gst_collectpads_class_init), (gst_collectpads_init),
3752         (gst_collectpads_finalize), (gst_collectpads_new),
3753         (gst_collectpads_set_function), (gst_collectpads_add_pad),
3754         (find_pad), (gst_collectpads_remove_pad),
3755         (gst_collectpads_is_active), (gst_collectpads_collect),
3756         (gst_collectpads_collect_range), (gst_collectpads_start),
3757         (gst_collectpads_stop), (gst_collectpads_peek),
3758         (gst_collectpads_pop), (gst_collectpads_available),
3759         (gst_collectpads_read), (gst_collectpads_flush),
3760         (gst_collectpads_chain):
3761         * gst/base/gstcollectpads.h:
3762         * gst/elements/Makefile.am:
3763         * gst/elements/gstelements.c:
3764         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3765         (gst_fakesink_get_times), (gst_fakesink_event),
3766         (gst_fakesink_preroll), (gst_fakesink_render):
3767         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
3768         (gst_filesink_init), (gst_filesink_set_location),
3769         (gst_filesink_open_file), (gst_filesink_close_file),
3770         (gst_filesink_pad_query), (gst_filesink_event),
3771         (gst_filesink_render), (gst_filesink_change_state):
3772         * gst/elements/gstfilesink.h:
3773         Added object to help in making collect pad based elements.
3774         Ported filesink.
3775         Make event function in sink baseclass return gboolean.
3776
3777 2005-05-05  Wim Taymans  <wim@fluendo.com>
3778
3779         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
3780         (gst_bin_get_by_name):
3781         * gst/gstbuffer.h:
3782         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
3783         (gst_clock_finalize):
3784         * gst/gstdata.c: (gst_data_replace):
3785         * gst/gstdata.h:
3786         * gst/gstelement.c: (gst_element_request_pad),
3787         (gst_element_pads_activate):
3788         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
3789         (gst_object_unref):
3790         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3791         (gst_pad_set_checkgetrange_function),
3792         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
3793         (gst_pad_check_pull_range), (gst_pad_pull_range),
3794         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3795         (gst_pad_pause_task), (gst_pad_stop_task):
3796         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3797         (gst_element_request_pad), (gst_pad_proxy_getcaps):
3798         Fix name lookup in GstBin.
3799         Added _data_replace() function and _buffer_replace()
3800         Use finalize method to clean up clock.
3801         Fix refcounting on request pads.
3802         Fix pad schedule mode error.
3803         Some more object refcounting debug info,
3804
3805
3806 2005-05-04  Andy Wingo <wingo@pobox.com>
3807
3808         * check/Makefile.am:
3809         * docs/gst/tmpl/gstatomic.sgml:
3810         * docs/gst/tmpl/gstplugin.sgml:
3811         * gst/base/gstbasesink.c: (gst_basesink_activate):
3812         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
3813         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
3814         (gst_basesrc_query), (gst_basesrc_set_property),
3815         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
3816         (gst_basesrc_activate):
3817         * gst/base/gstbasesrc.h:
3818         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
3819         (gst_base_transform_src_activate):
3820         * gst/elements/gstelements.c:
3821         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3822         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
3823         * gst/elements/gsttee.c: (gst_tee_sink_activate):
3824         * gst/elements/gsttypefindelement.c: (find_element_get_length),
3825         (gst_type_find_element_checkgetrange),
3826         (gst_type_find_element_activate):
3827         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
3828         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
3829         (gst_caps_load_thyself):
3830         * gst/gstelement.c: (gst_element_pads_activate),
3831         (gst_element_save_thyself), (gst_element_restore_thyself):
3832         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
3833         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
3834         * gst/gstpad.h:
3835         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
3836         (gst_xml_parse_file), (gst_xml_parse_memory),
3837         (gst_xml_get_element), (gst_xml_make_element):
3838         * gst/indexers/gstfileindex.c: (gst_file_index_load),
3839         (_file_index_id_save_xml), (gst_file_index_commit):
3840         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
3841         (read_enum), (load_pad_template), (load_feature), (load_plugin),
3842         (load_paths):
3843         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
3844         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
3845         * tools/gst-complete.c: (main):
3846         * tools/gst-compprep.c: (main):
3847         * tools/gst-inspect.c: (print_element_properties_info):
3848         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
3849         * tools/gst-xmlinspect.c: (print_element_properties):
3850         GCC 4 fixen.
3851         
3852 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
3853
3854         * gst/gstplugin.c: (gst_plugin_check_module),
3855         (gst_plugin_check_file), (gst_plugin_load_file):
3856             apply patch from #172526 to make register work on MacOSX
3857
3858 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3859
3860         * docs/gst/tmpl/gstconfig.sgml:
3861         * gst/gstconfig.h.in:
3862           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
3863         * testsuite/debug/printf_extension.c: (main):
3864           Do not use GST_PTR_FORMAT on pointers to types with
3865           sizeof < sizeof(gpointer).  Fixes test on 64-bit
3866         * testsuite/elements/property.h:
3867           use correct printf format
3868
3869 2005-05-02  Wim Taymans  <wim@fluendo.com>
3870
3871         * docs/design/draft-push-pull.txt:
3872         * docs/design/draft-query.txt:
3873         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
3874         (gst_basesrc_start):
3875         Added draft for new query API.
3876         Added draft for better selecting scheduling methods.
3877         Make basesrc ignore length if the subclass does not support
3878         it.
3879
3880 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3881
3882         * gst/Makefile.am:
3883           possible fixes for automake-1.5 - _LIBADD is reserved
3884
3885 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3886
3887         * docs/faq/Makefile.am:
3888         * docs/manual/Makefile.am:
3889         * docs/manuals.mak:
3890         * docs/pwg/Makefile.am:
3891         * gst/Makefile.am:
3892           possible fixes for automake-1.5
3893
3894 2005-04-28  Wim Taymans  <wim@fluendo.com>
3895
3896         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3897         (gst_basesink_pad_getcaps), (gst_basesink_init),
3898         (gst_basesink_do_sync):
3899         * gst/gstclock.c: (gst_clock_entry_new):
3900         * gst/gstevent.c: (gst_event_discont_get_value):
3901         * gst/gstpipeline.c: (pipeline_bus_handler),
3902         (gst_pipeline_change_state):
3903         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
3904         Better debugging of clocking info.
3905         Allow NULL values when getting discont values.
3906
3907 2005-04-27  Wim Taymans  <wim@fluendo.com>
3908
3909         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
3910         * check/gst/gstpad.c: (gst_pad_suite):
3911         Increase timeout for checks.
3912
3913 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3914
3915         * check/Makefile.am:
3916           fix the broken rule for cleanup.  Apparently this rule is
3917           only needed on FC2, so maybe this warrants further autotool
3918           inspection.
3919
3920 2005-04-26  Wim Taymans  <wim@fluendo.com>
3921
3922         * gst/gsttrashstack.h:
3923         Ooohh. a nasty one! After having a failed pop() from the stack,
3924         it's possible that the stack is empty. In that case, don't
3925         follow the NULL pointer.
3926
3927 2005-04-25  Wim Taymans  <wim@fluendo.com>
3928
3929         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3930         (gst_pad_set_checkgetrange_function),
3931         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
3932         (gst_pad_check_pull_range), (gst_pad_pull_range),
3933         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3934         (gst_pad_pause_task), (gst_pad_stop_task):
3935         * gst/gstplugin.c: (gst_plugin_load):
3936         * gst/gstplugin.h:
3937         Remove gst_library_load as it does more harm than good with
3938         the new g_module flags.
3939         Revert bogus caps template check in pad linking, pad caps
3940         are important when linking not the template, which is more
3941         general than the current caps.
3942
3943 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3944
3945         * gst/autoplug/.cvsignore:
3946         * gst/autoplug/Makefile.am:
3947         * gst/autoplug/gstsearchfuncs.c:
3948         * gst/autoplug/gstsearchfuncs.h:
3949         * gst/autoplug/gstspider.c:
3950         * gst/autoplug/gstspider.h:
3951         * gst/autoplug/gstspideridentity.c:
3952         * gst/autoplug/gstspideridentity.h:
3953         * gst/autoplug/spidertest.c:
3954           Die, spider, die.
3955
3956 2005-04-25  Wim Taymans  <wim@fluendo.com>
3957
3958         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3959         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3960         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
3961         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
3962         * gst/gstpad.h:
3963         Added stubs for unimplemented functions. 
3964
3965 2005-04-24  David Schleef  <ds@schleef.org>
3966
3967         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
3968         please fix.
3969
3970 2005-04-24  David Schleef  <ds@schleef.org>
3971
3972         Convert everything from GstAtomicInt to g_atomic_int_*, and
3973         remove gstatomic.
3974         * gst/Makefile.am:
3975         * gst/gstatomic.c:
3976         * gst/gstatomic.h:
3977         * gst/gstatomic_impl.h:
3978         * gst/gstbuffer.c:
3979         * gst/gstcaps.c:
3980         * gst/gstcaps.h:
3981         * gst/gstclock.c:
3982         * gst/gstclock.h:
3983         * gst/gstdata.c:
3984         * gst/gstdata.h:
3985         * gst/gstdata_private.h:
3986         * gst/gstevent.c:
3987         * gst/gstinfo.c:
3988         * gst/gstinfo.h:
3989         * gst/gstmessage.c:
3990         * gst/gstobject.c:
3991         * gst/gstobject.h:
3992         * gst/gststructure.c:
3993         * gst/gststructure.h:
3994         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
3995         * gst/gstutils.h:
3996
3997 2005-04-24  David Schleef  <ds@schleef.org>
3998
3999         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
4000         make the regressions tests work.  Remove some code that is no
4001         longer true.
4002         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
4003         Disable warning for pads without templates.
4004
4005 2005-04-24  David Schleef  <ds@schleef.org>
4006
4007         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
4008         functions that handle filtered links.
4009         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
4010         removed functions.
4011         * gst/gstutils.c: Fix/remove utility functions that handle
4012         filtered caps.
4013         * gst/gstutils.h:
4014         * gst/gstvalue.c: Add serialization/deserialization of caps
4015         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
4016         requires fixing so that the filter caps notation creates
4017         a capsfilter element and sets the filter_caps property.  I
4018         think everyone probably wants to keep the shorthand notation.
4019         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
4020         * docs/gst/tmpl/gstpad.sgml:
4021
4022         * gst/elements/gstelements.c: Register capsfilter element.
4023         * gst/Makefile.am: fix spacing
4024         * docs/random/ds/0.9-suggested-changes: random
4025
4026 2005-04-23  David Schleef  <ds@schleef.org>
4027
4028         * gst/elements/Makefile.am:
4029         * gst/elements/gstcapsfilter.c: New element that acts like an
4030         identity, but filters caps.  Will eventually replace filtered
4031         caps in pad linking.
4032         * gst/gstutils.c: (gst_element_create_all_pads): New function
4033         to create all the ALWAYS pads that are registered with an
4034         element class.  This functionality should eventually be
4035         merged in with GstElement initialization.
4036         * gst/gstutils.h:
4037         * testsuite/trigger/README: part of trigger test code that should
4038         have been checked in a long time ago.
4039
4040 2005-04-23  David Schleef  <ds@schleef.org>
4041
4042         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
4043         needed with new versions of libtool (nobody will confirm this),
4044         and hard to carry around.
4045         * gst/autoplug/Makefile.am:
4046         * gst/base/Makefile.am:
4047         * gst/elements/Makefile.am:
4048         * gst/indexers/Makefile.am:
4049         * gst/schedulers/Makefile.am:
4050         * libs/gst/bytestream/Makefile.am:
4051         * libs/gst/control/Makefile.am:
4052         * libs/gst/dataprotocol/Makefile.am:
4053         * libs/gst/getbits/Makefile.am:
4054
4055 2005-04-21  Wim Taymans  <wim@fluendo.com>
4056
4057         * docs/design/draft-push-pull.txt:
4058         * docs/design/part-MT-refcounting.txt:
4059         * docs/design/part-TODO.txt:
4060         * docs/design/part-caps.txt:
4061         * docs/design/part-events.txt:
4062         * docs/design/part-gstbus.txt:
4063         * docs/design/part-gstpipeline.txt:
4064         * docs/design/part-messages.txt:
4065         * docs/design/part-push-pull.txt:
4066         * docs/design/part-query.txt:
4067         Some more docs.
4068
4069 2005-04-21  Wim Taymans  <wim@fluendo.com>
4070
4071         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
4072         (gst_message_new), (gst_message_new_error),
4073         (gst_message_new_warning), (gst_message_new_tag),
4074         (gst_message_new_state_changed), (gst_message_new_application),
4075         (gst_message_get_structure):
4076         * gst/gstmessage.h:
4077         * gst/gststructure.c: (gst_structure_set_parent_refcount),
4078         (gst_structure_copy_conditional):
4079         Use parent refcount in GstMessage to ensure GstStructure
4080         consistency.
4081         Cleaned up headers a bit.
4082         
4083
4084 2005-04-20  Wim Taymans  <wim@fluendo.com>
4085
4086         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4087         (gst_basesink_pad_getcaps), (gst_basesink_init),
4088         (gst_basesink_chain_unlocked):
4089         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
4090         (gst_type_find_helper):
4091         * gst/elements/gsttypefindelement.c:
4092         (gst_type_find_element_have_type), (gst_type_find_element_init),
4093         (stop_typefinding), (gst_type_find_element_handle_event),
4094         (find_suggest), (gst_type_find_element_chain),
4095         (gst_type_find_element_checkgetrange),
4096         (gst_type_find_element_getrange), (do_typefind),
4097         (gst_type_find_element_activate):
4098         * gst/gstbuffer.c: (_gst_buffer_sub_free),
4099         (gst_buffer_default_free), (gst_buffer_default_copy),
4100         (gst_buffer_set_caps):
4101         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
4102         (gst_caps_replace):
4103         * gst/gstmessage.c: (gst_message_new),
4104         (gst_message_new_state_changed):
4105         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4106         (gst_pad_set_checkgetrange_function),
4107         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
4108         (gst_pad_set_caps), (gst_pad_check_pull_range),
4109         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
4110         * gst/gstpad.h:
4111         * gst/gsttypefind.c: (gst_type_find_register):
4112         Make gst_caps_replace() work like other _replace() functions.
4113         Use _caps_replace() where possible.
4114         Make sure _message_new() initialises its field.
4115         Add gst_static_pad_template_get_caps()
4116
4117
4118 2005-04-18  Andy Wingo  <wingo@pobox.com>
4119
4120         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
4121         on the peer, not the pad. I think that was a typo. Pass an extra
4122         arg to see if random access is possible. Activate the pads as
4123         PULL_RANGE if possible.
4124
4125         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
4126
4127         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
4128         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
4129         to PROP_....
4130
4131 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4132
4133         * docs/faq/using.xml:
4134           Add note on gstreamer-properties (#154996).
4135
4136 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4137
4138         * docs/random/bbb/optional-properties:
4139           Some analysis on optional properties.
4140
4141 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4142
4143         * docs/gst/tmpl/gstelementfactory.sgml:
4144         * gst/gstelement.h:
4145         * gst/gstelementfactory.c: (gst_element_factory_init),
4146         (gst_element_factory_cleanup), (gst_element_register),
4147         (__gst_element_factory_add_static_pad_template),
4148         (gst_element_factory_get_static_pad_templates),
4149         (gst_element_factory_can_src_caps),
4150         (gst_element_factory_can_sink_caps):
4151         * gst/registries/Makefile.am:
4152         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
4153         (gst_xml_registry_class_init), (gst_xml_registry_init),
4154         (gst_xml_registry_new), (gst_xml_registry_set_property),
4155         (gst_xml_registry_get_property), (get_time), (make_dir),
4156         (gst_xml_registry_get_perms_func),
4157         (plugin_times_older_than_recurse), (plugin_times_older_than),
4158         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
4159         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
4160         (add_to_char_array), (read_string), (read_uint), (read_enum),
4161         (load_pad_template), (load_feature), (load_plugin), (load_paths),
4162         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
4163         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
4164         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
4165         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
4166         (gst_xml_registry_rebuild):
4167         * gst/registries/gstlibxmlregistry.h:
4168         * tools/gst-compprep.c: (main):
4169         * tools/gst-inspect.c: (print_pad_templates_info):
4170         * tools/gst-xmlinspect.c: (print_element_info):
4171           Use libxml2 for registry parsing, use staticpadtemplates in
4172           elementfactories. Makes gst_init() +/- 10x faster.
4173
4174 2005-04-12  Wim Taymans  <wim@fluendo.com>
4175
4176         * gst/base/Makefile.am:
4177         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4178         (gst_basesink_pad_getcaps), (gst_basesink_init),
4179         (gst_basesink_event), (gst_basesink_change_state):
4180         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4181         (gst_basesrc_init), (gst_basesrc_query),
4182         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
4183         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
4184         (gst_basesrc_check_get_range), (gst_basesrc_loop),
4185         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
4186         (gst_basesrc_stop), (gst_basesrc_activate),
4187         (gst_basesrc_change_state):
4188         * gst/base/gsttypefindhelper.c: (helper_find_peek),
4189         (helper_find_suggest), (gst_type_find_helper):
4190         * gst/base/gsttypefindhelper.h:
4191         * gst/elements/Makefile.am:
4192         * gst/elements/gstelements.c:
4193         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
4194         (gst_fakesink_get_times), (gst_fakesink_event),
4195         (gst_fakesink_preroll), (gst_fakesink_render):
4196         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4197         (gst_fakesrc_init), (gst_fakesrc_event_handler),
4198         (gst_fakesrc_get_property), (gst_fakesrc_create),
4199         (gst_fakesrc_start), (gst_fakesrc_stop):
4200         * gst/elements/gstfakesrc.h:
4201         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
4202         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
4203         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
4204         (gst_filesrc_create_read), (gst_filesrc_create),
4205         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
4206         (gst_filesrc_start):
4207         * gst/elements/gsttypefindelement.c:
4208         (gst_type_find_element_have_type), (gst_type_find_element_init),
4209         (start_typefinding), (stop_typefinding), (push_buffer_store),
4210         (gst_type_find_element_handle_event),
4211         (gst_type_find_element_chain),
4212         (gst_type_find_element_checkgetrange),
4213         (gst_type_find_element_getrange), (do_typefind),
4214         (gst_type_find_element_activate),
4215         (gst_type_find_element_change_state):
4216         * gst/elements/gsttypefindelement.h:
4217         * gst/gstpipeline.c: (pipeline_bus_handler):
4218         Added typefind helper.
4219         Small preroll fix in the base sink.
4220         Disable typefind code in basesrc.
4221         Crude port of typefindelement.
4222         Fakesrc cleanups.
4223
4224
4225 2005-04-11  Wim Taymans  <wim@fluendo.com>
4226
4227         * check/gst/gstbus.c: (gstbus_suite):
4228         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
4229         * check/gstcheck.h:
4230           Fix up the timeout so that the test does not fail.
4231
4232 2005-04-06  Wim Taymans  <wim@fluendo.com>
4233
4234         * gst/base/README:
4235         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4236         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
4237         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
4238         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
4239         (gst_basesrc_check_get_range), (gst_basesrc_loop),
4240         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
4241         (gst_basesrc_stop), (gst_basesrc_activate),
4242         (gst_basesrc_change_state), (basesrc_find_peek),
4243         (basesrc_find_suggest), (gst_basesrc_type_find):
4244         * gst/base/gstbasesrc.h:
4245         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
4246         (gst_filesrc_class_init), (gst_filesrc_init),
4247         (gst_filesrc_finalize), (gst_filesrc_set_location),
4248         (gst_filesrc_set_property), (gst_filesrc_get_property),
4249         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
4250         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
4251         (gst_filesrc_create_read), (gst_filesrc_create),
4252         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
4253         * gst/elements/gstfilesrc.h:
4254         * gst/gstelement.c: (gst_element_get_state_func),
4255         (gst_element_lost_state), (gst_element_pads_activate):
4256         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4257         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
4258         (gst_pad_pull_range):
4259         * gst/gstpad.h:
4260         More work on the generic source base class, implement seeking,
4261         query.
4262         Make filesrc extend the base source class.
4263         Added gst_pad_set_checkgetrange_function to GstPad.
4264
4265 2005-04-06  Andy Wingo  <wingo@pobox.com>
4266
4267         * pkgconfig/gstreamer-base.pc.in:
4268         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
4269
4270         * pkgconfig/Makefile.am:
4271         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
4272
4273 2005-04-04  Wim Taymans  <wim@fluendo.com>
4274
4275         * gst/base/Makefile.am:
4276         * gst/base/README:
4277         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4278         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4279         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4280         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
4281         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4282         (gst_basesrc_base_init), (gst_basesrc_class_init),
4283         (gst_basesrc_init), (gst_basesrc_get_formats),
4284         (gst_basesrc_get_query_types), (gst_basesrc_query),
4285         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
4286         (gst_basesrc_set_property), (gst_basesrc_get_property),
4287         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
4288         (gst_basesrc_loop), (gst_basesrc_activate),
4289         (gst_basesrc_change_state):
4290         * gst/base/gstbasesrc.h:
4291         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
4292         (gst_fakesrc_class_init), (gst_fakesrc_init),
4293         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
4294         (gst_fakesrc_get_property), (gst_fakesrc_create):
4295         * gst/elements/gstfakesrc.h:
4296         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
4297         (gst_filesrc_open_file), (gst_filesrc_loop),
4298         (gst_filesrc_activate), (filesrc_find_peek),
4299         (gst_filesrc_type_find):
4300         Made base source class, make fakesrc extend it.
4301         Add comments to basesink class.
4302         Some filesrc cleanup.
4303
4304 2005-03-31  David Schleef  <ds@schleef.org>
4305
4306         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
4307         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
4308         expected to link against libgstreamer.
4309         * gst/base/Makefile.am: link against libgstreamer
4310         * gst/elements/Makefile.am: same
4311
4312 2005-03-31  Andy Wingo  <wingo@pobox.com>
4313
4314         * tests/instantiate/Makefile.am:
4315         * tests/instantiate/caps.c: Add test to test speed of caps copy
4316         and free.
4317
4318         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
4319         GMemChunk to be fair.
4320
4321         * gst/gsttrashstack.h: Remove warning about using the fallback
4322         trash stack implementation, it's still faster than malloc.
4323
4324 2005-03-30  Andy Wingo  <wingo@pobox.com>
4325
4326         * tests/complexity.c: Add a copyright.
4327
4328 2005-03-31  Wim Taymans  <wim@fluendo.com>
4329
4330         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
4331         (gst_base_transform_class_init), (gst_base_transform_init),
4332         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
4333         (gst_base_transform_get_property),
4334         (gst_base_transform_sink_activate),
4335         (gst_base_transform_src_activate),
4336         (gst_base_transform_change_state):
4337         * gst/base/gstbasetransform.h:
4338         * gst/elements/gstidentity.c: (gst_identity_class_init),
4339         (gst_identity_event), (gst_identity_check_perfect),
4340         (gst_identity_transform), (gst_identity_start),
4341         (gst_identity_stop):
4342         Added start/stop methods to transform base class so subclasses 
4343         don't need to deal with state changes even.
4344
4345 2005-03-31  Wim Taymans  <wim@fluendo.com>
4346
4347         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
4348         (gst_event_new_discontinuous), (gst_event_discont_get_value):
4349         * gst/gstevent.h:
4350         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4351         (gst_pad_pull_range):
4352         Added rate to the discont event to prepare for variable speed
4353         and reverse playback.
4354
4355 2005-03-29  David Schleef  <ds@schleef.org>
4356
4357         * configure.ac:
4358         * testsuite/trigger/Makefile.am:
4359         * testsuite/trigger/trigger.c: A little example program to show
4360         how trigger-based elements can work.
4361
4362 2005-03-29  Wim Taymans  <wim@fluendo.com>
4363
4364         * gst/base/Makefile.am:
4365         * gst/base/README:
4366         * gst/base/gstbasesink.c: (gst_basesink_get_type),
4367         (gst_basesink_base_init), (gst_basesink_class_init),
4368         (gst_basesink_pad_getcaps), (gst_basesink_init),
4369         (gst_basesink_activate), (gst_basesink_change_state):
4370         * gst/base/gstbasesink.h:
4371         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
4372         (gst_base_transform_base_init), (gst_base_transform_finalize),
4373         (gst_base_transform_class_init), (gst_base_transform_init),
4374         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
4375         (gst_base_transform_event), (gst_base_transform_getrange),
4376         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
4377         (gst_base_transform_set_property),
4378         (gst_base_transform_get_property),
4379         (gst_base_transform_sink_activate),
4380         (gst_base_transform_src_activate),
4381         (gst_base_transform_change_state):
4382         * gst/base/gstbasetransform.h:
4383         * gst/elements/gstidentity.c: (gst_identity_finalize),
4384         (gst_identity_class_init), (gst_identity_init),
4385         (gst_identity_event), (gst_identity_check_perfect),
4386         (gst_identity_transform), (gst_identity_set_property),
4387         (gst_identity_get_property), (gst_identity_change_state):
4388         * gst/elements/gstidentity.h:
4389         * gst/gstelement.c: (gst_element_get_state_func),
4390         (gst_element_lost_state), (gst_element_pads_activate):
4391         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4392         (gst_pad_check_pull_range), (gst_pad_pull_range):
4393         * gst/gstpad.h:
4394         Simplify pad activation.
4395         Added function to check if pull_range can be performed.
4396         Error out when pulling inactive or flushing pads.
4397         Removed const from refcounted types as it does not make sense.
4398         Simplify pad templates in basesink
4399         Added base class for simple 1-to-1 transforms.
4400         Make identity subclass the base transform.
4401
4402 2005-03-29  Andy Wingo  <wingo@pobox.com>
4403
4404         * docs/libs/gstreamer-libs-overrides.txt: 
4405         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
4406         really don't understand what's going on, but like whatever. I want
4407         green buildbot!
4408
4409         * docs/gst/Makefile.am:
4410         * docs/libs/Makefile.am: Dist the overrides files.
4411
4412         * check/Makefile.am (clean-local): Remove .libs directories.
4413
4414         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
4415         elements to EXTRA_DIST, so po/ files are happy.
4416
4417         * po/POTFILES.in: Er, remove it here.
4418
4419         * po/POTFILES: Remove gstspider.c.
4420
4421         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
4422
4423         * docs/libs/gstreamer-libs-docs.sgml: 
4424         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
4425         bytestream.
4426
4427         * tests/complexity.c (main): Set the length of the preroll queue
4428         on the sinks to prevent a lockup.
4429
4430         * libs/gst/dataprotocol/Makefile.am: 
4431         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
4432         the same as the one in check/gst-libs/gdp.c.
4433
4434         * po/, docs/gst/: Commit automatic changes to docs and po files.
4435
4436         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
4437         the versioned libgstbase.
4438
4439         * check/Makefile.am: Depend on an unversioned gst-register, seems
4440         to make autoconf happier.
4441
4442         * gst/base/Makefile.am: Make libgstbase a versioned lib.
4443
4444 2005-03-28  Wim Taymans  <wim@fluendo.com>
4445
4446         * configure.ac:
4447         * docs/design/part-gstelement.txt:
4448         * docs/design/part-negotiation.txt:
4449         * docs/design/part-preroll.txt:
4450         * docs/design/part-scheduling.txt:
4451         * docs/design/part-states.txt:
4452         * gst/Makefile.am:
4453         * gst/base/Makefile.am:
4454         * gst/base/README:
4455         * gst/base/gstbasesink.c: (gst_basesink_get_template),
4456         (gst_basesink_base_init), (gst_basesink_class_init),
4457         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4458         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4459         (gst_basesink_set_pad_functions),
4460         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
4461         (gst_basesink_set_property), (gst_basesink_get_property),
4462         (gst_base_sink_get_template), (gst_base_sink_get_caps),
4463         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
4464         (gst_basesink_preroll_queue_push),
4465         (gst_basesink_preroll_queue_empty),
4466         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
4467         (gst_basesink_event), (gst_basesink_get_times),
4468         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
4469         (gst_basesink_chain_unlocked), (gst_basesink_chain),
4470         (gst_basesink_loop), (gst_basesink_activate),
4471         (gst_basesink_change_state):
4472         * gst/base/gstbasesink.h:
4473         * gst/elements/Makefile.am:
4474         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
4475         (gst_fakesink_class_init), (gst_fakesink_init),
4476         (gst_fakesink_set_property), (gst_fakesink_get_property),
4477         (gst_fakesink_get_times), (gst_fakesink_event),
4478         (gst_fakesink_preroll), (gst_fakesink_render),
4479         (gst_fakesink_change_state):
4480         * gst/elements/gstfakesink.h:
4481         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4482         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
4483         * gst/gstelement.c: (gst_element_add_pad),
4484         (gst_element_get_state_func), (gst_element_abort_state),
4485         (gst_element_commit_state), (gst_element_lost_state),
4486         (gst_element_set_state), (gst_element_pads_activate):
4487         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
4488         * gst/gstpipeline.c: (gst_pipeline_send_event),
4489         (gst_pipeline_change_state):
4490         Added state change code.
4491         Added/updated docs.
4492         Added sink base class, make fakesink extend the base class.
4493         Small cleanups in GstPipeline.
4494
4495 2005-03-26  David Schleef  <ds@schleef.org>
4496
4497         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
4498         is broken and should be implemented in a different library.
4499         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
4500         * gst/gst.h: remove gstcpu.h
4501         * gst/gstcpu.c: remove
4502         * gst/gstcpu.h: remove
4503         * gst/Makefile.am.future: Remove this file.  It's ancient.
4504
4505 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4506
4507         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4508         (gst_bin_send_event):
4509           Add default event/set_manager handlers. The set_manager handler
4510           takes care that the manager is distributed over kids that were
4511           already in the bin before the manager was set. The event handler
4512           is a utility virtual function that sends the event over all sinks,
4513           so that gst_element_send_event (bin, event); has the expected
4514           behaviour.
4515         * gst/gstpad.c: (gst_pad_event_default):
4516           Re-install default event handling for discontinuities, so that
4517           seeking works without requiring hacks in applications or extra
4518           code in sinks.
4519         * gst/gstpipeline.c: (gst_pipeline_class_init),
4520         (gst_pipeline_send_event):
4521           Half hack, half utility: set a pipeline to PAUSED for seek events,
4522           since that is the only way we can guarantee a/v sync. Means that
4523           you can do gst_element_seek (pipeline, method, pos); on a pipeline
4524           and it "just works".
4525
4526 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4527
4528         * gst/gstpipeline.c: (gst_pipeline_use_clock):
4529           Lock/unlock mismatch.
4530
4531 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
4532
4533         * docs/faq/gst-uninstalled:
4534           add gst-plugins-base
4535         * docs/gst/Makefile.am:
4536           don't error out until docs are fixed
4537         * docs/gst/gstreamer.types:
4538           remove thread
4539
4540 2005-03-22  Wim Taymans  <wim@fluendo.com>
4541
4542         * check/Makefile.am:
4543         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
4544         * gst/gststructure.c: (gst_structure_set_valist),
4545         (gst_structure_copy_conditional):
4546         Activated more tests.
4547         Added message test.
4548         Added G_TYPE_POINTER to GstStructure.
4549         
4550
4551 2005-03-22  Wim Taymans  <wim@fluendo.com>
4552
4553         * docs/design/part-TODO.txt:
4554         * docs/design/part-events.txt:
4555         * docs/design/part-gstbin.txt:
4556         * docs/design/part-gstbus.txt:
4557         * docs/design/part-gstpipeline.txt:
4558         * docs/design/part-messages.txt:
4559         * gst/gstbus.c:
4560         * gst/gstmessage.c:
4561         Docs updates
4562
4563 2005-03-21  Wim Taymans  <wim@fluendo.com>
4564
4565         * gst/gstbus.c: (gst_bus_post):
4566         Fix copy-and-paste error.
4567
4568 2005-03-21  Wim Taymans  <wim@fluendo.com>
4569
4570         * check/Makefile.am:
4571         * gst/Makefile.am:
4572         * gst/elements/Makefile.am:
4573         * gst/elements/gstelements.c:
4574         * gst/elements/gstfakesink.c: (gst_fakesink_init),
4575         (gst_fakesink_event), (gst_fakesink_chain):
4576         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4577         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
4578         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
4579         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
4580         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
4581         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
4582         (gst_fakesrc_loop), (gst_fakesrc_activate),
4583         (gst_fakesrc_change_state):
4584         * gst/elements/gstfakesrc.h:
4585         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
4586         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
4587         (gst_filesrc_open_file), (gst_filesrc_loop),
4588         (gst_filesrc_activate), (gst_filesrc_change_state),
4589         (filesrc_find_peek), (filesrc_find_suggest),
4590         (gst_filesrc_type_find):
4591         * gst/elements/gstidentity.c: (gst_identity_finalize),
4592         (gst_identity_class_init), (gst_identity_init),
4593         (gst_identity_proxy_getcaps), (identity_queue_push),
4594         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
4595         (gst_identity_getrange), (gst_identity_chain),
4596         (gst_identity_sink_loop), (gst_identity_src_loop),
4597         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
4598         (gst_identity_set_property), (gst_identity_get_property),
4599         (gst_identity_change_state):
4600         * gst/elements/gstidentity.h:
4601         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
4602         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
4603         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
4604         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
4605         (gst_tee_sink_activate):
4606         * gst/elements/gsttee.h:
4607         * gst/gst.c: (gst_register_core_elements), (init_post):
4608         * gst/gst.h:
4609         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
4610         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
4611         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
4612         (gst_bin_change_state):
4613         * gst/gstbin.h:
4614         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
4615         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
4616         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
4617         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
4618         (gst_bus_set_sync_handler), (gst_bus_create_watch),
4619         (bus_watch_callback), (bus_watch_destroy),
4620         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
4621         (poll_timeout), (gst_bus_poll):
4622         * gst/gstbus.h:
4623         * gst/gstcaps.h:
4624         * gst/gstdata.h:
4625         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4626         (gst_element_post_message), (gst_element_message_full),
4627         (gst_element_get_state_func), (gst_element_get_state),
4628         (gst_element_abort_state), (gst_element_commit_state),
4629         (gst_element_lost_state), (gst_element_set_state),
4630         (gst_element_pads_activate), (gst_element_change_state),
4631         (gst_element_dispose), (gst_element_set_manager_func),
4632         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
4633         (gst_element_set_manager), (gst_element_get_manager),
4634         (gst_element_set_bus), (gst_element_get_bus),
4635         (gst_element_set_scheduler), (gst_element_get_scheduler):
4636         * gst/gstelement.h:
4637         * gst/gstevent.c: (gst_event_new_segment_seek),
4638         (gst_event_new_flush):
4639         * gst/gstevent.h:
4640         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
4641         (_gst_message_free), (gst_message_get_type), (gst_message_new),
4642         (gst_message_new_eos), (gst_message_new_error),
4643         (gst_message_new_warning), (gst_message_new_tag),
4644         (gst_message_new_state_changed), (gst_message_new_application),
4645         (gst_message_get_structure), (gst_message_parse_tag),
4646         (gst_message_parse_state_changed), (gst_message_parse_error),
4647         (gst_message_parse_warning):
4648         * gst/gstmessage.h:
4649         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
4650         (gst_real_pad_set_property), (gst_pad_set_active),
4651         (gst_pad_is_active), (gst_pad_set_blocked_async),
4652         (gst_pad_set_blocked), (gst_pad_is_blocked),
4653         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
4654         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
4655         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
4656         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
4657         (gst_pad_link_filtered), (gst_pad_relink_filtered),
4658         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
4659         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
4660         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
4661         (gst_pad_set_caps), (gst_pad_configure_sink),
4662         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
4663         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
4664         (gst_real_pad_dispose), (gst_real_pad_finalize),
4665         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
4666         (gst_pad_event_default_dispatch), (gst_pad_event_default),
4667         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
4668         * gst/gstpad.h:
4669         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
4670         (pipeline_bus_handler), (gst_pipeline_change_state),
4671         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
4672         * gst/gstpipeline.h:
4673         * gst/gstprobe.h:
4674         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
4675         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
4676         (gst_queue_link_src), (gst_queue_bufferalloc),
4677         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
4678         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
4679         (gst_queue_loop), (gst_queue_handle_src_event),
4680         (gst_queue_handle_src_query), (gst_queue_src_activate),
4681         (gst_queue_change_state):
4682         * gst/gstqueue.h:
4683         * gst/gstscheduler.c: (gst_scheduler_init),
4684         (gst_scheduler_dispose), (gst_scheduler_create_task),
4685         (gst_scheduler_factory_create):
4686         * gst/gstscheduler.h:
4687         * gst/gststructure.c: (gst_structure_get_type),
4688         (gst_structure_copy_conditional):
4689         * gst/gststructure.h:
4690         * gst/gsttaginterface.h:
4691         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
4692         (gst_task_init), (gst_task_dispose), (gst_task_create),
4693         (gst_task_get_state), (gst_task_start), (gst_task_stop),
4694         (gst_task_pause):
4695         * gst/gsttask.h:
4696         * gst/gstthread.c:
4697         * gst/gstthread.h:
4698         * gst/gsttypes.h:
4699         * gst/schedulers/Makefile.am:
4700         * gst/schedulers/cothreads_compat.h:
4701         * gst/schedulers/entryscheduler.c:
4702         * gst/schedulers/faircothreads.c:
4703         * gst/schedulers/faircothreads.h:
4704         * gst/schedulers/fairscheduler.c:
4705         * gst/schedulers/gstbasicscheduler.c:
4706         * gst/schedulers/gstoptimalscheduler.c:
4707         * gst/schedulers/gthread-cothreads.h:
4708         * gst/schedulers/threadscheduler.c:
4709         (gst_thread_scheduler_task_get_type),
4710         (gst_thread_scheduler_task_class_init),
4711         (gst_thread_scheduler_task_init),
4712         (gst_thread_scheduler_task_start),
4713         (gst_thread_scheduler_task_stop),
4714         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
4715         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
4716         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
4717         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
4718         (plugin_init):
4719         * libs/gst/Makefile.am:
4720         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
4721         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
4722         (gst_file_pad_parent_set):
4723         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
4724         (gst_dp_event_from_packet):
4725         * tests/complexity.c: (main):
4726         * tests/mass_elements.c: (main):
4727         * testsuite/states/locked.c: (message_received), (main):
4728         * testsuite/states/parent.c: (main):
4729         * tools/gst-inspect.c: (print_element_flag_info),
4730         (print_implementation_info), (print_pad_info):
4731         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
4732         (main):
4733         * tools/gst-md5sum.c: (event_loop), (main):
4734         * tools/gst-typefind.c: (main):
4735         * tools/gst-xmlinspect.c: (print_element_info):
4736         Next big merge.
4737         Added GstBus for mainloop integration.
4738         Added GstMessage for sending notifications on the bus.
4739         Added GstTask as an abstraction for pipeline entry points.
4740         Removed GstThread.
4741         Removed Schedulers.
4742         Simplified GstQueue for multithreaded core.
4743         Made _link threadsafe, removed old capsnego.
4744         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
4745         Added pad blocking functions.
4746         Reworked scheduling functions in GstPad to prepare for
4747         scheduling updates soon.
4748         Moved events out of data stream.
4749         Simplified GstEvent types.
4750         Added return values to push/pull.
4751         Removed clocking from GstElement.
4752         Added prototypes for state change function for next merge.
4753         Removed iterate from bins and state change management.
4754         Fixed some elements, disabled others for now.
4755         Fixed -inspect and -launch.
4756         Added check for GstBus.
4757
4758 2005-03-10  Wim Taymans  <wim@fluendo.com>
4759
4760         * docs/design/part-MT-refcounting.txt:
4761         * docs/design/part-clocks.txt:
4762         * docs/design/part-gstelement.txt:
4763         * docs/design/part-gstobject.txt:
4764         * docs/design/part-standards.txt:
4765         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4766         (gst_bin_remove_func), (gst_bin_remove):
4767         * gst/gstbin.h:
4768         * gst/gstbuffer.c:
4769         * gst/gstcaps.h:
4770         * testsuite/clock/clock1.c: (main):
4771         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
4772         (main):
4773         * testsuite/dlopen/loadgst.c: (do_test):
4774         * testsuite/refcounting/bin.c: (add_remove_test1),
4775         (add_remove_test2), (main):
4776         * testsuite/refcounting/element.c: (main):
4777         * testsuite/refcounting/element_pad.c: (main):
4778         * testsuite/refcounting/pad.c: (main):
4779         * tools/gst-launch.c: (sigint_handler_sighandler):
4780         * tools/gst-typefind.c: (main):
4781         Doc updates.
4782         Added doc about clock.
4783         removed gst_bin_iterate_recurse_up(), marked methods
4784         for removal.
4785         Fix more testsuites.
4786
4787 2005-03-09  Wim Taymans  <wim@fluendo.com>
4788
4789         * gst/gstpad.c: (gst_pad_get_direction),
4790         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
4791         (gst_pad_collect_valist):
4792         * testsuite/bins/interface.c: (main):
4793         * testsuite/caps/audioscale.c: (test_caps):
4794         * testsuite/caps/caps.c: (test1), (test2), (test3):
4795         * testsuite/caps/deserialize.c: (main):
4796         * testsuite/caps/enumcaps.c: (main):
4797         * testsuite/caps/filtercaps.c: (main):
4798         * testsuite/caps/intersect2.c: (main):
4799         * testsuite/caps/random.c: (main):
4800         * testsuite/caps/renegotiate.c: (my_fixate), (main):
4801         * testsuite/caps/sets.c: (check_caps):
4802         * testsuite/caps/simplify.c: (check_caps), (main):
4803         * testsuite/caps/subtract.c: (check_caps):
4804         Fix _pad_get_direction wrt ghostpads.
4805         Fix caps testsuite.
4806
4807 2005-03-09  Wim Taymans  <wim@fluendo.com>
4808
4809         * check/Makefile.am:
4810         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
4811         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
4812         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
4813         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
4814         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
4815         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
4816         (gst_bin_remove), (gst_bin_iterate_recurse_up),
4817         (bin_element_is_sink), (gst_bin_iterate_sinks),
4818         (gst_bin_iterate_all_by_interface):
4819         * gst/gstbin.h:
4820         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
4821         (gst_element_change_state), (gst_element_dispose),
4822         (gst_element_finalize), (gst_element_set_loop_function):
4823         * gst/gstelement.h:
4824         * gst/gstiterator.c: (find_custom_fold_func):
4825         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4826         (gst_pad_collectv), (gst_pad_collect_valist),
4827         (gst_pad_template_new):
4828         * gst/gstpipeline.c: (gst_pipeline_class_init),
4829         (gst_pipeline_dispose), (gst_pipeline_set_property),
4830         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
4831         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
4832         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
4833         * gst/gstutils.h:
4834         * gst/schedulers/entryscheduler.c:
4835         * gst/schedulers/gstbasicscheduler.c:
4836         (gst_basic_scheduler_cothreaded_chain),
4837         (gst_basic_scheduler_chain_add_element):
4838         * testsuite/bins/interface.c: (main):
4839         Added GstBin test.
4840         Added GstSystemClock test.
4841         Implemented clock distribution code in GstBin.
4842         Implemented iterate sinks method for future use.
4843         Rearranged gstelement.h
4844         Fix GstIterator comparison bug.
4845         Moved some code to GstPipeline, mostly clocking related.
4846
4847 2005-03-09  Wim Taymans  <wim@fluendo.com>
4848
4849         * configure.ac:
4850         * gst/gst_private.h:
4851         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4852         (gst_bin_remove_func), (gst_bin_remove),
4853         (gst_bin_get_by_name_recurse_up):
4854         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
4855         (gst_clock_id_compare_func), (gst_clock_id_wait),
4856         (gst_clock_id_wait_async), (gst_clock_init),
4857         (gst_clock_adjust_unlocked), (gst_clock_get_time):
4858         * gst/gstelement.h:
4859         * gst/gstinfo.c: (_gst_debug_init):
4860         * gst/gstobject.h:
4861         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4862         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
4863         * gst/gstpad.h:
4864         Bump version number, we're now 0.9.0
4865         Add future debugging category.
4866         Fix NULL _unref() in _get_by_name_recurse_up
4867         Rearrange gstpad.h.
4868         Update some docs.
4869
4870 2005-03-08  Wim Taymans  <wim@fluendo.com>
4871
4872         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
4873         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4874         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
4875         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
4876         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
4877         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
4878         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
4879         * gst/elements/gstidentity.c: (gst_identity_class_init):
4880         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
4881         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
4882         * gst/elements/gstshaper.c: (gst_shaper_class_init):
4883         * gst/elements/gststatistics.c: (gst_statistics_class_init):
4884         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
4885         (gst_tee_link):
4886         * gst/gstelement.c: (gst_element_class_init),
4887         (gst_element_base_class_init), (gst_element_init),
4888         (gst_element_get_random_pad), (gst_element_wait_state_change),
4889         (gst_element_change_state), (gst_element_dispose),
4890         (gst_element_finalize), (gst_element_set_loop_function):
4891         * gst/gstelement.h:
4892         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
4893         * gst/gstthread.c: (gst_thread_class_init),
4894         (gst_thread_release_children_locks), (gst_thread_change_state):
4895         * gst/schedulers/gstbasicscheduler.c:
4896         (gst_basic_scheduler_loopfunc_wrapper),
4897         (gst_basic_scheduler_chain_wrapper),
4898         (gst_basic_scheduler_src_wrapper),
4899         (gst_basic_scheduler_remove_element):
4900         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4901         Remove threadsafe properties. Fix elements because GObject
4902         complains when installing a property before declaring a
4903         set/get_property handler.
4904         Rearrange gstelement.h file, use STATE macros for state locks.
4905         Free mutexes in the finalize method instead of dispose.
4906
4907 2005-03-08  Wim Taymans  <wim@fluendo.com>
4908
4909         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
4910         * gst/gstthread.c: (gst_thread_release_children_locks):
4911         Added parentage check.
4912         Fix build og GstThread again.
4913
4914 2005-03-08  Wim Taymans  <wim@fluendo.com>
4915
4916         * docs/design/part-MT-refcounting.txt:
4917         * docs/design/part-conventions.txt:
4918         * docs/design/part-gstobject.txt:
4919         * docs/design/part-relations.txt:
4920         * docs/design/part-standards.txt:
4921         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4922         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
4923         (gst_bin_get_by_name), (gst_bin_get_by_interface),
4924         (gst_bin_iterate_all_by_interface):
4925         * gst/gstbuffer.h:
4926         * gst/gstclock.h:
4927         * gst/gstelement.c: (gst_element_class_init),
4928         (gst_element_change_state), (gst_element_set_loop_function):
4929         * gst/gstelement.h:
4930         * gst/gstiterator.c:
4931         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
4932         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
4933         (gst_object_dispatch_properties_changed), (gst_object_set_name),
4934         (gst_object_set_parent), (gst_object_unparent),
4935         (gst_object_check_uniqueness):
4936         * gst/gstobject.h:
4937         Docs updates, clean up some headers.
4938
4939 2005-03-07  Wim Taymans  <wim@fluendo.com>
4940
4941         * check/.cvsignore:
4942         * check/Makefile.am:
4943         * check/gst-libs/.cvsignore:
4944         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
4945         * check/gst/.cvsignore:
4946         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
4947         (START_TEST), (gstbus_suite), (main):
4948         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
4949         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
4950         (gst_data_suite), (main):
4951         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
4952         (add_fold_func), (gstiterator_suite), (main):
4953         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
4954         (thread_name_object), (thread_name_object_default),
4955         (gst_object_name_compare), (gst_object_suite), (main):
4956         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
4957         (gst_pad_suite), (main):
4958         * check/gstcheck.c: (gst_check_log_message_func),
4959         (gst_check_log_critical_func), (gst_check_init):
4960         * check/gstcheck.h:
4961         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
4962         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
4963         Added checks.
4964
4965 2005-03-07  Wim Taymans  <wim@fluendo.com>
4966
4967         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
4968         (gst_list_iterator_next), (gst_list_iterator_resync),
4969         (gst_list_iterator_free), (gst_iterator_new_list),
4970         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
4971         (gst_iterator_free), (gst_iterator_push), (filter_next),
4972         (filter_resync), (filter_uninit), (filter_free),
4973         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
4974         (gst_iterator_foreach), (find_custom_fold_func),
4975         (gst_iterator_find_custom):
4976         * gst/gstiterator.h:
4977         Added missing files.
4978
4979 2005-03-07  Wim Taymans  <wim@fluendo.com>
4980
4981         * Makefile.am:
4982         * configure.ac:
4983         * docs/design/part-MT-refcounting.txt:
4984         * docs/design/part-conventions.txt:
4985         * docs/design/part-gstobject.txt:
4986         * docs/design/part-relations.txt:
4987         * examples/mixer/mixer.c: (main):
4988         * examples/thread/thread.c: (eos), (main):
4989         * gst/Makefile.am:
4990         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
4991         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
4992         (gst_spider_plug_from_srcpad):
4993         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
4994         (gst_spider_identity_change_state),
4995         (gst_spider_identity_sink_loop_type_finding):
4996         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
4997         * gst/elements/gstidentity.c: (gst_identity_init):
4998         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
4999         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
5000         * gst/elements/gsttypefindelement.c: (free_entry):
5001         * gst/gst.c:
5002         * gst/gst.h:
5003         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
5004         (gst_bin_set_clock_func), (gst_bin_auto_clock),
5005         (gst_bin_set_index), (gst_bin_set_element_sched),
5006         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
5007         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
5008         (gst_bin_iterate_elements), (iterate_child_recurse),
5009         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
5010         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
5011         (compare_interface), (gst_bin_get_by_interface),
5012         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
5013         * gst/gstbin.h:
5014         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
5015         (gst_buffer_default_free), (gst_buffer_default_copy),
5016         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
5017         (gst_buffer_create_sub):
5018         * gst/gstbuffer.h:
5019         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
5020         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
5021         (gst_caps_unref), (gst_static_caps_get),
5022         (gst_caps_remove_and_get_structure), (gst_caps_append),
5023         (gst_caps_append_structure), (gst_caps_remove_structure),
5024         (gst_caps_copy_nth), (gst_caps_set_simple),
5025         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
5026         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
5027         (gst_caps_structure_intersect_field), (gst_caps_intersect),
5028         (gst_caps_structure_subtract_field), (gst_caps_subtract),
5029         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
5030         (gst_caps_structure_figure_out_union),
5031         (gst_caps_switch_structures), (gst_caps_do_simplify),
5032         (gst_caps_replace), (gst_caps_from_string),
5033         (gst_caps_copy_conditional):
5034         * gst/gstcaps.h:
5035         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
5036         (_gst_clock_id_free), (gst_clock_id_unref),
5037         (gst_clock_id_compare_func), (gst_clock_id_wait),
5038         (gst_clock_id_wait_async), (gst_clock_class_init),
5039         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
5040         (gst_clock_get_time), (gst_clock_set_time_adjust),
5041         (gst_clock_set_property), (gst_clock_get_property):
5042         * gst/gstclock.h:
5043         * gst/gstcompat.h:
5044         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
5045         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
5046         * gst/gstdata.h:
5047         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
5048         (gst_element_requires_clock), (gst_element_provides_clock),
5049         (gst_element_set_clock), (gst_element_clock_wait),
5050         (gst_element_wait), (gst_element_set_time_delay),
5051         (gst_element_is_indexable), (gst_element_add_pad),
5052         (gst_element_add_ghost_pad), (gst_element_remove_pad),
5053         (pad_compare_name), (gst_element_get_static_pad),
5054         (gst_element_request_pad), (gst_element_get_request_pad),
5055         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
5056         (gst_element_class_get_pad_template_list),
5057         (gst_element_class_get_pad_template), (gst_element_error_func),
5058         (gst_element_get_random_pad), (gst_element_get_event_masks),
5059         (gst_element_send_event), (gst_element_seek),
5060         (gst_element_get_query_types), (gst_element_query),
5061         (gst_element_get_formats), (gst_element_convert),
5062         (gst_element_is_locked_state), (gst_element_set_locked_state),
5063         (gst_element_sync_state_with_parent), (gst_element_change_state),
5064         (gst_element_finalize), (gst_element_yield),
5065         (gst_element_interrupt), (gst_element_set_scheduler),
5066         (gst_element_get_scheduler), (gst_element_set_loop_function):
5067         * gst/gstelement.h:
5068         * gst/gstevent.h:
5069         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
5070         (gst_format_get_by_nick), (gst_format_get_details),
5071         (gst_format_iterate_definitions):
5072         * gst/gstformat.h:
5073         * gst/gstindex.c: (gst_index_gtype_resolver):
5074         * gst/gstinfo.c:
5075         * gst/gstinfo.h:
5076         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
5077         (gst_mem_chunk_free):
5078         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
5079         (gst_object_ref), (gst_object_unref), (gst_object_sink),
5080         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
5081         (gst_object_dispatch_properties_changed),
5082         (gst_object_set_name_default), (gst_object_set_name),
5083         (gst_object_get_name), (gst_object_set_name_prefix),
5084         (gst_object_get_name_prefix), (gst_object_set_parent),
5085         (gst_object_get_parent), (gst_object_unparent),
5086         (gst_object_check_uniqueness), (gst_object_save_thyself),
5087         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
5088         (gst_object_set_property), (gst_object_get_property),
5089         (gst_object_get_path_string):
5090         * gst/gstobject.h:
5091         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
5092         (gst_real_pad_init), (gst_real_pad_get_property),
5093         (gst_pad_custom_new), (gst_pad_get_direction),
5094         (gst_pad_set_active), (gst_pad_is_active),
5095         (gst_pad_set_event_function), (gst_pad_is_linked),
5096         (gst_pad_link_free), (gst_pad_link_intersect),
5097         (gst_pad_link_fixate), (gst_pad_set_caps),
5098         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
5099         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
5100         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
5101         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
5102         (gst_pad_get_caps), (gst_pad_peer_get_caps),
5103         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
5104         (gst_pad_realize), (gst_pad_get_allowed_caps),
5105         (gst_real_pad_dispose), (gst_real_pad_finalize),
5106         (gst_pad_collectv), (gst_pad_collect_valist),
5107         (gst_pad_template_dispose), (gst_pad_template_new),
5108         (gst_pad_get_internal_links):
5109         * gst/gstpad.h:
5110         * gst/gstpipeline.c: (gst_pipeline_dispose),
5111         (gst_pipeline_change_state):
5112         * gst/gstpipeline.h:
5113         * gst/gstplugin.c:
5114         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
5115         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
5116         * gst/gstpluginfeature.h:
5117         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5118         * gst/gstquery.c: (_gst_query_type_initialize),
5119         (gst_query_type_register), (gst_query_type_get_by_nick),
5120         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
5121         * gst/gstquery.h:
5122         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
5123         * gst/gstscheduler.c: (gst_scheduler_add_element),
5124         (gst_scheduler_factory_create):
5125         * gst/gststructure.c: (gst_structure_set_parent_refcount),
5126         (gst_structure_free), (gst_structure_set_name),
5127         (gst_structure_id_set_value), (gst_structure_set_value),
5128         (gst_structure_set_valist), (gst_structure_remove_field),
5129         (gst_structure_remove_fields),
5130         (gst_structure_remove_fields_valist),
5131         (gst_structure_remove_all_fields), (gst_structure_foreach),
5132         (gst_structure_map_in_place),
5133         (gst_caps_structure_fixate_field_nearest_int),
5134         (gst_caps_structure_fixate_field_nearest_double):
5135         * gst/gststructure.h:
5136         * gst/gstsystemclock.c: (gst_system_clock_class_init),
5137         (gst_system_clock_init), (gst_system_clock_dispose),
5138         (gst_system_clock_async_thread),
5139         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
5140         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
5141         * gst/gstsystemclock.h:
5142         * gst/gsttag.c: (gst_tag_list_add_value_internal),
5143         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
5144         * gst/gsttaginterface.c:
5145         * gst/gstthread.c: (gst_thread_dispose),
5146         (gst_thread_release_children_locks), (gst_thread_change_state),
5147         (gst_thread_main_loop):
5148         * gst/gsttrashstack.h:
5149         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
5150         * gst/gsttypes.h:
5151         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
5152         (gst_element_request_pad), (gst_element_get_pad_from_template),
5153         (gst_element_request_compatible_pad),
5154         (gst_element_get_compatible_pad_filtered),
5155         (gst_element_get_compatible_pad), (gst_element_state_get_name),
5156         (gst_element_link_pads_filtered), (gst_element_link_filtered),
5157         (gst_element_link_many), (gst_element_link),
5158         (gst_element_link_pads), (gst_element_unlink_pads),
5159         (gst_element_unlink_many), (gst_element_unlink),
5160         (gst_pad_can_link_filtered), (gst_pad_can_link),
5161         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
5162         (gst_object_default_error), (gst_bin_add_many),
5163         (gst_bin_remove_many), (gst_element_populate_std_props),
5164         (gst_element_class_install_std_props), (gst_buffer_merge),
5165         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
5166         (link_fold_func), (gst_pad_proxy_setcaps):
5167         * gst/gstutils.h:
5168         * gst/gstvalue.c: (gst_value_deserialize_string):
5169         * gst/parse/grammar.y:
5170         * gst/schedulers/gstbasicscheduler.c:
5171         (gst_basic_scheduler_cothreaded_chain),
5172         (gst_basic_scheduler_chain_recursive_add),
5173         (gst_basic_scheduler_pad_link):
5174         * gst/schedulers/gstoptimalscheduler.c:
5175         (get_group_schedule_function),
5176         (gst_opt_scheduler_state_transition),
5177         (gst_opt_scheduler_add_element), (element_get_reachables_func):
5178         * libs/gst/bytestream/bytestream.c:
5179         * libs/gst/dataprotocol/dataprotocol.c:
5180         (gst_dp_header_from_buffer):
5181         * po/nb.po:
5182         * po/ru.po:
5183         * tests/threadstate/threadstate2.c: (eos):
5184         * tools/gst-compprep.c: (main):
5185         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
5186         (print_pad_info), (print_children_info):
5187         * tools/gst-launch.c: (idle_func), (main):
5188         * tools/gst-md5sum.c: (idle_func), (main):
5189         * tools/gst-xmlinspect.c: (print_element_info):
5190         First THREADED backport attempt, focusing on adding locks and
5191         making sure the API is threadsafe. Needs more work. More docs
5192         follow this week.
5193
5194 2005-02-24  Andy Wingo  <wingo@pobox.com>
5195
5196         * tests/bench-complexity.scm:
5197         * tests/complexity.gnuplot: New files, good for running complexity
5198         benchmarks.
5199
5200         * tests/Makefile.am:
5201         * tests/complexity.c: New test, sets up N elements, at each level
5202         teeing into M streams per element. Eeeenteresting.
5203
5204         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
5205         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
5206         running bench-mass_elements.scm.
5207
5208         * tests/bench-mass_elements.scm: New script, runs mass_elements
5209         for various numbers of identities, outputting the results to a
5210         file. Requires guile 1.6. Just for testing.
5211
5212 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5213
5214         * gst/schedulers/fairscheduler.c:
5215           compile with debug disabled
5216
5217 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
5218
5219         * configure.ac:
5220           hunting season on 0.9 is now OPEN
5221
5222 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
5223
5224         * docs/libs/tmpl/gstcontrol.sgml:
5225         * docs/libs/tmpl/gstdparam.sgml:
5226         * docs/libs/tmpl/gstdplinint.sgml:
5227         * docs/libs/tmpl/gstdpman.sgml:
5228         * docs/libs/tmpl/gstdpsmooth.sgml:
5229         * docs/libs/tmpl/gstunitconvert.sgml:
5230           more docs for the state of dparams
5231
5232 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5233
5234         * gst/gstelementfactory.c: (gst_element_factory_create):
5235         * gst/gstobject.c: (gst_object_init),
5236         (gst_object_set_name_default), (gst_object_set_name):
5237           name objects by default, not in gst_element_factory_create. Allows
5238           using elements created with g_object_new. (fixes #167283)
5239
5240 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5241
5242         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
5243           make the time that debugging functions print relative to when
5244           gst_init was called
5245
5246 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
5247
5248         * gst/gsttaginterface.c:
5249           Fix inline docs: tag setter vararg functions are NULL-terminated,
5250           GST_TAG_INVALID doesn't exist any more.
5251
5252 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5253
5254         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
5255         Allocate the 1 byte more memory that was forgotten!!!!!
5256         fixes memory corruption on 64bit platforms
5257
5258 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
5259
5260         * docs/pwg/building-pads.xml:
5261         * docs/pwg/intro-basics.xml:
5262           fixed a few typos, relabeled introductionary list of types
5263         * docs/random/ensonic/dparams.txt:
5264           more notes abut dparam changes
5265         * libs/gst/control/dparam.c: (gst_dparam_attach):
5266         * libs/gst/control/dparammanager.c:
5267         * libs/gst/control/dparammanager.h:
5268           - many comments and notes on dparam implementation
5269           - new dparams are were not initialized to the default value
5270             from param spec
5271
5272 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
5273
5274         submitted by: Peter Astakhov
5275
5276         * po/LINGUAS:
5277         * po/ru.po:
5278           adding Russian translation
5279
5280 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5281
5282         * configure.ac:
5283         * docs/gst/Makefile.am:
5284         * docs/libs/Makefile.am:
5285           make sure popt is added to gtk-doc flags.  Fixes #147782.
5286
5287 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
5288
5289         * docs/faq/using.xml:
5290           Fix typo in FAQ (artssink => artsdsink)
5291
5292 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5293
5294         * tools/gst-launch.1.in:
5295           Fix typo (#166699).
5296
5297 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
5298
5299         * docs/faq/using.xml:
5300           Add -v argument to fakesrc/fakesink gst-launch line,
5301           so that the promised output will actually show up.
5302
5303 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5304
5305         * gst/gstthread.c: (gst_thread_change_state):
5306           Implement state-change error handling (#166073).
5307
5308 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5309
5310         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
5311           Release interrupt after handling (#166250).
5312
5313 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5314
5315         * configure.ac:
5316           back to HEAD
5317
5318 === release 0.8.9 ===
5319
5320 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5321
5322         * NEWS:
5323         * RELEASE:
5324         * configure.ac:
5325           releasing 0.8.9, "Like Eating Glass"
5326
5327 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5328
5329         submitted by: Clytie Siddall
5330
5331         * po/vi.po: Added Vietnamese translation
5332
5333 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5334
5335         patch by: Tim Philipp-Müller
5336
5337         * configure.ac:
5338         * gst/gstpad.c:
5339           unref data when probe function returns FALSE.  Fixes #166362
5340
5341 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5342
5343         * gst/gst.c: (gst_init_get_popt_table):
5344           Fix typo (#166269).
5345
5346 2005-02-04  Andy Wingo  <wingo@pobox.com>
5347
5348         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
5349         the debugging on whether the caps are compatible.
5350
5351 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5352
5353         * docs/manual/basics-elements.xml:
5354           Fix two typos.
5355
5356 2005-02-02  Wim Taymans  <wim@fluendo.com>
5357
5358         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
5359         (schedule_chain), (get_invalid_call), (chain_invalid_call),
5360         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
5361         Remove some FIXMEs after analysing and commenting why they
5362         are not issues.
5363
5364 2005-02-02  Wim Taymans  <wim@fluendo.com>
5365
5366         * gst/schedulers/gstoptimalscheduler.c:
5367         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
5368         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
5369         (get_invalid_call), (chain_invalid_call),
5370         (get_group_schedule_function), (loop_group_schedule_function),
5371         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
5372         (gst_opt_scheduler_state_transition),
5373         (gst_opt_scheduler_add_element),
5374         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
5375         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
5376         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
5377         (gst_opt_scheduler_show):
5378         Added lock to protect scheduler data structures.
5379
5380 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5381
5382         * testsuite/threads/threadi.c: (cb_data):
5383           Fix buglet in test.
5384
5385 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5386
5387         * testsuite/threads/Makefile.am:
5388         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
5389           On Wim's request, split the test in three separately-compiled
5390           tests that each test a very specific bug. Two of them still fail,
5391           will create bugs for those. threadi.c indicates why they fail.
5392
5393 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5394
5395         * gst/schedulers/gstoptimalscheduler.c:
5396         (get_group_schedule_function):
5397           Try to work with the threading mess that queue_link is.
5398
5399 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5400
5401         * gst/gstbin.c: (gst_bin_remove_func):
5402           Explicitely make an element release locks in a group when being
5403           remove from a bin.
5404         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
5405           If there's no scheduler, always return immediately (similar to
5406           gst_element_interrupt).
5407
5408 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5409
5410         * gst/gstbin.c: (gst_bin_child_state_change_func):
5411           Remove a piece of code that could never be reached.
5412         * docs/gst/gstreamer-sections.txt:
5413         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
5414         (gst_pad_call_get_function):
5415         * gst/gstpad.h:
5416         * testsuite/pad/Makefile.am:
5417           Fix #150546, enable tests.
5418
5419 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5420
5421         * docs/pwg/advanced-types.xml:
5422           Fix description for buffer-frames=0.
5423         * docs/gst/tmpl/gstbin.sgml:
5424         * gst/gstbin.c: (gst_bin_child_state_change_func),
5425         (gst_bin_change_state), (gst_bin_change_state_norecurse):
5426         * gst/gstbin.h:
5427         * testsuite/threads/Makefile.am:
5428         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
5429         (cb_state), (cb_play), (main):
5430           Fix non-recursive state changes to *really* change the state
5431           of the object, and not just call parent_class->state_change.
5432           Fix a lot of lockups caused by this. Fixes #132775. Add test
5433           for the problem. Also enable test to show #142588 (fixed).
5434         * gst/gstthread.c: (gst_thread_change_state),
5435         (gst_thread_child_state_change):
5436           Don't exit the thread if we go to NULL and are inside thread
5437           context. Instead, return control to the main thread context
5438           and exit from there.
5439         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
5440           Don't unset virtual functions, since those may still be used.
5441           That's not necessarily correct, but suffices for now.
5442         * configure.ac:
5443         * testsuite/Makefile.am:
5444         * testsuite/pad/Makefile.am:
5445         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
5446         (gst_test_sink_base_init), (gst_test_sink_chain),
5447         (gst_test_sink_init), (main):
5448         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
5449         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
5450         (main):
5451         * testsuite/pad/link.c: (gst_test_element_class_init),
5452         (gst_test_element_base_init), (gst_test_src_get),
5453         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
5454         (gst_test_filter_loop), (gst_test_filter_init),
5455         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
5456         (cb_error), (main):
5457           Add tests to show #150546. Pass, but should fail (currently
5458           disabled from the testsuite).
5459         * gst/gstscheduler.c: (gst_scheduler_dispose):
5460           Dereference child schedulers on dispose (#94464).
5461         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
5462           Fix typo.
5463         * testsuite/threads/thread.c: (main):
5464           Add more debug.
5465
5466 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5467
5468         * gst/gstpad.c: (gst_pad_push):
5469           Oops, revert previous commit, broke testsuite...
5470
5471 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5472
5473         * gst/gstpad.c: (gst_pad_push):
5474           Add check that the pad on which the push is performed is not a
5475           get-based pad (#150546).
5476
5477 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5478
5479         * gst/elements/gsttypefindelement.c:
5480         (gst_type_find_element_handle_event):
5481           Fix buffer pushing if stream EOSes during typefinding.
5482
5483 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
5484
5485         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5486
5487         * gst/gstvalue.c: (gst_string_wrap):
5488           Allow NULL-strings as argument (#165365).
5489
5490 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
5491
5492         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5493
5494         * gst/schedulers/faircothreads.c:
5495         (gst_fair_scheduler_cothread_queue_show):
5496           Fix build without debug enabled.
5497
5498 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
5499
5500         * docs/gst/gstreamer-sections.txt:
5501         * docs/libs/gstreamer-libs-docs.sgml:
5502         * docs/libs/gstreamer-libs-sections.txt:
5503         * docs/libs/tmpl/gstcontrol.sgml:
5504         * docs/libs/tmpl/gstdparam.sgml:
5505         * docs/libs/tmpl/gstdplinint.sgml:
5506         * docs/libs/tmpl/gstdpman.sgml:
5507         * docs/libs/tmpl/gstdpsmooth.sgml:
5508         * docs/libs/tmpl/gstputbits.sgml:
5509         * docs/libs/tmpl/gstunitconvert.sgml:
5510         * libs/gst/control/dparam.c:
5511         * libs/gst/control/dparam.h:
5512         * libs/gst/control/dparammanager.c:
5513         (gst_dpman_add_required_dparam_callback),
5514         (gst_dpman_add_required_dparam_direct),
5515         (gst_dpman_add_required_dparam_array),
5516         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
5517         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
5518         (gst_dpman_get_manager)
5519           restructured DParam docs
5520
5521 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
5522
5523         * gst-element-check.m4:
5524           Only check for gst-inspect if we haven't already
5525           found it in previous element check runs
5526
5527 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
5528
5529         * docs/gst/Makefile.am:
5530         * docs/libs/Makefile.am:
5531           fixed install rules to treat style.css as optional
5532
5533 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
5534
5535         * docs/gst/Makefile.am:
5536         * docs/libs/Makefile.am:
5537           install style.css along with docs
5538         * docs/gst/tmpl/gstbin.sgml:
5539         * docs/gst/tmpl/gstclock.sgml:
5540         * docs/gst/tmpl/gstdata.sgml:
5541         * docs/gst/tmpl/gstelement.sgml:
5542         * gst/gstbin.h:
5543         * gst/gstelement.c: (gst_element_class_init):
5544         * gst/gstelement.h:
5545           fixing incomplete docs
5546
5547 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
5548
5549         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5550           Don't unref seek event twice when fflush() fails
5551           
5552 2005-01-22  David Schleef  <ds@schleef.org>
5553
5554         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
5555
5556 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
5557
5558         * docs/gst/Makefile.am:
5559         * docs/libs/Makefile.am:
5560           added params for deprecation guards
5561         * gst/gst.c:
5562         * gst/gst.h:
5563         * gst/gsterror.c: (_gst_resource_errors_init),
5564         (_gst_stream_errors_init):
5565         * gst/gsterror.h:
5566           documented some more enums
5567
5568 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
5569         * gst/autoplug/gstspideridentity.c:
5570         Cosmetic fix - spider_find_peek should be static
5571         * gst/parse/parse.l:
5572         Applying fix for #164261
5573
5574 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
5575
5576         * docs/gst/gstreamer-sections.txt:
5577         * docs/gst/tmpl/gstplugin.sgml:
5578         * docs/libs/gstreamer-libs-sections.txt:
5579         * docs/libs/tmpl/gstcontrol.sgml:
5580         * gst/gstbuffer.h:
5581         * gst/gsttag.h:
5582         * gst/gstvalue.c:
5583           added docs for the TAG defines
5584
5585 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5586
5587         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
5588           Only unref entry if there is an entry.
5589
5590 2005-01-17  Wim Taymans  <wim@fluendo.com>
5591
5592         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5593         (remove_from_group), (schedule_group), (normalize_group),
5594         (gst_opt_scheduler_iterate):
5595         Also ref/unref decoupled elements before iterating the
5596         group since they are not added to the list of elements.
5597
5598 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5599
5600         * docs/manual/highlevel-components.xml:
5601           Add subtitle/streamselection as new features to playbin.
5602
5603 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5604
5605         * docs/manual/manual.xml:
5606           Re-enable dataaccess docs (oops).
5607
5608 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5609
5610         * docs/pwg/advanced-types.xml:
5611         * docs/random/mimetypes:
5612           Add documentation on libsndfile types (#163309), by Steve Baker
5613           <steve@stevebaker.org>.
5614         * gst/gstelement.c: (gst_element_release_request_pad):
5615           If an element has no explicit function, just remove the pad.
5616
5617 2005-01-17  Luca Ognibene  <luogni@tin.it>
5618
5619         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5620
5621         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
5622           Fix memleak (#163801).
5623
5624 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5625
5626         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
5627           I think this is actually more correct...
5628
5629 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5630
5631         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5632           Another workaround for memory access while destroyed in callback.
5633           Please, someone with refcount knowledge, have a look at this.
5634
5635 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5636
5637         * docs/faq/faq.xml:
5638         * docs/faq/legal.xml:
5639           move the legal Q&A here
5640
5641 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5642
5643         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
5644         (gst_tee_request_new_pad):
5645           Fix negotiation.
5646
5647 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5648
5649         * docs/random/omega/caps2:
5650         * testsuite/caps/caps_strings:
5651           replace framerate aproximations by their real value
5652           (24000/1001, 30000/1001, 60000/1001)
5653           Partially fixes bug #164049
5654
5655 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5656
5657         * docs/gst/Makefile.am:
5658           don't fail on the stupid GstPoptOption
5659
5660 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5661
5662         * gst/gstpad.h:
5663         * gst/gstprobe.c:
5664           allow probes to work on ghost pads by realizing the pad
5665           probe debugging
5666
5667 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5668
5669         * docs/gst/gstreamer-sections.txt:
5670         * docs/gst/tmpl/gstpad.sgml:
5671         * gst/gstpad.c: (gst_pad_set_active_recursive):
5672         * gst/gstpad.h:
5673           Add gst_pad_set_active_recursive().
5674
5675 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5676
5677         * docs/random/release:
5678           updates
5679         * gst/gst_private.h:
5680         * gst/gstinfo.c:
5681         * gst/gstobject.c:
5682           move deep_notify logging to a new category
5683         * gst/gstprobe.c:
5684         * gst/gstprobe.h:
5685           add stuff so bindings can wrap probes
5686
5687 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5688
5689         * gst/gstplugin.c: (gst_plugin_load):
5690           Fix plugin loading if plugin/lib was already loaded. Fixes
5691           #163383
5692
5693 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
5694
5695         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5696
5697         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
5698           Protect plugin loading by a mutex so it's threadsafe. Fixes
5699           #163234.
5700
5701 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5702
5703         * gst/gstevent.c: (_gst_event_copy):
5704           Reference source object when copying events, since it'll be
5705           dereferenced on event dereferencing as well.
5706
5707 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5708
5709         * docs/gst/gstreamer-sections.txt:
5710         * docs/gst/tmpl/gstevent.sgml:
5711         * gst/gstevent.c: (gst_event_new_filler_stamped),
5712         (gst_event_filler_get_duration):
5713         * gst/gstevent.h:
5714           Add two new functions for filler events (which are used to
5715           synchronize streams if one of them is not having any data
5716           for a while) without interrupting the actual data-stream.
5717           Basically a no-op.
5718         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5719         (gst_queue_link_sink), (gst_queue_link_src),
5720         (gst_queue_change_state):
5721           Allow for renegotiation while filled. Required for stream
5722           switching while playing.
5723
5724 2005-01-08  Benjamin Otte  <otte@gnome.org>
5725
5726         * gst/gstelement.c: (gst_element_link_many):
5727           fix up g_return_if_fail's
5728         * po/LINGUAS:
5729         * po/de.po:
5730           add German translation, that was somehow not included
5731
5732 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5733
5734         * docs/random/mimetypes:
5735           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
5736           do not add them to riff-lib as they are not common
5737
5738 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5739
5740         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5741           Check for existence of probe after performing the probe before
5742           re-accessing it to prevent segfaults caused by removal of the
5743           probe in the callback.
5744
5745 2005-01-05  David Schleef  <ds@schleef.org>
5746
5747         * testsuite/registry/Makefile.am:
5748         * testsuite/registry/gst-print-formats.c:
5749         (print_pad_templates_info), (print_element_list),
5750         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
5751         (g_list_uniqify), (get_pad_templates_info),
5752         (get_element_mime_list), (print_mime_list), (main): A little
5753         program that looks through the registry to find elements of
5754         a given type.  Not particularly interesting as a test, except
5755         that there's no other test covering the same area.
5756
5757 2005-01-05  David Schleef  <ds@schleef.org>
5758
5759         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
5760         (fault_handler_sigaction), (fault_spin),
5761         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
5762         in signal.h-type signal handlers by not calling forbidden functions,
5763         including gst_element_set_state().
5764
5765 2005-01-05  David Schleef  <ds@schleef.org>
5766
5767         * gst/gstvalue.h: Mark _gst_reserved[] as private
5768
5769 2005-01-05  David Schleef  <ds@schleef.org>
5770
5771         * gst/gstvalue.c: Fix doc build problem.
5772
5773 2005-01-05  David Schleef  <ds@schleef.org>
5774
5775         * gst/gstvalue.c: Add some documentation
5776
5777 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
5778
5779         * docs/README:
5780           another shell oneliner for empty return value docs
5781         * gst/gstcaps.c:
5782         * gst/gstvalue.c:
5783         * libs/gst/control/dparam.c:
5784           more doc fixes (parameters and return values)
5785
5786 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
5787
5788         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5789
5790         * gst/gstregistry.h:
5791         * gst/registries/gstxmlregistry.c:
5792           Fix macro's for Mingw (fixes #162276).
5793
5794 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
5795
5796         * docs/README:
5797           quick shell oneliner to find undocumented members
5798         * docs/gst/tmpl/gstplugin.sgml:
5799         * docs/gst/tmpl/gstscheduler.sgml:
5800         * docs/gst/tmpl/gstthread.sgml:
5801           more enumtypes cleanup
5802         * gst/gsterror.h:
5803           activated documentation comments, now someone needs to document
5804           the enums :(
5805
5806 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5807
5808         * docs/manual/manual.xml:
5809           Add dataaccess part (doh!).
5810
5811 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5812
5813         * docs/manual/advanced-autoplugging.xml:
5814           Fix typo (intiate -> initiate).
5815
5816 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5817
5818         * docs/random/bbb/streamselection:
5819           Add some notes on how to handle multi-subtitle/-audio streams.
5820
5821 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
5822
5823         * docs/gst/gstreamer-docs.sgml:
5824         * docs/gst/gstreamer-sections.txt:
5825         * docs/gst/tmpl/gstenumtypes.sgml:
5826         * docs/gst/tmpl/gsterror.sgml:
5827         * docs/gst/tmpl/gstevent.sgml:
5828         * docs/gst/tmpl/gstpad.sgml:
5829         * docs/gst/tmpl/gstpadtemplate.sgml:
5830         * docs/gst/tmpl/gstthread.sgml:
5831           removed gstenumtypes section from docs and put all the enums into
5832           their sections
5833
5834 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5835
5836         * gst/gstplugin.c:
5837           document gst_library_load a bit more (riff special case + return
5838           value if already loaded)
5839         * testsuite/bytestream/filepadsink.c:
5840           plugin name is 'gstbytestream', not 'bytestream'
5841
5842 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5843
5844         * docs/random/bbb/subtitles:
5845           Add some first mind rumblings on proper subtitle support.
5846
5847 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
5848
5849         * po/ca.po:
5850         * po/sv.po:
5851           updated translations
5852
5853 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5854
5855         * docs/manual/advanced-dataaccess.xml:
5856           Add section on how to use fakesrc/fakesink/identity in your
5857           application, plus section on how to embed plugins. Also mention
5858           probes.
5859         * docs/manual/appendix-checklist.xml:
5860         * docs/manual/appendix-debugging.xml:
5861         * docs/manual/appendix-gnome.xml:
5862         * docs/manual/appendix-integration.xml:
5863           Debug -> checklist, GNOME -> integration, add sections on Linux,
5864           KDE integration and add other things useful for application
5865           development.
5866         * docs/manual/manual.xml:
5867           Remove some fixmes, update some file pointers.
5868         * docs/pwg/appendix-checklist.xml:
5869           Fix typo.
5870         * docs/pwg/building-boiler.xml:
5871           Remove ugly header and add commented fixme.
5872         * docs/pwg/pwg.xml:
5873           Add fixme.
5874         * examples/manual/Makefile.am:
5875           Add example for added docs.
5876
5877 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5878
5879         * configure.ac:
5880           back to HEAD
5881
5882 === release 0.8.8 ===
5883
5884 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5885
5886         * NEWS:
5887         * RELEASE:
5888         * configure.ac:
5889           Releasing 0.8.8, "I'll Take Care Of You"
5890
5891 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5892
5893         * configure.ac:
5894           second prerelease
5895
5896 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5897
5898         patch by: Wim Taymans
5899
5900         * gst/gstbin.c:
5901           Fix for #159852 - make iterate emission threadsafe
5902
5903 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5904
5905         * docs/faq/cvs.xml:
5906           notes about new fdo account request
5907
5908 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
5909
5910         * docs/gst/gstreamer-docs.sgml:
5911         * docs/gst/tmpl/gstenumtypes.sgml:
5912         * docs/gst/tmpl/gstplugin.sgml:
5913         * docs/libs/gstreamer-libs-docs.sgml:
5914           Added missing short docs. Added ids for navigation.
5915
5916 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5917
5918         * docs/manual/advanced-autoplugging.xml:
5919         * docs/manual/advanced-schedulers.xml:
5920         * docs/manual/advanced-threads.xml:
5921           Rewrites. Remove cothreads, go a bit into opt specifically,
5922           document threads and their gotchas, and do some technical stuff
5923           on autoplugging plus add some working examples. Fixes #157395.
5924         * examples/manual/Makefile.am:
5925           Add typefind/autoplugger example (one that actually works).
5926           Remove queue example since it's a duplicate of the thread one.
5927
5928 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5929
5930         * gst/gstvalue.c: (gst_value_deserialize_string):
5931           use deprecated g_value_set_string_take_ownership to keep compatible
5932           with glib 2.2
5933
5934 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5935
5936         * gst/gstvalue.c: (gst_value_deserialize_string):
5937           revert last patch, only dom a g_utf8_validate now before accepting
5938           the string - caps parsing strips " from strings so we can't rely on
5939           them
5940         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5941           disable a test that tested the above and comment it
5942
5943 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
5944
5945         Patch reviewed by David Schleef  <ds@schleef.org>
5946
5947         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
5948         bug #153882)
5949         * win32/gstenumtypes.h: same
5950
5951 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5952
5953         * gst/gstpad.c: (gst_pad_query):
5954           Do query on realized pad, similar to how convert/send_event handle
5955           this. Also makes sense, since this pad belongs to the function to
5956           which this query will be sent. Fixes #158163.
5957
5958 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
5959
5960         * docs/manual/appendix-programs.xml: fix pipeline to actually work
5961
5962 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5963
5964         * docs/faq/general.xml: fix pipeline to actually work
5965
5966 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5967
5968         * gst/gstvalue.c: (gst_value_deserialize_string):
5969           check that a simple string that gets deserialized does not contain
5970           invalid characters
5971         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5972           remove a test that tested a wring behaviour
5973
5974 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
5975
5976         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5977
5978         * docs/manual/intro-motivation.xml:
5979           Fix typos.
5980
5981 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
5982
5983         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5984
5985         * docs/gst/tmpl/gstprobe.sgml:
5986           Fix documentation of probe callback - it is supposed to return
5987           FALSE, not TRUE, to remove data from the stream (#159087).
5988
5989 2004-12-16  Daniel Gazard  <dany42@free.fr>
5990
5991         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5992
5993         * gst/gstelementfactory.c: (gst_element_factory_create):
5994           Fix compile failure if compiling without libxml2 support (#149936).
5995
5996 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5997
5998         * docs/manual/advanced-autoplugging.xml:
5999         * docs/manual/highlevel-components.xml:
6000           Move spider from autoplugging to components. Autoplugging is for
6001           internals, not for solutions. ;-).
6002
6003 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6004
6005         * docs/random/ds/0.9-suggested-changes:
6006           Make note on device/location/uri property names.
6007
6008 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6009
6010         * docs/manual/advanced-autoplugging.xml:
6011         * docs/manual/advanced-clocks.xml:
6012         * docs/manual/advanced-interfaces.xml:
6013         * docs/manual/advanced-metadata.xml:
6014         * docs/manual/advanced-position.xml:
6015         * docs/manual/advanced-schedulers.xml:
6016         * docs/manual/advanced-threads.xml:
6017         * docs/manual/appendix-gnome.xml:
6018         * docs/manual/appendix-programs.xml:
6019         * docs/manual/appendix-quotes.xml:
6020         * docs/manual/autoplugging.xml:
6021         * docs/manual/basics-bins.xml:
6022         * docs/manual/basics-data.xml:
6023         * docs/manual/basics-elements.xml:
6024         * docs/manual/basics-helloworld.xml:
6025         * docs/manual/basics-init.xml:
6026         * docs/manual/basics-pads.xml:
6027         * docs/manual/basics-plugins.xml:
6028         * docs/manual/bins-api.xml:
6029         * docs/manual/bins.xml:
6030         * docs/manual/buffers-api.xml:
6031         * docs/manual/buffers.xml:
6032         * docs/manual/clocks.xml:
6033         * docs/manual/components.xml:
6034         * docs/manual/cothreads.xml:
6035         * docs/manual/debugging.xml:
6036         * docs/manual/dparams-app.xml:
6037         * docs/manual/dynamic.xml:
6038         * docs/manual/elements-api.xml:
6039         * docs/manual/elements.xml:
6040         * docs/manual/factories.xml:
6041         * docs/manual/gnome.xml:
6042         * docs/manual/goals.xml:
6043         * docs/manual/helloworld.xml:
6044         * docs/manual/helloworld2.xml:
6045         * docs/manual/highlevel-components.xml:
6046         * docs/manual/highlevel-xml.xml:
6047         * docs/manual/init-api.xml:
6048         * docs/manual/intro-basics.xml:
6049         * docs/manual/intro-motivation.xml:
6050         * docs/manual/intro-preface.xml:
6051         * docs/manual/intro.xml:
6052         * docs/manual/links-api.xml:
6053         * docs/manual/links.xml:
6054         * docs/manual/manual.xml:
6055         * docs/manual/motivation.xml:
6056         * docs/manual/pads-api.xml:
6057         * docs/manual/pads.xml:
6058         * docs/manual/plugins-api.xml:
6059         * docs/manual/plugins.xml:
6060         * docs/manual/programs.xml:
6061         * docs/manual/queues.xml:
6062         * docs/manual/quotes.xml:
6063         * docs/manual/schedulers.xml:
6064         * docs/manual/states-api.xml:
6065         * docs/manual/states.xml:
6066         * docs/manual/threads.xml:
6067         * docs/manual/typedetection.xml:
6068         * docs/manual/win32.xml:
6069         * docs/manual/xml.xml:
6070           Try 2. This time, include a short preface as a "general
6071           introduction", also add code blocks around all code samples
6072           so they get compiled. We still need a way to tell readers
6073           the filename of the code sample. In some cases, don't show
6074           all code in the documentation, but do include it in the generated
6075           code. This allows for focussing on specific bits in the docs,
6076           while still having a full test application available.
6077         * examples/manual/Makefile.am:
6078           Fix up examples for new ADM. Add several of the new examples that
6079           were either added or were missing from the build system.
6080         * examples/manual/extract.pl:
6081           Allow nameless blocks.
6082
6083 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6084
6085         * docs/manual/elements-api.xml:
6086         * docs/manual/helloworld.xml:
6087         * examples/manual/extract.pl:
6088           fix last example.  Add example of adding code blocks that are not
6089           shown in docbook output.
6090
6091 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6092
6093         * docs/manual/dynamic.xml:
6094         * docs/manual/elements-api.xml:
6095         * docs/manual/gnome.xml:
6096         * docs/manual/helloworld2.xml:
6097         * docs/manual/init-api.xml:
6098         * docs/manual/queues.xml:
6099         * docs/manual/threads.xml:
6100         * docs/manual/xml.xml:
6101         * examples/manual/extract.pl:
6102           Make it possible to extract example code from separate blocks.
6103           Should make Ronald happy.
6104
6105 2004-12-15  Wim Taymans  <wim@fluendo.com>
6106
6107         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6108         (remove_from_group), (group_elements_set_visited),
6109         (normalize_group), (gst_opt_scheduler_iterate):
6110         Fix bug where a flag was not updated on a decoupled entry point 
6111         because we were just checking the group element list and decoupled
6112         elements are not in that list..
6113
6114 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6115
6116         * docs/manual/advanced-autoplugging.xml:
6117         * docs/manual/advanced-clocks.xml:
6118         * docs/manual/advanced-dparams.xml:
6119         * docs/manual/advanced-interfaces.xml:
6120         * docs/manual/advanced-metadata.xml:
6121         * docs/manual/advanced-position.xml:
6122         * docs/manual/advanced-schedulers.xml:
6123         * docs/manual/advanced-threads.xml:
6124         * docs/manual/appendix-debugging.xml:
6125         * docs/manual/appendix-gnome.xml:
6126         * docs/manual/appendix-programs.xml:
6127         * docs/manual/appendix-quotes.xml:
6128         * docs/manual/appendix-win32.xml:
6129         * docs/manual/autoplugging.xml:
6130         * docs/manual/basics-bins.xml:
6131         * docs/manual/basics-data.xml:
6132         * docs/manual/basics-elements.xml:
6133         * docs/manual/basics-helloworld.xml:
6134         * docs/manual/basics-init.xml:
6135         * docs/manual/basics-pads.xml:
6136         * docs/manual/basics-plugins.xml:
6137         * docs/manual/bins-api.xml:
6138         * docs/manual/bins.xml:
6139         * docs/manual/buffers-api.xml:
6140         * docs/manual/buffers.xml:
6141         * docs/manual/clocks.xml:
6142         * docs/manual/components.xml:
6143         * docs/manual/cothreads.xml:
6144         * docs/manual/debugging.xml:
6145         * docs/manual/dparams-app.xml:
6146         * docs/manual/dynamic.xml:
6147         * docs/manual/elements-api.xml:
6148         * docs/manual/elements.xml:
6149         * docs/manual/factories.xml:
6150         * docs/manual/gnome.xml:
6151         * docs/manual/goals.xml:
6152         * docs/manual/helloworld.xml:
6153         * docs/manual/helloworld2.xml:
6154         * docs/manual/highlevel-components.xml:
6155         * docs/manual/highlevel-xml.xml:
6156         * docs/manual/init-api.xml:
6157         * docs/manual/intro-motivation.xml:
6158         * docs/manual/intro-preface.xml:
6159         * docs/manual/intro.xml:
6160         * docs/manual/links-api.xml:
6161         * docs/manual/links.xml:
6162         * docs/manual/manual.xml:
6163         * docs/manual/motivation.xml:
6164         * docs/manual/pads-api.xml:
6165         * docs/manual/pads.xml:
6166         * docs/manual/plugins-api.xml:
6167         * docs/manual/plugins.xml:
6168         * docs/manual/programs.xml:
6169         * docs/manual/queues.xml:
6170         * docs/manual/quotes.xml:
6171         * docs/manual/schedulers.xml:
6172         * docs/manual/states-api.xml:
6173         * docs/manual/states.xml:
6174         * docs/manual/threads.xml:
6175         * docs/manual/typedetection.xml:
6176         * docs/manual/win32.xml:
6177         * docs/manual/xml.xml:
6178           First try at rewriting the ADM. Needs lotsamore work, but some
6179           parts might already be somewhat useful.
6180         * docs/pwg/advanced-interfaces.xml:
6181           Remove properties interface, it never actually existed (except for
6182           on my HD...).
6183
6184 2004-12-13  David Schleef  <ds@schleef.org>
6185
6186         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
6187         be NULL (bug #160220).
6188
6189 2004-12-13  David Schleef  <ds@schleef.org>
6190
6191         * configure.ac: remove all mmx stuff, because it's not used.
6192         * docs/random/ds/0.9-suggested-changes: additional notes
6193         * include/Makefile.am: we don't use these anymore
6194         * include/mmx.h: remove
6195         * include/sse.h: remove
6196
6197 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6198
6199         * docs/random/mimetypes:
6200           Add FOURCC code for h264 codec (VSSH)
6201           Add alternate FOURCC codes for h263 related codecs
6202
6203 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
6204
6205         * docs/manual/programs.xml:
6206           Added more gst-launch examples.
6207
6208 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6209
6210         * gst/gstqueue.c: (gst_queue_handle_src_query):
6211           Check for availability again.
6212
6213 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6214
6215         * gst/gstcaps.c: (gst_caps_compare_structures):
6216           Simple caps go first. This has the nice side-effect of fixing an
6217           obscure warning.
6218
6219 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6220
6221         * gst/gstversion.h.in:
6222           Protect header.
6223
6224 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6225
6226         * gst/schedulers/gstoptimalscheduler.c:
6227         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
6228         (gst_opt_scheduler_get_wrapper):
6229           When we're recursing into a chain run, only run the directly
6230           related group, not all queued ones. This will fix a possible
6231           deadlock in chains with more than two groups.
6232
6233 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6234
6235         * autogen.sh:
6236           remove patch if autopoint fails
6237
6238 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6239
6240         * docs/gst/gstreamer-sections.txt:
6241           Document Thomas' addition, fix build, make Luis the sheriff happy.
6242
6243 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
6244
6245         * gst/gstplugin.c:
6246         * gst/gstplugin.h:
6247           add accessor for version field
6248
6249 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6250
6251         submitted by: Luca Ferretti <elle.uca@infinito.it>
6252
6253         * po/LINGUAS:
6254         * po/it.po:
6255           New tranlation added: Italian
6256
6257 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6258
6259         * gst/gstpad.c: (gst_pad_is_negotiated),
6260         (gst_pad_get_negotiated_caps):
6261           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
6262           it doesn't actually check the contents), so be sure to hand it
6263           a RealPad else we'll crash.
6264
6265 2004-12-03  Wim Taymans  <wim@fluendo.com>
6266
6267         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
6268         (gst_queue_link), (gst_queue_handle_src_query):
6269         Reverted to 1.110 until this makes the testsuite and various
6270         apps work.
6271
6272 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
6273
6274         * docs/upload.mak: fix included CVS conflict strings
6275
6276 2004-12-01  William Jon McCann  <mccann@jhu.edu>
6277
6278         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6279
6280         * gst/gstelement.c: (gst_element_error_full):
6281           Use g_error_new_literal because error text may have
6282           percentage signs in it. Fixes #160019.
6283
6284 2004-12-01  Benjamin Otte  <otte@gnome.org>
6285
6286         * gst/elements/gstbufferstore.c:
6287         (gst_buffer_store_add_buffer_func):
6288           don't try to make subbuffers bigger than they can be. (fixes
6289           #159970)
6290
6291 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6292
6293         * docs/gst/gstreamer-sections.txt:
6294         * docs/gst/tmpl/gstvalue.sgml:
6295           Add new function to docs to fix build.
6296
6297 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6298
6299         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
6300         * gst/gstpad.c: (_gst_pad_default_fixate_value),
6301         (_gst_pad_default_fixate_foreach):
6302         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
6303         * gst/gstvalue.h:
6304           Deprecate _type_is_fixed, use _value_is_fixed instead, since
6305           in some cases (arrays), the fixedness depends on the content.
6306         * gst/gstqueue.c: (gst_queue_handle_src_query):
6307           Check for availability before doing something.
6308
6309 2004-11-29  Wim Taymans  <wim@fluendo.com>
6310
6311         * testsuite/threads/Makefile.am:
6312         * testsuite/threads/signals.c: (gst_test_get_type),
6313         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
6314         (gst_test_set_property), (gst_test_get_property),
6315         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
6316         (gst_test_do_prop), (run_thread), (main):
6317         Added a bunch of testcases that show threadsafety bugs in glib.
6318
6319 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
6320
6321         * docs/manual/programs.xml:
6322           Added a first batch of gst-launch examples, as provided by Ronald
6323           and others from the devel-mlist
6324
6325 2004-11-28  Benjamin Otte  <otte@gnome.org>
6326
6327         * gst/gstelement.c: (gst_element_negotiate_pads):
6328           simplify
6329         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
6330         (gst_value_serialize_string), (gst_value_deserialize_string):
6331           add unwrapping of previously wrapped strings. Fix bug in wrapping
6332           while at it.
6333         * testsuite/caps/value_serialize.c: (test1),
6334         (test_string_serialization), (test_string_deserialization), (main):
6335           add tests for string (de)serialization
6336
6337 2004-11-26  Wim Taymans  <wim@fluendo.com>
6338
6339         * testsuite/threads/159566.c: (object_deep_notify), (main):
6340         * testsuite/threads/Makefile.am:
6341         Added testsuite to show bug #159566
6342
6343 2004-11-25  Wim Taymans  <wim@fluendo.com>
6344
6345         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
6346         (gst_thread_child_state_change), (gst_thread_main_loop):
6347         Ref the thread object in the GThread mainloop. Break out of the
6348         thread mainloop if it holds the last ref. This properly exits
6349         the threads when disposing the thread from its own context. It
6350         also avoids possible deadlocks in the dispose function.
6351
6352 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
6353
6354         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
6355         it is necessary to wait.
6356
6357 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6358
6359         * docs/pwg/building-boiler.xml:
6360           Make description somewhat clearer.
6361
6362 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6363
6364         * docs/upload.mak:
6365           Apparently docs changed location on FDO's server.
6366
6367 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6368
6369         * docs/pwg/appendix-checklist.xml:
6370           Add some random notes on things to check when writing an element.
6371           This list can be extended as people see fit.
6372
6373 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
6374
6375         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
6376         (gst_queue_link_src): Allow for renegotiating the caps of the sink
6377         pad. The queue will now wait until it is empty and forward the new
6378         caps to the source.
6379         * gst/gstbin.c (gst_bin_set_element_sched)
6380         (gst_bin_unset_element_sched): Make sure that all elements and
6381         links are registered and unregistered with the scheduler exactly
6382         once. This elaborates on a fix by Benjamin Otte, but
6383         guarantees that decoupled elements are also registered.
6384
6385 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
6386
6387         * docs/manual/quotes.xml:
6388           add a quote
6389         * configure.ac:
6390         * gst/gst.c:
6391         * gst/gstinfo.c:
6392           add LIBDIR and move init message higher up so it's at the start
6393
6394 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
6395
6396         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
6397         * gstreamer.spec.in: add fair
6398
6399 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6400
6401         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6402         * gst/elements/gstidentity.c: (gst_identity_class_init):
6403           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
6404           <teuf@gnome.org> (#157263).
6405         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
6406         (gst_type_find_handle_src_query):
6407           Subtract size of internally stored data from position queries.
6408
6409 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
6410
6411         * gst/schedulers/fairscheduler.c:
6412         * gst/schedulers/faircothreads.c:
6413         * gst/schedulers/faircothreads.h:
6414         New cothread based scheduler: Fair scheduler.
6415         * gst/schedulers/gthread-cothreads.h: 
6416         Add the standard #if around the whole file.
6417         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
6418         compilation of the functions defined in this file. This is
6419         necessary to be able to use this file as a normal header.
6420         * gst/schedulers/Makefile.am: Add compiling support for fair
6421         scheduler.
6422         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
6423         scheduler cothreads layer from documentation generation.
6424
6425 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6426
6427         * gst/autoplug/gstspideridentity.c:
6428         (gst_spider_identity_sink_loop_type_finding):
6429           Don't crash if that function is not implemented.
6430
6431 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6432
6433         * docs/pwg/advanced-types.xml:
6434           Another typo.
6435
6436 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6437
6438         * docs/pwg/intro-preface.xml:
6439           Hm, ok, so the brackets weren't really useful...
6440         * docs/pwg/other-ntoone.xml:
6441           Fix embarassing typo.
6442
6443 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6444
6445         * docs/pwg/intro-preface.xml:
6446           Rewrite preface.
6447
6448 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6449
6450         * docs/pwg/advanced-scheduling.xml:
6451         * docs/pwg/advanced-tagging.xml:
6452         * docs/pwg/advanced-types.xml:
6453         * docs/pwg/building-boiler.xml:
6454         * docs/pwg/building-chainfn.xml:
6455         * docs/pwg/building-signals.xml:
6456         * docs/pwg/building-state.xml:
6457         * docs/pwg/building-testapp.xml:
6458         * docs/pwg/intro-basics.xml:
6459         * docs/pwg/other-manager.xml:
6460         * docs/pwg/other-source.xml:
6461           Typo fixes.
6462         * docs/pwg/other-manager.xml:
6463           Add some first content. No example code yet.
6464         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
6465           Remove double newlines.
6466
6467 2004-11-04  Wim Taymans  <wim@fluendo.com>
6468
6469         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6470         (remove_from_group), (normalize_group), (group_migrate_connected),
6471         (gst_opt_scheduler_iterate):
6472         * testsuite/schedulers/.cvsignore:
6473         * testsuite/schedulers/Makefile.am:
6474         * testsuite/schedulers/queue_link.c: (main):
6475         Added testcase for scheduler segfault.
6476         Fix scheduler segfault when removing a decoupled
6477         entry point as the last element from a group.
6478
6479 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6480
6481         * gst/gstmarshal.list: add missing marshaller, fixes build
6482
6483 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6484
6485         * docs/random/signal: added notes about using BOXED for GstBuffer
6486         signal marshallers, not POINTER
6487
6488 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6489
6490         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6491         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
6492         POINTER=>BOXED changes to marshal GstBuffers
6493
6494 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6495
6496         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
6497         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
6498
6499 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
6500
6501         * docs/gst/gstreamer-sections.txt:
6502         * docs/gst/tmpl/gstcaps.sgml:
6503         * docs/gst/tmpl/gsterror.sgml:
6504         * docs/gst/tmpl/gstinfo.sgml:
6505         * docs/gst/tmpl/gstmacros.sgml:
6506         * docs/gst/tmpl/gstutils.sgml:
6507         * docs/random/ensonic/interfaces.txt:
6508         * gst/gstinfo.h:
6509           added some more docs, removed two obsolete defines
6510
6511 2004-11-02  Kjartan Maraas <as at gnome.org>
6512
6513         reviewed by: Wim Taymans, Ronald Bultje.
6514
6515         * gst/cothreads.c: (cothread_create):
6516         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
6517         (gst_bin_child_state_change_func):
6518         * gst/gstbuffer.c: (gst_buffer_span):
6519         * gst/gstelement.c: (gst_element_get_index),
6520         (gst_element_get_event_masks), (gst_element_get_query_types),
6521         (gst_element_get_formats):
6522         * gst/gsterror.c: (_gst_core_errors_init),
6523         (_gst_library_errors_init), (_gst_resource_errors_init),
6524         (_gst_stream_errors_init):
6525         * gst/gstobject.c: (gst_object_default_deep_notify):
6526         * gst/gstpad.c: (gst_pad_get_event_masks),
6527         (gst_pad_get_internal_links_default):
6528         * gst/gstplugin.c: (gst_plugin_register_func),
6529         (gst_plugin_get_module):
6530         * gst/gststructure.c: (gst_structure_get_string),
6531         (gst_structure_get_abbrs), (gst_structure_from_abbr),
6532         (gst_structure_to_abbr):
6533         * gst/gstutils.c: (gst_print_element_args):
6534         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6535         (setup_group_scheduler), (gst_opt_scheduler_iterate):
6536         Aplied part of patch #157127: Cleanup of issues reported by 
6537         sparse.
6538         Also do not try to use cothreads when there is no cothread
6539         context yet.
6540
6541 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
6542
6543         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6544         (gst_opt_scheduler_iterate):
6545         Applied patch #154061. Running a pipeline in which an element 
6546         calls GST_ELEMENT_ERROR in the chain function, the opt 
6547         scheduler doesn't unref the chain so it never gets freed.
6548
6549 2004-11-02  Wim Taymans  <wim@fluendo.com>
6550
6551         * gst/gststructure.c: (gst_structure_get_abbrs),
6552         (gst_structure_from_abbr), (gst_structure_to_abbr):
6553         Remove that ugly if-then thing in the code that converts
6554         between strings and types.
6555
6556 2004-11-02  Wim Taymans  <wim@fluendo.com>
6557
6558         * gst/gstscheduler.c: (gst_scheduler_add_element),
6559         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
6560         Aplied clock distribution patch, this should fix bug
6561         #148787.
6562
6563 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
6564
6565         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
6566
6567         * po/LINGUAS:
6568         * po/nb.po:
6569           Added Norwegian Bokmaal translation
6570
6571 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6572
6573         * tools/gst-inspect.c: (print_signal_info):
6574           print signal arguments as pointers if they are
6575
6576 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
6577
6578         * docs/pwg/building-boiler.xml:
6579           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
6580
6581 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6582
6583         * gst/parse/parse.l:
6584         * testsuite/parse/parse1.c: (main):
6585         Since parse can do 'element name=a:b' make 'a:b.' work as
6586         well. 
6587         Added testcase to verify fix.
6588
6589 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6590
6591         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
6592         Use the realpad when printing the direction.
6593         Add extra \n when printing extensions of typefind factories.
6594
6595 2004-10-13  David Schleef  <ds@schleef.org>
6596
6597         * examples/manual/Makefile.am: $< isn't portable in Makefile
6598         rules.
6599
6600 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
6601
6602         * docs/gst/tmpl/gstobject.sgml:
6603         * docs/gst/tmpl/gstplugin.sgml:
6604         * docs/gst/tmpl/gstpluginfeature.sgml:
6605         * docs/gst/tmpl/gstregistry.sgml:
6606         * docs/gst/tmpl/gstversion.sgml:
6607         * gst/gstbin.c:
6608           more api documentation
6609         * gst/gstplugin.c: (gst_plugin_register_func),
6610         (gst_plugin_check_file), (gst_plugin_load_file):
6611           better error signaling and logging
6612
6613 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6614
6615         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
6616           Subtract current queue contents from position queries.
6617
6618 2004-10-11  Johan Dahlin  <johan@gnome.org>
6619
6620         * gst/gsturi.c (gst_uri_get_location): unescape string
6621         (gst_uri_construct): escape string.
6622
6623 2004-10-11  Benjamin Otte  <otte@gnome.org>
6624
6625         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
6626         (gst_pad_try_set_caps_nonfixed):
6627           allow renegotiation of unconnected pads (as inside spider). Simply
6628           return OK if unconnected - mimic try_set_caps there.
6629
6630 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6631
6632         * gst/gstbin.c: (gst_bin_sync_children_state):
6633           Add missing break.
6634
6635 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6636
6637         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
6638         Set element to EOS before sending EOS event
6639
6640 2004-10-08  Wim Taymans  <wim at fluendo dot com>
6641
6642         * gst/elements/gsttypefindelement.c:
6643         (gst_type_find_element_handle_event):
6644         Handle EOS events when doing the transition from
6645         typefind to data passing. This should fix the
6646         infinite loops in short files.
6647
6648 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6649
6650         * gst/gstthread.c: (gst_thread_change_state),
6651         (gst_thread_child_state_change):
6652         Make sure no iteration happens while performing
6653         the state change as it could mess up the internal
6654         consistency of the thread state.
6655
6656 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6657
6658         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
6659         (gst_thread_change_state), (gst_thread_child_state_change):
6660         Do not try to grab the iterate lock in the state change method
6661         when we are in the same thread as the iterate or else we
6662         could deadlock. Some other cleanups.
6663
6664 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6665
6666         * configure.ac:
6667           bump nano to cvs
6668
6669 === release 0.8.7 ===
6670
6671 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6672
6673         * configure.ac:
6674         * NEWS:
6675         * RELEASE:
6676         * configure.ac:
6677           releasing 0.8.7, "A Cruise"
6678
6679 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6680
6681         * docs/random/mimetypes:
6682         Add an entry for Sony ATRAC3 audio format with mime-type
6683         used by rmdemux et riff-read
6684
6685 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6686
6687         * gst/elements/gsttypefindelement.c: (stop_typefinding):
6688         Push the buffer store instead of clearing it in case that
6689         the stream is not seekable.
6690
6691 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6692
6693         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
6694         (gst_thread_main_loop):
6695         Lock the iteration and the state change so that automatic
6696         negotiation and fixation does not happen at the same time
6697         as the in stream negotiation.
6698
6699 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6700
6701         * configure.ac:
6702           bump nano to cvs
6703
6704 === release 0.8.6 ===
6705
6706 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6707
6708         * configure.ac:
6709         * NEWS:
6710         * RELEASE:
6711         * configure.ac:
6712           releasing 0.8.6, "Narc"
6713
6714 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6715
6716         * configure.ac:
6717           prerel bump
6718
6719 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6720
6721         patch by: Steve Lhomme
6722
6723         * gst/elements/gstfakesrc.c:
6724         * gst/elements/gstidentity.c:
6725         * gst/gstthread.c:
6726           Fix for #153881
6727
6728 2004-10-01  Wim Taymans  <wim at fluendo dot com>
6729
6730         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
6731         Fix threadsafety of the crc checking function.
6732
6733 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6734
6735         patch by: Ronald Bultje
6736
6737         * gst/elements/gsttypefindelement.c: (stop_typefinding),
6738         (gst_type_find_element_handle_event),
6739         (gst_type_find_element_chain):
6740         * gst/elements/gsttypefindelement.h:
6741          #153657.
6742          Filter out discont event from seekable sources when typefind
6743          asks them to seek.  Fixes typefind with demuxers for
6744          avi, asf and matroska.
6745
6746 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6747
6748         * docs/gst/gstreamer-sections.txt:
6749         * gst/gstcaps.c:
6750         * gst/gstcaps.h:
6751         * gst/gstpad.c:
6752           Revert preferred caps: (#147789)
6753
6754 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
6755
6756         * win32/dirent.c:
6757           fix a memory leak
6758
6759 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6760
6761         * configure.ac:
6762           bump for prerelease
6763
6764 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6765
6766         * docs/Makefile.am:
6767         * docs/manual/elements-api.xml:
6768           restructure so that common stuff is shown first
6769         * docs/manual/init-api.xml:
6770           convert to examples
6771         * docs/manual/manual.xml:
6772         * docs/manuals.mak:
6773         * docs/url.entities:
6774           link to API on the website, possibly override later in build
6775         * examples/manual/.cvsignore:
6776           ignore more
6777         * examples/manual/Makefile.am:
6778           add more examples
6779         * examples/manual/extract.pl:
6780           error out on failure
6781
6782 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6783
6784         * docs/gst/tmpl/gstthread.sgml:
6785         * docs/manual/init-api.xml:
6786         * examples/manual/Makefile.am:
6787           convert two code bits to examples
6788
6789 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6790
6791         * gst/gstelement.c: (gst_element_change_state):
6792           Well, actually, I was about to remove this insane assert when
6793           I noticed Wim already did that. A warning is nice so we can
6794           fix actual ugs (using --g-fatal-warnings and backtraces), so
6795           I added that instead.
6796
6797 2004-09-06  Wim Taymans  <wim@fluendo.com>
6798
6799         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
6800         (gst_element_threadsafe_properties_post_run),
6801         (gst_element_set_state), (gst_element_change_state):
6802         Added extra refcounting around various places. 
6803
6804 2004-09-06  Wim Taymans  <wim@fluendo.com>
6805
6806         * gst/gstpad.c: (gst_pad_link_call_link_functions):
6807         Fix debug info.
6808
6809 2004-09-06  Wim Taymans  <wim@fluendo.com>
6810
6811         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6812         (remove_from_group):
6813         Some more debug info.
6814
6815 2004-09-03  Wim Taymans  <wim@fluendo.com>
6816
6817         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
6818         (gst_fakesrc_init), (gst_fakesrc_set_clock),
6819         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
6820         (gst_fakesrc_get), (gst_fakesrc_change_state):
6821         * gst/elements/gstfakesrc.h:
6822         * gst/elements/gstidentity.c: (gst_identity_class_init),
6823         (gst_identity_init), (gst_identity_chain),
6824         (gst_identity_set_property), (gst_identity_get_property),
6825         (gst_identity_change_state):
6826         * gst/elements/gstidentity.h:
6827         Added datarate properties to limit the datarate.
6828
6829 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6830
6831         * gst/autoplug/gstspider.c: (plugin_init):
6832           don't set a rank. We don't want to autoplug by inserting spiders.
6833
6834 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6835
6836         * gst/autoplug/gstspider.c: (gst_spider_class_init),
6837         (gst_spider_identity_plug):
6838           add a template for spider's sink
6839         * gst/gst.c: (gst_register_core_elements):
6840           queue's rank should be NULL, we don't want spider to add it.
6841
6842 2004-08-18  David Schleef  <ds@schleef.org>
6843
6844         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
6845         * docs/libs/Makefile.am: same
6846         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
6847         * docs/random/ds/0.9-planning: random additions
6848         * docs/random/ds/0.9-suggested-changes: same
6849         * gst/gstxml.h: remove vestigal GstXMLNs definition
6850
6851         Preferred caps: (#147789)
6852         * docs/gst/gstreamer-sections.txt: Add symbols
6853         * docs/gst/tmpl/gstcaps.sgml: Add symbols
6854         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
6855         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
6856         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
6857         (gst_caps_get_preferred), (gst_caps_set_preferred),
6858         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
6859         (gst_caps_use_preferred): Handle caps preferences
6860         * gst/gstcaps.h: Add caps preferences
6861         * gst/gstpad.c: (gst_pad_link_get_preferred),
6862         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
6863         (gst_pad_renegotiate), (gst_pad_guess_preferred),
6864         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
6865         negotiation.
6866
6867 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6868
6869         * gst/autoplug/gstspideridentity.c:
6870         (gst_spider_identity_request_new_pad):
6871         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
6872         (gst_aggregator_init):
6873         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
6874         (gst_fakesink_init):
6875         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
6876         (gst_fakesrc_init):
6877         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
6878         (gst_fdsink_init):
6879         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
6880         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
6881         (gst_filesink_init):
6882         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
6883         (gst_filesrc_init):
6884         * gst/elements/gstidentity.c: (gst_identity_base_init),
6885         (gst_identity_init):
6886         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
6887         (gst_multifilesrc_init):
6888         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
6889         (gst_pipefilter_init):
6890         * gst/elements/gststatistics.c: (gst_statistics_base_init),
6891         (gst_statistics_init):
6892         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
6893         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
6894           s/gst_pad_new/&_from_template/
6895           register pad templates in the base_init function
6896           add static pad template definitions
6897
6898 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6899
6900         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
6901         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
6902         * testsuite/refcounting/pad.c: (main):
6903         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
6904           s/gst_pad_new/&_from_template/
6905           prepare deprecation of gst_pad_new
6906
6907 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
6908
6909         patch by: Luca Ognibene <skaboy81@virgilio.it>
6910
6911         * gst/gstcaps.c:
6912         * gst/gstelement.c:
6913         * gst/gstpad.c:
6914         * gst/gstxml.c:
6915           fix memleaks.  Fixes #150001
6916
6917 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6918
6919         * docs/random/ds/0.9-suggested-changes:
6920           add notes - mostly about pad templates
6921
6922 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
6923
6924         * win32/GStreamer.vcproj:
6925           temporary locale files are .gmo not .mo
6926
6927 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6928
6929         * configure.ac: bump nano to cvs
6930
6931 === release 0.8.5 ===
6932
6933 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6934
6935         * configure.ac:
6936           releasing 0.8.5, "Stuttgart"
6937         * NEWS:
6938         * RELEASE:
6939         * configure.ac:
6940         * docs/random/release:
6941           updates for release
6942
6943 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6944
6945         patch by: Wim Taymans (wim@fluendo.com)
6946
6947         * gst/gstbuffer.c:
6948         * gst/gstindex.h:
6949         * libs/gst/dataprotocol/dataprotocol.c:
6950           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
6951
6952 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6953
6954         * Makefile.am:
6955         * win32/MANIFEST:
6956           add win32 dir to the build.  Fixes #149981.
6957
6958 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6959
6960         * configure.ac:
6961           bump libtool versioning
6962         * gst/gststructure.c:
6963           mark function as static
6964         * po/af.po:
6965         * po/az.po:
6966         * po/ca.po:
6967         * po/cs.po:
6968         * po/en_GB.po:
6969         * po/fr.po:
6970         * po/nl.po:
6971         * po/sq.po:
6972         * po/sr.po:
6973         * po/sv.po:
6974         * po/tr.po:
6975         * po/uk.po:
6976           translations update
6977         * win32/README.txt:
6978           trademark protection
6979
6980 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6981
6982         * configure.ac:
6983           fix GST_ORIGIN
6984           set GST_PACKAGE to source, and distinguish between release and other
6985         * tools/gst-inspect.c:
6986           print out plugin an element factory is part of so we see this info
6987
6988 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6989
6990         * docs/gst/gstreamer-sections.txt:
6991         * docs/gst/tmpl/gstbuffer.sgml:
6992         * docs/gst/tmpl/gstschedulerfactory.sgml:
6993           reorder docs a little, make GstBuffer's more sensible.
6994         * gst/gstbuffer.h:
6995           API: added GST_BUFFER_FLAG_DELTA_UNIT
6996         * gst/gstscheduler.c:
6997           comment API addition
6998
6999 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7000
7001         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
7002           work with non-regular files that can be mmapped (like /dev/zero)
7003         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
7004           get rid of typefinds that require a seek when we can't seek instead
7005           of trying them over and over again
7006         * tools/gst-launch.c: (idle_func), (error_cb), (main):
7007           return non-zero failure value when the pipeline was interrupted or
7008           an error occurred
7009
7010 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
7011
7012         * win32/config.h:
7013         * win32/GStreamer.vcproj:
7014           compile and install the locales
7015
7016 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
7017
7018         * gst/gstvalue.c:
7019           fix a possible memory leak under Windows
7020
7021 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
7022
7023         * win32/GStreamer.vcproj:
7024           fix a memory leak that occured under Windows
7025         * win32/gstreamer.def:
7026           add gst_scheduler_register
7027
7028 2004-08-11  Benjamin Otte  <otte@gnome.org>
7029
7030         * docs/gst/gstreamer-sections.txt:
7031         * gst/gstscheduler.c: (gst_scheduler_register):
7032         * gst/gstscheduler.h:
7033           API:
7034           add gst_scheduler_register shortcut similar to gst_element_register
7035         * gst/schedulers/entryscheduler.c: (plugin_init):
7036         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
7037         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
7038           use it
7039
7040 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
7041
7042         * gst/gstvalue.h:
7043           fix a memory leak that occured under Windows
7044
7045 2004-08-10  Colin Walters  <walters@redhat.com>
7046
7047         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
7048         Don't use O_EXCL to open temporary registry.  It will prevent
7049         registry creation if a temporary one already exists, which
7050         is unnecessary.
7051
7052 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7053
7054         * docs/gst/gstreamer-sections.txt:
7055         * docs/gst/tmpl/gstvalue.sgml:
7056           remove some valuable stuff from the documentation due to the use of GST_EXPORT
7057
7058 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7059
7060         * win32/gstbytestream.vcproj:
7061         * win32/gstelements.vcproj:
7062         * win32/gstgetbits.vcproj:
7063         * win32/gst-inspect.vcproj:
7064         * win32/gst-launch.vcproj:
7065         * win32/gstoptimalscheduler.vcproj:
7066         * win32/GStreamer.vcproj:
7067         * win32/gst-register.vcproj:
7068         * win32/gstspider.vcproj:
7069           update the include and lib dirs to fit standard libraries as
7070           described in the Win32 manual
7071
7072 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7073
7074         * win32/config.h:
7075         * win32/gstversion.h:
7076           enable NLS again, push the version number for the coming 0.8.5 release
7077
7078 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7079
7080         * gst/gstvalue.h:
7081           export gst_type_XXX for windows DLLs
7082
7083 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7084
7085         * docs/faq/gst-uninstalled:
7086           fix PKG_CONFIG_PATH and PYTHONPATH
7087         * gst/schedulers/Makefile.am:
7088           cleanup
7089         * libs/gst/bytestream/bytestream.c:
7090           remove newline
7091         * po/LINGUAS:
7092         * po/sq.po:
7093           adding Albanian translation (Laurent Dhima)
7094         * po/cs.po:
7095           updated
7096
7097 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7098
7099         * po/ca.po:
7100         * po/sv.po:
7101           updated translations
7102
7103 2004-08-04  Benjamin Otte  <otte@gnome.org>
7104
7105         * tests/mass_elements.c: (main):
7106           allow specifying src and sink element explicitly, so I can test
7107           videotestsrc instead of fakesrc
7108
7109 2004-08-04  Benjamin Otte  <otte@gnome.org>
7110
7111         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
7112         (gst_structure_id_empty_new), (gst_structure_empty_new),
7113         (gst_structure_copy):
7114           add gst_structure_id_empty_new_with_size to allow preallocating
7115           value array sizes. Use this in gst_structure_copy to get rid of
7116           reallocs.
7117           don't do quark=>string=>quark when copying structures
7118
7119 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
7120
7121         * docs/manual/win32.xml:
7122         * win32/README.txt:
7123           update documentation with the clean version of dependencies
7124
7125 2004-08-03  Benjamin Otte  <otte@gnome.org>
7126
7127         * gst/schedulers/entryscheduler.c:
7128         (gst_entry_scheduler_remove_element):
7129           fix for GST_DISABLE_DEBUG
7130         * tools/gst-launch.c: (print_tag):
7131           fixes for G_DISABLE_ASSERT
7132
7133 2004-08-03  Benjamin Otte  <otte@gnome.org>
7134
7135         * gst/gst.c: (gst_register_core_elements):
7136           fix for G_DISABLE_ASSERT
7137         * gst/gstinfo.c: (__gst_in_valgrind):
7138           add for GST_DISABLE_DEBUG
7139
7140 2004-08-03  Benjamin Otte  <otte@gnome.org>
7141
7142         * gst/parse/parse.l:
7143           fix for G_DISABLE_ASSERT
7144
7145 2004-08-03  Wim Taymans  <wim@fluendo.com>
7146
7147         * gst/gstbin.c: (gst_bin_get_type),
7148         (gst_bin_child_state_change_func):
7149         * gst/gstthread.c: (gst_thread_change_state):
7150         Backported some debug logging from a reverted patch
7151         Don't try to destroy the thread twice. Added some more
7152         debugging in GstThread. Unlock and signal even if we
7153         are in the thread context.
7154
7155 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7156
7157         * po/uk.po:
7158           updated translation
7159
7160 2004-07-30  David Schleef  <ds@schleef.org>
7161
7162         * gst/gstatomic_impl.h: Enable atomic code for x86_64
7163
7164 2004-07-29  David Schleef  <ds@schleef.org>
7165
7166         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
7167         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
7168
7169 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
7170
7171         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7172         (gst_bin_add_func), (gst_bin_remove_func),
7173         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
7174         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
7175         (gst_bin_change_state_norecurse), (gst_bin_dispose),
7176         (gst_bin_sync_children_state):
7177         * gst/gstbin.h:
7178         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
7179         (gst_thread_change_state):
7180         * testsuite/states/Makefile.am:
7181           revert state change patches as agreed so we can rework them
7182           gradually
7183
7184 2004-07-29  Benjamin Otte  <otte@gnome.org>
7185
7186         * libs/gst/control/Makefile.am:
7187           link to libgstreamer (fixes Debian bug 262019, see
7188           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
7189
7190 2004-07-29  Wim Taymans  <wim@fluendo.com>
7191
7192         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
7193         (check_from_fraction_convert), (transform_test), (main):
7194         Make the test less pedantic about float roundoff errors.
7195
7196 2004-07-29  Benjamin Otte  <otte@gnome.org>
7197
7198         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
7199         (gst_filesrc_srcpad_event):
7200           make seek events to before start/after end of file not fail, but
7201           seek to start/end instead
7202         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
7203           add more output
7204
7205 2004-07-29  Benjamin Otte  <otte@gnome.org>
7206
7207         * gst/gstpad.c: (gst_pad_set_explicit_caps):
7208           check that caps are fixed
7209         * gst/gstpad.c: (gst_pad_template_new):
7210           don't try to simplify caps, costs too much time on gst_init
7211         * gst/gstplugin.c: (gst_plugin_add_feature):
7212           G_ERROR if features are added twice
7213         * gst/gsttypefind.c: (gst_type_find_register):
7214         * gst/gstelementfactory.c: (gst_element_register):
7215           don't add features twice
7216         * docs/random/ds/0.9-suggested-changes:
7217           add note about possible gst_init optimization
7218
7219 2004-07-28  David Schleef  <ds@schleef.org>
7220
7221         * testsuite/elements/Makefile.am:
7222         * testsuite/elements/struct_i386.h:
7223         * testsuite/elements/struct_size.c: (main):  A little test
7224         to keep distcheck from working if someone changes a structure
7225         size accidentally.
7226
7227 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7228
7229         * docs/libs/Makefile.am:
7230         * docs/libs/gstreamer-libs-docs.sgml:
7231         * docs/libs/gstreamer-libs-sections.txt:
7232         * docs/libs/tmpl/gstbytestream.sgml:
7233         * docs/libs/tmpl/gstcontrol.sgml:
7234         * docs/libs/tmpl/gstdataprotocol.sgml:
7235         * docs/libs/tmpl/gstgetbits.sgml:
7236         * libs/gst/bytestream/Makefile.am:
7237         * libs/gst/bytestream/bytestream.c:
7238         * libs/gst/bytestream/bytestream.h:
7239         * libs/gst/control/Makefile.am:
7240         * libs/gst/dataprotocol/Makefile.am:
7241         * libs/gst/getbits/Makefile.am:
7242         * libs/gst/getbits/getbits.h:
7243           various doc and style fixes, adding bytestream to libs docs.
7244
7245 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7246
7247         * docs/gst/gstreamer-docs.sgml:
7248         * docs/libs/Makefile.am:
7249         * docs/libs/gstreamer-libs-docs.sgml:
7250         * docs/libs/gstreamer-libs-sections.txt:
7251         * libs/gst/control/dparam.c:
7252           more doc fixes.  gst-libs docs now build the same way as gst.
7253
7254 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7255
7256         * configure.ac:
7257         * testsuite/Makefile.am:
7258         * testsuite/bins/Makefile.am:
7259         * testsuite/caps/Makefile.am:
7260         * testsuite/cleanup/Makefile.am:
7261         * testsuite/clock/Makefile.am:
7262         * testsuite/debug/Makefile.am:
7263         * testsuite/dlopen/Makefile.am:
7264         * testsuite/dynparams/Makefile.am:
7265         * testsuite/elements/.cvsignore:
7266         * testsuite/elements/Makefile.am:
7267         * testsuite/enumcaps/Makefile.am:
7268         * testsuite/enumcaps/enumcaps.c:
7269         * testsuite/ghostpads/Makefile.am:
7270         * testsuite/indexers/Makefile.am:
7271         * testsuite/negotiation/Makefile.am:
7272         * testsuite/parse/Makefile.am:
7273         * testsuite/plugin/Makefile.am:
7274         * testsuite/refcounting/Makefile.am:
7275         * testsuite/schedulers/.cvsignore:
7276         * testsuite/states/Makefile.am:
7277         * testsuite/tags/Makefile.am:
7278         * testsuite/threads/Makefile.am:
7279           fold enumcaps into caps dir
7280           clean up Makefile.am's for testsuite
7281
7282 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7283
7284         * docs/gst/Makefile.am:
7285         * docs/libs/Makefile.am:
7286           clean up docs build.  Fixes needless rebuilding of template files.
7287
7288 2004-07-28  Wim Taymans  <wim@fluendo.com>
7289
7290         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
7291         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
7292         Make sure that a bin state change tries to keep the children
7293         in sync. 
7294         Added debug logging to the thread.
7295
7296 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
7297
7298         * win32/GStreamer.vcproj:
7299         * win32/gstreamer.def:
7300           more exports for the plugins
7301
7302 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
7303
7304         * win32/gstgetbits.vcproj:
7305         * win32/gstgetbits.def:
7306         * win32/msvc71.sln:
7307           add support for the getbits plugin
7308
7309 2004-07-27  Wim Taymans  <wim@fluendo.com>
7310
7311         * gst/gstvalue.c: (gst_value_transform_double_fraction),
7312         (gst_value_transform_fraction_double), (_gst_value_initialize):
7313         * testsuite/caps/Makefile.am:
7314         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
7315         (check_from_fraction_convert), (transform_test), (main):
7316         Added transform functions between double and fraction.
7317         Added testcase to verify transforms
7318
7319 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7320
7321         * win32/GStreamer.vcproj:
7322           rename GStreamer-0.8.lib to libgstreamer.lib
7323
7324 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7325
7326         * win32/gstelements.vcproj:
7327         * win32/gstoptimalscheduler.vcproj:
7328           fixes for the Release build
7329
7330 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7331
7332         * win32/config.h:
7333           update the version number
7334
7335 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7336
7337         * win32/GStreamer.vcproj:
7338           add gstinterface to the build
7339
7340 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7341
7342         * win32/gstreamer.def:
7343           add many definitions needed by plugins,
7344           GST_CAT_DEFAULT only available in the Debug build ?
7345
7346 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7347
7348         * gst/gstelement.c: (gst_element_set_eos_recursive):
7349           various whitespace fixes.
7350           doc fix, fixes #148497
7351
7352 2004-07-25  Benjamin Otte  <otte@gnome.org>
7353
7354         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
7355           don't delay links on the sink elements, it causes unnegotiated
7356           links.
7357         * gst/elements/gsttypefindelement.c:
7358         (gst_type_find_element_base_init):
7359           add our padtemplates, we indeed do have some.
7360         * gst/elements/gsttypefindelement.c:
7361         (gst_type_find_element_handle_event),
7362         (gst_type_find_element_chain):
7363           don't push data when typefinding failed.
7364         * gst/gstpad.c: (gst_pad_link_fixate):
7365           check that no fixate function returns empty caps.
7366         * gst/gstpad.c: (gst_pad_push):
7367           check that the link is negotiated before data gets pushed.
7368         * tools/gst-register.c: (main):
7369           don't assert (fixes #148283)
7370
7371 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7372
7373         * docs/gst/gstreamer-sections.txt:
7374         * docs/gst/tmpl/gstconfig.sgml:
7375           add GST_PLUGIN_EXPORT definition
7376
7377 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7378
7379         * gst/gstplugin.h:
7380         * gst/gstconfig.h.in:
7381         * win32/gstconfig.h:
7382         * win32/gstelements.def:
7383         * win32/gstelements.vcproj:
7384         * win32/gstoptimalscheduler.def:
7385         * win32/gstoptimalscheduler.vcproj:
7386         * win32/gstspider.def:
7387         * win32/gstspider.vcproj:
7388           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
7389
7390 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7391
7392         * docs/gst/gstreamer-sections.txt:
7393           remove GST_CAT_DEFAULT because the type has changed
7394
7395 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7396
7397         * win32/gstbytestream.vcproj:
7398         * win32/gstelements.vcproj:
7399         * win32/gst-inspect.vcproj:
7400         * win32/gst-launch.vcproj:
7401         * win32/gstoptimalscheduler.vcproj:
7402         * win32/GStreamer.vcproj:
7403         * win32/gst-register.vcproj:
7404         * win32/gstspider.vcproj:
7405         * win32/msvc71.sln:
7406           Copy the files where needed after building, The testsuite will be
7407           built separately
7408
7409 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7410
7411         * win32/config.h:
7412         * win32/README.txt:
7413         * docs/manual/win32.xml:
7414         Fixed the plugin and GStreamer location
7415
7416 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7417
7418         * win32/gstreamer.def:
7419         More exports for the plugins
7420
7421 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7422
7423         * gst/gstinfo.h:
7424         Marc was right, we need to export literally GST_CAT_DEFAULT
7425
7426 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7427
7428         * win32/config.h:
7429         NLS crashes in gettext, disabled until this is solved
7430
7431 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7432
7433         * win32/gst-inspect.vcproj:
7434         * win32/gst-launch.vcproj:
7435         Should use NLS when available
7436
7437 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7438
7439         * gst/registries/gstxmlregistry.c:
7440         removing the file doesn't seem to be a good idea on Linux
7441
7442 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7443
7444         * gst/registries/gstxmlregistry.c:
7445         Remove the registry before renaming the tempfile (needed for Windows)
7446
7447 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7448
7449         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
7450         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
7451         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
7452         * gst/elements/gstmultifilesrc.h:
7453         Added newmedia property so it generates newmedia events between each
7454         file when property is set, as well as fixed eos handling
7455
7456 2004-07-22  David Schleef  <ds@schleef.org>
7457
7458         * gst/gststructure.c: (gst_structure_id_empty_new),
7459         (gst_structure_empty_new):  Set type field correctly.
7460         * gst/gststructure.h: Check type field correctly.
7461         * testsuite/caps/Makefile.am:
7462         * testsuite/caps/structure.c: (test1), (main): Add a very small
7463         test for structures.
7464
7465 2004-07-22  David Schleef  <ds@schleef.org>
7466
7467         * docs/random/ds/0.9-suggested-changes: more comments
7468         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
7469
7470 2004-07-22  Benjamin Otte  <otte@gnome.org>
7471
7472         * gst/gstelementfactory.c: (gst_element_register):
7473           set the factory in the class struct, so gst_element_get_factory
7474           actually works
7475         * gst/parse/grammar.y:
7476           set element to playing when it gets unlocked as we can't rely on the
7477           bin state - all elements in the bin state might still be locked in
7478           NULL)
7479
7480 2004-07-22  Benjamin Otte  <otte@gnome.org>
7481
7482         * gst/gstelement.c: (gst_element_set_state_func):
7483           make this a static function
7484
7485 2004-07-22  Wim Taymans  <wim@fluendo.com>
7486
7487         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
7488         (gst_opt_scheduler_pad_link):
7489         fix 147894-2 and the group_link problem.
7490
7491 2004-07-22  Wim Taymans  <wim@fluendo.com>
7492
7493         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7494         (handoff_identity), (main):
7495         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7496         (handoff_identity), (main):
7497         * testsuite/schedulers/Makefile.am:
7498         * testsuite/schedulers/group_link.c: (main):
7499         Show bug in scheduler when linking chain and loop based element 
7500         where the chain based element was not yet in a group.
7501
7502 2004-07-21  Benjamin Otte  <otte@gnome.org>
7503
7504         * gst/.cvsignore:
7505         * gst/autoplug/.cvsignore:
7506         * gst/elements/.cvsignore:
7507         * gst/indexers/.cvsignore:
7508         * libs/gst/bytestream/.cvsignore:
7509         * libs/gst/control/.cvsignore:
7510         * libs/gst/getbits/.cvsignore:
7511         * testsuite/states/.cvsignore:
7512         * testsuite/threads/.cvsignore:
7513           keep this up to date, since I seem to be the only one who cares
7514           about not missing files on commits (editor's note: no you don't,
7515           but feel free to change them at the time you add stuff instead
7516           of later on)
7517
7518 2004-07-21  Benjamin Otte  <otte@gnome.org>
7519
7520         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7521         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
7522         (gst_bin_child_state_change_func), (set_kid_state_func),
7523         (gst_bin_set_state), (gst_bin_change_state_norecurse):
7524           make state changes work correctly and reentrant (so removing
7525           elements from bins during state changes of bins doesn't cause
7526           segfaults or even wrong states)
7527           add debugging category and debugging output to print children states
7528         * gst/gstbin.c: (gst_bin_dispose): 
7529           add some assertion checks
7530         * gst/gstbin.h:
7531         * gst/gstbin.c: (gst_bin_sync_children_state):
7532           deprecate this function - it just does gst_bin_set_state (bin,
7533           GST_STATE (bin)) 
7534         * testsuite/threads/queue.c: (main):
7535           don't use gst_bin_sync_children_state anymore
7536         * testsuite/states/Makefile.am:
7537         * testsuite/states/bin.c:
7538           test that the state changes of bins work as expected
7539         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
7540           some adjustments to change states correctly, too
7541         * gst/gstthread.c: (gst_thread_change_state):
7542           don't enable/disable "threadsafe" properties, they're unused and
7543           cause random segfaults
7544         * testsuite/threads/Makefile.am:
7545           the queue check randomly passes now, ignore it
7546
7547 2004-07-21  Benjamin Otte  <otte@gnome.org>
7548
7549         * gst/gstpad.c:
7550           check if data is NULL before outputting debug info. (fixes #145100)
7551
7552 2004-07-21  Benjamin Otte  <otte@gnome.org>
7553
7554         * gst/schedulers/entryscheduler.c:
7555         (gst_entry_scheduler_loop_wrapper),
7556         (gst_entry_scheduler_chain_wrapper),
7557         (gst_entry_scheduler_get_wrapper):
7558           reset the state when the cothread starts, so we don't get assertion
7559           failures on restarting of cothreads
7560
7561 2004-07-20  Benjamin Otte  <otte@gnome.org>
7562
7563         * gst/gstelement.c: (gst_element_link_pads_filtered):
7564           use correct sinkpad, if only sinkpad is specified, but not srcpad
7565           (fixes #147889)
7566         * gst/gstelement.c: (gst_element_set_state_func),
7567         (gst_element_change_state): ref/unref the element, signal handlers
7568         could get rid of the element otherwise
7569
7570 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7571
7572         * docs/random/ds/0.9-suggested-changes:
7573           Make note about renaming fixed-list to array.
7574         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
7575         (_gst_value_initialize):
7576           Add array intersections.
7577         * testsuite/caps/intersect2.c: (main):
7578           Add test for array intersections.
7579
7580 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7581
7582         * configure.ac: back to cvs
7583
7584 === release 0.8.4 ===
7585
7586 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7587
7588         * configure.ac:
7589           releasing 0.8.4, "Paella"
7590           bump libtool versioning
7591
7592 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7593
7594         * po/LINGUAS:
7595         * po/ca.po:
7596           adding Catalan translation (Jordi Mallach)
7597
7598 2004-07-20  Wim Taymans  <wim@fluendo.com>
7599
7600         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7601         (handoff_identity), (main):
7602         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7603         (handoff_identity), (main):
7604         * testsuite/schedulers/Makefile.am:
7605         Added failing testcase for variant of #147894
7606
7607 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7608
7609         patch by: David Moore
7610
7611         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7612         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
7613         (group_migrate_connected):
7614         * testsuite/schedulers/Makefile.am:
7615           fix for #142813 (Deadlock in optimal scheduler)
7616
7617 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7618
7619         patch by: Wim Taymans
7620
7621         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7622         (gst_opt_scheduler_schedule_run_queue),
7623         (gst_opt_scheduler_get_wrapper), (get_group),
7624         (group_migrate_connected):
7625         * testsuite/schedulers/Makefile.am:
7626           fix for #147819 (Add some checks in the opt scheduler)
7627
7628 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7629
7630         patch by: Benjamin Otte
7631
7632         * gst/gstelementfactory.c: (__gst_element_details_set):
7633           fix for #147929: running gst-register in non-utf8 locale can cause
7634           invalid registry
7635
7636 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7637
7638         patch by: Wim Taymans
7639
7640         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
7641         (group_has_element), (element_get_reachables_func),
7642         (group_migrate_connected):
7643           fix for #147894 (opt scheduler decoupled elements mismanagement)
7644         * testsuite/schedulers/Makefile.am:
7645           testsuite app now passes
7646
7647 2004-07-19  Wim Taymans  <wim@fluendo.com>
7648
7649         * testsuite/schedulers/147819.c: (handoff_identity1),
7650         (handoff_identity2), (main):
7651         * testsuite/schedulers/Makefile.am:
7652         Added testcase for bug 147819
7653
7654 2004-07-19  Wim Taymans  <wim@fluendo.com>
7655
7656         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7657         (handoff_identity), (main):
7658         * testsuite/schedulers/Makefile.am:
7659         Added testcase for bug 147894
7660
7661 2004-07-16  Wim Taymans  <wim@fluendo.com>
7662
7663         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
7664         * testsuite/schedulers/142183.c: (handoff_identity), (main):
7665         * testsuite/schedulers/Makefile.am:
7666         Added testsuite for bug 142183 in its two incarnations. Refcount
7667         is not increased for scheduled elements and threadsafe properties
7668         mutexes are not properly unlocked.
7669
7670 2004-07-16  Wim Taymans  <wim@fluendo.com>
7671
7672         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
7673         (create_chain), (destroy_chain), (create_group), (destroy_group),
7674         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
7675         (group_dec_link), (gst_opt_scheduler_pad_link),
7676         (group_inc_links_for_element), (group_migrate_connected):
7677         Call group_inc_link with the proper src->sink ordering -- 
7678         break this, and we break sort_chain. patch from wingo for bug
7679         147713.
7680         Partially revert patch 1.89. When adding a loop based element to 
7681         the scheduler, the links to other groups are automatically followed
7682         and incremented. This should not happen because the bin will call
7683         pad_link explicitly for those connection, resulting in them counted 
7684         twice. Results in assertion failure on pipeline cleanup.
7685
7686 2004-07-16  Wim Taymans  <wim@fluendo.com>
7687
7688         * testsuite/schedulers/143777-2.c: (main):
7689         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
7690         (main):
7691         * testsuite/schedulers/Makefile.am:
7692         Added cleanup code to testcase 143777-2.
7693         Added testcase to show bug 147713, does not really show the
7694         deadlock as I can't figure out how to trigger it, but it does
7695         demonstrate bad ordering in the scheduler.
7696
7697 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7698
7699         * gst/gstvalue.c: (gst_value_deserialize_fraction):
7700           change strndup to g_strndup.  Fixes #147707
7701
7702 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7703
7704         * po/af.po:
7705         * po/az.po:
7706         * po/cs.po:
7707         * po/en_GB.po:
7708         * po/fr.po:
7709         * po/nl.po:
7710         * po/sr.po:
7711         * po/sv.po:
7712         * po/tr.po:
7713         * po/uk.po:
7714           updated translations
7715
7716 2004-07-16  Benjamin Otte  <otte@gnome.org>
7717
7718         * gst/gstvalue.c: (gst_greatest_common_divisor):
7719           use ints and return ints, fractions only use ints, too, so this
7720           avoids accidently casting multiplications to unsigned
7721         (gst_value_lcopy_fraction): it's ints, not uint32
7722         (gst_value_set_fraction): disallow minint, multiplying and negation
7723           are broken with it
7724         (gst_value_fraction_multiply): fix to make large numbers work and get
7725         rid of the assumption that the multiplication of two ints fits an
7726         int64 - dunno if that's true for all systems
7727         * testsuite/caps/Makefile.am:
7728         * testsuite/caps/fraction-multiply-and-zero.c:
7729         (check_multiplication), (check_equal), (zero_test), (main):
7730           add tests for all the stuff above
7731         * testsuite/caps/value_compare.c: (test1):
7732           fix comment
7733         * tests/.cvsignore:
7734         * testsuite/caps/.cvsignore:
7735         * testsuite/debug/.cvsignore:
7736         * testsuite/dlopen/.cvsignore:
7737         * testsuite/states/.cvsignore:
7738           get up to date
7739
7740 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7741
7742         * docs/manual/bins-api.xml:
7743         * docs/manual/factories.xml:
7744         * docs/manual/helloworld.xml:
7745         * docs/manual/links-api.xml: 
7746           fixes for out of date info, incorrect info and grammar
7747
7748 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7749
7750         * docs/manual/pads.xml:
7751         * docs/manual/pads-api.xml: grammar fix
7752
7753 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7754
7755         * docs/manual/pads-api.xml: typo + grammar fix
7756
7757 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7758
7759         * docs/gst/gstreamer-sections.txt:
7760           add new symbols
7761         * docs/gst/tmpl/gstelement.sgml:
7762         * docs/gst/tmpl/gstpad.sgml:
7763         * docs/gst/tmpl/gsttypes.sgml:
7764         * docs/gst/tmpl/gstvalue.sgml:
7765           update docs
7766         * gst/gststructure.c: (gst_structure_set_valist),
7767         (gst_structure_from_abbr), (gst_structure_to_abbr):
7768         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
7769         (gst_greatest_common_divisor), (gst_value_init_fraction),
7770         (gst_value_copy_fraction), (gst_value_collect_fraction),
7771         (gst_value_lcopy_fraction), (gst_value_set_fraction),
7772         (gst_value_get_fraction_numerator),
7773         (gst_value_get_fraction_denominator),
7774         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
7775         (gst_value_deserialize_fraction),
7776         (gst_value_transform_fraction_string),
7777         (gst_value_transform_string_fraction),
7778         (gst_value_compare_fraction), (_gst_value_initialize):
7779         * gst/gstvalue.h:
7780           adding GstFraction GValue type, get/set, and multiply
7781         * testsuite/caps/Makefile.am:
7782         * testsuite/caps/fraction.c: (test), (main):
7783         * testsuite/caps/string-conversions.c: (main):
7784         * testsuite/caps/value_compare.c: (test1), (main):
7785           add regression tests for GstFraction
7786
7787 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7788         
7789         * docs/manual/init-api.xml: Grammar fix
7790
7791 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7792
7793         * docs/manual/states.xml: Fix inconsistent information
7794
7795 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7796
7797         * gst/gstelement.c: (gst_element_set_state):
7798         * gst/gstpad.c: (gst_pad_try_set_caps):
7799         * gst/gststructure.c:
7800         * gst/gstthread.c: (gst_thread_child_state_change):
7801         * gst/gstvalue.c: (gst_value_compare_double):
7802         * gst/gstvalue.h:
7803         * testsuite/parse/parse1.c: (main):
7804           debugging additions and style cleanups
7805
7806 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7807
7808         * docs/manual/states.xml: Grammar fix
7809
7810 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7811
7812         * docs/manual/pads.xml: Grammar fix
7813
7814 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7815
7816         * docs/manual/elements.xml: Fixed image reference
7817
7818 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7819
7820         * docs/manual/goals.xml: Grammar fix
7821
7822 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7823
7824         * docs/manual/motivation.xml:
7825         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
7826
7827 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7828
7829         * docs/manual/motivation.xml: Fix spelling
7830
7831 2004-07-15  Benjamin Otte  <otte@gnome.org>
7832
7833         * gst/gstelement.h: 
7834           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
7835           strings.
7836         * gst/gstelement.c (gst_element_class_init):
7837           GError's are boxed, not objects
7838         * gst/gstmarshal.list:
7839           update list for the fixed error signal
7840
7841 2004-07-14  Andy Wingo  <wingo@pobox.com>
7842
7843         * gst/gsttag.c: Add a tag merge func for pointers. The header was
7844         there all along, but the function wasn't. (guile-gstreamer's build
7845         system uses the address of the function -- I wasn't actually
7846         trying to use this.)
7847
7848 2004-07-14  Andy Wingo  <wingo@pobox.com>
7849
7850         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
7851         as gst_pad_proxy_pad_link) just link to every other pad when they
7852         are called. In the case where the graph has cycles, this will mean
7853         that a call to try_set_caps will recurse. Allow this recursion
7854         and return OK, while we wait for the first try_set_caps to give a
7855         proper return value.
7856         (gst_pad_link_call_link_functions): Since this function is the
7857         only one to set the NEGOTIATING flag on a pad, if the flag is set
7858         it means that the link functions have indirectly recursed. If this
7859         happens, error out to avoid infinite recursion and an eventual
7860         SEGV.
7861         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
7862         (gst_pad_proxy_getcaps): Intersect the result with the template
7863         caps to ensure that the return value is valid.
7864
7865 2004-07-14  Andy Wingo  <wingo@pobox.com>
7866
7867         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
7868         one refcount, the calling function is the owner of the buffer.
7869
7870 2004-07-14  Wim Taymans  <wim@fluendo.com>
7871
7872         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7873         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7874         Fix stupid warning when an element is to be migrated but
7875         is already migrated.
7876
7877 2004-07-14  Wim Taymans  <wim@fluendo.com>
7878
7879         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7880         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7881         Make sure that a single non-loop-based element does not 
7882         end up in a group. This fixes the testsuite again.
7883
7884 2004-07-14  Wim Taymans  <wim@fluendo.com>
7885
7886         * gst/schedulers/gstoptimalscheduler.c: (create_group),
7887         (add_to_group), (merge_groups), (schedule_group),
7888         (gst_opt_scheduler_get_wrapper), (group_elements),
7889         (group_dec_link), (gst_opt_scheduler_pad_link),
7890         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
7891         (gst_opt_scheduler_iterate):
7892         move isolated groups to a new chain.
7893         Emit a warning instead of segfaulting in some error cases.
7894         Fix a bug where the link count between groups was not calculated 
7895         correctly. Fixes #144510.
7896
7897 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
7898         * gst/elements/gstfilesrc.c:
7899           Binary files support under Windows now OK
7900       
7901 2004-07-13  Benjamin Otte  <otte@gnome.org>
7902
7903           compatibility fixes for Solaris 8/gcc 2.95
7904         * configure.ac:
7905           include libintl libs in LDFLAGS
7906         * gstvalue.c (gst_value_deserialize_buffer):
7907           cast isxdigit stuff to int to silence compiler warning
7908
7909 2004-07-12  Benjamin Otte  <otte@gnome.org>
7910
7911         * gst/gsttypes.h:
7912           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
7913           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
7914           just causes support madness
7915         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7916           make it work without this
7917         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
7918         (gst_file_index_commit):
7919           glib IO channels don't want binary mode
7920         * testsuite/bytestream/filepadsink.c: (main):
7921         * testsuite/bytestream/test1.c: (read_param_file):
7922           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
7923
7924 2004-07-12  Benjamin Otte  <otte@gnome.org>
7925
7926         * gst/gstelement.c: (gst_element_class_init),
7927         (gst_element_set_state), (gst_element_set_state_func):
7928           virutalize gst_element_set_state, use set_state member in class
7929           struct that was already added in 0.7 for this.
7930         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
7931         (gst_bin_change_state):
7932           make gst_bin_foreach works similar to other foreach functions, plug
7933           memleaks in it. Make functions using it work with the new approach.
7934           Document gst_bin_foreach, so it can be exported if we want to
7935         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
7936           use virtualized set_state to make set_state on bins set the state of
7937           all its children.
7938
7939 2004-07-12  Benjamin Otte  <otte@gnome.org>
7940
7941         * configure.ac:
7942           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
7943           http://bugs.gentoo.org/show_bug.cgi?id=53967)
7944         * gst/gstpad.c: (gst_pad_alloc_buffer):
7945           allow buffer_alloc functions to return NULL and allocate a normal
7946           buffer in that case
7947
7948 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7949         * gst/elements/gstfilesink.c:
7950         * gst/elements/gstfilesrc.c:
7951         * gst/indexers/gstfileindex.c:
7952         * gst/gsttypes.h:
7953         * testsuite/bytestream/filepadsink.c:
7954         * testsuite/bytestream/test1.c:
7955           Handle binary files under Windows
7956
7957 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7958         * docs/manual/win32.xml:
7959         * win32/config.h:
7960         * win32/gst-register.vcproj:
7961         * win32/gstreamer.def:
7962           Update to another gettext public build
7963
7964 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7965         * gst/gstplugin.c:
7966           Fix an impossible C syntax
7967         * win32/config.h:
7968           Disable i18n under Windows for the moment
7969         * win32/gst-register.vcproj:
7970           Use this configuration
7971
7972 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
7973         * docs/manual/quotes.xml:
7974           Keep the quotes file alive
7975         * docs/random/ds/0.9-suggested-changes:
7976           Add the suggestion of including a 'rowstride' as part of video
7977           format caps
7978
7979 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7980
7981         * gst/gstelement.c: (gst_element_set_state),
7982         (gst_element_change_state):
7983           d'oh.  Set PENDING state correctly before forcing bin to change.
7984         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7985         (gst_structure_parse_fixed_list):
7986         * gst/schedulers/gstoptimalscheduler.c:
7987         (gst_opt_scheduler_state_transition):
7988         * testsuite/states/parent.c: (main):
7989           remove comment now that it's fixed.
7990
7991 2004-07-11  Benjamin Otte  <otte@gnome.org>
7992
7993         * gst/gstclock.h:
7994           GST_SECOND shouldn't cause a conversion to unsigned.
7995         * testsuite/clock/.cvsignore:
7996         * testsuite/clock/Makefile.am:
7997         * testsuite/clock/signedness.c: (main):
7998           make sure it never will again
7999
8000 2004-07-11  Andy Wingo  <wingo@pobox.com>
8001
8002         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
8003         whose state is higher than the bin state, raise the bin state to
8004         ensure that bin state := highest child state.
8005         
8006 2004-07-11  Andy Wingo  <wingo@pobox.com>
8007
8008         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
8009         procedure on the children of a bin. Assumes that the procedure can
8010         change the set of children.
8011         (set_kid_state_func): New static function.
8012         (gst_bin_change_state): Use gst_bin_foreach to call
8013         set_kid_state_func. Fixes a bug: if a child had a state-change
8014         handler that removes it from the bin, there would be a segfault.
8015         Hopefully it should also work in the case where the state-change
8016         handler on one child adds or removes other children. In any case,
8017         fixes should go to gst_bin_foreach.
8018
8019 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
8020
8021         * gst/gstelement.c: (gst_element_set_state):
8022           compatibility fix for latest plugins release.  Change loop back
8023           to while {}
8024
8025 2004-07-09  Wim Taymans  <wim@fluendo.com>
8026
8027         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
8028         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
8029         (gst_thread_main_loop):
8030         Since remove is virtual in GstBin we must not assume the 
8031         elements GList to have anothing useful.
8032         Add some more logging to GstThread and be a bit more paranoid
8033         when resetting the scheduler.
8034         Set the state of the bin to NULL before removing the children.
8035
8036 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8037
8038         * testsuite/threads/Makefile.am:
8039         * testsuite/threads/threadg.c:
8040           added test to check if problem when removing all elements from a
8041           GstThread before setting GstThread state to NULL
8042
8043 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8044
8045         * docs/gst/tmpl/gstelement.sgml:
8046         * docs/gst/tmpl/gsttypes.sgml:
8047         * gst/gstbin.c: (gst_bin_change_state):
8048         * gst/gstelement.c: (gst_element_set_state),
8049         (gst_element_change_state):
8050           rework so that for bins we try to set the state on all children
8051           as well even if the bin is in the correct state already.
8052           change while to do so at least one iteration is done.
8053           For regular elements, we fall back to the previous behaviour for
8054           now since we first need a new plugins release.
8055         * testsuite/states/parent.c: (main):
8056           test for this case
8057           Fixes #123774
8058
8059 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8060
8061         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
8062         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
8063         (gst_queue_release_locks), (gst_queue_change_state),
8064         (gst_queue_set_property):
8065           add proper lock debugging.  Change dispose to finalize, since
8066           we're freeing mutexes and other stuff which should happen only once.
8067
8068 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8069
8070         * docs/gst/tmpl/gstelement.sgml:
8071         * docs/gst/tmpl/gstplugin.sgml:
8072         * docs/gst/tmpl/gsttypes.sgml:
8073         * docs/pwg/building-state.xml:
8074         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
8075         * gst/gstelement.c: (gst_element_change_state):
8076         * gst/gstthread.c: (gst_thread_change_state):
8077           catch wrong state changes in element base class.
8078
8079 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8080
8081         * gst/gstinfo.h:
8082           clean up layout a little.
8083
8084 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8085
8086         * configure.ac:
8087         * testsuite/Makefile.am:
8088         * testsuite/states/Makefile.am:
8089         * testsuite/states/parent.c: (main):
8090           re-enable states testsuite dir.  Add test for state changes and
8091           parent behaviour
8092
8093 2004-07-09  Wim Taymans  <wim@fluendo.com>
8094
8095         * gst/schedulers/gstoptimalscheduler.c:
8096         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
8097         (element_get_reachables_func), (element_get_reachables),
8098         (debug_element), (rechain_group), (group_migrate_connected),
8099         (gst_opt_scheduler_pad_unlink):
8100         Do not try to migrate decoupled elements to a new group since
8101         they are not added to groups.
8102
8103 2004-07-08  Benjamin Otte  <otte@gnome.org>
8104
8105         * gst/gstelement.c: (gst_element_error_func):
8106           make reentrant (= allow removing elements in error handler)
8107
8108 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8109
8110         * gst/gstpad.c: (gst_pad_event_default_dispatch),
8111         (gst_pad_send_event), (gst_pad_call_chain_function):
8112           events sent to elements below PAUSED cannot be handled, so
8113           don't try to
8114
8115 2004-07-08  Wim Taymans  <wim@fluendo.com>
8116
8117         * gst/schedulers/gstoptimalscheduler.c:
8118         (chain_recursively_migrate_group), (create_group),
8119         (schedule_group), (gst_opt_scheduler_pad_link),
8120         (group_elements_set_visited), (element_get_reachables_func),
8121         (element_get_reachables), (group_can_reach_group), (debug_element),
8122         (rechain_group), (group_migrate_connected),
8123         (gst_opt_scheduler_pad_unlink):
8124         * testsuite/schedulers/Makefile.am:
8125         Implemented group splitting and rechaining.
8126         Fixes 143777 and 143777-2 in the testsuite.
8127
8128 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8129
8130         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
8131           extra debugging
8132         * gst/gstevent.h:
8133         * gst/gstinfo.c: (gst_debug_log_default):
8134           print time nicely.  add thread pointer until someone figures out
8135           a completely portable way of getting at thread id's.
8136         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
8137         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
8138         (gst_pad_call_chain_function):
8139           extra debugging
8140         * gst/schedulers/gstoptimalscheduler.c:
8141         (get_group_schedule_function), (loop_group_schedule_function),
8142         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
8143         (pad_clear_queued), (gst_opt_scheduler_iterate):
8144           rename BUFPEN and friends to DATAPEN since that's what they are.
8145
8146 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8147
8148         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
8149         * gst/gstbuffer.h:
8150         * gst/gstpad.c:
8151           cleanups and debugging
8152
8153 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8154
8155         * configure.ac:
8156         * gst/gstvalue.c: (gst_value_compare_enum),
8157         (gst_value_serialize_enum), (gst_value_deserialize_enum),
8158         (gst_value_can_compare), (gst_value_compare):
8159         * testsuite/Makefile.am:
8160         * testsuite/enumcaps/Makefile.am:
8161         * testsuite/enumcaps/enumcaps.c:
8162           Fix enum serialization, deserialization, comparison in caps, add
8163           a test to ensure that this continues working in the future.
8164
8165 2004-07-06  David Schleef  <ds@schleef.org>
8166
8167         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
8168         Fix memleak.
8169
8170 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8171
8172         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
8173         * gst/gstplugin.h:
8174         * gst/registries/gstxmlregistry.c:
8175         (plugin_times_older_than_recurse), (plugin_times_older_than),
8176         (gst_xml_registry_parse_padtemplate):
8177           only rebuild registry when actual plugins have a newer time than
8178           the registry.  Fixes #145520
8179
8180 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8181
8182         * docs/manual/manual.xml:
8183         * docs/manual/win32.xml:
8184           add chapter on win32 building.  fixes #142422
8185
8186 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8187
8188         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
8189
8190         * gst/autoplug/gstspider.c: (gst_spider_init),
8191         (gst_spider_dispose):
8192           fix spider memleaks.  fixes #137863
8193
8194 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8195
8196         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
8197
8198         * gst/schedulers/gstoptimalscheduler.c:
8199         (gst_opt_scheduler_pad_unlink):
8200           fix SIGBUS error, fixes #145338
8201
8202 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8203
8204         * gst/gstobject.c: (gst_object_replace):
8205         * gst/gstscheduler.c: (gst_scheduler_get_clock):
8206         * gst/gstsystemclock.c: (gst_system_clock_obtain):
8207           clean up clock lifecycle.  Fixes #109831
8208
8209 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8210
8211         * po/LINGUAS:
8212         * po/cs.po:
8213           added Czech translation (Miloslav Trmac)
8214
8215 2004-07-04  David Schleef  <ds@schleef.org>
8216
8217         * tools/Makefile.am:
8218         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
8219
8220 2004-07-04  David Schleef  <ds@schleef.org>
8221
8222         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
8223
8224 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8225
8226         * gst/gstbin.c: (gst_bin_restore_thyself):
8227           chain to parent restore so the bins get restored correctly
8228           in the editor
8229
8230 2004-07-03  David Schleef  <ds@schleef.org>
8231
8232         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
8233         Actually do something in these functions, like before the big
8234         caps change.  (bug #145137)
8235
8236 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8237
8238         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
8239         (gst_element_get_compatible_pad_filtered):
8240         * gst/gstthread.c: (gst_thread_main_loop):
8241           more debugging
8242
8243 2004-07-02  David Schleef  <ds@schleef.org>
8244
8245         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
8246         * gst/gstobject.h:
8247         * gst/gstparse.h:
8248         * gst/gsttrace.h:
8249         * gst/gstxml.h:
8250
8251 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8252
8253         * gst/gstpad.c: (gst_pad_check_schedulers),
8254         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
8255         (gst_pad_link_prepare):
8256           revert until testsuite is fixed
8257
8258 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8259
8260         * testsuite/Makefile.am:
8261         * testsuite/caps/filtercaps.c: (main):
8262         * testsuite/clock/clock1.c: (main):
8263         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
8264           fix some more tests
8265
8266 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8267
8268         * testsuite/cleanup/cleanup1.c: (create_pipeline):
8269         * testsuite/cleanup/cleanup2.c: (create_pipeline):
8270         * testsuite/cleanup/cleanup4.c: (main):
8271           fix testsuite
8272
8273 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8274
8275         * libs/gst/control/control.c:
8276         * libs/gst/control/dparam.c:
8277         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
8278         * libs/gst/control/dparammanager.c:
8279         * libs/gst/control/dparammanager.h:
8280         * testsuite/dynparams/Makefile.am:
8281         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
8282         (gst_dptest_change_state), (gst_dptest_chain), (main):
8283           fix testcase for dparams
8284           add debugging category
8285
8286 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8287
8288         * testsuite/Rules:
8289           change path
8290
8291 2004-07-02  Benjamin Otte  <otte@gnome.org>
8292
8293         * tests/.cvsignore:
8294         * tests/Makefile.am:
8295         * tests/mass_elements.c: (gst_get_current_time), (main):
8296           add simple benchmark to test various speeds of fakesrc ! identity !
8297           identity ! ... ! fakesink.
8298           Usage: mass_elements [num_identities] [num_buffers]
8299           If not specified they default to 1000.
8300
8301 2004-07-02  Benjamin Otte  <otte@gnome.org>
8302
8303         * gst/gstpad.c: (gst_pad_check_schedulers),
8304         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
8305         (gst_pad_link_prepare):
8306           check that pads that get linked belong to the same manager. The old
8307           code allowed linking elements before putting them into bins, so it
8308           worked to link them and then put them in different threads, which
8309           lead to weird behaviour.
8310           Since this effectively disallows linking elements before putting
8311           them in a bin, some applications might not work after this and error
8312           out. If these applications are too critical, we might need to revert
8313           that patch. Please test this before the next release...
8314
8315 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8316
8317         * gst/gstpad.c: (gst_pad_get_caps):
8318           throw an error if the getcaps function does not return a subset of
8319           the template caps.
8320         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
8321           make disconts without position info an error in debugging
8322         * tests/spidey_bench.c: (handoff), (main):
8323           don't count first try when averaging
8324
8325 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8326
8327         * gst/gstplugin.c: (gst_plugin_load_file):
8328           figure out problem with dynamic test
8329
8330 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8331
8332         * docs/gst/Makefile.am:
8333           fix docs build
8334
8335 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8336
8337         * po/POTFILES.in:
8338         * po/af.po:
8339         * po/az.po:
8340         * po/en_GB.po:
8341         * po/fr.po:
8342         * po/nl.po:
8343         * po/sr.po:
8344         * po/sv.po:
8345         * po/tr.po:
8346         * po/uk.po:
8347         * tools/gst-register.c: (plugin_added_func), (main):
8348           i18n-ize -register, fix plural
8349
8350 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8351
8352         * gst/elements/gstidentity.c: (gst_identity_class_init),
8353         (gst_identity_init), (gst_identity_chain),
8354         (gst_identity_set_property), (gst_identity_get_property):
8355         * gst/elements/gstidentity.h:
8356           check for perfect stream
8357
8358 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8359
8360         * gst/elements/gstidentity.c: (gst_identity_chain):
8361           print offset_end
8362
8363 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8364
8365         * docs/gst/Makefile.am:
8366         * docs/gst/gstreamer-docs.sgml:
8367           doc fixes
8368
8369 2004-06-24  David Schleef  <ds@schleef.org>
8370
8371         * autogen.sh:  Remove call to env, since the buildbot isn't
8372         broken anymore.
8373
8374 2004-06-24  Wim Taymans  <wim@fluendo.com>
8375
8376         * gst/elements/Makefile.am:
8377         * gst/elements/gstelements.c:
8378         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
8379         (gst_multifdsink_class_init), (gst_multifdsink_init),
8380         (gst_multifdsink_add), (gst_multifdsink_remove),
8381         (gst_multifdsink_clear), (gst_multifdsink_chain),
8382         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
8383         * gst/elements/gstmultifdsink.h:
8384         Added an element that writes to multiple filedescriptors at once.
8385
8386 2004-06-24  Benjamin Otte  <otte@gnome.org>
8387
8388         * gst/parse/grammar.y:
8389           don't try to link elements before they have been added to bins
8390
8391 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8392
8393         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
8394         (gst_file_pad_get_length):
8395         * libs/gst/bytestream/filepad.h:
8396           add 2 new functions
8397
8398 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8399
8400         * docs/gst/gstreamer-sections.txt:
8401         remove from docs, the define that Benjamin removed from gstelement.h
8402
8403 2004-06-22  Benjamin Otte  <otte@gnome.org>
8404
8405         * gst/gstelement.h:
8406           remove define that referenced a nonexisting GstElement struct member
8407
8408 2004-06-20  Benjamin Otte  <otte@gnome.org>
8409
8410         * gst/gstdata.c: (gst_data_is_writable):
8411           whoops, return values were wrong, so writable data was marked as
8412           non-writable and vice versa. (fixes #143953, spotted by Francis
8413           Labonte)
8414           Shows how rarely we need to copy data ;)
8415
8416 2004-06-20  Benjamin Otte  <otte@gnome.org>
8417
8418         * testsuite/schedulers/.cvsignore:
8419         * testsuite/schedulers/Makefile.am:
8420         * testsuite/schedulers/143777-2.c: (main):
8421           add test for opt breakage in bug #143777
8422
8423 2004-06-20  Benjamin Otte  <otte@gnome.org>
8424
8425         * gst/gstpad.c: (gst_pad_call_chain_function):
8426           check for if we were unlinked while inside the chainfunction (fixes
8427           entrygthread having issues with #143777)
8428         * testsuite/schedulers/143777.c: (main):
8429         * testsuite/schedulers/Makefile.am:
8430           add a test for that fix
8431
8432 2004-06-20  Benjamin Otte  <otte@gnome.org>
8433
8434         * gst/gstvalue.c: (gst_value_set_int_range):
8435           test that start is smaller then end
8436         * libs/gst/bytestream/Makefile.am:
8437         * libs/gst/bytestream/filepad.c: 
8438         * libs/gst/bytestream/filepad.h:
8439           add GstFilePad - a pad that behaves like a FILE*
8440         * testsuite/bytestream/.cvsignore:
8441         * testsuite/bytestream/Makefile.am:
8442         * testsuite/bytestream/filepadsink.c: 
8443           test for the GstFilePad
8444
8445 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8446
8447         * gst/elements/gstidentity.c: (gst_identity_class_init),
8448         (gst_identity_init), (gst_identity_set_clock),
8449         (gst_identity_chain), (gst_identity_set_property),
8450         (gst_identity_get_property):
8451         * gst/elements/gstidentity.h:
8452         * gst/gstclock.c: (gst_clock_id_wait):
8453           add a "sync" property to sync to the clock
8454
8455 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8456
8457         * gst/gstelementfactory.c: (gst_element_factory_create):
8458           make the freakin "elementfactory bla has no type" message more
8459           useful. So we actually can do something when someone shows up
8460           complaining about it.
8461
8462 2004-06-15  Johan Dahlin  <johan@gnome.org>
8463
8464         * tools/gst-inspect.c (main): Fallback to plugin if no element is
8465         found. This matches the old behavior better. Thanks to Thomas for
8466         pointing out.
8467
8468 2004-06-14  David Schleef  <ds@schleef.org>
8469
8470         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
8471         -fomit-frame-pointer.  Appears to generate correct code in
8472         other cases as well.
8473
8474 2004-06-14  Johan Dahlin  <johan@gnome.org>
8475
8476         * tools/gst-inspect.c (main): Add two new command line options: -a
8477         to print all elements and -n to print the name on each line. Also
8478         fix some error reporting.
8479         (main): Simplify, remove -n and always print names if -a is specified
8480
8481 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
8482
8483         * win32/gstconfig.h:
8484         * win32/GSTreamer.vcproj:
8485         * win32/Makefile:
8486         * gst/gstconfig.h.in:
8487         * gst/gst.h:
8488         * gst/gstbin.h:
8489         * gst/gstelement.h:
8490         * gst/gstevent.h:
8491         * gst/gstobject.h:
8492         * gst/gstpad.h:
8493         * docs/gst/gstreamer-sections.txt:
8494         * docs/gst/tmpl/gstconfig.sgml:
8495           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
8496
8497 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8498         * docs/gst/gstreamer-sections.txt:
8499         * docs/gst/tmpl/gstconfig.sgml:
8500         Add the GSTREAMER_EXPORT macro to the docs
8501
8502 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8503
8504         * tools/gst-compprep.c: (handle_xmlerror), (main):
8505         Add a check for the version that introduced SetStructuredError to fix
8506         the build on FC1
8507
8508 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8509
8510         * win32/msvc71.sln:
8511         * win32/testsuite/:
8512           prepare to compile the testsuite with MSVC
8513
8514 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8515
8516         * docs/manual/win32.xml:
8517           attempt to transform the Win32 README into an XML doc
8518
8519 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8520
8521         * gst/gst.c:
8522         * gst/gstbin.*:
8523         * gst/config.h.in:
8524         * gst/gstelement.*:
8525         * gst/gstevent.h:
8526         * gst/gstobject.*:
8527         * gst/gstpad.h:
8528         * tools/gst-register.c:
8529         * win32/gstreamer.def:
8530           extern symbols are now exported for the Windows DLL
8531
8532 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8533
8534         * gst/gstinfo.h:
8535           fix a problem to enable/disable DEBUG under MSVC
8536
8537 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8538
8539         * win32/:
8540           enable more debug code in DEBUG build
8541
8542 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8543
8544         * win32/config.h:
8545         * gst/gst-i18n-app.h:
8546           enable NLS under Windows
8547
8548 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
8549         * tools/gst-compprep.c: (handle_xmlerror), (main):
8550           Make an error that baffled me a bit clearer
8551
8552 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8553
8554         * gst/gstqueue.c:
8555           don't use g_queue_get_length () because it's 2.4, use ->length
8556
8557 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
8558
8559         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
8560
8561         * tools/gst-inspect.c: (print_signal_info):
8562           don't free random data twice. (fixes #144185)
8563
8564 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
8565
8566         * gst/gstqueue.c:
8567         * gst/gstqueue.h:
8568           fix removing from the wrong queue on event timeout
8569           fix disposing of the event queue by casting correctly
8570           add mutexes for handling the event queue
8571           someone was sleeping when fixing queue last time around :)
8572
8573 2004-06-10  Johan Dahlin  <johan@gnome.org>
8574
8575         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
8576         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
8577
8578 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8579
8580         * docs/random/gdp:
8581         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
8582         * libs/gst/dataprotocol/dataprotocol.c:
8583         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8584         (gst_dp_buffer_from_header):
8585         * libs/gst/dataprotocol/dataprotocol.h:
8586         * libs/gst/dataprotocol/dp-private.h:
8587           rev version to 0.1, add buffer flags and copy them
8588
8589 2004-06-09  Johan Dahlin  <johan@gnome.org>
8590
8591         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
8592         the flags from the buffer we're copying.
8593
8594 2004-06-09  Wim Taymans  <wim@fluendo.com>
8595
8596         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
8597         * gst/elements/gstidentity.c: (gst_identity_init),
8598         (gst_identity_chain):
8599         Print more buffer info in fakesink.
8600         Make identity output similar to fakesink.
8601
8602 2004-06-07  Daniel Gazard  <dany42@free.fr>
8603
8604         reviewed by Benjamin Otte  <otte@gnome.org>
8605
8606         * configure.ac:
8607           fix cross compiling not working. (fixes #143741)
8608
8609 2004-06-07  Benjamin Otte  <otte@gnome.org>
8610
8611         * gst/gstelement.c: (gst_element_set_time_delay):
8612           add failure check
8613         * gst/gstinfo.h:
8614           put brackets around macro arguments of GST_TIME_ARGS, add note to
8615           move it to correct header in 0.9
8616
8617 2004-06-07  Benjamin Otte  <otte@gnome.org>
8618
8619         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
8620         (gst_file_index_load), (_file_index_id_save_entries),
8621         (gst_file_index_commit), (gst_file_index_add_association),
8622         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
8623         (gst_file_index_plugin_init):
8624           make debugging use a default category
8625
8626 2004-06-06  David Moore  <dcm@acm.org>
8627
8628         reviewed by Benjamin Otte  <otte@gnome.org>
8629
8630         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
8631         (gst_fdsrc_change_state):
8632           reset offset counter when going READY => PAUSED. (fixes #142903)
8633
8634 2004-06-06  ed@catmur.co.uk
8635
8636         reviewed by Benjamin Otte  <otte@gnome.org>
8637
8638         * gst/registries/gstxmlregistry.c:
8639         (gst_xml_registry_rebuild_recurse):
8640           don't rely on g_dir_open to figure out if a file is a directory, use
8641           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
8642           directories. (fixes #142850)
8643
8644 2004-06-06  Benjamin Otte  <otte@gnome.org>
8645
8646         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
8647           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
8648         * libs/gst/bytestream/adapter.c:
8649         * libs/gst/bytestream/adapter.h:
8650           fix copyright in header and typo in debugging category name
8651
8652 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8653
8654         * configure.ac:
8655           bump nano to cvs
8656
8657 === release 0.8.3 ===
8658
8659 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8660
8661         * configure.ac:
8662           update libtool versioning
8663           do a new release
8664         * docs/gst/tmpl/gstelement.sgml:
8665         * docs/gst/tmpl/gsttypes.sgml:
8666         * gst/gstinfo.c: (_gst_debug_init):
8667           put back GST_CAT_DATAFLOW to fix API breakage
8668
8669 2004-06-04  David Schleef  <ds@schleef.org>
8670
8671         * autogen.sh: Add a temporary 'env' to test buildbot problems.
8672
8673 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8674
8675         * configure.ac:
8676           bump nano to cvs
8677
8678 === release 0.8.2 ===
8679
8680 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8681
8682         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
8683           check GST_DEBUG environment variable which is parsed the same way
8684           as --gst-debug=
8685
8686 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8687
8688         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
8689                             gstmd5sink.c gstshaper.c gsttee.c
8690                             gsttypefindelement.c
8691         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
8692
8693           - removing trailing commas at end of enums
8694             it is correct C99 code but C90 compilers would complain
8695             (AIX, Forte, ...)
8696             ('should' fix #143290, at least partially)
8697
8698 2004-05-27  Wim Taymans  <wim@fluendo.com>
8699
8700         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
8701         (chain_group_set_enabled), (create_group), (add_to_group),
8702         (merge_groups), (setup_group_scheduler), (group_elements),
8703         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
8704         Don't try to follow the pad connections with other groups
8705         when a loop based element is added to the scheduler because
8706         the bin will inform the scheduler about the pad links a little
8707         later.
8708
8709 2004-05-27  Wim Taymans  <wim@fluendo.com>
8710
8711         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8712         (remove_from_chain), (chain_group_set_enabled),
8713         (setup_group_scheduler), (group_element_set_enabled),
8714         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
8715         (gst_opt_scheduler_show):
8716         Elements without a group can do a state change as well, just wait
8717         with the setup of the scheduling function when it is added to a
8718         chain.
8719
8720 2004-05-27  Wim Taymans  <wim@fluendo.com>
8721
8722         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8723         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
8724         (merge_groups), (setup_group_scheduler),
8725         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
8726         (gst_opt_scheduler_show):
8727         Fixes to maintain internal consistency of the scheduler data
8728         structures. 
8729          - adding an enabled group to a chain should increment the
8730            number of enabled elements in that chain.
8731          - removing an enabled group from a chain could disable the
8732            chain.
8733          - removing a disabled group from a chain could enable the
8734            chain.
8735          - add g_assert when internal inconsistency is detected.
8736          - adding an element to a group could increase the number of
8737            links this group has with other groups.
8738          - merging two groups also merges the chains.
8739          - also show group links in the _show method.
8740            
8741
8742 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8743
8744         * gst/gstcaps.c: (gst_caps_structure_simplify):
8745           don't print error messages when there is no error
8746         * gst/gstvalue.c: (gst_value_compare_int_range):
8747           compare the second value, too
8748         * testsuite/caps/Makefile.am:
8749         * testsuite/caps/random.c: (assert_on_error), (main):
8750           add tests to make sure the two things above are checked for
8751
8752 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8753
8754         * configure.ac:
8755         * libs/gst/dataprotocol/Makefile.am:
8756         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
8757         * libs/gst/dataprotocol/dataprotocol.h:
8758           wrap header in GST_ENABLE_NEW.  make code use it
8759
8760 2004-05-23  Johan Dahlin  <johan@gnome.org>
8761
8762         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
8763         so verbose and print GstElement signal names all the time.
8764
8765 2004-05-22  David Schleef  <ds@schleef.org>
8766
8767         * gst/registries/gstxmlregistry.c:
8768         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
8769         (bug #142957)
8770
8771 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
8772
8773         * configure.ac:
8774           scrub cflags for glib2 so gcc doesn't complain when glib is in
8775           /usr/local
8776
8777 2004-05-21  Johan Dahlin  <johan@gnome.org>
8778
8779         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
8780         __GNUC__, patch from Brian Cameron, fixes bug #142804
8781
8782 2004-05-20  David Schleef  <ds@schleef.org>
8783
8784         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
8785         comparison code.  (bug #142819)
8786
8787 2004-05-20  Wim Taymans  <wim@fluendo.com>
8788
8789         * gst/gstbuffer.c: (gst_buffer_default_copy):
8790         * gst/gstbuffer.h:
8791         Added Comment to a flag.
8792         copy relevant flags in _buffer_copy.
8793
8794 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8795
8796         reviewed by: Wim Taymans <wim at fluendo dot com>
8797
8798         * gst/gstbuffer.h:
8799           add GST_BUFFER_IN_CAPS buffer flag
8800         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8801         (gst_structure_parse_any_list), (gst_structure_parse_list),
8802         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
8803         * gst/gstvalue.c: (gst_value_serialize_any_list),
8804         (gst_value_transform_any_list_string),
8805         (gst_value_list_prepend_value), (gst_value_list_append_value),
8806         (gst_value_list_get_size), (gst_value_list_get_value),
8807         (gst_value_transform_list_string),
8808         (gst_value_transform_fixed_list_string),
8809         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
8810         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
8811         (_gst_value_initialize):
8812         * gst/gstvalue.h:
8813           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
8814           < , > as a format.
8815         * testsuite/caps/string-conversions.c: (main):
8816           add regression tests for < >
8817
8818 2004-05-20  Johan Dahlin  <johan@gnome.org>
8819
8820         * docs/gst/Makefile.am (all-local): Re-add
8821
8822 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8823
8824         * docs/gst/Makefile.am:
8825         * docs/gst/gstreamer-docs.sgml:
8826         * docs/libs/Makefile.am:
8827         * docs/libs/gstreamer-libs-docs.sgml:
8828           fix distcheck issues
8829
8830 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8831
8832         * libs/gst/dataprotocol/Makefile.am:
8833           add to autotest
8834
8835 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8836
8837         * libs/gst/dataprotocol/Makefile.am:
8838         * libs/gst/dataprotocol/dataprotocol.c:
8839         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8840         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
8841         * libs/gst/dataprotocol/dp-private.h:
8842           use GST macros to read/write fixed length ints
8843           add some more asserts
8844
8845 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8846
8847         * docs/libs/gstreamer-libs-docs.sgml:
8848         * docs/libs/gstreamer-libs-sections.txt:
8849           remove idct and putbits
8850         * configure.ac:
8851         * docs/libs/tmpl/gstdataprotocol.sgml:
8852         * libs/gst/Makefile.am:
8853         * libs/gst/dataprotocol/Makefile.am:
8854         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
8855         (buffer_test), (caps_test), (event_test), (main):
8856         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
8857         (gst_dp_dump_byte_array), (gst_dp_init),
8858         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
8859         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8860         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
8861         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
8862         (gst_dp_validate_header), (gst_dp_validate_payload),
8863         (gst_dp_validate_packet), (plugin_init):
8864         * libs/gst/dataprotocol/dataprotocol.h:
8865         * libs/gst/dataprotocol/dp-private.h:
8866           add dataprotocol
8867
8868 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8869
8870         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
8871           fix int variable deserialization and add a helper so we can actually
8872           debug this.
8873
8874 2004-05-18  David Schleef  <ds@schleef.org>
8875
8876         * testsuite/debug/commandline.c: (main): Call ./commandline, not
8877           argv[0].  Calling yourself is probably not the best way to
8878           construct a test like this, btw.
8879
8880 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8881
8882         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
8883           don't claim to be more intelligent than a scheduler when the
8884           scheduler claims the pipeline is stopped
8885         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
8886         (safe_cothread_destroy),
8887         (gst_entry_scheduler_remove_all_cothreads),
8888         (gst_entry_scheduler_reset), (_remove_cothread),
8889         (gst_entry_scheduler_state_transition):
8890           hold off cothread destruction if we're not in main cothread
8891         * configure.ac:
8892         * testsuite/Makefile.am:
8893           add new test dir
8894         * testsuite/schedulers/.cvsignore:
8895         * testsuite/schedulers/Makefile.am:
8896           add tests
8897         * testsuite/schedulers/relink.c: (cb_handoff), (main):
8898           check relinking and adding/removing elements from a running pipeline
8899         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
8900           check unlinking in a running pipeline
8901         * testsuite/schedulers/unref.c: (cb_handoff), (main):
8902           check unreffing a running pipeline
8903         * testsuite/schedulers/useless_iteration.c: (main):
8904           check iterating a pipeline that contains running threads works
8905
8906 2004-05-18  David Schleef  <ds@schleef.org>
8907
8908         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
8909           is false.
8910
8911 2004-05-18  Wim Taymans  <wim@fluendo.com>
8912
8913         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8914         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
8915         Fixed an error introduced with patch for 1.63. When setting
8916         a get based element as the entry point in a group, make sure
8917         to mark the group as GET based.
8918
8919 2004-05-18  Wim Taymans  <wim@fluendo.com>
8920
8921         * gst/schedulers/gstoptimalscheduler.c: (create_group),
8922         (setup_group_scheduler), (loop_group_schedule_function),
8923         (gst_opt_scheduler_pad_link):
8924         Added some more debug info and fixed a bug where the group
8925         type was set to LOOP but it was in fact unknown.
8926
8927 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8928
8929         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
8930           make resetting scheduler work twice in a row
8931
8932 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8933
8934         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
8935         (CREATE_USERIALIZATION), (_gst_value_initialize),
8936         (gst_value_compare_float), (gst_value_serialize_float),
8937         (gst_value_deserialize_float), (gst_value_compare_enum),
8938         (gst_value_serialize_enum), (gst_value_deserialize_enum):
8939           add serialization and comparison functions for long, int64, enum and
8940           float values
8941         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
8942           use best serialization function in type hierarchy instead of only a
8943           matching one. This is required for enums to work.
8944         * gst/parse/grammar.y:
8945           use gst_caps_deserialize
8946         * testsuite/parse/Makefile.am:
8947           parse1 now works
8948         * testsuite/parse/parse1.c: (main):
8949           remove aggregator check, aggregator is broken, this test works now
8950           but fails because of bug #138012
8951         * testsuite/parse/parse2.c: (main):
8952           s/xvideosink/xvimagesink - this test looks a lot like we should
8953           disable it
8954
8955 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8956
8957         * gst/gstelement.c: (gst_element_class_init):
8958           whoops, store the signal id correctly
8959         * gst/schedulers/gstbasicscheduler.c:
8960         (gst_basic_scheduler_chain_wrapper):
8961           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
8962           chain function isn't linked
8963
8964 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
8965         * configure.ac:
8966         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
8967         support until we decide where the flags should be used
8968         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
8969         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
8970         * gst/gstpad.c: (gst_pad_link_call_link_functions):
8971         Output refused caps in the debug info
8972
8973 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8974
8975         * gst/elements/gstidentity.c: (gst_identity_chain):
8976           add duration debug
8977         * gst/gstinfo.c: (gst_debug_log_default):
8978           add timestamp
8979
8980 2004-05-13  Benjamin Otte  <otte@gnome.org>
8981
8982         * gst/gstpipeline.c: (gst_pipeline_dispose),
8983         (gst_pipeline_change_state):
8984           call gst_scheduler_reset on dispose (fixes #141416)
8985
8986 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8987
8988         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8989           compute mapsize correctly
8990         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8991           use correct datatypes when calling a varargs function
8992         * gst/elements/gsttypefindelement.c: (stop_typefinding):
8993           push a DISCONT event as first thing
8994         * gst/gst_private.h:
8995         * gst/gstinfo.c: (_gst_debug_init):
8996           remove GST_DATAFLOW debugging category
8997         * gst/gstbin.c: (gst_bin_iterate):
8998           use GST_SCHEDULING category
8999         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
9000         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
9001         (gst_pad_call_get_function):
9002           add GST_DATAFLOW to easily track flow of buffers or events.
9003         * gst/gstqueue.c: (gst_queue_get_type),
9004         (gst_queue_handle_pending_events), (gst_queue_chain),
9005         (gst_queue_get), (gst_queue_handle_src_event):
9006           use own static debugging category GST_DATAFLOW for dataflow,
9007           use DEBUG category for showing which path events go, use LOG
9008           category for buffers.
9009
9010 2004-05-10  David Schleef  <ds@schleef.org>
9011
9012         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
9013
9014 2004-05-10  David Schleef  <ds@schleef.org>
9015
9016         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
9017         symbols, because otherwise we don't know what they are.  Thanks,
9018         the GStreamer team.
9019         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
9020
9021 2004-05-10  David Schleef  <ds@schleef.org>
9022
9023         (from Steve Lhomme)
9024         * win32/Makefile: When using make clean the MS Visual Studio makefiles
9025         are deleted.  Fix.
9026         * win32/Makefile.inspect:
9027         * win32/Makefile.launch:
9028         * win32/Makefile.register:
9029
9030 2004-05-10  David Schleef  <ds@schleef.org>
9031
9032         * gst/gstinfo.h: Add missing inline function.
9033         * gst/gsttrace.c: add include
9034         * gst/parse/grammar.y: remove unused code
9035         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
9036         more portable.
9037         * tools/gst-register.c: wrap unistd.h
9038         
9039         More additions/fixes from Steve for the MSVC build.
9040         * win32/GStreamer.vcproj:
9041         * win32/Makefile:
9042         * win32/Makefile.inspect:
9043         * win32/Makefile.launch:
9044         * win32/Makefile.register:
9045         * win32/README.txt:
9046         * win32/gst-inspect.vcproj:
9047         * win32/gst-launch.vcproj:
9048         * win32/gst-register.vcproj:
9049         * win32/gstbytestream.def:
9050         * win32/gstbytestream.vcproj:
9051         * win32/gstconfig.h:
9052         * win32/gstelements.def:
9053         * win32/gstelements.vcproj:
9054         * win32/gstenumtypes.c:
9055         * win32/gstenumtypes.h:
9056         * win32/gstoptimalscheduler.def:
9057         * win32/gstoptimalscheduler.vcproj:
9058         * win32/gstreamer.def:
9059         * win32/gstspider.def:
9060         * win32/gstspider.vcproj:
9061         * win32/gstversion.h:
9062         * win32/msvc71.sln:
9063
9064 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9065
9066         * gst/gstelement.c: (gst_element_class_init),
9067         (gst_element_no_more_pads):
9068         * gst/gstelement.h:
9069           add gst_element_no_more_pads and the "no-more-pads" signal
9070
9071 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9072
9073         * gst/gstregistry.c: (gst_registry_add_plugin):
9074           refuse to add plugins when a plugin with same name is already
9075           registered. Fixes a bunch of "How to remove plugins?" issues.
9076           May lead to other problems though, let's test
9077
9078 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9079
9080         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
9081         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
9082         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
9083
9084 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9085
9086         * tests/Makefile.am: fix am16 issue
9087
9088 2004-05-09  Benjamin Otte  <otte@gnome.org>
9089
9090         * libs/gst/bytestream/Makefile.am:
9091           we should indeed add .c files to makefiles or they won't be built
9092           (d'oh)
9093
9094 2004-05-08  Benjamin Otte  <otte@gnome.org>
9095
9096         * gst/gstpad.c: (gst_pad_proxy_fixate):
9097           really reduce the set of caps
9098
9099 2004-05-08  Benjamin Otte  <otte@gnome.org>
9100
9101         * tests/Makefile.am:
9102         * tests/spidey_bench.c: (handoff), (main):
9103           add benchmark to test how long spider needs to create a pipeline
9104
9105 2004-05-08  Benjamin Otte  <otte@gnome.org>
9106
9107         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
9108           mark links as unengaged when unnegotiating instead of deactivating.
9109           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
9110
9111 2004-05-08  Benjamin Otte  <otte@gnome.org>
9112
9113         * docs/manual/helloworld.xml:
9114           s/audiosink/osssink (patch by Patrick Guimond)
9115
9116 2004-05-07  David Schleef  <ds@schleef.org>
9117
9118         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
9119         since it contains important stuff.
9120
9121 2004-05-07  David Schleef  <ds@schleef.org>
9122
9123         * testsuite/caps/caps.c: (test3), (main): A check for appending
9124         ANY caps.
9125
9126 2004-05-07  David Schleef  <ds@schleef.org>
9127
9128         * common/m4/as-compiler-flag.m4: Properly quote arguments,
9129         which may contain commas.  Fixes detection of -Wa,-mregnames
9130
9131 2004-05-06  David Schleef  <ds@schleef.org>
9132
9133         Changes to handle compilers that don't have variadic macro
9134         support.  In particular, glib headers define some inlines
9135         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
9136         builds.
9137         * gst/Makefile.am:
9138         * gst/cothreads.c:
9139         * gst/elements/gstfdsink.c:
9140         * gst/elements/gstfdsrc.c:
9141         * gst/elements/gstfilesink.c:
9142         * gst/elements/gstfilesrc.c:
9143         * gst/gst_private.h:
9144         * gst/gstatomic.c:
9145         * gst/gstcaps.c: (gst_caps_append):
9146         * gst/gstcpu.c: (gst_cpuid_i386):
9147         * gst/gstelement.c:
9148         * gst/gsterror.c:
9149         * gst/gstfilter.c:
9150         * gst/gstinfo.h:
9151         * gst/gstprobe.c:
9152         * gst/gstquery.c:
9153         * gst/gstregistry.c:
9154         * gst/gststructure.c:
9155         * gst/gsttaginterface.c:
9156         * gst/gsttrace.c: (gst_trace_new):
9157         * gst/gsttrashstack.c:
9158         * gst/gsturi.c:
9159         * gst/gstvalue.c:
9160         * gst/parse/grammar.y:
9161         * gst/parse/parse.l:
9162         * tools/gst-inspect.c: (main):
9163         * tools/gst-launch.c: (main):
9164         * tools/gst-xmlinspect.c: (PUT_STRING):
9165
9166 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9167
9168         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9169         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9170         * gst/elements/gstfilesrc.h:
9171           send NEW_MEDIA events correctly
9172         * gst/elements/gsttypefindelement.c: (start_typefinding),
9173         (gst_type_find_element_handle_event):
9174           restart typefinding when we get a NEW_MEDIA event
9175         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
9176         (gst_bin_dispose):
9177           don't die when someone removes elements in callbacks
9178         * gst/gstelement.c: (gst_element_change_state):
9179           improve debugging
9180         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
9181           we need a NEW_MEDIA event to engage a link
9182         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
9183           don't g_print debugging stuff
9184         * testsuite/caps/simplify.c: (check_caps):
9185
9186 2004-05-04  Benjamin Otte  <otte@gnome.org>
9187
9188         * gst/parse/grammar.y:
9189           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
9190
9191 2004-05-04  Benjamin Otte  <otte@gnome.org>
9192
9193         * testsuite/caps/renegotiate.c: (main):
9194           improve output in error case
9195
9196 2004-05-04  Benjamin Otte  <otte@gnome.org>
9197
9198         * gst/parse/grammar.y:
9199           fix assert to not trigger when there's no error argument
9200         * gst/parse/parse.l:
9201           fix definition of caps to allow more than two structures
9202         * testsuite/caps/Makefile.am:
9203         * testsuite/caps/renegotiate.c: (main):
9204           it's sinesrc and works in that case
9205
9206 2004-05-04  Wim Taymans  <wim@fluendo.com>
9207
9208         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
9209         (group_dec_link), (gst_opt_scheduler_pad_unlink):
9210         when removing an element from a group, we always need to
9211         decrement the link count that this group had with other 
9212         groups through the element.
9213         added an extra assert to catch inconsistencies when decrementing
9214         the link count.
9215
9216 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9217
9218         * configure.ac:
9219         * docs/gst/Makefile.am:
9220         * docs/gst/gstreamer-sections.txt:
9221         * docs/gst/tmpl/gstcompat.sgml:
9222         * examples/appreader/Makefile.am:
9223         * examples/cutter/Makefile.am:
9224         * examples/events/Makefile.am:
9225         * examples/helloworld/Makefile.am:
9226         * examples/helloworld2/Makefile.am:
9227         * examples/launch/Makefile.am:
9228         * examples/manual/Makefile.am:
9229         * examples/mixer/Makefile.am:
9230         * examples/pingpong/Makefile.am:
9231         * examples/plugins/Makefile.am:
9232         * examples/queue/Makefile.am:
9233         * examples/queue2/Makefile.am:
9234         * examples/queue3/Makefile.am:
9235         * examples/queue4/Makefile.am:
9236         * examples/retag/Makefile.am:
9237         * examples/thread/Makefile.am:
9238         * examples/typefind/Makefile.am:
9239         * examples/xml/Makefile.am:
9240         * gst/Makefile.am:
9241         * gst/autoplug/Makefile.am:
9242         * gst/elements/Makefile.am:
9243         * gst/gstcompat.h:
9244         * gst/indexers/Makefile.am:
9245         * gst/parse/Makefile.am:
9246         * gst/registries/Makefile.am:
9247         * gst/schedulers/Makefile.am:
9248         * libs/gst/bytestream/Makefile.am:
9249         * libs/gst/control/Makefile.am:
9250         * libs/gst/getbits/Makefile.am:
9251         * po/af.po:
9252         * po/az.po:
9253         * po/en_GB.po:
9254         * po/fr.po:
9255         * po/nl.po:
9256         * po/sr.po:
9257         * po/sv.po:
9258         * po/tr.po:
9259         * po/uk.po:
9260         * tests/Makefile.am:
9261         * tests/bufspeed/Makefile.am:
9262         * tests/instantiate/Makefile.am:
9263         * tests/memchunk/Makefile.am:
9264         * tests/muxing/Makefile.am:
9265         * tests/negotiation/Makefile.am:
9266         * tests/probes/Makefile.am:
9267         * tests/sched/Makefile.am:
9268         * tests/seeking/Makefile.am:
9269         * tests/threadstate/Makefile.am:
9270         * testsuite/caps/Makefile.am:
9271         * testsuite/cleanup/Makefile.am:
9272         * testsuite/dlopen/Makefile.am:
9273         * testsuite/dynparams/Makefile.am:
9274         * testsuite/plugin/Makefile.am:
9275         * testsuite/states/Makefile.am:
9276         * tools/Makefile.am:
9277           reorganize compile/link flags to be consistent
9278           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
9279
9280 2004-05-04  David Schleef  <ds@schleef.org>
9281
9282         The "once more, with feeling" check-in.
9283         * testsuite/caps/Makefile.am: dist caps_strings
9284         * testsuite/caps/renegotiate.c: (main): This test triggers a
9285           segfault in the core.  Marking as failing.
9286
9287 2004-05-03  David Schleef  <ds@schleef.org>
9288
9289         * testsuite/caps/deserialize.c: (main): Fix problems noticed
9290           by the build bots.
9291         * testsuite/caps/renegotiate.c: (main): Same.
9292
9293 2004-05-03  David Schleef  <ds@schleef.org>
9294
9295         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
9296
9297 2004-05-03  David Schleef  <ds@schleef.org>
9298
9299         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
9300           variable to find our source file.
9301
9302 2004-05-03  David Schleef  <ds@schleef.org>
9303
9304         * configure.ac:  Link plugins with libgstreamer and dependent
9305           libraries
9306         * testsuite/caps/Makefile.am:
9307         * testsuite/caps/caps_strings:
9308         * testsuite/caps/deserialize.c: (main): Add a little test to slog
9309           through a file of caps strings and test each one
9310
9311 2004-05-04  Benjamin Otte  <otte@gnome.org>
9312
9313         * libs/gst/bytestream/Makefile.am:
9314         * libs/gst/bytestream/adapter.c: 
9315         * libs/gst/bytestream/adapter.h:
9316           add GstAdapter, similar to bytestream, but doesn't require ugly event
9317           handling or uglier loopbased elements
9318
9319 2004-05-03  David Schleef  <ds@schleef.org>
9320
9321         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
9322         * testsuite/caps/erathostenes.c:
9323         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
9324
9325 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9326
9327         * docs/pwg/pwg.xml:
9328           remove hardcoded stylesheet path (duh)
9329         * docs/random/release:
9330         * docs/gst/gstreamer-sections.txt:
9331         * gst/Makefile.am:
9332         * gst/gst.h:
9333         * gst/gst_private.h:
9334         * gst/gstcaps.c:
9335         * gst/gstevent.c:
9336         * gst/gstformat.c:
9337         * gst/gstinfo.c:
9338         * gst/gstinfo.h:
9339         * gst/gstinterface.c:
9340         * gst/gstmemchunk.c:
9341         * gst/gstprobe.c:
9342         * gst/gstquery.c:
9343         * gst/gstregistry.c:
9344         * gst/gstregistrypool.c:
9345         * gst/gststructure.c:
9346         * gst/gsttaginterface.c:
9347         * gst/gstthread.c:
9348         * gst/gsttrace.c:
9349         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
9350         * gst/gsturi.c:
9351         * gst/gstvalue.c:
9352           deprecate gst_info; remove gstlog.h
9353    
9354
9355 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9356
9357         * Makefile.am:
9358         * po/en_GB.po:
9359         * po/sv.po:
9360         * po/uk.po:
9361           updated translations
9362
9363 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9364
9365         * gst/gstbin.c: (gst_bin_dispose):
9366           better debugging
9367
9368 2004-05-03  Johan Dahlin  <johan@gnome.org>
9369
9370         * gst/schedulers/gstoptimalscheduler.c
9371         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
9372         really is a GstElement. Avoids critical when running gst-launch -v
9373         and a oggdemux/decoding pipeline.
9374
9375 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9376
9377         * docs/gst/tmpl/gstpipeline.sgml :
9378         * docs/manual/elements-api.xml :
9379                 doc fix by Patrick Guimond (Protector) from devel ML
9380                 reviewed by ronald
9381
9382 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9383
9384         * docs/gst/Makefile.am :
9385         * docs/libs/Makefile.am :
9386                 apply a patch from Arwed v. Merkatz so that gtk-doc
9387                 generated docs install (same for .devhelp file)
9388                 (fixes part 1 of #138836)
9389
9390 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9391
9392         * docs/faq/dependencies.xml: typo
9393         * docs/faq/getting.xml :
9394             - fix download URL for new gstreamer site
9395             - hide sf.net download page as latest version aren't there
9396             - fix apt URLs
9397             - fill "get via CVS" paragraph (link to dev page on the site)
9398         * docs/faq/general.xml:
9399             hide status tables as they no more exists
9400             change case on plugins license file to reflect reality
9401         * docs/faq/troubleshooting.xml:
9402             remove the wiki question/answer as there is no more wiki
9403
9404 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9405
9406         * gst/gsterror.h:
9407           include the headers needed for declarations used in this header
9408
9409 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9410
9411         * docs/random/uraeus/gstreamer_and_midi.txt :
9412           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
9413           (fixes #132288)
9414
9415 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
9416
9417         reviewed by Benjamin Otte  <otte@gnome.org>
9418
9419         * gst/schedulers/gthread-cothreads.h:
9420           free allocated data for main cothread, too when destroying context
9421           (fixes #141417)
9422
9423 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9424
9425         * docs/manual/goals.xml : remove duplicated paragraph at end 
9426         of doc page (fixes #141448)
9427
9428 2004-04-29  David Schleef  <ds@schleef.org>
9429
9430         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
9431         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
9432
9433 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9434
9435         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
9436           fix property
9437         * gst/gstcaps.c:
9438           fix doc string
9439         * po/POTFILES.in:
9440           rename typefind source file
9441
9442 2004-04-28  David Schleef  <ds@schleef.org>
9443
9444         Several new files from Steve Lhomme's MSVC patch (bug #141317):
9445         * win32/GStreamer.vcproj:
9446         * win32/Makefile:
9447         * win32/config.h:
9448         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
9449         (_trewinddir), (_ttelldir), (_tseekdir):
9450         * win32/dirent.h:
9451         * win32/gst-inspect.vcproj:
9452         * win32/gst-launch.vcproj:
9453         * win32/gst-register.vcproj:
9454         * win32/gstbytestream.vcproj:
9455         * win32/gstelements.vcproj:
9456         * win32/gstoptimalscheduler.vcproj:
9457         * win32/gstspider.vcproj:
9458         * win32/gtchar.h:
9459         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
9460         * win32/mman.h:
9461         * win32/mman.inl:
9462         * win32/msvc71.sln:
9463
9464 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9465
9466         * gst/gst.c: (init_post):
9467         * gst/gstinfo.c:
9468           remove useless _gst_progname stuff
9469         * tools/gst-inspect.c: (print_field), (print_caps):
9470           improve caps output
9471
9472 2004-04-28  David Schleef  <ds@schleef.org>
9473
9474         Disable parsing of a lot of files that aren't part of the
9475         exported API.  Move corresponding template files to old/,
9476         waiting for removal when they don't contain anything
9477         interesting.
9478         * docs/gst/Makefile.am:
9479         * docs/gst/gstreamer-sections.txt:
9480         * docs/gst/tmpl/cothreads.sgml:
9481         * docs/gst/tmpl/cothreads_compat.sgml:
9482         * docs/gst/tmpl/gettext.sgml:
9483         * docs/gst/tmpl/gobject2gtk.sgml:
9484         * docs/gst/tmpl/grammar.tab.sgml:
9485         * docs/gst/tmpl/gst-i18n-app.sgml:
9486         * docs/gst/tmpl/gst-i18n-lib.sgml:
9487         * docs/gst/tmpl/gst_private.sgml:
9488         * docs/gst/tmpl/gstaggregator.sgml:
9489         * docs/gst/tmpl/gstarch.sgml:
9490         * docs/gst/tmpl/gstatomic_impl.sgml:
9491         * docs/gst/tmpl/gstbufferstore.sgml:
9492         * docs/gst/tmpl/gstdata_private.sgml:
9493         * docs/gst/tmpl/gstdisksink.sgml:
9494         * docs/gst/tmpl/gstdisksrc.sgml:
9495         * docs/gst/tmpl/gstelementfactory.sgml:
9496         * docs/gst/tmpl/gstextratypes.sgml:
9497         * docs/gst/tmpl/gstfakesink.sgml:
9498         * docs/gst/tmpl/gstfakesrc.sgml:
9499         * docs/gst/tmpl/gstfdsink.sgml:
9500         * docs/gst/tmpl/gstfdsrc.sgml:
9501         * docs/gst/tmpl/gstfilesink.sgml:
9502         * docs/gst/tmpl/gstfilesrc.sgml:
9503         * docs/gst/tmpl/gsthttpsrc.sgml:
9504         * docs/gst/tmpl/gstidentity.sgml:
9505         * docs/gst/tmpl/gstindexfactory.sgml:
9506         * docs/gst/tmpl/gstmarshal.sgml:
9507         * docs/gst/tmpl/gstmd5sink.sgml:
9508         * docs/gst/tmpl/gstmultidisksrc.sgml:
9509         * docs/gst/tmpl/gstmultifilesrc.sgml:
9510         * docs/gst/tmpl/gstpadtemplate.sgml:
9511         * docs/gst/tmpl/gstpipefilter.sgml:
9512         * docs/gst/tmpl/gstschedulerfactory.sgml:
9513         * docs/gst/tmpl/gstsearchfuncs.sgml:
9514         * docs/gst/tmpl/gstshaper.sgml:
9515         * docs/gst/tmpl/gstspider.sgml:
9516         * docs/gst/tmpl/gstspideridentity.sgml:
9517         * docs/gst/tmpl/gststatistics.sgml:
9518         * docs/gst/tmpl/gsttee.sgml:
9519         * docs/gst/tmpl/gsttimecache.sgml:
9520         * docs/gst/tmpl/gsttypefind.sgml:
9521         * docs/gst/tmpl/gsttypefindfactory.sgml:
9522         * docs/gst/tmpl/gstxmlregistry.sgml:
9523         * docs/gst/tmpl/gthread-cothreads.sgml:
9524         * docs/gst/tmpl/old/cothreads.sgml:
9525         * docs/gst/tmpl/old/cothreads_compat.sgml:
9526         * docs/gst/tmpl/old/gettext.sgml:
9527         * docs/gst/tmpl/old/gobject2gtk.sgml:
9528         * docs/gst/tmpl/old/grammar.tab.sgml:
9529         * docs/gst/tmpl/old/gst-i18n-app.sgml:
9530         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
9531         * docs/gst/tmpl/old/gst_private.sgml:
9532         * docs/gst/tmpl/old/gstaggregator.sgml:
9533         * docs/gst/tmpl/old/gstarch.sgml:
9534         * docs/gst/tmpl/old/gstatomic_impl.sgml:
9535         * docs/gst/tmpl/old/gstbufferstore.sgml:
9536         * docs/gst/tmpl/old/gstdata_private.sgml:
9537         * docs/gst/tmpl/old/gstdisksink.sgml:
9538         * docs/gst/tmpl/old/gstdisksrc.sgml:
9539         * docs/gst/tmpl/old/gstelementfactory.sgml:
9540         * docs/gst/tmpl/old/gstextratypes.sgml:
9541         * docs/gst/tmpl/old/gstfakesink.sgml:
9542         * docs/gst/tmpl/old/gstfakesrc.sgml:
9543         * docs/gst/tmpl/old/gstfdsink.sgml:
9544         * docs/gst/tmpl/old/gstfdsrc.sgml:
9545         * docs/gst/tmpl/old/gstfilesink.sgml:
9546         * docs/gst/tmpl/old/gstfilesrc.sgml:
9547         * docs/gst/tmpl/old/gsthttpsrc.sgml:
9548         * docs/gst/tmpl/old/gstidentity.sgml:
9549         * docs/gst/tmpl/old/gstindexfactory.sgml:
9550         * docs/gst/tmpl/old/gstmarshal.sgml:
9551         * docs/gst/tmpl/old/gstmd5sink.sgml:
9552         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
9553         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
9554         * docs/gst/tmpl/old/gstpadtemplate.sgml:
9555         * docs/gst/tmpl/old/gstpipefilter.sgml:
9556         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
9557         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
9558         * docs/gst/tmpl/old/gstshaper.sgml:
9559         * docs/gst/tmpl/old/gstspider.sgml:
9560         * docs/gst/tmpl/old/gstspideridentity.sgml:
9561         * docs/gst/tmpl/old/gststatistics.sgml:
9562         * docs/gst/tmpl/old/gsttee.sgml:
9563         * docs/gst/tmpl/old/gsttimecache.sgml:
9564         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
9565         * docs/gst/tmpl/old/gstxmlregistry.sgml:
9566         * docs/gst/tmpl/old/gthread-cothreads.sgml:
9567         * docs/gst/tmpl/old/types.sgml:
9568         * docs/gst/tmpl/types.sgml:
9569
9570         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
9571         gtkdoc-scan doesn't like files with the same name in different
9572         directories.
9573         * gst/elements/Makefile.am:
9574         * gst/elements/gstelements.c:
9575         * gst/elements/gsttypefind.c: 
9576         * gst/elements/gsttypefind.h:
9577         * gst/elements/gsttypefindelement.c:
9578         * gst/elements/gsttypefindelement.h:
9579
9580 2004-04-28  David Schleef  <ds@schleef.org>
9581
9582         A bunch of portability fixes, derived from Steve Lhomme's MSVC
9583         patch (bug #141317):
9584         * gst/gst-i18n-lib.h: Allow disabling gettext.
9585         * gst/gstatomic_impl.h: disable warning when it's dumb.
9586         * gst/gstclock.c: fix include
9587         * gst/gstcompat.h: fix variadic macro
9588         * gst/gstinfo.c: fix include
9589         * gst/gstmacros.h: add defines for inlines on MSVC
9590         * gst/gstplugin.c: fix includes
9591         * gst/gstregistry.c: fix includes
9592         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
9593         * gst/gstsystemclock.c: fix include
9594         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
9595         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
9596         * gst/registries/gstxmlregistry.c:
9597         (gst_xml_registry_parse_element_factory): fix use of non-portable
9598         functions
9599         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
9600         * libs/gst/control/dparammanager.h: same
9601
9602 2004-04-28  David Schleef  <ds@schleef.org>
9603
9604         Move a bunch of unused files to old/ with names that are
9605         not case-insensitive-unique.  These files still contain some
9606         useful information that needs to be merged into gstbin.sgml,
9607         etc., so they shouldn't be deleted yet.
9608         * docs/gst/tmpl/GstBin.sgml:
9609         * docs/gst/tmpl/GstBuffer.sgml:
9610         * docs/gst/tmpl/GstCaps.sgml:
9611         * docs/gst/tmpl/GstClock.sgml:
9612         * docs/gst/tmpl/GstCompat.sgml:
9613         * docs/gst/tmpl/GstData.sgml:
9614         * docs/gst/tmpl/GstElement.sgml:
9615         * docs/gst/tmpl/GstEvent.sgml:
9616         * docs/gst/tmpl/GstIndex.sgml:
9617         * docs/gst/tmpl/GstStructure.sgml:
9618         * docs/gst/tmpl/GstTag.sgml:
9619         * docs/gst/tmpl/old/GstBin.sgml:
9620         * docs/gst/tmpl/old/GstBuffer.sgml:
9621         * docs/gst/tmpl/old/GstCaps.sgml:
9622         * docs/gst/tmpl/old/GstClock.sgml:
9623         * docs/gst/tmpl/old/GstCompat.sgml:
9624         * docs/gst/tmpl/old/GstData.sgml:
9625         * docs/gst/tmpl/old/GstElement.sgml:
9626         * docs/gst/tmpl/old/GstEvent.sgml:
9627         * docs/gst/tmpl/old/GstIndex.sgml:
9628         * docs/gst/tmpl/old/GstStructure.sgml:
9629         * docs/gst/tmpl/old/GstTag.sgml:
9630
9631 2004-04-28  David Schleef  <ds@schleef.org>
9632
9633         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
9634         (gst_caps_append), (gst_caps_append_structure),
9635         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
9636         (gst_caps_set_simple), (gst_caps_set_simple_valist),
9637         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
9638         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
9639         (gst_caps_intersect), (gst_caps_normalize),
9640         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
9641         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
9642         * gst/gstcaps.h: use GST_IS_CAPS().
9643
9644 2004-04-26  David Schleef  <ds@schleef.org>
9645
9646         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
9647         assembly.  gcc doesn't handle it correctly. (bug #141083)
9648         * gst/gsttrashstack.h: same
9649
9650 2004-04-25  Benjamin Otte  <otte@gnome.org>
9651
9652         * gst/gstelement.c: (gst_element_change_state):
9653           fix assertion to do an int comparison
9654
9655 2004-04-25  Benjamin Otte  <otte@gnome.org>
9656
9657         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9658           better debugging output on error
9659
9660 2004-04-25  Benjamin Otte  <otte@gnome.org>
9661
9662         * gst/gstcaps.c: (gst_caps_subtract):
9663           fix memleak
9664
9665 2004-04-23  Benjamin Otte  <otte@gnome.org>
9666
9667         * gst/gstvalue.c: (gst_value_compare_buffer),
9668         (_gst_value_initialize):
9669           add comparison function for buffers
9670
9671 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9672
9673         * docs/pwg/pwg.xml:
9674           Just found out that this so-called "ima-wav" format is really
9675           just "dvi adpcm" (according to the MS WAV documentation). So
9676           renaming it. We didn't use it yet anyway.
9677
9678 2004-04-23  Benjamin Otte  <otte@gnome.org>
9679
9680         * gst/gstcaps.c: (gst_caps_is_always_compatible):
9681           call gst_caps_is_subset
9682
9683 2004-04-23  Benjamin Otte  <otte@gnome.org>
9684
9685         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
9686         (gst_caps_is_subset):
9687           add documentation
9688
9689 2004-04-23  Benjamin Otte  <otte@gnome.org>
9690           
9691         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
9692         (gst_caps_structure_subtract), (gst_caps_subtract),
9693         (gst_caps_structure_figure_out_union),
9694         (gst_caps_structure_simplify), (gst_caps_do_simplify):
9695           fix simplifying and subtracting not working correctly with optional
9696           properties
9697           solve assorted problems that make it now simplify ebven more
9698         * docs/gst/tmpl/gstcaps.sgml:
9699         * gst/gstcaps.h:
9700           make gst_caps_do_simplify return a bool to indicate if it simplified
9701         * testsuite/caps/simplify.c: (main):
9702           add more checks. The tests is quite a bit useless right now because
9703           the core is heavily simplifying itself.
9704         * testsuite/caps/caps.h:
9705           fix caps to contain all optional properties
9706
9707 2004-04-22  Benjamin Otte  <otte@gnome.org>
9708
9709         * docs/gst/tmpl/gstcaps.sgml:
9710         * docs/gst/tmpl/gstfilesrc.sgml:
9711         * docs/gst/tmpl/gststructure.sgml:
9712         * docs/gst/tmpl/gstvalue.sgml:
9713           update for recent API changes
9714         * gst/gstcaps.c: (gst_caps_do_simplify):
9715           fix to stop trying with a freed structure
9716         * gst/gstpad.c: (gst_pad_link_fixate):
9717           simplify caps
9718         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
9719           remove C++ comment
9720         * gst/gstpad.h:
9721           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
9722         * gst/gststructure.c: (gst_structure_value_get_generic_type),
9723         (gst_structure_to_string):
9724           keep the correct type when using lists of ranges
9725         * gst/gstvalue.c: (gst_value_list_prepend_value),
9726         (gst_value_list_append_value):
9727           copy the value before adding to the list (d'oh)
9728         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
9729         (gst_value_subtract_int_range_int_range):
9730           handle overflows correctly
9731         * gst/gstvalue.c: (gst_value_subtract_from_list):
9732           fix memleak
9733         * testsuite/caps/caps.h:
9734           add a caps that caused segfaults
9735
9736 2004-04-22  Benjamin Otte  <otte@gnome.org>
9737
9738         * testsuite/refcounting/pad.c: (main):
9739           fix test
9740
9741 2004-04-22  Benjamin Otte  <otte@gnome.org>
9742
9743         * gst/gstcaps.c: (gst_caps_subtract):
9744           allow subtracting ANY and EMPTY from ANY caps
9745
9746 2004-04-22  Benjamin Otte  <otte@gnome.org>
9747
9748         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
9749         (gst_caps_union):
9750           only simplify in functions that create new caps. Simplifying in
9751           gst_caps_append breaks tests.
9752
9753 2004-04-22  Benjamin Otte  <otte@gnome.org>
9754
9755         * gst/gstcaps.c: (gst_caps_structure_simplify):
9756           unset GValue after use
9757         * gst/gstcaps.c: (gst_caps_append), 
9758         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
9759           use gst_caps_simplify (reduces registry size by 30%)
9760         * gst/gstpad.c: (gst_pad_template_new):
9761           don't allow NULL caps
9762
9763 2004-04-22  Benjamin Otte  <otte@gnome.org>
9764
9765         * docs/gst/gstreamer-sections.txt:
9766           add gst_caps_do_simplify
9767         * gst/gstcaps.c:
9768           add documentation for gst_caps_do_simplify
9769         * gst/gstvalue.h:
9770           fix typo in gst_value_register_subtract_func declaration for gst-doc
9771
9772 2004-04-22  Benjamin Otte  <otte@gnome.org>
9773
9774         * gst/gstcaps.c: (gst_caps_from_string_inplace):
9775           fix bug when converting from empty string.
9776         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
9777         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
9778           use gst_caps_new_empty to allocate a new caps. Only that function
9779           allocates memory for caps now.
9780         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
9781         (gst_caps_remove_structure):
9782           add ability to remove one structure (but not to header yet)
9783         * gst/gstcaps.c: (gst_caps_compare_structures),
9784         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
9785         (gst_caps_structure_simplify), (gst_caps_do_simplify),
9786         * gst/gstcaps.h:
9787           add gst_caps_do_simplify that tries to simplify a caps in place.
9788           Deprecate old gst_caps_simplify function.
9789         * testsuite/caps/caps.h:
9790           add caps.h containing a common set of caps to test against.
9791         * testsuite/caps/sets.c: (check_caps), (main):
9792           use it.
9793         * testsuite/caps/.cvsignore:
9794         * testsuite/caps/Makefile.am:
9795         * testsuite/caps/simplify.c: (check_caps), (main):
9796           add test to check correctness and efficency of caps simplification.
9797
9798 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
9799
9800         reviewed by Benjamin Otte  <otte@gnome.org>
9801
9802         * gst/gstparse.c: (_gst_parse_escape):
9803           Free the GString used in _gst_parse_escape()
9804
9805 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9806
9807         * gst/gstpad.c: (gst_pad_link_negotiate):
9808           refuse to link if the link is not possible
9809         * configure.ac:
9810         * testsuite/Makefile.am:
9811         * testsuite/negotiation/.cvsignore:
9812         * testsuite/negotiation/Makefile.am:
9813         * testsuite/negotiation/pad_link.c: (main):
9814           add test that checks the above behaviour
9815
9816 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9817
9818         * docs/gst/gstreamer-sections.txt:
9819           add newly added API
9820
9821 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9822
9823         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9824         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
9825         (gst_filesrc_open_file), (gst_filesrc_close_file),
9826         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
9827         * gst/elements/gstfilesrc.h:
9828           add support for non-regular files (#140734)
9829
9830 2004-04-21  Benjamin Otte  <otte@gnome.org>
9831
9832         * gst/gstpad.c: (gst_pad_link_fixate):
9833           add sophisticated error checking code to see if fixation functions
9834           did their fixation right
9835
9836 2004-04-21  Benjamin Otte  <otte@gnome.org>
9837
9838         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
9839           check for ANY caps before appending/unioning
9840         * gst/gstcaps.c: (gst_caps_is_subset),
9841         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
9842         (gst_caps_structure_subtract), (gst_caps_subtract):
9843         * gst/gstcaps.h:
9844           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
9845           the API. deprecate gst_caps_is_equal_fixed
9846         * gst/gstpad.c: (gst_pad_try_set_caps):
9847         * gst/gstqueue.c: (gst_queue_link):
9848           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
9849         * gst/gststructure.c: (gst_structure_get_name_id):
9850         * gst/gststructure.h:
9851           add function gst_structure_get_name_id
9852         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
9853         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
9854         (gst_value_subtract_int_range_int_range),
9855         (gst_value_subtract_double_double_range),
9856         (gst_value_subtract_double_range_double),
9857         (gst_value_subtract_double_range_double_range),
9858         (gst_value_subtract_from_list), (gst_value_subtract_list),
9859         (gst_value_can_intersect), (gst_value_subtract),
9860         (gst_value_can_subtract), (gst_value_register_subtract_func),
9861         (_gst_value_initialize):
9862         * gst/gstvalue.h:
9863           add support for subtracting values from each other. Note that
9864           subtracting means subtracting as in set theory. Required for caps
9865           stuff above.
9866         * testsuite/caps/.cvsignore:
9867         * testsuite/caps/Makefile.am:
9868         * testsuite/caps/erathostenes.c: (erathostenes), (main):
9869         * testsuite/caps/sets.c: (check_caps), (main):
9870         * testsuite/caps/subtract.c: (check_caps), (main):
9871           add tests for subtraction and equality code.
9872
9873 2004-04-20  David Schleef  <ds@schleef.org>
9874
9875         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
9876         * gst/indexers/Makefile.am:
9877         * gst/schedulers/Makefile.am:
9878         * libs/gst/bytestream/Makefile.am:
9879         * libs/gst/control/Makefile.am:
9880         * libs/gst/getbits/Makefile.am:
9881
9882 2004-04-20  David Schleef  <ds@schleef.org>
9883
9884         * common/as-libtool.mak: Fine-tune DLL building.
9885         * configure.ac: Link plugins against libgstreamer.  Define plugindir
9886         (like gst-plugins)
9887         * examples/plugins/Makefile.am: remove plugindir
9888         * gst/autoplug/Makefile.am: DLL building fixes
9889         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
9890         Windows.
9891         * gst/elements/gstelements.c: Conditionally disable pipefilter.
9892         * gst/indexers/Makefile.am: DLL building fixes
9893         * gst/schedulers/Makefile.am: DLL building fixes.
9894         * libs/gst/bytestream/Makefile.am: DLL building fixes.
9895         * libs/gst/control/Makefile.am: same
9896         * libs/gst/getbits/Makefile.am: same
9897         * testsuite/Makefile.am: New dlopen directory
9898         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
9899         when dlopened.
9900         * testsuite/dlopen/dlopen_gst.c: (main): same
9901         * testsuite/dlopen/loadgst.c: (do_test): same
9902
9903 2004-04-20  David Schleef  <ds@schleef.org>
9904
9905         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
9906         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
9907
9908 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9909
9910         * gst/gstelement.c: (gst_element_wait),
9911         (gst_element_set_time_delay), (gst_element_change_state):
9912           Use GST_TIME_*
9913
9914 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9915
9916         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
9917         (gst_spider_identity_plug):
9918           improve debugging messages
9919         * gst/gstbin.c: (gst_bin_remove_func):
9920           make sure the state_change function is only called with simple state
9921           transitions
9922
9923 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9924
9925         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
9926         (gst_fakesink_set_property), (gst_fakesink_chain):
9927         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
9928         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
9929         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
9930         * gst/elements/gstidentity.c: (gst_identity_chain),
9931         (gst_identity_set_property):
9932         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
9933         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
9934           add warnings to _set_property for unknown arguments
9935           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
9936
9937 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9938
9939         * Makefile.am:
9940         * docs/manuals.mak:
9941           add .po file download snippet
9942           fix a bug in the doc makefile
9943
9944 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9945
9946         * Makefile.am:
9947         * po/LINGUAS:
9948         * po/en_GB.po:
9949           Added en_GB translation (Gareth Owen)
9950
9951 2004-04-20  Johan Dahlin  <johan@gnome.org>
9952
9953         * gst/gstpad.c (_invent_event): Clean up
9954
9955 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9956
9957         * testsuite/caps/filtercaps.c: (main):
9958           fix test to test things correctly (caps are complicated)
9959
9960 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9961
9962         * testsuite/caps/Makefile.am:
9963         * testsuite/caps/filtercaps.c: (main):
9964           add test (that doesn't work right now, but should)
9965
9966 2004-04-19  David Schleef  <ds@schleef.org>
9967
9968         * configure.ac: Add test for allowing unaligned access.  Add define
9969         to put in gstconfig.h.
9970         * docs/gst/gstreamer-sections.txt: New symbols
9971         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
9972         * docs/gst/tmpl/gstfilesrc.sgml:
9973         * docs/gst/tmpl/gstparse.sgml:
9974         * docs/gst/tmpl/gsttypes.sgml:
9975         * docs/gst/tmpl/gstutils.sgml:
9976         * docs/gst/tmpl/gstvalue.sgml:
9977         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
9978         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
9979         on most !i386/!powerpc architectures.  From Daniel Gazard
9980         <daniel.gazard@free.fr>.  (bug #140156)
9981         * po/af.po: Check in changes made by gettext.
9982         * po/az.po:
9983         * po/fr.po:
9984         * po/nl.po:
9985         * po/sr.po:
9986         * po/sv.po:
9987
9988 2004-04-20  Benjamin Otte  <otte@gnome.org>
9989
9990         * gst/schedulers/entryscheduler.c: 
9991         (gst_entry_scheduler_yield):
9992           refuse to yield when decoupled elements insist on doing that.
9993           At least it's better than crashing
9994
9995 2004-04-19  David Schleef  <ds@schleef.org>
9996
9997         * docs/libs/Makefile.am: Change sinclude to include
9998         * docs/gst/Makefile.am: same
9999         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
10000
10001 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10002
10003         * po/LINGUAS:
10004         * po/uk.po:
10005           Added Ukrainian translation (Maxim V. Dziumanenko)
10006
10007 2004-04-19  Johan Dahlin  <johan@gnome.org>
10008
10009         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
10010         checking here, do it before calling the function.
10011         Clean up, use for loops instead of while loops while iterating
10012         over lists.
10013
10014         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
10015         in debug message.
10016         (gst_spider_create_and_plug): Improve debug message.
10017         General: Replace while loops which iterates over GLists with for
10018         loops. Which are much cleaner, improves readability, especially
10019         for gst_spider_identity_plug
10020
10021         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
10022         fixes bug 140477
10023
10024 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10025
10026         * po/LINGUAS:
10027         * po/tr.po:
10028           Added Turkish translation (Baris Cicek)
10029
10030 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10031
10032         * docs/faq/troubleshooting.xml:
10033           Mention gst-register in the FAQ (fixes 139045).
10034
10035 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10036
10037         * docs/gst/gstreamer-sections.txt:
10038
10039 2004-04-17  Benjamin Otte  <otte@gnome.org>
10040
10041         * gst/gstelement.c: (gst_element_dispose):
10042           simplify
10043         * gst/gstpad.c: (gst_pad_call_chain_function):
10044           don't create loads of events due to bad macro usage
10045
10046 2004-04-16  David Schleef  <ds@schleef.org>
10047
10048         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
10049         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
10050         * gst/gstvalue.c: (gst_value_serialize_buffer),
10051         (gst_value_deserialize_buffer), (gst_type_is_fixed),
10052         (_gst_value_initialize): Create a new function gst_type_is_fixed()
10053         to indicate types that are fixed wrt caps or not.  Switching to
10054         this function fixes (bug #140298).
10055         * gst/gstvalue.h:
10056
10057 2004-04-16  David Schleef  <ds@schleef.org>
10058
10059         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
10060         for GST_UNALIGNED_ACESS, since we essentially know which archs
10061         are ok.
10062
10063 2004-04-17  Benjamin Otte  <otte@gnome.org>
10064
10065         * docs/gst/Makefile.am:
10066           ignore gst/parse directory when building docs (fixes #140205)
10067
10068 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10069
10070         * testsuite/refcounting/mem.c: (vmsize):
10071           do error checking
10072
10073 2004-04-16  Johan Dahlin  <johan@gnome.org>
10074
10075         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
10076         and gst_pad_call_get_function.
10077
10078 2004-04-15  David Schleef  <ds@schleef.org>
10079
10080         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
10081         checks if we can access unaligned memory.
10082         * configure.ac: Use it.
10083
10084 2004-04-16  Benjamin Otte  <otte@gnome.org>
10085
10086         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
10087         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
10088         * gst/elements/gstfilesrc.h:
10089           s/seek_happened/need_discont/ and require discont before sending any
10090           data
10091
10092 2004-04-15  David Schleef  <ds@schleef.org>
10093
10094         * gst/gstvalue.c: (gst_value_serialize_buffer),
10095         (gst_value_deserialize_buffer), (_gst_value_initialize):
10096         Register these types as fundamental types. (bug #140015)
10097
10098 2004-04-16  Benjamin Otte  <otte@gnome.org>
10099
10100         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
10101         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
10102         (gst_pad_pull):
10103           implement enforcing discont events before buffers are passed. This
10104           allows state changes of only some elements and later correctly going
10105           on where they left off (or in short: you can now set audio sinks to
10106           NULL to release the device when the pipeline is paused)
10107         * gst/gstpad.c: (gst_pad_call_chain_function),
10108         (gst_pad_call_get_function):
10109         * gst/gstpad.h:
10110           add gst_pad_call_chain_function and gst_pad_call_get_function for
10111           scheduler interaction. They are required because of the changes
10112           above.
10113         * gst/schedulers/entryscheduler.c: (get_buffer),
10114         (gst_entry_scheduler_chain_wrapper),
10115         (gst_entry_scheduler_get_wrapper),
10116         (gst_entry_scheduler_state_transition),
10117         (gst_entry_scheduler_pad_link):
10118         * gst/schedulers/gstbasicscheduler.c:
10119         (gst_basic_scheduler_chain_wrapper),
10120         (gst_basic_scheduler_src_wrapper),
10121         (gst_basic_scheduler_chainhandler_proxy),
10122         (gst_basic_scheduler_gethandler_proxy),
10123         (gst_basic_scheduler_cothreaded_chain),
10124         (gst_basic_scheduler_chain_elements):
10125         * gst/schedulers/gstoptimalscheduler.c:
10126         (get_group_schedule_function), (pad_clear_queued),
10127         (gst_opt_scheduler_pad_link):
10128           use the new functions instead of calling get/chain-functions
10129           directly.
10130
10131 2004-04-15  David Schleef  <ds@schleef.org>
10132
10133         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
10134         * docs/gst/tmpl/gstinfo.sgml: same
10135         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
10136         gtk-doc put here.
10137         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
10138         * examples/queue/queue.c: (main):  We iterate pipelines, not
10139         bins.  (bug #139996)
10140
10141 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10142
10143         * docs/pwg/advanced-types.xml:
10144           Add MS RLE support. Also document Qt RLE although I have no sample
10145           files for that yet. And document an extra property for ADPCM.
10146
10147 2004-04-15  David Schleef  <ds@schleef.org>
10148
10149         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
10150         (_gst_plugin_fault_handler_setup):  Disable more stuff on
10151         Windows.
10152
10153 2004-04-15  David Schleef  <ds@schleef.org>
10154
10155         * gst/gstinfo.c: (_gst_debug_init): Change some internal
10156         symbol names to not conflict with new gstinfo.h symbols.
10157         * gst/gstinfo.h: Add inline functions for all those crazy
10158         compilers that don't know how to handle variadic macros (MSVC).
10159
10160 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10161
10162         * configure.ac: bump nano to 1
10163
10164 === release 0.8.1 ===
10165
10166 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10167
10168         * NEWS:
10169         * RELEASE:
10170         * configure.ac:
10171           releasing 0.8.1, "Snow Brigade"
10172
10173 2004-04-14  David Schleef  <ds@schleef.org>
10174
10175         * testsuite/Makefile.am: define tests_ignore
10176         * testsuite/Rules: Added new tests_ignore, which get compiled,
10177         but not run (generally because they're inconsistent or have
10178         heisenbugs).  Now we can ensure all the .c files compile in
10179         testsuite/.
10180         * testsuite/bins/Makefile.am: define tests_ignore
10181         * testsuite/bytestream/Makefile.am:
10182         * testsuite/caps/Makefile.am:
10183         * testsuite/clock/Makefile.am:
10184         * testsuite/debug/Makefile.am:
10185         * testsuite/debug/global.c: (gst_debug_log_one),
10186         (gst_debug_log_two): Fix compilation problem.
10187         * testsuite/dynparams/Makefile.am:
10188         * testsuite/elements/Makefile.am:
10189         * testsuite/ghostpads/Makefile.am:
10190         * testsuite/indexers/Makefile.am:
10191         * testsuite/parse/Makefile.am:
10192         * testsuite/plugin/Makefile.am:
10193         * testsuite/refcounting/Makefile.am:
10194         * testsuite/refcounting/element_pad.c: (main): Don't return leak
10195         results, because it's not calculated correctly.
10196         * testsuite/refcounting/pad.c: (main): same
10197         * testsuite/states/Makefile.am:
10198         * testsuite/tags/Makefile.am:
10199         * testsuite/threads/Makefile.am:
10200
10201 2004-04-14  David Schleef  <ds@schleef.org>
10202
10203         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
10204         generating bad code around the cpu detection asm code.
10205
10206 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10207
10208         * tools/gst-inspect.c: (print_element_info):
10209           print numeric version of rank as well, since we added some - 1
10210           rank values to elements
10211
10212 2004-04-13  David Schleef  <ds@schleef.org>
10213
10214         * configure.ac:  Disable various code when compiling for MinGW.
10215         * gst/elements/Makefile.am:
10216         * gst/elements/gstelements.c:
10217         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10218         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
10219         * gst/registries/gstxmlregistry.c: (make_dir):
10220
10221 2004-04-13  David Schleef  <ds@schleef.org>
10222
10223         * gst/Makefile.am:
10224         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
10225         assembly.
10226         * gst/gstcpuid_i386.s: remove
10227
10228 2004-04-13  David Schleef  <ds@schleef.org>
10229
10230         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
10231         seems to think it needs to be done.
10232         * docs/gst/tmpl/gstfakesink.sgml:
10233         * docs/gst/tmpl/gstfakesrc.sgml:
10234         * docs/gst/tmpl/gstfdsink.sgml:
10235         * docs/gst/tmpl/gstfdsrc.sgml:
10236         * docs/gst/tmpl/gstfilesink.sgml:
10237         * docs/gst/tmpl/gstfilesrc.sgml:
10238         * docs/gst/tmpl/gstidentity.sgml:
10239         * docs/gst/tmpl/gstmd5sink.sgml:
10240         * docs/gst/tmpl/gstmultifilesrc.sgml:
10241         * docs/gst/tmpl/gstpipefilter.sgml:
10242         * docs/gst/tmpl/gstshaper.sgml:
10243         * docs/gst/tmpl/gstspider.sgml:
10244         * docs/gst/tmpl/gstspideridentity.sgml:
10245         * docs/gst/tmpl/gststatistics.sgml:
10246         * docs/gst/tmpl/gsttee.sgml:
10247         * docs/gst/tmpl/gsttypefind.sgml:
10248         * docs/gst/tmpl/gstutils.sgml:
10249
10250 2004-04-13  David Schleef  <ds@schleef.org>
10251
10252         * configure.ac: Changes to remove POSIXisms (mmap in this case)
10253         and to build DLLs on Windows.
10254         * gst/Makefile.am:
10255         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
10256         (gst_filesrc_open_file):
10257         * gst/schedulers/Makefile.am:
10258
10259 2004-04-13  David Schleef  <ds@schleef.org>
10260
10261         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
10262         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
10263         fixating lists.
10264
10265 2004-04-12  David Schleef  <ds@schleef.org>
10266
10267         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
10268         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
10269         to using it.
10270         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
10271         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
10272         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
10273         * gst/gststructure.c: (gst_structure_set_valist),
10274         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
10275         support for buffers.
10276         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
10277         intended to be const.
10278         * gst/gsttag.h: same
10279         * gst/gstvalue.c: (gst_value_serialize_buffer),
10280         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
10281         to (de)serialize buffers.
10282         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
10283         * testsuite/caps/string-conversions.c: (main):
10284         * testsuite/caps/value_serialize.c: add new test
10285
10286 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10287
10288         * docs/pwg/advanced-types.xml:
10289           Document MS video 1 (video/x-msvideocodec) mimetype/format.
10290
10291 2004-04-11  Benjamin Otte  <otte@gnome.org>
10292
10293         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
10294           rename categories to basic_*
10295         * gst/schedulers/gstbasicscheduler.c: 
10296         (gst_basic_scheduler_chain_wrapper),
10297         (gst_basic_scheduler_chainhandler_proxy),
10298         (gst_basic_scheduler_gethandler_proxy),
10299         (gst_basic_scheduler_eventhandler_proxy):
10300           debugging category fixes - put common stuff in log category
10301         * gst/schedulers/gstbasicscheduler.c: 
10302         (gst_basic_scheduler_chain_elements):
10303           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
10304           active and linking two active chains
10305
10306 2004-04-10  Benjamin Otte  <otte@gnome.org>
10307
10308         * docs/pwg/intro-preface.xml:
10309           fix dead links and remove reference to Wiki
10310
10311 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10312
10313         * gst/schedulers/gstbasicscheduler.c:
10314           make sure we can switch back to the main function if we're still in
10315           the main function (supposed to fix #139617)
10316         * gst/schedulers/gthread-cothreads.h:
10317           don't throw an error when switching to the same cothread
10318
10319 2004-04-09  Benjamin Otte  <otte@gnome.org>
10320
10321         * gst/gstbin.c: (gst_bin_get_type):
10322         * gst/gstclock.c: (gst_clock_get_type):
10323         * gst/gstindex.c: (gst_index_get_type):
10324         * gst/gstobject.c: (gst_object_get_type),
10325         (gst_signal_object_get_type):
10326         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
10327         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
10328         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
10329         * gst/gstqueue.c: (gst_queue_get_type):
10330         * gst/gstregistry.c: (gst_registry_get_type):
10331         * gst/gstsystemclock.c: (gst_system_clock_get_type):
10332         * gst/gstthread.c: (gst_thread_get_type):
10333           don't use memchunks for these objects, use malloc instead
10334
10335 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10336
10337         * docs/gst/.cvsignore:
10338         * docs/gst/Makefile.am:
10339         * docs/gst/gstreamer-sections.txt:
10340         * docs/gst/tmpl/gstaggregator.sgml:
10341         * docs/gst/tmpl/gstbuffer.sgml:
10342         * docs/gst/tmpl/gstclock.sgml:
10343         * docs/gst/tmpl/gstelement.sgml:
10344         * docs/gst/tmpl/gstfakesink.sgml:
10345         * docs/gst/tmpl/gstfakesrc.sgml:
10346         * docs/gst/tmpl/gstfdsink.sgml:
10347         * docs/gst/tmpl/gstfdsrc.sgml:
10348         * docs/gst/tmpl/gstfilesink.sgml:
10349         * docs/gst/tmpl/gstfilesrc.sgml:
10350         * docs/gst/tmpl/gstidentity.sgml:
10351         * docs/gst/tmpl/gstindex.sgml:
10352         * docs/gst/tmpl/gstinfo.sgml:
10353         * docs/gst/tmpl/gstmd5sink.sgml:
10354         * docs/gst/tmpl/gstmultifilesrc.sgml:
10355         * docs/gst/tmpl/gstpad.sgml:
10356         * docs/gst/tmpl/gstpipefilter.sgml:
10357         * docs/gst/tmpl/gstpipeline.sgml:
10358         * docs/gst/tmpl/gstpluginfeature.sgml:
10359         * docs/gst/tmpl/gstqueue.sgml:
10360         * docs/gst/tmpl/gstregistry.sgml:
10361         * docs/gst/tmpl/gstscheduler.sgml:
10362         * docs/gst/tmpl/gstshaper.sgml:
10363         * docs/gst/tmpl/gstspider.sgml:
10364         * docs/gst/tmpl/gstspideridentity.sgml:
10365         * docs/gst/tmpl/gststatistics.sgml:
10366         * docs/gst/tmpl/gstsystemclock.sgml:
10367         * docs/gst/tmpl/gsttee.sgml:
10368         * docs/gst/tmpl/gstthread.sgml:
10369         * docs/gst/tmpl/gsttypefind.sgml:
10370         * docs/gst/tmpl/gstutils.sgml:
10371           further doc build fixes
10372
10373 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10374
10375         * docs/gst/Makefile.am:
10376           make docs exit on scanning problems
10377           fix nonsrcdir build issues
10378         * docs/gst/gstreamer-sections.txt:
10379           adding stuff from -unused
10380         * gst/gstqueue.h:
10381           create GstQueueSize
10382         * gst/schedulers/cothreads_compat.h:
10383           fix cothread warnings
10384
10385 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10386
10387         * docs/gst/gstreamer-sections.txt:
10388           remove defines deprecated by Benjamin
10389
10390 2004-04-07  Benjamin Otte  <otte@gnome.org>
10391
10392         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10393           when the buffer is complete, don't check if other buffers are needed
10394         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
10395           check that the offset is >0 so we don't try to read before the
10396           beginning of the file
10397         * gst/gstpad.c: (gst_pad_set_pad_template):
10398           sink the template, so we don't end up with 130k pad templates
10399
10400 2004-04-06  Benjamin Otte  <otte@gnome.org>
10401
10402         * gst/autoplug/gstspider.c: (gst_spider_link_add):
10403           don't ref the element, adding already reffed it. And we didn't unref
10404           it later anyway... (huge memleak when you used many spider elements)
10405         * gst/gstelement.c: (gst_element_base_class_finalize):
10406         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
10407         (gst_element_register):
10408         * gst/gsturi.c: (gst_element_make_from_uri):
10409           use gst_object_(un)ref instead of g_object(un)ref
10410
10411 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10412
10413         * gst/gstbuffer.h:
10414           remove macro that wouldn't work anymore because struct member has
10415           been removed.
10416         * gst/schedulers/entryscheduler.c: (schedule_forward):
10417           fix segfault for unconnected pads
10418         
10419 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10420
10421         reviewed by David Schleef <ds@schleef.org>
10422
10423         * gst/gstinfo.h:
10424           *_FORMAT modifiers should require putting a % in front of them for
10425           consistency reasons.
10426
10427 2004-04-05  Colin Walters  <walters@redhat.com>
10428
10429         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
10430         space.
10431
10432 2004-04-05  Benjamin Otte  <otte@gnome.org>
10433
10434         * configure.ac:
10435         * gst/Makefile.am:
10436         * gst/gst_private.h:
10437         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
10438           add support for detecting if GStreamer runs inside valgrind.
10439           requires valgrind (d'oh) and --enable-debug for correct cdetection.
10440           print a big message in valgrind that GStreamer has detected it's
10441           running inside and might now use different code.
10442         * gst/gstmemchunk.c: (populate), (free_area),
10443         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
10444         (gst_mem_chunk_free):
10445           flag memchunks for valgrind, so it can detect leaking of chunks.
10446           This allows detecting leaks of GstBuffer and GstEvent correctly
10447           inside valgrind.
10448
10449 2004-04-05  David Schleef  <ds@schleef.org>
10450
10451         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
10452           jensgr@gmx.net (Jens Granseuer)
10453
10454 2004-04-05  David Schleef  <ds@schleef.org>
10455
10456         * gst/gstbuffer.c: (_gst_buffer_sub_free),
10457         (gst_buffer_default_free), (gst_buffer_default_copy),
10458         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
10459         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
10460         structures in one place.
10461
10462 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10463
10464         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
10465           (GST_TIME_FORMAT, GST_TIME_ARGS)
10466
10467 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10468
10469         * testsuite/elements/Makefile.am:
10470           disable test until it stops breaking make distcheck
10471
10472 2004-04-05  Johan Dahlin  <johan@gnome.org>
10473
10474         * po/sv.po: Updated translation
10475
10476 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10477
10478         * gst/gstplugin.c: (gst_plugin_load_file):
10479           fix segfault for when original plugin was loaded statically
10480
10481 2004-04-05  Benjamin Otte  <otte@gnome.org>
10482
10483         * testsuite/debug/category.c: (main):
10484         * testsuite/debug/commandline.c: (main):
10485         * testsuite/debug/output.c: (main):
10486           fix tests to work again with debugging enabled
10487
10488 2004-04-05  Benjamin Otte  <otte@gnome.org>
10489
10490         * gst/schedulers/gstbasicscheduler.c:
10491         (gst_basic_scheduler_pad_link):
10492           fix to work with recent scheduling changes
10493
10494 2004-04-05  Benjamin Otte  <otte@gnome.org>
10495
10496         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
10497         prepareChangeLog doesn't work when cvs indents):
10498           don't throw an error when no element can be scheduled, there's too
10499           many weird reasons why it doesn't work. Return STOPPED instead.
10500           decoupled elemts' schedulability doesn't depend on bufpens.
10501
10502 2004-04-04  Benjamin Otte  <otte@gnome.org>
10503
10504         * gst/schedulers/gstbasicscheduler.c:
10505         (gst_basic_scheduler_pad_select):
10506           fix uninitialized variable warnings
10507
10508 2004-04-04  Benjamin Otte  <otte@gnome.org>
10509
10510         * gst/gstpad.c: (gst_pad_collect_valist):
10511           fix uninitialized variable warning
10512         * gst/schedulers/entryscheduler.c: (schedule_forward):
10513           fix shadowed variable
10514
10515 2004-04-04  Benjamin Otte  <otte@gnome.org>
10516
10517         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
10518         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
10519         (gst_pad_select):
10520         * gst/gstpad.h:
10521         * gst/gstscheduler.c: (gst_scheduler_pad_select),
10522         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
10523         * gst/gstscheduler.h:
10524           implement gst_pad_collect as replacement for gst_pad_select.
10525           deprecate gst_pad_select and gst_scheduler_(un)lock_element
10526           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
10527           new pad_select, lock and unlock calls.
10528         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
10529         * gst/cothreads.h:
10530         * gst/schedulers/cothreads_compat.h:
10531         * gst/schedulers/gthread-cothreads.h:
10532           remove unused cothread_lock and cothread_unlock calls
10533         * gst/schedulers/entryscheduler.c:
10534         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
10535         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
10536         (gst_entry_scheduler_pad_select):
10537           update to new API
10538         * gst/schedulers/gstbasicscheduler.c:
10539         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
10540         (gst_basic_scheduler_pad_select):
10541           remove useless lock and unlock calls, update pad_select to new API
10542           (untested)
10543         * gst/schedulers/gstoptimalscheduler.c:
10544         (gst_opt_scheduler_class_init):
10545           remove useless select, lock and unlock function calls
10546         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
10547           use gst_pad_collect instead of gst_pad_select
10548
10549 2004-04-04  Benjamin Otte  <otte@gnome.org>
10550
10551         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
10552         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
10553         (schedule_next_element), (print_entry):
10554           add can_schedule_pad to handle element states.
10555           add schedule_forward to select the correct entry to schedule next
10556
10557 2004-04-03  Benjamin Otte  <otte@gnome.org>
10558
10559         * gst/schedulers/entryscheduler.c: 
10560           remove unused variable, fix error inside Rb, fix compile warning in
10561           unreachable code
10562
10563 2004-04-03  Benjamin Otte  <otte@gnome.org>
10564
10565         * gst/schedulers/entryscheduler.c:
10566           completely revamp the inner workings, so it's a lot easier to
10567           understand and extend
10568
10569 2004-04-03  Andy Wingo  <wingo@pobox.com>
10570
10571         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
10572         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
10573         This allows better introspection of pipeline topology.
10574         (add_to_chain): Don't do trickery to put loop elements first;
10575         rather, queue a chain sort by marking the chain as dirty.
10576         (remove_from_chain): Mark the chain dirty.
10577         (sort_chain): New function. Sorts the group list so that terminal
10578         sinks are first. This means elements on the sink side will be
10579         preferentially sscheduled before elements on the src side of the
10580         pipeline.
10581         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
10582         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
10583         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
10584         (group_inc_link): Change argument and variable names to match the
10585         new link structure member names (src and sink).
10586         (group_dec_link): Add some description
10587
10588 2004-04-03  Benjamin Otte  <otte@gnome.org>
10589
10590         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
10591         * gst/gstinfo.h:
10592         * testsuite/debug/category.c: (main):
10593         * testsuite/debug/commandline.c: (main):
10594         * testsuite/debug/output.c: (main):
10595         * testsuite/debug/printf_extension.c: (main):
10596           fix to successfully build and test with --disable-gst-debug
10597           configure switch (fixes #138705)
10598
10599 2004-04-03  Benjamin Otte  <otte@gnome.org>
10600
10601         * docs/pwg/building-boiler.xml:
10602           add cvs login line and s/anonymous/anoncvs/
10603
10604 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
10605
10606         reviewed by Benjamin Otte  <otte@gnome.org>
10607
10608         * gst/gststructure.c: (gst_structure_free):
10609           memleak fix: free fields array (partial fix for #134839)
10610
10611 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10612
10613         * docs/random/ds/0.9-suggested-changes:
10614           Add a note to change handoff use in fakesrc to be usable in
10615           a more generic way (fakesrc should be renamed to appsrc or so).
10616         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
10617           Change signal type to scope, so we can fill the buffer in the
10618           handoff handler (that's the whole use of this signal...).
10619
10620 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10621
10622         * docs/pwg/other-ntoone.xml:
10623           Document muxers and n-to-1 elements.
10624
10625 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
10626
10627         * gst/registries/gstxmlregistry.c
10628         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
10629         determine if a file is a G_MODULE. The old one discards paths
10630         containing "so" somewhere in the middle. My home directory is
10631         called "soto". Go figure...
10632
10633 2004-03-31  David Schleef  <ds@schleef.org>
10634
10635         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
10636         to eventually deprecate gst_buffer_merge().  (bug: #136408)
10637         * gst/gstbuffer.h:
10638
10639 2004-03-31  David Schleef  <ds@schleef.org>
10640
10641         * gst/gstvalue.c: (gst_value_union_int_int_range),
10642         (gst_value_union_int_range_int_range), (gst_value_can_union),
10643         (gst_value_union), (_gst_value_initialize):  Add some union
10644         implementations.  We didn't have any previously.
10645         * testsuite/caps/Makefile.am:
10646         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
10647         (gst_audioscale_getcaps), (test_caps), (main): A little test
10648         that is the same as the caps manipulation in audioscale.
10649
10650 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10651
10652         * docs/faq/general.xml:
10653           add entry about "does gst support format X?"
10654
10655 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10656
10657         * gst/gstthread.c:
10658           fix docs
10659         * gst/gstutils.h:
10660           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
10661
10662 2004-03-30  Benjamin Otte  <otte@gnome.org>
10663
10664         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10665           set the offset of the buffer to the requested offset
10666         * gst/elements/gsttypefind.c: (stop_typefinding):
10667           revert patch 1.18 (which I unfortunately don't know the reason for).
10668           This is needed to allow downstream elements to seek. Otherwise
10669           typefind might overwrite a previous seek by downstream elements.
10670           This lead to errors with id3tag and typefind on some mp3s.
10671         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10672         (gst_entry_scheduler_iterate):
10673           be more verbose when debugging
10674
10675 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10676
10677         * gst/gstcaps.c: (gst_caps_from_string_inplace):
10678           make sure we don't get NULL strings
10679
10680 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10681
10682         * gst/gstcaps.c:
10683         * gst/gstelement.c:
10684         * gst/gstelementfactory.c: (gst_element_factory_get_type):
10685         * gst/gstindex.c: (gst_index_resolver_get_type),
10686         (gst_index_get_type), (gst_index_factory_get_type):
10687         * gst/gstinfo.c:
10688         * gst/gstpad.c:
10689         * gst/gstplugin.c:
10690         * gst/gsturi.c: (gst_uri_handler_get_type):
10691         * gst/gstvalue.c:
10692           first batch of documentation fixes
10693
10694 2004-03-29  David Schleef  <ds@schleef.org>
10695
10696         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
10697         * docs/gst/gstreamer-docs.sgml:  More hacking
10698         * docs/gst/gstreamer-sections.txt:
10699         * docs/gst/tmpl/cothreads_compat.sgml:
10700         * docs/gst/tmpl/gstcaps.sgml:
10701         * docs/gst/tmpl/gstclock.sgml:
10702         * docs/gst/tmpl/gstelement.sgml:
10703         * docs/gst/tmpl/gstevent.sgml:
10704         * docs/gst/tmpl/gstpad.sgml:
10705         * docs/gst/tmpl/gstutils.sgml:
10706         * docs/gst/tmpl/gstxml.sgml:
10707         * docs/gst/tmpl/gthread-cothreads.sgml:
10708         * docs/random/ds/0.9-suggested-changes:
10709         * gst/elements/gstfakesink.h: doc fixes
10710         * gst/elements/gstfakesrc.h: doc fixes
10711         * gst/gstcaps.c: doc fixes
10712         * gst/gstcaps.h: doc fixes
10713         * gst/gstelement.c: doc fixes
10714         * gst/gstelement.h: doc fixes
10715         * gst/gstindex.c: doc fixes
10716         * gst/gstinfo.c: doc fixes
10717         * gst/gstpad.c: doc fixes
10718         * gst/gstpad.h: doc fixes
10719         * gst/gstplugin.c: doc fixes
10720         * gst/gsttypefind.h: doc fixes
10721         * gst/gsturi.c: doc fixes
10722         * gst/gstvalue.c: doc fixes
10723
10724 2004-03-29  Colin Walters  <walters@redhat.com>
10725
10726         * gst/registries/gstxmlregistry.c (get_time)
10727         (plugin_times_older_than_recurse):
10728         Use the result of stat to determine whether a path is a file,
10729         so we don't attempt to opendir() files.
10730
10731 2004-03-29  Benjamin Otte  <otte@gnome.org>
10732
10733         * gst/gstpad.c: (gst_pad_set_explicit_caps):
10734           print caps in debugging output when setting caps failed
10735         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10736         (schedule_next_element), (get_buffer), (run_chainhandler),
10737         (element_may_start), (gst_entry_scheduler_chain_handler),
10738         (gst_entry_scheduler_get_handler),
10739         (gst_entry_scheduler_state_transition),
10740         (gst_entry_scheduler_pad_link):
10741           make this scheduler a testcase for mandatory
10742           discont-before-first-buffer which is needed if we want to allow apps
10743           to release the sound device.
10744           add SCHED_ASSERT macro to print scheduler state before an assertion
10745           triggers.
10746
10747 2004-03-29  Benjamin Otte  <otte@gnome.org>
10748
10749         * COPYING:
10750           replace by LGPL (former COPYING.LIB). The core is completely
10751           licensed LGPL.
10752         * COPYING.LIB:
10753           remove
10754
10755 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10756
10757         * po/af.po:
10758         * po/sv.po:
10759           updated Afrikaans and Swedish
10760
10761 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10762
10763         * po/LINGUAS:
10764         * po/az.po:
10765           adding Azerbaijani (Mətin Əmirov)
10766
10767 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
10768
10769         * gst/gstelement.h: 
10770         * gst/gstelement.c (gst_element_set_time_delay): New function for
10771         setting element time taking into account a hardware buffering
10772         delay.
10773         (gst_element_set_time): Now just an invocation of
10774         gst_element_set_time_delay.
10775         * gst/gstclock.h: 
10776         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
10777         allowing to set event times in the future.
10778         (gst_clock_get_event_time): Now just an invocation of
10779         gst_clock_get_event_time_delay.
10780
10781 2004-03-28  Benjamin Otte  <otte@gnome.org>
10782
10783         * gst/gstbin.c: (gst_bin_set_element_sched),
10784         (gst_bin_unset_element_sched):
10785           don't add decoupled elements to schedulers - otherwise it's
10786           impossible to control if a link to a decoupled element was already
10787           removed from a scheduler or not.
10788         * gst/schedulers/cothreads_compat.h:
10789         * gst/schedulers/gthread-cothreads.h:
10790           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
10791           is no "unused" warning.
10792         * gst/schedulers/Makefile.am:
10793         * gst/schedulers/entryscheduler.c:
10794           add new scheduler, based on ideas from talking to David and Martin.
10795           It's supposed to be small and correct. Currently it's also slow (but
10796           it's not noticable)
10797         * examples/retag/retag.c: (main):
10798         * testsuite/bytestream/test1.c: (main):
10799           fix missing NULLs at end of variadic functions
10800         * testsuite/elements/.cvsignore:
10801           update
10802
10803 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
10804
10805         * gst/gstevent.h:
10806         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
10807
10808 2004-03-25  David Schleef  <ds@schleef.org>
10809
10810         * docs/gst/gstreamer-sections.txt:  More doc hacking.
10811         * docs/gst/tmpl/gstaggregator.sgml:
10812         * docs/gst/tmpl/gstautoplugfactory.sgml:
10813         * docs/gst/tmpl/gstbin.sgml:
10814         * docs/gst/tmpl/gstbuffer.sgml:
10815         * docs/gst/tmpl/gstbufferstore.sgml:
10816         * docs/gst/tmpl/gstfakesink.sgml:
10817         * docs/gst/tmpl/gstfakesrc.sgml:
10818         * docs/gst/tmpl/gstmd5sink.sgml:
10819         * docs/gst/tmpl/gstreamer-unused.sgml:
10820         * docs/gst/tmpl/gstsearchfuncs.sgml:
10821         * docs/gst/tmpl/gstshaper.sgml:
10822         * docs/gst/tmpl/gstspider.sgml:
10823         * docs/gst/tmpl/gsttee.sgml:
10824         * docs/gst/tmpl/gstutils.sgml:
10825         * docs/gst/tmpl/gstvalue.sgml:
10826         * docs/gst/tmpl/gstxml.sgml:
10827         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
10828         and we don't support it.
10829         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
10830         (gst_use_threads), (gst_has_threads): same
10831         * gst/gstthreaddummy.c: same
10832         * gst/autoplug/gstspider.c: Make gst_spider_details static.
10833         * gst/autoplug/gstspider.h: same
10834         * gst/elements/gstaggregator.h: Remove bogus function from header
10835         * gst/elements/gstfakesink.h: same
10836         * gst/elements/gstfakesrc.h: same
10837         * gst/elements/gstmd5sink.h: same
10838         * gst/elements/gstshaper.h: same
10839         * gst/elements/gsttee.h: same
10840         * gst/gstbin.c: doc fixes
10841         * gst/gstbin.h: Remove unused definition.
10842         * gst/gstbuffer.c: doc fixes
10843         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
10844         * gst/gstfilter.c: doc fixes
10845         * gst/gsttag.c: doc fixes
10846         * gst/gstvalue.c: doc fixes
10847
10848 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10849
10850         * docs/pwg/advanced-types.xml:
10851           Document typefinding.
10852         * docs/pwg/other-oneton.xml:
10853           Document one-to-n elements, demuxers and parsers.
10854
10855 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
10856
10857         reviewed by: David Schleef  <ds@schleef.org>
10858
10859         * configure.ac: Check bison version (bug #127838)
10860
10861 2004-03-25  David Schleef  <ds@schleef.org>
10862
10863         * docs/gst/gstreamer-docs.sgml: More fine tuning.
10864         * docs/gst/gstreamer-sections.txt:
10865         * docs/gst/tmpl/gstautoplug.sgml:
10866         * docs/gst/tmpl/gststaticautoplug.sgml:
10867         * docs/gst/tmpl/gststaticautoplugrender.sgml:
10868         * docs/gst/tmpl/gstutils.sgml:
10869         * docs/gst/tmpl/gstxml.sgml:
10870
10871 2004-03-24  David Schleef  <ds@schleef.org>
10872
10873         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
10874         manual being such complete crap, that I decided to do major
10875         hacking of it.  This checkin replaces any fine tuning that
10876         may have been done previously, with the benefit of actually
10877         being complete for much of the API that was changed since
10878         0.6.  Further fine tuning will occur shortly.  (bug #134721)
10879         * docs/gst/gstreamer-sections.txt:
10880         * docs/gst/tmpl/GstBin.sgml:
10881         * docs/gst/tmpl/GstBuffer.sgml:
10882         * docs/gst/tmpl/GstCaps.sgml:
10883         * docs/gst/tmpl/GstClock.sgml:
10884         * docs/gst/tmpl/GstCompat.sgml:
10885         * docs/gst/tmpl/GstData.sgml:
10886         * docs/gst/tmpl/GstElement.sgml:
10887         * docs/gst/tmpl/GstEvent.sgml:
10888         * docs/gst/tmpl/GstIndex.sgml:
10889         * docs/gst/tmpl/GstStructure.sgml:
10890         * docs/gst/tmpl/GstTag.sgml:
10891         * docs/gst/tmpl/cothreads.sgml:
10892         * docs/gst/tmpl/cothreads_compat.sgml:
10893         * docs/gst/tmpl/gettext.sgml:
10894         * docs/gst/tmpl/grammar.tab.sgml:
10895         * docs/gst/tmpl/gst-i18n-app.sgml:
10896         * docs/gst/tmpl/gst-i18n-lib.sgml:
10897         * docs/gst/tmpl/gst.sgml:
10898         * docs/gst/tmpl/gst_private.sgml:
10899         * docs/gst/tmpl/gstaggregator.sgml:
10900         * docs/gst/tmpl/gstarch.sgml:
10901         * docs/gst/tmpl/gstatomic.sgml:
10902         * docs/gst/tmpl/gstatomic_impl.sgml:
10903         * docs/gst/tmpl/gstbin.sgml:
10904         * docs/gst/tmpl/gstbuffer.sgml:
10905         * docs/gst/tmpl/gstbufferstore.sgml:
10906         * docs/gst/tmpl/gstcaps.sgml:
10907         * docs/gst/tmpl/gstclock.sgml:
10908         * docs/gst/tmpl/gstcompat.sgml:
10909         * docs/gst/tmpl/gstconfig.sgml:
10910         * docs/gst/tmpl/gstcpu.sgml:
10911         * docs/gst/tmpl/gstdata.sgml:
10912         * docs/gst/tmpl/gstdata_private.sgml:
10913         * docs/gst/tmpl/gstelement.sgml:
10914         * docs/gst/tmpl/gstenumtypes.sgml:
10915         * docs/gst/tmpl/gsterror.sgml:
10916         * docs/gst/tmpl/gstevent.sgml:
10917         * docs/gst/tmpl/gstfakesink.sgml:
10918         * docs/gst/tmpl/gstfakesrc.sgml:
10919         * docs/gst/tmpl/gstfilesink.sgml:
10920         * docs/gst/tmpl/gstfilter.sgml:
10921         * docs/gst/tmpl/gstindex.sgml:
10922         * docs/gst/tmpl/gstinfo.sgml:
10923         * docs/gst/tmpl/gstinterface.sgml:
10924         * docs/gst/tmpl/gstlog.sgml:
10925         * docs/gst/tmpl/gstmacros.sgml:
10926         * docs/gst/tmpl/gstmarshal.sgml:
10927         * docs/gst/tmpl/gstmd5sink.sgml:
10928         * docs/gst/tmpl/gstmultifilesrc.sgml:
10929         * docs/gst/tmpl/gstobject.sgml:
10930         * docs/gst/tmpl/gstpad.sgml:
10931         * docs/gst/tmpl/gstparse.sgml:
10932         * docs/gst/tmpl/gstpipeline.sgml:
10933         * docs/gst/tmpl/gstplugin.sgml:
10934         * docs/gst/tmpl/gstpluginfeature.sgml:
10935         * docs/gst/tmpl/gstqueue.sgml:
10936         * docs/gst/tmpl/gstreamer-unused.sgml:
10937         * docs/gst/tmpl/gstregistry.sgml:
10938         * docs/gst/tmpl/gstregistrypool.sgml:
10939         * docs/gst/tmpl/gstscheduler.sgml:
10940         * docs/gst/tmpl/gstsearchfuncs.sgml:
10941         * docs/gst/tmpl/gstshaper.sgml:
10942         * docs/gst/tmpl/gstspider.sgml:
10943         * docs/gst/tmpl/gstspideridentity.sgml:
10944         * docs/gst/tmpl/gststructure.sgml:
10945         * docs/gst/tmpl/gstsystemclock.sgml:
10946         * docs/gst/tmpl/gsttag.sgml:
10947         * docs/gst/tmpl/gsttaginterface.sgml:
10948         * docs/gst/tmpl/gsttee.sgml:
10949         * docs/gst/tmpl/gstthread.sgml:
10950         * docs/gst/tmpl/gsttrace.sgml:
10951         * docs/gst/tmpl/gsttrashstack.sgml:
10952         * docs/gst/tmpl/gsttypefind.sgml:
10953         * docs/gst/tmpl/gsttypes.sgml:
10954         * docs/gst/tmpl/gsturi.sgml:
10955         * docs/gst/tmpl/gsturitype.sgml:
10956         * docs/gst/tmpl/gstutils.sgml:
10957         * docs/gst/tmpl/gstvalue.sgml:
10958         * docs/gst/tmpl/gstversion.sgml:
10959         * docs/gst/tmpl/gstxml.sgml:
10960         * docs/gst/tmpl/gstxmlregistry.sgml:
10961         * docs/gst/tmpl/gthread-cothreads.sgml:
10962         * docs/gst/tmpl/types.sgml:
10963
10964 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10965
10966         * docs/pwg/other-sink.xml:
10967         * docs/pwg/other-source.xml:
10968           Documentation on how to write source and sink elements. Other
10969           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
10970           manager, autoplugger) are all still pending.
10971
10972 2004-03-25  Benjamin Otte  <otte@gnome.org>
10973
10974         * testsuite/elements/Makefile.am:
10975         * testsuite/elements/gst-compprep-check:
10976           add check to make sure gst-compprep works
10977         * testsuite/elements/gst-inspect-check.in:
10978           improve initialization output
10979         * testsuite/Makefile.am:
10980         * testsuite/gst-inspect-check:
10981           remove old file
10982
10983 2004-03-24  David Schleef  <ds@schleef.org>
10984
10985         * testsuite/elements/Makefile.am:
10986         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
10987         to the testsuite.
10988
10989 2004-03-24  Benjamin Otte  <otte@gnome.org>
10990
10991         * libs/gst/control/dparam.c: (gst_dparam_attach),
10992         (gst_dparam_detach):
10993         * libs/gst/control/dparammanager.c: (gst_dpman_init):
10994           fix lvalue casts for real
10995
10996 2004-03-24  Benjamin Otte  <otte@gnome.org>
10997
10998         * gst/schedulers/gstbasicscheduler.c:
10999         (gst_basic_scheduler_src_wrapper):
11000         * gst/schedulers/gstoptimalscheduler.c:
11001         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
11002         (pad_clear_queued), (gst_opt_scheduler_add_element),
11003         (gst_opt_scheduler_remove_element):
11004           fix GStreamer to not have issues with lvalue casts anymore (fixes
11005           #136841)
11006
11007 2004-03-24  Benjamin Otte  <otte@gnome.org>
11008
11009         * gst/gstelement.c:
11010           add documentation about a gobject quirk where the object hasn't the
11011           correct class pointer set on initialization
11012         * gst/schedulers/gstbasicscheduler.c:
11013         (gst_basic_scheduler_src_wrapper):
11014           make sure to not run into an infinite loop
11015
11016 2004-03-22  Benjamin Otte  <otte@gnome.org>
11017
11018         * gst/gstutils.c: (gst_util_dump_mem):
11019         * gst/gstutils.h:
11020           first argument of gst_util_dump_mem should be const
11021
11022 2004-03-22  Johan Dahlin  <johan@gnome.org>
11023
11024         * gst/gstvalue.h: Clean up a little bit.
11025
11026 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
11027
11028         reviewed by Benjamin Otte  <otte@gnome.org>
11029
11030         * gst/autoplug/gstspider.c: (gst_spider_dispose):
11031         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
11032         (gst_aggregator_class_init), (gst_aggregator_init):
11033         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
11034         (gst_filesrc_dispose), (gst_filesrc_set_location):
11035         * gst/elements/gstidentity.c: (gst_identity_finalize),
11036         (gst_identity_class_init), (gst_identity_chain):
11037         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11038         * gst/elements/gststatistics.c: (gst_statistics_finalize),
11039         (gst_statistics_class_init):
11040         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
11041         (gst_tee_get_property):
11042           clean up used memory in this elements correctly on teardown (closes
11043           #137279)
11044
11045 2004-03-20  Colin Walters  <walters@redhat.com>
11046
11047         * gst/registries/gstxmlregistry.c:
11048         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
11049         registry saving atomic.
11050
11051 2004-03-20  Colin Walters  <walters@redhat.com>
11052
11053         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
11054         Just use
11055         access() instead of actually creating and deleting files.
11056
11057 2004-03-18  David Schleef  <ds@schleef.org>
11058
11059         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
11060         (bug #137625)
11061
11062 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11063
11064         * po/sv.po: updated translation (Christian Rose)
11065
11066 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11067
11068         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
11069         (gst_filesink_get_query_types), (_do_init),
11070         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
11071           return FALSE silently
11072         * po/af.po: updated translation (Petri Jooste)
11073
11074 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11075
11076         * Makefile.am:
11077         * configure.ac:
11078           dist common properly
11079         * po/af.po:
11080         * po/fr.po:
11081         * po/nl.po:
11082         * po/sr.po:
11083         * po/sv.po:
11084           refreshing translations
11085
11086 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11087
11088         * po/LINGUAS:
11089         * po/sv.po:
11090         * po/af.po:
11091           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
11092
11093 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11094
11095         * Makefile.am: use common/release.mak
11096
11097 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11098
11099         * docs/faq/gst-uninstalled:
11100           adding gst-monkeysaudio to the list of possible plugin dirs
11101
11102 2004-03-16  David Schleef  <ds@schleef.org>
11103
11104         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
11105         (gst_init_check_with_popt_table):  Fix some gettext strings to
11106         make them easier to translate.  Required making the strings
11107         non-const.
11108
11109 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11110
11111         * configure.ac: bump nano to 1
11112
11113 === release 0.8.0 ===
11114
11115 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11116
11117         * configure.ac: release 0.8.0, "Executive Slacks"
11118
11119 2004-03-16  Johan Dahlin  <johan@gnome.org>
11120
11121         * gst/schedulers/gstoptimalscheduler.c
11122         (gst_opt_scheduler_pad_unlink): Remove double ;,
11123         spotted by Scott Wheeler
11124
11125 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11126
11127         * configure.ac: bump libtool version
11128
11129 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11130
11131         * gst/gstcaps.h:
11132         * gst/gststructure.h:
11133           add reserved padding
11134
11135 2004-03-15  Benjamin Otte  <otte@gnome.org>
11136
11137         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
11138           set the first parameter for select call correctly.
11139           (fixes #137230)
11140
11141 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11142
11143         * *.c,*.h: don't mix tabs and spaces
11144
11145 2004-03-15  Johan Dahlin  <johan@gnome.org>
11146
11147         * gst/schedulers/gstoptimalscheduler.c
11148         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
11149         crash on MPEG playback. My boolean arithmetic is a bit rusty.
11150
11151         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
11152         
11153 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11154
11155         * testsuite/Rules:
11156           fix gst-register rules
11157
11158 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11159
11160         * testsuite/Rules:
11161           use versioned gst-register
11162
11163 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11164
11165         * docs/libs/gstreamer-libs-sections.txt:
11166           remove </SUBSECTION>
11167         * gst/gstplugin.c:
11168         * gst/gstregistry.c: (gst_registry_add_plugin):
11169         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
11170         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
11171           add debugging and fix some comment blocks
11172
11173 2004-03-15  Johan Dahlin  <johan@gnome.org>
11174
11175         * *.h: Revert indent changes.
11176         
11177 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
11178
11179         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
11180           g_error_free the g_error
11181         * tools/gst-feedback-m.m:
11182           check for other versions of gstreamer
11183         * tools/gst-indent:
11184           use sh, not bash
11185
11186 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
11187
11188         * tools/gst-register.c: do not spill paths when registries are not
11189           writable, until we fix the "user running gst-register" case.
11190
11191 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11192
11193         * *.c, *.h: commit of gst-indent run on core
11194
11195 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11196
11197         * tools/gst-indent:
11198         * tools/Makefile.am:
11199           add our indentation style as a script
11200
11201 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11202
11203         * po/sr.po:
11204         * po/LINGUAS:
11205           added Serbian translation
11206
11207 2004-03-13  Benjamin Otte  <otte@gnome.org>
11208
11209         * gst/gstelement.c:
11210           add documentation note about gst_element_found_tags_for_pad not
11211           being usable in getfunctions. (see #137042)
11212
11213 2004-03-12  David Schleef  <ds@schleef.org>
11214
11215         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
11216         change API right now!  Readd gst_caps_is_simple() macro.
11217         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
11218         uninitialized variable.  I'd bet this caused crashes.
11219         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
11220
11221 2004-03-12  Johan Dahlin  <johan@gnome.org>
11222
11223         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
11224         * gst/gstcaps.h: Clean up
11225
11226         * gst/gst.c (init_post): call gst_caps_get_type() instead of
11227         _gst_caps_initalize()
11228
11229         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
11230         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
11231
11232         * gst/gststructure.c (gst_structure_get_type): Ditto
11233
11234         * gst/gststructure.h: Ditto
11235         
11236 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11237
11238         * gst/gstqueue.c: (gst_queue_init):
11239           Reset default max. values in queues. Reason is simply to avoid
11240           braindead use. If you want wider values, use the properties. The
11241           default is supposed to always work. Wider values would make this
11242           beast a memory hog by default (250 full-PAL RGB32 video frames?
11243           That's 440 MB! No thank you).
11244
11245 2004-03-10  David Schleef  <ds@schleef.org>
11246
11247         * tools/gst-run.c: (main):  Fix crash when no relevant tools
11248         were found.  (bug #136793)
11249
11250 2004-03-10  Johan Dahlin  <johan@gnome.org>
11251
11252         * gst/schedulers/gstoptimalscheduler.c
11253         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
11254         links to elements within the same group, so we can finally remove
11255         that annoying warning. Refactor the code a little bit
11256         (group_dec_links_for_element): Split out
11257
11258 2004-03-09  David Schleef  <ds@schleef.org>
11259
11260         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
11261         (bug #134863)
11262
11263 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11264
11265         * configure.ac: first bug fix due to major/minor bump
11266
11267 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11268
11269         * configure.ac: bump nano to 1
11270
11271 === release 0.7.6 ===
11272
11273 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11274
11275         * NEWS:
11276         * RELEASE:
11277         * configure.ac:
11278           releasing 0.7.6, "Almost"
11279         * po/fr.po:
11280         * po/nl.po:
11281         * tools/Makefile.am:
11282         * tools/gst-feedback-m.m:
11283           unversioned source
11284
11285 2004-03-09  Johan Dahlin  <johan@gnome.org>
11286
11287         Reviewed by: Thomas Vander Stichele
11288
11289         * gst/gstelement.c (gst_element_class_init): register second
11290         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
11291         language bindings can (de)marshall correctly.
11292
11293         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
11294
11295         * gst/gsterror.c (gst_g_error_get_type): New function
11296
11297         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
11298         with VOID:OBJECT,OBJECT,STRING 
11299
11300 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
11301
11302         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
11303         Free a leaked g_timer on early returns.
11304
11305 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11306
11307         * docs/pwg/advanced-types.xml:
11308           Add cinepak description.
11309
11310 2004-03-07  David Schleef  <ds@schleef.org>
11311
11312         * docs/random/mimetypes:  Added cinepak description
11313
11314 2004-03-07  Andy Wingo  <wingo@pobox.com>
11315
11316         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
11317
11318         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
11319         there are no links to other groups when a group is destroyed.
11320         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
11321         removed from a group, make sure the link count to elements linked
11322         to other pads is appropriately decremented. This really fixes
11323         #135672.
11324
11325         The 1.60->1.61 patch has been reapplied in light of this fix.
11326
11327         * gst/gstelement.c (gst_element_dispose): Really protect against
11328         multiple invocations this time.
11329
11330 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11331
11332         * docs/gst/gstreamer-sections.txt:
11333         * docs/gst/tmpl/gsttag.sgml:
11334           remove some deprecated functions, document some existing ones
11335         * gst/gsttag.c: (gst_tag_get_flag):
11336         * gst/gsttag.h:
11337           add accessor function
11338
11339 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11340
11341         * docs/gst/gstreamer-sections.txt:
11342         * docs/gst/tmpl/gsttag.sgml:
11343         * docs/gst/tmpl/gstxml.sgml:
11344         * gst/gsttag.c: (gst_tag_get_flag):
11345         * gst/gsttag.h:
11346
11347 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
11348
11349         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
11350         leak
11351
11352 2004-03-05  David Schleef  <ds@schleef.org>
11353
11354         * REQUIREMENTS: Add bison and flex.
11355         * configure.ac: Fix comment about bison.
11356         * docs/random/ds/0.9-suggested-changes: yer ma
11357         * tools/gst-inspect.c: (print_element_info):  Fix warning.
11358
11359 2004-03-05  Benjamin Otte  <otte@gnome.org>
11360
11361         * gst/gstelement.c: (gst_element_error_full):
11362           revert recent recursive state changing commit - messing with other
11363           elements' states is evil and should be done by apps only.
11364
11365 2004-03-05  Benjamin Otte  <otte@gnome.org>
11366
11367         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
11368           check for empty intersection instead of NULL caps
11369         (gst_element_get_compatible_pad_filtered):
11370           remove old workaround that is only a bug nowadays
11371
11372 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11373
11374         * gst/gstelement.c: (gst_element_error_full):
11375           make elements try to recursively change state to PAUSED on all
11376           parents after an error to suppress ensuing warnings
11377         * gst/parse/grammar.y:
11378           make it check if it was able to sync the state, and throw an error
11379           if not, so stuff like
11380           oggdemux ! vorbisdec ! osssink gets caught
11381
11382 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11383
11384         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
11385           it contains lib64; use AS_AC_EXPAND to handle it properly
11386
11387 2004-03-05  David Schleef  <ds@schleef.org>
11388
11389         * gst/gstcpuid_i386.s:  Remove unused code
11390         * libs/gst/getbits/getbits.c: (gst_getbits_init),
11391         (gst_getbits_newbuf): Remove MMX code
11392         * libs/gst/getbits/getbits.h: Remove MMX code
11393
11394 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
11395
11396         * debian/.cvsignore:
11397         * debian/README.Debian:
11398         * debian/changelog:
11399         * debian/control:
11400         * debian/control.in:
11401         * debian/copyright:
11402         * debian/gstreamer-core-libs-dev.files:
11403         * debian/gstreamer-core-libs.files:
11404         * debian/gstreamer-core.files:
11405         * debian/gstreamer-core.postinst:
11406         * debian/gstreamer-core.postrm:
11407         * debian/gstreamer-doc.files:
11408         * debian/gstreamer-doc.links:
11409         * debian/gstreamer-doc.lintian:
11410         * debian/gstreamer-runtime.files:
11411         * debian/gstreamer-runtime.manpages:
11412         * debian/gstreamer-runtime.postinst:
11413         * debian/gstreamer-runtime.postrm:
11414         * debian/gstreamer-tools.files:
11415         * debian/gstreamer-tools.manpages:
11416         * debian/libgstreamer-dev.files:
11417         * debian/libgstreamer0.4.1.files:
11418         * debian/libgstreamerVERSION.files:
11419         * debian/rules:
11420         Debian package info not maintained here.
11421
11422 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11423
11424         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11425         * gst/gstbin.c: (gst_bin_class_init):
11426         * gst/gstelement.c: (gst_element_class_init):
11427         * gst/gstindex.c: (gst_index_class_init):
11428         * gst/gstobject.c: (gst_object_class_init),
11429         (gst_signal_object_class_init):
11430         * gst/gstpad.c: (gst_pad_template_class_init):
11431         * gst/gstregistry.c: (gst_registry_class_init):
11432         * gst/gsturi.c: (gst_uri_handler_base_init):
11433         * gst/gstxml.c: (gst_xml_class_init):
11434         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11435         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
11436           make all signal names use dashes instead of underscore
11437
11438 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11439
11440         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
11441
11442 2004-03-03  Benjamin Otte  <otte@gnome.org>
11443
11444         * gst/schedulers/gstoptimalscheduler.c:
11445           revert last commit by Andy Wingo. It causes segfaults on unreffing
11446           in Rhythmbox. (see bug #135672)
11447
11448 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11449
11450         * po/fr.po: fix typo
11451
11452 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11453
11454         * tools/gst-inspect.c: (main): 
11455         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
11456
11457 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11458
11459         * configure.ac:
11460           get GLIB_ONLY and POPT flags for the nonversioned binaries
11461         * tools/Makefile.am:
11462           use them
11463
11464 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11465
11466         * gst/gst.c: (init_post):
11467           change so that GST_REGISTRY now is where the global registry gets
11468           saved, since that is where plugins now get attached to first, and
11469           spilled over to the user registry.  Note that in the case of using
11470           GST_REGISTRY env var, we don't want to affect any real registries
11471           beyond the one given by this var, and thus we don't set a user
11472           registry to spill to.  So make sure GST_REGISTRY is writable.
11473
11474 2004-03-01  David Schleef  <ds@schleef.org>
11475
11476         * AUTHORS:  Added some names.  Add yourself if you're missing.
11477
11478 2004-03-01  David Schleef  <ds@schleef.org>
11479
11480         * MAINTAINERS: Add
11481
11482 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
11483
11484         * configure.ac:
11485           remove whitespace
11486         * docs/gst/tmpl/gstbuffer.sgml:
11487         * docs/gst/tmpl/gstdata.sgml:
11488         * docs/gst/tmpl/gstreamer-unused.sgml:
11489         * docs/gst/tmpl/gstxml.sgml:
11490           doc update
11491         * docs/manuals.mak:
11492           add a FIXME
11493         * docs/pwg/intro-preface.xml:
11494         * docs/pwg/pwg.xml:
11495           remove GNOME
11496         * gst/gst.c: (init_post):
11497           try GST_PLUGIN_PATH paths for the _global_registry first
11498         * gst/gstelement.h:
11499           add the error message as well, otherwise (null) debug info doesn't
11500           make much sense
11501         * tools/gst-register.c: (main):
11502           spill paths to next registry if this registry is not writable
11503         * po/fr.po:
11504         * po/nl.po:
11505           translation updates
11506
11507 2004-03-01  Johan Dahlin  <johan@gnome.org>
11508
11509         * gst/gstbuffer.c (_gst_buffer_initialize): 
11510         * gst/gstdata.c (gst_data_get_type): 
11511         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
11512         instead of ref, since some applications that uses GBoxed
11513         routines depends on a function that actually returns a copy.
11514
11515 2004-02-27  Benjamin Otte  <otte@gnome.org>
11516
11517         * gst/gstbuffer.h:
11518           remove gst_buffer_free, use gst_data_unref
11519         * gst/gstdata.c: (gst_data_get_type):
11520           use refcounting in GstData GBoxed registration
11521         * gst/gstdata.h:
11522           remove gst_data_free, use gst_data_unref
11523
11524 2004-02-27  Johan Dahlin  <johan@gnome.org>
11525
11526         * gst/gstdata.c (gst_data_get_type): New function, register
11527         GstData as a GBoxed type.
11528
11529         * gst/gstdata.h (GST_TYPE_DATA): New macro
11530
11531 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
11532
11533         * Makefile.am:
11534         * gstreamer.spec.in:
11535           put back RELEASE
11536         * gst/Makefile.am:
11537           clean up non-disting of built files
11538         * testsuite/debug/commandline.c:
11539           test fix for option rename
11540
11541 2004-02-26  David Schleef  <ds@schleef.org>
11542
11543         * configure.ac:  We don't really need glib-2.3.  Also remove
11544         some unneeded checks for library functions.
11545         * gst/Makefile.am:  Instead, we need to not dist files created
11546         by glib-genmarshal.
11547
11548 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11549
11550         * configure.ac:
11551           bump glib required version to 2.3.0 for g_value_takes_boxed
11552
11553  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
11554
11555         * common/m4/gst-docs.m4
11556         change flavour text from enable to disable as enable is our default
11557         closes bug Bug 135304
11558
11559 === release 0.7.5 ===
11560  
11561  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11562  
11563         * NEWS:
11564           instate NEWS file
11565         * Makefile.am:
11566         * gstreamer.spec.in:
11567         * RELEASE:
11568           put back release
11569         * configure.ac:
11570         * docs/random/release:
11571           more updates
11572
11573 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11574
11575         * gst/gsttag.c: (_gst_tag_initialize):
11576         * po/fr.po:
11577         * po/nl.po:
11578           remove hyphen from codec tags
11579
11580 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11581
11582         * gst/parse/Makefile.am:
11583           fix dependency so that a make from a clean build works the first
11584           time
11585
11586 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11587
11588         * docs/random/release:
11589           update release strategy
11590         * po/fr.po:
11591           auto-update po file
11592         * po/nl.po:
11593           update dutch translation
11594
11595 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11596
11597         * docs/manual/debugging.xml:
11598         fix manual for new debugging system
11599
11600 2004-02-25  Andy Wingo  <wingo@pobox.com>
11601
11602         * gst/gstpad.c (gst_pad_link_prepare): Re-add
11603         gst_pad_link_prepare. Please email the list with specific reasons
11604         for reverting.
11605
11606 2004-02-24  Andy Wingo  <wingo@pobox.com>
11607
11608         * gst/gstelement.c (gst_element_dispose): Protect against multiple
11609         invocations.
11610
11611         * gst/schedulers/gstoptimalscheduler.c:
11612         I added a mess of prototypes at the top of the file by way of
11613         documentation. Some of the operations on chains and groups were
11614         re-organized.
11615
11616         (create_group): Added a type argument so if the group is enabled,
11617         the setup_group_scheduler knows what to do.
11618         (group_elements): Added a type argument here, too, to be passed on
11619         to create_group.
11620         (group_element_set_enabled): If an unlinked PLAYING element is
11621         added to a bin, we have to create a new group to hold the element,
11622         and this function will be called before the group is added to the
11623         chain. Thus we have a valid case for group->chain==NULL. Instead
11624         of calling chain_group_set_enabled, just set the flag on the group
11625         (the chain's status will be set when the group is added to it).
11626         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
11627         Setup the group scheduler when the group is enabled, not
11628         specifically when an element goes PAUSED->PLAYING. This means
11629         PLAYING elements can be added, linked, and scheduled into a
11630         PLAYING pipeline, as was intended.
11631         (add_to_group): Don't ref the group twice. I don't know when this
11632         double-ref got in here. Removing it has the potential to cause
11633         segfaults if other parts of the scheduler are buggy. If you find
11634         that the scheduler is segfaulting for you, put in an extra ref
11635         here and see if that hacks over the underlying issue. Of course,
11636         then find out what code is unreffing a group it doesn't own...
11637         (create_group): Make the extra refcount floating, and remove it
11638         after adding the element. This means that...
11639         (unref_group): Destroy when the refcount reaches 0, not 1, like
11640         every other refcounted object in the known universe.
11641         (remove_from_group): When a group becomes empty, set it to be not
11642         active, and remove it from its chain. Don't unref it again,
11643         there's no floating reference any more.
11644         (destroy_group): We have to remove the group from the chain in
11645         remove_from_group (rather than here) to break refcounting cycles
11646         (the chain always has a ref on the group). So assert that
11647         group->chain==NULL.
11648         (ref_group_by_count): Removed, it was commented out anyway.
11649         (merge_chains): Use the remove_from_chain and add_to_chain
11650         primitives to do the reparenting, instead of rolling our own
11651         implementation.
11652         (add_to_chain): The first non-disabled group in the chain's group
11653         list will be the entry point for the chain. Because buffers can
11654         accumulate in loop elements' peer bufpens, we preferentially
11655         schedule loop groups before get groups to avoid unnecessary
11656         execution of get-based groups when the bufpens are already full.
11657         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
11658         (get_group_schedule_function): Ditto.
11659         (loop_group_schedule_function): Ditto.
11660         (gst_opt_scheduler_loop_wrapper): Ditto.
11661         (gst_opt_scheduler_iterate): Ditto.
11662
11663         I understand the opt scheduler now, yippee!
11664
11665         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
11666         (gst_pad_get_name, gst_pad_set_chain_function) 
11667         (gst_pad_set_get_function, gst_pad_set_event_function) 
11668         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
11669         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
11670         (gst_pad_set_query_function, gst_pad_get_query_types) 
11671         (gst_pad_get_query_types_default) 
11672         (gst_pad_set_internal_link_function) 
11673         (gst_pad_set_formats_function, gst_pad_set_link_function) 
11674         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
11675         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
11676         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
11677         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
11678         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
11679         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
11680         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
11681         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
11682         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
11683         (gst_pad_event_default_dispatch, gst_pad_event_default) 
11684         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
11685         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
11686         (gst_pad_get_formats_default, gst_pad_get_formats): Better
11687         argument checks, and some doc fixes.
11688
11689         (gst_pad_custom_new_from_template): Um, does anyone
11690         use these functions? Actually make a custom pad instead of a
11691         normal one.
11692         (gst_pad_try_set_caps): Transpose some checks.
11693         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
11694         the pad is in negotiation.
11695         (gst_pad_try_relink_filtered): Use pad_link_prepare.
11696         
11697         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
11698
11699         * gst/gstelement.h: 
11700         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
11701         on the list.
11702
11703 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11704
11705         * gst/gstbin.c: (gst_bin_add):
11706           add error for not being able to add elements
11707
11708 2004-02-22  Julien MOUTTE <julien@moutte.net>
11709
11710         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
11711         audio-codec and video-codec.
11712
11713 2004-02-22  Benjamin Otte  <otte@gnome.org>
11714
11715         reported by: Padraig O'Briain <padraig.obriain@sun.com>
11716
11717         * autogen.sh:
11718           replace test -e with test -x for mkinstalldirs to be more portable.
11719           (fixes #134816)
11720
11721 2004-02-22  Benjamin Otte  <otte@gnome.org>
11722
11723         * gst/gstpad.c:
11724           revert last patch from Andy, it makes gst_pad_can_link_filtered much
11725           too noisy
11726         * gst/gsttag.c: (_gst_tag_initialize):
11727         * gst/gsttag.h:
11728           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
11729         * libs/gst/control/dparam.c: (gst_dparam_attach):
11730         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
11731           check that types for attached dparams match
11732
11733 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11734
11735         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
11736         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11737         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11738           fix errors
11739
11740 2004-02-20  Andy Wingo  <wingo@pobox.com>
11741
11742         * gst/gstbin.c:
11743         * gst/gstbuffer.c:
11744         * gst/gstplugin.c:
11745         * gst/registries/gstxmlregistry.c: 
11746         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
11747
11748         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
11749         (gst_element_add_pad): DEBUG->INFO, some fixes.
11750         (gst_element_get_compatible_pad_template): Just see if the
11751         templates' caps intersect, not if one is a strict subset of the
11752         other. This conforms more to what gst_pad_link_intersect() does.
11753         (gst_element_class_add_pad_template): Don't memcpy the pad
11754         template, just ref it.
11755         (gst_element_get_compatible_pad_filtered): Clean up debug messages
11756
11757         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
11758         (gst_pad_link_filtered): Debug changes.
11759         (gst_pad_link_prepare): New function, consolidated from
11760         can_link_filtered and link_filtered.
11761
11762         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
11763         look more like that of the functions in gstelement.c
11764
11765         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
11766         object, and return the empty string if object is NULL.
11767
11768         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
11769         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
11770         LOG, not DEBUG. We still get flex info on debug.
11771
11772         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
11773         debug string more verbose.
11774         (plugin_times_older_than): DEBUG->LOG.
11775
11776 2004-02-20  Julien MOUTTE <julien@moutte.net>
11777
11778         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
11779         will emit found_tag for each stream they demux with the codec.
11780
11781 2004-02-20  Benjamin Otte  <otte@gnome.org>
11782
11783         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
11784           copy navigation event correctly. Check freeing tag lists. 
11785         * gst/gstthread.c: (gst_thread_change_state):
11786           don't abort() on state changing mess - it might happen because of
11787           bugs.
11788         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
11789           use boxed functions
11790         * gst/gstvalue.h:
11791           fix GST_VALUE_HOLDS_CAPS
11792
11793 2004-02-19  David Schleef  <ds@schleef.org>
11794
11795         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
11796         and use it for GST_FUNCTION.  (bug #134750)
11797
11798 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11799
11800         * po/fr.po:
11801         * po/nl.po:
11802           updating translations
11803
11804 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11805
11806         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
11807
11808 2004-02-18  kost@imn.htwk-leipzig.de
11809
11810         reviewed by: David Schleef  <ds@schleef.org>
11811
11812         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
11813         for libgstcontrol.
11814
11815 2004-02-18  David Schleef  <ds@schleef.org>
11816
11817         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11818         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11819         (gst_dpsmooth_new): Additional fixes to get double dparams working.
11820         * tools/gst-inspect.c: (print_element_info): Support dumping of
11821         double dparam information.
11822
11823 2004-02-17  David Schleef  <ds@schleef.org>
11824
11825         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11826         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
11827         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
11828         Use GST_TYPE_CAPS in signal prototype.
11829         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
11830         Convert GST_TYPE_CAPS to boxed.
11831         * gst/gstelement.c: (gst_element_class_init):
11832         Use GST_TYPE_TAG_LIST in signal prototype.
11833         * gst/gstindex.c: (gst_index_class_init):
11834         * gst/gstindex.h:
11835         Add GST_TYPE_INDEX_ENTRY type.
11836         * gst/gstmarshal.list:
11837         Add necessary marshal types.
11838         * gst/gstpad.c: (gst_real_pad_class_init),
11839         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
11840         (gst_pad_recover_caps_error):
11841         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
11842         * gst/gststructure.c: (_gst_structure_initialize),
11843         (gst_structure_copy), (_gst_structure_copy_conditional):
11844         * gst/gststructure.h:
11845         Convert GST_TYPE_STRUCTURE to boxed.
11846         * gst/gsttag.c: (gst_tag_list_get_type):
11847         * gst/gsttag.h:
11848         Add GST_TYPE_TAG_LIST type.
11849
11850 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11851
11852         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
11853         to what we agreed with david.
11854         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
11855
11856 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11857
11858         * po/nl.po: update translation
11859
11860 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11861
11862         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
11863           throw an error if spider is trying to play a mime type there is
11864           no decoder for
11865         * po/POTFILES.in:
11866           add gst/autoplug/gstspider.c for translation
11867
11868 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11869
11870         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
11871         silently when the pad is negotiating.
11872
11873 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11874
11875         * docs/faq/Makefile.am:
11876           add script to run gstreamer uninstalled 
11877         * docs/faq/faq.xml:
11878         * docs/faq/developing.xml:
11879         * docs/faq/gst-uninstalled:
11880           extract script to run gstreamer uninstalled
11881         * docs/manuals.mak:
11882           add EXTRA_SOURCES variable for Makefile.am's to set to
11883           use additional SOURCE files for the doc build
11884
11885 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11886
11887         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
11888
11889 2004-02-15  Julien MOUTTE  <julien@moutte.net>
11890
11891         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
11892         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
11893         an error was thrown by osssink. Basically a state change failure for
11894         an element in a different scheduling group was considered as
11895         successful, which means that caps nego was going on and weird stuff
11896         happened. Like I wrote in the comment there, if someone wants to
11897         revert that please drop me a mail explaining why because I really see
11898         no point in keeping that broken behaviour there.
11899         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
11900         be empty, we then return NULL which will trigger a nice error when 
11901         pulling from the pad.
11902
11903 2004-02-13  David Schleef  <ds@schleef.org>
11904
11905         * libs/gst/control/dparam.c: (gst_dparam_class_init),
11906         (gst_dparam_get_property), (gst_dparam_set_property),
11907         (gst_dparam_do_update_default):
11908         * libs/gst/control/dparam.h:
11909         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11910         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
11911         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
11912         (gst_dpsmooth_do_update_double):
11913         * libs/gst/control/dparam_smooth.h:
11914         * libs/gst/control/dparammanager.c:
11915         (gst_dpman_inline_direct_update):
11916         Add support for double dparams.
11917
11918 2004-02-13  David Schleef  <ds@schleef.org>
11919
11920         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
11921         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
11922
11923 2004-02-13  Mattias Wadman  <mattias@sudac.org>
11924
11925         reviewed by: David Schleef  <ds@schleef.org>
11926
11927         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
11928         (gst_fdsrc_init), (gst_fdsrc_set_property),
11929         (gst_fdsrc_get_property), (gst_fdsrc_get):
11930         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
11931         and sends an EOS event if file descriptor reading times out.
11932
11933 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11934
11935         * configure.ac:
11936           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
11937
11938 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11939
11940         * configure.ac: pass required libxml version as argument
11941         (bug reported by Christophe Fergeau)
11942
11943 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11944   
11945         * docs/gst/gstreamer-docs.sgml:
11946         * docs/gst/tmpl/gstxml.sgml:
11947         * docs/libs/gstreamer-libs-docs.sgml:
11948           version API docs
11949
11950 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11951
11952         * gst/gstinfo.c:
11953         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
11954         (gst_registry_pool_feature_filter):
11955         * gst/gstthread.c: (gst_thread_class_init):
11956         * gst/gstvalue.c:
11957           add includes exposed by building without libxml
11958         * gst/indexers/Makefile.am:
11959           do not build fileindex when LOADSAVE disabled; we should have
11960           a better libxml check later since fileindex depends on xml, not
11961           LOADSAVE or REGISTRY
11962         * libs/gst/control/Makefile.am:
11963           link with m
11964         * tools/Makefile.am:
11965           fix wrong source code for gst-xmlinspect
11966
11967 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11968
11969         * configure.ac:
11970           fix gcov help output
11971           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
11972         * docs/random/release:
11973           some updated releasing notes
11974         * gstreamer.spec.in:
11975           more updates
11976
11977 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11978
11979         * docs/faq/faq.xml:
11980         * docs/manual/manual.xml:
11981         * docs/pwg/pwg.xml:
11982         * docs/pwg/titlepage.xml:
11983           put version in documentation
11984
11985 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11986
11987         * tools/Makefile.am: fix man page installation
11988
11989 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11990
11991         * configure.ac:
11992           don't check for libxml when load/save and registry disabled (#105844)
11993         * gstreamer.spec.in:
11994           sync with fedora candidate spec
11995
11996 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11997
11998         * po/fr.po:
11999         * po/nl.po:
12000           replace multidisksrc with multifilesrc
12001
12002 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12003
12004         * po/POTFILES.in:
12005           update to multidisksrc => multifilesrc file renaming (#134145)
12006
12007 2004-02-11  David Schleef  <ds@schleef.org>
12008
12009         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
12010         * docs/gst/tmpl/gstpadtemplate.sgml: same
12011         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
12012         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
12013         fixing dance.
12014         * gst/gstutils.c: Remove disabled code that uses GstProps.
12015         * gst/registries/gstxmlregistry.h: same
12016         * docs/random/ds/0.9-suggested-changes: random notes
12017
12018 2004-02-11  kost@imn.htwk-leipzig.de
12019
12020         reviewed by: David Schleef  <ds@schleef.org>
12021
12022         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
12023         initialisation of clock (bug #134128)
12024
12025 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12026
12027         * configure.ac:
12028         * gst/elements/Makefile.am:
12029         * gst/elements/gstelements.c:
12030         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
12031         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
12032         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
12033         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
12034         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
12035         * gst/elements/gstmultifilesrc.h:
12036           rename multidisksrc to multifilesrc (part of #122200)
12037
12038 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12039
12040         * docs/manuals.mak:
12041           fix automake complaints
12042         * gst-element-check.m4:
12043           fix unquotedness
12044
12045 2004-02-11  David Schleef  <ds@schleef.org>
12046
12047         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
12048         * gst/gstatomic_impl.h: Disable sparc implementation.
12049
12050 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12051
12052         * gst-element-check.m4:
12053           fix underquoted macros as reported by automake 1.8.x (#133800)
12054         * configure.ac:
12055           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
12056           by autopoint (fixes #132996)
12057
12058 2004-02-10  Andy Wingo  <wingo@pobox.com>
12059
12060         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
12061         way to do inheritance.
12062         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
12063         (gst_pad_get_query_types, gst_pad_get_query_types_default):
12064         Routine docs.
12065         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
12066         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
12067         doc.
12068         (gst_pad_unlink, gst_pad_is_linked): Docs.
12069         (gst_pad_renegotiate): A brief description of capsnego.
12070         (gst_pad_try_set_caps): Document.
12071         (gst_pad_try_set_caps_nonfixed): Document.
12072         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
12073         (gst_pad_set_parent): Deprecated (although not out of the API).
12074         (gst_pad_get_parent): Deprecated, although many plugins use this.
12075         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
12076         are private and will go away in 0.9.
12077         (gst_pad_perform_negotiate): Doc.
12078         (gst_pad_link_unnegotiate): I think this is meant to be static.
12079         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
12080         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
12081         (gst_pad_get_peer): Doc updates.
12082         (gst_pad_caps_change_notify): Doc.
12083         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
12084         (gst_ghost_pad_new): Doc fixes.
12085
12086         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
12087         (gst_object_check_uniqueness): 
12088
12089         * gst/gstelement.c (gst_element_add_pad) 
12090         (gst_element_add_ghost_pad, gst_element_remove_pad) 
12091         (gst_element_remove_ghost_pad, gst_element_get_pad) 
12092         (gst_element_get_static_pad, gst_element_get_pad_list) 
12093         (gst_element_class_get_pad_template_list) 
12094         (gst_element_class_get_pad_template): Work on the docs.
12095         (gst_element_get_pad_template_list): Uses the class method.
12096         (gst_element_get_compatible_pad_template): Docs, and consolidate
12097         some test conditions. 
12098         (gst_element_get_pad_from_template): New static function.
12099         (gst_element_request_compatible_pad): Docs, and work with
12100         non-request compatible templates. 
12101         (gst_element_get_compatible_pad_filtered): Docs and remove
12102         redundant checks.
12103         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
12104         (gst_element_link_filtered, gst_element_link_many) 
12105         (gst_element_link, gst_element_link_pads) 
12106         (gst_element_unlink_many): Docs.
12107
12108 2004-02-05  Andy Wingo  <wingo@pobox.com>
12109
12110         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
12111         s/pointer/boxed/.
12112
12113         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
12114
12115         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
12116         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
12117         with the type=GST_TYPE_CAPS. This allows language bindings to know
12118         what kind of data they're dealing with.
12119
12120         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
12121         to NULL when g_value_init is called. GstCaps, which rolls its own
12122         type implementation, now does the same instead of allocating empty
12123         caps.
12124         (_gst_caps_initialize, _gst_caps_collect_value,
12125         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
12126         table methods. This allows G_VALUE_COLLECT to work.
12127
12128 2004-02-05  Andy Wingo  <wingo@pobox.com>
12129
12130         * configure.ac:
12131         * testsuite/Makefile.am (SUBDIRS): 
12132         * testsuite/ghostpads/Makefile.am: 
12133         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
12134
12135         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
12136         These two routines are the only ones that set
12137         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
12138         pad template. They should be made static, depending on ABI needs.
12139         (gst_real_pad_dispose): Handle the case of ghost pads without a
12140         parent. Assert after dealing with ghost pads that the ghost pad
12141         list is empty.
12142         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
12143         set after creation.
12144         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
12145         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
12146         functions. set_property will call add_ghost_pad/remove_ghost_pad
12147         as appropriate.
12148         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
12149
12150         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
12151         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
12152         (gst_element_remove_pad): Handle ghost pads as well.
12153         (gst_element_remove_ghost_pad): Deprecated (could be removed,
12154         depending on API-stability needs).
12155
12156 2004-02-05  Andy Wingo  <wingo@pobox.com>
12157
12158         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
12159         of course they're const
12160
12161 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12162
12163         * tools/Makefile.am:
12164         * tools/gst-feedback:
12165         * tools/gst-feedback-0.7:
12166           make gst-feedback versioned too for consistency
12167
12168 2004-02-11  David Schleef  <ds@schleef.org>
12169
12170         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12171         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
12172
12173 2004-02-10  Julien MOUTTE <julien@moutte.net>
12174
12175         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
12176         the structure does not contain a valid tag list. Adding a safety check
12177         to remove a noisy warning in that case.
12178
12179 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
12180
12181         * gst/gst.c: fix name to be in line with others
12182
12183 2004-02-09  Julien MOUTTE <julien@moutte.net>
12184
12185         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
12186         not shout that loud when len is 0. Just return 0 silently.
12187
12188 2004-02-09  Julien MOUTTE  <julien@moutte.net>
12189
12190         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
12191         because data_unref has one and I prefer the debug to be symetric.
12192         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
12193         were refed when added to the queue and unrefed only once when the queue
12194         was flushed. Now the flush handler unref the buffers two times : first
12195         unref for the ref added when pushing in the queue's tail and second
12196         unref to destroy the flushed buffer.
12197
12198 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
12199
12200         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
12201
12202 2004-02-06  David Schleef  <ds@schleef.org>
12203
12204         * docs/random/ds/0.9-suggested-changes: Random ramblings
12205         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
12206         to int before printing.
12207         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
12208         * gst/parse/parse.l: same.  See bug #129600
12209
12210 2004-02-06  David Schleef  <ds@schleef.org>
12211
12212         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
12213         (gst_index_add_entry), (gst_index_add_associationv),
12214         (gst_index_add_association): Add gst_index_add_associationv()
12215         and clean up gst_index_add_association(). #127133
12216
12217 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12218
12219         * autogen.sh: check out common with right tag if CVS/Tag exists
12220
12221 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12222
12223         * testsuite/ghostpads/ghostpads.c: (main):
12224           fix testsuite from segfaulting
12225
12226 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12227
12228         * Makefile.am: add release target
12229         * configure.ac: bump nano to 1
12230         * docs/random/release:
12231
12232 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12233
12234         * gst/gstcaps.h:
12235         * gst/gstelement.c: (gst_element_base_class_init),
12236         (gst_element_class_set_details), (gst_element_clear_pad_caps):
12237         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12238         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
12239         (gst_real_pad_dispose):
12240         * gst/gststructure.c: (gst_structure_free),
12241         (gst_structure_from_string):
12242           put reverted patch back in
12243         * gst/gstelement.c: (gst_element_remove_pad):
12244           free explicit caps if they're set
12245         * gst/gstpad.c: (_gst_pad_default_fixate_func):
12246           copy the structure when fixating
12247
12248 2004-02-05  David Schleef  <ds@schleef.org>
12249
12250         * gst/gstmarshal.list:
12251         * gst/gstpad.c: (gst_real_pad_class_init),
12252         (_gst_real_pad_fixate_accumulator):
12253         Revert POINTER->BOXED change in signal marshaller.
12254
12255 === release 0.7.4 ===
12256                                                                                 
12257 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12258                                                                                 
12259         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
12260         * configure.ac: changed for release
12261
12262 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
12263
12264         * gstreamer.spec.in:
12265           bump required version of gtk-doc
12266
12267 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
12268
12269         * gst/gstcaps.h:
12270         * gst/gstelement.c: (gst_element_base_class_init),
12271         (gst_element_class_set_details), (gst_element_clear_pad_caps):
12272         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12273         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
12274         (gst_real_pad_dispose):
12275         * gst/gststructure.c: (gst_structure_free),
12276         (gst_structure_from_string):
12277           revert patch that breaks applications, reapply after release
12278           to get this fixed properly
12279
12280 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12281
12282         * gst/gsttag.c: (_gst_tag_initialize):
12283         * gst/gsttag.h:
12284           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
12285
12286 2004-02-04  David Schleef  <ds@schleef.org>
12287
12288         Fix some memleaks:
12289         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
12290         (gst_spider_plug_from_srcpad):
12291         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
12292
12293 2004-02-04  David Schleef  <ds@schleef.org>
12294
12295         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
12296         a GstRealPad before accessing its structure members.
12297
12298 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12299
12300         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
12301         (gst_clock_get_speed):
12302         * gst/gstclock.h:
12303           reset padding, remove unused fields
12304
12305 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12306
12307         * gst/autoplug/gstspideridentity.c:
12308         (gst_spider_identity_sink_loop_type_finding):
12309           use get_allowed_caps, not get_caps (fixes #132519)
12310         * gst/elements/gsttypefind.c: (stop_typefinding):
12311           use correct order when sending buffers and seeking
12312
12313 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12314
12315         * configure.ac:
12316         * gst/gstelement.h:
12317         * gst/gstpad.h:
12318         * gst/gstqueue.h:
12319           upgrade libtool CURRENT, reset padding
12320
12321 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12322
12323         * configure.ac:
12324           bump to prerelease
12325           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
12326
12327 2004-02-04  David Schleef  <ds@schleef.org>
12328
12329         * docs/random/ds/0.9-suggested-changes: random notes
12330         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
12331         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
12332         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
12333         expansion.
12334         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
12335         (gst_filesink_get_query_types): same
12336         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
12337         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
12338         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
12339         to use new GST_PTR_FORMAT.
12340         * gst/gstelement.h: deprecate function factory macros
12341         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
12342         These are our last variadic macros that can't be replaced with
12343         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
12344         attempting to deprecate gst_element_clock_wait().
12345         * gst/gstevent.h: same
12346         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12347         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
12348         * gst/gstpad.h: deprecate function factory macros similar to above.
12349
12350 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12351
12352         * configure.ac:
12353         * tools/Makefile.am:
12354         * tools/gst-run.c: (popt_callback), (hash_print_key),
12355         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
12356         (get_candidates), (main):
12357           add new source file to generate non-versioned wrapper binaries
12358           for our tools.
12359
12360 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12361
12362         * gst/gstevent.c: (_gst_event_free):
12363           actually break; inside the switch statement
12364         * gst/parse/grammar.y:
12365           fix memleak where GValues weren't unset
12366
12367 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12368
12369         * gst/gststructure.c: (gst_structure_from_string):
12370           fix huge memleak
12371         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12372         (new_entry), (gst_type_find_element_chain):
12373         * gst/gstelement.c: (gst_element_base_class_init),
12374         (gst_element_class_set_details):
12375         * gst/gstpad.c: (gst_pad_can_link_filtered):
12376           fix smaller memleaks
12377         * gst/gstpad.c: (gst_real_pad_dispose):
12378           check that explicit caps are gone
12379         * gst/gststructure.c: (gst_structure_free):
12380           actually free the structure
12381         * gst/gstelement.c: (gst_element_clear_pad_caps):
12382           unset explicit caps
12383
12384 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12385
12386         * tools/Makefile.am:
12387           use AM_CFLAGS since all the CFLAGS are the same
12388           use AM_LDFAGS
12389
12390 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12391
12392         * docs/manual/gnome.xml:
12393           expand example a little
12394         * gst/gst.c: (gst_init_with_popt_table),
12395         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
12396           make sure popt option displays are done with right textdomain
12397           use GstPoptOption type
12398         * gst/gst.h:
12399           create GstPoptOption type
12400
12401 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12402
12403         * gst/gsterror.c: (_gst_stream_errors_init):
12404         * gst/gsterror.h:
12405           adding error type for no codec
12406         * po/POTFILES.in:
12407           add gst-inspect
12408         * po/nl.po:
12409           update dutch translation
12410         * tools/gst-inspect.c: (print_element_list), (main):
12411           do proper internationalization
12412         * tools/gst-launch.c: (idle_func):
12413           remove commented out function call
12414
12415 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12416
12417         * docs/README:
12418           add some error fixing notes
12419         * docs/gst/gstreamer-sections.txt:
12420           remove double entries
12421         * docs/gst/tmpl/gstbin.sgml:
12422         * docs/gst/tmpl/gstclock.sgml:
12423           remove override
12424         * docs/gst/tmpl/gstelement.sgml:
12425         * docs/gst/tmpl/gstindex.sgml:
12426         * docs/gst/tmpl/gstobject.sgml:
12427         * docs/gst/tmpl/gstpadtemplate.sgml:
12428         * docs/gst/tmpl/gstreamer-unused.sgml:
12429         * docs/gst/tmpl/gsttag.sgml:
12430         * docs/gst/tmpl/gstthread.sgml:
12431         * docs/gst/tmpl/gstxml.sgml:
12432         * gst/gsttag.h:
12433           sync header prototypes with c decls
12434         * gst/gsttaginterface.c:
12435           fix doc headers
12436
12437 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12438
12439         * gst/parse/Makefile.am:
12440         * gst/gstobject.h:
12441           get rid of gstmarshal.h dependency. It's not needed.
12442         * gst/gst.h:
12443         * gst/elements/gstfakesink.c:
12444         * gst/elements/gstfakesrc.c:
12445         * gst/elements/gstidentity.c:
12446         * gst/gstbin.c:
12447         * gst/gstelement.c:
12448         * gst/gstindex.c:
12449         * gst/gstobject.c:
12450         * gst/gstpad.c:
12451         * gst/gstthread.c:
12452         * gst/gstxml.c:
12453         * libs/gst/control/dparam.c:
12454         * libs/gst/control/dparammanager.c:
12455           include gstmarshal.h.
12456         Fixes #132045
12457
12458 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12459
12460         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
12461         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
12462         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
12463         * gst/elements/gstfilesrc.h:
12464           don't ref the filesrc when creating mmaped buffers. Don't keep a
12465           list of not-yet-destroyed buffers.
12466         * gst/gstbuffer.h:
12467           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
12468
12469 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12470
12471         * gst/gst.c: (init_pre):
12472           remove textdomain
12473
12474 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12475
12476         * docs/pwg/advanced-events.xml:
12477         * docs/pwg/advanced-scheduling.xml:
12478         * docs/pwg/intro-basics.xml:
12479         * docs/pwg/other-manager.xml:
12480         * docs/pwg/other-nton.xml:
12481         * docs/pwg/other-ntoone.xml:
12482         * docs/pwg/other-oneton.xml:
12483         * docs/pwg/pwg.xml:
12484           All sort of documentation... Forgot what. Point is that I want this
12485           in before I leave. The 'other-*' will be the last section and will
12486           explain issues specific to these type of elements.
12487
12488 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12489
12490         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12491         (gst_filesrc_get_read):
12492           set all the values on buffers that we can
12493
12494 2004-02-02  David Schleef  <ds@schleef.org>
12495
12496         Change usage of isblah() to g_ascii_isblah() to be more locale
12497         independent.  (#133076)
12498         * gst/gsturi.c: (gst_uri_protocol_check_internal):
12499         * gst/gstutils.c:
12500         * gst/parse/parse.l:
12501
12502 2004-02-02  Jon Trowbridge  <trow@gnu.org>
12503
12504         reviewed by: David Schleef  <ds@schleef.org>
12505
12506         Fix memory leaks:
12507         * gst/gstcaps.c: (gst_caps_to_string):
12508         * gst/registries/gstxmlregistry.c:
12509         (gst_xml_registry_add_path_list_func),
12510         (gst_xml_registry_parse_padtemplate):
12511
12512 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12513
12514         * gst/gstelement.c: (gst_element_default_error):
12515           suffix error messages with period
12516
12517 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12518
12519         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12520         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12521         * gst/gsterror.c: (gst_error_get_message):
12522           Suffix with dots
12523         * po/fr.po:
12524         * po/nl.po:
12525           Update translation files
12526
12527 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12528
12529         * gst/autoplug/gstspideridentity.c:
12530         (gst_spider_identity_sink_loop_type_finding):
12531         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12532         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12533         (gst_filesink_close_file), (gst_filesink_handle_event),
12534         (gst_filesink_chain):
12535         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12536         (gst_filesrc_get_read), (gst_filesrc_open_file):
12537         * gst/elements/gstidentity.c: (gst_identity_chain):
12538         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12539         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12540         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12541         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12542         * gst/gsterror.c: (_gst_core_errors_init),
12543         (_gst_library_errors_init), (_gst_resource_errors_init),
12544         (_gst_stream_errors_init), (gst_error_get_message):
12545         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12546         (gst_pad_recover_caps_error), (gst_pad_pull):
12547         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12548         * gst/schedulers/gstbasicscheduler.c:
12549         (gst_basic_scheduler_chainhandler_proxy),
12550         (gst_basic_scheduler_gethandler_proxy),
12551         (gst_basic_scheduler_cothreaded_chain):
12552           Suffix error messages with period.
12553           Use (NULL) instead of NULL
12554
12555 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12556
12557         * docs/gst/tmpl/gstelement.sgml:
12558         * docs/gst/tmpl/gstxml.sgml:
12559         * gst/gstelement.c: (gst_element_error_full):
12560           add element path to error
12561
12562 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12563
12564         * docs/random/mimetypes:
12565           update raw int/float info
12566         * gst/gsttag.c: (_gst_tag_initialize):
12567         * gst/gsttag.h:
12568           add GST_TAG_ENCODER
12569
12570 2004-01-30  David Schleef  <ds@schleef.org>
12571
12572         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
12573           missing (#132991)
12574
12575 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
12576
12577         reviewed by Benjamin Otte 
12578           parts of the patch submitted in bug #113913
12579
12580         * configure.ac:
12581           use AC_C_INLINE. Use = instead of == with test
12582         * examples/plugins/example.c:
12583         * gst/autoplug/gstspideridentity.c:
12584         * gst/elements/gstfdsrc.c:
12585         * gst/elements/gstfilesrc.c:
12586         * gst/elements/gstidentity.c:
12587         * gst/elements/gstmultidisksrc.c:
12588         * gst/elements/gststatistics.c:
12589         * gst/gstelement.c:
12590         * gst/gstobject.c:
12591         * gst/gstpad.c:
12592         * gst/gstpipeline.c:
12593         * gst/gstthread.c:
12594           don't end enums with a comma
12595         * gst/gstindex.c: (gst_index_compare_func):
12596           do explicit casting to gint
12597         * gst/gsttrace.c: (gst_trace_text_flush):
12598           #define strsize as a macro
12599
12600 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
12601
12602         * docs/README:
12603         * docs/gst/gstreamer-docs.sgml:
12604         * docs/gst/gstreamer-sections.txt:
12605         * docs/gst/tmpl/gstelement.sgml:
12606         * docs/gst/tmpl/gsterror.sgml:
12607         * docs/gst/tmpl/gstinterface.sgml:
12608         * docs/gst/tmpl/gstreamer-unused.sgml:
12609         * docs/gst/tmpl/gststructure.sgml:
12610         * docs/gst/tmpl/gsttag.sgml:
12611         * docs/gst/tmpl/gsttaginterface.sgml:
12612         * docs/gst/tmpl/gstvalue.sgml:
12613         make sure all API ends up in the built docs
12614         * gst/gstinterface.c:
12615         * gst/gststructure.c: (gst_structure_id_set_value),
12616         (gst_structure_set_value), (gst_structure_id_get_value):
12617         * gst/gststructure.h:
12618         * gst/gstvalue.h:
12619         sync .h with .c declarations
12620
12621 2004-01-30  Julien Moutte  <julien@moutte.net>
12622
12623         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
12624         Ronald will fix riffread.
12625
12626 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12627
12628         * docs/pwg/advanced-interfaces.xml:
12629           Added tuner interface docs.
12630
12631 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12632
12633         * docs/random/mimetypes:
12634           correct Theora information
12635         * gst/gstelement.h:
12636           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
12637
12638 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12639
12640         * gst/gstelement.c: (gst_element_error_full):
12641         * gst/gstelement.h:
12642           GST_ELEMENT_ERROR in enum -> _IN_ERROR
12643
12644 2004-01-29  Julien MOUTTE  <julien@moutte.net>
12645
12646         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
12647         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
12648         again and even before DISCONT.
12649         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
12650         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
12651         bytestream so that it's not stopping to fill the bytestream if events
12652         different than EOS or DISCONT are received. Instead it process them so
12653         that they go downstream.
12654
12655 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12656
12657         * docs/gst/tmpl/gstelement.sgml:
12658         * docs/gst/tmpl/gstreamer-unused.sgml:
12659         * docs/gst/tmpl/gstxml.sgml:
12660         * gst/autoplug/gstspideridentity.c:
12661         (gst_spider_identity_sink_loop_type_finding):
12662         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12663         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12664         (gst_filesink_close_file), (gst_filesink_handle_event),
12665         (gst_filesink_chain):
12666         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12667         (gst_filesrc_get_read), (gst_filesrc_open_file):
12668         * gst/elements/gstidentity.c: (gst_identity_chain):
12669         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12670         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12671         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12672         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12673         * gst/gstelement.h:
12674         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12675         (gst_pad_recover_caps_error), (gst_pad_pull):
12676         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12677         * gst/schedulers/gstbasicscheduler.c:
12678         (gst_basic_scheduler_chainhandler_proxy),
12679         (gst_basic_scheduler_gethandler_proxy),
12680         (gst_basic_scheduler_cothreaded_chain):
12681           gst_element_error -> GST_ELEMENT_ERROR
12682
12683 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12684
12685         * docs/Makefile.am:
12686         * docs/gst/tmpl/gstelement.sgml:
12687         * docs/gst/tmpl/gstxml.sgml:
12688         * docs/manuals.mak:
12689         * docs/pwg/advanced-request.xml:
12690         * docs/pwg/advanced-scheduling.xml:
12691         * docs/pwg/advanced-tagging.xml:
12692           fix non-validating docbook using CDATA
12693           make sure make check-local gets run first to check if it validates
12694
12695 2004-01-29  Julien MOUTTE <julien@moutte.net>
12696
12697         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
12698         handling (up and downstream).
12699         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
12700         my_filter thing.
12701
12702 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12703
12704         * docs/pwg/advanced-tagging.xml:
12705           Add docs about tag writing.
12706
12707 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12708
12709         * docs/pwg/advanced-tagging.xml:
12710           Add a part about tag reading and application signalling... Tag
12711           writing still needs to be documented.
12712         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12713           We can set file locations in READY, too.
12714
12715 2004-01-29  Julien MOUTTE <julien@moutte.net>
12716
12717         * docs/random/ds/element-checklist: Adding some notes about src
12718         events.
12719
12720 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12721
12722         * docs/random/mimetypes:
12723           Update docs to point to correct elements for various mimetypes, and
12724           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
12725           <stephane.loeuillet@tiscali.fr>.
12726
12727 2004-01-28  David Schleef  <ds@schleef.org>
12728
12729         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
12730
12731 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12732
12733         * docs/random/mimetypes:
12734           update docs for audio/x-raw-float. Add "buffer-frames=0 means
12735           undefined"
12736         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12737           make it only work in NULL.
12738         * gst/gstcaps.c:
12739           don't posion NULL caps
12740         * gst/gstelement.c: (gst_element_set_time):
12741           add debugging statement
12742         * gst/gstelement.c: (gst_element_emit_found_tag),
12743         (gst_element_found_tag_func), (gst_element_found_tags):
12744         * gst/gstelement.h:
12745           These functions take const taglists
12746         * gst/gstpad.c: (gst_pad_proxy_getcaps):
12747           fix memleak
12748         * gst/gstpad.c: (gst_pad_event_default):
12749           make more effort on handling discont and clocks, g_warn if everything
12750           fails
12751         * gst/gststructure.c: (gst_structure_remove_fields),
12752         (gst_structure_remove_fields_valist):
12753         * gst/gststructure.h:
12754           add gst_structure_remove_fields(_valist)
12755         * gst/gsttag.c:
12756           fix doc glitch
12757
12758 2004-01-28  David Schleef  <ds@schleef.org>
12759
12760         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
12761         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
12762         Fix memory leakage of gst_caps_to_string().
12763
12764         Use GST_PTR_FORMAT instead of gst_caps_to_string():
12765         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
12766         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
12767         (gst_spider_identity_sink_loop_type_finding):
12768         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12769         (find_suggest):
12770         * gst/gstpad.c: (gst_pad_try_relink_filtered),
12771         (gst_pad_set_explicit_caps):
12772         * gst/parse/grammar.y:
12773
12774 2004-01-28  David Schleef  <ds@schleef.org>
12775
12776         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
12777         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
12778         * docs/random/ds/0.9-suggested-changes: Notes from Company.
12779         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
12780         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
12781         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
12782         (gst_debug_log_default), (_gst_info_printf_extension),
12783         (_gst_info_printf_extension_arginfo):  Add printf extension.
12784         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
12785         * gst/gststructure.c: (gst_structure_to_string),
12786         (_gst_structure_parse_value): Use gst_value_deserialize() and
12787         remove old code.
12788         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
12789         (gst_value_deserialize_boolean), (gst_strtoi),
12790         (gst_value_deserialize_int), (gst_value_deserialize_double),
12791         (gst_value_deserialize_string), (gst_value_deserialize): Implement
12792         a bunch of deserialize functions and gst_value_deserialize.
12793         * gst/gstvalue.h: er, _de_serialize, not unserialize
12794         * testsuite/caps/string-conversions.c: (main): We don't currently
12795         handle (float) in caps, so convert these to (double).
12796         * testsuite/debug/Makefile.am: Add new test for the printf extension
12797         * testsuite/debug/printf_extension.c: (main): same
12798
12799 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12800
12801         * docs/random/company/time:
12802           Add some docs about clocking and time
12803
12804 2004-01-28  Julien MOUTTE <julien@moutte.net>
12805
12806         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
12807
12808 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12809
12810         * docs/pwg/advanced-clock.xml:
12811         * docs/pwg/advanced-dparams.xml:
12812         * docs/pwg/advanced-events.xml:
12813         * docs/pwg/advanced-interfaces.xml:
12814         * docs/pwg/advanced-midi.xml:
12815         * docs/pwg/advanced-request.xml:
12816         * docs/pwg/advanced-scheduling.xml:
12817         * docs/pwg/advanced-tagging.xml:
12818         * docs/pwg/advanced-types.xml:
12819         * docs/pwg/appendix-checklist.xml:
12820         * docs/pwg/building-boiler.xml:
12821         * docs/pwg/building-chainfn.xml:
12822         * docs/pwg/building-filterfactory.xml:
12823         * docs/pwg/building-pads.xml:
12824         * docs/pwg/building-props.xml:
12825         * docs/pwg/building-signals.xml:
12826         * docs/pwg/building-state.xml:
12827         * docs/pwg/building-testapp.xml:
12828         * docs/pwg/intro-basics.xml:
12829         * docs/pwg/intro-preface.xml:
12830         * docs/pwg/other-autoplugger.xml:
12831         * docs/pwg/other-sink.xml:
12832         * docs/pwg/other-source.xml:
12833         * docs/pwg/titlepage.xml:
12834           fix up id's
12835
12836 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12837
12838         * docs/95NonPath:
12839         * docs/HACKING:
12840         * docs/README:
12841         * docs/building-the-docs-on-debian:
12842           collect relevant bits of doc info
12843
12844 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12845
12846         * docs/pwg/advanced_tagging.xml:
12847           Half-assed commit so Thomas can re-arrange document IDs here to be
12848           consistent, too.
12849
12850 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12851
12852         * docs/manual/autoplugging.xml:
12853         * docs/manual/bins-api.xml:
12854         * docs/manual/bins.xml:
12855         * docs/manual/buffers-api.xml:
12856         * docs/manual/buffers.xml:
12857         * docs/manual/clocks.xml:
12858         * docs/manual/components.xml:
12859         * docs/manual/cothreads.xml:
12860         * docs/manual/debugging.xml:
12861         * docs/manual/dparams-app.xml:
12862         * docs/manual/dynamic.xml:
12863         * docs/manual/elements-api.xml:
12864         * docs/manual/elements.xml:
12865         * docs/manual/factories.xml:
12866         * docs/manual/gnome.xml:
12867         * docs/manual/goals.xml:
12868         * docs/manual/helloworld.xml:
12869         * docs/manual/helloworld2.xml:
12870         * docs/manual/init-api.xml:
12871         * docs/manual/intro.xml:
12872         * docs/manual/links-api.xml:
12873         * docs/manual/links.xml:
12874         * docs/manual/manual.xml:
12875         * docs/manual/motivation.xml:
12876         * docs/manual/pads-api.xml:
12877         * docs/manual/pads.xml:
12878         * docs/manual/plugins-api.xml:
12879         * docs/manual/plugins.xml:
12880         * docs/manual/programs.xml:
12881         * docs/manual/queues.xml:
12882         * docs/manual/quotes.xml:
12883         * docs/manual/schedulers.xml:
12884         * docs/manual/states-api.xml:
12885         * docs/manual/states.xml:
12886         * docs/manual/threads.xml:
12887         * docs/manual/typedetection.xml:
12888         * docs/manual/xml.xml:
12889           use chapter, part, section or misc as id starts for all bits
12890
12891 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12892
12893         * docs/gst/gstreamer-sections.txt:
12894           Fix up TITLE of the sections
12895
12896 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12897
12898         * docs/pwg/advanced_interfaces.xml:
12899           Add documentation on propertyprobing.
12900         * docs/pwg/advanced_events.xml:
12901         * docs/pwg/advanced_tagging.xml:
12902         * docs/pwg/building_boiler.xml:
12903         * docs/pwg/building_filterfactory.xml:
12904         * docs/pwg/pwg.xml:
12905           Move filterfactory and tagging into their own chapter, add a chapter
12906           on events. all these are empty placeholders that will be filled in
12907           some day.
12908
12909 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12910
12911         * docs/pwg/advanced_interfaces.xml:
12912           Docs for mixer interface. Also a check for website uploading.
12913
12914 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12915
12916         * docs/HACKING:
12917         * docs/Makefile.am:
12918         * docs/faq/Makefile.am:
12919         * docs/gst/Makefile.am:
12920         * docs/gst/tmpl/gstelement.sgml:
12921         * docs/gst/tmpl/gstplugin.sgml:
12922         * docs/gst/tmpl/gstreamer-unused.sgml:
12923         * docs/libs/Makefile.am:
12924         * docs/manual/Makefile.am:
12925         * docs/manuals.mak:
12926         * docs/pwg/Makefile.am:
12927         * docs/upload.mak:
12928           Separate out upload target and make it similar for
12929           both docbook and gtk-doc docs
12930
12931 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12932
12933         * docs/manuals.mak:
12934           Fix upload target to work with freedesktop
12935
12936 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12937
12938         * docs/pwg/advanced_types.xml:
12939           Add notes on creating your own types.
12940         * docs/pwg/building_boiler.xml:
12941         * docs/pwg/building_pads.xml:
12942         * docs/pwg/building_state.xml:
12943           Add some stuff about how to retrieve values from structures, how
12944           that relates to types and change layout slightly again to be almost
12945           perfect.
12946
12947 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12948
12949         * docs/pwg/advanced_dparams.xml:
12950         * docs/pwg/advanced_scheduling.xml:
12951           Change index layout slightly.
12952
12953 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12954
12955         * docs/pwg/advanced_clock.xml:
12956         * docs/pwg/advanced_interfaces.xml:
12957         * docs/pwg/advanced_midi.xml:
12958           General placeholders for now.
12959         * docs/pwg/advanced_request.xml:
12960           Explanation about sometimes and request pads.
12961         * docs/pwg/advanced_scheduling.xml:
12962           Concept of bytestream, loopfunctions and schedulers.
12963         * docs/pwg/building_boiler.xml:
12964           Add something about plugin-init.
12965
12966 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12967
12968         * docs/pwg/building_pads.xml:
12969           Fix broken docbook
12970
12971 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12972
12973         * docs/pwg/advanced_interfaces.xml:
12974         * docs/pwg/pwg.xml:
12975           Add as a placeholder for future filling-in.
12976         * docs/pwg/basics_autoplugging.xml:
12977         * docs/pwg/basics_buffers.xml:
12978         * docs/pwg/basics_elements.xml:
12979         * docs/pwg/basics_events.xml:
12980         * docs/pwg/basics_plugins.xml:
12981         * docs/pwg/basics_types.xml:
12982           Remove, because unused (this is all in intro_basics.xml).
12983         * docs/pwg/building_signals.xml:
12984           Short intro to signals + reference to GObject docs - we really
12985           shouldn't go into these sort of things to deply because we don't
12986           use them that extensively anyway.
12987         * docs/pwg/building_state.xml:
12988           Explanation of states. Benjamin, please check.
12989         * docs/pwg/building_testapp.xml:
12990           Put everything in one page - putting only a few lines of content
12991           per page doesn't really make sense.
12992
12993           Time to get into the advanced topics. ;).
12994
12995 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12996
12997         * docs/pwg/advanced_types.xml:
12998           Finish documenting the current state of mimetypes.
12999         * docs/pwg/building_boiler.xml:
13000         * docs/pwg/building_chainfn.xml:
13001         * docs/pwg/building_pads.xml:
13002         * docs/pwg/building_props.xml:
13003         * docs/pwg/building_testapp.xml:
13004           Start documenting the "how to build a simple audio filter" part
13005           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
13006           states and (maybe?) a short introduction to capsnego in the chapter
13007           on pads (building_pads.xml). Capsnego should probably be explained
13008           fully in advanced_capsnego.xml or so.
13009
13010 2004-01-26  David Schleef  <ds@schleef.org>
13011
13012         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
13013         * gst/gstpad.h: Add new function to allow element to (somewhat)
13014         specify non-fixed caps on a pad.
13015         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
13016         that I added a few weeks ago.
13017
13018 2004-01-26  David Schleef  <ds@schleef.org>
13019
13020         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
13021           making try_set_caps() work with non-fixed caps.
13022
13023 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13024
13025         * docs/pwg/advanced_types.xml:
13026         * docs/pwg/intro_basics.xml:
13027         * docs/pwg/intro_preface.xml:
13028         * docs/pwg/pwg.xml:
13029         * docs/pwg/titlepage.xml:
13030           First try to resurrect the PWG. I'm halfway integrating the mimetypes
13031           in here (docs/random/mimetypes), and will from there on work on both
13032           updating outdated parts and adding missing parts.
13033           That doesn't mean I'll fix it completely, but I'll try at least. ;).
13034
13035 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
13036
13037         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
13038           policy is set
13039
13040 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13041
13042         * gst/gstelement.h:
13043           remove gst_element_factory_get_version. It doesn't exist anymore.
13044         * gst/gstplugin.c:
13045         * gst/gstplugin.h:
13046           remove gst_plugin_set_name and change gst_plugin_get_longname to
13047           gst_plugin_get_description to match code.
13048         * gst/gsterror.h:
13049           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
13050         * gst/gstpad.c: (gst_pad_try_set_caps):
13051           make it work with nonfixed caps.
13052           Note that even in the nonfixed case the link function of the pad
13053           that tries to set caps isn't called.
13054
13055 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13056
13057         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
13058           fix bug where buffer was not assembled correctly
13059         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
13060           silence by default
13061         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
13062           only seek if there's no more buffers that could work without seeking
13063
13064 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13065
13066         * gst/gsttag.c: (_gst_tag_initialize):
13067         * gst/gsttag.h:
13068           Add application tag (for encoding/muxing app).
13069
13070 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13071
13072         * autogen.sh:
13073           make autopoint force, and libtoolize not copy
13074         * common/m4/as-docbook.m4:
13075           added docbook xml catalog setup check
13076         * common/m4/gst-doc.m4:
13077           use docbook check
13078
13079 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
13080
13081         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
13082         * gst/gsttag.h:
13083           add GstTagFlag
13084
13085 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13086
13087         * docs/gst/gstreamer-sections.txt:
13088         * docs/gst/tmpl/gst.sgml:
13089         * docs/gst/tmpl/gstbuffer.sgml:
13090         * docs/gst/tmpl/gstclock.sgml:
13091         * docs/gst/tmpl/gstelement.sgml:
13092         * docs/gst/tmpl/gstreamer-unused.sgml:
13093         * docs/gst/tmpl/gstxml.sgml:
13094           sync latest API changes to docs
13095
13096 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13097
13098         * gst/gstpluginfeature.c:
13099           fix doc snippet
13100         * tools/gst-inspect.c: (print_element_list):
13101           fix output of typefind
13102           add GPL header
13103         * tools/gst-launch.c:
13104           add GPL header
13105
13106 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13107
13108         * gst/elements/Makefile.am:
13109         * gst/elements/gstelements.c:
13110         * gst/elements/gsttypefindelement.c:
13111         * gst/elements/gsttypefindelement.h:
13112         * po/POTFILES.in:
13113         * po/fr.po:
13114         * po/nl.po:
13115           renamed gsttypefindelement to gsttypefind, conserving CVS history
13116
13117 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13118
13119         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
13120         * gst/gsttag.h:
13121           add some tags used in ogg as well
13122           fix _ in replaygain tags
13123
13124 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13125
13126         * gst/gsterror.h:
13127           fix wrong GST_LIBRARY_ERROR_ENCODE addition
13128
13129 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13130
13131         * gst/gstelement.c: (gst_element_error_full):
13132         * gst/gstelement.h:
13133           change _extended to _full
13134
13135 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13136
13137         reviewed by: <delete if not using a buddy>
13138
13139         * docs/gst/tmpl/gst.sgml:
13140         * docs/gst/tmpl/gstbuffer.sgml:
13141         * docs/gst/tmpl/gstclock.sgml:
13142         * docs/gst/tmpl/gstelement.sgml:
13143         * docs/gst/tmpl/gstreamer-unused.sgml:
13144         * docs/gst/tmpl/gstxml.sgml:
13145         * gst/gstelement.c: (gst_element_error_full):
13146         * gst/gstelement.h:
13147
13148 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13149
13150         * gst/gstelement.h: fix _gst_element_error_printf prototype
13151
13152 2004-01-20  David Schleef  <ds@schleef.org>
13153
13154         * gst/gststructure.c: (gst_structure_to_string):
13155         Convert function to use gst_value_serialize().
13156         * gst/gstvalue.c: (gst_value_serialize_list),
13157         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
13158         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
13159         (gst_value_serialize_int), (gst_value_serialize_double),
13160         (gst_string_wrap), (gst_value_serialize_string),
13161         (gst_value_serialize), (gst_value_deserialize):
13162         * gst/gstvalue.h:
13163         Add implementations for serialize.
13164
13165 2004-01-20  Julien MOUTTE  <julien@moutte.net>
13166
13167         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
13168         we want to keep that one in the future or change xvidenc.c to use 
13169         another error.
13170
13171 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13172
13173         * gst/gstelement.c: (_gst_element_error_printf):
13174         * gst/gstelement.h:
13175           privatise function
13176
13177 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13178
13179         * docs/random/error:
13180           doc explaining error system
13181         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
13182           cleanup
13183
13184 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13185
13186         * gst/gst-i18n-app.h:
13187         * gst/gst-i18n-lib.h:
13188           remove inclusion of config.h
13189         * po/POTFILES.in:
13190         * po/nl.po:
13191           add gst/gstelement.c
13192
13193 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13194
13195         * po/nl.po: updated Dutch translation
13196
13197 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13198
13199         * gst/gsterror.c: (_gst_core_errors_init),
13200         (_gst_library_errors_init), (_gst_resource_errors_init),
13201         (_gst_stream_errors_init):
13202         remove ending punctuation dots
13203
13204 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13205
13206         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
13207         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
13208         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13209         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13210         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13211         use GST_ERROR_SYSTEM
13212
13213 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13214
13215         * gst/gstelement.c: (gst_element_error_printf),
13216         (gst_element_error_extended):
13217         * gst/gstelement.h:
13218           add a helper printf function so we can have NULL values passed.
13219
13220 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13221
13222         * gst/gstelement.h:
13223           add G_STMT macros to gst_element_error, which isn't strictly
13224           necessary but people tell me to anyway.
13225
13226 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
13227
13228         * gst/Makefile.am:
13229         * gst/autoplug/gstspideridentity.c:
13230         (gst_spider_identity_sink_loop_type_finding):
13231         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
13232         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
13233         (gst_filesink_close_file), (gst_filesink_handle_event),
13234         (gst_filesink_chain):
13235         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
13236         (gst_filesrc_map_region), (gst_filesrc_get_read),
13237         (gst_filesrc_open_file):
13238         * gst/elements/gstidentity.c: (gst_identity_chain):
13239         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13240         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13241         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13242         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
13243         * gst/gst.h:
13244         * gst/gst_private.h:
13245         * gst/gstelement.c: (gst_element_class_init),
13246         (gst_element_default_error), (gst_element_error_func),
13247         (gst_element_error_extended):
13248         * gst/gstelement.h:
13249         * gst/gsterror.c: (_gst_core_errors_init),
13250         (_gst_library_errors_init), (_gst_resource_errors_init),
13251         (_gst_stream_errors_init), (gst_error_get_message):
13252         * gst/gsterror.h:
13253         * gst/gstinfo.c: (_gst_debug_init):
13254         * gst/gstmarshal.list:
13255         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13256         (gst_pad_recover_caps_error), (gst_pad_pull):
13257         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
13258         * gst/schedulers/gstbasicscheduler.c:
13259         (gst_basic_scheduler_chainhandler_proxy),
13260         (gst_basic_scheduler_gethandler_proxy),
13261         (gst_basic_scheduler_cothreaded_chain):
13262         * po/POTFILES.in:
13263         * po/fr.po:
13264         * po/nl.po:
13265           change error signal
13266           add error categories
13267
13268 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
13269
13270         * gst/gsttag.c: (_gst_tag_initialize):
13271         * gst/gsttag.h:
13272         Add replaygain tag
13273
13274 2004-01-18  Colin Walters  <walters@verbum.org>
13275
13276         * examples/retag/retag.c: Call gst_init before processing
13277         program args.  Add g_assert to _link_many call.
13278
13279 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13280
13281         * gst/gstpad.c: (gst_pad_alloc_buffer):
13282           Return a newly allocated buffer when the pad has no peer.
13283
13284 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13285
13286         * gst/gstclock.c: (gst_clock_get_time):
13287           make it compile with gcc 2.95 again.
13288           Patch by Scott Wheeler
13289
13290 2004-01-15  David Schleef  <ds@schleef.org>
13291
13292         * gst/gstcaps.h:
13293         Added gst_caps_is_simple() macro.
13294         * testsuite/caps/caps.c: (test1):
13295         * testsuite/caps/intersect2.c: (main):
13296         * testsuite/caps/intersection.c: (main):
13297         Fixes to make 'make check' work again after removing
13298         gst_caps_is_chained().
13299
13300 2004-01-15  Leif Johnson <leif@ambient.2y.net>
13301
13302         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
13303         and additions to the MIDI document.
13304
13305 2004-01-15  David Schleef  <ds@schleef.org>
13306
13307         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
13308         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
13309         of GST_RPAD_, since we don't know if it's a real or ghost pad.
13310
13311 2004-01-15  David Schleef  <ds@schleef.org>
13312
13313         * gst/gstqueue.c:
13314         * gst/gstqueue.h:
13315         Fix the spelling of "treshold" and make min_threshold actually
13316         affect the queue.
13317
13318 2004-01-15  David Schleef  <ds@schleef.org>
13319
13320         * gst/gstcaps.c:
13321         Add lots of documentation.
13322         * gst/gstcaps.h:
13323         Deprecate a few functions.
13324         * gst/gstpad.c:
13325         Removed use of deprecated functions.
13326
13327 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13328
13329         * gst/gstpad.c: (gst_pad_is_linked):
13330         * gst/gstpad.h:
13331           implement gst_pad_is_linked
13332         * gst/gstelement.h:
13333           reserve space for initiate_state_change
13334
13335 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13336
13337         * gst/autoplug/gstspideridentity.c:
13338         (gst_spider_identity_sink_loop_type_finding):
13339           break infinite loop by just returning instead of looping
13340         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
13341           set event time difference correctly. Set it to 1 second instead
13342           of 100ms to be more tolerant
13343         * gst/gstelement.c: (gst_element_set_time):
13344           add debugging output
13345
13346 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13347
13348         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
13349           query if buffers are inside the pool, ignore events
13350
13351 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13352
13353         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
13354         (gst_clock_set_speed), (gst_clock_set_active),
13355         (gst_clock_is_active), (gst_clock_reset),
13356         (gst_clock_handle_discont):
13357         * gst/gstclock.h:
13358           deprecate old interface and disable functions that aren't in use
13359           anymore.
13360         * gst/gstelement.h:
13361         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
13362         (gst_element_set_time), (gst_element_adjust_time):
13363           add concept of "element time" and functions to get/set this time.
13364         * gst/gstelement.c: (gst_element_change_state):
13365           update element time correctly.
13366         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13367           This is a debug message, not a g_critical.
13368         * gst/gstpad.c: (gst_pad_event_default):
13369           handle discontinuous events right with element time.
13370         * gst/gstscheduler.c: (gst_scheduler_state_transition):
13371           update to clocking fixes.
13372           set clocks on elements in READY=>PAUSED. The old behaviour caused
13373           a wrong element time on the first element that started playing.
13374         * gst/schedulers/gstbasicscheduler.c:
13375         (gst_basic_scheduler_class_init):
13376         * gst/schedulers/gstoptimalscheduler.c:
13377         (gst_opt_scheduler_class_init):
13378           remove code that just implements the default behaviour.
13379         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
13380           update to use new clocking functions
13381         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
13382         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
13383           update to test new element time.
13384         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
13385           use _get_allowed_caps instead of _get_caps. This catches filtered
13386           caps correctly.
13387         * testsuite/debug/commandline.c:
13388           update for new GST_DEBUG syntax.
13389         * testsuite/threads/Makefile.am:
13390           disable a test that only works sometimes.
13391
13392 2004-01-13  Julien MOUTTE <julien@moutte.net>
13393
13394         * po/LINGUAS: Adding fr.
13395         * po/fr.po: Adding french translation.
13396
13397 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13398
13399         * gst/parse/grammar.y:
13400         * po/POTFILES.in:
13401         * po/nl.po:
13402         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
13403           translate parsing error messages
13404
13405 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13406
13407         * po/POTFILES.in: adding gst-launch
13408         * po/nl.po: updated translation, all 99 strings translated
13409         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
13410         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
13411           fix strings for translation
13412
13413 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13414
13415         * gst/gst.c:
13416           - capitalize beginnings of popt options
13417           - fix strings for translation
13418           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
13419
13420 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13421
13422         * po/README: add some notes on how to update translations
13423
13424 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13425
13426         * ABOUT-NLS: removed, is autogenerated from autopoint
13427         * autogen.sh: add autopoint stuff
13428         * configure.ac: fix up gettext stuff
13429         * gst/Makefile.am: add i18n headers to noinst_HEADERS
13430         * gst/elements/gsttypefindelement.c: add header include
13431         * gst/gettext.h: add header, copy from system-installed header
13432         * gst/gst-i18n-app.h: to be included by each app having translations
13433         * gst/gst-i18n-lib.h: to be included by each lib having translations
13434         * gst/gst.c: (init_pre): fix up gettext calls
13435         * gst/gst_private.h: remove i18n stuff, moving to separate headers
13436         * po/LINGUAS: the new way to specify translations present
13437         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
13438         * po/Makevars: the variables filled in for GStreamer
13439         * po/POTFILES.in: added new files with translations
13440         * po/de.po: has new strings
13441         * po/nl.po: readded, has new strings
13442
13443 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13444
13445         * gst/gsttag.c: fix some strings marked for translation
13446
13447 2004-01-13  Iain <iain@prettypeople.org>
13448
13449         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
13450         group when we add an element to it, cos we unref it when we remove one
13451
13452 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
13453
13454         * testsuite/debug/commandline.c: (debug_not_reached):
13455         * testsuite/debug/output.c: (check_message):
13456           fix testsuite
13457
13458 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13459
13460         * examples/cutter/.cvsignore:
13461         * examples/helloworld/.cvsignore:
13462         * examples/launch/.cvsignore:
13463         * examples/manual/.cvsignore:
13464         * examples/mixer/.cvsignore:
13465         * examples/pingpong/.cvsignore:
13466         * examples/plugins/.cvsignore:
13467         * examples/queue/.cvsignore:
13468         * examples/queue2/.cvsignore:
13469         * examples/queue3/.cvsignore:
13470         * examples/queue4/.cvsignore:
13471         * examples/retag/.cvsignore:
13472         * examples/thread/.cvsignore:
13473         * examples/typefind/.cvsignore:
13474         * examples/xml/.cvsignore:
13475         * gst/.cvsignore:
13476         * gst/autoplug/.cvsignore:
13477         * gst/elements/.cvsignore:
13478         * gst/indexers/.cvsignore:
13479         * gst/parse/.cvsignore:
13480         * gst/registries/.cvsignore:
13481         * gst/schedulers/.cvsignore:
13482         * libs/gst/bytestream/.cvsignore:
13483         * libs/gst/control/.cvsignore:
13484         * libs/gst/getbits/.cvsignore:
13485         * tests/.cvsignore:
13486         * tests/bufspeed/.cvsignore:
13487         * tests/instantiate/.cvsignore:
13488         * tests/memchunk/.cvsignore:
13489         * tests/muxing/.cvsignore:
13490         * tests/sched/.cvsignore:
13491         * tests/seeking/.cvsignore:
13492         * tests/threadstate/.cvsignore:
13493         * testsuite/.cvsignore:
13494         * testsuite/caps/.cvsignore:
13495         * testsuite/cleanup/.cvsignore:
13496         * testsuite/dynparams/.cvsignore:
13497         * testsuite/plugin/.cvsignore:
13498         * tools/.cvsignore:
13499           update - this is huge, because it includes *.bb, *.bbg and *.da files
13500           which are generated for gcov.
13501
13502 2004-01-11  David Schleef  <ds@schleef.org>
13503
13504         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
13505         a function to parse integers in ways that strto[u]l() does not.
13506
13507 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13508
13509         * tools/gst-inspect.c: (print_caps):
13510           improve output of caps a bit
13511
13512 2004-01-11  David Schleef  <ds@schleef.org>
13513
13514         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
13515         inherit correct flags (READONLY and DONTKEEP).
13516
13517 2004-01-11  David Schleef  <ds@schleef.org>
13518
13519         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
13520         (gst_filesrc_map_region):
13521         * gst/gstbuffer.c: (_gst_buffer_initialize),
13522         (_gst_buffer_sub_free), (gst_buffer_default_copy),
13523         (gst_buffer_new), (gst_buffer_create_sub),
13524         (gst_buffer_is_span_fast), (gst_buffer_span):
13525         * gst/gstbuffer.h:
13526         Change GstBuffer private structure element names. (all files)
13527         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
13528         (gst_queue_link):
13529         * gst/gstqueue.h:
13530         Implement getcaps/pad_link functions that handle the case where
13531         there are data in the queue.
13532
13533 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13534
13535         * gst/elements/gstbufferstore.c:
13536           initialize debugging structure correctly
13537         * gst/elements/gsttee.c: (gst_tee_set_property):
13538           g_object_notify when property was changed
13539         * gst/elements/gsttypefindelement.c:
13540         (gst_type_find_element_change_state):
13541           clear caps correctly
13542
13543 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13544
13545         * gst/gstqueue.c: (gst_queue_init):
13546           Use better defaults for when a queue should block. This
13547           gets rid of jerky playback for quite a few files.
13548           It takes more memory.
13549
13550 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
13551
13552         (gst_xml_registry_parse_padtemplate):
13553           make critical message slightly more useful
13554
13555 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13556
13557         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
13558         (gst_debug_message_get), (gst_debug_log_default):
13559         * gst/gstinfo.h:
13560           Change gst_debug_log(_valist) to take a const format string.
13561           Change prototype of log function and functions using those to 
13562           take a GstDebugMessage instead of a string that requires using
13563           gst_debug_message_get.
13564
13565 2004-01-08  David Schleef  <ds@schleef.org>
13566
13567         * Makefile.am:
13568         * configure.ac:
13569         Add option --enable-gcov to build GStreamer with -fprofile-arcs
13570         and -ftest-coverage, which allows gcov to show information about
13571         testsuite coverage.
13572
13573 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13574
13575         * gst/gstutils.h:
13576           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
13577           GST_PARENT_CALL_WITH_DEFAULT
13578         * gst/elements/gstaggregator.c: 
13579         * gst/elements/gstbufferstore.c: 
13580         * gst/elements/gstfakesink.c: 
13581         * gst/elements/gstfakesrc.c: 
13582         * gst/elements/gstfdsink.c: 
13583         * gst/elements/gstfdsrc.c: 
13584         * gst/elements/gstfilesink.c: 
13585         * gst/elements/gstfilesrc.c: 
13586         * gst/elements/gstidentity.c: 
13587         * gst/elements/gstmd5sink.c: 
13588         * gst/elements/gstmultidisksrc.c:
13589         * gst/elements/gstpipefilter.c: 
13590         * gst/elements/gstshaper.c:
13591         * gst/elements/gststatistics.c:
13592         * gst/elements/gsttee.c:
13593         * gst/elements/gsttypefindelement.c:
13594           use them.
13595
13596 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
13597
13598         * docs/gst/gstreamer-docs.sgml: remove props
13599         * docs/gst/gstreamer-sections.txt: remove props
13600         * docs/gst/tmpl/gst.sgml:
13601         * docs/gst/tmpl/gstbin.sgml:
13602         * docs/gst/tmpl/gstbuffer.sgml:
13603         * docs/gst/tmpl/gstcaps.sgml:
13604         * docs/gst/tmpl/gstclock.sgml:
13605         * docs/gst/tmpl/gstelement.sgml:
13606         * docs/gst/tmpl/gstindex.sgml:
13607         * docs/gst/tmpl/gstobject.sgml:
13608         * docs/gst/tmpl/gstpad.sgml:
13609         * docs/gst/tmpl/gstpadtemplate.sgml:
13610         * docs/gst/tmpl/gstreamer-unused.sgml:
13611         * docs/gst/tmpl/gstthread.sgml:
13612         * docs/gst/tmpl/gstxml.sgml:
13613           sync with code reorganization
13614
13615 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
13616
13617         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13618         Make the 'Could not find compatible pad' message more informative.
13619
13620 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13621                                                                                 
13622         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
13623           Fix for if we pass NULL as property to location.
13624         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
13625         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
13626           Fix for instantiate-test (see below).
13627         * gst/gststructure.c: (_gst_structure_parse_value):
13628           Fix compile error on gcc-2.96.
13629         * configure.ac:
13630         * tests/Makefile.am:
13631         * tests/instantiate/Makefile.am:
13632         * tests/instantiate/create.c: (create_all_elements), (main):
13633           Add a test that instantiates all elements. This makes it easy to
13634           track dead code for old API/design (like setting event functions
13635           on sink pads and so on).
13636
13637 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
13638
13639         * gst/gstcaps.c: (gst_caps_append_structure):
13640           Move the poisoning to allow a NULL structure
13641         * gst/gstevent.c: (_gst_event_free):
13642           When freeing a navigation event, free the structure
13643           also
13644
13645 2004-01-04  David Schleef  <ds@schleef.org>
13646
13647         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13648         Remove usage of gst_pad_proxy_fixate.
13649         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
13650         (gst_caps_split_one), (gst_caps_replace):
13651         Add poisoning code.
13652         * gst/gstmarshal.list:
13653         Add pointer__pointer for fixate signal
13654         * gst/gstpad.c: (gst_real_pad_class_init),
13655         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
13656         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
13657         (gst_pad_set_explicit_caps), (gst_pad_template_new):
13658         Add poisoning code. Add fixate signal on RealPad. Change
13659         set_explicit_caps() to take const GstCaps, like try_set_caps().
13660         * gst/gstpad.h:
13661         * testsuite/caps/Makefile.am:
13662         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
13663
13664 2004-01-03  David Schleef  <ds@schleef.org>
13665
13666         * gst/elements/gsttypefindelement.c:
13667         (gst_type_find_element_have_type), (gst_type_find_element_init):
13668         Use gst_pad_use_explicit_caps for src pad.
13669         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
13670         before using it.
13671
13672 2004-01-03  David Schleef  <ds@schleef.org>
13673
13674         * gst/gstelement.c: (gst_element_link_pads_filtered),
13675         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
13676         that linking was successful.
13677         * gst/gstpad.c: (gst_pad_link_free),
13678         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
13679         (gst_pad_link_try), (gst_pad_link_unnegotiate),
13680         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
13681         GstPadLinkReturn correctly between functions, and don't fail
13682         when DELAYED is used (DELAYED is very important).  Better
13683         cleanup on unlinking and unnegotiation.  Should fix some spider
13684         bugs.
13685
13686 2004-01-02  David Schleef  <ds@schleef.org>
13687
13688         * gst/gstelement.c: (gst_element_class_init),
13689         (gst_element_base_class_init): ->padtemplates should be cleared
13690         in base_init, since we need to have a fresh list for every
13691         class.  (Alternately, we chould copy the list and share the
13692         actual pad templates (not the list), but that would require
13693         changing every plugin to move pad template registration from
13694         base_init to class_init.)
13695
13696 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13697
13698         * gst/gstelement.c: (gst_element_class_add_pad_template):
13699           Refuse registering a pad template if another pad template
13700           with the same name already exists (#114715).
13701
13702 2004-01-02  David Schleef  <ds@schleef.org>
13703
13704         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
13705         (gst_caps_is_equal_fixed): Add new function.
13706         * gst/gstcaps.h: ditto.
13707         * gst/gstpad.c: (gst_real_pad_class_init),
13708         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
13709         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
13710         check new caps against existing caps -- if they're the same, return
13711         OK without renegotiating.  caps-nego-failed signal fixed so that
13712         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
13713         to save an extra caps copy.  Don't complete negotiation if a pad
13714         link function returns DELAYED.
13715
13716 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13717
13718         * gst/gstpad.c: (gst_pad_try_relink_filtered):
13719           Fix wrong g_return_if_fail
13720
13721 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
13722
13723         * gst/gstbin.c: (gst_bin_class_init):
13724         Change the marshalling of element_added/element_removed
13725         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
13726         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
13727
13728 2004-01-01  David Schleef  <ds@schleef.org>
13729
13730         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13731         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
13732         (gst_pad_use_explicit_caps):
13733         * gst/gstpad.h:
13734         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
13735         to use an internal getcaps and link fuction so that negotiation
13736         always results in the explicitly set caps.
13737         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
13738         are particularly useful for decoders.
13739
13740 2003-12-31  David Schleef  <ds@schleef.org>
13741
13742         * gst/elements/gstidentity.c: (gst_identity_class_init),
13743         (gst_identity_init), (gst_identity_chain),
13744         (gst_identity_set_property), (gst_identity_get_property):
13745         * gst/elements/gstidentity.h:
13746         * gst/gstqueue.c: (gst_queue_init):
13747           Negotiation fixes.
13748
13749 2003-12-31  David Schleef  <ds@schleef.org>
13750
13751         * gst/gstcaps.c: (gst_caps_intersect),
13752         (_gst_caps_normalize_foreach), (gst_caps_normalize):
13753           Implement gst_caps_normalize().
13754         * testsuite/caps/normalisation.c: (main):
13755           Add an additional test
13756
13757 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13758
13759         * gst/gstqueue.c: (gst_queue_init):
13760           use gst_pad_proxy_getcaps()
13761
13762 2003-12-31  David Schleef  <ds@schleef.org>
13763
13764         * gst/elements/gstshaper.c: (gst_shaper_link):
13765         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13766         * gst/gstqueue.c: (gst_queue_link):
13767           Negotiation fixes.
13768
13769 2003-12-31  David Schleef  <ds@schleef.org>
13770
13771         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
13772         * gst/gstpad.h: Add functions that are useful as default pad
13773         link and fixate functions for elements.
13774
13775 2003-12-30  David Schleef  <ds@schleef.org>
13776
13777         * gst/gstpad.c: (gst_pad_link_try):
13778           Fix segfault when attempting to return to old caps
13779
13780 2003-12-29  David Schleef  <ds@schleef.org>
13781
13782         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
13783         (gst_caps_structure_simplify), (gst_caps_simplify):
13784         * gst/gstcaps.h:
13785           Add simplify function
13786         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
13787         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
13788         * gst/gstpad.h:
13789           Copy over srcnotify, sinknotify when calling old pad_link
13790           functions.  Add new is_negotiated() function.
13791         * gst/gststructure.c: (gst_structure_copy):
13792           Fix an incredibly stupid bug that should have been noticed
13793           weeks ago.  _copy() returned the argument, not the new copy.
13794
13795 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13796
13797         * gst/gstcaps.c: (gst_caps_append):
13798           add sanity checks
13799         * gst/gstcaps.h: (gst_caps_debug):
13800           remove, it doesn't exist anymore.
13801         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
13802         (gst_element_threadsafe_properties_post_run):
13803           make debugging messages not clutter up THREAD debug category
13804         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
13805         (gst_element_change_state):
13806           update to new caps API
13807         * gst/gstinterface.c: (gst_implements_interface_cast):
13808           don't put vital code in g_return_if_fail
13809         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
13810         (gst_pad_link_filtered):
13811           add pst_pad_try_link and use it.
13812         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
13813           implement correctly, deprecate first one.
13814         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
13815           add and implement.
13816         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
13817           implement.
13818         (gst_pad_get_negotiated_caps):
13819           add and implement. Make GST_PAD_CAPS call this function.
13820         (gst_pad_get_caps):
13821           remove unneeded check..
13822         (gst_pad_recover_caps_error):
13823           disable, always return FALSE.
13824         (gst_real_pad_dispose):
13825           don't free caps and appfilter anymore, they're unused.
13826         * gst/gstpad.h:
13827           Reflect changes mentioned above.
13828         * gst/gstsystemclock.c: (gst_system_clock_wait):
13829           Make 'clock is way behind' a debugging message.
13830         * gst/gstthread.c: (gst_thread_change_state):
13831           Fix debugging message
13832
13833 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
13834
13835         * gst/gstinfo.h:
13836           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
13837         * docs/gst/tmpl/gstreamer-unused.sgml:
13838           removed all traces of cvs conflicts
13839
13840 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13841
13842         * configure.ac:
13843         * gst/schedulers/cothreads_compat.h:
13844         * libs/Makefile.am:
13845           remove last instances of wingo cothread usage
13846
13847 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13848
13849         * gst/gstplugin.c:
13850         * gst/gstversion.h.in:
13851         * gst/parse/grammar.y:
13852           change comment block from /** to /* when not gtk-doc comments
13853
13854 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13855
13856         * gst/gst.c: whitespace and doc style fixes
13857
13858 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13859
13860         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
13861
13862 2003-12-24  Colin Walters  <walters@verbum.org>
13863
13864         * gst/elements/gsttypefindelement.c:
13865           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
13866           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
13867           Don't double-free caps.
13868
13869 2003-12-23  David Schleef  <ds@schleef.org>
13870
13871         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
13872           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
13873           Many little fixes and additions of debug statements to
13874           get rhythmbox working.
13875
13876 2003-12-23  Colin Walters  <walters@verbum.org>
13877
13878         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
13879         Use GST_PAD_LINK_SUCCESSFUL.
13880
13881 2003-12-23  David Schleef  <ds@schleef.org>
13882
13883         * gst/elements/gstaggregator.c:
13884         * gst/elements/gsttee.c:
13885           Use gst_pad_proxy_getcaps().
13886         * gst/gstpad.c:
13887         * gst/gstpad.h:
13888           Add gst_pad_proxy_getcaps(), which filter elements can use
13889           as a generic getcaps implementation.
13890           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
13891           was advertised.
13892
13893 2003-12-23  David Schleef  <ds@schleef.org>
13894
13895         * gst/gstpad.c:
13896           Rearrange/rewrite much of the pad negotiation code, since it
13897           resembled pasta.  This actually changes the way some
13898           negotiation works, since the previous code was inconsistent
13899           depending on how it was invoked.  Add (internal) structure
13900           GstPadLink, which is used to hold some information (more in
13901           the future) about the link between two pads.  Fixes a number
13902           of bugs, including random lossage of filter caps when the
13903           initial negotiation is delayed.  A few functions are still
13904           unimplemented.
13905         * gst/gstpad.h:
13906           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
13907           these when testing GstPadLinkReturn values instead of comparing
13908           directly.
13909
13910 2003-12-23  David Schleef  <ds@schleef.org>
13911
13912         * gst/gstvalue.c: 
13913         * gst/gstvalue.h:
13914           Rearrange lots of code.  Change registration of compare function
13915           into registration of compare/serialize/deserialize functions.
13916           Doesn't include implementation of gst_value_[de]serialize(),
13917           but that should be easy.
13918
13919 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13920
13921         * docs/gst/gstreamer-sections.txt:
13922         * docs/gst/tmpl/gstprops.sgml: removed
13923         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
13924           David removed props and caps code, so let's remove their docs as well.
13925           Removed all no longer existing symbols from gstreamer-sections.txt
13926           
13927 2003-12-22  Colin Walters  <walters@verbum.org>
13928
13929         * gst/gsttaginterface.c, gst/gsttaginterface.h,
13930           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
13931           of tags directly.
13932
13933 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13934
13935         * gst/elements/gstelements.c:
13936           Set ranks of elements to NONE, so the autoplugger doesn't use them.
13937         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
13938           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
13939           gst_caps (peer).
13940
13941 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13942
13943         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
13944         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
13945         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
13946         (gst_spider_identity_sink_loop_type_finding):
13947         * gst/autoplug/gstspideridentity.h:
13948           Fix autoplugging in spider element, so it works with new caps.
13949           This was mainly caused by identifying empty caps incorrectly.
13950
13951 2003-12-22  David Schleef  <ds@schleef.org>
13952
13953         * gststructure.c, gstvalue.c, gstvalue.h: Add
13954           gst_value_init_and_copy() and use it, to avoid silly mistakes in
13955           using g_value_copy()
13956
13957 2003-12-21  David Schleef  <ds@schleef.org>
13958
13959         * many, many files: Merge CAPS branch.  This includes:
13960           - implemention of GstValue and several GstValue types
13961           - implemention of GstStructure
13962           - entire rewrite of GstCaps
13963           - removal of GstProps
13964           - many changes to GstPad to compensate for new caps paradigm
13965           - removal of GstBufferpool
13966         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
13967         gstvalue.h, gst/gstcaps[2]*.[ch]:
13968           - rename gstcaps2.[ch] to gstcaps.[ch]
13969
13970 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13971
13972         * gst/gstqueue.c: (gst_queue_handle_pending_events),
13973         (gst_queue_chain), (gst_queue_handle_src_event):
13974           implement timeout for sending events. Workaround for if the
13975           pipeline on this queue is not passing any data.
13976
13977 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
13978                                                                                 
13979         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
13980         * moved CVS to freedesktop.org