gst/elements/gstcapsfilter.c: Reimplement using basetransform, fixes buffer_alloc...
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-08-04  Andy Wingo  <wingo@pobox.com>
2
3         * gst/elements/gstcapsfilter.c: Reimplement using basetransform,
4         fixes buffer_alloc proxying among other things.
5
6         * gst/base/gstbasetransform.c:
7         * gst/base/gstbasetransform.h:
8         Revert patch to gstbasetransform from 7-28 removing
9         delay_configure.
10
11         * gst/base/gstbasetransform.h (GstBaseTransformClass.get_size):
12         * gst/base/gstbasetransform.c (gst_base_transform_get_size):
13         Semantics changed, should return not the size of the output buffer
14         but the byte size of a buffer with a given caps.
15
16         * gst/base/gstbasetransform.c (gst_base_transform_getcaps): Better
17         debug object.
18         (gst_base_transform_configure_caps): Don't set out_size here: (in,
19         out) are not the pad caps until setcaps finishes.
20         (gst_base_transform_buffer_alloc): Proxy the buffer_alloc for the
21         not-in-place case as well. Deal with changing from in-place to
22         not-in-place within calling pad_alloc_buffer. Still a bit
23         concerned about the overhead here...
24
25 2005-08-03  Andy Wingo  <wingo@pobox.com>
26
27         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): Not
28         fixating is an error.
29
30 2005-08-04  Edward Hervey  <edward@fluendo.com>
31
32         * gst/base/gstadapter.h: 
33         Added gst_adapter_get_type() to the header
34
35 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
36
37         * check/Makefile.am:
38         * check/gst-libs/controller.c:
39         * libs/gst/controller/gst-controller.c:
40         (gst_controller_new_valist):
41           added check test suite for the controller
42         * gst/base/gstpushsrc.c:
43           fixed a doc typo
44
45 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
46
47         * docs/gst/Makefile.am:
48         * docs/gst/gstreamer-docs.sgml:
49         * docs/gst/gstreamer-sections.txt:
50         * docs/gst/gstreamer.types:
51         * docs/gst/tmpl/gstfakesrc.sgml:
52         * gst/base/README:
53         * gst/base/gstbasesink.c:
54         * gst/base/gstbasesink.h:
55         * gst/base/gstbasesrc.c:
56         * gst/base/gstbasesrc.h:
57         * gst/base/gstbasetransform.c:
58         * gst/base/gstpushsrc.c:
59         * gst/base/gstpushsrc.h:
60           add short/long description docs to base classes
61           add pushsrc to the docs
62           remove consolidated doc fragments
63
64 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
65
66         * configure.ac:
67         * docs/libs/Makefile.am:
68         * docs/libs/gstreamer-libs-docs.sgml:
69         * docs/libs/gstreamer-libs-sections.txt:
70         * docs/libs/gstreamer-libs.types:
71         * examples/Makefile.am:
72         * examples/controller/.cvsignore:
73         * examples/controller/Makefile.am:
74         * examples/controller/audio-example.c: (main):
75         * libs/gst/Makefile.am:
76         * libs/gst/controller/.cvsignore:
77         * libs/gst/controller/Makefile.am:
78         * libs/gst/controller/gst-controller.c:
79         (on_object_controlled_property_changed), (gst_timed_value_compare),
80         (gst_timed_value_find),
81         (gst_controlled_property_set_interpolation_mode),
82         (gst_controlled_property_new), (gst_controlled_property_free),
83         (gst_controller_find_controlled_property),
84         (gst_controller_new_valist), (gst_controller_new),
85         (gst_controller_remove_properties_valist),
86         (gst_controller_remove_properties), (gst_controller_set),
87         (gst_controller_set_from_list), (gst_controller_unset),
88         (gst_controller_get), (gst_controller_get_all),
89         (gst_controller_sink_values), (gst_controller_get_value_arrays),
90         (gst_controller_get_value_array),
91         (gst_controller_set_interpolation_mode),
92         (_gst_controller_finalize), (_gst_controller_init),
93         (_gst_controller_class_init), (gst_controller_get_type):
94         * libs/gst/controller/gst-controller.h:
95         * libs/gst/controller/gst-helper.c: (g_object_control_properties),
96         (g_object_uncontrol_properties), (g_object_get_controller),
97         (g_object_set_controller), (g_object_sink_values),
98         (g_object_get_value_arrays), (g_object_get_value_array):
99         * libs/gst/controller/gst-interpolation.c:
100         (gst_controlled_property_find_timed_value_node),
101         (interpolate_none_get), (interpolate_trigger_get),
102         (interpolate_trigger_get_value_array):
103         * libs/gst/controller/lib.c: (gst_controller_init):
104         * pkgconfig/Makefile.am:
105         * pkgconfig/gstreamer-control-uninstalled.pc.in:
106         * pkgconfig/gstreamer-control.pc.in:
107         * testsuite/Makefile.am:
108         * testsuite/controller/.cvsignore:
109         * testsuite/controller/Makefile.am:
110         * testsuite/controller/interpolator.c: (main):
111           added controller code
112           removed dparam pc files
113
114 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
115         * gst/base/gstcollectpads.c: (gst_collectpads_finalize),
116         (gst_collectpads_stop):
117           Broadcast the condition when shutting down, to make sure we wake all
118           threads up. Shut down pads on finalize, for safety.
119
120 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
121         * gst/base/gstbasetransform.c: (gst_base_transform_init),
122         (gst_base_transform_handle_buffer),
123         (gst_base_transform_change_state):
124           Handle PAUSED->READY->PAUSED transition after negotiation
125           occurred already.
126         * gst/gstmessage.c: (gst_message_init):
127           Extra piece of debug for new messages.
128
129 2005-08-01  Stefan Kost  <ensonic@users.sf.net>
130
131         * configure.ac:
132         * docs/gst/tmpl/gstbasesrc.sgml:
133         * docs/gst/tmpl/gstelement.sgml:
134         * docs/gst/tmpl/gstevent.sgml:
135         * docs/gst/tmpl/gstfakesrc.sgml:
136         * docs/gst/tmpl/gstformat.sgml:
137         * docs/gst/tmpl/gstghostpad.sgml:
138         * docs/gst/tmpl/gstpad.sgml:
139         * docs/gst/tmpl/gstquery.sgml:
140         * docs/gst/tmpl/gststructure.sgml:
141         * docs/gst/tmpl/gsttaglist.sgml:
142         * docs/gst/tmpl/gstvalue.sgml:
143         * docs/libs/gstreamer-libs-docs.sgml:
144         * docs/libs/gstreamer-libs-sections.txt:
145         * docs/libs/gstreamer-libs.types:
146         * libs/gst/Makefile.am:
147         * libs/gst/control/.cvsignore:
148         * libs/gst/control/Makefile.am:
149         * libs/gst/control/control.c:
150         * libs/gst/control/control.h:
151         * libs/gst/control/dparam.c:
152         * libs/gst/control/dparam.h:
153         * libs/gst/control/dparam_smooth.c:
154         * libs/gst/control/dparam_smooth.h:
155         * libs/gst/control/dparamcommon.h:
156         * libs/gst/control/dparammanager.c:
157         * libs/gst/control/dparammanager.h:
158         * libs/gst/control/dplinearinterp.c:
159         * libs/gst/control/dplinearinterp.h:
160         * libs/gst/control/unitconvert.c:
161         * libs/gst/control/unitconvert.h:
162         * testsuite/Makefile.am:
163         * testsuite/dynparams/.cvsignore:
164         * testsuite/dynparams/Makefile.am:
165         * testsuite/dynparams/dparamstest.c:
166         * tools/Makefile.am:
167         * tools/gst-inspect.c: (print_element_info), (main):
168         * tools/gst-xmlinspect.c: (print_element_info), (main):
169           deactivate and remove dparams (libgstcontrol)
170
171 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
172
173         * gst/elements/gsttypefindelement.c:
174         (gst_type_find_element_have_type), (gst_type_find_element_init),
175         (stop_typefinding), (gst_type_find_element_handle_event),
176         (gst_type_find_element_chain), (gst_type_find_element_getrange):
177         * gst/elements/gsttypefindelement.h:
178           Set caps on all outgoing buffers, not just the first one.
179
180 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
181
182         * gst/elements/gsttypefindelement.c:
183         (gst_type_find_element_have_type),
184         (gst_type_find_element_check_set_buffer_caps),
185         (gst_type_find_element_init), (stop_typefinding),
186         (gst_type_find_element_handle_event),
187         (gst_type_find_element_chain), (gst_type_find_element_getrange):
188         * gst/elements/gsttypefindelement.h:
189           Set caps on first outgoing buffer when we've found the type.
190
191 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
192
193         * docs/gst/gstreamer-docs.sgml:
194         * docs/gst/gstreamer-sections.txt:
195         * docs/gst/tmpl/gstscheduler.sgml:
196         * docs/gst/tmpl/gstschedulerfactory.sgml:
197           Remove some old cruft from docs.
198
199 2005-07-31  Tim-Philipp Müller  <tim at centricular dot net>
200
201         * gst/gstpad.h:
202           Fix inline docs for GstPadLinkReturn.
203           
204         * gst/gststructure.c: (gst_structure_has_name):
205         * gst/gststructure.h:
206         * docs/gst/gstreamer-sections.txt:
207           New API: gst_structure_has_name().
208
209 2005-07-30  Tim-Philipp Müller  <tim at centricular dot net>
210
211         * configure.ac:
212           Use AC_SYS_LARGEFILE, which will set _FILE_OFFSET_BITS=64
213           and _LARGEFILE_SOURCE in config.h as required. Do not 
214           export those flags in our .pc files any longer (#142209).
215
216           Remove unused GST_DISABLE_OMEGA_COTHREADS stuff.
217
218         * gst/elements/gstfilesink.c: (gst_file_sink_class_init),
219         (gst_file_sink_do_seek), (gst_file_sink_event),
220         (gst_file_sink_get_current_offset), (gst_file_sink_render):
221           Redo seek/tell calls with large file support in mind; add some
222           debugging messages; add log message that tells us when large
223           file support is unavailable or not enabled for some reason.
224
225         * gst/elements/gstfilesrc.c: (gst_file_src_class_init):
226           Add log message that tells us when large file support 
227           is unavailable or not enabled for some reason.
228
229 2005-07-29  Wim Taymans  <wim@fluendo.com>
230
231         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
232         Added test for removing an element with ghostpad from a bin.
233         Fixed test as current implementation does the right thing.
234
235         * gst/gstghostpad.c: (gst_proxy_pad_class_init),
236         (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
237         (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
238         (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
239         (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
240         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
241         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
242         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
243         (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
244         (gst_proxy_pad_get_target), (gst_proxy_pad_init),
245         (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
246         (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
247         (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
248         (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
249         (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
250         (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
251         * gst/gstghostpad.h:
252         Clean up ghostpads, remove properties for internal stuff.
253         Make threadsafe.
254         Fix refcounting.
255         Prepare for switching targets, not all use cases work yet.
256
257 2005-07-29  Wim Taymans  <wim@fluendo.com>
258
259         * docs/design/part-gstghostpad.txt:
260         Small update.
261
262         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
263         (gst_bin_remove_func):
264         Unlinking pads while holding the bin LOCK is not a good
265         idea.
266
267         * gst/gstpad.c: (gst_pad_class_init),
268         (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
269         (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
270         No prob setting template after creating the pad.
271
272 2005-07-29  Jan Schmidt  <thaytan@mad.scientist.com>
273
274         * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
275         (gst_bus_peek), (gst_bus_source_dispatch),
276         (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
277         (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
278           gst_bus_poll may be called from other threads. Handle
279           this nicely by not making poll_data disappear off the
280           stack once gst_bus_poll returns.
281           gst_bus_peek now increments the refcount on the returned
282           message.
283
284 2005-07-29  Wim Taymans  <wim@fluendo.com>
285
286         * docs/design/part-gstghostpad.txt:
287         Overview of current GhostPad datastructures and use
288         cases for changing the target.
289
290 2005-07-28  Wim Taymans  <wim@fluendo.com>
291
292         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
293         Added checks for hierarchy consistency whan adding linked
294         elements to bins.
295
296         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
297         Added check to test element scheduling without bin/pipeline.
298
299         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
300         First add elements to bin, then link.
301         
302         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
303         (gst_bin_remove_func):
304         Unlink pads from elements added/removed from bin to maintain
305         hierarchy consistency.
306
307 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
308
309         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
310         (gst_base_transform_handle_buffer):
311         * gst/base/gstbasetransform.h:
312           Remove broken delay_configure (fixes renegotiation of software
313           scaling pipelines); remove some leftover printf()s.
314
315 2005-07-28  Wim Taymans  <wim@fluendo.com>
316
317         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
318         Added some more tests for wrong hierarchy
319
320         * docs/design/part-overview.txt:
321         Some updates.
322
323         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
324         Cleanups.
325
326         * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
327         (gst_element_dispose):
328         Some more cleanups.
329
330         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
331         (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
332         (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
333         (gst_pad_set_caps), (gst_pad_send_event):
334         Check for correct hierarchy when linking pads. Moving to
335         strict requirement for ghostpads when linking elements in
336         different bins.
337
338         * gst/gstpad.h:
339         Clean ups. Added WRONG_HIERARCHY return value.
340
341 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
342
343         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
344           Better debug if no transform is possible.
345
346 2005-07-27  Wim Taymans  <wim@fluendo.com>
347
348         * docs/random/wtay/network-transp:
349         Some old doc I had.
350
351 2005-07-27  Wim Taymans  <wim@fluendo.com>
352
353         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
354         (gst_dp_event_from_packet):
355         Fix serialization of seek events.
356
357 2005-07-27  Wim Taymans  <wim@fluendo.com>
358
359         * check/gst-libs/gdp.c: (GST_START_TEST):
360         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
361         Fix compilation and fix event serialization.
362
363 2005-07-27  Wim Taymans  <wim@fluendo.com>
364
365         * CHANGES-0.9:
366         * docs/design/part-TODO.txt:
367         * docs/design/part-events.txt:
368         Some docs updates
369
370         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
371         (gst_base_sink_event), (gst_base_sink_do_sync),
372         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
373         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
374         (gst_base_src_do_seek), (gst_base_src_event_handler),
375         (gst_base_src_loop):
376         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
377         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
378         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
379         (gst_base_transform_event), (gst_base_transform_handle_buffer),
380         (gst_base_transform_set_passthrough),
381         (gst_base_transform_is_passthrough):
382         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
383         * gst/elements/gstfilesink.c: (gst_file_sink_event):
384         Event updates.
385
386         * gst/gstbuffer.h:
387         Use faster casts.
388
389         * gst/gstelement.c: (gst_element_seek):
390         * gst/gstelement.h:
391         Update gst_element_seek.
392
393         * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
394         (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
395         (gst_event_new_flush_start), (gst_event_new_flush_stop),
396         (gst_event_new_eos), (gst_event_new_newsegment),
397         (gst_event_parse_newsegment), (gst_event_new_tag),
398         (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
399         (gst_event_parse_qos), (gst_event_new_seek),
400         (gst_event_parse_seek), (gst_event_new_navigation):
401         * gst/gstevent.h:
402         Make GstEvent use GstStructure. Add parsing code, make sure the
403         API is sufficiently generic.
404         Mark possible directions of events and serialization.
405
406         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
407         (_gst_message_copy), (gst_message_new_segment_start),
408         (gst_message_new_segment_done), (gst_message_new_custom),
409         (gst_message_parse_segment_start),
410         (gst_message_parse_segment_done):
411         Small cleanups.
412
413         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
414         (gst_pad_set_caps), (gst_pad_send_event):
415         Update for new events. 
416         Catch events sent in wrong directions.
417
418         * gst/gstqueue.c: (gst_queue_link_src),
419         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
420         (gst_queue_handle_src_query):
421         Event updates.
422
423         * gst/gsttag.c:
424         * gst/gsttag.h:
425         Remove event code from this file.
426
427         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
428         (gst_dp_event_from_packet):
429         Event updates.
430
431 2005-07-27  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
432
433         * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
434         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
435         (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
436           Make debugging actually useful.
437
438 2005-07-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
439
440         * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
441         (gst_pad_fixate_caps):
442           Implement default fixation once again, so that gst_pad_fixate()
443           actually does anything at all. This probably needs to be some
444           sort of a last resort, and use profile-based fixation first, but
445           since that doesn't exist yet, this is the best we have. Fixes
446           visualization in Totem.
447
448 2005-07-22  Wim Taymans  <wim@fluendo.com>
449
450         * docs/design/part-events.txt:
451         Small update.
452
453         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
454         (gst_base_sink_do_sync), (gst_base_sink_activate_push),
455         (gst_base_sink_activate_pull):
456         Some more comments.
457
458         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
459         (gst_fake_src_create):
460         Fix handoff marshall.
461
462         * gst/elements/gstidentity.c: (gst_identity_class_init),
463         (gst_identity_transform_ip):
464         We're a real inplace element.
465
466         * gst/gstbus.c: (gst_bus_post):
467         Added some comments.
468
469         * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
470         * tests/muxing/case1.c: (main):
471         * tests/sched/dynamic-pipeline.c: (main):
472         * tests/sched/interrupt1.c: (main):
473         * tests/sched/interrupt2.c: (main):
474         * tests/sched/interrupt3.c: (main):
475         * tests/sched/runxml.c: (main):
476         * tests/sched/sched-stress.c: (main):
477         * tests/seeking/seeking1.c: (event_received), (main):
478         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
479         (main):
480         * tests/threadstate/threadstate3.c: (main):
481         * tests/threadstate/threadstate4.c: (main):
482         * tests/threadstate/threadstate5.c: (main):
483         Fix the tests.
484
485 2005-07-21  Wim Taymans  <wim@fluendo.com>
486
487         * docs/design/part-seeking.txt:
488         Some small additions.
489
490         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
491         (gst_base_sink_get_times), (gst_base_sink_do_sync),
492         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
493         * gst/base/gstbasesink.h:
494         discont values are gint64, handle the math correctly.
495
496         * gst/base/gstbasesrc.c: (gst_base_src_loop):
497         Make the basesrc report error if the source pad is not linked.
498
499         * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
500         (gst_queue_loop), (gst_queue_handle_src_query),
501         (gst_queue_src_activate_push):
502         Make queue collect data even if the srcpad is not linked.
503         Start pushing out data as soon as it is linked.
504
505         * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
506         * gst/gstutils.h:
507         Added gst_flow_get_name() to ease error reporting.
508
509 2005-07-20  Wim Taymans  <wim@fluendo.com>
510
511         * gst/gstmessage.c: (gst_message_new_segment_start),
512         (gst_message_new_segment_done), (gst_message_parse_segment_start),
513         (gst_message_parse_segment_done):
514         * gst/gstmessage.h:
515         Added a bunch of messages for advanced seeking.
516
517         * gst/parse/grammar.y:
518         * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
519         (gst_dpman_state_changed):
520         Fix some new-pad -> pad-added signals
521
522 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
523
524         * docs/manual/appendix-porting.xml:
525         * docs/pwg/appendix-porting.xml:
526           Document new-pad/state-change signal renames and the FixedList
527           type rename.
528
529 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
530
531         * docs/manual/advanced-autoplugging.xml:
532         * docs/manual/basics-helloworld.xml:
533         * docs/manual/basics-pads.xml:
534         * docs/random/ds/0.9-suggested-changes:
535         * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
536         * gst/gstelement.h:
537         * gst/gstevent.h:
538         * gst/gstformat.h:
539         * gst/gstquery.h:
540         * gst/gststructure.c: (gst_structure_value_get_generic_type),
541         (gst_structure_parse_array), (gst_structure_parse_value):
542         * gst/gstvalue.c: (gst_type_is_fixed),
543         (gst_value_list_prepend_value), (gst_value_list_append_value),
544         (gst_value_list_get_size), (gst_value_list_get_value),
545         (gst_value_transform_array_string), (gst_value_serialize_array),
546         (gst_value_deserialize_array), (gst_value_intersect_array),
547         (gst_value_is_fixed), (_gst_value_initialize):
548         * gst/gstvalue.h:
549           GstElement::new-pad -> pad-added, GstElement::state-change ->
550           state-changed, GstValueFixedList -> GstValueArray, add format and
551           flags as their own arguments in gst_element_seek() (should improve
552           "bindeability"), remove function generators since they don't work
553           under a whole bunch of compilers (they were deprecated already
554           anyway).
555
556 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
557
558         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
559         (_gst_debug_register_funcptr):
560         * gst/gstinfo.h:
561           Fix illegal cast on some platforms (#309253).
562
563 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
564
565         * gst/gstmessage.c: (gst_message_new_custom):
566         * gst/gstmessage.h:
567           Add _new_custom, make _new_application a macro to _new_custom.
568
569 2005-07-20  Wim Taymans  <wim@fluendo.com>
570
571         * gst/base/gstbasesrc.c: (gst_base_src_init),
572         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
573         * gst/base/gstbasesrc.h:
574         Add a gboolean to decide when to push out a discont.
575
576         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
577         (gst_queue_loop), (gst_queue_handle_src_query),
578         (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
579         (gst_queue_set_property), (gst_queue_get_property):
580         Some cleanups.
581
582         * tests/threadstate/threadstate1.c: (main):
583         Make a thread test compile and run... very silly..
584
585
586 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
587
588         * docs/manual/appendix-porting.xml:
589           Mention removal of libgstgconf-0.9.la and existence of gconf
590           elements.
591
592 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
593
594         * docs/pwg/advanced-clock.xml:
595         * docs/pwg/appendix-porting.xml:
596         * docs/pwg/intro-preface.xml:
597         * docs/pwg/other-base.xml:
598         * docs/pwg/other-manager.xml:
599         * docs/pwg/other-nton.xml:
600         * docs/pwg/other-ntoone.xml:
601         * docs/pwg/other-oneton.xml:
602         * docs/pwg/pwg.xml:
603           Document base classes, update sections of n-to-1 and 1-to-n (muxer,
604           demuxer), remove n-to-n (was never written), fix some code examples
605           and links and update the porting section to include all this.
606
607 2005-07-19  Wim Taymans  <wim@fluendo.com>
608
609         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
610         (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
611         (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
612         (gst_queue_src_activate_push), (gst_queue_change_state),
613         (gst_queue_get_property):
614         * gst/gstqueue.h:
615         Propagate GstFlowReturn more intelligently upstream and output
616         an ERROR/EOS when streaming stopped due to fatal error.
617
618 2005-07-19  Wim Taymans  <wim@fluendo.com>
619
620         * tools/gst-launch.c: (check_intr), (event_loop), (main):
621         Don't block forever for the state change to complete, the
622         pipeline already did with a sensible timeout.
623
624 2005-07-19  Wim Taymans  <wim@fluendo.com>
625
626         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
627         Make sure we never call the create function is we
628         got deactivated.
629
630 2005-07-19  Andy Wingo  <wingo@pobox.com>
631
632         * gst/parse/parse.l: Attempt to solve bug #172815.
633
634 2005-07-19  Wim Taymans  <wim@fluendo.com>
635
636         * docs/design/part-clocks.txt:
637         * docs/design/part-events.txt:
638         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
639         Small docs updates.
640         Only update the seeking values when we are not
641         busy streaming.
642
643 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
644
645         * gst/base/gstbasesrc.c: (gst_base_src_loop):
646           Oops, ignore the result of gst_pad_push_event here.
647
648 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
649
650         * gst/base/gstbasesrc.c: (gst_base_src_loop),
651         (gst_base_src_activate_push):
652           Send discont event from the loop function, as pads
653           aren't activated yet in the activate_push handler.
654
655         * gst/gstbin.c: (bin_bus_handler):
656           Don't leak element name.
657
658 2005-07-18  Andy Wingo  <wingo@pobox.com>
659
660         * configure.ac: Use AS_LIBTOOL_TAGS.
661
662 2005-07-18  Wim Taymans  <wim@fluendo.com>
663
664         * docs/gst/gstreamer.types:
665         Remove deleted types.
666
667 2005-07-18  Wim Taymans  <wim@fluendo.com>
668
669         * check/elements/gstfakesrc.c: (GST_START_TEST):
670         * configure.ac:
671         * gst/Makefile.am:
672         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
673         (init_popt_callback):
674         * gst/gst.h:
675         * gst/gst_private.h:
676         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
677         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
678         * gst/gstbin.h:
679         * gst/gstbus.h:
680         * gst/gstconfig.h.in:
681         * gst/gstelement.c: (gst_element_class_init),
682         (gst_element_set_base_time), (gst_element_get_base_time),
683         (iterator_fold_with_resync), (gst_element_change_state),
684         (gst_element_dispose), (gst_element_get_bus):
685         * gst/gstelement.h:
686         * gst/gstelementfactory.h:
687         * gst/gsterror.c: (_gst_core_errors_init):
688         * gst/gsterror.h:
689         * gst/gstevent.h:
690         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
691         * gst/gstindex.c:
692         * gst/gstinfo.c: (_gst_debug_init):
693         * gst/gstmessage.c: (_gst_message_copy):
694         * gst/gstmessage.h:
695         * gst/gstminiobject.h:
696         * gst/gstobject.c:
697         * gst/gstobject.h:
698         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
699         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
700         * gst/gstpad.h:
701         * gst/gstparse.h:
702         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
703         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
704         (gst_pipeline_get_last_stream_time):
705         * gst/gstpipeline.h:
706         * gst/gstpluginfeature.h:
707         * gst/gstquery.h:
708         * gst/gstscheduler.c:
709         * gst/gstscheduler.h:
710         * gst/gststructure.h:
711         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
712         (gst_task_finalize), (gst_task_func), (gst_task_create),
713         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
714         (gst_task_stop), (gst_task_pause):
715         * gst/gsttask.h:
716         * gst/gsttypefind.h:
717         * gst/gsttypes.h:
718         * gst/registries/gstlibxmlregistry.c: (load_feature),
719         (gst_xml_registry_load), (gst_xml_registry_save_feature):
720         * gst/registries/gstxmlregistry.c:
721         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
722         * gst/schedulers/threadscheduler.c:
723         * libs/gst/control/dparammanager.h:
724         * tools/gst-inspect.c: (print_element_list),
725         (print_plugin_features), (print_element_features):
726         * tools/gst-xmlinspect.c: (print_element_list),
727         (print_plugin_info), (main):
728         Removed plugable schedulers.
729         Removed Scheduler/Manager from elements.
730         Removed gsttypes.h, rearranged includes.
731         Removed dependency pad<->element, element<>pipeline, and
732         various others,  fix includes.
733         implement gst_pad_get_parent() with gst_object_get_parent()
734         Make GstTask sefcontained.
735         Fix _get_state() on GstBin, it did not return ASYNC with a 0
736         timeout.
737         Fix endless loop in iterator_fold_with_resync.
738
739
740 2005-07-18  Wim Taymans  <wim@fluendo.com>
741
742         * gst/Makefile.am:
743         * gst/gstarch.h:
744         Remove old file.
745
746 2005-07-18  Wim Taymans  <wim@fluendo.com>
747
748         * gst/Makefile.am:
749         No more cothreads.h
750
751 2005-07-18  Wim Taymans  <wim@fluendo.com>
752
753         * gst/cothreads.c:
754         * gst/cothreads.h:
755         Let's remove these.
756
757 2005-07-18  Wim Taymans  <wim@fluendo.com>
758
759         * docs/design/part-dynamic.txt:
760         * docs/design/part-events.txt:
761         * docs/design/part-seeking.txt:
762         Some more docs in the works.
763
764         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
765         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
766         (gst_base_transform_setcaps), (gst_base_transform_get_size),
767         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
768         (gst_base_transform_handle_buffer),
769         (gst_base_transform_sink_activate_push),
770         (gst_base_transform_src_activate_pull),
771         (gst_base_transform_set_passthrough),
772         (gst_base_transform_is_passthrough):
773         Refcounting fixes.
774
775         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
776         Cleanups.
777
778         * gst/gstevent.c: (gst_event_finalize):
779         Set SRC to NULL.
780
781         * gst/gstutils.c: (gst_element_unlink),
782         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
783         (gst_pad_proxy_setcaps):
784         * gst/gstutils.h:
785         Add _get_parent_element() to get a pads parent as an element.
786
787 2005-07-18  Wim Taymans  <wim@fluendo.com>
788
789         * check/gst/gstbin.c: (GST_START_TEST):
790         Remove bogus test.
791
792 2005-07-18  Wim Taymans  <wim@fluendo.com>
793
794         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
795         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
796         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
797         (gst_base_sink_event), (gst_base_sink_do_sync),
798         (gst_base_sink_chain), (gst_base_sink_loop),
799         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
800         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
801         Refcounting fixes.
802         Fix logic for returning ASYNC when not prerolled.
803
804 2005-07-18  Wim Taymans  <wim@fluendo.com>
805
806         * gst/gstqueue.c: (gst_queue_handle_sink_event):
807         Fix nasty refcount bug.
808
809 2005-07-16 Philippe Khalaf <burger@speedy.org>
810         * gst/elements/gstfdsrc.c:
811         * gst/elements/gstfdsrc.h:
812         * gst/elements/gstelements.c:
813         * gst/elements/Makefile.am:
814         Ported fdsrc to 0.9.
815
816 2005-07-16  Wim Taymans  <wim@fluendo.com>
817
818         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
819         (gst_base_sink_do_sync):
820         Fix compile error.
821
822 2005-07-16  Wim Taymans  <wim@fluendo.com>
823
824         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
825         (gst_base_sink_event), (gst_base_sink_get_times),
826         (gst_base_sink_do_sync), (gst_base_sink_change_state):
827         * gst/base/gstbasesink.h:
828         Store and use discont values when syncing buffers as described
829         in design docs.
830         
831         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
832         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
833         (gst_base_src_activate_push):
834         Push discont event when starting.
835
836         * gst/elements/gstidentity.c: (gst_identity_transform):
837         Small cleanups.
838
839         * gst/gstbin.c: (gst_bin_change_state):
840         Small cleanups in base_time  distribution.
841
842         * gst/gstelement.c: (gst_element_set_base_time),
843         (gst_element_get_base_time), (gst_element_change_state):
844         * gst/gstelement.h:
845         Added methods for the base_time of the element.
846         Some MT fixes.
847
848         * gst/gstpipeline.c: (gst_pipeline_send_event),
849         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
850         (gst_pipeline_get_last_stream_time):
851         * gst/gstpipeline.h:
852         MT fixes.
853         Handle seeking as described in design doc, remove stream_time
854         hack.
855         Cleanups clock and stream_time selection code. Added accessors
856         for the stream_time.
857         
858
859 2005-07-16  Andy Wingo  <wingo@pobox.com>
860
861         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
862         (#305291).
863
864 2005-07-16  Wim Taymans  <wim@fluendo.com>
865
866         * check/gst/gstbin.c: (GST_START_TEST):
867         Make elements silent as the deep_notify refs the
868         parent, which might make the test fail.
869
870         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
871         Don't hold the lock for too long.
872
873 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
874
875         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
876           Don't unref the caps we passed to gst_caps_make_writable() after
877           passing them. gst_caps_make_writable() will do that for us.
878
879 2005-07-15  Andy Wingo  <wingo@pobox.com>
880
881         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
882         (#157311).
883
884         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
885         own marshalling function for the handoff signal. Properly type the
886         buffer as a buffer. Fixes some warnings. Should do a more general
887         solution.
888         (gst_identity_class_init): Plug into the right marshaller.
889
890 2005-07-15  Wim Taymans  <wim@fluendo.com>
891
892         * docs/design/part-TODO.txt:
893         * docs/design/part-clocks.txt:
894         * docs/design/part-element-sink.txt:
895         * docs/design/part-events.txt:
896         * docs/design/part-gstpipeline.txt:
897         Updated docs, mostly DISCONT related.
898
899 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
900
901         * docs/pwg/building-pads.xml:
902           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
903
904 2005-07-15  Andy Wingo  <wingo@pobox.com>
905
906         * tools/gst-typefind.c: Update, add copyright block.
907
908         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
909         Normalize and truncate caps before fixation.
910
911         * gst/gstcaps.h:
912         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
913         discards all but the first structure from its argument.
914
915 2005-07-15  Wim Taymans  <wim@fluendo.com>
916
917         * gst/base/gstbasetransform.c: (gst_base_transform_init),
918         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
919         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
920         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
921         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
922         (gst_base_transform_chain), (gst_base_transform_change_state),
923         (gst_base_transform_set_passthrough),
924         (gst_base_transform_is_passthrough):
925         * gst/base/gstbasetransform.h:
926         Make passthrough work using the bufferpools.
927         Changed API a bit, subclasses have to write into a buffer
928         provided by the base class.
929         More debug info in nego functions.
930         
931         * gst/elements/gstidentity.c: (gst_identity_init),
932         (gst_identity_transform):
933         Port to new base class.
934
935 2005-07-15  Wim Taymans  <wim@fluendo.com>
936
937         * gst/gstmessage.c: (gst_message_new_state_changed):
938         * tools/gst-launch.c: (event_loop), (main):
939         Totally dump messages in -launch with the -m option.
940         Fix message name for State messages,
941
942 2005-07-14  Wim Taymans  <wim@fluendo.com>
943
944         * gst/base/gstbasesrc.c: (gst_base_src_loop):
945         Post error messages on errors.
946
947 2005-07-14  Wim Taymans  <wim@fluendo.com>
948
949         * gst/gstcaps.c: (gst_caps_do_simplify):
950         Remove debug info.
951
952         * gst/gsterror.h:
953         Define error for stream stopped.
954
955         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
956         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
957         Do proper return values.
958
959         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
960         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
961         (gst_pad_get_range):
962         Better return values.
963
964         * gst/gstpad.h:
965         Reorganise return values, add macro to check for fatal errors.
966
967         * gst/gstqueue.c: (gst_queue_chain):
968         Return proper GstFlowReturn values,
969
970 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
971
972         * docs/gst/gstreamer-sections.txt:
973         * docs/gst/gstreamer.types:
974         * docs/gst/tmpl/gst.sgml:
975         * docs/gst/tmpl/gstbasesink.sgml:
976         * docs/gst/tmpl/gstbasesrc.sgml:
977         * docs/gst/tmpl/gstbasetransform.sgml:
978         * docs/gst/tmpl/gstbin.sgml:
979         * docs/gst/tmpl/gstbuffer.sgml:
980         * docs/gst/tmpl/gstcaps.sgml:
981         * docs/gst/tmpl/gstclock.sgml:
982         * docs/gst/tmpl/gstcompat.sgml:
983         * docs/gst/tmpl/gstconfig.sgml:
984         * docs/gst/tmpl/gstelement.sgml:
985         * docs/gst/tmpl/gstelementdetails.sgml:
986         * docs/gst/tmpl/gstelementfactory.sgml:
987         * docs/gst/tmpl/gstenumtypes.sgml:
988         * docs/gst/tmpl/gsterror.sgml:
989         * docs/gst/tmpl/gstevent.sgml:
990         * docs/gst/tmpl/gstfakesink.sgml:
991         * docs/gst/tmpl/gstfakesrc.sgml:
992         * docs/gst/tmpl/gstfilesink.sgml:
993         * docs/gst/tmpl/gstfilesrc.sgml:
994         * docs/gst/tmpl/gstfilter.sgml:
995         * docs/gst/tmpl/gstformat.sgml:
996         * docs/gst/tmpl/gstghostpad.sgml:
997         * docs/gst/tmpl/gstimplementsinterface.sgml:
998         * docs/gst/tmpl/gstindex.sgml:
999         * docs/gst/tmpl/gstindexfactory.sgml:
1000         * docs/gst/tmpl/gstinfo.sgml:
1001         * docs/gst/tmpl/gstiterator.sgml:
1002         * docs/gst/tmpl/gstmacros.sgml:
1003         * docs/gst/tmpl/gstmemchunk.sgml:
1004         * docs/gst/tmpl/gstminiobject.sgml:
1005         * docs/gst/tmpl/gstobject.sgml:
1006         * docs/gst/tmpl/gstpad.sgml:
1007         * docs/gst/tmpl/gstpadtemplate.sgml:
1008         * docs/gst/tmpl/gstparse.sgml:
1009         * docs/gst/tmpl/gstpipeline.sgml:
1010         * docs/gst/tmpl/gstplugin.sgml:
1011         * docs/gst/tmpl/gstpluginfeature.sgml:
1012         * docs/gst/tmpl/gstquery.sgml:
1013         * docs/gst/tmpl/gstqueue.sgml:
1014         * docs/gst/tmpl/gstregistry.sgml:
1015         * docs/gst/tmpl/gstregistrypool.sgml:
1016         * docs/gst/tmpl/gstscheduler.sgml:
1017         * docs/gst/tmpl/gstschedulerfactory.sgml:
1018         * docs/gst/tmpl/gststructure.sgml:
1019         * docs/gst/tmpl/gstsystemclock.sgml:
1020         * docs/gst/tmpl/gsttaglist.sgml:
1021         * docs/gst/tmpl/gsttagsetter.sgml:
1022         * docs/gst/tmpl/gsttrace.sgml:
1023         * docs/gst/tmpl/gsttrashstack.sgml:
1024         * docs/gst/tmpl/gsttypefind.sgml:
1025         * docs/gst/tmpl/gsttypefindfactory.sgml:
1026         * docs/gst/tmpl/gsttypes.sgml:
1027         * docs/gst/tmpl/gsturihandler.sgml:
1028         * docs/gst/tmpl/gsturitype.sgml:
1029         * docs/gst/tmpl/gstutils.sgml:
1030         * docs/gst/tmpl/gstvalue.sgml:
1031         * docs/gst/tmpl/gstversion.sgml:
1032         * docs/gst/tmpl/gstxml.sgml:
1033         * docs/libs/tmpl/gstcontrol.sgml:
1034         * docs/libs/tmpl/gstdataprotocol.sgml:
1035         * docs/libs/tmpl/gstdparam.sgml:
1036         * docs/libs/tmpl/gstdplinint.sgml:
1037         * docs/libs/tmpl/gstdpman.sgml:
1038         * docs/libs/tmpl/gstdpsmooth.sgml:
1039         * docs/libs/tmpl/gstgetbits.sgml:
1040         * docs/libs/tmpl/gstunitconvert.sgml:
1041         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
1042         (gst_push_src_base_init), (gst_push_src_class_init),
1043         (gst_push_src_init), (gst_push_src_create):
1044         * gst/base/gstpushsrc.h:
1045         * gst/elements/gstelements.c:
1046         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
1047         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
1048         (gst_fake_sink_init), (gst_fake_sink_set_property),
1049         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
1050         (gst_fake_sink_event), (gst_fake_sink_preroll),
1051         (gst_fake_sink_render), (gst_fake_sink_change_state):
1052         * gst/elements/gstfakesink.h:
1053         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
1054         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
1055         (gst_fake_src_base_init), (gst_fake_src_class_init),
1056         (gst_fake_src_init), (gst_fake_src_event_handler),
1057         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
1058         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
1059         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
1060         (gst_fake_src_create_buffer), (gst_fake_src_create),
1061         (gst_fake_src_start), (gst_fake_src_stop):
1062         * gst/elements/gstfakesrc.h:
1063         * gst/elements/gstfilesink.c: (_do_init),
1064         (gst_file_sink_base_init), (gst_file_sink_class_init),
1065         (gst_file_sink_init), (gst_file_sink_dispose),
1066         (gst_file_sink_set_location), (gst_file_sink_set_property),
1067         (gst_file_sink_get_property), (gst_file_sink_open_file),
1068         (gst_file_sink_close_file), (gst_file_sink_query),
1069         (gst_file_sink_event), (gst_file_sink_render),
1070         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
1071         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
1072         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
1073         * gst/elements/gstfilesink.h:
1074         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
1075         (gst_file_src_class_init), (gst_file_src_init),
1076         (gst_file_src_finalize), (gst_file_src_set_location),
1077         (gst_file_src_set_property), (gst_file_src_get_property),
1078         (gst_file_src_map_region), (gst_file_src_map_small_region),
1079         (gst_file_src_create_mmap), (gst_file_src_create_read),
1080         (gst_file_src_create), (gst_file_src_is_seekable),
1081         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
1082         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
1083         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
1084         (gst_file_src_uri_handler_init):
1085         * gst/elements/gstfilesrc.h:
1086           more autistic cleanliness in functions/names/defines
1087
1088 2005-07-13  Andy Wingo  <wingo@pobox.com>
1089
1090         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
1091         source couldn't negotiate.
1092
1093         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
1094         connections again.
1095
1096         * gst/gstutils.h:
1097         * gst/gstutils.c (gst_element_link_pads_filtered): New old
1098         function. I am channeling Hades. Put your boots on suckers!!!
1099
1100 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
1101
1102         * testsuite/caps/Makefile.am:
1103         * testsuite/caps/value_compare.c:
1104         * testsuite/caps/value_intersect.c:
1105         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
1106           move two testsuite apps over to the check dir
1107
1108 2005-07-12  Wim Taymans  <wim@fluendo.com>
1109
1110         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
1111         Added more debug info in the negotiate process.
1112
1113         * gst/gstmessage.h:
1114         Prepare for segment playback.
1115
1116         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
1117         Better debugging.
1118
1119         * gst/gstutils.c:
1120         Some more docs.
1121
1122         * tools/gst-launch.c: (main):
1123         NULL pipeline on errors.
1124
1125 2005-07-12  Andy Wingo  <wingo@pobox.com>
1126
1127         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
1128         not it comes from a malloc region. Make sure our copy gets freed.
1129
1130 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1131
1132         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
1133         * check/gst/gstmessage.c: (GST_START_TEST):
1134         * check/gst/gststructure.c: (GST_START_TEST),
1135         (gst_structure_suite), (main):
1136           more testing
1137         * gst/gstelement.c: (gst_element_message_full):
1138           clean up GError and debug string now that they get copied
1139         * gst/gstmessage.c: (gst_message_new_error),
1140         (gst_message_new_warning), (gst_message_parse_error),
1141         (gst_message_parse_warning):
1142           use GST_TYPE_G_ERROR for structure_new, and take copies of
1143           arguments, so that we don't mess up refcounting
1144
1145 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1146
1147         * check/Makefile.am:
1148           add per-test valgrind targets
1149         * check/gst-libs/gdp.c: (GST_START_TEST),
1150         (gst_data_protocol_suite), (main):
1151           clean up
1152
1153 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1154
1155         * check/Makefile.am:
1156           instate more valgrindable tests
1157         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1158         (GST_START_TEST), (fakesrc_suite):
1159         * check/gst/gstpad.c: (GST_START_TEST):
1160         * check/gst/gststructure.c: (GST_START_TEST):
1161           fix test leaks
1162         * docs/gst/tmpl/gstminiobject.sgml:
1163         * gst/gstpad.c: (gst_pad_finalize):
1164           fix the static mutex leak
1165
1166 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1167
1168         * check/Makefile.am:
1169           add two more tests for valgrinding
1170         * check/gst/gstvalue.c: (GST_START_TEST):
1171           test refcount of deserialized buffer, found a leak
1172         * docs/gst/gstreamer-docs.sgml:
1173         * docs/gst/gstreamer-sections.txt:
1174         * docs/gst/gstreamer.types:
1175         * docs/gst/tmpl/gstminiobject.sgml:
1176           add miniobject to docs
1177         * gst/gstminiobject.c:
1178           add some docs
1179         * gst/gstvalue.c: (gst_value_deserialize_buffer),
1180         (gst_string_unwrap):
1181           fix a hard-to-find invalid write for one of the tests
1182           fix a leak for deserialized buffers
1183
1184 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1185
1186         * docs/pwg/advanced-events.xml:
1187         * docs/pwg/advanced-request.xml:
1188         * docs/pwg/advanced-scheduling.xml:
1189         * docs/pwg/appendix-porting.xml:
1190         * docs/pwg/building-boiler.xml:
1191         * docs/pwg/intro-preface.xml:
1192         * docs/pwg/other-ntoone.xml:
1193           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
1194           of example code and explanation for pad activation, loop() and
1195           getrange() functions and a bit more. Remove old comments pointing
1196           to loop-functions.
1197         * examples/pwg/Makefile.am:
1198           Add loop/getrange examples.
1199
1200 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1201
1202         * configure.ac:
1203           check for valgrind binary + some fixes
1204         * check/gst.supp:
1205           valgrind suppressions for the tests
1206         * check/Makefile.am:
1207           add a valgrind: target that valgrinds the unit tests
1208         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
1209         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
1210         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1211         * check/gst/gstghostpad.c:
1212           added some cleanup
1213         * check/gst/gstdata.c:
1214           removed
1215         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
1216         (thread_unref), (gst_mini_object_suite), (main):
1217           added
1218         * gst/gst.c: (gst_deinit):
1219         * gst/gst.h:
1220           add a method to clean up.
1221         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1222         (gst_system_clock_obtain):
1223           allow for disposing the system clock.
1224         * tools/gst-launch.c: (main):
1225           deinit
1226
1227 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1228
1229         * docs/gst/tmpl/gstbasesrc.sgml:
1230         * docs/gst/tmpl/gstfakesrc.sgml:
1231         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1232         (gst_base_src_init), (gst_base_src_set_property),
1233         (gst_base_src_get_property), (gst_base_src_get_range),
1234         (gst_base_src_start):
1235         * gst/base/gstbasesrc.h:
1236           add num-buffers property
1237         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1238         (gst_fakesrc_init), (gst_fakesrc_set_property),
1239         (gst_fakesrc_get_property), (gst_fakesrc_create),
1240         (gst_fakesrc_start):
1241           remove num-buffers property
1242
1243 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1244
1245         * docs/gst/gstreamer-sections.txt:
1246         * docs/gst/tmpl/gstbasesink.sgml:
1247         * docs/gst/tmpl/gstbasesrc.sgml:
1248         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
1249         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
1250         (gst_base_sink_finalize), (gst_base_sink_set_clock),
1251         (gst_base_sink_set_property), (gst_base_sink_get_property),
1252         (gst_base_sink_handle_object), (gst_base_sink_event),
1253         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
1254         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
1255         (gst_base_sink_loop), (gst_base_sink_deactivate),
1256         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
1257         (gst_base_sink_change_state):
1258         * gst/base/gstbasesink.h:
1259         * gst/base/gstbasesrc.h:
1260         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
1261         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
1262         (gst_filesink_init):
1263           more macro splitting
1264
1265 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1266
1267         * gst/gstelement.c: (gst_element_get_bus):
1268           add debug
1269         * tools/gst-launch.c: (check_intr), (event_loop):
1270           fix bus leaks
1271
1272 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1273
1274         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
1275           fix a caps leak
1276
1277 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1278
1279         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1280         (gst_base_src_finalize):
1281           add finalize method and clean up properly
1282         * gst/gstpipeline.c: (gst_pipeline_dispose):
1283           add debug
1284
1285 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1286
1287         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
1288         (gst_bin_suite):
1289           add more things to check
1290         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
1291         * gst/gstelement.c:
1292           more debug
1293
1294 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1295
1296         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1297         (GST_START_TEST), (fakesrc_suite):
1298         * check/gst-libs/gdp.c: (GST_START_TEST):
1299         * check/gst/gst.c: (GST_START_TEST):
1300         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
1301         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1302         * check/gst/gstbus.c: (GST_START_TEST):
1303         * check/gst/gstcaps.c: (GST_START_TEST):
1304         * check/gst/gstdata.c: (GST_START_TEST):
1305         * check/gst/gstelement.c: (GST_START_TEST):
1306         * check/gst/gstghostpad.c: (GST_START_TEST):
1307         * check/gst/gstiterator.c: (GST_START_TEST):
1308         * check/gst/gstmessage.c: (GST_START_TEST):
1309         * check/gst/gstobject.c: (GST_START_TEST):
1310         * check/gst/gstpad.c: (GST_START_TEST):
1311         * check/gst/gststructure.c: (GST_START_TEST):
1312         * check/gst/gstsystemclock.c: (GST_START_TEST),
1313         (gst_systemclock_suite):
1314         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
1315         * check/gst/gstvalue.c: (GST_START_TEST):
1316         * check/pipelines/cleanup.c: (GST_START_TEST):
1317         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
1318         * check/states/sinks.c: (GST_START_TEST):
1319         * check/gstcheck.c: (gst_check_init):
1320         * check/gstcheck.h:
1321           add debugging category
1322           use GST_START_TEST now, so we add a debug line
1323
1324 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1325
1326         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
1327           add test for state change message on a bin
1328         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
1329           add another test
1330         * gst/gstbin.c: (gst_bin_init):
1331         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
1332         * gst/gstelement.c: (gst_element_post_message),
1333         (gst_element_set_state):
1334         * gst/gstelementfactory.c: (gst_element_factory_create):
1335         * gst/gstmessage.c: (gst_message_new):
1336         * gst/gstscheduler.c:
1337           various debugging additions and cleanups
1338
1339 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1340
1341         * check/Makefile.am:
1342         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
1343         (main):
1344           adding tests for elements
1345         * gst/gstelement.c: (gst_element_dispose):
1346
1347 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1348
1349         * gst/registries/gstlibxmlregistry.c: (load_feature):
1350           plug more leaks.  A simple gst_init() now is leakfree, yay.
1351
1352 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1353
1354         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
1355         (gst_xml_registry_load):
1356           plug another memleak
1357
1358 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1359
1360         * configure.ac:
1361           use GST_SET_ERROR_CFLAGS
1362         * docs/faq/cvs.xml:
1363           change to ERROR_CFLAGS
1364
1365 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1366
1367         * configure.ac:
1368           make GST_ERROR_CFLAGS overridable and re-enable Werror
1369         * docs/faq/cvs.xml:
1370           add a note about error CFLAGS
1371         * docs/gst/tmpl/gstfakesrc.sgml:
1372         * gst/elements/gstfakesrc.c:
1373           comment out some unused code
1374         * gst/gst.c: (split_and_iterate):
1375         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
1376         (load_feature):
1377           plug some memleaks
1378
1379 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1380
1381         * common/Makefile.am:
1382         * common/gtk-doc.mak:
1383         * docs/gst/Makefile.am:
1384           factor out gtk-doc.mak
1385
1386 2005-07-07  Wim Taymans  <wim@fluendo.com>
1387
1388         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
1389         (gst_thread_scheduler_dispose):
1390         Unlock the STREAM_LOCK completely.
1391
1392 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1393
1394         * check/Makefile.am:
1395         * check/elements/.cvsignore:
1396         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1397         (START_TEST), (fakesrc_suite), (main):
1398         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1399         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
1400         (gst_fakesrc_create), (gst_fakesrc_start):
1401         * gst/elements/gstfakesrc.h:
1402           adding a first element test
1403
1404 2005-07-07  Andy Wingo  <wingo@pobox.com>
1405
1406         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
1407         debug message.
1408
1409 2005-07-07  Wim Taymans  <wim@fluendo.com>
1410
1411         * gst/gstquery.c:
1412         * gst/gstquery.h:
1413         Remove old types
1414
1415 2005-07-07  Wim Taymans  <wim@fluendo.com>
1416
1417         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
1418         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
1419         Allow subclasses to implement their own negotiation.
1420
1421 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1422
1423         * docs/design/part-gstbin.txt:
1424         * docs/design/part-gstpipeline.txt:
1425           Update design notes to reflect the movement of
1426           responsibility for bus handling from GstPipeline to
1427           GstBin
1428
1429 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1430
1431         * configure.ac:
1432           Remove unnecessary queue2/3/4 examples.
1433
1434 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1435
1436         * examples/Makefile.am:
1437         * examples/helloworld/helloworld.c: (event_loop), (main):
1438         * examples/queue/queue.c: (event_loop), (main):
1439         * examples/queue2/queue2.c: (main):
1440           Update a couple of the examples to work again.
1441
1442         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1443         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
1444          Spelling corrections and extra debug.
1445         
1446         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
1447         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
1448         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
1449         * gst/gstbin.h:
1450         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
1451         (gst_pipeline_change_state):
1452         * gst/gstpipeline.h:
1453           Move the bus handler for children to the GstBin, and create a
1454           separate bus for receiving messages from children to the one the
1455           bus sends 'upwards' on.
1456
1457 2005-07-06  Wim Taymans  <wim@fluendo.com>
1458
1459         * gst/base/README:
1460         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1461         (gst_base_sink_handle_object), (gst_base_sink_loop),
1462         (gst_base_sink_change_state):
1463         * gst/base/gstbasesink.h:
1464         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1465         (gst_base_src_init), (gst_base_src_setcaps),
1466         (gst_base_src_getcaps), (gst_base_src_loop),
1467         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
1468         (gst_base_src_start), (gst_base_src_change_state):
1469         * gst/base/gstbasesrc.h:
1470         Make basesrc negotiate.
1471         Handle the case where preroll fails in basesink.
1472         Update README.
1473
1474 2005-07-06  Wim Taymans  <wim@fluendo.com>
1475
1476         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
1477         Implement the fixate function.
1478         Clean up acceptcaps.
1479
1480 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1481
1482         * docs/pwg/building-filterfactory.xml:
1483         * docs/pwg/pwg.xml:
1484           Remove never-written filter-factory chapter; I'll add the various
1485           base classes to part 4 ("other element types") later on.
1486
1487 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1488
1489         * docs/pwg/advanced-negotiation.xml:
1490         * docs/pwg/building-boiler.xml:
1491         * docs/pwg/building-pads.xml:
1492         * docs/pwg/pwg.xml:
1493         * examples/pwg/Makefile.am:
1494           Add a chapter on caps negotiation, simplify the original code
1495           samples a bit w.r.t. caps negotiation, add link to the advanced
1496           section. Add a bunch of examples showing different use cases of
1497           different types of caps negotiation. Upstream renegotiation isn't
1498           fully documented yet since nobody knows how that works.
1499
1500 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
1501
1502         * check/gst/gstpad.c:
1503         * check/gstcheck.c:
1504         * gst/gstpad.c: (gst_pad_get_internal_links_default):
1505           if pad has no parent, return NULL as list of internal links
1506
1507 2005-07-05  Andy Wingo  <wingo@pobox.com>
1508
1509         * gst/elements/gstfilesrc.c:
1510         * gst/elements/gstfakesrc.c: 
1511         * gst/base/gstpushsrc.c:
1512         * gst/base/gstbasesrc.h: 
1513         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
1514         
1515 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
1516
1517         * Makefile.am:
1518           better report generation target (lcov needs a patch)
1519
1520 2005-07-05  Andy Wingo  <wingo@pobox.com>
1521
1522         * gst/elements, testsuite: Null if we got it...
1523
1524 2005-07-05  Wim Taymans  <wim@fluendo.com>
1525
1526         * configure.ac:
1527         * libs/gst/dataprotocol/Makefile.am:
1528         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
1529         * libs/gst/dataprotocol/dataprotocol.h:
1530         * pkgconfig/Makefile.am:
1531         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
1532         * pkgconfig/gstreamer-dataprotocol.pc.in:
1533         Ported dataprotol to 0.9. 
1534         Added pkgconfig files.
1535
1536 2005-07-05  Andy Wingo  <wingo@pobox.com>
1537
1538         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
1539         Default to returning TRUE for the case when tranform_caps returns
1540         a fixed caps, like for identity or volume.
1541
1542         * check/gst/gstbus.c (pound_bus_with_messages): 
1543         * check/gst/gstmessage.c (START_TEST): 
1544         * check/pipelines/simple_launch_lines.c (got_handoff): Application
1545         message API change.
1546
1547         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
1548         logic weaks here: always run transform_caps, trying passthrough
1549         operation only if the original caps intersects with the transform.
1550
1551         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
1552         source and sink caps.
1553
1554         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
1555         Intersect the peer caps with the pad template before going into
1556         transform_caps.
1557         (gst_base_transform_transform_caps): More debugging.
1558
1559         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
1560         src argument.
1561
1562 2005-07-04  Edward Hervey  <edward@fluendo.com>
1563
1564         * gst/gstutils.c:
1565         * gst/gstutils.h:
1566         (gst_pad_add_*_probe): now returns the signal id for better wrapping
1567         in bindings.
1568
1569 2005-07-04  Andy Wingo  <wingo@pobox.com>
1570
1571         * check/gst/gstpad.c: Only set explicit caps on pads.
1572
1573 2005-07-01  Andy Wingo  <wingo@pobox.com>
1574
1575         * tests/network-clock.scm: Commentary update.
1576
1577         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
1578         Didn't really make sense, not implementable with basetransform,
1579         etc.
1580         (gst_identity_transform): Unref inbuf via make_writable. Feeble
1581         attempt at implementing the sync property, needs an unlock method.
1582
1583         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
1584         New func, by default returns the same caps (the identity
1585         transformation).
1586         (gst_base_transform_getcaps): Uses transform_caps to return
1587         something sensible.
1588         (gst_base_transform_setcaps): Complicated logic to get caps on
1589         both pads, even if they are different, and to call set_caps once
1590         for every time both pads get their caps set.
1591         (gst_base_transform_handle_buffer): Give the ref to the transform
1592         function. Allows in-place modification of the buffer.
1593
1594         * gst/base/gstbasetransform.h (transform_caps): New class method.
1595         Given caps on one side, what can I do on the other.
1596         (set_caps): Take two caps, one for each side of the element.
1597
1598         * gst/gstpad.h:
1599         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
1600         caps in place. This is safe because we can check the mutability of
1601         the caps, and a good idea because fixate functions are just called
1602         as a matter of last resort. (Not actually implemented.)
1603         (gst_pad_set_caps): If the caps we're setting is actually the same
1604         as the existing pad caps, just update the pointer without calling
1605         setcaps. Assert that caps is either NULL or fixed, as per the
1606         docs.
1607
1608         * gst/gstghostpad.c: Update for fixate changes.
1609
1610 2005-07-02  Andy Wingo  <wingo@pobox.com>
1611
1612         * gst/gstcaps.c:
1613         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
1614         two refcounts makes it immutable, which is enough. Doc more.
1615
1616 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
1617
1618         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
1619           Put the mini_object into GValue as a mini_object,
1620           not a gpointer, since that's how we declared
1621           the signal.
1622
1623 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1624
1625         * examples/pwg/Makefile.am:
1626           Fix buildbot again.
1627
1628 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1629
1630         * docs/pwg/building-testapp.xml:
1631           Add extra check.
1632         * examples/pwg/Makefile.am:
1633           Fix buildbot.
1634
1635 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1636
1637         * configure.ac:
1638         * examples/Makefile.am:
1639         * examples/pwg/Makefile.am:
1640         * examples/pwg/extract.pl:
1641           Enable building the PWG examples.
1642         * docs/pwg/advanced-interfaces.xml:
1643           Add URI interface stub.
1644         * docs/pwg/advanced-types.xml:
1645         * docs/pwg/other-autoplugger.xml:
1646         * docs/pwg/appendix-porting.xml:
1647         * docs/pwg/pwg.xml:
1648           Add porting guide (mostly stubs), remove autoplugging (see ADM).
1649         * docs/pwg/building-boiler.xml:
1650         * docs/pwg/building-chainfn.xml:
1651         * docs/pwg/building-pads.xml:
1652         * docs/pwg/building-props.xml:
1653         * docs/pwg/building-state.xml:
1654         * docs/pwg/building-testapp.xml:
1655           Update the building-*.xml parts for 0.9 changes. All examples
1656           code blocks compile in examples/pwg/*.
1657
1658 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1659
1660         * docs/manual/advanced-autoplugging.xml:
1661         * docs/manual/appendix-checklist.xml:
1662         * docs/manual/appendix-integration.xml:
1663         * docs/manual/highlevel-components.xml:
1664           Fix playbin/decodebin examples, update docs a bit, mention bus
1665           instead of signals in various places, mention kmplayer and
1666           kaffeine since they have a working GStreamer backend in the KDE
1667           section.
1668
1669 2005-06-30  Wim Taymans  <wim@fluendo.com>
1670
1671         * CHANGES-0.9:
1672         * docs/design/draft-ghostpads.txt:
1673         * docs/design/draft-push-pull.txt:
1674         * docs/design/draft-query.txt:
1675         * docs/design/part-TODO.txt:
1676         * docs/design/part-query.txt:
1677         Added CHANGES-0.9 doc, updated status of other docs.
1678         
1679         * gst/gstquery.h:
1680         Remove "hmm" macro
1681
1682 2005-06-30  Wim Taymans  <wim@fluendo.com>
1683
1684         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1685         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
1686         (gst_base_sink_change_state):
1687         * gst/base/gstbasesink.h:
1688         Some tweaks, only EOS and a buffer complete a preroll.
1689
1690 2005-06-30  Andy Wingo  <wingo@pobox.com>
1691
1692         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
1693         activate_push down to the internal pad as well.
1694
1695 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
1696
1697         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1698
1699         * gst/gsttaginterface.c:
1700           Some documentation fixes (#307394 and #307397).
1701
1702 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
1703
1704         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1705
1706         * gst/gstvalue.c: (gst_value_intersect_list):
1707           Fix memleak (#309125).
1708
1709 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1710
1711         * docs/manual/advanced-dataaccess.xml:
1712           Fix fakesrc example to compile; doesn't work, bug somewhere...?
1713         * docs/manual/basics-pads.xml:
1714           Add reference for filtered caps to above chapter.
1715
1716 2005-06-30  Wim Taymans  <wim@fluendo.com>
1717
1718         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
1719         (gst_bin_change_state):
1720         Probes are gone.
1721         Lame attempt at making the state change function a bit
1722         more readable.
1723
1724 2005-06-30  Wim Taymans  <wim@fluendo.com>
1725
1726         * docs/design/part-clocks.txt:
1727         * docs/design/part-element-sink.txt:
1728         * docs/design/part-events.txt:
1729         * docs/design/part-preroll.txt:
1730         * docs/design/part-states.txt:
1731         Some more tweeks and additions to the docs.
1732
1733 2005-06-30  Wim Taymans  <wim@fluendo.com>
1734
1735         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1736         (default_have_data), (gst_pad_class_init), (gst_pad_init),
1737         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1738         (gst_pad_check_pull_range), (gst_pad_get_range),
1739         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
1740         * gst/gstpad.h:
1741         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
1742         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1743         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1744         (gst_pad_remove_buffer_probe):
1745         Removed atomic operations, use existing LOCK.
1746         Move exception handling out of main code path.
1747
1748 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1749
1750         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1751         (silly_return_true_function), (gst_pad_class_init),
1752         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1753         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
1754         (gst_pad_send_event):
1755           Fix accumulator, add default value by using _emitv() instead
1756           of _emit() for signal emission.
1757
1758 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1759
1760         * docs/manual/advanced-dataaccess.xml:
1761         * examples/manual/Makefile.am:
1762           Add probe example.
1763         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
1764           Make work (??).
1765
1766 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
1767
1768         * gst/elements/gstfilesink.c: (gst_filesink_render):
1769           Simplify code so that we don't have to handle short
1770           writes and return GST_FLOW_ERROR if an error occured.
1771
1772 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1773
1774         * docs/gst/gstreamer-docs.sgml:
1775           Remove probes more.
1776
1777 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1778
1779         * docs/gst/gstreamer-sections.txt:
1780         * docs/gst/tmpl/gstpad.sgml:
1781         * docs/gst/tmpl/gstprobe.sgml:
1782         * gst/Makefile.am:
1783         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1784         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
1785         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
1786         (gst_pad_push_event), (gst_pad_send_event):
1787         * gst/gstpad.h:
1788         * gst/gstutils.c: (gst_pad_add_data_probe),
1789         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1790         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1791         (gst_pad_remove_buffer_probe):
1792         * gst/gstutils.h:
1793           Remove old probes, add new g-signal-based probes and some utility
1794           functions.
1795
1796 2005-06-29  Edward Hervey  <edward@fluendo.com>
1797
1798         * gst/gstelementfactory.c:
1799         * gst/gstutils.h:
1800         * gst/gstutils.c:
1801         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
1802         the definition to the header file.
1803
1804 2005-06-29  Andy Wingo  <wingo@pobox.com>
1805
1806         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
1807         plugins from the source directory.
1808
1809 2005-06-29  Wim Taymans  <wim@fluendo.com>
1810
1811         * docs/gst/tmpl/gstbuffer.sgml:
1812         * docs/gst/tmpl/gstclock.sgml:
1813         Some fixings for blantently wrong text.
1814
1815 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1816
1817         * check/Makefile.am:
1818         * gst/gst.c: (add_path_func), (init_pre):
1819         * gst/gstregistry.c: (gst_registry_add_path):
1820           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
1821           only scan the GST_PLUGIN_PATH locations, and not add
1822           system locations
1823
1824 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1825
1826         * docs/gst/gstreamer-sections.txt:
1827         * docs/gst/tmpl/gstbasesrc.sgml:
1828         * gst/gstelement.c:
1829         * gst/gstelement.h:
1830         * gst/gstevent.c:
1831         * gst/gstutils.c:
1832           doc fixes
1833
1834 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1835
1836         * docs/manual/advanced-autoplugging.xml:
1837           Fix autoplugging example.
1838
1839 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1840
1841         * docs/manual/advanced-autoplugging.xml:
1842         * docs/manual/mime-world.fig:
1843           Try to get autoplugging working, fix type detection. Fix text
1844           in hello-world image.
1845
1846 2005-06-29  Wim Taymans  <wim@fluendo.com>
1847
1848         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1849         (gst_base_sink_change_state):
1850         Small debug line.
1851
1852         * gst/gstclock.h:
1853         map SIGNAL and BROADCAST to the right function.
1854
1855         * gst/gstobject.h:
1856         Remove redundant braces.
1857
1858         * gst/gstpad.c: (gst_pad_set_caps):
1859         Don't call setcaps function when reseting caps to NULL.
1860
1861         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1862         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
1863         (gst_system_clock_id_unschedule):
1864         Use BROADCAST as this is what we do.
1865
1866 2005-06-29  Wim Taymans  <wim@fluendo.com>
1867
1868         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
1869         We are actually prerolling before commiting the state
1870         change. 
1871
1872 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1873
1874         * docs/manual/advanced-clocks.xml:
1875         * docs/manual/advanced-interfaces.xml:
1876         * docs/manual/advanced-metadata.xml:
1877         * docs/manual/advanced-position.xml:
1878         * docs/manual/advanced-schedulers.xml:
1879         * docs/manual/advanced-threads.xml:
1880         * docs/manual/appendix-porting.xml:
1881         * docs/manual/basics-bins.xml:
1882         * docs/manual/basics-bus.xml:
1883         * docs/manual/basics-elements.xml:
1884         * docs/manual/basics-helloworld.xml:
1885         * docs/manual/basics-pads.xml:
1886         * docs/manual/highlevel-components.xml:
1887         * docs/manual/manual.xml:
1888         * docs/manual/thread.fig:
1889           Update (until threads/scheduling) Application Development Manual;
1890           remove GstThread, add GstBus, add simple porting checklist, add
1891           documentation for tag writing, clocks, make all examples until this
1892           part compile and run.
1893         * examples/manual/Makefile.am:
1894           Update from changes to Application Development Manual; add bus
1895           example, remove thread example.
1896
1897 2005-06-28  Wim Taymans  <wim@fluendo.com>
1898
1899         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
1900         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
1901         (gst_bus_source_dispatch):
1902         Add debugging messages.
1903         Make internal methods static.
1904         Handle the case where the bus is flushed in the handler.
1905         
1906         * gst/gstelement.c: (gst_element_get_bus):
1907         Fix refcount in _get_bus();
1908
1909         * gst/gstpipeline.c: (gst_pipeline_change_state),
1910         (gst_pipeline_get_clock_func):
1911         Clock refcounting fixes.
1912         Handle the case where preroll timed out more gracefully.
1913         
1914         * gst/gstsystemclock.c: (gst_system_clock_dispose):
1915         Clean up the internal thread in dispose. This is needed
1916         for subclasses that actually get disposed.
1917         
1918         * gst/schedulers/threadscheduler.c:
1919         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
1920         (gst_thread_scheduler_dispose):
1921         Free thread pool in dispose.
1922
1923 2005-06-28  Andy Wingo  <wingo@pobox.com>
1924
1925         * tests/network-clock-utils.scm (debug, print-event): New utils.
1926
1927         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
1928         (*packet-loss*): Unified loss probability.
1929         (network-time): Report out-of-band events.
1930
1931         * tests/plot-data: Add support for out-of-band events. Hack it
1932         into this script instead of passing it down the pipe; should fix
1933         this later.
1934
1935 2005-06-28  Wim Taymans  <wim@fluendo.com>
1936
1937         * docs/gst/gstreamer.types:
1938         * docs/gst/tmpl/gstbasesrc.sgml:
1939         * docs/gst/tmpl/gstpad.sgml:
1940         Docs fixes.
1941
1942 2005-06-28  Wim Taymans  <wim@fluendo.com>
1943
1944         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1945         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
1946         (gst_proxy_pad_do_fixatecaps):
1947         Correctly proxy the check_pull_range function.
1948
1949 2005-06-28  Andy Wingo  <wingo@pobox.com>
1950
1951         * tests/network-clock.scm: Removed need for slib.
1952         
1953 2005-06-28  Wim Taymans  <wim@fluendo.com>
1954
1955         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
1956         (gst_basesink_preroll_queue_flush):
1957         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
1958         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
1959         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1960         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
1961         (gst_proxy_pad_set_property):
1962         * gst/gstpad.c:
1963         * gst/gstpad.h:
1964         * gst/gstqueue.c: (gst_queue_init):
1965         The deprecated pad loop function is removed now.
1966
1967 2005-06-28  Andy Wingo  <wingo@pobox.com>
1968
1969         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
1970         New parameters, simulate network packet loss.
1971
1972         * tests/network-clock-utils.scm: Initialize the RNG.
1973
1974 2005-06-28  Wim Taymans  <wim@fluendo.com>
1975
1976         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
1977         (gst_basesink_event), (gst_basesink_deactivate):
1978         Flushing the preroll queue always needs to unlock the waiters.
1979
1980 2005-06-28  Edward Hervey  <edward@fluendo.com>
1981
1982         * gst/gstpipeline.c: (gst_pipeline_send_event): 
1983         Wheen a seek was successful on a pipeline, set the stream_time to the
1984         seek offset in order to have a synchronized stream_time.
1985
1986 2005-06-28  Wim Taymans  <wim@fluendo.com>
1987
1988         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1989         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
1990         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
1991         (gst_proxy_pad_do_fixatecaps):
1992         Call wrapper function instead of just calling the function
1993         pointers. This takes care of any locking and whatmore.
1994
1995 2005-06-28  Wim Taymans  <wim@fluendo.com>
1996
1997         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
1998         (gst_pad_pull_range):
1999         * gst/gstpad.h:
2000         CONNECTED -> LINKED.
2001
2002 2005-06-28  Andy Wingo  <wingo@pobox.com>
2003
2004         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
2005         source-munging commit!!!
2006
2007         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
2008         (gst_object_sink): Take gpointer arguments, not GstObject --
2009         avoids casts. Like GLib.
2010
2011         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
2012         activate.
2013
2014 2005-06-27  Andy Wingo  <wingo@pobox.com>
2015
2016         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
2017         remaining buffer.
2018
2019         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
2020         returns a sorted copy of the trace list.
2021         (gst_alloc_trace_print_live): New API, only prints traces with
2022         live objects. Sort the list.
2023         (gst_alloc_trace_print_all): Sort the list.
2024         (gst_alloc_trace_print): Align columns.
2025
2026         * gst/elements/gstttypefindelement.c:
2027         * gst/elements/gsttee.c:
2028         * gst/base/gstbasesrc.c:
2029         * gst/base/gstbasesink.c:
2030         * gst/base/gstbasetransform.c:
2031         * gst/gstqueue.c: Adapt for pad activation changes.
2032
2033         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
2034         sched.
2035         (gst_pipeline_dispose): Drop ref on sched.
2036
2037         * gst/gstpad.c (gst_pad_init): Set the default activate func.
2038         (gst_pad_activate_default): Push mode by default.
2039         (pre_activate_switch, post_activate_switch): New stubs, things to
2040         do before and after switching activation modes on pads.
2041         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
2042         the pad's activate function to choose which mode to activate.
2043         Shortcut on deactivation and call the right function directly.
2044         (gst_pad_activate_pull): New API, (de)activates a pad in pull
2045         mode.
2046         (gst_pad_activate_push): New API, same for push mode.
2047         (gst_pad_set_activate_function) 
2048         (gst_pad_set_activatepull_function) 
2049         (gst_pad_set_activatepush_function): Setters for new API.
2050
2051         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
2052         Trace all miniobjects.
2053         (gst_mini_object_make_writable): Unref the arg if we copy, like
2054         gst_caps_make_writable.
2055
2056         * gst/gstmessage.c (_gst_message_initialize): No trace init.
2057
2058         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
2059         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
2060         Adapt for new pad API.
2061
2062         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
2063
2064         * gst/gstelement.h:
2065         * gst/gstelement.c (gst_element_iterate_src_pads) 
2066         (gst_element_iterate_sink_pads): New API functions.
2067         
2068         * gst/gstelement.c (iterator_fold_with_resync): New utility,
2069         should fold into gstiterator.c in some form.
2070         (gst_element_pads_activate): Simplified via use of fold and
2071         delegation of decisions to gstpad->activate.
2072
2073         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
2074         help in debugging.
2075
2076         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
2077         class once in init, like gstmessage. Didn't run into this issue
2078         but it seems correct. Don't initialize a trace, gstminiobject does
2079         that.
2080
2081         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
2082         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
2083         to the bus.
2084         (assert_live_count): New util function, uses alloc traces to check
2085         cleanup.
2086
2087         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
2088         To be modified when unlink drops the internal pad.
2089
2090 2005-06-27  Wim Taymans  <wim@fluendo.com>
2091
2092         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
2093         (gst_bin_change_state):
2094         Cleanup the get_state() function a little, make sure it
2095         iterates the same set of elements.
2096         Added stub iterate_state_order().
2097
2098 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
2099
2100         * docs/gst/gstreamer-docs.sgml:
2101         * docs/gst/gstreamer-sections.txt:
2102         * docs/gst/gstreamer.types:
2103         * docs/gst/tmpl/gstbasesink.sgml:
2104         * docs/gst/tmpl/gstbasesrc.sgml:
2105         * docs/gst/tmpl/gstbasetransform.sgml:
2106         * docs/gst/tmpl/gstelement.sgml:
2107         * docs/gst/tmpl/gstiterator.sgml:
2108         * gst/base/gstbasesrc.c:
2109         * gst/base/gstbasesrc.h:
2110         * gst/base/gstbasetransform.h:
2111         * gst/gstelement.c:
2112         * gst/gstiterator.h:
2113           adding basetransform and iterator docs
2114
2115 2005-06-27  Andy Wingo  <wingo@pobox.com>
2116
2117         * docs/design/part-activation.txt: Notes on how activation should
2118         work -- not quite implemented yet.
2119
2120 2005-06-25  Wim Taymans  <wim@fluendo.com>
2121
2122         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
2123         At least get the chain function correct, needs more
2124         fixing.
2125
2126 2005-06-25  Wim Taymans  <wim@fluendo.com>
2127
2128         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2129         (gst_basesink_handle_object), (gst_basesink_event),
2130         (gst_basesink_do_sync), (gst_basesink_handle_event),
2131         (gst_basesink_change_state):
2132         * gst/gsttask.h:
2133         Right, two problems here: ghostpads don't take locks and
2134         glib _rec_mutex_lock_full() with depth==0 still locks.
2135         Catch illegal locking and g_warn them.
2136
2137 2005-06-25  Wim Taymans  <wim@fluendo.com>
2138
2139         * check/states/sinks.c: (START_TEST), (gst_object_suite):
2140         Have to check for completion now...
2141
2142 2005-06-25  Wim Taymans  <wim@fluendo.com>
2143
2144         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2145         (gst_basesink_handle_object), (gst_basesink_event),
2146         (gst_basesink_do_sync), (gst_basesink_handle_event),
2147         (gst_basesink_change_state):
2148         * gst/gstpad.h:
2149         Unlock STREAM_LOCK whatever the recursion was.
2150
2151 2005-06-25  Wim Taymans  <wim@fluendo.com>
2152
2153         * gst/base/gstbasesink.c: (gst_basesink_set_property),
2154         (gst_basesink_preroll_queue_empty),
2155         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
2156         (gst_basesink_event), (gst_basesink_do_sync),
2157         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
2158         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
2159         (gst_basesink_change_state):
2160         Reworked the base sink, handle event and buffer serialisation
2161         correctly and removed possible deadlock.
2162         Handle EOS correctly.
2163
2164 2005-06-25  Wim Taymans  <wim@fluendo.com>
2165
2166         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
2167         (gst_pipeline_change_state):
2168         * tools/gst-launch.c: (check_intr), (event_loop), (main):
2169         Allow elements to post EOS in the state change function.
2170         Fix up -launch, make it exit the poll loop when the
2171         pipeline actually changed state.
2172         Fix up warning parsing in -launch.
2173
2174 2005-06-25  Wim Taymans  <wim@fluendo.com>
2175
2176         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
2177         (gst_tee_sink_activate):
2178         Core takes STREAM_LOCK for us now.
2179
2180 2005-06-25  Wim Taymans  <wim@fluendo.com>
2181
2182         * gst/gstelement.c: (gst_element_get_state_func),
2183         (gst_element_set_state):
2184         * gst/gstelement.h:
2185         * gst/gstmessage.c: (gst_message_parse_error),
2186         (gst_message_parse_warning):
2187         Keep track of current target state while performing a state
2188         change so that subclasses can do something interesting.
2189         Fix parsing of warning/error messages when GError is NULL.
2190
2191 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
2192
2193         * docs/gst/Makefile.am:
2194         * docs/gst/gstreamer-docs.sgml:
2195         * docs/gst/gstreamer-sections.txt:
2196         * docs/gst/gstreamer.types:
2197         * docs/gst/tmpl/gstbasesink.sgml:
2198         * docs/gst/tmpl/gstbasesrc.sgml:
2199         * docs/gst/tmpl/gstbin.sgml:
2200         * docs/gst/tmpl/gstcompat.sgml:
2201         * docs/gst/tmpl/gstfakesink.sgml:
2202         * docs/gst/tmpl/gstfakesrc.sgml:
2203         * docs/gst/tmpl/gstfilesink.sgml:
2204         * docs/gst/tmpl/gstfilesrc.sgml:
2205         * docs/gst/tmpl/gstindex.sgml:
2206         * docs/manual/appendix-quotes.xml:
2207         * gst/base/gstbasesrc.h:
2208         * gst/elements/gstfakesrc.h:
2209         * gst/gstmessage.h:
2210           start pulling in base classes and elements in our docs
2211
2212 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
2213
2214         * docs/gst/Makefile.am:
2215         * docs/libs/Makefile.am:
2216           fixed make distcheck with gtk-doc 1.3
2217
2218 2005-06-23  Wim Taymans  <wim@fluendo.com>
2219
2220         * gst/gstelement.c: (gst_element_get_state_func),
2221         (gst_element_set_state), (gst_element_change_state):
2222         When the state did not change, also report NO_PREROLL
2223         when it matters.
2224
2225 2005-06-23  Wim Taymans  <wim@fluendo.com>
2226
2227         * gst/gstpad.c: (gst_pad_event_default):
2228         * gst/gstqueue.c: (gst_queue_loop):
2229         No unsafe task pausing please.
2230
2231 2005-06-23  Wim Taymans  <wim@fluendo.com>
2232
2233         * gst/schedulers/threadscheduler.c:
2234         (gst_thread_scheduler_task_start),
2235         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
2236         Ref the task before pushing it on the threadpool. This
2237         makes sure that we have a ref when the threadfunction is
2238         actually called.
2239
2240 2005-06-23  Andy Wingo  <wingo@pobox.com>
2241
2242         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
2243         offset is greater than the file's size.
2244
2245         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
2246         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
2247         * gst/gstobject.c (gst_object_class_init): Make the class lock
2248         recursive. Wim won't let me drop deep_notify. Decodebin works
2249         again, whoopdy doo.
2250
2251         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
2252         internal pad, and hacks accordingly. Doesn't do it on the target
2253         pad because we change its caps. Probably catches all cases of
2254         interest tho.
2255         (gst_ghost_pad_set_property): Connect to notify::caps as
2256         appropritate.
2257
2258         * tests/network-clock.scm (plot-simulation): Pipe data to the
2259         elite python skript.
2260
2261         * tests/network-clock-utils.scm (define-parameter): New macro,
2262         defines a parameter that can be set via the command line.
2263         (set-parameter!, parse-parameter-arguments): Command line args
2264         parser.
2265
2266         * tests/plot-data: Simple matplotlib-based plotter, takes input on
2267         stdin.
2268
2269 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
2270
2271         * gst/elements/gsttypefindelement.c:
2272         (gst_type_find_element_handle_event):
2273           Don't restart typefinding on a discont.
2274         * gst/gstelement.c: (gst_element_set_state):
2275           Debug spelling fix.
2276         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
2277           Allow changing mode of an active pad.
2278           Debug output fixes.
2279         * gst/registries/gstlibxmlregistry.c: (load_feature):
2280           Don't cast a static pad template to a normal pad template.
2281
2282 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
2283
2284         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2285         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2286           remove gst_strtoll completely, since it didn't actually do
2287           anything more than what g_ascii_strtoull already does.
2288           check for range errors when deserializing
2289           do a cast for the unsigned cases; but further fixing needs
2290           a decision on what the interpretation of "(int)" and
2291           deserialization should be for values that fall outside the
2292           type's boundaries (ie, refuse, or interpret as casting)
2293
2294 2005-06-23  Wim Taymans  <wim@fluendo.com>
2295
2296         * check/Makefile.am:
2297         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
2298         * docs/design/part-live-source.txt:
2299         * docs/design/part-states.txt:
2300         * gst/base/gstbasesrc.c: (gst_basesrc_init),
2301         (gst_basesrc_set_live), (gst_basesrc_is_live),
2302         (gst_basesrc_get_range), (gst_basesrc_activate),
2303         (gst_basesrc_change_state):
2304         * gst/base/gstbasesrc.h:
2305         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2306         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
2307         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
2308         * gst/gstelement.c: (gst_element_get_state_func),
2309         (gst_element_set_state):
2310         * gst/gstelement.h:
2311         * gst/gsttypes.h:
2312         * tools/gst-launch.c: (event_loop), (main):
2313         Added support for live sources and other elements that
2314         cannot do preroll.
2315         Updated design docs, added live-source design doc.
2316         Implemented live source functionality in basesrc
2317         Fix error condition in _bin_get_state()
2318         Implement live source handling in -launch.
2319         Added check for live sources.
2320         Fixed case in GstBin where elements were changed state
2321         multiple times.
2322
2323
2324 2005-06-23  Andy Wingo  <wingo@pobox.com>
2325
2326         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
2327         borken refcounting.
2328
2329         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
2330         gst_caps_replace takes care of this for us.
2331
2332         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
2333         gst_pad_set_caps on the target, not just its setcaps() function.
2334
2335         * tests/network-clock.scm: 
2336         * tests/network-clock-utils.scm: A network clock simulator.
2337         Something of an algorithmic testbed before doing something in C.
2338
2339 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2340
2341         * check/Makefile.am:
2342         * check/gst/capslist.h:
2343           copy over from 0.8, and add two with bitmasks specified with
2344           (int) 0xFF...
2345         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2346           add test to parse everything from capslist.h
2347         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
2348         (main):
2349           add test for structure deserialization
2350         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2351           add tests for deserialization of strings to int types
2352         * gst/gststructure.c: (gst_structure_nth_field_name):
2353         * gst/gststructure.h:
2354           add a way to get the name of a field referenced by index
2355         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2356           instead of checking if the resulting long long lies between
2357           min and max, we check if the long long would fit into
2358           a number of bytes for the final type.
2359           This fixes cases where a string represents 2^32 - 1, which
2360           when cast to int would be the (valid) -1, but is bigger than
2361           G_MAXINT
2362
2363 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2364
2365         * gst/parse/grammar.y:
2366           add a log line for type deserialization
2367
2368 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2369
2370         * check/gst/gstvalue.c: (START_TEST):
2371         * gst/gstvalue.c: (gst_value_deserialize):
2372           return long long, not int, so gint64 deserialization actually
2373           works.  Is there any flag that makes the compiler check this ?
2374           Fixes #308559
2375
2376 2005-06-22  Wim Taymans  <wim@fluendo.com>
2377
2378         * gst/gstbuffer.h:
2379         Added convenience macros for setting buffers in GValue.
2380
2381 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2382
2383         * check/gst/.cvsignore:
2384         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2385           add a test deserializing int64, and comment part out because
2386           it fails, yay !
2387
2388 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2389
2390         * check/Makefile.am:
2391         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
2392         * testsuite/Makefile.am:
2393         * testsuite/caps/Makefile.am:
2394         * testsuite/caps/value_serialize.c:
2395         * testsuite/test_gst_init.c:
2396           move a value_serialize test over
2397
2398 2005-06-20  Wim Taymans  <wim@fluendo.com>
2399
2400         * gst/gstpad.c:
2401         Small doc updates.
2402         
2403         * gst/gstvalue.c: (gst_value_compare_buffer),
2404         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
2405         (gst_value_compare_flags), (gst_value_serialize_flags),
2406         (gst_value_deserialize_flags), (_gst_value_initialize):
2407         Fix serialisation of buffers, they are not boxed types anymore
2408
2409 2005-06-20  Wim Taymans  <wim@fluendo.com>
2410
2411         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2412         Testcase to show error in buffer-on-caps serialisation.
2413
2414 2005-06-20  Andy Wingo  <wingo@pobox.com>
2415
2416         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
2417         will be adding to later.
2418
2419         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
2420         if its socks fill with rocks.
2421         (gst_system_clock_obtain): Set the name on object construction.
2422         Avoid double-checked locking.
2423
2424 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
2425
2426         * gst/gsturi.c: (gst_element_make_from_uri):
2427           Fix potential endless loop.
2428
2429 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2430
2431         * check/Makefile.am:
2432           add gsttag
2433         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
2434         (main):
2435           move over from testsuite dir and clean up
2436         * configure.ac:
2437         * gst/gsttag.c:
2438         * testsuite/Makefile.am:
2439         * testsuite/tags/.cvsignore:
2440         * testsuite/tags/Makefile.am:
2441         * testsuite/tags/merge.c:
2442           remove testsuite/tags
2443
2444 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2445
2446         * docs/gst/gstreamer-sections.txt:
2447         * docs/gst/tmpl/gstenumtypes.sgml:
2448         * win32/gstenumtypes.c:
2449           clean up documentation build a little
2450
2451 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2452
2453         * check/gstcheck.h:
2454           add macros for checking refcounts on objects and caps
2455         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
2456           add some more unit tests
2457         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
2458         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
2459           fix leaked refcounts (I hope :)) so unittest works
2460         * gst/gstpad.h:
2461           whitespace removal
2462
2463 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2464
2465         * configure.ac: back to HEAD
2466
2467 === release 0.9.1 ===
2468
2469 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2470
2471         * NEWS:
2472         * RELEASE:
2473           updated
2474
2475 2005-06-17  Andy Wingo  <wingo@pobox.com>
2476
2477         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
2478         assert; it's always possible that the pad gets deactivated in
2479         between the checks in gstpad.c and the implementation. Rely on
2480         finish_preroll() to return a FLUSHING or similar instead of on the
2481         assert.
2482         
2483         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
2484         clock and post an EOS message if we come out of finish_preroll in
2485         the playing state.
2486
2487 2005-06-16  David Schleef  <ds@schleef.org>
2488
2489         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
2490         (gst_capsfilter_set_property): Allow NULL as possible value
2491         for filter_caps property, indicating GST_CAPS_ANY.
2492
2493 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2494
2495         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
2496           fix debug output
2497         * gst/schedulers/Makefile.am:
2498           use libgst prefix
2499         * gstreamer.spec.in:
2500           fix spec for it
2501
2502 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2503
2504         * gstreamer.spec.in:
2505           clean up
2506
2507 2005-06-08  Andy Wingo  <wingo@pobox.com>
2508
2509         * gst/gstutils.c: RPAD fixes all around.
2510         (gst_element_link_pads): Refcounting fixes.
2511
2512         * tools/gst-inspect.c:
2513         * tools/gst-xmlinspect.c:
2514         * parse/grammar.y:
2515         * gst/base/gsttypefindhelper.c:
2516         * gst/base/gstbasesink.c:
2517         * gst/gstqueue.c: RPAD fixes.
2518
2519         * gst/gstghostpad.h:
2520         * gst/gstghostpad.c: New ghost pad implementation as full proxy
2521         pads. The tricky thing is they provide both source and sink
2522         interfaces, since they proxy the internal pad for the external
2523         pad, and vice versa. Implement with lower-level ProxyPad objects,
2524         with the interior proxy pad as a child of the exterior ghost pad.
2525         Should write a doc on this.
2526         
2527         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
2528         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
2529         gst_object API.
2530         
2531         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
2532         pads are real pads. No ghost pads in this file. Not documenting
2533         the myriad s/RPAD/PAD/ and REALIZE fixes.
2534         (gst_pad_class_init): Add properties for "direction" and
2535         "template". Both are construct-only, so they can't change during
2536         the life of the pad. Fixes properly deriving from GstPad.
2537         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
2538         derived objects, just set properties when creating the objects via
2539         g_object_new.
2540         (gst_pad_get_parent): Implement as a function, return NULL if the
2541         parent is not an element.
2542         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
2543         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
2544         
2545         * gst/gstobject.c (gst_object_class_init): Make name a construct
2546         property. Don't set it in the object init.
2547
2548         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
2549         with UNKNOWN direction.
2550         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
2551         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
2552         (gst_element_remove_pad): Remove ghost-pad special cases.
2553         (gst_element_pads_activate): Remove rpad cruft.
2554
2555         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
2556         catch the pad's-parent-not-an-element case.
2557
2558         * gst/gst.h: Include gstghostpad.h.
2559
2560         * gst/gst.c (init_post): No more real, ghost pads.
2561
2562         * gst/Makefile.am: Add gstghostpad.[ch].
2563
2564         * check/Makefile.am:
2565         * check/gst/gstbin.c:
2566         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
2567         into a bin creates ghost pads, and that the refcounts are right.
2568         Partly moved from gstbin.c.
2569
2570 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2571
2572         * check/gst-libs/.cvsignore:
2573         * check/gst/.cvsignore:
2574         * check/pipelines/.cvsignore:
2575           ignore more
2576         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
2577         (START_TEST), (cleanup_suite), (main):
2578           add some tests related to cleanup after running pipelines
2579
2580 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2581
2582         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
2583           add a testsuite for GstBuffer
2584
2585 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2586
2587         * gst/gstminiobject.h:
2588           add defines for accessing the refcount
2589
2590 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
2591
2592         * Makefile.am: added support for html unit test coverage reports
2593
2594 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
2595
2596         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
2597           Free existing caps if the capsfilter changes. Add a FIXME about
2598           setting those caps on the pads.
2599
2600         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
2601           Before adding a ghost pad to a parent bin, check that there isn't
2602           already one for the element on the bin. Prevents infinite recursion
2603           when using decodebin in parse pipelines. Andy says he'll rewrite the
2604           way this works anyway, so ignore the hack.
2605
2606 2005-06-02  Andy Wingo  <wingo@pobox.com>
2607
2608         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
2609         file size, pass it on to the type find helper.
2610
2611         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
2612         segment_start and segment_end properly according to the seek
2613         method. Segment_end is still a bit flaky because offset can be
2614         negative for CUR and END cases, but it takes -1 as an "unset"
2615         value.
2616
2617 2005-06-02  Wim Taymans  <wim@fluendo.com>
2618
2619         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
2620         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
2621         (gst_basesink_activate):
2622         * gst/base/gstbasesink.h:
2623         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2624         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2625         (gst_pad_query), (gst_pad_start_task):
2626         * gst/gstpad.h:
2627         * gst/gstqueue.c: (gst_queue_bufferalloc),
2628         (gst_queue_handle_sink_event), (gst_queue_chain):
2629         Bufferalloc: return GstFlowReturn to more accuratly report
2630         why allocation failed.
2631
2632 2005-06-02  Wim Taymans  <wim@fluendo.com>
2633
2634         * gst/gstpipeline.c: (gst_pipeline_send_event):
2635         Take snapshot of state without blocking.
2636
2637 2005-06-02  Wim Taymans  <wim@fluendo.com>
2638
2639         * docs/design/part-TODO.txt:
2640         * docs/design/part-caps.txt:
2641         * docs/design/part-clocks.txt:
2642         * docs/design/part-negotiation.txt:
2643         * docs/design/part-preroll.txt:
2644         Small doc updates 
2645
2646 2005-05-30  Wim Taymans  <wim@fluendo.com>
2647
2648         * gst/elements/gstidentity.c: (gst_identity_event),
2649         (gst_identity_transform), (gst_identity_get_property):
2650         Protect last_message property as it is accessed from
2651         multiple threads.
2652
2653 2005-05-30  Wim Taymans  <wim@fluendo.com>
2654
2655         * gst/gstelement.c: (gst_element_init),
2656         (gst_element_pads_activate), (gst_element_change_state):
2657         Slicker pad activation code.
2658
2659 2005-05-30  Wim Taymans  <wim@fluendo.com>
2660
2661         * gst/Makefile.am:
2662         * gst/gstelement.h:
2663         * gst/gstelementfactory.h:
2664         * gst/gsttypes.h:
2665         Move elementfactory methods to separate .h file.
2666
2667 2005-05-30  Wim Taymans  <wim@fluendo.com>
2668
2669         * docs/design/part-overview.txt:
2670         * gst/gstsystemclock.h:
2671         Small typo fixes, doc updates.
2672
2673 2005-05-30  Wim Taymans  <wim@fluendo.com>
2674
2675         * gst/gst.c: (gst_init_get_popt_table), (init_post),
2676         (init_popt_callback):
2677         Remove cpu-opt flag.
2678
2679 2005-05-30  Wim Taymans  <wim@fluendo.com>
2680
2681         * gst/gstbuffer.c: (gst_subbuffer_finalize),
2682         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
2683         * gst/gstbuffer.h:
2684         Avoid typechecking in places where not needed.
2685         Added accessor for malloc_data.
2686
2687 2005-05-30  Wim Taymans  <wim@fluendo.com>
2688
2689         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
2690         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
2691         (gst_pad_configure_sink), (gst_pad_configure_src),
2692         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
2693         (gst_pad_start_task):
2694         Propagate errors from _set_caps() in configure_src/sink
2695         functions instead of returning TRUE.
2696         FLUSH events can travel up and downstream
2697
2698
2699 2005-05-30  Wim Taymans  <wim@fluendo.com>
2700
2701         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2702         (gst_basesink_activate):
2703         Handle EOS in preroll.
2704
2705 2005-05-30  Wim Taymans  <wim@fluendo.com>
2706
2707         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2708         (gst_queue_loop), (gst_queue_handle_src_event):
2709         Remove old pieces of code
2710         Flushing the queue in an upstream event is a very bad idea.
2711
2712 2005-05-26  Andy Wingo  <wingo@pobox.com>
2713
2714         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
2715         gst_value_set_mini_object so as to add a ref on the object (which
2716         will be removed when the value is unset).
2717
2718         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
2719         arg type in ::handoff.
2720
2721         * gst/gstelement.c (gst_element_change_state): Also deactivate
2722         pads in READY->NULL, just in case the element didn't make it to
2723         PAUSED. Wingo tested, Wim approved.
2724
2725 2005-05-26  Wim Taymans  <wim@fluendo.com>
2726
2727         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2728         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2729         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
2730         A flushing pad cannot be used to alloc_buffer from.
2731
2732 2005-05-26  Wim Taymans  <wim@fluendo.com>
2733
2734         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
2735         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
2736         (gst_bus_source_dispatch), (gst_bus_source_finalize),
2737         (gst_bus_create_watch), (gst_bus_add_watch_full):
2738         * gst/gstbus.h:
2739         Implement a real GSource and use g_main_context_wakeup() to
2740         signal new messages instead of the socketpair.
2741
2742 2005-05-25  Wim Taymans  <wim@fluendo.com>
2743
2744         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
2745         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
2746         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2747         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2748         (gst_pad_send_event), (gst_pad_start_task):
2749         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
2750         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
2751         (gst_queue_sink_activate), (gst_queue_src_activate),
2752         (gst_queue_change_state):
2753         * gst/gstqueue.h:
2754         Fix state changes for non sinks. We now change sinks, then elements
2755         with unconnected srcpads, then the rest.
2756         More efficient queue unlocking in flush and state changes.
2757         Set the pad activate mode even if it does not have an activate
2758         function.
2759
2760 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2761
2762         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
2763           Don't go in pull mode for non-seekable sources.
2764         * gst/elements/gsttypefindelement.h:
2765         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
2766         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
2767         (free_entry), (stop_typefinding),
2768         (gst_type_find_element_handle_event), (find_peek),
2769         (gst_type_find_element_chain), (do_pull_typefind),
2770         (gst_type_find_element_change_state):
2771           Allow typefinding (w/o seeking) in push-mode, simplified version
2772           of what was in 0.8.
2773         * gst/gstutils.c: (gst_buffer_join):
2774         * gst/gstutils.h:
2775           gst_buffer_join() from 0.8.
2776
2777 2005-05-25  Wim Taymans  <wim@fluendo.com>
2778
2779         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2780         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2781         (gst_pad_send_event), (gst_pad_start_task):
2782         Disable attempt at mode switching until it is figured out.
2783
2784 2005-05-25  Wim Taymans  <wim@fluendo.com>
2785
2786         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
2787         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2788         (gst_basesink_finish_preroll), (gst_basesink_chain),
2789         (gst_basesink_loop), (gst_basesink_activate),
2790         (gst_basesink_change_state):
2791         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
2792         (gst_basesrc_get_range), (gst_basesrc_loop),
2793         (gst_basesrc_activate):
2794         * gst/elements/gsttee.c: (gst_tee_sink_activate):
2795         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
2796         (gst_real_pad_init), (gst_real_pad_set_property),
2797         (gst_real_pad_get_property), (gst_pad_set_active),
2798         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
2799         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
2800         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
2801         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
2802         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2803         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
2804         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
2805         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
2806         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
2807         (gst_pad_stop_task):
2808         * gst/gstpad.h:
2809         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2810         (gst_queue_loop), (gst_queue_src_activate):
2811         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
2812         (gst_task_get_state):
2813         * gst/gsttask.h:
2814         * gst/schedulers/threadscheduler.c:
2815         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
2816         Implement gst_pad_pause/start/stop_task(), take STREAM lock
2817         in task function.
2818         Remove ACTIVE pad flag, use FLUSHING everywhere
2819         Added _pad_chain(), _pad_get_range() to call chain/getrange 
2820         functions.
2821         Add locks around IS_FLUSHING when reading.
2822         Take STREAM lock in chain(), get_range() functions so plugins
2823         don't need to take it anymore.
2824         
2825
2826
2827 2005-05-25  Wim Taymans  <wim@fluendo.com>
2828
2829         * tools/gst-launch.c: (event_loop):
2830         Unref message after using its contents instead of
2831         before.
2832
2833 2005-05-24  Wim Taymans  <wim@fluendo.com>
2834
2835         * docs/design/draft-ghostpads.txt:
2836         * docs/design/draft-push-pull.txt:
2837         * docs/design/draft-query.txt:
2838         * docs/design/part-overview.txt:
2839         Docs updates, added general overview doc.
2840
2841 2005-05-21  David Schleef  <ds@schleef.org>
2842
2843         * docs/gst/tmpl/old/GstBin.sgml:
2844         * docs/gst/tmpl/old/GstBuffer.sgml:
2845         * docs/gst/tmpl/old/GstCaps.sgml:
2846         * docs/gst/tmpl/old/GstClock.sgml:
2847         * docs/gst/tmpl/old/GstCompat.sgml:
2848         * docs/gst/tmpl/old/GstData.sgml:
2849         * docs/gst/tmpl/old/GstElement.sgml:
2850         * docs/gst/tmpl/old/GstEvent.sgml:
2851         * docs/gst/tmpl/old/GstIndex.sgml:
2852         * docs/gst/tmpl/old/GstStructure.sgml:
2853         * docs/gst/tmpl/old/GstTag.sgml:
2854         * docs/gst/tmpl/old/cothreads.sgml:
2855         * docs/gst/tmpl/old/cothreads_compat.sgml:
2856         * docs/gst/tmpl/old/gettext.sgml:
2857         * docs/gst/tmpl/old/gobject2gtk.sgml:
2858         * docs/gst/tmpl/old/grammar.tab.sgml:
2859         * docs/gst/tmpl/old/gst-i18n-app.sgml:
2860         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
2861         * docs/gst/tmpl/old/gst_private.sgml:
2862         * docs/gst/tmpl/old/gstaggregator.sgml:
2863         * docs/gst/tmpl/old/gstarch.sgml:
2864         * docs/gst/tmpl/old/gstatomic_impl.sgml:
2865         * docs/gst/tmpl/old/gstbufferstore.sgml:
2866         * docs/gst/tmpl/old/gstdata_private.sgml:
2867         * docs/gst/tmpl/old/gstdisksink.sgml:
2868         * docs/gst/tmpl/old/gstdisksrc.sgml:
2869         * docs/gst/tmpl/old/gstelementfactory.sgml:
2870         * docs/gst/tmpl/old/gstextratypes.sgml:
2871         * docs/gst/tmpl/old/gstfakesink.sgml:
2872         * docs/gst/tmpl/old/gstfakesrc.sgml:
2873         * docs/gst/tmpl/old/gstfdsink.sgml:
2874         * docs/gst/tmpl/old/gstfdsrc.sgml:
2875         * docs/gst/tmpl/old/gstfilesink.sgml:
2876         * docs/gst/tmpl/old/gstfilesrc.sgml:
2877         * docs/gst/tmpl/old/gsthttpsrc.sgml:
2878         * docs/gst/tmpl/old/gstidentity.sgml:
2879         * docs/gst/tmpl/old/gstindexfactory.sgml:
2880         * docs/gst/tmpl/old/gstmarshal.sgml:
2881         * docs/gst/tmpl/old/gstmd5sink.sgml:
2882         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
2883         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
2884         * docs/gst/tmpl/old/gstpadtemplate.sgml:
2885         * docs/gst/tmpl/old/gstpipefilter.sgml:
2886         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
2887         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
2888         * docs/gst/tmpl/old/gstshaper.sgml:
2889         * docs/gst/tmpl/old/gstspider.sgml:
2890         * docs/gst/tmpl/old/gstspideridentity.sgml:
2891         * docs/gst/tmpl/old/gststatistics.sgml:
2892         * docs/gst/tmpl/old/gsttee.sgml:
2893         * docs/gst/tmpl/old/gsttimecache.sgml:
2894         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
2895         * docs/gst/tmpl/old/gstxmlregistry.sgml:
2896         * docs/gst/tmpl/old/gthread-cothreads.sgml:
2897         * docs/gst/tmpl/old/types.sgml:
2898           I didn't intend to add these or check them in.
2899
2900 2005-05-19  David Schleef  <ds@schleef.org>
2901
2902         * configure.ac: Use -no-common everywhere.  In a sane world, it
2903           would be the default in libtool, because without it, you can't
2904           build DLLs on Windows.
2905         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
2906         * docs/gst/gstreamer-sections.txt:
2907         * docs/gst/tmpl/gstcpu.sgml:
2908         * docs/gst/tmpl/gstdata.sgml:
2909         * docs/gst/tmpl/gstthread.sgml:
2910
2911 2005-05-19  David Schleef  <ds@schleef.org>
2912
2913         * gst/gstminiobject.c: (gst_value_set_mini_object),
2914         (gst_value_take_mini_object), (gst_value_get_mini_object):
2915         * gst/gstminiobject.h: Add GValue set/get functions.
2916
2917 2005-05-19  Wim Taymans  <wim@fluendo.com>
2918
2919         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
2920         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
2921         (gst_subbuffer_init), (gst_buffer_is_span_fast):
2922         * gst/gstbuffer.h:
2923         * gst/gstbus.c: (gst_bus_post):
2924         * gst/gstelement.c: (gst_element_get_random_pad):
2925         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
2926         Make subbufer unref the parent in finalize.
2927         some more debugging info.
2928
2929
2930 2005-05-19  Wim Taymans  <wim@fluendo.com>
2931
2932         * gst/base/gstbasesink.c: (gst_basesink_class_init),
2933         (gst_basesink_init), (gst_basesink_finalize),
2934         (gst_basesink_activate), (gst_basesink_change_state):
2935         Don't free preroll queue too early.
2936
2937 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2938
2939         * gst/Makefile.am:
2940         * gst/ROADMAP:
2941           Hi, I'm outdated. Please shoot me.
2942
2943 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2944
2945         * gst/gstpipeline.c: (gst_pipeline_send_event):
2946           Do not access variables after they have been deleted.
2947
2948 2005-05-19  Wim Taymans  <wim@fluendo.com>
2949
2950         * tools/gst-inspect.c: (print_plugin_features):
2951         A plugin feature does unfortunatly not use the
2952         object name yet...
2953
2954 2005-05-18  Wim Taymans  <wim@fluendo.com>
2955
2956         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
2957         Port _span() functions to new subbuffers.
2958
2959 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2960
2961         * gst/gstbin.c: (gst_bin_add_func):
2962           Fix clock settery in bins when adding kids after the clock has
2963           been selected.
2964
2965 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2966
2967         * gst/elements/gstidentity.c: (gst_identity_class_init):
2968           Workaround until signals support GstMiniObject.
2969
2970 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
2971
2972         * gst/gstbuffer.c:
2973         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
2974
2975 2005-05-18  Wim Taymans  <wim@fluendo.com>
2976
2977         * gst/base/Makefile.am:
2978         * gst/base/gstadapter.c: (gst_adapter_base_init),
2979         (gst_adapter_class_init), (gst_adapter_init),
2980         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
2981         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
2982         (gst_adapter_flush), (gst_adapter_available),
2983         (gst_adapter_available_fast):
2984         * gst/base/gstadapter.h:
2985         Ported and added adapter to the base classes.
2986
2987 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
2988
2989         * gst/gst.c:
2990         * gst/gstmessage.c:
2991           Make sure the class is reffed/unreffed once before threads can be
2992           used.  Fixes #304551.
2993
2994 2005-05-17  Wim Taymans  <wim@fluendo.com>
2995
2996         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
2997         (gst_basesink_chain_unlocked), (gst_basesink_activate):
2998         * gst/gstminiobject.c: (gst_mini_object_get_type),
2999         (gst_mini_object_free):
3000         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
3001         (gst_pad_push), (gst_pad_push_event):
3002         * gst/gstqueue.c: (gst_queue_change_state):
3003         Don't queue buffers in basesink when we are flushing.
3004         Unref buffer when flushing in basesink.
3005         Flush queue when going to READY
3006         Unref buffer when _push() returns an error.
3007         Don't free MiniObject instance when refcount is incremented
3008         in _finalize() so that we can recover objects.
3009
3010 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
3011
3012         * docs/manual/advanced-schedulers.xml:
3013         * docs/manual/appendix-checklist.xml:
3014         * docs/pwg/advanced-clock.xml:
3015         * docs/pwg/advanced-interfaces.xml:
3016         * docs/pwg/advanced-request.xml:
3017         * docs/pwg/advanced-types.xml:
3018         * docs/pwg/intro-preface.xml:
3019         * examples/plugins/example.c: (gst_example_get_type),
3020         (gst_example_class_init), (gst_example_chain),
3021         (gst_example_set_property), (gst_example_get_property),
3022         (gst_example_change_state), (plugin_init):
3023         * examples/plugins/example.h:
3024           small doc fixes
3025
3026 2005-05-17  Wim Taymans  <wim@fluendo.com>
3027
3028         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
3029         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
3030         * gst/gstqueue.c: (gst_queue_change_state):
3031         Clear queue when going to READY.
3032         Remove IN_SETCAPS flag too.
3033
3034 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
3035
3036         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
3037           Remove implicit cast from gboolean to GstElementStateReturn;
3038           make sure we still return failure in paused => ready case if
3039           the parent class fails to change state and our own stop 
3040           vfunc succeeds.
3041
3042 2005-05-17  Wim Taymans  <wim@fluendo.com>
3043
3044         * tools/gst-launch.c: (event_loop):
3045         Message was unreffed too soon.
3046
3047 2005-05-16  Andy Wingo  <wingo@pobox.com>
3048
3049         * gst/gstbin.c (sink_iterator_filter): Err... um...
3050
3051         * check/gst/gstbin.c (test_ghost_pads): New test for the
3052         ghosting-if-elements-not-in-same-bin behavior.
3053
3054 2005-05-16  David Schleef  <ds@schleef.org>
3055
3056         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
3057         accessing refcount directly.
3058
3059 2005-05-15  David Schleef  <ds@schleef.org>
3060
3061         * check/Makefile.am: remove GstData checks
3062         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
3063         * gst/Makefile.am: add miniobject, remove data
3064         * gst/gst.h: add miniobject, remove data
3065         * gst/gstdata.c: remove
3066         * gst/gstdata.h: remove
3067         * gst/gstdata_private.h: remove
3068         * gst/gsttypes.h: remove GstEvent and GstMessage
3069         * gst/gstelement.c: (gst_element_post_message): fix for API changes
3070         * gst/gstmarshal.list: change BOXED -> OBJECT
3071
3072         Implement GstMiniObject.
3073         * gst/gstminiobject.c:
3074         * gst/gstminiobject.h:
3075
3076         Modify to be subclasses of GstMiniObject.
3077         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
3078         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
3079         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
3080         (gst_subbuffer_get_type), (gst_subbuffer_init),
3081         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
3082         (gst_buffer_span):
3083         * gst/gstbuffer.h:
3084         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
3085         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
3086         (_gst_event_copy), (gst_event_new):
3087         * gst/gstevent.h:
3088         * gst/gstmessage.c: (_gst_message_initialize),
3089         (gst_message_get_type), (gst_message_class_init),
3090         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
3091         (gst_message_new), (gst_message_new_error),
3092         (gst_message_new_warning), (gst_message_new_tag),
3093         (gst_message_new_state_changed), (gst_message_new_application):
3094         * gst/gstmessage.h:
3095         * gst/gstprobe.c: (gst_probe_perform),
3096         (gst_probe_dispatcher_dispatch):
3097         * gst/gstprobe.h:
3098         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
3099         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
3100         (_gst_query_copy), (gst_query_new):
3101
3102         Update elements for GstData -> GstMiniObject changes
3103         * gst/gstquery.h:
3104         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
3105         (gst_queue_chain), (gst_queue_loop):
3106         * gst/elements/gstbufferstore.c:
3107         (gst_buffer_store_add_buffer_func),
3108         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
3109         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3110         (gst_fakesink_render):
3111         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
3112         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
3113         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
3114         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
3115         (gst_filesrc_create_read):
3116         * gst/elements/gstidentity.c: (gst_identity_class_init):
3117         * gst/elements/gsttypefindelement.c:
3118         (gst_type_find_element_src_event), (free_entry_buffers),
3119         (gst_type_find_element_handle_event):
3120         * libs/gst/dataprotocol/dataprotocol.c:
3121         (gst_dp_header_from_buffer):
3122         * libs/gst/dataprotocol/dataprotocol.h:
3123         * libs/gst/dataprotocol/dp-private.h:
3124
3125 2005-05-15  David Schleef  <ds@schleef.org>
3126
3127         * gst/elements/gstelements.c: Don't include headers that were
3128         just removed.
3129
3130 2005-05-15  David Schleef  <ds@schleef.org>
3131
3132         * gst/elements/Makefile.am: Remove some elements that don't
3133         need to be in the core (or even exist at all).
3134         * gst/elements/gstaggregator.c:
3135         * gst/elements/gstaggregator.h:
3136         * gst/elements/gstmd5sink.c:
3137         * gst/elements/gstmd5sink.h:
3138         * gst/elements/gstmultifilesrc.c:
3139         * gst/elements/gstmultifilesrc.h:
3140         * gst/elements/gstpipefilter.c:
3141         * gst/elements/gstpipefilter.h:
3142         * gst/elements/gstshaper.c:
3143         * gst/elements/gstshaper.h:
3144         * gst/elements/gststatistics.c:
3145         * gst/elements/gststatistics.h:
3146         * po/POTFILES.in: Remove above files.
3147
3148 2005-05-14  Andy Wingo  <wingo@pobox.com>
3149
3150         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
3151         so as to get the refs right.
3152         (sink_iterator_filter): New function, wraps bin_element_is_sink,
3153         unreffing objects that don't pass the filter.
3154
3155         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
3156         gst_element_set_bus.
3157         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
3158         normal cases, this will destroy the bus.
3159
3160         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
3161         object.
3162
3163         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
3164         has no sinks.
3165
3166 2005-05-13  Andy Wingo  <wingo@pobox.com>
3167
3168         * gst/gstutils.c (gst_element_link_pads): Instead of calling
3169         gst_pad_link, call pad_link_maybe_ghosting,
3170         (pad_link_maybe_ghosting): Links pads, making sure that the
3171         elements being linked are in the same bin.
3172         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
3173         Helpers for pad_link_maybe_ghosting.
3174
3175 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3176
3177         * configure.ac:
3178           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
3179
3180 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3181
3182         * docs/design/part-element-source.txt:
3183           Mention GstPushSrc
3184
3185 2005-05-12  Wim Taymans  <wim@fluendo.com>
3186
3187         * gst/base/gstbasesink.c: (gst_basesink_init),
3188         (gst_basesink_activate):
3189         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
3190         (gst_basesrc_is_seekable):
3191         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
3192         (bin_element_is_sink), (gst_bin_change_state):
3193         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3194         * gst/gstelement.h:
3195         Identify sinks by their flag to avoid overly complicated
3196         checks (fow now).
3197         Do state changes even for elements not reachable from the
3198         sinks.
3199         BaseSink is a sink now :)
3200         Some more debugging info in the basesrc.
3201
3202
3203 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3204
3205         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
3206           Implement _query on a bin, similar to _send_event.
3207
3208 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
3209
3210         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
3211           Discont event offset format should be GST_FORMAT_BYTES,
3212           not GST_FORMAT_TIME.
3213
3214 2005-05-12  Wim Taymans  <wim@fluendo.com>
3215
3216         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
3217         Same fix as Ronald's but without the signal. 
3218
3219 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3220
3221         * gst/gstutils.c: (gst_element_query_position):
3222           No, an element is not a pad.
3223
3224 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3225
3226         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
3227         (gst_bin_get_state):
3228           If a child is removed from a bin while we remove the child from
3229           the bin and while we're retrieving its state, signal this to the
3230           get_state function so we abort the wait (instead of waiting for
3231           a timeout) and can immediately re-iterate over all other elements.
3232
3233 2005-05-12  Wim Taymans  <wim@fluendo.com>
3234
3235         * gst/base/Makefile.am:
3236         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
3237         (gst_basesrc_start):
3238         * gst/base/gstbasesrc.h:
3239         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
3240         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
3241         (gst_pushsrc_init), (gst_pushsrc_create):
3242         * gst/base/gstpushsrc.h:
3243         Added is_seekable to BaseSrc
3244         Added simple PushSrc.
3245
3246 2005-05-11  Wim Taymans  <wim@fluendo.com>
3247
3248         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3249         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3250         (gst_element_link_pads), (gst_element_query_position),
3251         (gst_element_query_convert), (intersect_caps_func),
3252         (gst_pad_query_position), (gst_pad_query_convert):
3253         Fix refcounting in utils function.
3254         No point in trying to activate a pad when it's added, it could
3255         be added from the state change function and then we deadlock, the
3256         element has to decide what to do.
3257
3258 2005-05-10  Andy Wingo  <wingo@pobox.com>
3259
3260         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
3261         *all* the arguments.
3262
3263         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
3264         stream lock if it's a FLUSH_DONE; normal flushes don't get the
3265         lock (according to the docs -- if this is wrong change the docs).
3266
3267         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
3268         flush messages in the NULL state.
3269
3270         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
3271         message immediately and return.
3272         (gst_bus_set_flushing): New function. If a bus is flushing, it
3273         flushes out any queued messages and immediately unrefs new
3274         messages. This is so when an element goes to NULL, all of the
3275         unhandled messages coming from it can be freed, and their
3276         references to the element dropped. In other words: message source
3277         ref considered harmful :P
3278
3279         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
3280         we're finished with it.
3281
3282         * gst/gstmessage.c (gst_message_new_state_changed): 
3283
3284 2005-05-10  Wim Taymans  <wim@fluendo.com>
3285
3286         * gst/gstvalue.c: (gst_value_compare_flags),
3287         (gst_value_serialize_flags), (gst_value_deserialize_flags),
3288         (_gst_value_initialize):
3289         Added flags serialize/deserialize/compare code.
3290
3291 2005-05-09  Andy Wingo  <wingo@pobox.com>
3292
3293         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
3294         Intersect the peer's caps with our caps.
3295
3296 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3297
3298         * gst/base/gsttypefindhelper.c: (helper_find_peek):
3299         * gst/elements/gsttypefindelement.c: (find_peek):
3300           Handle negative offsets better. Fixes decodebin.
3301
3302 2005-05-09  Wim Taymans  <wim@fluendo.com>
3303
3304         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
3305         (gst_base_transform_event):
3306         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
3307         Implement accept_caps.
3308         Fix silly lock/unlock mismatch in base class.
3309
3310 2005-05-09  Wim Taymans  <wim@fluendo.com>
3311
3312         * docs/design/draft-push-pull.txt:
3313         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
3314         * gst/elements/gstfilesink.c: (gst_filesink_init),
3315         (gst_filesink_query):
3316         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3317         (gst_type_find_handle_src_query), (find_element_get_length):
3318         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
3319         * gst/gstelement.h:
3320         * gst/gstmessage.c:
3321         * gst/gstmessage.h:
3322         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
3323         (gst_real_pad_get_caps_unlocked),
3324         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
3325         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3326         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
3327         (gst_real_pad_dispose), (gst_real_pad_finalize),
3328         (gst_pad_load_and_link), (gst_pad_save_thyself),
3329         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
3330         (gst_pad_check_pull_range), (gst_pad_pull_range),
3331         (gst_pad_template_get_type), (gst_pad_template_class_init),
3332         (gst_pad_template_init), (gst_pad_template_dispose),
3333         (name_is_valid), (gst_static_pad_template_get),
3334         (gst_pad_template_new), (gst_static_pad_template_get_caps),
3335         (gst_pad_template_get_caps), (gst_pad_set_element_private),
3336         (gst_pad_get_element_private), (gst_pad_start_task),
3337         (gst_pad_pause_task), (gst_pad_stop_task),
3338         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
3339         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
3340         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
3341         (gst_ghost_pad_new):
3342         * gst/gstpad.h:
3343         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
3344         (gst_query_new_position), (gst_query_set_position),
3345         (gst_query_parse_position), (gst_query_new_convert),
3346         (gst_query_set_convert), (gst_query_parse_convert):
3347         * gst/gstquery.h:
3348         * gst/gstqueryutils.c:
3349         * gst/gstqueryutils.h:
3350         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3351         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3352         (gst_queue_handle_src_query):
3353         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3354         (gst_element_query_position), (gst_element_query_convert),
3355         (intersect_caps_func), (gst_pad_query_position),
3356         (gst_pad_query_convert):
3357         * gst/gstutils.h:
3358         * tools/gst-inspect.c: (print_pad_info):
3359         * tools/gst-xmlinspect.c: (print_element_info):
3360         Remove old query functions. Ported old code.
3361         Added position/convert helper functions to gstutils.
3362         Reordered gstpad.c code, grouping relevant things.
3363         Remove gst_message_new(), always need to speficy a specific
3364         message.
3365
3366
3367 2005-05-09  Andy Wingo  <wingo@pobox.com>
3368
3369         * gst/gstiterator.h: Add some includes.
3370
3371         * gst/gstqueryutils.h: Include more headers.
3372
3373         * gst/gstpad.h:
3374         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
3375         some uses of gst_pad_query.
3376
3377         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
3378         NULL out parameters.
3379         (gst_query_new_position): New proc, allocates a new position
3380         query.
3381
3382         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
3383         gstqueryutils.c to the build.
3384
3385         * gst/gststructure.c (gst_structure_set_valist): Implement with
3386         the generic G_VALUE_COLLECT.
3387         
3388 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
3389
3390         * gst/Makefile.am: (gst_headers):
3391         Added gstqueryutils.h to the list of headers to install, that was
3392         a 'nachty' move wingo :)
3393
3394 2005-05-06  Andy Wingo  <wingo@pobox.com>
3395
3396         * gst/gstquery.h
3397         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
3398         GstData, init a memchunk.
3399         (standard_definitions): Add a few query types, deprecate a few.
3400         (gst_query_get_type): New proc.
3401         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
3402         implementation.
3403         (gst_query_new_application, gst_query_get_structure): New public
3404         procs.
3405
3406         * docs/design/draft-query.txt: Removed LINKS from the query types,
3407         because all the rest can be dispatched to other pads -- seemed
3408         ugly to have a query that couldn't be dispatched. internal_links
3409         is fine as a pad method.
3410
3411         * gst/gstpad.h: Add query2 as a pad method, add the new functions
3412         in gstpad.c, but maintain binary compatibility for the moment.
3413         Will fix before 0.9 is out.
3414
3415         * gst/gstqueryutils.c: 
3416         * gst/gstqueryutils.h: New files, implement 3 methods for each
3417         query type: parse_query, parse_response, and set. Probably need an
3418         allocator as well.
3419
3420         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
3421
3422         * gst/elements/gstfilesink.c (gst_filesink_query2):
3423         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
3424         query_types, and formats methods.
3425
3426         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
3427         (gst_pad_set_query2_function): New functions.
3428         (gst_real_pad_init): Set query2_default as the default query2
3429         function. Basically just dispatches to internally linked pads.
3430
3431         Needs review!
3432         
3433         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
3434         without using the atomic operations. Only one thread can possibly
3435         be accessing the data at this point. Changed so as to avoid
3436         gst_atomic operations.
3437
3438 2005-05-06  Wim Taymans  <wim@fluendo.com>
3439
3440         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
3441         Also set caps if we use the fallback buffer alloc.
3442
3443 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
3444
3445         * docs/gst/Makefile.am:
3446         * docs/gst/gstreamer-docs.sgml:
3447         * docs/gst/gstreamer-sections.txt:
3448         * docs/gst/tmpl/gstatomic.sgml:
3449         * docs/gst/tmpl/gstmemchunk.sgml:
3450         * testsuite/elements/struct_i386.h:
3451         * win32/GStreamer.vcproj:
3452         * win32/Makefile:
3453           Purge GstAtomic stuff from docs and win32 makefiles as well
3454
3455 2005-05-06  Wim Taymans  <wim@fluendo.com>
3456
3457         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
3458         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
3459         * gst/gstpad.c: (gst_pad_peer_get_caps):
3460         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3461         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3462         (gst_queue_src_activate), (gst_queue_change_state):
3463         * gst/gstqueue.h:
3464         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3465         (intersect_caps_func):
3466         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
3467         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
3468         Some fixes for the peer_get_caps() change.
3469
3470 2005-05-06  Wim Taymans  <wim@fluendo.com>
3471
3472         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
3473         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
3474         (gst_basesink_activate):
3475         Actually do something with error codes returned from the push
3476         functions.
3477
3478 2005-05-06  Wim Taymans  <wim@fluendo.com>
3479
3480         * docs/design/part-element-sink.txt:
3481         * docs/design/part-element-source.txt:
3482         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3483         (gst_basesink_event), (gst_basesink_activate):
3484         * gst/base/gstbasesink.h:
3485         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
3486         (gst_basesrc_activate):
3487         * gst/base/gstbasesrc.h:
3488         * gst/gstelement.c: (gst_element_pads_activate):
3489         Some more documentation.
3490         Fixed scheduling decision in _pads_activate().
3491
3492 2005-05-05  Andy Wingo  <wingo@pobox.com>
3493
3494         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
3495         the test suite.
3496
3497 2005-05-05  Wim Taymans  <wim@fluendo.com>
3498
3499         * gst/base/Makefile.am:
3500         * gst/base/gstbasesink.h:
3501         * gst/base/gstbasesrc.c: (gst_basesrc_init),
3502         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
3503         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
3504         (gst_collectpads_class_init), (gst_collectpads_init),
3505         (gst_collectpads_finalize), (gst_collectpads_new),
3506         (gst_collectpads_set_function), (gst_collectpads_add_pad),
3507         (find_pad), (gst_collectpads_remove_pad),
3508         (gst_collectpads_is_active), (gst_collectpads_collect),
3509         (gst_collectpads_collect_range), (gst_collectpads_start),
3510         (gst_collectpads_stop), (gst_collectpads_peek),
3511         (gst_collectpads_pop), (gst_collectpads_available),
3512         (gst_collectpads_read), (gst_collectpads_flush),
3513         (gst_collectpads_chain):
3514         * gst/base/gstcollectpads.h:
3515         * gst/elements/Makefile.am:
3516         * gst/elements/gstelements.c:
3517         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3518         (gst_fakesink_get_times), (gst_fakesink_event),
3519         (gst_fakesink_preroll), (gst_fakesink_render):
3520         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
3521         (gst_filesink_init), (gst_filesink_set_location),
3522         (gst_filesink_open_file), (gst_filesink_close_file),
3523         (gst_filesink_pad_query), (gst_filesink_event),
3524         (gst_filesink_render), (gst_filesink_change_state):
3525         * gst/elements/gstfilesink.h:
3526         Added object to help in making collect pad based elements.
3527         Ported filesink.
3528         Make event function in sink baseclass return gboolean.
3529
3530 2005-05-05  Wim Taymans  <wim@fluendo.com>
3531
3532         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
3533         (gst_bin_get_by_name):
3534         * gst/gstbuffer.h:
3535         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
3536         (gst_clock_finalize):
3537         * gst/gstdata.c: (gst_data_replace):
3538         * gst/gstdata.h:
3539         * gst/gstelement.c: (gst_element_request_pad),
3540         (gst_element_pads_activate):
3541         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
3542         (gst_object_unref):
3543         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3544         (gst_pad_set_checkgetrange_function),
3545         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
3546         (gst_pad_check_pull_range), (gst_pad_pull_range),
3547         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3548         (gst_pad_pause_task), (gst_pad_stop_task):
3549         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3550         (gst_element_request_pad), (gst_pad_proxy_getcaps):
3551         Fix name lookup in GstBin.
3552         Added _data_replace() function and _buffer_replace()
3553         Use finalize method to clean up clock.
3554         Fix refcounting on request pads.
3555         Fix pad schedule mode error.
3556         Some more object refcounting debug info,
3557
3558
3559 2005-05-04  Andy Wingo <wingo@pobox.com>
3560
3561         * check/Makefile.am:
3562         * docs/gst/tmpl/gstatomic.sgml:
3563         * docs/gst/tmpl/gstplugin.sgml:
3564         * gst/base/gstbasesink.c: (gst_basesink_activate):
3565         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
3566         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
3567         (gst_basesrc_query), (gst_basesrc_set_property),
3568         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
3569         (gst_basesrc_activate):
3570         * gst/base/gstbasesrc.h:
3571         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
3572         (gst_base_transform_src_activate):
3573         * gst/elements/gstelements.c:
3574         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3575         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
3576         * gst/elements/gsttee.c: (gst_tee_sink_activate):
3577         * gst/elements/gsttypefindelement.c: (find_element_get_length),
3578         (gst_type_find_element_checkgetrange),
3579         (gst_type_find_element_activate):
3580         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
3581         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
3582         (gst_caps_load_thyself):
3583         * gst/gstelement.c: (gst_element_pads_activate),
3584         (gst_element_save_thyself), (gst_element_restore_thyself):
3585         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
3586         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
3587         * gst/gstpad.h:
3588         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
3589         (gst_xml_parse_file), (gst_xml_parse_memory),
3590         (gst_xml_get_element), (gst_xml_make_element):
3591         * gst/indexers/gstfileindex.c: (gst_file_index_load),
3592         (_file_index_id_save_xml), (gst_file_index_commit):
3593         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
3594         (read_enum), (load_pad_template), (load_feature), (load_plugin),
3595         (load_paths):
3596         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
3597         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
3598         * tools/gst-complete.c: (main):
3599         * tools/gst-compprep.c: (main):
3600         * tools/gst-inspect.c: (print_element_properties_info):
3601         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
3602         * tools/gst-xmlinspect.c: (print_element_properties):
3603         GCC 4 fixen.
3604         
3605 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
3606
3607         * gst/gstplugin.c: (gst_plugin_check_module),
3608         (gst_plugin_check_file), (gst_plugin_load_file):
3609             apply patch from #172526 to make register work on MacOSX
3610
3611 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3612
3613         * docs/gst/tmpl/gstconfig.sgml:
3614         * gst/gstconfig.h.in:
3615           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
3616         * testsuite/debug/printf_extension.c: (main):
3617           Do not use GST_PTR_FORMAT on pointers to types with
3618           sizeof < sizeof(gpointer).  Fixes test on 64-bit
3619         * testsuite/elements/property.h:
3620           use correct printf format
3621
3622 2005-05-02  Wim Taymans  <wim@fluendo.com>
3623
3624         * docs/design/draft-push-pull.txt:
3625         * docs/design/draft-query.txt:
3626         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
3627         (gst_basesrc_start):
3628         Added draft for new query API.
3629         Added draft for better selecting scheduling methods.
3630         Make basesrc ignore length if the subclass does not support
3631         it.
3632
3633 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3634
3635         * gst/Makefile.am:
3636           possible fixes for automake-1.5 - _LIBADD is reserved
3637
3638 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3639
3640         * docs/faq/Makefile.am:
3641         * docs/manual/Makefile.am:
3642         * docs/manuals.mak:
3643         * docs/pwg/Makefile.am:
3644         * gst/Makefile.am:
3645           possible fixes for automake-1.5
3646
3647 2005-04-28  Wim Taymans  <wim@fluendo.com>
3648
3649         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3650         (gst_basesink_pad_getcaps), (gst_basesink_init),
3651         (gst_basesink_do_sync):
3652         * gst/gstclock.c: (gst_clock_entry_new):
3653         * gst/gstevent.c: (gst_event_discont_get_value):
3654         * gst/gstpipeline.c: (pipeline_bus_handler),
3655         (gst_pipeline_change_state):
3656         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
3657         Better debugging of clocking info.
3658         Allow NULL values when getting discont values.
3659
3660 2005-04-27  Wim Taymans  <wim@fluendo.com>
3661
3662         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
3663         * check/gst/gstpad.c: (gst_pad_suite):
3664         Increase timeout for checks.
3665
3666 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3667
3668         * check/Makefile.am:
3669           fix the broken rule for cleanup.  Apparently this rule is
3670           only needed on FC2, so maybe this warrants further autotool
3671           inspection.
3672
3673 2005-04-26  Wim Taymans  <wim@fluendo.com>
3674
3675         * gst/gsttrashstack.h:
3676         Ooohh. a nasty one! After having a failed pop() from the stack,
3677         it's possible that the stack is empty. In that case, don't
3678         follow the NULL pointer.
3679
3680 2005-04-25  Wim Taymans  <wim@fluendo.com>
3681
3682         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3683         (gst_pad_set_checkgetrange_function),
3684         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
3685         (gst_pad_check_pull_range), (gst_pad_pull_range),
3686         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3687         (gst_pad_pause_task), (gst_pad_stop_task):
3688         * gst/gstplugin.c: (gst_plugin_load):
3689         * gst/gstplugin.h:
3690         Remove gst_library_load as it does more harm than good with
3691         the new g_module flags.
3692         Revert bogus caps template check in pad linking, pad caps
3693         are important when linking not the template, which is more
3694         general than the current caps.
3695
3696 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3697
3698         * gst/autoplug/.cvsignore:
3699         * gst/autoplug/Makefile.am:
3700         * gst/autoplug/gstsearchfuncs.c:
3701         * gst/autoplug/gstsearchfuncs.h:
3702         * gst/autoplug/gstspider.c:
3703         * gst/autoplug/gstspider.h:
3704         * gst/autoplug/gstspideridentity.c:
3705         * gst/autoplug/gstspideridentity.h:
3706         * gst/autoplug/spidertest.c:
3707           Die, spider, die.
3708
3709 2005-04-25  Wim Taymans  <wim@fluendo.com>
3710
3711         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3712         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3713         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
3714         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
3715         * gst/gstpad.h:
3716         Added stubs for unimplemented functions. 
3717
3718 2005-04-24  David Schleef  <ds@schleef.org>
3719
3720         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
3721         please fix.
3722
3723 2005-04-24  David Schleef  <ds@schleef.org>
3724
3725         Convert everything from GstAtomicInt to g_atomic_int_*, and
3726         remove gstatomic.
3727         * gst/Makefile.am:
3728         * gst/gstatomic.c:
3729         * gst/gstatomic.h:
3730         * gst/gstatomic_impl.h:
3731         * gst/gstbuffer.c:
3732         * gst/gstcaps.c:
3733         * gst/gstcaps.h:
3734         * gst/gstclock.c:
3735         * gst/gstclock.h:
3736         * gst/gstdata.c:
3737         * gst/gstdata.h:
3738         * gst/gstdata_private.h:
3739         * gst/gstevent.c:
3740         * gst/gstinfo.c:
3741         * gst/gstinfo.h:
3742         * gst/gstmessage.c:
3743         * gst/gstobject.c:
3744         * gst/gstobject.h:
3745         * gst/gststructure.c:
3746         * gst/gststructure.h:
3747         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
3748         * gst/gstutils.h:
3749
3750 2005-04-24  David Schleef  <ds@schleef.org>
3751
3752         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
3753         make the regressions tests work.  Remove some code that is no
3754         longer true.
3755         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
3756         Disable warning for pads without templates.
3757
3758 2005-04-24  David Schleef  <ds@schleef.org>
3759
3760         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
3761         functions that handle filtered links.
3762         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
3763         removed functions.
3764         * gst/gstutils.c: Fix/remove utility functions that handle
3765         filtered caps.
3766         * gst/gstutils.h:
3767         * gst/gstvalue.c: Add serialization/deserialization of caps
3768         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
3769         requires fixing so that the filter caps notation creates
3770         a capsfilter element and sets the filter_caps property.  I
3771         think everyone probably wants to keep the shorthand notation.
3772         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
3773         * docs/gst/tmpl/gstpad.sgml:
3774
3775         * gst/elements/gstelements.c: Register capsfilter element.
3776         * gst/Makefile.am: fix spacing
3777         * docs/random/ds/0.9-suggested-changes: random
3778
3779 2005-04-23  David Schleef  <ds@schleef.org>
3780
3781         * gst/elements/Makefile.am:
3782         * gst/elements/gstcapsfilter.c: New element that acts like an
3783         identity, but filters caps.  Will eventually replace filtered
3784         caps in pad linking.
3785         * gst/gstutils.c: (gst_element_create_all_pads): New function
3786         to create all the ALWAYS pads that are registered with an
3787         element class.  This functionality should eventually be
3788         merged in with GstElement initialization.
3789         * gst/gstutils.h:
3790         * testsuite/trigger/README: part of trigger test code that should
3791         have been checked in a long time ago.
3792
3793 2005-04-23  David Schleef  <ds@schleef.org>
3794
3795         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
3796         needed with new versions of libtool (nobody will confirm this),
3797         and hard to carry around.
3798         * gst/autoplug/Makefile.am:
3799         * gst/base/Makefile.am:
3800         * gst/elements/Makefile.am:
3801         * gst/indexers/Makefile.am:
3802         * gst/schedulers/Makefile.am:
3803         * libs/gst/bytestream/Makefile.am:
3804         * libs/gst/control/Makefile.am:
3805         * libs/gst/dataprotocol/Makefile.am:
3806         * libs/gst/getbits/Makefile.am:
3807
3808 2005-04-21  Wim Taymans  <wim@fluendo.com>
3809
3810         * docs/design/draft-push-pull.txt:
3811         * docs/design/part-MT-refcounting.txt:
3812         * docs/design/part-TODO.txt:
3813         * docs/design/part-caps.txt:
3814         * docs/design/part-events.txt:
3815         * docs/design/part-gstbus.txt:
3816         * docs/design/part-gstpipeline.txt:
3817         * docs/design/part-messages.txt:
3818         * docs/design/part-push-pull.txt:
3819         * docs/design/part-query.txt:
3820         Some more docs.
3821
3822 2005-04-21  Wim Taymans  <wim@fluendo.com>
3823
3824         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
3825         (gst_message_new), (gst_message_new_error),
3826         (gst_message_new_warning), (gst_message_new_tag),
3827         (gst_message_new_state_changed), (gst_message_new_application),
3828         (gst_message_get_structure):
3829         * gst/gstmessage.h:
3830         * gst/gststructure.c: (gst_structure_set_parent_refcount),
3831         (gst_structure_copy_conditional):
3832         Use parent refcount in GstMessage to ensure GstStructure
3833         consistency.
3834         Cleaned up headers a bit.
3835         
3836
3837 2005-04-20  Wim Taymans  <wim@fluendo.com>
3838
3839         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3840         (gst_basesink_pad_getcaps), (gst_basesink_init),
3841         (gst_basesink_chain_unlocked):
3842         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
3843         (gst_type_find_helper):
3844         * gst/elements/gsttypefindelement.c:
3845         (gst_type_find_element_have_type), (gst_type_find_element_init),
3846         (stop_typefinding), (gst_type_find_element_handle_event),
3847         (find_suggest), (gst_type_find_element_chain),
3848         (gst_type_find_element_checkgetrange),
3849         (gst_type_find_element_getrange), (do_typefind),
3850         (gst_type_find_element_activate):
3851         * gst/gstbuffer.c: (_gst_buffer_sub_free),
3852         (gst_buffer_default_free), (gst_buffer_default_copy),
3853         (gst_buffer_set_caps):
3854         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
3855         (gst_caps_replace):
3856         * gst/gstmessage.c: (gst_message_new),
3857         (gst_message_new_state_changed):
3858         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3859         (gst_pad_set_checkgetrange_function),
3860         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
3861         (gst_pad_set_caps), (gst_pad_check_pull_range),
3862         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
3863         * gst/gstpad.h:
3864         * gst/gsttypefind.c: (gst_type_find_register):
3865         Make gst_caps_replace() work like other _replace() functions.
3866         Use _caps_replace() where possible.
3867         Make sure _message_new() initialises its field.
3868         Add gst_static_pad_template_get_caps()
3869
3870
3871 2005-04-18  Andy Wingo  <wingo@pobox.com>
3872
3873         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
3874         on the peer, not the pad. I think that was a typo. Pass an extra
3875         arg to see if random access is possible. Activate the pads as
3876         PULL_RANGE if possible.
3877
3878         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
3879
3880         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
3881         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
3882         to PROP_....
3883
3884 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3885
3886         * docs/faq/using.xml:
3887           Add note on gstreamer-properties (#154996).
3888
3889 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3890
3891         * docs/random/bbb/optional-properties:
3892           Some analysis on optional properties.
3893
3894 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3895
3896         * docs/gst/tmpl/gstelementfactory.sgml:
3897         * gst/gstelement.h:
3898         * gst/gstelementfactory.c: (gst_element_factory_init),
3899         (gst_element_factory_cleanup), (gst_element_register),
3900         (__gst_element_factory_add_static_pad_template),
3901         (gst_element_factory_get_static_pad_templates),
3902         (gst_element_factory_can_src_caps),
3903         (gst_element_factory_can_sink_caps):
3904         * gst/registries/Makefile.am:
3905         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
3906         (gst_xml_registry_class_init), (gst_xml_registry_init),
3907         (gst_xml_registry_new), (gst_xml_registry_set_property),
3908         (gst_xml_registry_get_property), (get_time), (make_dir),
3909         (gst_xml_registry_get_perms_func),
3910         (plugin_times_older_than_recurse), (plugin_times_older_than),
3911         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
3912         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
3913         (add_to_char_array), (read_string), (read_uint), (read_enum),
3914         (load_pad_template), (load_feature), (load_plugin), (load_paths),
3915         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
3916         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
3917         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
3918         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
3919         (gst_xml_registry_rebuild):
3920         * gst/registries/gstlibxmlregistry.h:
3921         * tools/gst-compprep.c: (main):
3922         * tools/gst-inspect.c: (print_pad_templates_info):
3923         * tools/gst-xmlinspect.c: (print_element_info):
3924           Use libxml2 for registry parsing, use staticpadtemplates in
3925           elementfactories. Makes gst_init() +/- 10x faster.
3926
3927 2005-04-12  Wim Taymans  <wim@fluendo.com>
3928
3929         * gst/base/Makefile.am:
3930         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3931         (gst_basesink_pad_getcaps), (gst_basesink_init),
3932         (gst_basesink_event), (gst_basesink_change_state):
3933         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3934         (gst_basesrc_init), (gst_basesrc_query),
3935         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3936         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3937         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3938         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3939         (gst_basesrc_stop), (gst_basesrc_activate),
3940         (gst_basesrc_change_state):
3941         * gst/base/gsttypefindhelper.c: (helper_find_peek),
3942         (helper_find_suggest), (gst_type_find_helper):
3943         * gst/base/gsttypefindhelper.h:
3944         * gst/elements/Makefile.am:
3945         * gst/elements/gstelements.c:
3946         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3947         (gst_fakesink_get_times), (gst_fakesink_event),
3948         (gst_fakesink_preroll), (gst_fakesink_render):
3949         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3950         (gst_fakesrc_init), (gst_fakesrc_event_handler),
3951         (gst_fakesrc_get_property), (gst_fakesrc_create),
3952         (gst_fakesrc_start), (gst_fakesrc_stop):
3953         * gst/elements/gstfakesrc.h:
3954         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
3955         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3956         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3957         (gst_filesrc_create_read), (gst_filesrc_create),
3958         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
3959         (gst_filesrc_start):
3960         * gst/elements/gsttypefindelement.c:
3961         (gst_type_find_element_have_type), (gst_type_find_element_init),
3962         (start_typefinding), (stop_typefinding), (push_buffer_store),
3963         (gst_type_find_element_handle_event),
3964         (gst_type_find_element_chain),
3965         (gst_type_find_element_checkgetrange),
3966         (gst_type_find_element_getrange), (do_typefind),
3967         (gst_type_find_element_activate),
3968         (gst_type_find_element_change_state):
3969         * gst/elements/gsttypefindelement.h:
3970         * gst/gstpipeline.c: (pipeline_bus_handler):
3971         Added typefind helper.
3972         Small preroll fix in the base sink.
3973         Disable typefind code in basesrc.
3974         Crude port of typefindelement.
3975         Fakesrc cleanups.
3976
3977
3978 2005-04-11  Wim Taymans  <wim@fluendo.com>
3979
3980         * check/gst/gstbus.c: (gstbus_suite):
3981         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
3982         * check/gstcheck.h:
3983           Fix up the timeout so that the test does not fail.
3984
3985 2005-04-06  Wim Taymans  <wim@fluendo.com>
3986
3987         * gst/base/README:
3988         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3989         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
3990         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3991         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3992         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3993         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3994         (gst_basesrc_stop), (gst_basesrc_activate),
3995         (gst_basesrc_change_state), (basesrc_find_peek),
3996         (basesrc_find_suggest), (gst_basesrc_type_find):
3997         * gst/base/gstbasesrc.h:
3998         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
3999         (gst_filesrc_class_init), (gst_filesrc_init),
4000         (gst_filesrc_finalize), (gst_filesrc_set_location),
4001         (gst_filesrc_set_property), (gst_filesrc_get_property),
4002         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
4003         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
4004         (gst_filesrc_create_read), (gst_filesrc_create),
4005         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
4006         * gst/elements/gstfilesrc.h:
4007         * gst/gstelement.c: (gst_element_get_state_func),
4008         (gst_element_lost_state), (gst_element_pads_activate):
4009         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4010         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
4011         (gst_pad_pull_range):
4012         * gst/gstpad.h:
4013         More work on the generic source base class, implement seeking,
4014         query.
4015         Make filesrc extend the base source class.
4016         Added gst_pad_set_checkgetrange_function to GstPad.
4017
4018 2005-04-06  Andy Wingo  <wingo@pobox.com>
4019
4020         * pkgconfig/gstreamer-base.pc.in:
4021         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
4022
4023         * pkgconfig/Makefile.am:
4024         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
4025
4026 2005-04-04  Wim Taymans  <wim@fluendo.com>
4027
4028         * gst/base/Makefile.am:
4029         * gst/base/README:
4030         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4031         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4032         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4033         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
4034         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4035         (gst_basesrc_base_init), (gst_basesrc_class_init),
4036         (gst_basesrc_init), (gst_basesrc_get_formats),
4037         (gst_basesrc_get_query_types), (gst_basesrc_query),
4038         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
4039         (gst_basesrc_set_property), (gst_basesrc_get_property),
4040         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
4041         (gst_basesrc_loop), (gst_basesrc_activate),
4042         (gst_basesrc_change_state):
4043         * gst/base/gstbasesrc.h:
4044         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
4045         (gst_fakesrc_class_init), (gst_fakesrc_init),
4046         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
4047         (gst_fakesrc_get_property), (gst_fakesrc_create):
4048         * gst/elements/gstfakesrc.h:
4049         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
4050         (gst_filesrc_open_file), (gst_filesrc_loop),
4051         (gst_filesrc_activate), (filesrc_find_peek),
4052         (gst_filesrc_type_find):
4053         Made base source class, make fakesrc extend it.
4054         Add comments to basesink class.
4055         Some filesrc cleanup.
4056
4057 2005-03-31  David Schleef  <ds@schleef.org>
4058
4059         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
4060         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
4061         expected to link against libgstreamer.
4062         * gst/base/Makefile.am: link against libgstreamer
4063         * gst/elements/Makefile.am: same
4064
4065 2005-03-31  Andy Wingo  <wingo@pobox.com>
4066
4067         * tests/instantiate/Makefile.am:
4068         * tests/instantiate/caps.c: Add test to test speed of caps copy
4069         and free.
4070
4071         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
4072         GMemChunk to be fair.
4073
4074         * gst/gsttrashstack.h: Remove warning about using the fallback
4075         trash stack implementation, it's still faster than malloc.
4076
4077 2005-03-30  Andy Wingo  <wingo@pobox.com>
4078
4079         * tests/complexity.c: Add a copyright.
4080
4081 2005-03-31  Wim Taymans  <wim@fluendo.com>
4082
4083         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
4084         (gst_base_transform_class_init), (gst_base_transform_init),
4085         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
4086         (gst_base_transform_get_property),
4087         (gst_base_transform_sink_activate),
4088         (gst_base_transform_src_activate),
4089         (gst_base_transform_change_state):
4090         * gst/base/gstbasetransform.h:
4091         * gst/elements/gstidentity.c: (gst_identity_class_init),
4092         (gst_identity_event), (gst_identity_check_perfect),
4093         (gst_identity_transform), (gst_identity_start),
4094         (gst_identity_stop):
4095         Added start/stop methods to transform base class so subclasses 
4096         don't need to deal with state changes even.
4097
4098 2005-03-31  Wim Taymans  <wim@fluendo.com>
4099
4100         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
4101         (gst_event_new_discontinuous), (gst_event_discont_get_value):
4102         * gst/gstevent.h:
4103         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4104         (gst_pad_pull_range):
4105         Added rate to the discont event to prepare for variable speed
4106         and reverse playback.
4107
4108 2005-03-29  David Schleef  <ds@schleef.org>
4109
4110         * configure.ac:
4111         * testsuite/trigger/Makefile.am:
4112         * testsuite/trigger/trigger.c: A little example program to show
4113         how trigger-based elements can work.
4114
4115 2005-03-29  Wim Taymans  <wim@fluendo.com>
4116
4117         * gst/base/Makefile.am:
4118         * gst/base/README:
4119         * gst/base/gstbasesink.c: (gst_basesink_get_type),
4120         (gst_basesink_base_init), (gst_basesink_class_init),
4121         (gst_basesink_pad_getcaps), (gst_basesink_init),
4122         (gst_basesink_activate), (gst_basesink_change_state):
4123         * gst/base/gstbasesink.h:
4124         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
4125         (gst_base_transform_base_init), (gst_base_transform_finalize),
4126         (gst_base_transform_class_init), (gst_base_transform_init),
4127         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
4128         (gst_base_transform_event), (gst_base_transform_getrange),
4129         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
4130         (gst_base_transform_set_property),
4131         (gst_base_transform_get_property),
4132         (gst_base_transform_sink_activate),
4133         (gst_base_transform_src_activate),
4134         (gst_base_transform_change_state):
4135         * gst/base/gstbasetransform.h:
4136         * gst/elements/gstidentity.c: (gst_identity_finalize),
4137         (gst_identity_class_init), (gst_identity_init),
4138         (gst_identity_event), (gst_identity_check_perfect),
4139         (gst_identity_transform), (gst_identity_set_property),
4140         (gst_identity_get_property), (gst_identity_change_state):
4141         * gst/elements/gstidentity.h:
4142         * gst/gstelement.c: (gst_element_get_state_func),
4143         (gst_element_lost_state), (gst_element_pads_activate):
4144         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4145         (gst_pad_check_pull_range), (gst_pad_pull_range):
4146         * gst/gstpad.h:
4147         Simplify pad activation.
4148         Added function to check if pull_range can be performed.
4149         Error out when pulling inactive or flushing pads.
4150         Removed const from refcounted types as it does not make sense.
4151         Simplify pad templates in basesink
4152         Added base class for simple 1-to-1 transforms.
4153         Make identity subclass the base transform.
4154
4155 2005-03-29  Andy Wingo  <wingo@pobox.com>
4156
4157         * docs/libs/gstreamer-libs-overrides.txt: 
4158         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
4159         really don't understand what's going on, but like whatever. I want
4160         green buildbot!
4161
4162         * docs/gst/Makefile.am:
4163         * docs/libs/Makefile.am: Dist the overrides files.
4164
4165         * check/Makefile.am (clean-local): Remove .libs directories.
4166
4167         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
4168         elements to EXTRA_DIST, so po/ files are happy.
4169
4170         * po/POTFILES.in: Er, remove it here.
4171
4172         * po/POTFILES: Remove gstspider.c.
4173
4174         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
4175
4176         * docs/libs/gstreamer-libs-docs.sgml: 
4177         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
4178         bytestream.
4179
4180         * tests/complexity.c (main): Set the length of the preroll queue
4181         on the sinks to prevent a lockup.
4182
4183         * libs/gst/dataprotocol/Makefile.am: 
4184         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
4185         the same as the one in check/gst-libs/gdp.c.
4186
4187         * po/, docs/gst/: Commit automatic changes to docs and po files.
4188
4189         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
4190         the versioned libgstbase.
4191
4192         * check/Makefile.am: Depend on an unversioned gst-register, seems
4193         to make autoconf happier.
4194
4195         * gst/base/Makefile.am: Make libgstbase a versioned lib.
4196
4197 2005-03-28  Wim Taymans  <wim@fluendo.com>
4198
4199         * configure.ac:
4200         * docs/design/part-gstelement.txt:
4201         * docs/design/part-negotiation.txt:
4202         * docs/design/part-preroll.txt:
4203         * docs/design/part-scheduling.txt:
4204         * docs/design/part-states.txt:
4205         * gst/Makefile.am:
4206         * gst/base/Makefile.am:
4207         * gst/base/README:
4208         * gst/base/gstbasesink.c: (gst_basesink_get_template),
4209         (gst_basesink_base_init), (gst_basesink_class_init),
4210         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4211         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4212         (gst_basesink_set_pad_functions),
4213         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
4214         (gst_basesink_set_property), (gst_basesink_get_property),
4215         (gst_base_sink_get_template), (gst_base_sink_get_caps),
4216         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
4217         (gst_basesink_preroll_queue_push),
4218         (gst_basesink_preroll_queue_empty),
4219         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
4220         (gst_basesink_event), (gst_basesink_get_times),
4221         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
4222         (gst_basesink_chain_unlocked), (gst_basesink_chain),
4223         (gst_basesink_loop), (gst_basesink_activate),
4224         (gst_basesink_change_state):
4225         * gst/base/gstbasesink.h:
4226         * gst/elements/Makefile.am:
4227         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
4228         (gst_fakesink_class_init), (gst_fakesink_init),
4229         (gst_fakesink_set_property), (gst_fakesink_get_property),
4230         (gst_fakesink_get_times), (gst_fakesink_event),
4231         (gst_fakesink_preroll), (gst_fakesink_render),
4232         (gst_fakesink_change_state):
4233         * gst/elements/gstfakesink.h:
4234         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4235         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
4236         * gst/gstelement.c: (gst_element_add_pad),
4237         (gst_element_get_state_func), (gst_element_abort_state),
4238         (gst_element_commit_state), (gst_element_lost_state),
4239         (gst_element_set_state), (gst_element_pads_activate):
4240         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
4241         * gst/gstpipeline.c: (gst_pipeline_send_event),
4242         (gst_pipeline_change_state):
4243         Added state change code.
4244         Added/updated docs.
4245         Added sink base class, make fakesink extend the base class.
4246         Small cleanups in GstPipeline.
4247
4248 2005-03-26  David Schleef  <ds@schleef.org>
4249
4250         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
4251         is broken and should be implemented in a different library.
4252         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
4253         * gst/gst.h: remove gstcpu.h
4254         * gst/gstcpu.c: remove
4255         * gst/gstcpu.h: remove
4256         * gst/Makefile.am.future: Remove this file.  It's ancient.
4257
4258 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4259
4260         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4261         (gst_bin_send_event):
4262           Add default event/set_manager handlers. The set_manager handler
4263           takes care that the manager is distributed over kids that were
4264           already in the bin before the manager was set. The event handler
4265           is a utility virtual function that sends the event over all sinks,
4266           so that gst_element_send_event (bin, event); has the expected
4267           behaviour.
4268         * gst/gstpad.c: (gst_pad_event_default):
4269           Re-install default event handling for discontinuities, so that
4270           seeking works without requiring hacks in applications or extra
4271           code in sinks.
4272         * gst/gstpipeline.c: (gst_pipeline_class_init),
4273         (gst_pipeline_send_event):
4274           Half hack, half utility: set a pipeline to PAUSED for seek events,
4275           since that is the only way we can guarantee a/v sync. Means that
4276           you can do gst_element_seek (pipeline, method, pos); on a pipeline
4277           and it "just works".
4278
4279 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4280
4281         * gst/gstpipeline.c: (gst_pipeline_use_clock):
4282           Lock/unlock mismatch.
4283
4284 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
4285
4286         * docs/faq/gst-uninstalled:
4287           add gst-plugins-base
4288         * docs/gst/Makefile.am:
4289           don't error out until docs are fixed
4290         * docs/gst/gstreamer.types:
4291           remove thread
4292
4293 2005-03-22  Wim Taymans  <wim@fluendo.com>
4294
4295         * check/Makefile.am:
4296         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
4297         * gst/gststructure.c: (gst_structure_set_valist),
4298         (gst_structure_copy_conditional):
4299         Activated more tests.
4300         Added message test.
4301         Added G_TYPE_POINTER to GstStructure.
4302         
4303
4304 2005-03-22  Wim Taymans  <wim@fluendo.com>
4305
4306         * docs/design/part-TODO.txt:
4307         * docs/design/part-events.txt:
4308         * docs/design/part-gstbin.txt:
4309         * docs/design/part-gstbus.txt:
4310         * docs/design/part-gstpipeline.txt:
4311         * docs/design/part-messages.txt:
4312         * gst/gstbus.c:
4313         * gst/gstmessage.c:
4314         Docs updates
4315
4316 2005-03-21  Wim Taymans  <wim@fluendo.com>
4317
4318         * gst/gstbus.c: (gst_bus_post):
4319         Fix copy-and-paste error.
4320
4321 2005-03-21  Wim Taymans  <wim@fluendo.com>
4322
4323         * check/Makefile.am:
4324         * gst/Makefile.am:
4325         * gst/elements/Makefile.am:
4326         * gst/elements/gstelements.c:
4327         * gst/elements/gstfakesink.c: (gst_fakesink_init),
4328         (gst_fakesink_event), (gst_fakesink_chain):
4329         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4330         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
4331         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
4332         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
4333         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
4334         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
4335         (gst_fakesrc_loop), (gst_fakesrc_activate),
4336         (gst_fakesrc_change_state):
4337         * gst/elements/gstfakesrc.h:
4338         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
4339         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
4340         (gst_filesrc_open_file), (gst_filesrc_loop),
4341         (gst_filesrc_activate), (gst_filesrc_change_state),
4342         (filesrc_find_peek), (filesrc_find_suggest),
4343         (gst_filesrc_type_find):
4344         * gst/elements/gstidentity.c: (gst_identity_finalize),
4345         (gst_identity_class_init), (gst_identity_init),
4346         (gst_identity_proxy_getcaps), (identity_queue_push),
4347         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
4348         (gst_identity_getrange), (gst_identity_chain),
4349         (gst_identity_sink_loop), (gst_identity_src_loop),
4350         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
4351         (gst_identity_set_property), (gst_identity_get_property),
4352         (gst_identity_change_state):
4353         * gst/elements/gstidentity.h:
4354         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
4355         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
4356         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
4357         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
4358         (gst_tee_sink_activate):
4359         * gst/elements/gsttee.h:
4360         * gst/gst.c: (gst_register_core_elements), (init_post):
4361         * gst/gst.h:
4362         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
4363         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
4364         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
4365         (gst_bin_change_state):
4366         * gst/gstbin.h:
4367         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
4368         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
4369         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
4370         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
4371         (gst_bus_set_sync_handler), (gst_bus_create_watch),
4372         (bus_watch_callback), (bus_watch_destroy),
4373         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
4374         (poll_timeout), (gst_bus_poll):
4375         * gst/gstbus.h:
4376         * gst/gstcaps.h:
4377         * gst/gstdata.h:
4378         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4379         (gst_element_post_message), (gst_element_message_full),
4380         (gst_element_get_state_func), (gst_element_get_state),
4381         (gst_element_abort_state), (gst_element_commit_state),
4382         (gst_element_lost_state), (gst_element_set_state),
4383         (gst_element_pads_activate), (gst_element_change_state),
4384         (gst_element_dispose), (gst_element_set_manager_func),
4385         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
4386         (gst_element_set_manager), (gst_element_get_manager),
4387         (gst_element_set_bus), (gst_element_get_bus),
4388         (gst_element_set_scheduler), (gst_element_get_scheduler):
4389         * gst/gstelement.h:
4390         * gst/gstevent.c: (gst_event_new_segment_seek),
4391         (gst_event_new_flush):
4392         * gst/gstevent.h:
4393         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
4394         (_gst_message_free), (gst_message_get_type), (gst_message_new),
4395         (gst_message_new_eos), (gst_message_new_error),
4396         (gst_message_new_warning), (gst_message_new_tag),
4397         (gst_message_new_state_changed), (gst_message_new_application),
4398         (gst_message_get_structure), (gst_message_parse_tag),
4399         (gst_message_parse_state_changed), (gst_message_parse_error),
4400         (gst_message_parse_warning):
4401         * gst/gstmessage.h:
4402         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
4403         (gst_real_pad_set_property), (gst_pad_set_active),
4404         (gst_pad_is_active), (gst_pad_set_blocked_async),
4405         (gst_pad_set_blocked), (gst_pad_is_blocked),
4406         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
4407         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
4408         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
4409         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
4410         (gst_pad_link_filtered), (gst_pad_relink_filtered),
4411         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
4412         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
4413         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
4414         (gst_pad_set_caps), (gst_pad_configure_sink),
4415         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
4416         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
4417         (gst_real_pad_dispose), (gst_real_pad_finalize),
4418         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
4419         (gst_pad_event_default_dispatch), (gst_pad_event_default),
4420         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
4421         * gst/gstpad.h:
4422         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
4423         (pipeline_bus_handler), (gst_pipeline_change_state),
4424         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
4425         * gst/gstpipeline.h:
4426         * gst/gstprobe.h:
4427         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
4428         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
4429         (gst_queue_link_src), (gst_queue_bufferalloc),
4430         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
4431         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
4432         (gst_queue_loop), (gst_queue_handle_src_event),
4433         (gst_queue_handle_src_query), (gst_queue_src_activate),
4434         (gst_queue_change_state):
4435         * gst/gstqueue.h:
4436         * gst/gstscheduler.c: (gst_scheduler_init),
4437         (gst_scheduler_dispose), (gst_scheduler_create_task),
4438         (gst_scheduler_factory_create):
4439         * gst/gstscheduler.h:
4440         * gst/gststructure.c: (gst_structure_get_type),
4441         (gst_structure_copy_conditional):
4442         * gst/gststructure.h:
4443         * gst/gsttaginterface.h:
4444         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
4445         (gst_task_init), (gst_task_dispose), (gst_task_create),
4446         (gst_task_get_state), (gst_task_start), (gst_task_stop),
4447         (gst_task_pause):
4448         * gst/gsttask.h:
4449         * gst/gstthread.c:
4450         * gst/gstthread.h:
4451         * gst/gsttypes.h:
4452         * gst/schedulers/Makefile.am:
4453         * gst/schedulers/cothreads_compat.h:
4454         * gst/schedulers/entryscheduler.c:
4455         * gst/schedulers/faircothreads.c:
4456         * gst/schedulers/faircothreads.h:
4457         * gst/schedulers/fairscheduler.c:
4458         * gst/schedulers/gstbasicscheduler.c:
4459         * gst/schedulers/gstoptimalscheduler.c:
4460         * gst/schedulers/gthread-cothreads.h:
4461         * gst/schedulers/threadscheduler.c:
4462         (gst_thread_scheduler_task_get_type),
4463         (gst_thread_scheduler_task_class_init),
4464         (gst_thread_scheduler_task_init),
4465         (gst_thread_scheduler_task_start),
4466         (gst_thread_scheduler_task_stop),
4467         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
4468         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
4469         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
4470         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
4471         (plugin_init):
4472         * libs/gst/Makefile.am:
4473         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
4474         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
4475         (gst_file_pad_parent_set):
4476         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
4477         (gst_dp_event_from_packet):
4478         * tests/complexity.c: (main):
4479         * tests/mass_elements.c: (main):
4480         * testsuite/states/locked.c: (message_received), (main):
4481         * testsuite/states/parent.c: (main):
4482         * tools/gst-inspect.c: (print_element_flag_info),
4483         (print_implementation_info), (print_pad_info):
4484         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
4485         (main):
4486         * tools/gst-md5sum.c: (event_loop), (main):
4487         * tools/gst-typefind.c: (main):
4488         * tools/gst-xmlinspect.c: (print_element_info):
4489         Next big merge.
4490         Added GstBus for mainloop integration.
4491         Added GstMessage for sending notifications on the bus.
4492         Added GstTask as an abstraction for pipeline entry points.
4493         Removed GstThread.
4494         Removed Schedulers.
4495         Simplified GstQueue for multithreaded core.
4496         Made _link threadsafe, removed old capsnego.
4497         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
4498         Added pad blocking functions.
4499         Reworked scheduling functions in GstPad to prepare for
4500         scheduling updates soon.
4501         Moved events out of data stream.
4502         Simplified GstEvent types.
4503         Added return values to push/pull.
4504         Removed clocking from GstElement.
4505         Added prototypes for state change function for next merge.
4506         Removed iterate from bins and state change management.
4507         Fixed some elements, disabled others for now.
4508         Fixed -inspect and -launch.
4509         Added check for GstBus.
4510
4511 2005-03-10  Wim Taymans  <wim@fluendo.com>
4512
4513         * docs/design/part-MT-refcounting.txt:
4514         * docs/design/part-clocks.txt:
4515         * docs/design/part-gstelement.txt:
4516         * docs/design/part-gstobject.txt:
4517         * docs/design/part-standards.txt:
4518         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4519         (gst_bin_remove_func), (gst_bin_remove):
4520         * gst/gstbin.h:
4521         * gst/gstbuffer.c:
4522         * gst/gstcaps.h:
4523         * testsuite/clock/clock1.c: (main):
4524         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
4525         (main):
4526         * testsuite/dlopen/loadgst.c: (do_test):
4527         * testsuite/refcounting/bin.c: (add_remove_test1),
4528         (add_remove_test2), (main):
4529         * testsuite/refcounting/element.c: (main):
4530         * testsuite/refcounting/element_pad.c: (main):
4531         * testsuite/refcounting/pad.c: (main):
4532         * tools/gst-launch.c: (sigint_handler_sighandler):
4533         * tools/gst-typefind.c: (main):
4534         Doc updates.
4535         Added doc about clock.
4536         removed gst_bin_iterate_recurse_up(), marked methods
4537         for removal.
4538         Fix more testsuites.
4539
4540 2005-03-09  Wim Taymans  <wim@fluendo.com>
4541
4542         * gst/gstpad.c: (gst_pad_get_direction),
4543         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
4544         (gst_pad_collect_valist):
4545         * testsuite/bins/interface.c: (main):
4546         * testsuite/caps/audioscale.c: (test_caps):
4547         * testsuite/caps/caps.c: (test1), (test2), (test3):
4548         * testsuite/caps/deserialize.c: (main):
4549         * testsuite/caps/enumcaps.c: (main):
4550         * testsuite/caps/filtercaps.c: (main):
4551         * testsuite/caps/intersect2.c: (main):
4552         * testsuite/caps/random.c: (main):
4553         * testsuite/caps/renegotiate.c: (my_fixate), (main):
4554         * testsuite/caps/sets.c: (check_caps):
4555         * testsuite/caps/simplify.c: (check_caps), (main):
4556         * testsuite/caps/subtract.c: (check_caps):
4557         Fix _pad_get_direction wrt ghostpads.
4558         Fix caps testsuite.
4559
4560 2005-03-09  Wim Taymans  <wim@fluendo.com>
4561
4562         * check/Makefile.am:
4563         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
4564         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
4565         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
4566         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
4567         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
4568         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
4569         (gst_bin_remove), (gst_bin_iterate_recurse_up),
4570         (bin_element_is_sink), (gst_bin_iterate_sinks),
4571         (gst_bin_iterate_all_by_interface):
4572         * gst/gstbin.h:
4573         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
4574         (gst_element_change_state), (gst_element_dispose),
4575         (gst_element_finalize), (gst_element_set_loop_function):
4576         * gst/gstelement.h:
4577         * gst/gstiterator.c: (find_custom_fold_func):
4578         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4579         (gst_pad_collectv), (gst_pad_collect_valist),
4580         (gst_pad_template_new):
4581         * gst/gstpipeline.c: (gst_pipeline_class_init),
4582         (gst_pipeline_dispose), (gst_pipeline_set_property),
4583         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
4584         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
4585         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
4586         * gst/gstutils.h:
4587         * gst/schedulers/entryscheduler.c:
4588         * gst/schedulers/gstbasicscheduler.c:
4589         (gst_basic_scheduler_cothreaded_chain),
4590         (gst_basic_scheduler_chain_add_element):
4591         * testsuite/bins/interface.c: (main):
4592         Added GstBin test.
4593         Added GstSystemClock test.
4594         Implemented clock distribution code in GstBin.
4595         Implemented iterate sinks method for future use.
4596         Rearranged gstelement.h
4597         Fix GstIterator comparison bug.
4598         Moved some code to GstPipeline, mostly clocking related.
4599
4600 2005-03-09  Wim Taymans  <wim@fluendo.com>
4601
4602         * configure.ac:
4603         * gst/gst_private.h:
4604         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4605         (gst_bin_remove_func), (gst_bin_remove),
4606         (gst_bin_get_by_name_recurse_up):
4607         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
4608         (gst_clock_id_compare_func), (gst_clock_id_wait),
4609         (gst_clock_id_wait_async), (gst_clock_init),
4610         (gst_clock_adjust_unlocked), (gst_clock_get_time):
4611         * gst/gstelement.h:
4612         * gst/gstinfo.c: (_gst_debug_init):
4613         * gst/gstobject.h:
4614         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4615         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
4616         * gst/gstpad.h:
4617         Bump version number, we're now 0.9.0
4618         Add future debugging category.
4619         Fix NULL _unref() in _get_by_name_recurse_up
4620         Rearrange gstpad.h.
4621         Update some docs.
4622
4623 2005-03-08  Wim Taymans  <wim@fluendo.com>
4624
4625         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
4626         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4627         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
4628         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
4629         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
4630         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
4631         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
4632         * gst/elements/gstidentity.c: (gst_identity_class_init):
4633         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
4634         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
4635         * gst/elements/gstshaper.c: (gst_shaper_class_init):
4636         * gst/elements/gststatistics.c: (gst_statistics_class_init):
4637         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
4638         (gst_tee_link):
4639         * gst/gstelement.c: (gst_element_class_init),
4640         (gst_element_base_class_init), (gst_element_init),
4641         (gst_element_get_random_pad), (gst_element_wait_state_change),
4642         (gst_element_change_state), (gst_element_dispose),
4643         (gst_element_finalize), (gst_element_set_loop_function):
4644         * gst/gstelement.h:
4645         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
4646         * gst/gstthread.c: (gst_thread_class_init),
4647         (gst_thread_release_children_locks), (gst_thread_change_state):
4648         * gst/schedulers/gstbasicscheduler.c:
4649         (gst_basic_scheduler_loopfunc_wrapper),
4650         (gst_basic_scheduler_chain_wrapper),
4651         (gst_basic_scheduler_src_wrapper),
4652         (gst_basic_scheduler_remove_element):
4653         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4654         Remove threadsafe properties. Fix elements because GObject
4655         complains when installing a property before declaring a
4656         set/get_property handler.
4657         Rearrange gstelement.h file, use STATE macros for state locks.
4658         Free mutexes in the finalize method instead of dispose.
4659
4660 2005-03-08  Wim Taymans  <wim@fluendo.com>
4661
4662         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
4663         * gst/gstthread.c: (gst_thread_release_children_locks):
4664         Added parentage check.
4665         Fix build og GstThread again.
4666
4667 2005-03-08  Wim Taymans  <wim@fluendo.com>
4668
4669         * docs/design/part-MT-refcounting.txt:
4670         * docs/design/part-conventions.txt:
4671         * docs/design/part-gstobject.txt:
4672         * docs/design/part-relations.txt:
4673         * docs/design/part-standards.txt:
4674         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4675         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
4676         (gst_bin_get_by_name), (gst_bin_get_by_interface),
4677         (gst_bin_iterate_all_by_interface):
4678         * gst/gstbuffer.h:
4679         * gst/gstclock.h:
4680         * gst/gstelement.c: (gst_element_class_init),
4681         (gst_element_change_state), (gst_element_set_loop_function):
4682         * gst/gstelement.h:
4683         * gst/gstiterator.c:
4684         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
4685         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
4686         (gst_object_dispatch_properties_changed), (gst_object_set_name),
4687         (gst_object_set_parent), (gst_object_unparent),
4688         (gst_object_check_uniqueness):
4689         * gst/gstobject.h:
4690         Docs updates, clean up some headers.
4691
4692 2005-03-07  Wim Taymans  <wim@fluendo.com>
4693
4694         * check/.cvsignore:
4695         * check/Makefile.am:
4696         * check/gst-libs/.cvsignore:
4697         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
4698         * check/gst/.cvsignore:
4699         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
4700         (START_TEST), (gstbus_suite), (main):
4701         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
4702         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
4703         (gst_data_suite), (main):
4704         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
4705         (add_fold_func), (gstiterator_suite), (main):
4706         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
4707         (thread_name_object), (thread_name_object_default),
4708         (gst_object_name_compare), (gst_object_suite), (main):
4709         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
4710         (gst_pad_suite), (main):
4711         * check/gstcheck.c: (gst_check_log_message_func),
4712         (gst_check_log_critical_func), (gst_check_init):
4713         * check/gstcheck.h:
4714         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
4715         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
4716         Added checks.
4717
4718 2005-03-07  Wim Taymans  <wim@fluendo.com>
4719
4720         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
4721         (gst_list_iterator_next), (gst_list_iterator_resync),
4722         (gst_list_iterator_free), (gst_iterator_new_list),
4723         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
4724         (gst_iterator_free), (gst_iterator_push), (filter_next),
4725         (filter_resync), (filter_uninit), (filter_free),
4726         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
4727         (gst_iterator_foreach), (find_custom_fold_func),
4728         (gst_iterator_find_custom):
4729         * gst/gstiterator.h:
4730         Added missing files.
4731
4732 2005-03-07  Wim Taymans  <wim@fluendo.com>
4733
4734         * Makefile.am:
4735         * configure.ac:
4736         * docs/design/part-MT-refcounting.txt:
4737         * docs/design/part-conventions.txt:
4738         * docs/design/part-gstobject.txt:
4739         * docs/design/part-relations.txt:
4740         * examples/mixer/mixer.c: (main):
4741         * examples/thread/thread.c: (eos), (main):
4742         * gst/Makefile.am:
4743         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
4744         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
4745         (gst_spider_plug_from_srcpad):
4746         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
4747         (gst_spider_identity_change_state),
4748         (gst_spider_identity_sink_loop_type_finding):
4749         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
4750         * gst/elements/gstidentity.c: (gst_identity_init):
4751         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
4752         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
4753         * gst/elements/gsttypefindelement.c: (free_entry):
4754         * gst/gst.c:
4755         * gst/gst.h:
4756         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
4757         (gst_bin_set_clock_func), (gst_bin_auto_clock),
4758         (gst_bin_set_index), (gst_bin_set_element_sched),
4759         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
4760         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
4761         (gst_bin_iterate_elements), (iterate_child_recurse),
4762         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
4763         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
4764         (compare_interface), (gst_bin_get_by_interface),
4765         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
4766         * gst/gstbin.h:
4767         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
4768         (gst_buffer_default_free), (gst_buffer_default_copy),
4769         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
4770         (gst_buffer_create_sub):
4771         * gst/gstbuffer.h:
4772         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
4773         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
4774         (gst_caps_unref), (gst_static_caps_get),
4775         (gst_caps_remove_and_get_structure), (gst_caps_append),
4776         (gst_caps_append_structure), (gst_caps_remove_structure),
4777         (gst_caps_copy_nth), (gst_caps_set_simple),
4778         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
4779         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
4780         (gst_caps_structure_intersect_field), (gst_caps_intersect),
4781         (gst_caps_structure_subtract_field), (gst_caps_subtract),
4782         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
4783         (gst_caps_structure_figure_out_union),
4784         (gst_caps_switch_structures), (gst_caps_do_simplify),
4785         (gst_caps_replace), (gst_caps_from_string),
4786         (gst_caps_copy_conditional):
4787         * gst/gstcaps.h:
4788         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
4789         (_gst_clock_id_free), (gst_clock_id_unref),
4790         (gst_clock_id_compare_func), (gst_clock_id_wait),
4791         (gst_clock_id_wait_async), (gst_clock_class_init),
4792         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
4793         (gst_clock_get_time), (gst_clock_set_time_adjust),
4794         (gst_clock_set_property), (gst_clock_get_property):
4795         * gst/gstclock.h:
4796         * gst/gstcompat.h:
4797         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
4798         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
4799         * gst/gstdata.h:
4800         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4801         (gst_element_requires_clock), (gst_element_provides_clock),
4802         (gst_element_set_clock), (gst_element_clock_wait),
4803         (gst_element_wait), (gst_element_set_time_delay),
4804         (gst_element_is_indexable), (gst_element_add_pad),
4805         (gst_element_add_ghost_pad), (gst_element_remove_pad),
4806         (pad_compare_name), (gst_element_get_static_pad),
4807         (gst_element_request_pad), (gst_element_get_request_pad),
4808         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
4809         (gst_element_class_get_pad_template_list),
4810         (gst_element_class_get_pad_template), (gst_element_error_func),
4811         (gst_element_get_random_pad), (gst_element_get_event_masks),
4812         (gst_element_send_event), (gst_element_seek),
4813         (gst_element_get_query_types), (gst_element_query),
4814         (gst_element_get_formats), (gst_element_convert),
4815         (gst_element_is_locked_state), (gst_element_set_locked_state),
4816         (gst_element_sync_state_with_parent), (gst_element_change_state),
4817         (gst_element_finalize), (gst_element_yield),
4818         (gst_element_interrupt), (gst_element_set_scheduler),
4819         (gst_element_get_scheduler), (gst_element_set_loop_function):
4820         * gst/gstelement.h:
4821         * gst/gstevent.h:
4822         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
4823         (gst_format_get_by_nick), (gst_format_get_details),
4824         (gst_format_iterate_definitions):
4825         * gst/gstformat.h:
4826         * gst/gstindex.c: (gst_index_gtype_resolver):
4827         * gst/gstinfo.c:
4828         * gst/gstinfo.h:
4829         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
4830         (gst_mem_chunk_free):
4831         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
4832         (gst_object_ref), (gst_object_unref), (gst_object_sink),
4833         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
4834         (gst_object_dispatch_properties_changed),
4835         (gst_object_set_name_default), (gst_object_set_name),
4836         (gst_object_get_name), (gst_object_set_name_prefix),
4837         (gst_object_get_name_prefix), (gst_object_set_parent),
4838         (gst_object_get_parent), (gst_object_unparent),
4839         (gst_object_check_uniqueness), (gst_object_save_thyself),
4840         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
4841         (gst_object_set_property), (gst_object_get_property),
4842         (gst_object_get_path_string):
4843         * gst/gstobject.h:
4844         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
4845         (gst_real_pad_init), (gst_real_pad_get_property),
4846         (gst_pad_custom_new), (gst_pad_get_direction),
4847         (gst_pad_set_active), (gst_pad_is_active),
4848         (gst_pad_set_event_function), (gst_pad_is_linked),
4849         (gst_pad_link_free), (gst_pad_link_intersect),
4850         (gst_pad_link_fixate), (gst_pad_set_caps),
4851         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
4852         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
4853         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
4854         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
4855         (gst_pad_get_caps), (gst_pad_peer_get_caps),
4856         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
4857         (gst_pad_realize), (gst_pad_get_allowed_caps),
4858         (gst_real_pad_dispose), (gst_real_pad_finalize),
4859         (gst_pad_collectv), (gst_pad_collect_valist),
4860         (gst_pad_template_dispose), (gst_pad_template_new),
4861         (gst_pad_get_internal_links):
4862         * gst/gstpad.h:
4863         * gst/gstpipeline.c: (gst_pipeline_dispose),
4864         (gst_pipeline_change_state):
4865         * gst/gstpipeline.h:
4866         * gst/gstplugin.c:
4867         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
4868         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
4869         * gst/gstpluginfeature.h:
4870         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4871         * gst/gstquery.c: (_gst_query_type_initialize),
4872         (gst_query_type_register), (gst_query_type_get_by_nick),
4873         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
4874         * gst/gstquery.h:
4875         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
4876         * gst/gstscheduler.c: (gst_scheduler_add_element),
4877         (gst_scheduler_factory_create):
4878         * gst/gststructure.c: (gst_structure_set_parent_refcount),
4879         (gst_structure_free), (gst_structure_set_name),
4880         (gst_structure_id_set_value), (gst_structure_set_value),
4881         (gst_structure_set_valist), (gst_structure_remove_field),
4882         (gst_structure_remove_fields),
4883         (gst_structure_remove_fields_valist),
4884         (gst_structure_remove_all_fields), (gst_structure_foreach),
4885         (gst_structure_map_in_place),
4886         (gst_caps_structure_fixate_field_nearest_int),
4887         (gst_caps_structure_fixate_field_nearest_double):
4888         * gst/gststructure.h:
4889         * gst/gstsystemclock.c: (gst_system_clock_class_init),
4890         (gst_system_clock_init), (gst_system_clock_dispose),
4891         (gst_system_clock_async_thread),
4892         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
4893         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
4894         * gst/gstsystemclock.h:
4895         * gst/gsttag.c: (gst_tag_list_add_value_internal),
4896         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
4897         * gst/gsttaginterface.c:
4898         * gst/gstthread.c: (gst_thread_dispose),
4899         (gst_thread_release_children_locks), (gst_thread_change_state),
4900         (gst_thread_main_loop):
4901         * gst/gsttrashstack.h:
4902         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
4903         * gst/gsttypes.h:
4904         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
4905         (gst_element_request_pad), (gst_element_get_pad_from_template),
4906         (gst_element_request_compatible_pad),
4907         (gst_element_get_compatible_pad_filtered),
4908         (gst_element_get_compatible_pad), (gst_element_state_get_name),
4909         (gst_element_link_pads_filtered), (gst_element_link_filtered),
4910         (gst_element_link_many), (gst_element_link),
4911         (gst_element_link_pads), (gst_element_unlink_pads),
4912         (gst_element_unlink_many), (gst_element_unlink),
4913         (gst_pad_can_link_filtered), (gst_pad_can_link),
4914         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
4915         (gst_object_default_error), (gst_bin_add_many),
4916         (gst_bin_remove_many), (gst_element_populate_std_props),
4917         (gst_element_class_install_std_props), (gst_buffer_merge),
4918         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
4919         (link_fold_func), (gst_pad_proxy_setcaps):
4920         * gst/gstutils.h:
4921         * gst/gstvalue.c: (gst_value_deserialize_string):
4922         * gst/parse/grammar.y:
4923         * gst/schedulers/gstbasicscheduler.c:
4924         (gst_basic_scheduler_cothreaded_chain),
4925         (gst_basic_scheduler_chain_recursive_add),
4926         (gst_basic_scheduler_pad_link):
4927         * gst/schedulers/gstoptimalscheduler.c:
4928         (get_group_schedule_function),
4929         (gst_opt_scheduler_state_transition),
4930         (gst_opt_scheduler_add_element), (element_get_reachables_func):
4931         * libs/gst/bytestream/bytestream.c:
4932         * libs/gst/dataprotocol/dataprotocol.c:
4933         (gst_dp_header_from_buffer):
4934         * po/nb.po:
4935         * po/ru.po:
4936         * tests/threadstate/threadstate2.c: (eos):
4937         * tools/gst-compprep.c: (main):
4938         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
4939         (print_pad_info), (print_children_info):
4940         * tools/gst-launch.c: (idle_func), (main):
4941         * tools/gst-md5sum.c: (idle_func), (main):
4942         * tools/gst-xmlinspect.c: (print_element_info):
4943         First THREADED backport attempt, focusing on adding locks and
4944         making sure the API is threadsafe. Needs more work. More docs
4945         follow this week.
4946
4947 2005-02-24  Andy Wingo  <wingo@pobox.com>
4948
4949         * tests/bench-complexity.scm:
4950         * tests/complexity.gnuplot: New files, good for running complexity
4951         benchmarks.
4952
4953         * tests/Makefile.am:
4954         * tests/complexity.c: New test, sets up N elements, at each level
4955         teeing into M streams per element. Eeeenteresting.
4956
4957         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
4958         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
4959         running bench-mass_elements.scm.
4960
4961         * tests/bench-mass_elements.scm: New script, runs mass_elements
4962         for various numbers of identities, outputting the results to a
4963         file. Requires guile 1.6. Just for testing.
4964
4965 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
4966
4967         * gst/schedulers/fairscheduler.c:
4968           compile with debug disabled
4969
4970 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
4971
4972         * configure.ac:
4973           hunting season on 0.9 is now OPEN
4974
4975 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
4976
4977         * docs/libs/tmpl/gstcontrol.sgml:
4978         * docs/libs/tmpl/gstdparam.sgml:
4979         * docs/libs/tmpl/gstdplinint.sgml:
4980         * docs/libs/tmpl/gstdpman.sgml:
4981         * docs/libs/tmpl/gstdpsmooth.sgml:
4982         * docs/libs/tmpl/gstunitconvert.sgml:
4983           more docs for the state of dparams
4984
4985 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4986
4987         * gst/gstelementfactory.c: (gst_element_factory_create):
4988         * gst/gstobject.c: (gst_object_init),
4989         (gst_object_set_name_default), (gst_object_set_name):
4990           name objects by default, not in gst_element_factory_create. Allows
4991           using elements created with g_object_new. (fixes #167283)
4992
4993 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4994
4995         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
4996           make the time that debugging functions print relative to when
4997           gst_init was called
4998
4999 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
5000
5001         * gst/gsttaginterface.c:
5002           Fix inline docs: tag setter vararg functions are NULL-terminated,
5003           GST_TAG_INVALID doesn't exist any more.
5004
5005 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5006
5007         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
5008         Allocate the 1 byte more memory that was forgotten!!!!!
5009         fixes memory corruption on 64bit platforms
5010
5011 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
5012
5013         * docs/pwg/building-pads.xml:
5014         * docs/pwg/intro-basics.xml:
5015           fixed a few typos, relabeled introductionary list of types
5016         * docs/random/ensonic/dparams.txt:
5017           more notes abut dparam changes
5018         * libs/gst/control/dparam.c: (gst_dparam_attach):
5019         * libs/gst/control/dparammanager.c:
5020         * libs/gst/control/dparammanager.h:
5021           - many comments and notes on dparam implementation
5022           - new dparams are were not initialized to the default value
5023             from param spec
5024
5025 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
5026
5027         submitted by: Peter Astakhov
5028
5029         * po/LINGUAS:
5030         * po/ru.po:
5031           adding Russian translation
5032
5033 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5034
5035         * configure.ac:
5036         * docs/gst/Makefile.am:
5037         * docs/libs/Makefile.am:
5038           make sure popt is added to gtk-doc flags.  Fixes #147782.
5039
5040 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
5041
5042         * docs/faq/using.xml:
5043           Fix typo in FAQ (artssink => artsdsink)
5044
5045 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5046
5047         * tools/gst-launch.1.in:
5048           Fix typo (#166699).
5049
5050 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
5051
5052         * docs/faq/using.xml:
5053           Add -v argument to fakesrc/fakesink gst-launch line,
5054           so that the promised output will actually show up.
5055
5056 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5057
5058         * gst/gstthread.c: (gst_thread_change_state):
5059           Implement state-change error handling (#166073).
5060
5061 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5062
5063         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
5064           Release interrupt after handling (#166250).
5065
5066 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5067
5068         * configure.ac:
5069           back to HEAD
5070
5071 === release 0.8.9 ===
5072
5073 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5074
5075         * NEWS:
5076         * RELEASE:
5077         * configure.ac:
5078           releasing 0.8.9, "Like Eating Glass"
5079
5080 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5081
5082         submitted by: Clytie Siddall
5083
5084         * po/vi.po: Added Vietnamese translation
5085
5086 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5087
5088         patch by: Tim Philipp-Müller
5089
5090         * configure.ac:
5091         * gst/gstpad.c:
5092           unref data when probe function returns FALSE.  Fixes #166362
5093
5094 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5095
5096         * gst/gst.c: (gst_init_get_popt_table):
5097           Fix typo (#166269).
5098
5099 2005-02-04  Andy Wingo  <wingo@pobox.com>
5100
5101         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
5102         the debugging on whether the caps are compatible.
5103
5104 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5105
5106         * docs/manual/basics-elements.xml:
5107           Fix two typos.
5108
5109 2005-02-02  Wim Taymans  <wim@fluendo.com>
5110
5111         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
5112         (schedule_chain), (get_invalid_call), (chain_invalid_call),
5113         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
5114         Remove some FIXMEs after analysing and commenting why they
5115         are not issues.
5116
5117 2005-02-02  Wim Taymans  <wim@fluendo.com>
5118
5119         * gst/schedulers/gstoptimalscheduler.c:
5120         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
5121         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
5122         (get_invalid_call), (chain_invalid_call),
5123         (get_group_schedule_function), (loop_group_schedule_function),
5124         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
5125         (gst_opt_scheduler_state_transition),
5126         (gst_opt_scheduler_add_element),
5127         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
5128         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
5129         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
5130         (gst_opt_scheduler_show):
5131         Added lock to protect scheduler data structures.
5132
5133 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5134
5135         * testsuite/threads/threadi.c: (cb_data):
5136           Fix buglet in test.
5137
5138 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5139
5140         * testsuite/threads/Makefile.am:
5141         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
5142           On Wim's request, split the test in three separately-compiled
5143           tests that each test a very specific bug. Two of them still fail,
5144           will create bugs for those. threadi.c indicates why they fail.
5145
5146 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5147
5148         * gst/schedulers/gstoptimalscheduler.c:
5149         (get_group_schedule_function):
5150           Try to work with the threading mess that queue_link is.
5151
5152 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5153
5154         * gst/gstbin.c: (gst_bin_remove_func):
5155           Explicitely make an element release locks in a group when being
5156           remove from a bin.
5157         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
5158           If there's no scheduler, always return immediately (similar to
5159           gst_element_interrupt).
5160
5161 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5162
5163         * gst/gstbin.c: (gst_bin_child_state_change_func):
5164           Remove a piece of code that could never be reached.
5165         * docs/gst/gstreamer-sections.txt:
5166         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
5167         (gst_pad_call_get_function):
5168         * gst/gstpad.h:
5169         * testsuite/pad/Makefile.am:
5170           Fix #150546, enable tests.
5171
5172 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5173
5174         * docs/pwg/advanced-types.xml:
5175           Fix description for buffer-frames=0.
5176         * docs/gst/tmpl/gstbin.sgml:
5177         * gst/gstbin.c: (gst_bin_child_state_change_func),
5178         (gst_bin_change_state), (gst_bin_change_state_norecurse):
5179         * gst/gstbin.h:
5180         * testsuite/threads/Makefile.am:
5181         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
5182         (cb_state), (cb_play), (main):
5183           Fix non-recursive state changes to *really* change the state
5184           of the object, and not just call parent_class->state_change.
5185           Fix a lot of lockups caused by this. Fixes #132775. Add test
5186           for the problem. Also enable test to show #142588 (fixed).
5187         * gst/gstthread.c: (gst_thread_change_state),
5188         (gst_thread_child_state_change):
5189           Don't exit the thread if we go to NULL and are inside thread
5190           context. Instead, return control to the main thread context
5191           and exit from there.
5192         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
5193           Don't unset virtual functions, since those may still be used.
5194           That's not necessarily correct, but suffices for now.
5195         * configure.ac:
5196         * testsuite/Makefile.am:
5197         * testsuite/pad/Makefile.am:
5198         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
5199         (gst_test_sink_base_init), (gst_test_sink_chain),
5200         (gst_test_sink_init), (main):
5201         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
5202         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
5203         (main):
5204         * testsuite/pad/link.c: (gst_test_element_class_init),
5205         (gst_test_element_base_init), (gst_test_src_get),
5206         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
5207         (gst_test_filter_loop), (gst_test_filter_init),
5208         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
5209         (cb_error), (main):
5210           Add tests to show #150546. Pass, but should fail (currently
5211           disabled from the testsuite).
5212         * gst/gstscheduler.c: (gst_scheduler_dispose):
5213           Dereference child schedulers on dispose (#94464).
5214         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
5215           Fix typo.
5216         * testsuite/threads/thread.c: (main):
5217           Add more debug.
5218
5219 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5220
5221         * gst/gstpad.c: (gst_pad_push):
5222           Oops, revert previous commit, broke testsuite...
5223
5224 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5225
5226         * gst/gstpad.c: (gst_pad_push):
5227           Add check that the pad on which the push is performed is not a
5228           get-based pad (#150546).
5229
5230 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5231
5232         * gst/elements/gsttypefindelement.c:
5233         (gst_type_find_element_handle_event):
5234           Fix buffer pushing if stream EOSes during typefinding.
5235
5236 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
5237
5238         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5239
5240         * gst/gstvalue.c: (gst_string_wrap):
5241           Allow NULL-strings as argument (#165365).
5242
5243 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
5244
5245         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5246
5247         * gst/schedulers/faircothreads.c:
5248         (gst_fair_scheduler_cothread_queue_show):
5249           Fix build without debug enabled.
5250
5251 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
5252
5253         * docs/gst/gstreamer-sections.txt:
5254         * docs/libs/gstreamer-libs-docs.sgml:
5255         * docs/libs/gstreamer-libs-sections.txt:
5256         * docs/libs/tmpl/gstcontrol.sgml:
5257         * docs/libs/tmpl/gstdparam.sgml:
5258         * docs/libs/tmpl/gstdplinint.sgml:
5259         * docs/libs/tmpl/gstdpman.sgml:
5260         * docs/libs/tmpl/gstdpsmooth.sgml:
5261         * docs/libs/tmpl/gstputbits.sgml:
5262         * docs/libs/tmpl/gstunitconvert.sgml:
5263         * libs/gst/control/dparam.c:
5264         * libs/gst/control/dparam.h:
5265         * libs/gst/control/dparammanager.c:
5266         (gst_dpman_add_required_dparam_callback),
5267         (gst_dpman_add_required_dparam_direct),
5268         (gst_dpman_add_required_dparam_array),
5269         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
5270         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
5271         (gst_dpman_get_manager)
5272           restructured DParam docs
5273
5274 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
5275
5276         * gst-element-check.m4:
5277           Only check for gst-inspect if we haven't already
5278           found it in previous element check runs
5279
5280 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
5281
5282         * docs/gst/Makefile.am:
5283         * docs/libs/Makefile.am:
5284           fixed install rules to treat style.css as optional
5285
5286 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
5287
5288         * docs/gst/Makefile.am:
5289         * docs/libs/Makefile.am:
5290           install style.css along with docs
5291         * docs/gst/tmpl/gstbin.sgml:
5292         * docs/gst/tmpl/gstclock.sgml:
5293         * docs/gst/tmpl/gstdata.sgml:
5294         * docs/gst/tmpl/gstelement.sgml:
5295         * gst/gstbin.h:
5296         * gst/gstelement.c: (gst_element_class_init):
5297         * gst/gstelement.h:
5298           fixing incomplete docs
5299
5300 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
5301
5302         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5303           Don't unref seek event twice when fflush() fails
5304           
5305 2005-01-22  David Schleef  <ds@schleef.org>
5306
5307         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
5308
5309 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
5310
5311         * docs/gst/Makefile.am:
5312         * docs/libs/Makefile.am:
5313           added params for deprecation guards
5314         * gst/gst.c:
5315         * gst/gst.h:
5316         * gst/gsterror.c: (_gst_resource_errors_init),
5317         (_gst_stream_errors_init):
5318         * gst/gsterror.h:
5319           documented some more enums
5320
5321 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
5322         * gst/autoplug/gstspideridentity.c:
5323         Cosmetic fix - spider_find_peek should be static
5324         * gst/parse/parse.l:
5325         Applying fix for #164261
5326
5327 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
5328
5329         * docs/gst/gstreamer-sections.txt:
5330         * docs/gst/tmpl/gstplugin.sgml:
5331         * docs/libs/gstreamer-libs-sections.txt:
5332         * docs/libs/tmpl/gstcontrol.sgml:
5333         * gst/gstbuffer.h:
5334         * gst/gsttag.h:
5335         * gst/gstvalue.c:
5336           added docs for the TAG defines
5337
5338 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5339
5340         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
5341           Only unref entry if there is an entry.
5342
5343 2005-01-17  Wim Taymans  <wim@fluendo.com>
5344
5345         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5346         (remove_from_group), (schedule_group), (normalize_group),
5347         (gst_opt_scheduler_iterate):
5348         Also ref/unref decoupled elements before iterating the
5349         group since they are not added to the list of elements.
5350
5351 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5352
5353         * docs/manual/highlevel-components.xml:
5354           Add subtitle/streamselection as new features to playbin.
5355
5356 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5357
5358         * docs/manual/manual.xml:
5359           Re-enable dataaccess docs (oops).
5360
5361 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5362
5363         * docs/pwg/advanced-types.xml:
5364         * docs/random/mimetypes:
5365           Add documentation on libsndfile types (#163309), by Steve Baker
5366           <steve@stevebaker.org>.
5367         * gst/gstelement.c: (gst_element_release_request_pad):
5368           If an element has no explicit function, just remove the pad.
5369
5370 2005-01-17  Luca Ognibene  <luogni@tin.it>
5371
5372         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5373
5374         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
5375           Fix memleak (#163801).
5376
5377 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5378
5379         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
5380           I think this is actually more correct...
5381
5382 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5383
5384         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5385           Another workaround for memory access while destroyed in callback.
5386           Please, someone with refcount knowledge, have a look at this.
5387
5388 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5389
5390         * docs/faq/faq.xml:
5391         * docs/faq/legal.xml:
5392           move the legal Q&A here
5393
5394 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5395
5396         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
5397         (gst_tee_request_new_pad):
5398           Fix negotiation.
5399
5400 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5401
5402         * docs/random/omega/caps2:
5403         * testsuite/caps/caps_strings:
5404           replace framerate aproximations by their real value
5405           (24000/1001, 30000/1001, 60000/1001)
5406           Partially fixes bug #164049
5407
5408 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5409
5410         * docs/gst/Makefile.am:
5411           don't fail on the stupid GstPoptOption
5412
5413 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5414
5415         * gst/gstpad.h:
5416         * gst/gstprobe.c:
5417           allow probes to work on ghost pads by realizing the pad
5418           probe debugging
5419
5420 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5421
5422         * docs/gst/gstreamer-sections.txt:
5423         * docs/gst/tmpl/gstpad.sgml:
5424         * gst/gstpad.c: (gst_pad_set_active_recursive):
5425         * gst/gstpad.h:
5426           Add gst_pad_set_active_recursive().
5427
5428 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5429
5430         * docs/random/release:
5431           updates
5432         * gst/gst_private.h:
5433         * gst/gstinfo.c:
5434         * gst/gstobject.c:
5435           move deep_notify logging to a new category
5436         * gst/gstprobe.c:
5437         * gst/gstprobe.h:
5438           add stuff so bindings can wrap probes
5439
5440 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5441
5442         * gst/gstplugin.c: (gst_plugin_load):
5443           Fix plugin loading if plugin/lib was already loaded. Fixes
5444           #163383
5445
5446 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
5447
5448         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5449
5450         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
5451           Protect plugin loading by a mutex so it's threadsafe. Fixes
5452           #163234.
5453
5454 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5455
5456         * gst/gstevent.c: (_gst_event_copy):
5457           Reference source object when copying events, since it'll be
5458           dereferenced on event dereferencing as well.
5459
5460 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5461
5462         * docs/gst/gstreamer-sections.txt:
5463         * docs/gst/tmpl/gstevent.sgml:
5464         * gst/gstevent.c: (gst_event_new_filler_stamped),
5465         (gst_event_filler_get_duration):
5466         * gst/gstevent.h:
5467           Add two new functions for filler events (which are used to
5468           synchronize streams if one of them is not having any data
5469           for a while) without interrupting the actual data-stream.
5470           Basically a no-op.
5471         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5472         (gst_queue_link_sink), (gst_queue_link_src),
5473         (gst_queue_change_state):
5474           Allow for renegotiation while filled. Required for stream
5475           switching while playing.
5476
5477 2005-01-08  Benjamin Otte  <otte@gnome.org>
5478
5479         * gst/gstelement.c: (gst_element_link_many):
5480           fix up g_return_if_fail's
5481         * po/LINGUAS:
5482         * po/de.po:
5483           add German translation, that was somehow not included
5484
5485 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5486
5487         * docs/random/mimetypes:
5488           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
5489           do not add them to riff-lib as they are not common
5490
5491 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5492
5493         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5494           Check for existence of probe after performing the probe before
5495           re-accessing it to prevent segfaults caused by removal of the
5496           probe in the callback.
5497
5498 2005-01-05  David Schleef  <ds@schleef.org>
5499
5500         * testsuite/registry/Makefile.am:
5501         * testsuite/registry/gst-print-formats.c:
5502         (print_pad_templates_info), (print_element_list),
5503         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
5504         (g_list_uniqify), (get_pad_templates_info),
5505         (get_element_mime_list), (print_mime_list), (main): A little
5506         program that looks through the registry to find elements of
5507         a given type.  Not particularly interesting as a test, except
5508         that there's no other test covering the same area.
5509
5510 2005-01-05  David Schleef  <ds@schleef.org>
5511
5512         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
5513         (fault_handler_sigaction), (fault_spin),
5514         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
5515         in signal.h-type signal handlers by not calling forbidden functions,
5516         including gst_element_set_state().
5517
5518 2005-01-05  David Schleef  <ds@schleef.org>
5519
5520         * gst/gstvalue.h: Mark _gst_reserved[] as private
5521
5522 2005-01-05  David Schleef  <ds@schleef.org>
5523
5524         * gst/gstvalue.c: Fix doc build problem.
5525
5526 2005-01-05  David Schleef  <ds@schleef.org>
5527
5528         * gst/gstvalue.c: Add some documentation
5529
5530 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
5531
5532         * docs/README:
5533           another shell oneliner for empty return value docs
5534         * gst/gstcaps.c:
5535         * gst/gstvalue.c:
5536         * libs/gst/control/dparam.c:
5537           more doc fixes (parameters and return values)
5538
5539 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
5540
5541         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5542
5543         * gst/gstregistry.h:
5544         * gst/registries/gstxmlregistry.c:
5545           Fix macro's for Mingw (fixes #162276).
5546
5547 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
5548
5549         * docs/README:
5550           quick shell oneliner to find undocumented members
5551         * docs/gst/tmpl/gstplugin.sgml:
5552         * docs/gst/tmpl/gstscheduler.sgml:
5553         * docs/gst/tmpl/gstthread.sgml:
5554           more enumtypes cleanup
5555         * gst/gsterror.h:
5556           activated documentation comments, now someone needs to document
5557           the enums :(
5558
5559 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5560
5561         * docs/manual/manual.xml:
5562           Add dataaccess part (doh!).
5563
5564 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5565
5566         * docs/manual/advanced-autoplugging.xml:
5567           Fix typo (intiate -> initiate).
5568
5569 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5570
5571         * docs/random/bbb/streamselection:
5572           Add some notes on how to handle multi-subtitle/-audio streams.
5573
5574 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
5575
5576         * docs/gst/gstreamer-docs.sgml:
5577         * docs/gst/gstreamer-sections.txt:
5578         * docs/gst/tmpl/gstenumtypes.sgml:
5579         * docs/gst/tmpl/gsterror.sgml:
5580         * docs/gst/tmpl/gstevent.sgml:
5581         * docs/gst/tmpl/gstpad.sgml:
5582         * docs/gst/tmpl/gstpadtemplate.sgml:
5583         * docs/gst/tmpl/gstthread.sgml:
5584           removed gstenumtypes section from docs and put all the enums into
5585           their sections
5586
5587 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5588
5589         * gst/gstplugin.c:
5590           document gst_library_load a bit more (riff special case + return
5591           value if already loaded)
5592         * testsuite/bytestream/filepadsink.c:
5593           plugin name is 'gstbytestream', not 'bytestream'
5594
5595 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5596
5597         * docs/random/bbb/subtitles:
5598           Add some first mind rumblings on proper subtitle support.
5599
5600 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
5601
5602         * po/ca.po:
5603         * po/sv.po:
5604           updated translations
5605
5606 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5607
5608         * docs/manual/advanced-dataaccess.xml:
5609           Add section on how to use fakesrc/fakesink/identity in your
5610           application, plus section on how to embed plugins. Also mention
5611           probes.
5612         * docs/manual/appendix-checklist.xml:
5613         * docs/manual/appendix-debugging.xml:
5614         * docs/manual/appendix-gnome.xml:
5615         * docs/manual/appendix-integration.xml:
5616           Debug -> checklist, GNOME -> integration, add sections on Linux,
5617           KDE integration and add other things useful for application
5618           development.
5619         * docs/manual/manual.xml:
5620           Remove some fixmes, update some file pointers.
5621         * docs/pwg/appendix-checklist.xml:
5622           Fix typo.
5623         * docs/pwg/building-boiler.xml:
5624           Remove ugly header and add commented fixme.
5625         * docs/pwg/pwg.xml:
5626           Add fixme.
5627         * examples/manual/Makefile.am:
5628           Add example for added docs.
5629
5630 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5631
5632         * configure.ac:
5633           back to HEAD
5634
5635 === release 0.8.8 ===
5636
5637 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5638
5639         * NEWS:
5640         * RELEASE:
5641         * configure.ac:
5642           Releasing 0.8.8, "I'll Take Care Of You"
5643
5644 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5645
5646         * configure.ac:
5647           second prerelease
5648
5649 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5650
5651         patch by: Wim Taymans
5652
5653         * gst/gstbin.c:
5654           Fix for #159852 - make iterate emission threadsafe
5655
5656 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5657
5658         * docs/faq/cvs.xml:
5659           notes about new fdo account request
5660
5661 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
5662
5663         * docs/gst/gstreamer-docs.sgml:
5664         * docs/gst/tmpl/gstenumtypes.sgml:
5665         * docs/gst/tmpl/gstplugin.sgml:
5666         * docs/libs/gstreamer-libs-docs.sgml:
5667           Added missing short docs. Added ids for navigation.
5668
5669 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5670
5671         * docs/manual/advanced-autoplugging.xml:
5672         * docs/manual/advanced-schedulers.xml:
5673         * docs/manual/advanced-threads.xml:
5674           Rewrites. Remove cothreads, go a bit into opt specifically,
5675           document threads and their gotchas, and do some technical stuff
5676           on autoplugging plus add some working examples. Fixes #157395.
5677         * examples/manual/Makefile.am:
5678           Add typefind/autoplugger example (one that actually works).
5679           Remove queue example since it's a duplicate of the thread one.
5680
5681 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5682
5683         * gst/gstvalue.c: (gst_value_deserialize_string):
5684           use deprecated g_value_set_string_take_ownership to keep compatible
5685           with glib 2.2
5686
5687 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5688
5689         * gst/gstvalue.c: (gst_value_deserialize_string):
5690           revert last patch, only dom a g_utf8_validate now before accepting
5691           the string - caps parsing strips " from strings so we can't rely on
5692           them
5693         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5694           disable a test that tested the above and comment it
5695
5696 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
5697
5698         Patch reviewed by David Schleef  <ds@schleef.org>
5699
5700         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
5701         bug #153882)
5702         * win32/gstenumtypes.h: same
5703
5704 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5705
5706         * gst/gstpad.c: (gst_pad_query):
5707           Do query on realized pad, similar to how convert/send_event handle
5708           this. Also makes sense, since this pad belongs to the function to
5709           which this query will be sent. Fixes #158163.
5710
5711 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
5712
5713         * docs/manual/appendix-programs.xml: fix pipeline to actually work
5714
5715 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5716
5717         * docs/faq/general.xml: fix pipeline to actually work
5718
5719 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5720
5721         * gst/gstvalue.c: (gst_value_deserialize_string):
5722           check that a simple string that gets deserialized does not contain
5723           invalid characters
5724         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5725           remove a test that tested a wring behaviour
5726
5727 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
5728
5729         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5730
5731         * docs/manual/intro-motivation.xml:
5732           Fix typos.
5733
5734 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
5735
5736         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5737
5738         * docs/gst/tmpl/gstprobe.sgml:
5739           Fix documentation of probe callback - it is supposed to return
5740           FALSE, not TRUE, to remove data from the stream (#159087).
5741
5742 2004-12-16  Daniel Gazard  <dany42@free.fr>
5743
5744         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5745
5746         * gst/gstelementfactory.c: (gst_element_factory_create):
5747           Fix compile failure if compiling without libxml2 support (#149936).
5748
5749 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5750
5751         * docs/manual/advanced-autoplugging.xml:
5752         * docs/manual/highlevel-components.xml:
5753           Move spider from autoplugging to components. Autoplugging is for
5754           internals, not for solutions. ;-).
5755
5756 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5757
5758         * docs/random/ds/0.9-suggested-changes:
5759           Make note on device/location/uri property names.
5760
5761 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5762
5763         * docs/manual/advanced-autoplugging.xml:
5764         * docs/manual/advanced-clocks.xml:
5765         * docs/manual/advanced-interfaces.xml:
5766         * docs/manual/advanced-metadata.xml:
5767         * docs/manual/advanced-position.xml:
5768         * docs/manual/advanced-schedulers.xml:
5769         * docs/manual/advanced-threads.xml:
5770         * docs/manual/appendix-gnome.xml:
5771         * docs/manual/appendix-programs.xml:
5772         * docs/manual/appendix-quotes.xml:
5773         * docs/manual/autoplugging.xml:
5774         * docs/manual/basics-bins.xml:
5775         * docs/manual/basics-data.xml:
5776         * docs/manual/basics-elements.xml:
5777         * docs/manual/basics-helloworld.xml:
5778         * docs/manual/basics-init.xml:
5779         * docs/manual/basics-pads.xml:
5780         * docs/manual/basics-plugins.xml:
5781         * docs/manual/bins-api.xml:
5782         * docs/manual/bins.xml:
5783         * docs/manual/buffers-api.xml:
5784         * docs/manual/buffers.xml:
5785         * docs/manual/clocks.xml:
5786         * docs/manual/components.xml:
5787         * docs/manual/cothreads.xml:
5788         * docs/manual/debugging.xml:
5789         * docs/manual/dparams-app.xml:
5790         * docs/manual/dynamic.xml:
5791         * docs/manual/elements-api.xml:
5792         * docs/manual/elements.xml:
5793         * docs/manual/factories.xml:
5794         * docs/manual/gnome.xml:
5795         * docs/manual/goals.xml:
5796         * docs/manual/helloworld.xml:
5797         * docs/manual/helloworld2.xml:
5798         * docs/manual/highlevel-components.xml:
5799         * docs/manual/highlevel-xml.xml:
5800         * docs/manual/init-api.xml:
5801         * docs/manual/intro-basics.xml:
5802         * docs/manual/intro-motivation.xml:
5803         * docs/manual/intro-preface.xml:
5804         * docs/manual/intro.xml:
5805         * docs/manual/links-api.xml:
5806         * docs/manual/links.xml:
5807         * docs/manual/manual.xml:
5808         * docs/manual/motivation.xml:
5809         * docs/manual/pads-api.xml:
5810         * docs/manual/pads.xml:
5811         * docs/manual/plugins-api.xml:
5812         * docs/manual/plugins.xml:
5813         * docs/manual/programs.xml:
5814         * docs/manual/queues.xml:
5815         * docs/manual/quotes.xml:
5816         * docs/manual/schedulers.xml:
5817         * docs/manual/states-api.xml:
5818         * docs/manual/states.xml:
5819         * docs/manual/threads.xml:
5820         * docs/manual/typedetection.xml:
5821         * docs/manual/win32.xml:
5822         * docs/manual/xml.xml:
5823           Try 2. This time, include a short preface as a "general
5824           introduction", also add code blocks around all code samples
5825           so they get compiled. We still need a way to tell readers
5826           the filename of the code sample. In some cases, don't show
5827           all code in the documentation, but do include it in the generated
5828           code. This allows for focussing on specific bits in the docs,
5829           while still having a full test application available.
5830         * examples/manual/Makefile.am:
5831           Fix up examples for new ADM. Add several of the new examples that
5832           were either added or were missing from the build system.
5833         * examples/manual/extract.pl:
5834           Allow nameless blocks.
5835
5836 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5837
5838         * docs/manual/elements-api.xml:
5839         * docs/manual/helloworld.xml:
5840         * examples/manual/extract.pl:
5841           fix last example.  Add example of adding code blocks that are not
5842           shown in docbook output.
5843
5844 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5845
5846         * docs/manual/dynamic.xml:
5847         * docs/manual/elements-api.xml:
5848         * docs/manual/gnome.xml:
5849         * docs/manual/helloworld2.xml:
5850         * docs/manual/init-api.xml:
5851         * docs/manual/queues.xml:
5852         * docs/manual/threads.xml:
5853         * docs/manual/xml.xml:
5854         * examples/manual/extract.pl:
5855           Make it possible to extract example code from separate blocks.
5856           Should make Ronald happy.
5857
5858 2004-12-15  Wim Taymans  <wim@fluendo.com>
5859
5860         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5861         (remove_from_group), (group_elements_set_visited),
5862         (normalize_group), (gst_opt_scheduler_iterate):
5863         Fix bug where a flag was not updated on a decoupled entry point 
5864         because we were just checking the group element list and decoupled
5865         elements are not in that list..
5866
5867 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5868
5869         * docs/manual/advanced-autoplugging.xml:
5870         * docs/manual/advanced-clocks.xml:
5871         * docs/manual/advanced-dparams.xml:
5872         * docs/manual/advanced-interfaces.xml:
5873         * docs/manual/advanced-metadata.xml:
5874         * docs/manual/advanced-position.xml:
5875         * docs/manual/advanced-schedulers.xml:
5876         * docs/manual/advanced-threads.xml:
5877         * docs/manual/appendix-debugging.xml:
5878         * docs/manual/appendix-gnome.xml:
5879         * docs/manual/appendix-programs.xml:
5880         * docs/manual/appendix-quotes.xml:
5881         * docs/manual/appendix-win32.xml:
5882         * docs/manual/autoplugging.xml:
5883         * docs/manual/basics-bins.xml:
5884         * docs/manual/basics-data.xml:
5885         * docs/manual/basics-elements.xml:
5886         * docs/manual/basics-helloworld.xml:
5887         * docs/manual/basics-init.xml:
5888         * docs/manual/basics-pads.xml:
5889         * docs/manual/basics-plugins.xml:
5890         * docs/manual/bins-api.xml:
5891         * docs/manual/bins.xml:
5892         * docs/manual/buffers-api.xml:
5893         * docs/manual/buffers.xml:
5894         * docs/manual/clocks.xml:
5895         * docs/manual/components.xml:
5896         * docs/manual/cothreads.xml:
5897         * docs/manual/debugging.xml:
5898         * docs/manual/dparams-app.xml:
5899         * docs/manual/dynamic.xml:
5900         * docs/manual/elements-api.xml:
5901         * docs/manual/elements.xml:
5902         * docs/manual/factories.xml:
5903         * docs/manual/gnome.xml:
5904         * docs/manual/goals.xml:
5905         * docs/manual/helloworld.xml:
5906         * docs/manual/helloworld2.xml:
5907         * docs/manual/highlevel-components.xml:
5908         * docs/manual/highlevel-xml.xml:
5909         * docs/manual/init-api.xml:
5910         * docs/manual/intro-motivation.xml:
5911         * docs/manual/intro-preface.xml:
5912         * docs/manual/intro.xml:
5913         * docs/manual/links-api.xml:
5914         * docs/manual/links.xml:
5915         * docs/manual/manual.xml:
5916         * docs/manual/motivation.xml:
5917         * docs/manual/pads-api.xml:
5918         * docs/manual/pads.xml:
5919         * docs/manual/plugins-api.xml:
5920         * docs/manual/plugins.xml:
5921         * docs/manual/programs.xml:
5922         * docs/manual/queues.xml:
5923         * docs/manual/quotes.xml:
5924         * docs/manual/schedulers.xml:
5925         * docs/manual/states-api.xml:
5926         * docs/manual/states.xml:
5927         * docs/manual/threads.xml:
5928         * docs/manual/typedetection.xml:
5929         * docs/manual/win32.xml:
5930         * docs/manual/xml.xml:
5931           First try at rewriting the ADM. Needs lotsamore work, but some
5932           parts might already be somewhat useful.
5933         * docs/pwg/advanced-interfaces.xml:
5934           Remove properties interface, it never actually existed (except for
5935           on my HD...).
5936
5937 2004-12-13  David Schleef  <ds@schleef.org>
5938
5939         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
5940         be NULL (bug #160220).
5941
5942 2004-12-13  David Schleef  <ds@schleef.org>
5943
5944         * configure.ac: remove all mmx stuff, because it's not used.
5945         * docs/random/ds/0.9-suggested-changes: additional notes
5946         * include/Makefile.am: we don't use these anymore
5947         * include/mmx.h: remove
5948         * include/sse.h: remove
5949
5950 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5951
5952         * docs/random/mimetypes:
5953           Add FOURCC code for h264 codec (VSSH)
5954           Add alternate FOURCC codes for h263 related codecs
5955
5956 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
5957
5958         * docs/manual/programs.xml:
5959           Added more gst-launch examples.
5960
5961 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5962
5963         * gst/gstqueue.c: (gst_queue_handle_src_query):
5964           Check for availability again.
5965
5966 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5967
5968         * gst/gstcaps.c: (gst_caps_compare_structures):
5969           Simple caps go first. This has the nice side-effect of fixing an
5970           obscure warning.
5971
5972 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5973
5974         * gst/gstversion.h.in:
5975           Protect header.
5976
5977 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5978
5979         * gst/schedulers/gstoptimalscheduler.c:
5980         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
5981         (gst_opt_scheduler_get_wrapper):
5982           When we're recursing into a chain run, only run the directly
5983           related group, not all queued ones. This will fix a possible
5984           deadlock in chains with more than two groups.
5985
5986 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5987
5988         * autogen.sh:
5989           remove patch if autopoint fails
5990
5991 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5992
5993         * docs/gst/gstreamer-sections.txt:
5994           Document Thomas' addition, fix build, make Luis the sheriff happy.
5995
5996 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5997
5998         * gst/gstplugin.c:
5999         * gst/gstplugin.h:
6000           add accessor for version field
6001
6002 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6003
6004         submitted by: Luca Ferretti <elle.uca@infinito.it>
6005
6006         * po/LINGUAS:
6007         * po/it.po:
6008           New tranlation added: Italian
6009
6010 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6011
6012         * gst/gstpad.c: (gst_pad_is_negotiated),
6013         (gst_pad_get_negotiated_caps):
6014           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
6015           it doesn't actually check the contents), so be sure to hand it
6016           a RealPad else we'll crash.
6017
6018 2004-12-03  Wim Taymans  <wim@fluendo.com>
6019
6020         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
6021         (gst_queue_link), (gst_queue_handle_src_query):
6022         Reverted to 1.110 until this makes the testsuite and various
6023         apps work.
6024
6025 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
6026
6027         * docs/upload.mak: fix included CVS conflict strings
6028
6029 2004-12-01  William Jon McCann  <mccann@jhu.edu>
6030
6031         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6032
6033         * gst/gstelement.c: (gst_element_error_full):
6034           Use g_error_new_literal because error text may have
6035           percentage signs in it. Fixes #160019.
6036
6037 2004-12-01  Benjamin Otte  <otte@gnome.org>
6038
6039         * gst/elements/gstbufferstore.c:
6040         (gst_buffer_store_add_buffer_func):
6041           don't try to make subbuffers bigger than they can be. (fixes
6042           #159970)
6043
6044 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6045
6046         * docs/gst/gstreamer-sections.txt:
6047         * docs/gst/tmpl/gstvalue.sgml:
6048           Add new function to docs to fix build.
6049
6050 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6051
6052         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
6053         * gst/gstpad.c: (_gst_pad_default_fixate_value),
6054         (_gst_pad_default_fixate_foreach):
6055         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
6056         * gst/gstvalue.h:
6057           Deprecate _type_is_fixed, use _value_is_fixed instead, since
6058           in some cases (arrays), the fixedness depends on the content.
6059         * gst/gstqueue.c: (gst_queue_handle_src_query):
6060           Check for availability before doing something.
6061
6062 2004-11-29  Wim Taymans  <wim@fluendo.com>
6063
6064         * testsuite/threads/Makefile.am:
6065         * testsuite/threads/signals.c: (gst_test_get_type),
6066         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
6067         (gst_test_set_property), (gst_test_get_property),
6068         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
6069         (gst_test_do_prop), (run_thread), (main):
6070         Added a bunch of testcases that show threadsafety bugs in glib.
6071
6072 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
6073
6074         * docs/manual/programs.xml:
6075           Added a first batch of gst-launch examples, as provided by Ronald
6076           and others from the devel-mlist
6077
6078 2004-11-28  Benjamin Otte  <otte@gnome.org>
6079
6080         * gst/gstelement.c: (gst_element_negotiate_pads):
6081           simplify
6082         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
6083         (gst_value_serialize_string), (gst_value_deserialize_string):
6084           add unwrapping of previously wrapped strings. Fix bug in wrapping
6085           while at it.
6086         * testsuite/caps/value_serialize.c: (test1),
6087         (test_string_serialization), (test_string_deserialization), (main):
6088           add tests for string (de)serialization
6089
6090 2004-11-26  Wim Taymans  <wim@fluendo.com>
6091
6092         * testsuite/threads/159566.c: (object_deep_notify), (main):
6093         * testsuite/threads/Makefile.am:
6094         Added testsuite to show bug #159566
6095
6096 2004-11-25  Wim Taymans  <wim@fluendo.com>
6097
6098         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
6099         (gst_thread_child_state_change), (gst_thread_main_loop):
6100         Ref the thread object in the GThread mainloop. Break out of the
6101         thread mainloop if it holds the last ref. This properly exits
6102         the threads when disposing the thread from its own context. It
6103         also avoids possible deadlocks in the dispose function.
6104
6105 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
6106
6107         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
6108         it is necessary to wait.
6109
6110 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6111
6112         * docs/pwg/building-boiler.xml:
6113           Make description somewhat clearer.
6114
6115 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6116
6117         * docs/upload.mak:
6118           Apparently docs changed location on FDO's server.
6119
6120 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6121
6122         * docs/pwg/appendix-checklist.xml:
6123           Add some random notes on things to check when writing an element.
6124           This list can be extended as people see fit.
6125
6126 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
6127
6128         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
6129         (gst_queue_link_src): Allow for renegotiating the caps of the sink
6130         pad. The queue will now wait until it is empty and forward the new
6131         caps to the source.
6132         * gst/gstbin.c (gst_bin_set_element_sched)
6133         (gst_bin_unset_element_sched): Make sure that all elements and
6134         links are registered and unregistered with the scheduler exactly
6135         once. This elaborates on a fix by Benjamin Otte, but
6136         guarantees that decoupled elements are also registered.
6137
6138 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
6139
6140         * docs/manual/quotes.xml:
6141           add a quote
6142         * configure.ac:
6143         * gst/gst.c:
6144         * gst/gstinfo.c:
6145           add LIBDIR and move init message higher up so it's at the start
6146
6147 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
6148
6149         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
6150         * gstreamer.spec.in: add fair
6151
6152 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6153
6154         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6155         * gst/elements/gstidentity.c: (gst_identity_class_init):
6156           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
6157           <teuf@gnome.org> (#157263).
6158         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
6159         (gst_type_find_handle_src_query):
6160           Subtract size of internally stored data from position queries.
6161
6162 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
6163
6164         * gst/schedulers/fairscheduler.c:
6165         * gst/schedulers/faircothreads.c:
6166         * gst/schedulers/faircothreads.h:
6167         New cothread based scheduler: Fair scheduler.
6168         * gst/schedulers/gthread-cothreads.h: 
6169         Add the standard #if around the whole file.
6170         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
6171         compilation of the functions defined in this file. This is
6172         necessary to be able to use this file as a normal header.
6173         * gst/schedulers/Makefile.am: Add compiling support for fair
6174         scheduler.
6175         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
6176         scheduler cothreads layer from documentation generation.
6177
6178 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6179
6180         * gst/autoplug/gstspideridentity.c:
6181         (gst_spider_identity_sink_loop_type_finding):
6182           Don't crash if that function is not implemented.
6183
6184 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6185
6186         * docs/pwg/advanced-types.xml:
6187           Another typo.
6188
6189 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6190
6191         * docs/pwg/intro-preface.xml:
6192           Hm, ok, so the brackets weren't really useful...
6193         * docs/pwg/other-ntoone.xml:
6194           Fix embarassing typo.
6195
6196 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6197
6198         * docs/pwg/intro-preface.xml:
6199           Rewrite preface.
6200
6201 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6202
6203         * docs/pwg/advanced-scheduling.xml:
6204         * docs/pwg/advanced-tagging.xml:
6205         * docs/pwg/advanced-types.xml:
6206         * docs/pwg/building-boiler.xml:
6207         * docs/pwg/building-chainfn.xml:
6208         * docs/pwg/building-signals.xml:
6209         * docs/pwg/building-state.xml:
6210         * docs/pwg/building-testapp.xml:
6211         * docs/pwg/intro-basics.xml:
6212         * docs/pwg/other-manager.xml:
6213         * docs/pwg/other-source.xml:
6214           Typo fixes.
6215         * docs/pwg/other-manager.xml:
6216           Add some first content. No example code yet.
6217         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
6218           Remove double newlines.
6219
6220 2004-11-04  Wim Taymans  <wim@fluendo.com>
6221
6222         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6223         (remove_from_group), (normalize_group), (group_migrate_connected),
6224         (gst_opt_scheduler_iterate):
6225         * testsuite/schedulers/.cvsignore:
6226         * testsuite/schedulers/Makefile.am:
6227         * testsuite/schedulers/queue_link.c: (main):
6228         Added testcase for scheduler segfault.
6229         Fix scheduler segfault when removing a decoupled
6230         entry point as the last element from a group.
6231
6232 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6233
6234         * gst/gstmarshal.list: add missing marshaller, fixes build
6235
6236 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6237
6238         * docs/random/signal: added notes about using BOXED for GstBuffer
6239         signal marshallers, not POINTER
6240
6241 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6242
6243         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6244         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
6245         POINTER=>BOXED changes to marshal GstBuffers
6246
6247 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6248
6249         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
6250         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
6251
6252 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
6253
6254         * docs/gst/gstreamer-sections.txt:
6255         * docs/gst/tmpl/gstcaps.sgml:
6256         * docs/gst/tmpl/gsterror.sgml:
6257         * docs/gst/tmpl/gstinfo.sgml:
6258         * docs/gst/tmpl/gstmacros.sgml:
6259         * docs/gst/tmpl/gstutils.sgml:
6260         * docs/random/ensonic/interfaces.txt:
6261         * gst/gstinfo.h:
6262           added some more docs, removed two obsolete defines
6263
6264 2004-11-02  Kjartan Maraas <as at gnome.org>
6265
6266         reviewed by: Wim Taymans, Ronald Bultje.
6267
6268         * gst/cothreads.c: (cothread_create):
6269         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
6270         (gst_bin_child_state_change_func):
6271         * gst/gstbuffer.c: (gst_buffer_span):
6272         * gst/gstelement.c: (gst_element_get_index),
6273         (gst_element_get_event_masks), (gst_element_get_query_types),
6274         (gst_element_get_formats):
6275         * gst/gsterror.c: (_gst_core_errors_init),
6276         (_gst_library_errors_init), (_gst_resource_errors_init),
6277         (_gst_stream_errors_init):
6278         * gst/gstobject.c: (gst_object_default_deep_notify):
6279         * gst/gstpad.c: (gst_pad_get_event_masks),
6280         (gst_pad_get_internal_links_default):
6281         * gst/gstplugin.c: (gst_plugin_register_func),
6282         (gst_plugin_get_module):
6283         * gst/gststructure.c: (gst_structure_get_string),
6284         (gst_structure_get_abbrs), (gst_structure_from_abbr),
6285         (gst_structure_to_abbr):
6286         * gst/gstutils.c: (gst_print_element_args):
6287         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6288         (setup_group_scheduler), (gst_opt_scheduler_iterate):
6289         Aplied part of patch #157127: Cleanup of issues reported by 
6290         sparse.
6291         Also do not try to use cothreads when there is no cothread
6292         context yet.
6293
6294 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
6295
6296         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6297         (gst_opt_scheduler_iterate):
6298         Applied patch #154061. Running a pipeline in which an element 
6299         calls GST_ELEMENT_ERROR in the chain function, the opt 
6300         scheduler doesn't unref the chain so it never gets freed.
6301
6302 2004-11-02  Wim Taymans  <wim@fluendo.com>
6303
6304         * gst/gststructure.c: (gst_structure_get_abbrs),
6305         (gst_structure_from_abbr), (gst_structure_to_abbr):
6306         Remove that ugly if-then thing in the code that converts
6307         between strings and types.
6308
6309 2004-11-02  Wim Taymans  <wim@fluendo.com>
6310
6311         * gst/gstscheduler.c: (gst_scheduler_add_element),
6312         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
6313         Aplied clock distribution patch, this should fix bug
6314         #148787.
6315
6316 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
6317
6318         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
6319
6320         * po/LINGUAS:
6321         * po/nb.po:
6322           Added Norwegian Bokmaal translation
6323
6324 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6325
6326         * tools/gst-inspect.c: (print_signal_info):
6327           print signal arguments as pointers if they are
6328
6329 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
6330
6331         * docs/pwg/building-boiler.xml:
6332           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
6333
6334 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6335
6336         * gst/parse/parse.l:
6337         * testsuite/parse/parse1.c: (main):
6338         Since parse can do 'element name=a:b' make 'a:b.' work as
6339         well. 
6340         Added testcase to verify fix.
6341
6342 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6343
6344         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
6345         Use the realpad when printing the direction.
6346         Add extra \n when printing extensions of typefind factories.
6347
6348 2004-10-13  David Schleef  <ds@schleef.org>
6349
6350         * examples/manual/Makefile.am: $< isn't portable in Makefile
6351         rules.
6352
6353 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
6354
6355         * docs/gst/tmpl/gstobject.sgml:
6356         * docs/gst/tmpl/gstplugin.sgml:
6357         * docs/gst/tmpl/gstpluginfeature.sgml:
6358         * docs/gst/tmpl/gstregistry.sgml:
6359         * docs/gst/tmpl/gstversion.sgml:
6360         * gst/gstbin.c:
6361           more api documentation
6362         * gst/gstplugin.c: (gst_plugin_register_func),
6363         (gst_plugin_check_file), (gst_plugin_load_file):
6364           better error signaling and logging
6365
6366 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6367
6368         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
6369           Subtract current queue contents from position queries.
6370
6371 2004-10-11  Johan Dahlin  <johan@gnome.org>
6372
6373         * gst/gsturi.c (gst_uri_get_location): unescape string
6374         (gst_uri_construct): escape string.
6375
6376 2004-10-11  Benjamin Otte  <otte@gnome.org>
6377
6378         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
6379         (gst_pad_try_set_caps_nonfixed):
6380           allow renegotiation of unconnected pads (as inside spider). Simply
6381           return OK if unconnected - mimic try_set_caps there.
6382
6383 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6384
6385         * gst/gstbin.c: (gst_bin_sync_children_state):
6386           Add missing break.
6387
6388 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6389
6390         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
6391         Set element to EOS before sending EOS event
6392
6393 2004-10-08  Wim Taymans  <wim at fluendo dot com>
6394
6395         * gst/elements/gsttypefindelement.c:
6396         (gst_type_find_element_handle_event):
6397         Handle EOS events when doing the transition from
6398         typefind to data passing. This should fix the
6399         infinite loops in short files.
6400
6401 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6402
6403         * gst/gstthread.c: (gst_thread_change_state),
6404         (gst_thread_child_state_change):
6405         Make sure no iteration happens while performing
6406         the state change as it could mess up the internal
6407         consistency of the thread state.
6408
6409 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6410
6411         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
6412         (gst_thread_change_state), (gst_thread_child_state_change):
6413         Do not try to grab the iterate lock in the state change method
6414         when we are in the same thread as the iterate or else we
6415         could deadlock. Some other cleanups.
6416
6417 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6418
6419         * configure.ac:
6420           bump nano to cvs
6421
6422 === release 0.8.7 ===
6423
6424 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6425
6426         * configure.ac:
6427         * NEWS:
6428         * RELEASE:
6429         * configure.ac:
6430           releasing 0.8.7, "A Cruise"
6431
6432 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6433
6434         * docs/random/mimetypes:
6435         Add an entry for Sony ATRAC3 audio format with mime-type
6436         used by rmdemux et riff-read
6437
6438 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6439
6440         * gst/elements/gsttypefindelement.c: (stop_typefinding):
6441         Push the buffer store instead of clearing it in case that
6442         the stream is not seekable.
6443
6444 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6445
6446         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
6447         (gst_thread_main_loop):
6448         Lock the iteration and the state change so that automatic
6449         negotiation and fixation does not happen at the same time
6450         as the in stream negotiation.
6451
6452 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6453
6454         * configure.ac:
6455           bump nano to cvs
6456
6457 === release 0.8.6 ===
6458
6459 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6460
6461         * configure.ac:
6462         * NEWS:
6463         * RELEASE:
6464         * configure.ac:
6465           releasing 0.8.6, "Narc"
6466
6467 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6468
6469         * configure.ac:
6470           prerel bump
6471
6472 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6473
6474         patch by: Steve Lhomme
6475
6476         * gst/elements/gstfakesrc.c:
6477         * gst/elements/gstidentity.c:
6478         * gst/gstthread.c:
6479           Fix for #153881
6480
6481 2004-10-01  Wim Taymans  <wim at fluendo dot com>
6482
6483         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
6484         Fix threadsafety of the crc checking function.
6485
6486 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6487
6488         patch by: Ronald Bultje
6489
6490         * gst/elements/gsttypefindelement.c: (stop_typefinding),
6491         (gst_type_find_element_handle_event),
6492         (gst_type_find_element_chain):
6493         * gst/elements/gsttypefindelement.h:
6494          #153657.
6495          Filter out discont event from seekable sources when typefind
6496          asks them to seek.  Fixes typefind with demuxers for
6497          avi, asf and matroska.
6498
6499 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6500
6501         * docs/gst/gstreamer-sections.txt:
6502         * gst/gstcaps.c:
6503         * gst/gstcaps.h:
6504         * gst/gstpad.c:
6505           Revert preferred caps: (#147789)
6506
6507 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
6508
6509         * win32/dirent.c:
6510           fix a memory leak
6511
6512 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6513
6514         * configure.ac:
6515           bump for prerelease
6516
6517 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6518
6519         * docs/Makefile.am:
6520         * docs/manual/elements-api.xml:
6521           restructure so that common stuff is shown first
6522         * docs/manual/init-api.xml:
6523           convert to examples
6524         * docs/manual/manual.xml:
6525         * docs/manuals.mak:
6526         * docs/url.entities:
6527           link to API on the website, possibly override later in build
6528         * examples/manual/.cvsignore:
6529           ignore more
6530         * examples/manual/Makefile.am:
6531           add more examples
6532         * examples/manual/extract.pl:
6533           error out on failure
6534
6535 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6536
6537         * docs/gst/tmpl/gstthread.sgml:
6538         * docs/manual/init-api.xml:
6539         * examples/manual/Makefile.am:
6540           convert two code bits to examples
6541
6542 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6543
6544         * gst/gstelement.c: (gst_element_change_state):
6545           Well, actually, I was about to remove this insane assert when
6546           I noticed Wim already did that. A warning is nice so we can
6547           fix actual ugs (using --g-fatal-warnings and backtraces), so
6548           I added that instead.
6549
6550 2004-09-06  Wim Taymans  <wim@fluendo.com>
6551
6552         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
6553         (gst_element_threadsafe_properties_post_run),
6554         (gst_element_set_state), (gst_element_change_state):
6555         Added extra refcounting around various places. 
6556
6557 2004-09-06  Wim Taymans  <wim@fluendo.com>
6558
6559         * gst/gstpad.c: (gst_pad_link_call_link_functions):
6560         Fix debug info.
6561
6562 2004-09-06  Wim Taymans  <wim@fluendo.com>
6563
6564         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6565         (remove_from_group):
6566         Some more debug info.
6567
6568 2004-09-03  Wim Taymans  <wim@fluendo.com>
6569
6570         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
6571         (gst_fakesrc_init), (gst_fakesrc_set_clock),
6572         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
6573         (gst_fakesrc_get), (gst_fakesrc_change_state):
6574         * gst/elements/gstfakesrc.h:
6575         * gst/elements/gstidentity.c: (gst_identity_class_init),
6576         (gst_identity_init), (gst_identity_chain),
6577         (gst_identity_set_property), (gst_identity_get_property),
6578         (gst_identity_change_state):
6579         * gst/elements/gstidentity.h:
6580         Added datarate properties to limit the datarate.
6581
6582 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6583
6584         * gst/autoplug/gstspider.c: (plugin_init):
6585           don't set a rank. We don't want to autoplug by inserting spiders.
6586
6587 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6588
6589         * gst/autoplug/gstspider.c: (gst_spider_class_init),
6590         (gst_spider_identity_plug):
6591           add a template for spider's sink
6592         * gst/gst.c: (gst_register_core_elements):
6593           queue's rank should be NULL, we don't want spider to add it.
6594
6595 2004-08-18  David Schleef  <ds@schleef.org>
6596
6597         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
6598         * docs/libs/Makefile.am: same
6599         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
6600         * docs/random/ds/0.9-planning: random additions
6601         * docs/random/ds/0.9-suggested-changes: same
6602         * gst/gstxml.h: remove vestigal GstXMLNs definition
6603
6604         Preferred caps: (#147789)
6605         * docs/gst/gstreamer-sections.txt: Add symbols
6606         * docs/gst/tmpl/gstcaps.sgml: Add symbols
6607         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
6608         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
6609         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
6610         (gst_caps_get_preferred), (gst_caps_set_preferred),
6611         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
6612         (gst_caps_use_preferred): Handle caps preferences
6613         * gst/gstcaps.h: Add caps preferences
6614         * gst/gstpad.c: (gst_pad_link_get_preferred),
6615         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
6616         (gst_pad_renegotiate), (gst_pad_guess_preferred),
6617         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
6618         negotiation.
6619
6620 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6621
6622         * gst/autoplug/gstspideridentity.c:
6623         (gst_spider_identity_request_new_pad):
6624         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
6625         (gst_aggregator_init):
6626         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
6627         (gst_fakesink_init):
6628         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
6629         (gst_fakesrc_init):
6630         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
6631         (gst_fdsink_init):
6632         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
6633         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
6634         (gst_filesink_init):
6635         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
6636         (gst_filesrc_init):
6637         * gst/elements/gstidentity.c: (gst_identity_base_init),
6638         (gst_identity_init):
6639         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
6640         (gst_multifilesrc_init):
6641         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
6642         (gst_pipefilter_init):
6643         * gst/elements/gststatistics.c: (gst_statistics_base_init),
6644         (gst_statistics_init):
6645         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
6646         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
6647           s/gst_pad_new/&_from_template/
6648           register pad templates in the base_init function
6649           add static pad template definitions
6650
6651 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6652
6653         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
6654         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
6655         * testsuite/refcounting/pad.c: (main):
6656         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
6657           s/gst_pad_new/&_from_template/
6658           prepare deprecation of gst_pad_new
6659
6660 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
6661
6662         patch by: Luca Ognibene <skaboy81@virgilio.it>
6663
6664         * gst/gstcaps.c:
6665         * gst/gstelement.c:
6666         * gst/gstpad.c:
6667         * gst/gstxml.c:
6668           fix memleaks.  Fixes #150001
6669
6670 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6671
6672         * docs/random/ds/0.9-suggested-changes:
6673           add notes - mostly about pad templates
6674
6675 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
6676
6677         * win32/GStreamer.vcproj:
6678           temporary locale files are .gmo not .mo
6679
6680 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6681
6682         * configure.ac: bump nano to cvs
6683
6684 === release 0.8.5 ===
6685
6686 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6687
6688         * configure.ac:
6689           releasing 0.8.5, "Stuttgart"
6690         * NEWS:
6691         * RELEASE:
6692         * configure.ac:
6693         * docs/random/release:
6694           updates for release
6695
6696 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6697
6698         patch by: Wim Taymans (wim@fluendo.com)
6699
6700         * gst/gstbuffer.c:
6701         * gst/gstindex.h:
6702         * libs/gst/dataprotocol/dataprotocol.c:
6703           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
6704
6705 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6706
6707         * Makefile.am:
6708         * win32/MANIFEST:
6709           add win32 dir to the build.  Fixes #149981.
6710
6711 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6712
6713         * configure.ac:
6714           bump libtool versioning
6715         * gst/gststructure.c:
6716           mark function as static
6717         * po/af.po:
6718         * po/az.po:
6719         * po/ca.po:
6720         * po/cs.po:
6721         * po/en_GB.po:
6722         * po/fr.po:
6723         * po/nl.po:
6724         * po/sq.po:
6725         * po/sr.po:
6726         * po/sv.po:
6727         * po/tr.po:
6728         * po/uk.po:
6729           translations update
6730         * win32/README.txt:
6731           trademark protection
6732
6733 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6734
6735         * configure.ac:
6736           fix GST_ORIGIN
6737           set GST_PACKAGE to source, and distinguish between release and other
6738         * tools/gst-inspect.c:
6739           print out plugin an element factory is part of so we see this info
6740
6741 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6742
6743         * docs/gst/gstreamer-sections.txt:
6744         * docs/gst/tmpl/gstbuffer.sgml:
6745         * docs/gst/tmpl/gstschedulerfactory.sgml:
6746           reorder docs a little, make GstBuffer's more sensible.
6747         * gst/gstbuffer.h:
6748           API: added GST_BUFFER_FLAG_DELTA_UNIT
6749         * gst/gstscheduler.c:
6750           comment API addition
6751
6752 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6753
6754         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6755           work with non-regular files that can be mmapped (like /dev/zero)
6756         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
6757           get rid of typefinds that require a seek when we can't seek instead
6758           of trying them over and over again
6759         * tools/gst-launch.c: (idle_func), (error_cb), (main):
6760           return non-zero failure value when the pipeline was interrupted or
6761           an error occurred
6762
6763 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6764
6765         * win32/config.h:
6766         * win32/GStreamer.vcproj:
6767           compile and install the locales
6768
6769 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6770
6771         * gst/gstvalue.c:
6772           fix a possible memory leak under Windows
6773
6774 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6775
6776         * win32/GStreamer.vcproj:
6777           fix a memory leak that occured under Windows
6778         * win32/gstreamer.def:
6779           add gst_scheduler_register
6780
6781 2004-08-11  Benjamin Otte  <otte@gnome.org>
6782
6783         * docs/gst/gstreamer-sections.txt:
6784         * gst/gstscheduler.c: (gst_scheduler_register):
6785         * gst/gstscheduler.h:
6786           API:
6787           add gst_scheduler_register shortcut similar to gst_element_register
6788         * gst/schedulers/entryscheduler.c: (plugin_init):
6789         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
6790         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
6791           use it
6792
6793 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
6794
6795         * gst/gstvalue.h:
6796           fix a memory leak that occured under Windows
6797
6798 2004-08-10  Colin Walters  <walters@redhat.com>
6799
6800         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
6801         Don't use O_EXCL to open temporary registry.  It will prevent
6802         registry creation if a temporary one already exists, which
6803         is unnecessary.
6804
6805 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6806
6807         * docs/gst/gstreamer-sections.txt:
6808         * docs/gst/tmpl/gstvalue.sgml:
6809           remove some valuable stuff from the documentation due to the use of GST_EXPORT
6810
6811 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6812
6813         * win32/gstbytestream.vcproj:
6814         * win32/gstelements.vcproj:
6815         * win32/gstgetbits.vcproj:
6816         * win32/gst-inspect.vcproj:
6817         * win32/gst-launch.vcproj:
6818         * win32/gstoptimalscheduler.vcproj:
6819         * win32/GStreamer.vcproj:
6820         * win32/gst-register.vcproj:
6821         * win32/gstspider.vcproj:
6822           update the include and lib dirs to fit standard libraries as
6823           described in the Win32 manual
6824
6825 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6826
6827         * win32/config.h:
6828         * win32/gstversion.h:
6829           enable NLS again, push the version number for the coming 0.8.5 release
6830
6831 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6832
6833         * gst/gstvalue.h:
6834           export gst_type_XXX for windows DLLs
6835
6836 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6837
6838         * docs/faq/gst-uninstalled:
6839           fix PKG_CONFIG_PATH and PYTHONPATH
6840         * gst/schedulers/Makefile.am:
6841           cleanup
6842         * libs/gst/bytestream/bytestream.c:
6843           remove newline
6844         * po/LINGUAS:
6845         * po/sq.po:
6846           adding Albanian translation (Laurent Dhima)
6847         * po/cs.po:
6848           updated
6849
6850 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6851
6852         * po/ca.po:
6853         * po/sv.po:
6854           updated translations
6855
6856 2004-08-04  Benjamin Otte  <otte@gnome.org>
6857
6858         * tests/mass_elements.c: (main):
6859           allow specifying src and sink element explicitly, so I can test
6860           videotestsrc instead of fakesrc
6861
6862 2004-08-04  Benjamin Otte  <otte@gnome.org>
6863
6864         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
6865         (gst_structure_id_empty_new), (gst_structure_empty_new),
6866         (gst_structure_copy):
6867           add gst_structure_id_empty_new_with_size to allow preallocating
6868           value array sizes. Use this in gst_structure_copy to get rid of
6869           reallocs.
6870           don't do quark=>string=>quark when copying structures
6871
6872 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
6873
6874         * docs/manual/win32.xml:
6875         * win32/README.txt:
6876           update documentation with the clean version of dependencies
6877
6878 2004-08-03  Benjamin Otte  <otte@gnome.org>
6879
6880         * gst/schedulers/entryscheduler.c:
6881         (gst_entry_scheduler_remove_element):
6882           fix for GST_DISABLE_DEBUG
6883         * tools/gst-launch.c: (print_tag):
6884           fixes for G_DISABLE_ASSERT
6885
6886 2004-08-03  Benjamin Otte  <otte@gnome.org>
6887
6888         * gst/gst.c: (gst_register_core_elements):
6889           fix for G_DISABLE_ASSERT
6890         * gst/gstinfo.c: (__gst_in_valgrind):
6891           add for GST_DISABLE_DEBUG
6892
6893 2004-08-03  Benjamin Otte  <otte@gnome.org>
6894
6895         * gst/parse/parse.l:
6896           fix for G_DISABLE_ASSERT
6897
6898 2004-08-03  Wim Taymans  <wim@fluendo.com>
6899
6900         * gst/gstbin.c: (gst_bin_get_type),
6901         (gst_bin_child_state_change_func):
6902         * gst/gstthread.c: (gst_thread_change_state):
6903         Backported some debug logging from a reverted patch
6904         Don't try to destroy the thread twice. Added some more
6905         debugging in GstThread. Unlock and signal even if we
6906         are in the thread context.
6907
6908 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6909
6910         * po/uk.po:
6911           updated translation
6912
6913 2004-07-30  David Schleef  <ds@schleef.org>
6914
6915         * gst/gstatomic_impl.h: Enable atomic code for x86_64
6916
6917 2004-07-29  David Schleef  <ds@schleef.org>
6918
6919         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
6920         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
6921
6922 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
6923
6924         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
6925         (gst_bin_add_func), (gst_bin_remove_func),
6926         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
6927         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
6928         (gst_bin_change_state_norecurse), (gst_bin_dispose),
6929         (gst_bin_sync_children_state):
6930         * gst/gstbin.h:
6931         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
6932         (gst_thread_change_state):
6933         * testsuite/states/Makefile.am:
6934           revert state change patches as agreed so we can rework them
6935           gradually
6936
6937 2004-07-29  Benjamin Otte  <otte@gnome.org>
6938
6939         * libs/gst/control/Makefile.am:
6940           link to libgstreamer (fixes Debian bug 262019, see
6941           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
6942
6943 2004-07-29  Wim Taymans  <wim@fluendo.com>
6944
6945         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6946         (check_from_fraction_convert), (transform_test), (main):
6947         Make the test less pedantic about float roundoff errors.
6948
6949 2004-07-29  Benjamin Otte  <otte@gnome.org>
6950
6951         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
6952         (gst_filesrc_srcpad_event):
6953           make seek events to before start/after end of file not fail, but
6954           seek to start/end instead
6955         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
6956           add more output
6957
6958 2004-07-29  Benjamin Otte  <otte@gnome.org>
6959
6960         * gst/gstpad.c: (gst_pad_set_explicit_caps):
6961           check that caps are fixed
6962         * gst/gstpad.c: (gst_pad_template_new):
6963           don't try to simplify caps, costs too much time on gst_init
6964         * gst/gstplugin.c: (gst_plugin_add_feature):
6965           G_ERROR if features are added twice
6966         * gst/gsttypefind.c: (gst_type_find_register):
6967         * gst/gstelementfactory.c: (gst_element_register):
6968           don't add features twice
6969         * docs/random/ds/0.9-suggested-changes:
6970           add note about possible gst_init optimization
6971
6972 2004-07-28  David Schleef  <ds@schleef.org>
6973
6974         * testsuite/elements/Makefile.am:
6975         * testsuite/elements/struct_i386.h:
6976         * testsuite/elements/struct_size.c: (main):  A little test
6977         to keep distcheck from working if someone changes a structure
6978         size accidentally.
6979
6980 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6981
6982         * docs/libs/Makefile.am:
6983         * docs/libs/gstreamer-libs-docs.sgml:
6984         * docs/libs/gstreamer-libs-sections.txt:
6985         * docs/libs/tmpl/gstbytestream.sgml:
6986         * docs/libs/tmpl/gstcontrol.sgml:
6987         * docs/libs/tmpl/gstdataprotocol.sgml:
6988         * docs/libs/tmpl/gstgetbits.sgml:
6989         * libs/gst/bytestream/Makefile.am:
6990         * libs/gst/bytestream/bytestream.c:
6991         * libs/gst/bytestream/bytestream.h:
6992         * libs/gst/control/Makefile.am:
6993         * libs/gst/dataprotocol/Makefile.am:
6994         * libs/gst/getbits/Makefile.am:
6995         * libs/gst/getbits/getbits.h:
6996           various doc and style fixes, adding bytestream to libs docs.
6997
6998 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6999
7000         * docs/gst/gstreamer-docs.sgml:
7001         * docs/libs/Makefile.am:
7002         * docs/libs/gstreamer-libs-docs.sgml:
7003         * docs/libs/gstreamer-libs-sections.txt:
7004         * libs/gst/control/dparam.c:
7005           more doc fixes.  gst-libs docs now build the same way as gst.
7006
7007 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7008
7009         * configure.ac:
7010         * testsuite/Makefile.am:
7011         * testsuite/bins/Makefile.am:
7012         * testsuite/caps/Makefile.am:
7013         * testsuite/cleanup/Makefile.am:
7014         * testsuite/clock/Makefile.am:
7015         * testsuite/debug/Makefile.am:
7016         * testsuite/dlopen/Makefile.am:
7017         * testsuite/dynparams/Makefile.am:
7018         * testsuite/elements/.cvsignore:
7019         * testsuite/elements/Makefile.am:
7020         * testsuite/enumcaps/Makefile.am:
7021         * testsuite/enumcaps/enumcaps.c:
7022         * testsuite/ghostpads/Makefile.am:
7023         * testsuite/indexers/Makefile.am:
7024         * testsuite/negotiation/Makefile.am:
7025         * testsuite/parse/Makefile.am:
7026         * testsuite/plugin/Makefile.am:
7027         * testsuite/refcounting/Makefile.am:
7028         * testsuite/schedulers/.cvsignore:
7029         * testsuite/states/Makefile.am:
7030         * testsuite/tags/Makefile.am:
7031         * testsuite/threads/Makefile.am:
7032           fold enumcaps into caps dir
7033           clean up Makefile.am's for testsuite
7034
7035 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7036
7037         * docs/gst/Makefile.am:
7038         * docs/libs/Makefile.am:
7039           clean up docs build.  Fixes needless rebuilding of template files.
7040
7041 2004-07-28  Wim Taymans  <wim@fluendo.com>
7042
7043         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
7044         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
7045         Make sure that a bin state change tries to keep the children
7046         in sync. 
7047         Added debug logging to the thread.
7048
7049 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
7050
7051         * win32/GStreamer.vcproj:
7052         * win32/gstreamer.def:
7053           more exports for the plugins
7054
7055 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
7056
7057         * win32/gstgetbits.vcproj:
7058         * win32/gstgetbits.def:
7059         * win32/msvc71.sln:
7060           add support for the getbits plugin
7061
7062 2004-07-27  Wim Taymans  <wim@fluendo.com>
7063
7064         * gst/gstvalue.c: (gst_value_transform_double_fraction),
7065         (gst_value_transform_fraction_double), (_gst_value_initialize):
7066         * testsuite/caps/Makefile.am:
7067         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
7068         (check_from_fraction_convert), (transform_test), (main):
7069         Added transform functions between double and fraction.
7070         Added testcase to verify transforms
7071
7072 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7073
7074         * win32/GStreamer.vcproj:
7075           rename GStreamer-0.8.lib to libgstreamer.lib
7076
7077 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7078
7079         * win32/gstelements.vcproj:
7080         * win32/gstoptimalscheduler.vcproj:
7081           fixes for the Release build
7082
7083 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7084
7085         * win32/config.h:
7086           update the version number
7087
7088 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7089
7090         * win32/GStreamer.vcproj:
7091           add gstinterface to the build
7092
7093 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7094
7095         * win32/gstreamer.def:
7096           add many definitions needed by plugins,
7097           GST_CAT_DEFAULT only available in the Debug build ?
7098
7099 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7100
7101         * gst/gstelement.c: (gst_element_set_eos_recursive):
7102           various whitespace fixes.
7103           doc fix, fixes #148497
7104
7105 2004-07-25  Benjamin Otte  <otte@gnome.org>
7106
7107         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
7108           don't delay links on the sink elements, it causes unnegotiated
7109           links.
7110         * gst/elements/gsttypefindelement.c:
7111         (gst_type_find_element_base_init):
7112           add our padtemplates, we indeed do have some.
7113         * gst/elements/gsttypefindelement.c:
7114         (gst_type_find_element_handle_event),
7115         (gst_type_find_element_chain):
7116           don't push data when typefinding failed.
7117         * gst/gstpad.c: (gst_pad_link_fixate):
7118           check that no fixate function returns empty caps.
7119         * gst/gstpad.c: (gst_pad_push):
7120           check that the link is negotiated before data gets pushed.
7121         * tools/gst-register.c: (main):
7122           don't assert (fixes #148283)
7123
7124 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7125
7126         * docs/gst/gstreamer-sections.txt:
7127         * docs/gst/tmpl/gstconfig.sgml:
7128           add GST_PLUGIN_EXPORT definition
7129
7130 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7131
7132         * gst/gstplugin.h:
7133         * gst/gstconfig.h.in:
7134         * win32/gstconfig.h:
7135         * win32/gstelements.def:
7136         * win32/gstelements.vcproj:
7137         * win32/gstoptimalscheduler.def:
7138         * win32/gstoptimalscheduler.vcproj:
7139         * win32/gstspider.def:
7140         * win32/gstspider.vcproj:
7141           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
7142
7143 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7144
7145         * docs/gst/gstreamer-sections.txt:
7146           remove GST_CAT_DEFAULT because the type has changed
7147
7148 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7149
7150         * win32/gstbytestream.vcproj:
7151         * win32/gstelements.vcproj:
7152         * win32/gst-inspect.vcproj:
7153         * win32/gst-launch.vcproj:
7154         * win32/gstoptimalscheduler.vcproj:
7155         * win32/GStreamer.vcproj:
7156         * win32/gst-register.vcproj:
7157         * win32/gstspider.vcproj:
7158         * win32/msvc71.sln:
7159           Copy the files where needed after building, The testsuite will be
7160           built separately
7161
7162 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7163
7164         * win32/config.h:
7165         * win32/README.txt:
7166         * docs/manual/win32.xml:
7167         Fixed the plugin and GStreamer location
7168
7169 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7170
7171         * win32/gstreamer.def:
7172         More exports for the plugins
7173
7174 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7175
7176         * gst/gstinfo.h:
7177         Marc was right, we need to export literally GST_CAT_DEFAULT
7178
7179 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7180
7181         * win32/config.h:
7182         NLS crashes in gettext, disabled until this is solved
7183
7184 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7185
7186         * win32/gst-inspect.vcproj:
7187         * win32/gst-launch.vcproj:
7188         Should use NLS when available
7189
7190 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7191
7192         * gst/registries/gstxmlregistry.c:
7193         removing the file doesn't seem to be a good idea on Linux
7194
7195 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7196
7197         * gst/registries/gstxmlregistry.c:
7198         Remove the registry before renaming the tempfile (needed for Windows)
7199
7200 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7201
7202         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
7203         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
7204         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
7205         * gst/elements/gstmultifilesrc.h:
7206         Added newmedia property so it generates newmedia events between each
7207         file when property is set, as well as fixed eos handling
7208
7209 2004-07-22  David Schleef  <ds@schleef.org>
7210
7211         * gst/gststructure.c: (gst_structure_id_empty_new),
7212         (gst_structure_empty_new):  Set type field correctly.
7213         * gst/gststructure.h: Check type field correctly.
7214         * testsuite/caps/Makefile.am:
7215         * testsuite/caps/structure.c: (test1), (main): Add a very small
7216         test for structures.
7217
7218 2004-07-22  David Schleef  <ds@schleef.org>
7219
7220         * docs/random/ds/0.9-suggested-changes: more comments
7221         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
7222
7223 2004-07-22  Benjamin Otte  <otte@gnome.org>
7224
7225         * gst/gstelementfactory.c: (gst_element_register):
7226           set the factory in the class struct, so gst_element_get_factory
7227           actually works
7228         * gst/parse/grammar.y:
7229           set element to playing when it gets unlocked as we can't rely on the
7230           bin state - all elements in the bin state might still be locked in
7231           NULL)
7232
7233 2004-07-22  Benjamin Otte  <otte@gnome.org>
7234
7235         * gst/gstelement.c: (gst_element_set_state_func):
7236           make this a static function
7237
7238 2004-07-22  Wim Taymans  <wim@fluendo.com>
7239
7240         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
7241         (gst_opt_scheduler_pad_link):
7242         fix 147894-2 and the group_link problem.
7243
7244 2004-07-22  Wim Taymans  <wim@fluendo.com>
7245
7246         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7247         (handoff_identity), (main):
7248         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7249         (handoff_identity), (main):
7250         * testsuite/schedulers/Makefile.am:
7251         * testsuite/schedulers/group_link.c: (main):
7252         Show bug in scheduler when linking chain and loop based element 
7253         where the chain based element was not yet in a group.
7254
7255 2004-07-21  Benjamin Otte  <otte@gnome.org>
7256
7257         * gst/.cvsignore:
7258         * gst/autoplug/.cvsignore:
7259         * gst/elements/.cvsignore:
7260         * gst/indexers/.cvsignore:
7261         * libs/gst/bytestream/.cvsignore:
7262         * libs/gst/control/.cvsignore:
7263         * libs/gst/getbits/.cvsignore:
7264         * testsuite/states/.cvsignore:
7265         * testsuite/threads/.cvsignore:
7266           keep this up to date, since I seem to be the only one who cares
7267           about not missing files on commits (editor's note: no you don't,
7268           but feel free to change them at the time you add stuff instead
7269           of later on)
7270
7271 2004-07-21  Benjamin Otte  <otte@gnome.org>
7272
7273         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7274         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
7275         (gst_bin_child_state_change_func), (set_kid_state_func),
7276         (gst_bin_set_state), (gst_bin_change_state_norecurse):
7277           make state changes work correctly and reentrant (so removing
7278           elements from bins during state changes of bins doesn't cause
7279           segfaults or even wrong states)
7280           add debugging category and debugging output to print children states
7281         * gst/gstbin.c: (gst_bin_dispose): 
7282           add some assertion checks
7283         * gst/gstbin.h:
7284         * gst/gstbin.c: (gst_bin_sync_children_state):
7285           deprecate this function - it just does gst_bin_set_state (bin,
7286           GST_STATE (bin)) 
7287         * testsuite/threads/queue.c: (main):
7288           don't use gst_bin_sync_children_state anymore
7289         * testsuite/states/Makefile.am:
7290         * testsuite/states/bin.c:
7291           test that the state changes of bins work as expected
7292         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
7293           some adjustments to change states correctly, too
7294         * gst/gstthread.c: (gst_thread_change_state):
7295           don't enable/disable "threadsafe" properties, they're unused and
7296           cause random segfaults
7297         * testsuite/threads/Makefile.am:
7298           the queue check randomly passes now, ignore it
7299
7300 2004-07-21  Benjamin Otte  <otte@gnome.org>
7301
7302         * gst/gstpad.c:
7303           check if data is NULL before outputting debug info. (fixes #145100)
7304
7305 2004-07-21  Benjamin Otte  <otte@gnome.org>
7306
7307         * gst/schedulers/entryscheduler.c:
7308         (gst_entry_scheduler_loop_wrapper),
7309         (gst_entry_scheduler_chain_wrapper),
7310         (gst_entry_scheduler_get_wrapper):
7311           reset the state when the cothread starts, so we don't get assertion
7312           failures on restarting of cothreads
7313
7314 2004-07-20  Benjamin Otte  <otte@gnome.org>
7315
7316         * gst/gstelement.c: (gst_element_link_pads_filtered):
7317           use correct sinkpad, if only sinkpad is specified, but not srcpad
7318           (fixes #147889)
7319         * gst/gstelement.c: (gst_element_set_state_func),
7320         (gst_element_change_state): ref/unref the element, signal handlers
7321         could get rid of the element otherwise
7322
7323 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7324
7325         * docs/random/ds/0.9-suggested-changes:
7326           Make note about renaming fixed-list to array.
7327         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
7328         (_gst_value_initialize):
7329           Add array intersections.
7330         * testsuite/caps/intersect2.c: (main):
7331           Add test for array intersections.
7332
7333 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7334
7335         * configure.ac: back to cvs
7336
7337 === release 0.8.4 ===
7338
7339 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7340
7341         * configure.ac:
7342           releasing 0.8.4, "Paella"
7343           bump libtool versioning
7344
7345 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7346
7347         * po/LINGUAS:
7348         * po/ca.po:
7349           adding Catalan translation (Jordi Mallach)
7350
7351 2004-07-20  Wim Taymans  <wim@fluendo.com>
7352
7353         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7354         (handoff_identity), (main):
7355         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7356         (handoff_identity), (main):
7357         * testsuite/schedulers/Makefile.am:
7358         Added failing testcase for variant of #147894
7359
7360 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7361
7362         patch by: David Moore
7363
7364         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7365         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
7366         (group_migrate_connected):
7367         * testsuite/schedulers/Makefile.am:
7368           fix for #142813 (Deadlock in optimal scheduler)
7369
7370 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7371
7372         patch by: Wim Taymans
7373
7374         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7375         (gst_opt_scheduler_schedule_run_queue),
7376         (gst_opt_scheduler_get_wrapper), (get_group),
7377         (group_migrate_connected):
7378         * testsuite/schedulers/Makefile.am:
7379           fix for #147819 (Add some checks in the opt scheduler)
7380
7381 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7382
7383         patch by: Benjamin Otte
7384
7385         * gst/gstelementfactory.c: (__gst_element_details_set):
7386           fix for #147929: running gst-register in non-utf8 locale can cause
7387           invalid registry
7388
7389 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7390
7391         patch by: Wim Taymans
7392
7393         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
7394         (group_has_element), (element_get_reachables_func),
7395         (group_migrate_connected):
7396           fix for #147894 (opt scheduler decoupled elements mismanagement)
7397         * testsuite/schedulers/Makefile.am:
7398           testsuite app now passes
7399
7400 2004-07-19  Wim Taymans  <wim@fluendo.com>
7401
7402         * testsuite/schedulers/147819.c: (handoff_identity1),
7403         (handoff_identity2), (main):
7404         * testsuite/schedulers/Makefile.am:
7405         Added testcase for bug 147819
7406
7407 2004-07-19  Wim Taymans  <wim@fluendo.com>
7408
7409         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7410         (handoff_identity), (main):
7411         * testsuite/schedulers/Makefile.am:
7412         Added testcase for bug 147894
7413
7414 2004-07-16  Wim Taymans  <wim@fluendo.com>
7415
7416         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
7417         * testsuite/schedulers/142183.c: (handoff_identity), (main):
7418         * testsuite/schedulers/Makefile.am:
7419         Added testsuite for bug 142183 in its two incarnations. Refcount
7420         is not increased for scheduled elements and threadsafe properties
7421         mutexes are not properly unlocked.
7422
7423 2004-07-16  Wim Taymans  <wim@fluendo.com>
7424
7425         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
7426         (create_chain), (destroy_chain), (create_group), (destroy_group),
7427         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
7428         (group_dec_link), (gst_opt_scheduler_pad_link),
7429         (group_inc_links_for_element), (group_migrate_connected):
7430         Call group_inc_link with the proper src->sink ordering -- 
7431         break this, and we break sort_chain. patch from wingo for bug
7432         147713.
7433         Partially revert patch 1.89. When adding a loop based element to 
7434         the scheduler, the links to other groups are automatically followed
7435         and incremented. This should not happen because the bin will call
7436         pad_link explicitly for those connection, resulting in them counted 
7437         twice. Results in assertion failure on pipeline cleanup.
7438
7439 2004-07-16  Wim Taymans  <wim@fluendo.com>
7440
7441         * testsuite/schedulers/143777-2.c: (main):
7442         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
7443         (main):
7444         * testsuite/schedulers/Makefile.am:
7445         Added cleanup code to testcase 143777-2.
7446         Added testcase to show bug 147713, does not really show the
7447         deadlock as I can't figure out how to trigger it, but it does
7448         demonstrate bad ordering in the scheduler.
7449
7450 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7451
7452         * gst/gstvalue.c: (gst_value_deserialize_fraction):
7453           change strndup to g_strndup.  Fixes #147707
7454
7455 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7456
7457         * po/af.po:
7458         * po/az.po:
7459         * po/cs.po:
7460         * po/en_GB.po:
7461         * po/fr.po:
7462         * po/nl.po:
7463         * po/sr.po:
7464         * po/sv.po:
7465         * po/tr.po:
7466         * po/uk.po:
7467           updated translations
7468
7469 2004-07-16  Benjamin Otte  <otte@gnome.org>
7470
7471         * gst/gstvalue.c: (gst_greatest_common_divisor):
7472           use ints and return ints, fractions only use ints, too, so this
7473           avoids accidently casting multiplications to unsigned
7474         (gst_value_lcopy_fraction): it's ints, not uint32
7475         (gst_value_set_fraction): disallow minint, multiplying and negation
7476           are broken with it
7477         (gst_value_fraction_multiply): fix to make large numbers work and get
7478         rid of the assumption that the multiplication of two ints fits an
7479         int64 - dunno if that's true for all systems
7480         * testsuite/caps/Makefile.am:
7481         * testsuite/caps/fraction-multiply-and-zero.c:
7482         (check_multiplication), (check_equal), (zero_test), (main):
7483           add tests for all the stuff above
7484         * testsuite/caps/value_compare.c: (test1):
7485           fix comment
7486         * tests/.cvsignore:
7487         * testsuite/caps/.cvsignore:
7488         * testsuite/debug/.cvsignore:
7489         * testsuite/dlopen/.cvsignore:
7490         * testsuite/states/.cvsignore:
7491           get up to date
7492
7493 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7494
7495         * docs/manual/bins-api.xml:
7496         * docs/manual/factories.xml:
7497         * docs/manual/helloworld.xml:
7498         * docs/manual/links-api.xml: 
7499           fixes for out of date info, incorrect info and grammar
7500
7501 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7502
7503         * docs/manual/pads.xml:
7504         * docs/manual/pads-api.xml: grammar fix
7505
7506 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7507
7508         * docs/manual/pads-api.xml: typo + grammar fix
7509
7510 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7511
7512         * docs/gst/gstreamer-sections.txt:
7513           add new symbols
7514         * docs/gst/tmpl/gstelement.sgml:
7515         * docs/gst/tmpl/gstpad.sgml:
7516         * docs/gst/tmpl/gsttypes.sgml:
7517         * docs/gst/tmpl/gstvalue.sgml:
7518           update docs
7519         * gst/gststructure.c: (gst_structure_set_valist),
7520         (gst_structure_from_abbr), (gst_structure_to_abbr):
7521         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
7522         (gst_greatest_common_divisor), (gst_value_init_fraction),
7523         (gst_value_copy_fraction), (gst_value_collect_fraction),
7524         (gst_value_lcopy_fraction), (gst_value_set_fraction),
7525         (gst_value_get_fraction_numerator),
7526         (gst_value_get_fraction_denominator),
7527         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
7528         (gst_value_deserialize_fraction),
7529         (gst_value_transform_fraction_string),
7530         (gst_value_transform_string_fraction),
7531         (gst_value_compare_fraction), (_gst_value_initialize):
7532         * gst/gstvalue.h:
7533           adding GstFraction GValue type, get/set, and multiply
7534         * testsuite/caps/Makefile.am:
7535         * testsuite/caps/fraction.c: (test), (main):
7536         * testsuite/caps/string-conversions.c: (main):
7537         * testsuite/caps/value_compare.c: (test1), (main):
7538           add regression tests for GstFraction
7539
7540 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7541         
7542         * docs/manual/init-api.xml: Grammar fix
7543
7544 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7545
7546         * docs/manual/states.xml: Fix inconsistent information
7547
7548 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7549
7550         * gst/gstelement.c: (gst_element_set_state):
7551         * gst/gstpad.c: (gst_pad_try_set_caps):
7552         * gst/gststructure.c:
7553         * gst/gstthread.c: (gst_thread_child_state_change):
7554         * gst/gstvalue.c: (gst_value_compare_double):
7555         * gst/gstvalue.h:
7556         * testsuite/parse/parse1.c: (main):
7557           debugging additions and style cleanups
7558
7559 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7560
7561         * docs/manual/states.xml: Grammar fix
7562
7563 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7564
7565         * docs/manual/pads.xml: Grammar fix
7566
7567 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7568
7569         * docs/manual/elements.xml: Fixed image reference
7570
7571 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7572
7573         * docs/manual/goals.xml: Grammar fix
7574
7575 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7576
7577         * docs/manual/motivation.xml:
7578         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
7579
7580 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7581
7582         * docs/manual/motivation.xml: Fix spelling
7583
7584 2004-07-15  Benjamin Otte  <otte@gnome.org>
7585
7586         * gst/gstelement.h: 
7587           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
7588           strings.
7589         * gst/gstelement.c (gst_element_class_init):
7590           GError's are boxed, not objects
7591         * gst/gstmarshal.list:
7592           update list for the fixed error signal
7593
7594 2004-07-14  Andy Wingo  <wingo@pobox.com>
7595
7596         * gst/gsttag.c: Add a tag merge func for pointers. The header was
7597         there all along, but the function wasn't. (guile-gstreamer's build
7598         system uses the address of the function -- I wasn't actually
7599         trying to use this.)
7600
7601 2004-07-14  Andy Wingo  <wingo@pobox.com>
7602
7603         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
7604         as gst_pad_proxy_pad_link) just link to every other pad when they
7605         are called. In the case where the graph has cycles, this will mean
7606         that a call to try_set_caps will recurse. Allow this recursion
7607         and return OK, while we wait for the first try_set_caps to give a
7608         proper return value.
7609         (gst_pad_link_call_link_functions): Since this function is the
7610         only one to set the NEGOTIATING flag on a pad, if the flag is set
7611         it means that the link functions have indirectly recursed. If this
7612         happens, error out to avoid infinite recursion and an eventual
7613         SEGV.
7614         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
7615         (gst_pad_proxy_getcaps): Intersect the result with the template
7616         caps to ensure that the return value is valid.
7617
7618 2004-07-14  Andy Wingo  <wingo@pobox.com>
7619
7620         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
7621         one refcount, the calling function is the owner of the buffer.
7622
7623 2004-07-14  Wim Taymans  <wim@fluendo.com>
7624
7625         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7626         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7627         Fix stupid warning when an element is to be migrated but
7628         is already migrated.
7629
7630 2004-07-14  Wim Taymans  <wim@fluendo.com>
7631
7632         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7633         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7634         Make sure that a single non-loop-based element does not 
7635         end up in a group. This fixes the testsuite again.
7636
7637 2004-07-14  Wim Taymans  <wim@fluendo.com>
7638
7639         * gst/schedulers/gstoptimalscheduler.c: (create_group),
7640         (add_to_group), (merge_groups), (schedule_group),
7641         (gst_opt_scheduler_get_wrapper), (group_elements),
7642         (group_dec_link), (gst_opt_scheduler_pad_link),
7643         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
7644         (gst_opt_scheduler_iterate):
7645         move isolated groups to a new chain.
7646         Emit a warning instead of segfaulting in some error cases.
7647         Fix a bug where the link count between groups was not calculated 
7648         correctly. Fixes #144510.
7649
7650 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
7651         * gst/elements/gstfilesrc.c:
7652           Binary files support under Windows now OK
7653       
7654 2004-07-13  Benjamin Otte  <otte@gnome.org>
7655
7656           compatibility fixes for Solaris 8/gcc 2.95
7657         * configure.ac:
7658           include libintl libs in LDFLAGS
7659         * gstvalue.c (gst_value_deserialize_buffer):
7660           cast isxdigit stuff to int to silence compiler warning
7661
7662 2004-07-12  Benjamin Otte  <otte@gnome.org>
7663
7664         * gst/gsttypes.h:
7665           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
7666           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
7667           just causes support madness
7668         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7669           make it work without this
7670         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
7671         (gst_file_index_commit):
7672           glib IO channels don't want binary mode
7673         * testsuite/bytestream/filepadsink.c: (main):
7674         * testsuite/bytestream/test1.c: (read_param_file):
7675           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
7676
7677 2004-07-12  Benjamin Otte  <otte@gnome.org>
7678
7679         * gst/gstelement.c: (gst_element_class_init),
7680         (gst_element_set_state), (gst_element_set_state_func):
7681           virutalize gst_element_set_state, use set_state member in class
7682           struct that was already added in 0.7 for this.
7683         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
7684         (gst_bin_change_state):
7685           make gst_bin_foreach works similar to other foreach functions, plug
7686           memleaks in it. Make functions using it work with the new approach.
7687           Document gst_bin_foreach, so it can be exported if we want to
7688         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
7689           use virtualized set_state to make set_state on bins set the state of
7690           all its children.
7691
7692 2004-07-12  Benjamin Otte  <otte@gnome.org>
7693
7694         * configure.ac:
7695           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
7696           http://bugs.gentoo.org/show_bug.cgi?id=53967)
7697         * gst/gstpad.c: (gst_pad_alloc_buffer):
7698           allow buffer_alloc functions to return NULL and allocate a normal
7699           buffer in that case
7700
7701 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7702         * gst/elements/gstfilesink.c:
7703         * gst/elements/gstfilesrc.c:
7704         * gst/indexers/gstfileindex.c:
7705         * gst/gsttypes.h:
7706         * testsuite/bytestream/filepadsink.c:
7707         * testsuite/bytestream/test1.c:
7708           Handle binary files under Windows
7709
7710 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7711         * docs/manual/win32.xml:
7712         * win32/config.h:
7713         * win32/gst-register.vcproj:
7714         * win32/gstreamer.def:
7715           Update to another gettext public build
7716
7717 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7718         * gst/gstplugin.c:
7719           Fix an impossible C syntax
7720         * win32/config.h:
7721           Disable i18n under Windows for the moment
7722         * win32/gst-register.vcproj:
7723           Use this configuration
7724
7725 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
7726         * docs/manual/quotes.xml:
7727           Keep the quotes file alive
7728         * docs/random/ds/0.9-suggested-changes:
7729           Add the suggestion of including a 'rowstride' as part of video
7730           format caps
7731
7732 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7733
7734         * gst/gstelement.c: (gst_element_set_state),
7735         (gst_element_change_state):
7736           d'oh.  Set PENDING state correctly before forcing bin to change.
7737         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7738         (gst_structure_parse_fixed_list):
7739         * gst/schedulers/gstoptimalscheduler.c:
7740         (gst_opt_scheduler_state_transition):
7741         * testsuite/states/parent.c: (main):
7742           remove comment now that it's fixed.
7743
7744 2004-07-11  Benjamin Otte  <otte@gnome.org>
7745
7746         * gst/gstclock.h:
7747           GST_SECOND shouldn't cause a conversion to unsigned.
7748         * testsuite/clock/.cvsignore:
7749         * testsuite/clock/Makefile.am:
7750         * testsuite/clock/signedness.c: (main):
7751           make sure it never will again
7752
7753 2004-07-11  Andy Wingo  <wingo@pobox.com>
7754
7755         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
7756         whose state is higher than the bin state, raise the bin state to
7757         ensure that bin state := highest child state.
7758         
7759 2004-07-11  Andy Wingo  <wingo@pobox.com>
7760
7761         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
7762         procedure on the children of a bin. Assumes that the procedure can
7763         change the set of children.
7764         (set_kid_state_func): New static function.
7765         (gst_bin_change_state): Use gst_bin_foreach to call
7766         set_kid_state_func. Fixes a bug: if a child had a state-change
7767         handler that removes it from the bin, there would be a segfault.
7768         Hopefully it should also work in the case where the state-change
7769         handler on one child adds or removes other children. In any case,
7770         fixes should go to gst_bin_foreach.
7771
7772 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
7773
7774         * gst/gstelement.c: (gst_element_set_state):
7775           compatibility fix for latest plugins release.  Change loop back
7776           to while {}
7777
7778 2004-07-09  Wim Taymans  <wim@fluendo.com>
7779
7780         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
7781         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
7782         (gst_thread_main_loop):
7783         Since remove is virtual in GstBin we must not assume the 
7784         elements GList to have anothing useful.
7785         Add some more logging to GstThread and be a bit more paranoid
7786         when resetting the scheduler.
7787         Set the state of the bin to NULL before removing the children.
7788
7789 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7790
7791         * testsuite/threads/Makefile.am:
7792         * testsuite/threads/threadg.c:
7793           added test to check if problem when removing all elements from a
7794           GstThread before setting GstThread state to NULL
7795
7796 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7797
7798         * docs/gst/tmpl/gstelement.sgml:
7799         * docs/gst/tmpl/gsttypes.sgml:
7800         * gst/gstbin.c: (gst_bin_change_state):
7801         * gst/gstelement.c: (gst_element_set_state),
7802         (gst_element_change_state):
7803           rework so that for bins we try to set the state on all children
7804           as well even if the bin is in the correct state already.
7805           change while to do so at least one iteration is done.
7806           For regular elements, we fall back to the previous behaviour for
7807           now since we first need a new plugins release.
7808         * testsuite/states/parent.c: (main):
7809           test for this case
7810           Fixes #123774
7811
7812 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7813
7814         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
7815         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
7816         (gst_queue_release_locks), (gst_queue_change_state),
7817         (gst_queue_set_property):
7818           add proper lock debugging.  Change dispose to finalize, since
7819           we're freeing mutexes and other stuff which should happen only once.
7820
7821 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7822
7823         * docs/gst/tmpl/gstelement.sgml:
7824         * docs/gst/tmpl/gstplugin.sgml:
7825         * docs/gst/tmpl/gsttypes.sgml:
7826         * docs/pwg/building-state.xml:
7827         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
7828         * gst/gstelement.c: (gst_element_change_state):
7829         * gst/gstthread.c: (gst_thread_change_state):
7830           catch wrong state changes in element base class.
7831
7832 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7833
7834         * gst/gstinfo.h:
7835           clean up layout a little.
7836
7837 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7838
7839         * configure.ac:
7840         * testsuite/Makefile.am:
7841         * testsuite/states/Makefile.am:
7842         * testsuite/states/parent.c: (main):
7843           re-enable states testsuite dir.  Add test for state changes and
7844           parent behaviour
7845
7846 2004-07-09  Wim Taymans  <wim@fluendo.com>
7847
7848         * gst/schedulers/gstoptimalscheduler.c:
7849         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
7850         (element_get_reachables_func), (element_get_reachables),
7851         (debug_element), (rechain_group), (group_migrate_connected),
7852         (gst_opt_scheduler_pad_unlink):
7853         Do not try to migrate decoupled elements to a new group since
7854         they are not added to groups.
7855
7856 2004-07-08  Benjamin Otte  <otte@gnome.org>
7857
7858         * gst/gstelement.c: (gst_element_error_func):
7859           make reentrant (= allow removing elements in error handler)
7860
7861 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7862
7863         * gst/gstpad.c: (gst_pad_event_default_dispatch),
7864         (gst_pad_send_event), (gst_pad_call_chain_function):
7865           events sent to elements below PAUSED cannot be handled, so
7866           don't try to
7867
7868 2004-07-08  Wim Taymans  <wim@fluendo.com>
7869
7870         * gst/schedulers/gstoptimalscheduler.c:
7871         (chain_recursively_migrate_group), (create_group),
7872         (schedule_group), (gst_opt_scheduler_pad_link),
7873         (group_elements_set_visited), (element_get_reachables_func),
7874         (element_get_reachables), (group_can_reach_group), (debug_element),
7875         (rechain_group), (group_migrate_connected),
7876         (gst_opt_scheduler_pad_unlink):
7877         * testsuite/schedulers/Makefile.am:
7878         Implemented group splitting and rechaining.
7879         Fixes 143777 and 143777-2 in the testsuite.
7880
7881 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7882
7883         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7884           extra debugging
7885         * gst/gstevent.h:
7886         * gst/gstinfo.c: (gst_debug_log_default):
7887           print time nicely.  add thread pointer until someone figures out
7888           a completely portable way of getting at thread id's.
7889         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
7890         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
7891         (gst_pad_call_chain_function):
7892           extra debugging
7893         * gst/schedulers/gstoptimalscheduler.c:
7894         (get_group_schedule_function), (loop_group_schedule_function),
7895         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
7896         (pad_clear_queued), (gst_opt_scheduler_iterate):
7897           rename BUFPEN and friends to DATAPEN since that's what they are.
7898
7899 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7900
7901         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7902         * gst/gstbuffer.h:
7903         * gst/gstpad.c:
7904           cleanups and debugging
7905
7906 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7907
7908         * configure.ac:
7909         * gst/gstvalue.c: (gst_value_compare_enum),
7910         (gst_value_serialize_enum), (gst_value_deserialize_enum),
7911         (gst_value_can_compare), (gst_value_compare):
7912         * testsuite/Makefile.am:
7913         * testsuite/enumcaps/Makefile.am:
7914         * testsuite/enumcaps/enumcaps.c:
7915           Fix enum serialization, deserialization, comparison in caps, add
7916           a test to ensure that this continues working in the future.
7917
7918 2004-07-06  David Schleef  <ds@schleef.org>
7919
7920         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7921         Fix memleak.
7922
7923 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7924
7925         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
7926         * gst/gstplugin.h:
7927         * gst/registries/gstxmlregistry.c:
7928         (plugin_times_older_than_recurse), (plugin_times_older_than),
7929         (gst_xml_registry_parse_padtemplate):
7930           only rebuild registry when actual plugins have a newer time than
7931           the registry.  Fixes #145520
7932
7933 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7934
7935         * docs/manual/manual.xml:
7936         * docs/manual/win32.xml:
7937           add chapter on win32 building.  fixes #142422
7938
7939 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7940
7941         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
7942
7943         * gst/autoplug/gstspider.c: (gst_spider_init),
7944         (gst_spider_dispose):
7945           fix spider memleaks.  fixes #137863
7946
7947 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7948
7949         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
7950
7951         * gst/schedulers/gstoptimalscheduler.c:
7952         (gst_opt_scheduler_pad_unlink):
7953           fix SIGBUS error, fixes #145338
7954
7955 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7956
7957         * gst/gstobject.c: (gst_object_replace):
7958         * gst/gstscheduler.c: (gst_scheduler_get_clock):
7959         * gst/gstsystemclock.c: (gst_system_clock_obtain):
7960           clean up clock lifecycle.  Fixes #109831
7961
7962 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7963
7964         * po/LINGUAS:
7965         * po/cs.po:
7966           added Czech translation (Miloslav Trmac)
7967
7968 2004-07-04  David Schleef  <ds@schleef.org>
7969
7970         * tools/Makefile.am:
7971         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
7972
7973 2004-07-04  David Schleef  <ds@schleef.org>
7974
7975         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
7976
7977 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
7978
7979         * gst/gstbin.c: (gst_bin_restore_thyself):
7980           chain to parent restore so the bins get restored correctly
7981           in the editor
7982
7983 2004-07-03  David Schleef  <ds@schleef.org>
7984
7985         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7986         Actually do something in these functions, like before the big
7987         caps change.  (bug #145137)
7988
7989 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7990
7991         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
7992         (gst_element_get_compatible_pad_filtered):
7993         * gst/gstthread.c: (gst_thread_main_loop):
7994           more debugging
7995
7996 2004-07-02  David Schleef  <ds@schleef.org>
7997
7998         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
7999         * gst/gstobject.h:
8000         * gst/gstparse.h:
8001         * gst/gsttrace.h:
8002         * gst/gstxml.h:
8003
8004 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8005
8006         * gst/gstpad.c: (gst_pad_check_schedulers),
8007         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
8008         (gst_pad_link_prepare):
8009           revert until testsuite is fixed
8010
8011 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8012
8013         * testsuite/Makefile.am:
8014         * testsuite/caps/filtercaps.c: (main):
8015         * testsuite/clock/clock1.c: (main):
8016         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
8017           fix some more tests
8018
8019 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8020
8021         * testsuite/cleanup/cleanup1.c: (create_pipeline):
8022         * testsuite/cleanup/cleanup2.c: (create_pipeline):
8023         * testsuite/cleanup/cleanup4.c: (main):
8024           fix testsuite
8025
8026 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8027
8028         * libs/gst/control/control.c:
8029         * libs/gst/control/dparam.c:
8030         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
8031         * libs/gst/control/dparammanager.c:
8032         * libs/gst/control/dparammanager.h:
8033         * testsuite/dynparams/Makefile.am:
8034         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
8035         (gst_dptest_change_state), (gst_dptest_chain), (main):
8036           fix testcase for dparams
8037           add debugging category
8038
8039 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8040
8041         * testsuite/Rules:
8042           change path
8043
8044 2004-07-02  Benjamin Otte  <otte@gnome.org>
8045
8046         * tests/.cvsignore:
8047         * tests/Makefile.am:
8048         * tests/mass_elements.c: (gst_get_current_time), (main):
8049           add simple benchmark to test various speeds of fakesrc ! identity !
8050           identity ! ... ! fakesink.
8051           Usage: mass_elements [num_identities] [num_buffers]
8052           If not specified they default to 1000.
8053
8054 2004-07-02  Benjamin Otte  <otte@gnome.org>
8055
8056         * gst/gstpad.c: (gst_pad_check_schedulers),
8057         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
8058         (gst_pad_link_prepare):
8059           check that pads that get linked belong to the same manager. The old
8060           code allowed linking elements before putting them into bins, so it
8061           worked to link them and then put them in different threads, which
8062           lead to weird behaviour.
8063           Since this effectively disallows linking elements before putting
8064           them in a bin, some applications might not work after this and error
8065           out. If these applications are too critical, we might need to revert
8066           that patch. Please test this before the next release...
8067
8068 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8069
8070         * gst/gstpad.c: (gst_pad_get_caps):
8071           throw an error if the getcaps function does not return a subset of
8072           the template caps.
8073         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
8074           make disconts without position info an error in debugging
8075         * tests/spidey_bench.c: (handoff), (main):
8076           don't count first try when averaging
8077
8078 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8079
8080         * gst/gstplugin.c: (gst_plugin_load_file):
8081           figure out problem with dynamic test
8082
8083 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8084
8085         * docs/gst/Makefile.am:
8086           fix docs build
8087
8088 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8089
8090         * po/POTFILES.in:
8091         * po/af.po:
8092         * po/az.po:
8093         * po/en_GB.po:
8094         * po/fr.po:
8095         * po/nl.po:
8096         * po/sr.po:
8097         * po/sv.po:
8098         * po/tr.po:
8099         * po/uk.po:
8100         * tools/gst-register.c: (plugin_added_func), (main):
8101           i18n-ize -register, fix plural
8102
8103 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8104
8105         * gst/elements/gstidentity.c: (gst_identity_class_init),
8106         (gst_identity_init), (gst_identity_chain),
8107         (gst_identity_set_property), (gst_identity_get_property):
8108         * gst/elements/gstidentity.h:
8109           check for perfect stream
8110
8111 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8112
8113         * gst/elements/gstidentity.c: (gst_identity_chain):
8114           print offset_end
8115
8116 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8117
8118         * docs/gst/Makefile.am:
8119         * docs/gst/gstreamer-docs.sgml:
8120           doc fixes
8121
8122 2004-06-24  David Schleef  <ds@schleef.org>
8123
8124         * autogen.sh:  Remove call to env, since the buildbot isn't
8125         broken anymore.
8126
8127 2004-06-24  Wim Taymans  <wim@fluendo.com>
8128
8129         * gst/elements/Makefile.am:
8130         * gst/elements/gstelements.c:
8131         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
8132         (gst_multifdsink_class_init), (gst_multifdsink_init),
8133         (gst_multifdsink_add), (gst_multifdsink_remove),
8134         (gst_multifdsink_clear), (gst_multifdsink_chain),
8135         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
8136         * gst/elements/gstmultifdsink.h:
8137         Added an element that writes to multiple filedescriptors at once.
8138
8139 2004-06-24  Benjamin Otte  <otte@gnome.org>
8140
8141         * gst/parse/grammar.y:
8142           don't try to link elements before they have been added to bins
8143
8144 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8145
8146         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
8147         (gst_file_pad_get_length):
8148         * libs/gst/bytestream/filepad.h:
8149           add 2 new functions
8150
8151 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8152
8153         * docs/gst/gstreamer-sections.txt:
8154         remove from docs, the define that Benjamin removed from gstelement.h
8155
8156 2004-06-22  Benjamin Otte  <otte@gnome.org>
8157
8158         * gst/gstelement.h:
8159           remove define that referenced a nonexisting GstElement struct member
8160
8161 2004-06-20  Benjamin Otte  <otte@gnome.org>
8162
8163         * gst/gstdata.c: (gst_data_is_writable):
8164           whoops, return values were wrong, so writable data was marked as
8165           non-writable and vice versa. (fixes #143953, spotted by Francis
8166           Labonte)
8167           Shows how rarely we need to copy data ;)
8168
8169 2004-06-20  Benjamin Otte  <otte@gnome.org>
8170
8171         * testsuite/schedulers/.cvsignore:
8172         * testsuite/schedulers/Makefile.am:
8173         * testsuite/schedulers/143777-2.c: (main):
8174           add test for opt breakage in bug #143777
8175
8176 2004-06-20  Benjamin Otte  <otte@gnome.org>
8177
8178         * gst/gstpad.c: (gst_pad_call_chain_function):
8179           check for if we were unlinked while inside the chainfunction (fixes
8180           entrygthread having issues with #143777)
8181         * testsuite/schedulers/143777.c: (main):
8182         * testsuite/schedulers/Makefile.am:
8183           add a test for that fix
8184
8185 2004-06-20  Benjamin Otte  <otte@gnome.org>
8186
8187         * gst/gstvalue.c: (gst_value_set_int_range):
8188           test that start is smaller then end
8189         * libs/gst/bytestream/Makefile.am:
8190         * libs/gst/bytestream/filepad.c: 
8191         * libs/gst/bytestream/filepad.h:
8192           add GstFilePad - a pad that behaves like a FILE*
8193         * testsuite/bytestream/.cvsignore:
8194         * testsuite/bytestream/Makefile.am:
8195         * testsuite/bytestream/filepadsink.c: 
8196           test for the GstFilePad
8197
8198 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8199
8200         * gst/elements/gstidentity.c: (gst_identity_class_init),
8201         (gst_identity_init), (gst_identity_set_clock),
8202         (gst_identity_chain), (gst_identity_set_property),
8203         (gst_identity_get_property):
8204         * gst/elements/gstidentity.h:
8205         * gst/gstclock.c: (gst_clock_id_wait):
8206           add a "sync" property to sync to the clock
8207
8208 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8209
8210         * gst/gstelementfactory.c: (gst_element_factory_create):
8211           make the freakin "elementfactory bla has no type" message more
8212           useful. So we actually can do something when someone shows up
8213           complaining about it.
8214
8215 2004-06-15  Johan Dahlin  <johan@gnome.org>
8216
8217         * tools/gst-inspect.c (main): Fallback to plugin if no element is
8218         found. This matches the old behavior better. Thanks to Thomas for
8219         pointing out.
8220
8221 2004-06-14  David Schleef  <ds@schleef.org>
8222
8223         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
8224         -fomit-frame-pointer.  Appears to generate correct code in
8225         other cases as well.
8226
8227 2004-06-14  Johan Dahlin  <johan@gnome.org>
8228
8229         * tools/gst-inspect.c (main): Add two new command line options: -a
8230         to print all elements and -n to print the name on each line. Also
8231         fix some error reporting.
8232         (main): Simplify, remove -n and always print names if -a is specified
8233
8234 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
8235
8236         * win32/gstconfig.h:
8237         * win32/GSTreamer.vcproj:
8238         * win32/Makefile:
8239         * gst/gstconfig.h.in:
8240         * gst/gst.h:
8241         * gst/gstbin.h:
8242         * gst/gstelement.h:
8243         * gst/gstevent.h:
8244         * gst/gstobject.h:
8245         * gst/gstpad.h:
8246         * docs/gst/gstreamer-sections.txt:
8247         * docs/gst/tmpl/gstconfig.sgml:
8248           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
8249
8250 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8251         * docs/gst/gstreamer-sections.txt:
8252         * docs/gst/tmpl/gstconfig.sgml:
8253         Add the GSTREAMER_EXPORT macro to the docs
8254
8255 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8256
8257         * tools/gst-compprep.c: (handle_xmlerror), (main):
8258         Add a check for the version that introduced SetStructuredError to fix
8259         the build on FC1
8260
8261 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8262
8263         * win32/msvc71.sln:
8264         * win32/testsuite/:
8265           prepare to compile the testsuite with MSVC
8266
8267 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8268
8269         * docs/manual/win32.xml:
8270           attempt to transform the Win32 README into an XML doc
8271
8272 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8273
8274         * gst/gst.c:
8275         * gst/gstbin.*:
8276         * gst/config.h.in:
8277         * gst/gstelement.*:
8278         * gst/gstevent.h:
8279         * gst/gstobject.*:
8280         * gst/gstpad.h:
8281         * tools/gst-register.c:
8282         * win32/gstreamer.def:
8283           extern symbols are now exported for the Windows DLL
8284
8285 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8286
8287         * gst/gstinfo.h:
8288           fix a problem to enable/disable DEBUG under MSVC
8289
8290 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8291
8292         * win32/:
8293           enable more debug code in DEBUG build
8294
8295 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8296
8297         * win32/config.h:
8298         * gst/gst-i18n-app.h:
8299           enable NLS under Windows
8300
8301 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
8302         * tools/gst-compprep.c: (handle_xmlerror), (main):
8303           Make an error that baffled me a bit clearer
8304
8305 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8306
8307         * gst/gstqueue.c:
8308           don't use g_queue_get_length () because it's 2.4, use ->length
8309
8310 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
8311
8312         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
8313
8314         * tools/gst-inspect.c: (print_signal_info):
8315           don't free random data twice. (fixes #144185)
8316
8317 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
8318
8319         * gst/gstqueue.c:
8320         * gst/gstqueue.h:
8321           fix removing from the wrong queue on event timeout
8322           fix disposing of the event queue by casting correctly
8323           add mutexes for handling the event queue
8324           someone was sleeping when fixing queue last time around :)
8325
8326 2004-06-10  Johan Dahlin  <johan@gnome.org>
8327
8328         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
8329         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
8330
8331 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8332
8333         * docs/random/gdp:
8334         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
8335         * libs/gst/dataprotocol/dataprotocol.c:
8336         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8337         (gst_dp_buffer_from_header):
8338         * libs/gst/dataprotocol/dataprotocol.h:
8339         * libs/gst/dataprotocol/dp-private.h:
8340           rev version to 0.1, add buffer flags and copy them
8341
8342 2004-06-09  Johan Dahlin  <johan@gnome.org>
8343
8344         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
8345         the flags from the buffer we're copying.
8346
8347 2004-06-09  Wim Taymans  <wim@fluendo.com>
8348
8349         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
8350         * gst/elements/gstidentity.c: (gst_identity_init),
8351         (gst_identity_chain):
8352         Print more buffer info in fakesink.
8353         Make identity output similar to fakesink.
8354
8355 2004-06-07  Daniel Gazard  <dany42@free.fr>
8356
8357         reviewed by Benjamin Otte  <otte@gnome.org>
8358
8359         * configure.ac:
8360           fix cross compiling not working. (fixes #143741)
8361
8362 2004-06-07  Benjamin Otte  <otte@gnome.org>
8363
8364         * gst/gstelement.c: (gst_element_set_time_delay):
8365           add failure check
8366         * gst/gstinfo.h:
8367           put brackets around macro arguments of GST_TIME_ARGS, add note to
8368           move it to correct header in 0.9
8369
8370 2004-06-07  Benjamin Otte  <otte@gnome.org>
8371
8372         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
8373         (gst_file_index_load), (_file_index_id_save_entries),
8374         (gst_file_index_commit), (gst_file_index_add_association),
8375         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
8376         (gst_file_index_plugin_init):
8377           make debugging use a default category
8378
8379 2004-06-06  David Moore  <dcm@acm.org>
8380
8381         reviewed by Benjamin Otte  <otte@gnome.org>
8382
8383         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
8384         (gst_fdsrc_change_state):
8385           reset offset counter when going READY => PAUSED. (fixes #142903)
8386
8387 2004-06-06  ed@catmur.co.uk
8388
8389         reviewed by Benjamin Otte  <otte@gnome.org>
8390
8391         * gst/registries/gstxmlregistry.c:
8392         (gst_xml_registry_rebuild_recurse):
8393           don't rely on g_dir_open to figure out if a file is a directory, use
8394           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
8395           directories. (fixes #142850)
8396
8397 2004-06-06  Benjamin Otte  <otte@gnome.org>
8398
8399         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
8400           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
8401         * libs/gst/bytestream/adapter.c:
8402         * libs/gst/bytestream/adapter.h:
8403           fix copyright in header and typo in debugging category name
8404
8405 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8406
8407         * configure.ac:
8408           bump nano to cvs
8409
8410 === release 0.8.3 ===
8411
8412 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8413
8414         * configure.ac:
8415           update libtool versioning
8416           do a new release
8417         * docs/gst/tmpl/gstelement.sgml:
8418         * docs/gst/tmpl/gsttypes.sgml:
8419         * gst/gstinfo.c: (_gst_debug_init):
8420           put back GST_CAT_DATAFLOW to fix API breakage
8421
8422 2004-06-04  David Schleef  <ds@schleef.org>
8423
8424         * autogen.sh: Add a temporary 'env' to test buildbot problems.
8425
8426 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8427
8428         * configure.ac:
8429           bump nano to cvs
8430
8431 === release 0.8.2 ===
8432
8433 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8434
8435         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
8436           check GST_DEBUG environment variable which is parsed the same way
8437           as --gst-debug=
8438
8439 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8440
8441         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
8442                             gstmd5sink.c gstshaper.c gsttee.c
8443                             gsttypefindelement.c
8444         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
8445
8446           - removing trailing commas at end of enums
8447             it is correct C99 code but C90 compilers would complain
8448             (AIX, Forte, ...)
8449             ('should' fix #143290, at least partially)
8450
8451 2004-05-27  Wim Taymans  <wim@fluendo.com>
8452
8453         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
8454         (chain_group_set_enabled), (create_group), (add_to_group),
8455         (merge_groups), (setup_group_scheduler), (group_elements),
8456         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
8457         Don't try to follow the pad connections with other groups
8458         when a loop based element is added to the scheduler because
8459         the bin will inform the scheduler about the pad links a little
8460         later.
8461
8462 2004-05-27  Wim Taymans  <wim@fluendo.com>
8463
8464         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8465         (remove_from_chain), (chain_group_set_enabled),
8466         (setup_group_scheduler), (group_element_set_enabled),
8467         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
8468         (gst_opt_scheduler_show):
8469         Elements without a group can do a state change as well, just wait
8470         with the setup of the scheduling function when it is added to a
8471         chain.
8472
8473 2004-05-27  Wim Taymans  <wim@fluendo.com>
8474
8475         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8476         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
8477         (merge_groups), (setup_group_scheduler),
8478         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
8479         (gst_opt_scheduler_show):
8480         Fixes to maintain internal consistency of the scheduler data
8481         structures. 
8482          - adding an enabled group to a chain should increment the
8483            number of enabled elements in that chain.
8484          - removing an enabled group from a chain could disable the
8485            chain.
8486          - removing a disabled group from a chain could enable the
8487            chain.
8488          - add g_assert when internal inconsistency is detected.
8489          - adding an element to a group could increase the number of
8490            links this group has with other groups.
8491          - merging two groups also merges the chains.
8492          - also show group links in the _show method.
8493            
8494
8495 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8496
8497         * gst/gstcaps.c: (gst_caps_structure_simplify):
8498           don't print error messages when there is no error
8499         * gst/gstvalue.c: (gst_value_compare_int_range):
8500           compare the second value, too
8501         * testsuite/caps/Makefile.am:
8502         * testsuite/caps/random.c: (assert_on_error), (main):
8503           add tests to make sure the two things above are checked for
8504
8505 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8506
8507         * configure.ac:
8508         * libs/gst/dataprotocol/Makefile.am:
8509         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
8510         * libs/gst/dataprotocol/dataprotocol.h:
8511           wrap header in GST_ENABLE_NEW.  make code use it
8512
8513 2004-05-23  Johan Dahlin  <johan@gnome.org>
8514
8515         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
8516         so verbose and print GstElement signal names all the time.
8517
8518 2004-05-22  David Schleef  <ds@schleef.org>
8519
8520         * gst/registries/gstxmlregistry.c:
8521         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
8522         (bug #142957)
8523
8524 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
8525
8526         * configure.ac:
8527           scrub cflags for glib2 so gcc doesn't complain when glib is in
8528           /usr/local
8529
8530 2004-05-21  Johan Dahlin  <johan@gnome.org>
8531
8532         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
8533         __GNUC__, patch from Brian Cameron, fixes bug #142804
8534
8535 2004-05-20  David Schleef  <ds@schleef.org>
8536
8537         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
8538         comparison code.  (bug #142819)
8539
8540 2004-05-20  Wim Taymans  <wim@fluendo.com>
8541
8542         * gst/gstbuffer.c: (gst_buffer_default_copy):
8543         * gst/gstbuffer.h:
8544         Added Comment to a flag.
8545         copy relevant flags in _buffer_copy.
8546
8547 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8548
8549         reviewed by: Wim Taymans <wim at fluendo dot com>
8550
8551         * gst/gstbuffer.h:
8552           add GST_BUFFER_IN_CAPS buffer flag
8553         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8554         (gst_structure_parse_any_list), (gst_structure_parse_list),
8555         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
8556         * gst/gstvalue.c: (gst_value_serialize_any_list),
8557         (gst_value_transform_any_list_string),
8558         (gst_value_list_prepend_value), (gst_value_list_append_value),
8559         (gst_value_list_get_size), (gst_value_list_get_value),
8560         (gst_value_transform_list_string),
8561         (gst_value_transform_fixed_list_string),
8562         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
8563         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
8564         (_gst_value_initialize):
8565         * gst/gstvalue.h:
8566           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
8567           < , > as a format.
8568         * testsuite/caps/string-conversions.c: (main):
8569           add regression tests for < >
8570
8571 2004-05-20  Johan Dahlin  <johan@gnome.org>
8572
8573         * docs/gst/Makefile.am (all-local): Re-add
8574
8575 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8576
8577         * docs/gst/Makefile.am:
8578         * docs/gst/gstreamer-docs.sgml:
8579         * docs/libs/Makefile.am:
8580         * docs/libs/gstreamer-libs-docs.sgml:
8581           fix distcheck issues
8582
8583 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8584
8585         * libs/gst/dataprotocol/Makefile.am:
8586           add to autotest
8587
8588 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8589
8590         * libs/gst/dataprotocol/Makefile.am:
8591         * libs/gst/dataprotocol/dataprotocol.c:
8592         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8593         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
8594         * libs/gst/dataprotocol/dp-private.h:
8595           use GST macros to read/write fixed length ints
8596           add some more asserts
8597
8598 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8599
8600         * docs/libs/gstreamer-libs-docs.sgml:
8601         * docs/libs/gstreamer-libs-sections.txt:
8602           remove idct and putbits
8603         * configure.ac:
8604         * docs/libs/tmpl/gstdataprotocol.sgml:
8605         * libs/gst/Makefile.am:
8606         * libs/gst/dataprotocol/Makefile.am:
8607         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
8608         (buffer_test), (caps_test), (event_test), (main):
8609         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
8610         (gst_dp_dump_byte_array), (gst_dp_init),
8611         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
8612         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8613         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
8614         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
8615         (gst_dp_validate_header), (gst_dp_validate_payload),
8616         (gst_dp_validate_packet), (plugin_init):
8617         * libs/gst/dataprotocol/dataprotocol.h:
8618         * libs/gst/dataprotocol/dp-private.h:
8619           add dataprotocol
8620
8621 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8622
8623         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
8624           fix int variable deserialization and add a helper so we can actually
8625           debug this.
8626
8627 2004-05-18  David Schleef  <ds@schleef.org>
8628
8629         * testsuite/debug/commandline.c: (main): Call ./commandline, not
8630           argv[0].  Calling yourself is probably not the best way to
8631           construct a test like this, btw.
8632
8633 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8634
8635         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
8636           don't claim to be more intelligent than a scheduler when the
8637           scheduler claims the pipeline is stopped
8638         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
8639         (safe_cothread_destroy),
8640         (gst_entry_scheduler_remove_all_cothreads),
8641         (gst_entry_scheduler_reset), (_remove_cothread),
8642         (gst_entry_scheduler_state_transition):
8643           hold off cothread destruction if we're not in main cothread
8644         * configure.ac:
8645         * testsuite/Makefile.am:
8646           add new test dir
8647         * testsuite/schedulers/.cvsignore:
8648         * testsuite/schedulers/Makefile.am:
8649           add tests
8650         * testsuite/schedulers/relink.c: (cb_handoff), (main):
8651           check relinking and adding/removing elements from a running pipeline
8652         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
8653           check unlinking in a running pipeline
8654         * testsuite/schedulers/unref.c: (cb_handoff), (main):
8655           check unreffing a running pipeline
8656         * testsuite/schedulers/useless_iteration.c: (main):
8657           check iterating a pipeline that contains running threads works
8658
8659 2004-05-18  David Schleef  <ds@schleef.org>
8660
8661         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
8662           is false.
8663
8664 2004-05-18  Wim Taymans  <wim@fluendo.com>
8665
8666         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8667         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
8668         Fixed an error introduced with patch for 1.63. When setting
8669         a get based element as the entry point in a group, make sure
8670         to mark the group as GET based.
8671
8672 2004-05-18  Wim Taymans  <wim@fluendo.com>
8673
8674         * gst/schedulers/gstoptimalscheduler.c: (create_group),
8675         (setup_group_scheduler), (loop_group_schedule_function),
8676         (gst_opt_scheduler_pad_link):
8677         Added some more debug info and fixed a bug where the group
8678         type was set to LOOP but it was in fact unknown.
8679
8680 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8681
8682         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
8683           make resetting scheduler work twice in a row
8684
8685 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8686
8687         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
8688         (CREATE_USERIALIZATION), (_gst_value_initialize),
8689         (gst_value_compare_float), (gst_value_serialize_float),
8690         (gst_value_deserialize_float), (gst_value_compare_enum),
8691         (gst_value_serialize_enum), (gst_value_deserialize_enum):
8692           add serialization and comparison functions for long, int64, enum and
8693           float values
8694         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
8695           use best serialization function in type hierarchy instead of only a
8696           matching one. This is required for enums to work.
8697         * gst/parse/grammar.y:
8698           use gst_caps_deserialize
8699         * testsuite/parse/Makefile.am:
8700           parse1 now works
8701         * testsuite/parse/parse1.c: (main):
8702           remove aggregator check, aggregator is broken, this test works now
8703           but fails because of bug #138012
8704         * testsuite/parse/parse2.c: (main):
8705           s/xvideosink/xvimagesink - this test looks a lot like we should
8706           disable it
8707
8708 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8709
8710         * gst/gstelement.c: (gst_element_class_init):
8711           whoops, store the signal id correctly
8712         * gst/schedulers/gstbasicscheduler.c:
8713         (gst_basic_scheduler_chain_wrapper):
8714           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
8715           chain function isn't linked
8716
8717 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
8718         * configure.ac:
8719         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
8720         support until we decide where the flags should be used
8721         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
8722         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
8723         * gst/gstpad.c: (gst_pad_link_call_link_functions):
8724         Output refused caps in the debug info
8725
8726 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8727
8728         * gst/elements/gstidentity.c: (gst_identity_chain):
8729           add duration debug
8730         * gst/gstinfo.c: (gst_debug_log_default):
8731           add timestamp
8732
8733 2004-05-13  Benjamin Otte  <otte@gnome.org>
8734
8735         * gst/gstpipeline.c: (gst_pipeline_dispose),
8736         (gst_pipeline_change_state):
8737           call gst_scheduler_reset on dispose (fixes #141416)
8738
8739 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8740
8741         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8742           compute mapsize correctly
8743         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8744           use correct datatypes when calling a varargs function
8745         * gst/elements/gsttypefindelement.c: (stop_typefinding):
8746           push a DISCONT event as first thing
8747         * gst/gst_private.h:
8748         * gst/gstinfo.c: (_gst_debug_init):
8749           remove GST_DATAFLOW debugging category
8750         * gst/gstbin.c: (gst_bin_iterate):
8751           use GST_SCHEDULING category
8752         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
8753         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
8754         (gst_pad_call_get_function):
8755           add GST_DATAFLOW to easily track flow of buffers or events.
8756         * gst/gstqueue.c: (gst_queue_get_type),
8757         (gst_queue_handle_pending_events), (gst_queue_chain),
8758         (gst_queue_get), (gst_queue_handle_src_event):
8759           use own static debugging category GST_DATAFLOW for dataflow,
8760           use DEBUG category for showing which path events go, use LOG
8761           category for buffers.
8762
8763 2004-05-10  David Schleef  <ds@schleef.org>
8764
8765         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
8766
8767 2004-05-10  David Schleef  <ds@schleef.org>
8768
8769         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
8770         symbols, because otherwise we don't know what they are.  Thanks,
8771         the GStreamer team.
8772         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
8773
8774 2004-05-10  David Schleef  <ds@schleef.org>
8775
8776         (from Steve Lhomme)
8777         * win32/Makefile: When using make clean the MS Visual Studio makefiles
8778         are deleted.  Fix.
8779         * win32/Makefile.inspect:
8780         * win32/Makefile.launch:
8781         * win32/Makefile.register:
8782
8783 2004-05-10  David Schleef  <ds@schleef.org>
8784
8785         * gst/gstinfo.h: Add missing inline function.
8786         * gst/gsttrace.c: add include
8787         * gst/parse/grammar.y: remove unused code
8788         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
8789         more portable.
8790         * tools/gst-register.c: wrap unistd.h
8791         
8792         More additions/fixes from Steve for the MSVC build.
8793         * win32/GStreamer.vcproj:
8794         * win32/Makefile:
8795         * win32/Makefile.inspect:
8796         * win32/Makefile.launch:
8797         * win32/Makefile.register:
8798         * win32/README.txt:
8799         * win32/gst-inspect.vcproj:
8800         * win32/gst-launch.vcproj:
8801         * win32/gst-register.vcproj:
8802         * win32/gstbytestream.def:
8803         * win32/gstbytestream.vcproj:
8804         * win32/gstconfig.h:
8805         * win32/gstelements.def:
8806         * win32/gstelements.vcproj:
8807         * win32/gstenumtypes.c:
8808         * win32/gstenumtypes.h:
8809         * win32/gstoptimalscheduler.def:
8810         * win32/gstoptimalscheduler.vcproj:
8811         * win32/gstreamer.def:
8812         * win32/gstspider.def:
8813         * win32/gstspider.vcproj:
8814         * win32/gstversion.h:
8815         * win32/msvc71.sln:
8816
8817 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8818
8819         * gst/gstelement.c: (gst_element_class_init),
8820         (gst_element_no_more_pads):
8821         * gst/gstelement.h:
8822           add gst_element_no_more_pads and the "no-more-pads" signal
8823
8824 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8825
8826         * gst/gstregistry.c: (gst_registry_add_plugin):
8827           refuse to add plugins when a plugin with same name is already
8828           registered. Fixes a bunch of "How to remove plugins?" issues.
8829           May lead to other problems though, let's test
8830
8831 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8832
8833         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
8834         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
8835         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
8836
8837 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8838
8839         * tests/Makefile.am: fix am16 issue
8840
8841 2004-05-09  Benjamin Otte  <otte@gnome.org>
8842
8843         * libs/gst/bytestream/Makefile.am:
8844           we should indeed add .c files to makefiles or they won't be built
8845           (d'oh)
8846
8847 2004-05-08  Benjamin Otte  <otte@gnome.org>
8848
8849         * gst/gstpad.c: (gst_pad_proxy_fixate):
8850           really reduce the set of caps
8851
8852 2004-05-08  Benjamin Otte  <otte@gnome.org>
8853
8854         * tests/Makefile.am:
8855         * tests/spidey_bench.c: (handoff), (main):
8856           add benchmark to test how long spider needs to create a pipeline
8857
8858 2004-05-08  Benjamin Otte  <otte@gnome.org>
8859
8860         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
8861           mark links as unengaged when unnegotiating instead of deactivating.
8862           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
8863
8864 2004-05-08  Benjamin Otte  <otte@gnome.org>
8865
8866         * docs/manual/helloworld.xml:
8867           s/audiosink/osssink (patch by Patrick Guimond)
8868
8869 2004-05-07  David Schleef  <ds@schleef.org>
8870
8871         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
8872         since it contains important stuff.
8873
8874 2004-05-07  David Schleef  <ds@schleef.org>
8875
8876         * testsuite/caps/caps.c: (test3), (main): A check for appending
8877         ANY caps.
8878
8879 2004-05-07  David Schleef  <ds@schleef.org>
8880
8881         * common/m4/as-compiler-flag.m4: Properly quote arguments,
8882         which may contain commas.  Fixes detection of -Wa,-mregnames
8883
8884 2004-05-06  David Schleef  <ds@schleef.org>
8885
8886         Changes to handle compilers that don't have variadic macro
8887         support.  In particular, glib headers define some inlines
8888         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
8889         builds.
8890         * gst/Makefile.am:
8891         * gst/cothreads.c:
8892         * gst/elements/gstfdsink.c:
8893         * gst/elements/gstfdsrc.c:
8894         * gst/elements/gstfilesink.c:
8895         * gst/elements/gstfilesrc.c:
8896         * gst/gst_private.h:
8897         * gst/gstatomic.c:
8898         * gst/gstcaps.c: (gst_caps_append):
8899         * gst/gstcpu.c: (gst_cpuid_i386):
8900         * gst/gstelement.c:
8901         * gst/gsterror.c:
8902         * gst/gstfilter.c:
8903         * gst/gstinfo.h:
8904         * gst/gstprobe.c:
8905         * gst/gstquery.c:
8906         * gst/gstregistry.c:
8907         * gst/gststructure.c:
8908         * gst/gsttaginterface.c:
8909         * gst/gsttrace.c: (gst_trace_new):
8910         * gst/gsttrashstack.c:
8911         * gst/gsturi.c:
8912         * gst/gstvalue.c:
8913         * gst/parse/grammar.y:
8914         * gst/parse/parse.l:
8915         * tools/gst-inspect.c: (main):
8916         * tools/gst-launch.c: (main):
8917         * tools/gst-xmlinspect.c: (PUT_STRING):
8918
8919 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8920
8921         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
8922         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
8923         * gst/elements/gstfilesrc.h:
8924           send NEW_MEDIA events correctly
8925         * gst/elements/gsttypefindelement.c: (start_typefinding),
8926         (gst_type_find_element_handle_event):
8927           restart typefinding when we get a NEW_MEDIA event
8928         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
8929         (gst_bin_dispose):
8930           don't die when someone removes elements in callbacks
8931         * gst/gstelement.c: (gst_element_change_state):
8932           improve debugging
8933         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
8934           we need a NEW_MEDIA event to engage a link
8935         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
8936           don't g_print debugging stuff
8937         * testsuite/caps/simplify.c: (check_caps):
8938
8939 2004-05-04  Benjamin Otte  <otte@gnome.org>
8940
8941         * gst/parse/grammar.y:
8942           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
8943
8944 2004-05-04  Benjamin Otte  <otte@gnome.org>
8945
8946         * testsuite/caps/renegotiate.c: (main):
8947           improve output in error case
8948
8949 2004-05-04  Benjamin Otte  <otte@gnome.org>
8950
8951         * gst/parse/grammar.y:
8952           fix assert to not trigger when there's no error argument
8953         * gst/parse/parse.l:
8954           fix definition of caps to allow more than two structures
8955         * testsuite/caps/Makefile.am:
8956         * testsuite/caps/renegotiate.c: (main):
8957           it's sinesrc and works in that case
8958
8959 2004-05-04  Wim Taymans  <wim@fluendo.com>
8960
8961         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8962         (group_dec_link), (gst_opt_scheduler_pad_unlink):
8963         when removing an element from a group, we always need to
8964         decrement the link count that this group had with other 
8965         groups through the element.
8966         added an extra assert to catch inconsistencies when decrementing
8967         the link count.
8968
8969 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8970
8971         * configure.ac:
8972         * docs/gst/Makefile.am:
8973         * docs/gst/gstreamer-sections.txt:
8974         * docs/gst/tmpl/gstcompat.sgml:
8975         * examples/appreader/Makefile.am:
8976         * examples/cutter/Makefile.am:
8977         * examples/events/Makefile.am:
8978         * examples/helloworld/Makefile.am:
8979         * examples/helloworld2/Makefile.am:
8980         * examples/launch/Makefile.am:
8981         * examples/manual/Makefile.am:
8982         * examples/mixer/Makefile.am:
8983         * examples/pingpong/Makefile.am:
8984         * examples/plugins/Makefile.am:
8985         * examples/queue/Makefile.am:
8986         * examples/queue2/Makefile.am:
8987         * examples/queue3/Makefile.am:
8988         * examples/queue4/Makefile.am:
8989         * examples/retag/Makefile.am:
8990         * examples/thread/Makefile.am:
8991         * examples/typefind/Makefile.am:
8992         * examples/xml/Makefile.am:
8993         * gst/Makefile.am:
8994         * gst/autoplug/Makefile.am:
8995         * gst/elements/Makefile.am:
8996         * gst/gstcompat.h:
8997         * gst/indexers/Makefile.am:
8998         * gst/parse/Makefile.am:
8999         * gst/registries/Makefile.am:
9000         * gst/schedulers/Makefile.am:
9001         * libs/gst/bytestream/Makefile.am:
9002         * libs/gst/control/Makefile.am:
9003         * libs/gst/getbits/Makefile.am:
9004         * po/af.po:
9005         * po/az.po:
9006         * po/en_GB.po:
9007         * po/fr.po:
9008         * po/nl.po:
9009         * po/sr.po:
9010         * po/sv.po:
9011         * po/tr.po:
9012         * po/uk.po:
9013         * tests/Makefile.am:
9014         * tests/bufspeed/Makefile.am:
9015         * tests/instantiate/Makefile.am:
9016         * tests/memchunk/Makefile.am:
9017         * tests/muxing/Makefile.am:
9018         * tests/negotiation/Makefile.am:
9019         * tests/probes/Makefile.am:
9020         * tests/sched/Makefile.am:
9021         * tests/seeking/Makefile.am:
9022         * tests/threadstate/Makefile.am:
9023         * testsuite/caps/Makefile.am:
9024         * testsuite/cleanup/Makefile.am:
9025         * testsuite/dlopen/Makefile.am:
9026         * testsuite/dynparams/Makefile.am:
9027         * testsuite/plugin/Makefile.am:
9028         * testsuite/states/Makefile.am:
9029         * tools/Makefile.am:
9030           reorganize compile/link flags to be consistent
9031           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
9032
9033 2004-05-04  David Schleef  <ds@schleef.org>
9034
9035         The "once more, with feeling" check-in.
9036         * testsuite/caps/Makefile.am: dist caps_strings
9037         * testsuite/caps/renegotiate.c: (main): This test triggers a
9038           segfault in the core.  Marking as failing.
9039
9040 2004-05-03  David Schleef  <ds@schleef.org>
9041
9042         * testsuite/caps/deserialize.c: (main): Fix problems noticed
9043           by the build bots.
9044         * testsuite/caps/renegotiate.c: (main): Same.
9045
9046 2004-05-03  David Schleef  <ds@schleef.org>
9047
9048         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
9049
9050 2004-05-03  David Schleef  <ds@schleef.org>
9051
9052         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
9053           variable to find our source file.
9054
9055 2004-05-03  David Schleef  <ds@schleef.org>
9056
9057         * configure.ac:  Link plugins with libgstreamer and dependent
9058           libraries
9059         * testsuite/caps/Makefile.am:
9060         * testsuite/caps/caps_strings:
9061         * testsuite/caps/deserialize.c: (main): Add a little test to slog
9062           through a file of caps strings and test each one
9063
9064 2004-05-04  Benjamin Otte  <otte@gnome.org>
9065
9066         * libs/gst/bytestream/Makefile.am:
9067         * libs/gst/bytestream/adapter.c: 
9068         * libs/gst/bytestream/adapter.h:
9069           add GstAdapter, similar to bytestream, but doesn't require ugly event
9070           handling or uglier loopbased elements
9071
9072 2004-05-03  David Schleef  <ds@schleef.org>
9073
9074         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
9075         * testsuite/caps/erathostenes.c:
9076         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
9077
9078 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9079
9080         * docs/pwg/pwg.xml:
9081           remove hardcoded stylesheet path (duh)
9082         * docs/random/release:
9083         * docs/gst/gstreamer-sections.txt:
9084         * gst/Makefile.am:
9085         * gst/gst.h:
9086         * gst/gst_private.h:
9087         * gst/gstcaps.c:
9088         * gst/gstevent.c:
9089         * gst/gstformat.c:
9090         * gst/gstinfo.c:
9091         * gst/gstinfo.h:
9092         * gst/gstinterface.c:
9093         * gst/gstmemchunk.c:
9094         * gst/gstprobe.c:
9095         * gst/gstquery.c:
9096         * gst/gstregistry.c:
9097         * gst/gstregistrypool.c:
9098         * gst/gststructure.c:
9099         * gst/gsttaginterface.c:
9100         * gst/gstthread.c:
9101         * gst/gsttrace.c:
9102         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
9103         * gst/gsturi.c:
9104         * gst/gstvalue.c:
9105           deprecate gst_info; remove gstlog.h
9106    
9107
9108 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9109
9110         * Makefile.am:
9111         * po/en_GB.po:
9112         * po/sv.po:
9113         * po/uk.po:
9114           updated translations
9115
9116 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9117
9118         * gst/gstbin.c: (gst_bin_dispose):
9119           better debugging
9120
9121 2004-05-03  Johan Dahlin  <johan@gnome.org>
9122
9123         * gst/schedulers/gstoptimalscheduler.c
9124         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
9125         really is a GstElement. Avoids critical when running gst-launch -v
9126         and a oggdemux/decoding pipeline.
9127
9128 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9129
9130         * docs/gst/tmpl/gstpipeline.sgml :
9131         * docs/manual/elements-api.xml :
9132                 doc fix by Patrick Guimond (Protector) from devel ML
9133                 reviewed by ronald
9134
9135 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9136
9137         * docs/gst/Makefile.am :
9138         * docs/libs/Makefile.am :
9139                 apply a patch from Arwed v. Merkatz so that gtk-doc
9140                 generated docs install (same for .devhelp file)
9141                 (fixes part 1 of #138836)
9142
9143 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9144
9145         * docs/faq/dependencies.xml: typo
9146         * docs/faq/getting.xml :
9147             - fix download URL for new gstreamer site
9148             - hide sf.net download page as latest version aren't there
9149             - fix apt URLs
9150             - fill "get via CVS" paragraph (link to dev page on the site)
9151         * docs/faq/general.xml:
9152             hide status tables as they no more exists
9153             change case on plugins license file to reflect reality
9154         * docs/faq/troubleshooting.xml:
9155             remove the wiki question/answer as there is no more wiki
9156
9157 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9158
9159         * gst/gsterror.h:
9160           include the headers needed for declarations used in this header
9161
9162 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9163
9164         * docs/random/uraeus/gstreamer_and_midi.txt :
9165           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
9166           (fixes #132288)
9167
9168 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
9169
9170         reviewed by Benjamin Otte  <otte@gnome.org>
9171
9172         * gst/schedulers/gthread-cothreads.h:
9173           free allocated data for main cothread, too when destroying context
9174           (fixes #141417)
9175
9176 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9177
9178         * docs/manual/goals.xml : remove duplicated paragraph at end 
9179         of doc page (fixes #141448)
9180
9181 2004-04-29  David Schleef  <ds@schleef.org>
9182
9183         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
9184         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
9185
9186 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9187
9188         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
9189           fix property
9190         * gst/gstcaps.c:
9191           fix doc string
9192         * po/POTFILES.in:
9193           rename typefind source file
9194
9195 2004-04-28  David Schleef  <ds@schleef.org>
9196
9197         Several new files from Steve Lhomme's MSVC patch (bug #141317):
9198         * win32/GStreamer.vcproj:
9199         * win32/Makefile:
9200         * win32/config.h:
9201         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
9202         (_trewinddir), (_ttelldir), (_tseekdir):
9203         * win32/dirent.h:
9204         * win32/gst-inspect.vcproj:
9205         * win32/gst-launch.vcproj:
9206         * win32/gst-register.vcproj:
9207         * win32/gstbytestream.vcproj:
9208         * win32/gstelements.vcproj:
9209         * win32/gstoptimalscheduler.vcproj:
9210         * win32/gstspider.vcproj:
9211         * win32/gtchar.h:
9212         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
9213         * win32/mman.h:
9214         * win32/mman.inl:
9215         * win32/msvc71.sln:
9216
9217 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9218
9219         * gst/gst.c: (init_post):
9220         * gst/gstinfo.c:
9221           remove useless _gst_progname stuff
9222         * tools/gst-inspect.c: (print_field), (print_caps):
9223           improve caps output
9224
9225 2004-04-28  David Schleef  <ds@schleef.org>
9226
9227         Disable parsing of a lot of files that aren't part of the
9228         exported API.  Move corresponding template files to old/,
9229         waiting for removal when they don't contain anything
9230         interesting.
9231         * docs/gst/Makefile.am:
9232         * docs/gst/gstreamer-sections.txt:
9233         * docs/gst/tmpl/cothreads.sgml:
9234         * docs/gst/tmpl/cothreads_compat.sgml:
9235         * docs/gst/tmpl/gettext.sgml:
9236         * docs/gst/tmpl/gobject2gtk.sgml:
9237         * docs/gst/tmpl/grammar.tab.sgml:
9238         * docs/gst/tmpl/gst-i18n-app.sgml:
9239         * docs/gst/tmpl/gst-i18n-lib.sgml:
9240         * docs/gst/tmpl/gst_private.sgml:
9241         * docs/gst/tmpl/gstaggregator.sgml:
9242         * docs/gst/tmpl/gstarch.sgml:
9243         * docs/gst/tmpl/gstatomic_impl.sgml:
9244         * docs/gst/tmpl/gstbufferstore.sgml:
9245         * docs/gst/tmpl/gstdata_private.sgml:
9246         * docs/gst/tmpl/gstdisksink.sgml:
9247         * docs/gst/tmpl/gstdisksrc.sgml:
9248         * docs/gst/tmpl/gstelementfactory.sgml:
9249         * docs/gst/tmpl/gstextratypes.sgml:
9250         * docs/gst/tmpl/gstfakesink.sgml:
9251         * docs/gst/tmpl/gstfakesrc.sgml:
9252         * docs/gst/tmpl/gstfdsink.sgml:
9253         * docs/gst/tmpl/gstfdsrc.sgml:
9254         * docs/gst/tmpl/gstfilesink.sgml:
9255         * docs/gst/tmpl/gstfilesrc.sgml:
9256         * docs/gst/tmpl/gsthttpsrc.sgml:
9257         * docs/gst/tmpl/gstidentity.sgml:
9258         * docs/gst/tmpl/gstindexfactory.sgml:
9259         * docs/gst/tmpl/gstmarshal.sgml:
9260         * docs/gst/tmpl/gstmd5sink.sgml:
9261         * docs/gst/tmpl/gstmultidisksrc.sgml:
9262         * docs/gst/tmpl/gstmultifilesrc.sgml:
9263         * docs/gst/tmpl/gstpadtemplate.sgml:
9264         * docs/gst/tmpl/gstpipefilter.sgml:
9265         * docs/gst/tmpl/gstschedulerfactory.sgml:
9266         * docs/gst/tmpl/gstsearchfuncs.sgml:
9267         * docs/gst/tmpl/gstshaper.sgml:
9268         * docs/gst/tmpl/gstspider.sgml:
9269         * docs/gst/tmpl/gstspideridentity.sgml:
9270         * docs/gst/tmpl/gststatistics.sgml:
9271         * docs/gst/tmpl/gsttee.sgml:
9272         * docs/gst/tmpl/gsttimecache.sgml:
9273         * docs/gst/tmpl/gsttypefind.sgml:
9274         * docs/gst/tmpl/gsttypefindfactory.sgml:
9275         * docs/gst/tmpl/gstxmlregistry.sgml:
9276         * docs/gst/tmpl/gthread-cothreads.sgml:
9277         * docs/gst/tmpl/old/cothreads.sgml:
9278         * docs/gst/tmpl/old/cothreads_compat.sgml:
9279         * docs/gst/tmpl/old/gettext.sgml:
9280         * docs/gst/tmpl/old/gobject2gtk.sgml:
9281         * docs/gst/tmpl/old/grammar.tab.sgml:
9282         * docs/gst/tmpl/old/gst-i18n-app.sgml:
9283         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
9284         * docs/gst/tmpl/old/gst_private.sgml:
9285         * docs/gst/tmpl/old/gstaggregator.sgml:
9286         * docs/gst/tmpl/old/gstarch.sgml:
9287         * docs/gst/tmpl/old/gstatomic_impl.sgml:
9288         * docs/gst/tmpl/old/gstbufferstore.sgml:
9289         * docs/gst/tmpl/old/gstdata_private.sgml:
9290         * docs/gst/tmpl/old/gstdisksink.sgml:
9291         * docs/gst/tmpl/old/gstdisksrc.sgml:
9292         * docs/gst/tmpl/old/gstelementfactory.sgml:
9293         * docs/gst/tmpl/old/gstextratypes.sgml:
9294         * docs/gst/tmpl/old/gstfakesink.sgml:
9295         * docs/gst/tmpl/old/gstfakesrc.sgml:
9296         * docs/gst/tmpl/old/gstfdsink.sgml:
9297         * docs/gst/tmpl/old/gstfdsrc.sgml:
9298         * docs/gst/tmpl/old/gstfilesink.sgml:
9299         * docs/gst/tmpl/old/gstfilesrc.sgml:
9300         * docs/gst/tmpl/old/gsthttpsrc.sgml:
9301         * docs/gst/tmpl/old/gstidentity.sgml:
9302         * docs/gst/tmpl/old/gstindexfactory.sgml:
9303         * docs/gst/tmpl/old/gstmarshal.sgml:
9304         * docs/gst/tmpl/old/gstmd5sink.sgml:
9305         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
9306         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
9307         * docs/gst/tmpl/old/gstpadtemplate.sgml:
9308         * docs/gst/tmpl/old/gstpipefilter.sgml:
9309         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
9310         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
9311         * docs/gst/tmpl/old/gstshaper.sgml:
9312         * docs/gst/tmpl/old/gstspider.sgml:
9313         * docs/gst/tmpl/old/gstspideridentity.sgml:
9314         * docs/gst/tmpl/old/gststatistics.sgml:
9315         * docs/gst/tmpl/old/gsttee.sgml:
9316         * docs/gst/tmpl/old/gsttimecache.sgml:
9317         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
9318         * docs/gst/tmpl/old/gstxmlregistry.sgml:
9319         * docs/gst/tmpl/old/gthread-cothreads.sgml:
9320         * docs/gst/tmpl/old/types.sgml:
9321         * docs/gst/tmpl/types.sgml:
9322
9323         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
9324         gtkdoc-scan doesn't like files with the same name in different
9325         directories.
9326         * gst/elements/Makefile.am:
9327         * gst/elements/gstelements.c:
9328         * gst/elements/gsttypefind.c: 
9329         * gst/elements/gsttypefind.h:
9330         * gst/elements/gsttypefindelement.c:
9331         * gst/elements/gsttypefindelement.h:
9332
9333 2004-04-28  David Schleef  <ds@schleef.org>
9334
9335         A bunch of portability fixes, derived from Steve Lhomme's MSVC
9336         patch (bug #141317):
9337         * gst/gst-i18n-lib.h: Allow disabling gettext.
9338         * gst/gstatomic_impl.h: disable warning when it's dumb.
9339         * gst/gstclock.c: fix include
9340         * gst/gstcompat.h: fix variadic macro
9341         * gst/gstinfo.c: fix include
9342         * gst/gstmacros.h: add defines for inlines on MSVC
9343         * gst/gstplugin.c: fix includes
9344         * gst/gstregistry.c: fix includes
9345         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
9346         * gst/gstsystemclock.c: fix include
9347         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
9348         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
9349         * gst/registries/gstxmlregistry.c:
9350         (gst_xml_registry_parse_element_factory): fix use of non-portable
9351         functions
9352         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
9353         * libs/gst/control/dparammanager.h: same
9354
9355 2004-04-28  David Schleef  <ds@schleef.org>
9356
9357         Move a bunch of unused files to old/ with names that are
9358         not case-insensitive-unique.  These files still contain some
9359         useful information that needs to be merged into gstbin.sgml,
9360         etc., so they shouldn't be deleted yet.
9361         * docs/gst/tmpl/GstBin.sgml:
9362         * docs/gst/tmpl/GstBuffer.sgml:
9363         * docs/gst/tmpl/GstCaps.sgml:
9364         * docs/gst/tmpl/GstClock.sgml:
9365         * docs/gst/tmpl/GstCompat.sgml:
9366         * docs/gst/tmpl/GstData.sgml:
9367         * docs/gst/tmpl/GstElement.sgml:
9368         * docs/gst/tmpl/GstEvent.sgml:
9369         * docs/gst/tmpl/GstIndex.sgml:
9370         * docs/gst/tmpl/GstStructure.sgml:
9371         * docs/gst/tmpl/GstTag.sgml:
9372         * docs/gst/tmpl/old/GstBin.sgml:
9373         * docs/gst/tmpl/old/GstBuffer.sgml:
9374         * docs/gst/tmpl/old/GstCaps.sgml:
9375         * docs/gst/tmpl/old/GstClock.sgml:
9376         * docs/gst/tmpl/old/GstCompat.sgml:
9377         * docs/gst/tmpl/old/GstData.sgml:
9378         * docs/gst/tmpl/old/GstElement.sgml:
9379         * docs/gst/tmpl/old/GstEvent.sgml:
9380         * docs/gst/tmpl/old/GstIndex.sgml:
9381         * docs/gst/tmpl/old/GstStructure.sgml:
9382         * docs/gst/tmpl/old/GstTag.sgml:
9383
9384 2004-04-28  David Schleef  <ds@schleef.org>
9385
9386         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
9387         (gst_caps_append), (gst_caps_append_structure),
9388         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
9389         (gst_caps_set_simple), (gst_caps_set_simple_valist),
9390         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
9391         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
9392         (gst_caps_intersect), (gst_caps_normalize),
9393         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
9394         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
9395         * gst/gstcaps.h: use GST_IS_CAPS().
9396
9397 2004-04-26  David Schleef  <ds@schleef.org>
9398
9399         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
9400         assembly.  gcc doesn't handle it correctly. (bug #141083)
9401         * gst/gsttrashstack.h: same
9402
9403 2004-04-25  Benjamin Otte  <otte@gnome.org>
9404
9405         * gst/gstelement.c: (gst_element_change_state):
9406           fix assertion to do an int comparison
9407
9408 2004-04-25  Benjamin Otte  <otte@gnome.org>
9409
9410         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9411           better debugging output on error
9412
9413 2004-04-25  Benjamin Otte  <otte@gnome.org>
9414
9415         * gst/gstcaps.c: (gst_caps_subtract):
9416           fix memleak
9417
9418 2004-04-23  Benjamin Otte  <otte@gnome.org>
9419
9420         * gst/gstvalue.c: (gst_value_compare_buffer),
9421         (_gst_value_initialize):
9422           add comparison function for buffers
9423
9424 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9425
9426         * docs/pwg/pwg.xml:
9427           Just found out that this so-called "ima-wav" format is really
9428           just "dvi adpcm" (according to the MS WAV documentation). So
9429           renaming it. We didn't use it yet anyway.
9430
9431 2004-04-23  Benjamin Otte  <otte@gnome.org>
9432
9433         * gst/gstcaps.c: (gst_caps_is_always_compatible):
9434           call gst_caps_is_subset
9435
9436 2004-04-23  Benjamin Otte  <otte@gnome.org>
9437
9438         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
9439         (gst_caps_is_subset):
9440           add documentation
9441
9442 2004-04-23  Benjamin Otte  <otte@gnome.org>
9443           
9444         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
9445         (gst_caps_structure_subtract), (gst_caps_subtract),
9446         (gst_caps_structure_figure_out_union),
9447         (gst_caps_structure_simplify), (gst_caps_do_simplify):
9448           fix simplifying and subtracting not working correctly with optional
9449           properties
9450           solve assorted problems that make it now simplify ebven more
9451         * docs/gst/tmpl/gstcaps.sgml:
9452         * gst/gstcaps.h:
9453           make gst_caps_do_simplify return a bool to indicate if it simplified
9454         * testsuite/caps/simplify.c: (main):
9455           add more checks. The tests is quite a bit useless right now because
9456           the core is heavily simplifying itself.
9457         * testsuite/caps/caps.h:
9458           fix caps to contain all optional properties
9459
9460 2004-04-22  Benjamin Otte  <otte@gnome.org>
9461
9462         * docs/gst/tmpl/gstcaps.sgml:
9463         * docs/gst/tmpl/gstfilesrc.sgml:
9464         * docs/gst/tmpl/gststructure.sgml:
9465         * docs/gst/tmpl/gstvalue.sgml:
9466           update for recent API changes
9467         * gst/gstcaps.c: (gst_caps_do_simplify):
9468           fix to stop trying with a freed structure
9469         * gst/gstpad.c: (gst_pad_link_fixate):
9470           simplify caps
9471         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
9472           remove C++ comment
9473         * gst/gstpad.h:
9474           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
9475         * gst/gststructure.c: (gst_structure_value_get_generic_type),
9476         (gst_structure_to_string):
9477           keep the correct type when using lists of ranges
9478         * gst/gstvalue.c: (gst_value_list_prepend_value),
9479         (gst_value_list_append_value):
9480           copy the value before adding to the list (d'oh)
9481         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
9482         (gst_value_subtract_int_range_int_range):
9483           handle overflows correctly
9484         * gst/gstvalue.c: (gst_value_subtract_from_list):
9485           fix memleak
9486         * testsuite/caps/caps.h:
9487           add a caps that caused segfaults
9488
9489 2004-04-22  Benjamin Otte  <otte@gnome.org>
9490
9491         * testsuite/refcounting/pad.c: (main):
9492           fix test
9493
9494 2004-04-22  Benjamin Otte  <otte@gnome.org>
9495
9496         * gst/gstcaps.c: (gst_caps_subtract):
9497           allow subtracting ANY and EMPTY from ANY caps
9498
9499 2004-04-22  Benjamin Otte  <otte@gnome.org>
9500
9501         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
9502         (gst_caps_union):
9503           only simplify in functions that create new caps. Simplifying in
9504           gst_caps_append breaks tests.
9505
9506 2004-04-22  Benjamin Otte  <otte@gnome.org>
9507
9508         * gst/gstcaps.c: (gst_caps_structure_simplify):
9509           unset GValue after use
9510         * gst/gstcaps.c: (gst_caps_append), 
9511         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
9512           use gst_caps_simplify (reduces registry size by 30%)
9513         * gst/gstpad.c: (gst_pad_template_new):
9514           don't allow NULL caps
9515
9516 2004-04-22  Benjamin Otte  <otte@gnome.org>
9517
9518         * docs/gst/gstreamer-sections.txt:
9519           add gst_caps_do_simplify
9520         * gst/gstcaps.c:
9521           add documentation for gst_caps_do_simplify
9522         * gst/gstvalue.h:
9523           fix typo in gst_value_register_subtract_func declaration for gst-doc
9524
9525 2004-04-22  Benjamin Otte  <otte@gnome.org>
9526
9527         * gst/gstcaps.c: (gst_caps_from_string_inplace):
9528           fix bug when converting from empty string.
9529         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
9530         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
9531           use gst_caps_new_empty to allocate a new caps. Only that function
9532           allocates memory for caps now.
9533         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
9534         (gst_caps_remove_structure):
9535           add ability to remove one structure (but not to header yet)
9536         * gst/gstcaps.c: (gst_caps_compare_structures),
9537         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
9538         (gst_caps_structure_simplify), (gst_caps_do_simplify),
9539         * gst/gstcaps.h:
9540           add gst_caps_do_simplify that tries to simplify a caps in place.
9541           Deprecate old gst_caps_simplify function.
9542         * testsuite/caps/caps.h:
9543           add caps.h containing a common set of caps to test against.
9544         * testsuite/caps/sets.c: (check_caps), (main):
9545           use it.
9546         * testsuite/caps/.cvsignore:
9547         * testsuite/caps/Makefile.am:
9548         * testsuite/caps/simplify.c: (check_caps), (main):
9549           add test to check correctness and efficency of caps simplification.
9550
9551 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
9552
9553         reviewed by Benjamin Otte  <otte@gnome.org>
9554
9555         * gst/gstparse.c: (_gst_parse_escape):
9556           Free the GString used in _gst_parse_escape()
9557
9558 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9559
9560         * gst/gstpad.c: (gst_pad_link_negotiate):
9561           refuse to link if the link is not possible
9562         * configure.ac:
9563         * testsuite/Makefile.am:
9564         * testsuite/negotiation/.cvsignore:
9565         * testsuite/negotiation/Makefile.am:
9566         * testsuite/negotiation/pad_link.c: (main):
9567           add test that checks the above behaviour
9568
9569 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9570
9571         * docs/gst/gstreamer-sections.txt:
9572           add newly added API
9573
9574 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9575
9576         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9577         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
9578         (gst_filesrc_open_file), (gst_filesrc_close_file),
9579         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
9580         * gst/elements/gstfilesrc.h:
9581           add support for non-regular files (#140734)
9582
9583 2004-04-21  Benjamin Otte  <otte@gnome.org>
9584
9585         * gst/gstpad.c: (gst_pad_link_fixate):
9586           add sophisticated error checking code to see if fixation functions
9587           did their fixation right
9588
9589 2004-04-21  Benjamin Otte  <otte@gnome.org>
9590
9591         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
9592           check for ANY caps before appending/unioning
9593         * gst/gstcaps.c: (gst_caps_is_subset),
9594         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
9595         (gst_caps_structure_subtract), (gst_caps_subtract):
9596         * gst/gstcaps.h:
9597           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
9598           the API. deprecate gst_caps_is_equal_fixed
9599         * gst/gstpad.c: (gst_pad_try_set_caps):
9600         * gst/gstqueue.c: (gst_queue_link):
9601           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
9602         * gst/gststructure.c: (gst_structure_get_name_id):
9603         * gst/gststructure.h:
9604           add function gst_structure_get_name_id
9605         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
9606         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
9607         (gst_value_subtract_int_range_int_range),
9608         (gst_value_subtract_double_double_range),
9609         (gst_value_subtract_double_range_double),
9610         (gst_value_subtract_double_range_double_range),
9611         (gst_value_subtract_from_list), (gst_value_subtract_list),
9612         (gst_value_can_intersect), (gst_value_subtract),
9613         (gst_value_can_subtract), (gst_value_register_subtract_func),
9614         (_gst_value_initialize):
9615         * gst/gstvalue.h:
9616           add support for subtracting values from each other. Note that
9617           subtracting means subtracting as in set theory. Required for caps
9618           stuff above.
9619         * testsuite/caps/.cvsignore:
9620         * testsuite/caps/Makefile.am:
9621         * testsuite/caps/erathostenes.c: (erathostenes), (main):
9622         * testsuite/caps/sets.c: (check_caps), (main):
9623         * testsuite/caps/subtract.c: (check_caps), (main):
9624           add tests for subtraction and equality code.
9625
9626 2004-04-20  David Schleef  <ds@schleef.org>
9627
9628         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
9629         * gst/indexers/Makefile.am:
9630         * gst/schedulers/Makefile.am:
9631         * libs/gst/bytestream/Makefile.am:
9632         * libs/gst/control/Makefile.am:
9633         * libs/gst/getbits/Makefile.am:
9634
9635 2004-04-20  David Schleef  <ds@schleef.org>
9636
9637         * common/as-libtool.mak: Fine-tune DLL building.
9638         * configure.ac: Link plugins against libgstreamer.  Define plugindir
9639         (like gst-plugins)
9640         * examples/plugins/Makefile.am: remove plugindir
9641         * gst/autoplug/Makefile.am: DLL building fixes
9642         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
9643         Windows.
9644         * gst/elements/gstelements.c: Conditionally disable pipefilter.
9645         * gst/indexers/Makefile.am: DLL building fixes
9646         * gst/schedulers/Makefile.am: DLL building fixes.
9647         * libs/gst/bytestream/Makefile.am: DLL building fixes.
9648         * libs/gst/control/Makefile.am: same
9649         * libs/gst/getbits/Makefile.am: same
9650         * testsuite/Makefile.am: New dlopen directory
9651         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
9652         when dlopened.
9653         * testsuite/dlopen/dlopen_gst.c: (main): same
9654         * testsuite/dlopen/loadgst.c: (do_test): same
9655
9656 2004-04-20  David Schleef  <ds@schleef.org>
9657
9658         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
9659         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
9660
9661 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9662
9663         * gst/gstelement.c: (gst_element_wait),
9664         (gst_element_set_time_delay), (gst_element_change_state):
9665           Use GST_TIME_*
9666
9667 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9668
9669         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
9670         (gst_spider_identity_plug):
9671           improve debugging messages
9672         * gst/gstbin.c: (gst_bin_remove_func):
9673           make sure the state_change function is only called with simple state
9674           transitions
9675
9676 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9677
9678         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
9679         (gst_fakesink_set_property), (gst_fakesink_chain):
9680         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
9681         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
9682         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
9683         * gst/elements/gstidentity.c: (gst_identity_chain),
9684         (gst_identity_set_property):
9685         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
9686         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
9687           add warnings to _set_property for unknown arguments
9688           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
9689
9690 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9691
9692         * Makefile.am:
9693         * docs/manuals.mak:
9694           add .po file download snippet
9695           fix a bug in the doc makefile
9696
9697 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9698
9699         * Makefile.am:
9700         * po/LINGUAS:
9701         * po/en_GB.po:
9702           Added en_GB translation (Gareth Owen)
9703
9704 2004-04-20  Johan Dahlin  <johan@gnome.org>
9705
9706         * gst/gstpad.c (_invent_event): Clean up
9707
9708 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9709
9710         * testsuite/caps/filtercaps.c: (main):
9711           fix test to test things correctly (caps are complicated)
9712
9713 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9714
9715         * testsuite/caps/Makefile.am:
9716         * testsuite/caps/filtercaps.c: (main):
9717           add test (that doesn't work right now, but should)
9718
9719 2004-04-19  David Schleef  <ds@schleef.org>
9720
9721         * configure.ac: Add test for allowing unaligned access.  Add define
9722         to put in gstconfig.h.
9723         * docs/gst/gstreamer-sections.txt: New symbols
9724         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
9725         * docs/gst/tmpl/gstfilesrc.sgml:
9726         * docs/gst/tmpl/gstparse.sgml:
9727         * docs/gst/tmpl/gsttypes.sgml:
9728         * docs/gst/tmpl/gstutils.sgml:
9729         * docs/gst/tmpl/gstvalue.sgml:
9730         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
9731         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
9732         on most !i386/!powerpc architectures.  From Daniel Gazard
9733         <daniel.gazard@free.fr>.  (bug #140156)
9734         * po/af.po: Check in changes made by gettext.
9735         * po/az.po:
9736         * po/fr.po:
9737         * po/nl.po:
9738         * po/sr.po:
9739         * po/sv.po:
9740
9741 2004-04-20  Benjamin Otte  <otte@gnome.org>
9742
9743         * gst/schedulers/entryscheduler.c: 
9744         (gst_entry_scheduler_yield):
9745           refuse to yield when decoupled elements insist on doing that.
9746           At least it's better than crashing
9747
9748 2004-04-19  David Schleef  <ds@schleef.org>
9749
9750         * docs/libs/Makefile.am: Change sinclude to include
9751         * docs/gst/Makefile.am: same
9752         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
9753
9754 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9755
9756         * po/LINGUAS:
9757         * po/uk.po:
9758           Added Ukrainian translation (Maxim V. Dziumanenko)
9759
9760 2004-04-19  Johan Dahlin  <johan@gnome.org>
9761
9762         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
9763         checking here, do it before calling the function.
9764         Clean up, use for loops instead of while loops while iterating
9765         over lists.
9766
9767         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
9768         in debug message.
9769         (gst_spider_create_and_plug): Improve debug message.
9770         General: Replace while loops which iterates over GLists with for
9771         loops. Which are much cleaner, improves readability, especially
9772         for gst_spider_identity_plug
9773
9774         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
9775         fixes bug 140477
9776
9777 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9778
9779         * po/LINGUAS:
9780         * po/tr.po:
9781           Added Turkish translation (Baris Cicek)
9782
9783 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9784
9785         * docs/faq/troubleshooting.xml:
9786           Mention gst-register in the FAQ (fixes 139045).
9787
9788 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9789
9790         * docs/gst/gstreamer-sections.txt:
9791
9792 2004-04-17  Benjamin Otte  <otte@gnome.org>
9793
9794         * gst/gstelement.c: (gst_element_dispose):
9795           simplify
9796         * gst/gstpad.c: (gst_pad_call_chain_function):
9797           don't create loads of events due to bad macro usage
9798
9799 2004-04-16  David Schleef  <ds@schleef.org>
9800
9801         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
9802         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
9803         * gst/gstvalue.c: (gst_value_serialize_buffer),
9804         (gst_value_deserialize_buffer), (gst_type_is_fixed),
9805         (_gst_value_initialize): Create a new function gst_type_is_fixed()
9806         to indicate types that are fixed wrt caps or not.  Switching to
9807         this function fixes (bug #140298).
9808         * gst/gstvalue.h:
9809
9810 2004-04-16  David Schleef  <ds@schleef.org>
9811
9812         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
9813         for GST_UNALIGNED_ACESS, since we essentially know which archs
9814         are ok.
9815
9816 2004-04-17  Benjamin Otte  <otte@gnome.org>
9817
9818         * docs/gst/Makefile.am:
9819           ignore gst/parse directory when building docs (fixes #140205)
9820
9821 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9822
9823         * testsuite/refcounting/mem.c: (vmsize):
9824           do error checking
9825
9826 2004-04-16  Johan Dahlin  <johan@gnome.org>
9827
9828         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
9829         and gst_pad_call_get_function.
9830
9831 2004-04-15  David Schleef  <ds@schleef.org>
9832
9833         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
9834         checks if we can access unaligned memory.
9835         * configure.ac: Use it.
9836
9837 2004-04-16  Benjamin Otte  <otte@gnome.org>
9838
9839         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
9840         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9841         * gst/elements/gstfilesrc.h:
9842           s/seek_happened/need_discont/ and require discont before sending any
9843           data
9844
9845 2004-04-15  David Schleef  <ds@schleef.org>
9846
9847         * gst/gstvalue.c: (gst_value_serialize_buffer),
9848         (gst_value_deserialize_buffer), (_gst_value_initialize):
9849         Register these types as fundamental types. (bug #140015)
9850
9851 2004-04-16  Benjamin Otte  <otte@gnome.org>
9852
9853         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
9854         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
9855         (gst_pad_pull):
9856           implement enforcing discont events before buffers are passed. This
9857           allows state changes of only some elements and later correctly going
9858           on where they left off (or in short: you can now set audio sinks to
9859           NULL to release the device when the pipeline is paused)
9860         * gst/gstpad.c: (gst_pad_call_chain_function),
9861         (gst_pad_call_get_function):
9862         * gst/gstpad.h:
9863           add gst_pad_call_chain_function and gst_pad_call_get_function for
9864           scheduler interaction. They are required because of the changes
9865           above.
9866         * gst/schedulers/entryscheduler.c: (get_buffer),
9867         (gst_entry_scheduler_chain_wrapper),
9868         (gst_entry_scheduler_get_wrapper),
9869         (gst_entry_scheduler_state_transition),
9870         (gst_entry_scheduler_pad_link):
9871         * gst/schedulers/gstbasicscheduler.c:
9872         (gst_basic_scheduler_chain_wrapper),
9873         (gst_basic_scheduler_src_wrapper),
9874         (gst_basic_scheduler_chainhandler_proxy),
9875         (gst_basic_scheduler_gethandler_proxy),
9876         (gst_basic_scheduler_cothreaded_chain),
9877         (gst_basic_scheduler_chain_elements):
9878         * gst/schedulers/gstoptimalscheduler.c:
9879         (get_group_schedule_function), (pad_clear_queued),
9880         (gst_opt_scheduler_pad_link):
9881           use the new functions instead of calling get/chain-functions
9882           directly.
9883
9884 2004-04-15  David Schleef  <ds@schleef.org>
9885
9886         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
9887         * docs/gst/tmpl/gstinfo.sgml: same
9888         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
9889         gtk-doc put here.
9890         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
9891         * examples/queue/queue.c: (main):  We iterate pipelines, not
9892         bins.  (bug #139996)
9893
9894 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9895
9896         * docs/pwg/advanced-types.xml:
9897           Add MS RLE support. Also document Qt RLE although I have no sample
9898           files for that yet. And document an extra property for ADPCM.
9899
9900 2004-04-15  David Schleef  <ds@schleef.org>
9901
9902         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
9903         (_gst_plugin_fault_handler_setup):  Disable more stuff on
9904         Windows.
9905
9906 2004-04-15  David Schleef  <ds@schleef.org>
9907
9908         * gst/gstinfo.c: (_gst_debug_init): Change some internal
9909         symbol names to not conflict with new gstinfo.h symbols.
9910         * gst/gstinfo.h: Add inline functions for all those crazy
9911         compilers that don't know how to handle variadic macros (MSVC).
9912
9913 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9914
9915         * configure.ac: bump nano to 1
9916
9917 === release 0.8.1 ===
9918
9919 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9920
9921         * NEWS:
9922         * RELEASE:
9923         * configure.ac:
9924           releasing 0.8.1, "Snow Brigade"
9925
9926 2004-04-14  David Schleef  <ds@schleef.org>
9927
9928         * testsuite/Makefile.am: define tests_ignore
9929         * testsuite/Rules: Added new tests_ignore, which get compiled,
9930         but not run (generally because they're inconsistent or have
9931         heisenbugs).  Now we can ensure all the .c files compile in
9932         testsuite/.
9933         * testsuite/bins/Makefile.am: define tests_ignore
9934         * testsuite/bytestream/Makefile.am:
9935         * testsuite/caps/Makefile.am:
9936         * testsuite/clock/Makefile.am:
9937         * testsuite/debug/Makefile.am:
9938         * testsuite/debug/global.c: (gst_debug_log_one),
9939         (gst_debug_log_two): Fix compilation problem.
9940         * testsuite/dynparams/Makefile.am:
9941         * testsuite/elements/Makefile.am:
9942         * testsuite/ghostpads/Makefile.am:
9943         * testsuite/indexers/Makefile.am:
9944         * testsuite/parse/Makefile.am:
9945         * testsuite/plugin/Makefile.am:
9946         * testsuite/refcounting/Makefile.am:
9947         * testsuite/refcounting/element_pad.c: (main): Don't return leak
9948         results, because it's not calculated correctly.
9949         * testsuite/refcounting/pad.c: (main): same
9950         * testsuite/states/Makefile.am:
9951         * testsuite/tags/Makefile.am:
9952         * testsuite/threads/Makefile.am:
9953
9954 2004-04-14  David Schleef  <ds@schleef.org>
9955
9956         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
9957         generating bad code around the cpu detection asm code.
9958
9959 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
9960
9961         * tools/gst-inspect.c: (print_element_info):
9962           print numeric version of rank as well, since we added some - 1
9963           rank values to elements
9964
9965 2004-04-13  David Schleef  <ds@schleef.org>
9966
9967         * configure.ac:  Disable various code when compiling for MinGW.
9968         * gst/elements/Makefile.am:
9969         * gst/elements/gstelements.c:
9970         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
9971         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
9972         * gst/registries/gstxmlregistry.c: (make_dir):
9973
9974 2004-04-13  David Schleef  <ds@schleef.org>
9975
9976         * gst/Makefile.am:
9977         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
9978         assembly.
9979         * gst/gstcpuid_i386.s: remove
9980
9981 2004-04-13  David Schleef  <ds@schleef.org>
9982
9983         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
9984         seems to think it needs to be done.
9985         * docs/gst/tmpl/gstfakesink.sgml:
9986         * docs/gst/tmpl/gstfakesrc.sgml:
9987         * docs/gst/tmpl/gstfdsink.sgml:
9988         * docs/gst/tmpl/gstfdsrc.sgml:
9989         * docs/gst/tmpl/gstfilesink.sgml:
9990         * docs/gst/tmpl/gstfilesrc.sgml:
9991         * docs/gst/tmpl/gstidentity.sgml:
9992         * docs/gst/tmpl/gstmd5sink.sgml:
9993         * docs/gst/tmpl/gstmultifilesrc.sgml:
9994         * docs/gst/tmpl/gstpipefilter.sgml:
9995         * docs/gst/tmpl/gstshaper.sgml:
9996         * docs/gst/tmpl/gstspider.sgml:
9997         * docs/gst/tmpl/gstspideridentity.sgml:
9998         * docs/gst/tmpl/gststatistics.sgml:
9999         * docs/gst/tmpl/gsttee.sgml:
10000         * docs/gst/tmpl/gsttypefind.sgml:
10001         * docs/gst/tmpl/gstutils.sgml:
10002
10003 2004-04-13  David Schleef  <ds@schleef.org>
10004
10005         * configure.ac: Changes to remove POSIXisms (mmap in this case)
10006         and to build DLLs on Windows.
10007         * gst/Makefile.am:
10008         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
10009         (gst_filesrc_open_file):
10010         * gst/schedulers/Makefile.am:
10011
10012 2004-04-13  David Schleef  <ds@schleef.org>
10013
10014         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
10015         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
10016         fixating lists.
10017
10018 2004-04-12  David Schleef  <ds@schleef.org>
10019
10020         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
10021         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
10022         to using it.
10023         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
10024         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
10025         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
10026         * gst/gststructure.c: (gst_structure_set_valist),
10027         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
10028         support for buffers.
10029         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
10030         intended to be const.
10031         * gst/gsttag.h: same
10032         * gst/gstvalue.c: (gst_value_serialize_buffer),
10033         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
10034         to (de)serialize buffers.
10035         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
10036         * testsuite/caps/string-conversions.c: (main):
10037         * testsuite/caps/value_serialize.c: add new test
10038
10039 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10040
10041         * docs/pwg/advanced-types.xml:
10042           Document MS video 1 (video/x-msvideocodec) mimetype/format.
10043
10044 2004-04-11  Benjamin Otte  <otte@gnome.org>
10045
10046         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
10047           rename categories to basic_*
10048         * gst/schedulers/gstbasicscheduler.c: 
10049         (gst_basic_scheduler_chain_wrapper),
10050         (gst_basic_scheduler_chainhandler_proxy),
10051         (gst_basic_scheduler_gethandler_proxy),
10052         (gst_basic_scheduler_eventhandler_proxy):
10053           debugging category fixes - put common stuff in log category
10054         * gst/schedulers/gstbasicscheduler.c: 
10055         (gst_basic_scheduler_chain_elements):
10056           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
10057           active and linking two active chains
10058
10059 2004-04-10  Benjamin Otte  <otte@gnome.org>
10060
10061         * docs/pwg/intro-preface.xml:
10062           fix dead links and remove reference to Wiki
10063
10064 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10065
10066         * gst/schedulers/gstbasicscheduler.c:
10067           make sure we can switch back to the main function if we're still in
10068           the main function (supposed to fix #139617)
10069         * gst/schedulers/gthread-cothreads.h:
10070           don't throw an error when switching to the same cothread
10071
10072 2004-04-09  Benjamin Otte  <otte@gnome.org>
10073
10074         * gst/gstbin.c: (gst_bin_get_type):
10075         * gst/gstclock.c: (gst_clock_get_type):
10076         * gst/gstindex.c: (gst_index_get_type):
10077         * gst/gstobject.c: (gst_object_get_type),
10078         (gst_signal_object_get_type):
10079         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
10080         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
10081         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
10082         * gst/gstqueue.c: (gst_queue_get_type):
10083         * gst/gstregistry.c: (gst_registry_get_type):
10084         * gst/gstsystemclock.c: (gst_system_clock_get_type):
10085         * gst/gstthread.c: (gst_thread_get_type):
10086           don't use memchunks for these objects, use malloc instead
10087
10088 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10089
10090         * docs/gst/.cvsignore:
10091         * docs/gst/Makefile.am:
10092         * docs/gst/gstreamer-sections.txt:
10093         * docs/gst/tmpl/gstaggregator.sgml:
10094         * docs/gst/tmpl/gstbuffer.sgml:
10095         * docs/gst/tmpl/gstclock.sgml:
10096         * docs/gst/tmpl/gstelement.sgml:
10097         * docs/gst/tmpl/gstfakesink.sgml:
10098         * docs/gst/tmpl/gstfakesrc.sgml:
10099         * docs/gst/tmpl/gstfdsink.sgml:
10100         * docs/gst/tmpl/gstfdsrc.sgml:
10101         * docs/gst/tmpl/gstfilesink.sgml:
10102         * docs/gst/tmpl/gstfilesrc.sgml:
10103         * docs/gst/tmpl/gstidentity.sgml:
10104         * docs/gst/tmpl/gstindex.sgml:
10105         * docs/gst/tmpl/gstinfo.sgml:
10106         * docs/gst/tmpl/gstmd5sink.sgml:
10107         * docs/gst/tmpl/gstmultifilesrc.sgml:
10108         * docs/gst/tmpl/gstpad.sgml:
10109         * docs/gst/tmpl/gstpipefilter.sgml:
10110         * docs/gst/tmpl/gstpipeline.sgml:
10111         * docs/gst/tmpl/gstpluginfeature.sgml:
10112         * docs/gst/tmpl/gstqueue.sgml:
10113         * docs/gst/tmpl/gstregistry.sgml:
10114         * docs/gst/tmpl/gstscheduler.sgml:
10115         * docs/gst/tmpl/gstshaper.sgml:
10116         * docs/gst/tmpl/gstspider.sgml:
10117         * docs/gst/tmpl/gstspideridentity.sgml:
10118         * docs/gst/tmpl/gststatistics.sgml:
10119         * docs/gst/tmpl/gstsystemclock.sgml:
10120         * docs/gst/tmpl/gsttee.sgml:
10121         * docs/gst/tmpl/gstthread.sgml:
10122         * docs/gst/tmpl/gsttypefind.sgml:
10123         * docs/gst/tmpl/gstutils.sgml:
10124           further doc build fixes
10125
10126 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10127
10128         * docs/gst/Makefile.am:
10129           make docs exit on scanning problems
10130           fix nonsrcdir build issues
10131         * docs/gst/gstreamer-sections.txt:
10132           adding stuff from -unused
10133         * gst/gstqueue.h:
10134           create GstQueueSize
10135         * gst/schedulers/cothreads_compat.h:
10136           fix cothread warnings
10137
10138 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10139
10140         * docs/gst/gstreamer-sections.txt:
10141           remove defines deprecated by Benjamin
10142
10143 2004-04-07  Benjamin Otte  <otte@gnome.org>
10144
10145         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10146           when the buffer is complete, don't check if other buffers are needed
10147         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
10148           check that the offset is >0 so we don't try to read before the
10149           beginning of the file
10150         * gst/gstpad.c: (gst_pad_set_pad_template):
10151           sink the template, so we don't end up with 130k pad templates
10152
10153 2004-04-06  Benjamin Otte  <otte@gnome.org>
10154
10155         * gst/autoplug/gstspider.c: (gst_spider_link_add):
10156           don't ref the element, adding already reffed it. And we didn't unref
10157           it later anyway... (huge memleak when you used many spider elements)
10158         * gst/gstelement.c: (gst_element_base_class_finalize):
10159         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
10160         (gst_element_register):
10161         * gst/gsturi.c: (gst_element_make_from_uri):
10162           use gst_object_(un)ref instead of g_object(un)ref
10163
10164 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10165
10166         * gst/gstbuffer.h:
10167           remove macro that wouldn't work anymore because struct member has
10168           been removed.
10169         * gst/schedulers/entryscheduler.c: (schedule_forward):
10170           fix segfault for unconnected pads
10171         
10172 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10173
10174         reviewed by David Schleef <ds@schleef.org>
10175
10176         * gst/gstinfo.h:
10177           *_FORMAT modifiers should require putting a % in front of them for
10178           consistency reasons.
10179
10180 2004-04-05  Colin Walters  <walters@redhat.com>
10181
10182         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
10183         space.
10184
10185 2004-04-05  Benjamin Otte  <otte@gnome.org>
10186
10187         * configure.ac:
10188         * gst/Makefile.am:
10189         * gst/gst_private.h:
10190         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
10191           add support for detecting if GStreamer runs inside valgrind.
10192           requires valgrind (d'oh) and --enable-debug for correct cdetection.
10193           print a big message in valgrind that GStreamer has detected it's
10194           running inside and might now use different code.
10195         * gst/gstmemchunk.c: (populate), (free_area),
10196         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
10197         (gst_mem_chunk_free):
10198           flag memchunks for valgrind, so it can detect leaking of chunks.
10199           This allows detecting leaks of GstBuffer and GstEvent correctly
10200           inside valgrind.
10201
10202 2004-04-05  David Schleef  <ds@schleef.org>
10203
10204         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
10205           jensgr@gmx.net (Jens Granseuer)
10206
10207 2004-04-05  David Schleef  <ds@schleef.org>
10208
10209         * gst/gstbuffer.c: (_gst_buffer_sub_free),
10210         (gst_buffer_default_free), (gst_buffer_default_copy),
10211         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
10212         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
10213         structures in one place.
10214
10215 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10216
10217         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
10218           (GST_TIME_FORMAT, GST_TIME_ARGS)
10219
10220 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10221
10222         * testsuite/elements/Makefile.am:
10223           disable test until it stops breaking make distcheck
10224
10225 2004-04-05  Johan Dahlin  <johan@gnome.org>
10226
10227         * po/sv.po: Updated translation
10228
10229 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10230
10231         * gst/gstplugin.c: (gst_plugin_load_file):
10232           fix segfault for when original plugin was loaded statically
10233
10234 2004-04-05  Benjamin Otte  <otte@gnome.org>
10235
10236         * testsuite/debug/category.c: (main):
10237         * testsuite/debug/commandline.c: (main):
10238         * testsuite/debug/output.c: (main):
10239           fix tests to work again with debugging enabled
10240
10241 2004-04-05  Benjamin Otte  <otte@gnome.org>
10242
10243         * gst/schedulers/gstbasicscheduler.c:
10244         (gst_basic_scheduler_pad_link):
10245           fix to work with recent scheduling changes
10246
10247 2004-04-05  Benjamin Otte  <otte@gnome.org>
10248
10249         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
10250         prepareChangeLog doesn't work when cvs indents):
10251           don't throw an error when no element can be scheduled, there's too
10252           many weird reasons why it doesn't work. Return STOPPED instead.
10253           decoupled elemts' schedulability doesn't depend on bufpens.
10254
10255 2004-04-04  Benjamin Otte  <otte@gnome.org>
10256
10257         * gst/schedulers/gstbasicscheduler.c:
10258         (gst_basic_scheduler_pad_select):
10259           fix uninitialized variable warnings
10260
10261 2004-04-04  Benjamin Otte  <otte@gnome.org>
10262
10263         * gst/gstpad.c: (gst_pad_collect_valist):
10264           fix uninitialized variable warning
10265         * gst/schedulers/entryscheduler.c: (schedule_forward):
10266           fix shadowed variable
10267
10268 2004-04-04  Benjamin Otte  <otte@gnome.org>
10269
10270         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
10271         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
10272         (gst_pad_select):
10273         * gst/gstpad.h:
10274         * gst/gstscheduler.c: (gst_scheduler_pad_select),
10275         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
10276         * gst/gstscheduler.h:
10277           implement gst_pad_collect as replacement for gst_pad_select.
10278           deprecate gst_pad_select and gst_scheduler_(un)lock_element
10279           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
10280           new pad_select, lock and unlock calls.
10281         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
10282         * gst/cothreads.h:
10283         * gst/schedulers/cothreads_compat.h:
10284         * gst/schedulers/gthread-cothreads.h:
10285           remove unused cothread_lock and cothread_unlock calls
10286         * gst/schedulers/entryscheduler.c:
10287         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
10288         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
10289         (gst_entry_scheduler_pad_select):
10290           update to new API
10291         * gst/schedulers/gstbasicscheduler.c:
10292         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
10293         (gst_basic_scheduler_pad_select):
10294           remove useless lock and unlock calls, update pad_select to new API
10295           (untested)
10296         * gst/schedulers/gstoptimalscheduler.c:
10297         (gst_opt_scheduler_class_init):
10298           remove useless select, lock and unlock function calls
10299         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
10300           use gst_pad_collect instead of gst_pad_select
10301
10302 2004-04-04  Benjamin Otte  <otte@gnome.org>
10303
10304         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
10305         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
10306         (schedule_next_element), (print_entry):
10307           add can_schedule_pad to handle element states.
10308           add schedule_forward to select the correct entry to schedule next
10309
10310 2004-04-03  Benjamin Otte  <otte@gnome.org>
10311
10312         * gst/schedulers/entryscheduler.c: 
10313           remove unused variable, fix error inside Rb, fix compile warning in
10314           unreachable code
10315
10316 2004-04-03  Benjamin Otte  <otte@gnome.org>
10317
10318         * gst/schedulers/entryscheduler.c:
10319           completely revamp the inner workings, so it's a lot easier to
10320           understand and extend
10321
10322 2004-04-03  Andy Wingo  <wingo@pobox.com>
10323
10324         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
10325         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
10326         This allows better introspection of pipeline topology.
10327         (add_to_chain): Don't do trickery to put loop elements first;
10328         rather, queue a chain sort by marking the chain as dirty.
10329         (remove_from_chain): Mark the chain dirty.
10330         (sort_chain): New function. Sorts the group list so that terminal
10331         sinks are first. This means elements on the sink side will be
10332         preferentially sscheduled before elements on the src side of the
10333         pipeline.
10334         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
10335         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
10336         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
10337         (group_inc_link): Change argument and variable names to match the
10338         new link structure member names (src and sink).
10339         (group_dec_link): Add some description
10340
10341 2004-04-03  Benjamin Otte  <otte@gnome.org>
10342
10343         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
10344         * gst/gstinfo.h:
10345         * testsuite/debug/category.c: (main):
10346         * testsuite/debug/commandline.c: (main):
10347         * testsuite/debug/output.c: (main):
10348         * testsuite/debug/printf_extension.c: (main):
10349           fix to successfully build and test with --disable-gst-debug
10350           configure switch (fixes #138705)
10351
10352 2004-04-03  Benjamin Otte  <otte@gnome.org>
10353
10354         * docs/pwg/building-boiler.xml:
10355           add cvs login line and s/anonymous/anoncvs/
10356
10357 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
10358
10359         reviewed by Benjamin Otte  <otte@gnome.org>
10360
10361         * gst/gststructure.c: (gst_structure_free):
10362           memleak fix: free fields array (partial fix for #134839)
10363
10364 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10365
10366         * docs/random/ds/0.9-suggested-changes:
10367           Add a note to change handoff use in fakesrc to be usable in
10368           a more generic way (fakesrc should be renamed to appsrc or so).
10369         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
10370           Change signal type to scope, so we can fill the buffer in the
10371           handoff handler (that's the whole use of this signal...).
10372
10373 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10374
10375         * docs/pwg/other-ntoone.xml:
10376           Document muxers and n-to-1 elements.
10377
10378 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
10379
10380         * gst/registries/gstxmlregistry.c
10381         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
10382         determine if a file is a G_MODULE. The old one discards paths
10383         containing "so" somewhere in the middle. My home directory is
10384         called "soto". Go figure...
10385
10386 2004-03-31  David Schleef  <ds@schleef.org>
10387
10388         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
10389         to eventually deprecate gst_buffer_merge().  (bug: #136408)
10390         * gst/gstbuffer.h:
10391
10392 2004-03-31  David Schleef  <ds@schleef.org>
10393
10394         * gst/gstvalue.c: (gst_value_union_int_int_range),
10395         (gst_value_union_int_range_int_range), (gst_value_can_union),
10396         (gst_value_union), (_gst_value_initialize):  Add some union
10397         implementations.  We didn't have any previously.
10398         * testsuite/caps/Makefile.am:
10399         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
10400         (gst_audioscale_getcaps), (test_caps), (main): A little test
10401         that is the same as the caps manipulation in audioscale.
10402
10403 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10404
10405         * docs/faq/general.xml:
10406           add entry about "does gst support format X?"
10407
10408 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10409
10410         * gst/gstthread.c:
10411           fix docs
10412         * gst/gstutils.h:
10413           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
10414
10415 2004-03-30  Benjamin Otte  <otte@gnome.org>
10416
10417         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10418           set the offset of the buffer to the requested offset
10419         * gst/elements/gsttypefind.c: (stop_typefinding):
10420           revert patch 1.18 (which I unfortunately don't know the reason for).
10421           This is needed to allow downstream elements to seek. Otherwise
10422           typefind might overwrite a previous seek by downstream elements.
10423           This lead to errors with id3tag and typefind on some mp3s.
10424         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10425         (gst_entry_scheduler_iterate):
10426           be more verbose when debugging
10427
10428 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10429
10430         * gst/gstcaps.c: (gst_caps_from_string_inplace):
10431           make sure we don't get NULL strings
10432
10433 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10434
10435         * gst/gstcaps.c:
10436         * gst/gstelement.c:
10437         * gst/gstelementfactory.c: (gst_element_factory_get_type):
10438         * gst/gstindex.c: (gst_index_resolver_get_type),
10439         (gst_index_get_type), (gst_index_factory_get_type):
10440         * gst/gstinfo.c:
10441         * gst/gstpad.c:
10442         * gst/gstplugin.c:
10443         * gst/gsturi.c: (gst_uri_handler_get_type):
10444         * gst/gstvalue.c:
10445           first batch of documentation fixes
10446
10447 2004-03-29  David Schleef  <ds@schleef.org>
10448
10449         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
10450         * docs/gst/gstreamer-docs.sgml:  More hacking
10451         * docs/gst/gstreamer-sections.txt:
10452         * docs/gst/tmpl/cothreads_compat.sgml:
10453         * docs/gst/tmpl/gstcaps.sgml:
10454         * docs/gst/tmpl/gstclock.sgml:
10455         * docs/gst/tmpl/gstelement.sgml:
10456         * docs/gst/tmpl/gstevent.sgml:
10457         * docs/gst/tmpl/gstpad.sgml:
10458         * docs/gst/tmpl/gstutils.sgml:
10459         * docs/gst/tmpl/gstxml.sgml:
10460         * docs/gst/tmpl/gthread-cothreads.sgml:
10461         * docs/random/ds/0.9-suggested-changes:
10462         * gst/elements/gstfakesink.h: doc fixes
10463         * gst/elements/gstfakesrc.h: doc fixes
10464         * gst/gstcaps.c: doc fixes
10465         * gst/gstcaps.h: doc fixes
10466         * gst/gstelement.c: doc fixes
10467         * gst/gstelement.h: doc fixes
10468         * gst/gstindex.c: doc fixes
10469         * gst/gstinfo.c: doc fixes
10470         * gst/gstpad.c: doc fixes
10471         * gst/gstpad.h: doc fixes
10472         * gst/gstplugin.c: doc fixes
10473         * gst/gsttypefind.h: doc fixes
10474         * gst/gsturi.c: doc fixes
10475         * gst/gstvalue.c: doc fixes
10476
10477 2004-03-29  Colin Walters  <walters@redhat.com>
10478
10479         * gst/registries/gstxmlregistry.c (get_time)
10480         (plugin_times_older_than_recurse):
10481         Use the result of stat to determine whether a path is a file,
10482         so we don't attempt to opendir() files.
10483
10484 2004-03-29  Benjamin Otte  <otte@gnome.org>
10485
10486         * gst/gstpad.c: (gst_pad_set_explicit_caps):
10487           print caps in debugging output when setting caps failed
10488         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10489         (schedule_next_element), (get_buffer), (run_chainhandler),
10490         (element_may_start), (gst_entry_scheduler_chain_handler),
10491         (gst_entry_scheduler_get_handler),
10492         (gst_entry_scheduler_state_transition),
10493         (gst_entry_scheduler_pad_link):
10494           make this scheduler a testcase for mandatory
10495           discont-before-first-buffer which is needed if we want to allow apps
10496           to release the sound device.
10497           add SCHED_ASSERT macro to print scheduler state before an assertion
10498           triggers.
10499
10500 2004-03-29  Benjamin Otte  <otte@gnome.org>
10501
10502         * COPYING:
10503           replace by LGPL (former COPYING.LIB). The core is completely
10504           licensed LGPL.
10505         * COPYING.LIB:
10506           remove
10507
10508 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10509
10510         * po/af.po:
10511         * po/sv.po:
10512           updated Afrikaans and Swedish
10513
10514 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10515
10516         * po/LINGUAS:
10517         * po/az.po:
10518           adding Azerbaijani (Mətin Əmirov)
10519
10520 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
10521
10522         * gst/gstelement.h: 
10523         * gst/gstelement.c (gst_element_set_time_delay): New function for
10524         setting element time taking into account a hardware buffering
10525         delay.
10526         (gst_element_set_time): Now just an invocation of
10527         gst_element_set_time_delay.
10528         * gst/gstclock.h: 
10529         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
10530         allowing to set event times in the future.
10531         (gst_clock_get_event_time): Now just an invocation of
10532         gst_clock_get_event_time_delay.
10533
10534 2004-03-28  Benjamin Otte  <otte@gnome.org>
10535
10536         * gst/gstbin.c: (gst_bin_set_element_sched),
10537         (gst_bin_unset_element_sched):
10538           don't add decoupled elements to schedulers - otherwise it's
10539           impossible to control if a link to a decoupled element was already
10540           removed from a scheduler or not.
10541         * gst/schedulers/cothreads_compat.h:
10542         * gst/schedulers/gthread-cothreads.h:
10543           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
10544           is no "unused" warning.
10545         * gst/schedulers/Makefile.am:
10546         * gst/schedulers/entryscheduler.c:
10547           add new scheduler, based on ideas from talking to David and Martin.
10548           It's supposed to be small and correct. Currently it's also slow (but
10549           it's not noticable)
10550         * examples/retag/retag.c: (main):
10551         * testsuite/bytestream/test1.c: (main):
10552           fix missing NULLs at end of variadic functions
10553         * testsuite/elements/.cvsignore:
10554           update
10555
10556 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
10557
10558         * gst/gstevent.h:
10559         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
10560
10561 2004-03-25  David Schleef  <ds@schleef.org>
10562
10563         * docs/gst/gstreamer-sections.txt:  More doc hacking.
10564         * docs/gst/tmpl/gstaggregator.sgml:
10565         * docs/gst/tmpl/gstautoplugfactory.sgml:
10566         * docs/gst/tmpl/gstbin.sgml:
10567         * docs/gst/tmpl/gstbuffer.sgml:
10568         * docs/gst/tmpl/gstbufferstore.sgml:
10569         * docs/gst/tmpl/gstfakesink.sgml:
10570         * docs/gst/tmpl/gstfakesrc.sgml:
10571         * docs/gst/tmpl/gstmd5sink.sgml:
10572         * docs/gst/tmpl/gstreamer-unused.sgml:
10573         * docs/gst/tmpl/gstsearchfuncs.sgml:
10574         * docs/gst/tmpl/gstshaper.sgml:
10575         * docs/gst/tmpl/gstspider.sgml:
10576         * docs/gst/tmpl/gsttee.sgml:
10577         * docs/gst/tmpl/gstutils.sgml:
10578         * docs/gst/tmpl/gstvalue.sgml:
10579         * docs/gst/tmpl/gstxml.sgml:
10580         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
10581         and we don't support it.
10582         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
10583         (gst_use_threads), (gst_has_threads): same
10584         * gst/gstthreaddummy.c: same
10585         * gst/autoplug/gstspider.c: Make gst_spider_details static.
10586         * gst/autoplug/gstspider.h: same
10587         * gst/elements/gstaggregator.h: Remove bogus function from header
10588         * gst/elements/gstfakesink.h: same
10589         * gst/elements/gstfakesrc.h: same
10590         * gst/elements/gstmd5sink.h: same
10591         * gst/elements/gstshaper.h: same
10592         * gst/elements/gsttee.h: same
10593         * gst/gstbin.c: doc fixes
10594         * gst/gstbin.h: Remove unused definition.
10595         * gst/gstbuffer.c: doc fixes
10596         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
10597         * gst/gstfilter.c: doc fixes
10598         * gst/gsttag.c: doc fixes
10599         * gst/gstvalue.c: doc fixes
10600
10601 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10602
10603         * docs/pwg/advanced-types.xml:
10604           Document typefinding.
10605         * docs/pwg/other-oneton.xml:
10606           Document one-to-n elements, demuxers and parsers.
10607
10608 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
10609
10610         reviewed by: David Schleef  <ds@schleef.org>
10611
10612         * configure.ac: Check bison version (bug #127838)
10613
10614 2004-03-25  David Schleef  <ds@schleef.org>
10615
10616         * docs/gst/gstreamer-docs.sgml: More fine tuning.
10617         * docs/gst/gstreamer-sections.txt:
10618         * docs/gst/tmpl/gstautoplug.sgml:
10619         * docs/gst/tmpl/gststaticautoplug.sgml:
10620         * docs/gst/tmpl/gststaticautoplugrender.sgml:
10621         * docs/gst/tmpl/gstutils.sgml:
10622         * docs/gst/tmpl/gstxml.sgml:
10623
10624 2004-03-24  David Schleef  <ds@schleef.org>
10625
10626         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
10627         manual being such complete crap, that I decided to do major
10628         hacking of it.  This checkin replaces any fine tuning that
10629         may have been done previously, with the benefit of actually
10630         being complete for much of the API that was changed since
10631         0.6.  Further fine tuning will occur shortly.  (bug #134721)
10632         * docs/gst/gstreamer-sections.txt:
10633         * docs/gst/tmpl/GstBin.sgml:
10634         * docs/gst/tmpl/GstBuffer.sgml:
10635         * docs/gst/tmpl/GstCaps.sgml:
10636         * docs/gst/tmpl/GstClock.sgml:
10637         * docs/gst/tmpl/GstCompat.sgml:
10638         * docs/gst/tmpl/GstData.sgml:
10639         * docs/gst/tmpl/GstElement.sgml:
10640         * docs/gst/tmpl/GstEvent.sgml:
10641         * docs/gst/tmpl/GstIndex.sgml:
10642         * docs/gst/tmpl/GstStructure.sgml:
10643         * docs/gst/tmpl/GstTag.sgml:
10644         * docs/gst/tmpl/cothreads.sgml:
10645         * docs/gst/tmpl/cothreads_compat.sgml:
10646         * docs/gst/tmpl/gettext.sgml:
10647         * docs/gst/tmpl/grammar.tab.sgml:
10648         * docs/gst/tmpl/gst-i18n-app.sgml:
10649         * docs/gst/tmpl/gst-i18n-lib.sgml:
10650         * docs/gst/tmpl/gst.sgml:
10651         * docs/gst/tmpl/gst_private.sgml:
10652         * docs/gst/tmpl/gstaggregator.sgml:
10653         * docs/gst/tmpl/gstarch.sgml:
10654         * docs/gst/tmpl/gstatomic.sgml:
10655         * docs/gst/tmpl/gstatomic_impl.sgml:
10656         * docs/gst/tmpl/gstbin.sgml:
10657         * docs/gst/tmpl/gstbuffer.sgml:
10658         * docs/gst/tmpl/gstbufferstore.sgml:
10659         * docs/gst/tmpl/gstcaps.sgml:
10660         * docs/gst/tmpl/gstclock.sgml:
10661         * docs/gst/tmpl/gstcompat.sgml:
10662         * docs/gst/tmpl/gstconfig.sgml:
10663         * docs/gst/tmpl/gstcpu.sgml:
10664         * docs/gst/tmpl/gstdata.sgml:
10665         * docs/gst/tmpl/gstdata_private.sgml:
10666         * docs/gst/tmpl/gstelement.sgml:
10667         * docs/gst/tmpl/gstenumtypes.sgml:
10668         * docs/gst/tmpl/gsterror.sgml:
10669         * docs/gst/tmpl/gstevent.sgml:
10670         * docs/gst/tmpl/gstfakesink.sgml:
10671         * docs/gst/tmpl/gstfakesrc.sgml:
10672         * docs/gst/tmpl/gstfilesink.sgml:
10673         * docs/gst/tmpl/gstfilter.sgml:
10674         * docs/gst/tmpl/gstindex.sgml:
10675         * docs/gst/tmpl/gstinfo.sgml:
10676         * docs/gst/tmpl/gstinterface.sgml:
10677         * docs/gst/tmpl/gstlog.sgml:
10678         * docs/gst/tmpl/gstmacros.sgml:
10679         * docs/gst/tmpl/gstmarshal.sgml:
10680         * docs/gst/tmpl/gstmd5sink.sgml:
10681         * docs/gst/tmpl/gstmultifilesrc.sgml:
10682         * docs/gst/tmpl/gstobject.sgml:
10683         * docs/gst/tmpl/gstpad.sgml:
10684         * docs/gst/tmpl/gstparse.sgml:
10685         * docs/gst/tmpl/gstpipeline.sgml:
10686         * docs/gst/tmpl/gstplugin.sgml:
10687         * docs/gst/tmpl/gstpluginfeature.sgml:
10688         * docs/gst/tmpl/gstqueue.sgml:
10689         * docs/gst/tmpl/gstreamer-unused.sgml:
10690         * docs/gst/tmpl/gstregistry.sgml:
10691         * docs/gst/tmpl/gstregistrypool.sgml:
10692         * docs/gst/tmpl/gstscheduler.sgml:
10693         * docs/gst/tmpl/gstsearchfuncs.sgml:
10694         * docs/gst/tmpl/gstshaper.sgml:
10695         * docs/gst/tmpl/gstspider.sgml:
10696         * docs/gst/tmpl/gstspideridentity.sgml:
10697         * docs/gst/tmpl/gststructure.sgml:
10698         * docs/gst/tmpl/gstsystemclock.sgml:
10699         * docs/gst/tmpl/gsttag.sgml:
10700         * docs/gst/tmpl/gsttaginterface.sgml:
10701         * docs/gst/tmpl/gsttee.sgml:
10702         * docs/gst/tmpl/gstthread.sgml:
10703         * docs/gst/tmpl/gsttrace.sgml:
10704         * docs/gst/tmpl/gsttrashstack.sgml:
10705         * docs/gst/tmpl/gsttypefind.sgml:
10706         * docs/gst/tmpl/gsttypes.sgml:
10707         * docs/gst/tmpl/gsturi.sgml:
10708         * docs/gst/tmpl/gsturitype.sgml:
10709         * docs/gst/tmpl/gstutils.sgml:
10710         * docs/gst/tmpl/gstvalue.sgml:
10711         * docs/gst/tmpl/gstversion.sgml:
10712         * docs/gst/tmpl/gstxml.sgml:
10713         * docs/gst/tmpl/gstxmlregistry.sgml:
10714         * docs/gst/tmpl/gthread-cothreads.sgml:
10715         * docs/gst/tmpl/types.sgml:
10716
10717 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10718
10719         * docs/pwg/other-sink.xml:
10720         * docs/pwg/other-source.xml:
10721           Documentation on how to write source and sink elements. Other
10722           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
10723           manager, autoplugger) are all still pending.
10724
10725 2004-03-25  Benjamin Otte  <otte@gnome.org>
10726
10727         * testsuite/elements/Makefile.am:
10728         * testsuite/elements/gst-compprep-check:
10729           add check to make sure gst-compprep works
10730         * testsuite/elements/gst-inspect-check.in:
10731           improve initialization output
10732         * testsuite/Makefile.am:
10733         * testsuite/gst-inspect-check:
10734           remove old file
10735
10736 2004-03-24  David Schleef  <ds@schleef.org>
10737
10738         * testsuite/elements/Makefile.am:
10739         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
10740         to the testsuite.
10741
10742 2004-03-24  Benjamin Otte  <otte@gnome.org>
10743
10744         * libs/gst/control/dparam.c: (gst_dparam_attach),
10745         (gst_dparam_detach):
10746         * libs/gst/control/dparammanager.c: (gst_dpman_init):
10747           fix lvalue casts for real
10748
10749 2004-03-24  Benjamin Otte  <otte@gnome.org>
10750
10751         * gst/schedulers/gstbasicscheduler.c:
10752         (gst_basic_scheduler_src_wrapper):
10753         * gst/schedulers/gstoptimalscheduler.c:
10754         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
10755         (pad_clear_queued), (gst_opt_scheduler_add_element),
10756         (gst_opt_scheduler_remove_element):
10757           fix GStreamer to not have issues with lvalue casts anymore (fixes
10758           #136841)
10759
10760 2004-03-24  Benjamin Otte  <otte@gnome.org>
10761
10762         * gst/gstelement.c:
10763           add documentation about a gobject quirk where the object hasn't the
10764           correct class pointer set on initialization
10765         * gst/schedulers/gstbasicscheduler.c:
10766         (gst_basic_scheduler_src_wrapper):
10767           make sure to not run into an infinite loop
10768
10769 2004-03-22  Benjamin Otte  <otte@gnome.org>
10770
10771         * gst/gstutils.c: (gst_util_dump_mem):
10772         * gst/gstutils.h:
10773           first argument of gst_util_dump_mem should be const
10774
10775 2004-03-22  Johan Dahlin  <johan@gnome.org>
10776
10777         * gst/gstvalue.h: Clean up a little bit.
10778
10779 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
10780
10781         reviewed by Benjamin Otte  <otte@gnome.org>
10782
10783         * gst/autoplug/gstspider.c: (gst_spider_dispose):
10784         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
10785         (gst_aggregator_class_init), (gst_aggregator_init):
10786         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10787         (gst_filesrc_dispose), (gst_filesrc_set_location):
10788         * gst/elements/gstidentity.c: (gst_identity_finalize),
10789         (gst_identity_class_init), (gst_identity_chain):
10790         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
10791         * gst/elements/gststatistics.c: (gst_statistics_finalize),
10792         (gst_statistics_class_init):
10793         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
10794         (gst_tee_get_property):
10795           clean up used memory in this elements correctly on teardown (closes
10796           #137279)
10797
10798 2004-03-20  Colin Walters  <walters@redhat.com>
10799
10800         * gst/registries/gstxmlregistry.c:
10801         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
10802         registry saving atomic.
10803
10804 2004-03-20  Colin Walters  <walters@redhat.com>
10805
10806         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
10807         Just use
10808         access() instead of actually creating and deleting files.
10809
10810 2004-03-18  David Schleef  <ds@schleef.org>
10811
10812         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
10813         (bug #137625)
10814
10815 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10816
10817         * po/sv.po: updated translation (Christian Rose)
10818
10819 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10820
10821         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
10822         (gst_filesink_get_query_types), (_do_init),
10823         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
10824           return FALSE silently
10825         * po/af.po: updated translation (Petri Jooste)
10826
10827 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10828
10829         * Makefile.am:
10830         * configure.ac:
10831           dist common properly
10832         * po/af.po:
10833         * po/fr.po:
10834         * po/nl.po:
10835         * po/sr.po:
10836         * po/sv.po:
10837           refreshing translations
10838
10839 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10840
10841         * po/LINGUAS:
10842         * po/sv.po:
10843         * po/af.po:
10844           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
10845
10846 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10847
10848         * Makefile.am: use common/release.mak
10849
10850 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10851
10852         * docs/faq/gst-uninstalled:
10853           adding gst-monkeysaudio to the list of possible plugin dirs
10854
10855 2004-03-16  David Schleef  <ds@schleef.org>
10856
10857         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
10858         (gst_init_check_with_popt_table):  Fix some gettext strings to
10859         make them easier to translate.  Required making the strings
10860         non-const.
10861
10862 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10863
10864         * configure.ac: bump nano to 1
10865
10866 === release 0.8.0 ===
10867
10868 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10869
10870         * configure.ac: release 0.8.0, "Executive Slacks"
10871
10872 2004-03-16  Johan Dahlin  <johan@gnome.org>
10873
10874         * gst/schedulers/gstoptimalscheduler.c
10875         (gst_opt_scheduler_pad_unlink): Remove double ;,
10876         spotted by Scott Wheeler
10877
10878 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10879
10880         * configure.ac: bump libtool version
10881
10882 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10883
10884         * gst/gstcaps.h:
10885         * gst/gststructure.h:
10886           add reserved padding
10887
10888 2004-03-15  Benjamin Otte  <otte@gnome.org>
10889
10890         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10891           set the first parameter for select call correctly.
10892           (fixes #137230)
10893
10894 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10895
10896         * *.c,*.h: don't mix tabs and spaces
10897
10898 2004-03-15  Johan Dahlin  <johan@gnome.org>
10899
10900         * gst/schedulers/gstoptimalscheduler.c
10901         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
10902         crash on MPEG playback. My boolean arithmetic is a bit rusty.
10903
10904         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
10905         
10906 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10907
10908         * testsuite/Rules:
10909           fix gst-register rules
10910
10911 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10912
10913         * testsuite/Rules:
10914           use versioned gst-register
10915
10916 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10917
10918         * docs/libs/gstreamer-libs-sections.txt:
10919           remove </SUBSECTION>
10920         * gst/gstplugin.c:
10921         * gst/gstregistry.c: (gst_registry_add_plugin):
10922         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
10923         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
10924           add debugging and fix some comment blocks
10925
10926 2004-03-15  Johan Dahlin  <johan@gnome.org>
10927
10928         * *.h: Revert indent changes.
10929         
10930 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10931
10932         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
10933           g_error_free the g_error
10934         * tools/gst-feedback-m.m:
10935           check for other versions of gstreamer
10936         * tools/gst-indent:
10937           use sh, not bash
10938
10939 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10940
10941         * tools/gst-register.c: do not spill paths when registries are not
10942           writable, until we fix the "user running gst-register" case.
10943
10944 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10945
10946         * *.c, *.h: commit of gst-indent run on core
10947
10948 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10949
10950         * tools/gst-indent:
10951         * tools/Makefile.am:
10952           add our indentation style as a script
10953
10954 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10955
10956         * po/sr.po:
10957         * po/LINGUAS:
10958           added Serbian translation
10959
10960 2004-03-13  Benjamin Otte  <otte@gnome.org>
10961
10962         * gst/gstelement.c:
10963           add documentation note about gst_element_found_tags_for_pad not
10964           being usable in getfunctions. (see #137042)
10965
10966 2004-03-12  David Schleef  <ds@schleef.org>
10967
10968         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
10969         change API right now!  Readd gst_caps_is_simple() macro.
10970         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
10971         uninitialized variable.  I'd bet this caused crashes.
10972         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
10973
10974 2004-03-12  Johan Dahlin  <johan@gnome.org>
10975
10976         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
10977         * gst/gstcaps.h: Clean up
10978
10979         * gst/gst.c (init_post): call gst_caps_get_type() instead of
10980         _gst_caps_initalize()
10981
10982         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
10983         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
10984
10985         * gst/gststructure.c (gst_structure_get_type): Ditto
10986
10987         * gst/gststructure.h: Ditto
10988         
10989 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10990
10991         * gst/gstqueue.c: (gst_queue_init):
10992           Reset default max. values in queues. Reason is simply to avoid
10993           braindead use. If you want wider values, use the properties. The
10994           default is supposed to always work. Wider values would make this
10995           beast a memory hog by default (250 full-PAL RGB32 video frames?
10996           That's 440 MB! No thank you).
10997
10998 2004-03-10  David Schleef  <ds@schleef.org>
10999
11000         * tools/gst-run.c: (main):  Fix crash when no relevant tools
11001         were found.  (bug #136793)
11002
11003 2004-03-10  Johan Dahlin  <johan@gnome.org>
11004
11005         * gst/schedulers/gstoptimalscheduler.c
11006         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
11007         links to elements within the same group, so we can finally remove
11008         that annoying warning. Refactor the code a little bit
11009         (group_dec_links_for_element): Split out
11010
11011 2004-03-09  David Schleef  <ds@schleef.org>
11012
11013         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
11014         (bug #134863)
11015
11016 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11017
11018         * configure.ac: first bug fix due to major/minor bump
11019
11020 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11021
11022         * configure.ac: bump nano to 1
11023
11024 === release 0.7.6 ===
11025
11026 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11027
11028         * NEWS:
11029         * RELEASE:
11030         * configure.ac:
11031           releasing 0.7.6, "Almost"
11032         * po/fr.po:
11033         * po/nl.po:
11034         * tools/Makefile.am:
11035         * tools/gst-feedback-m.m:
11036           unversioned source
11037
11038 2004-03-09  Johan Dahlin  <johan@gnome.org>
11039
11040         Reviewed by: Thomas Vander Stichele
11041
11042         * gst/gstelement.c (gst_element_class_init): register second
11043         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
11044         language bindings can (de)marshall correctly.
11045
11046         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
11047
11048         * gst/gsterror.c (gst_g_error_get_type): New function
11049
11050         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
11051         with VOID:OBJECT,OBJECT,STRING 
11052
11053 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
11054
11055         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
11056         Free a leaked g_timer on early returns.
11057
11058 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11059
11060         * docs/pwg/advanced-types.xml:
11061           Add cinepak description.
11062
11063 2004-03-07  David Schleef  <ds@schleef.org>
11064
11065         * docs/random/mimetypes:  Added cinepak description
11066
11067 2004-03-07  Andy Wingo  <wingo@pobox.com>
11068
11069         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
11070
11071         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
11072         there are no links to other groups when a group is destroyed.
11073         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
11074         removed from a group, make sure the link count to elements linked
11075         to other pads is appropriately decremented. This really fixes
11076         #135672.
11077
11078         The 1.60->1.61 patch has been reapplied in light of this fix.
11079
11080         * gst/gstelement.c (gst_element_dispose): Really protect against
11081         multiple invocations this time.
11082
11083 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11084
11085         * docs/gst/gstreamer-sections.txt:
11086         * docs/gst/tmpl/gsttag.sgml:
11087           remove some deprecated functions, document some existing ones
11088         * gst/gsttag.c: (gst_tag_get_flag):
11089         * gst/gsttag.h:
11090           add accessor function
11091
11092 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11093
11094         * docs/gst/gstreamer-sections.txt:
11095         * docs/gst/tmpl/gsttag.sgml:
11096         * docs/gst/tmpl/gstxml.sgml:
11097         * gst/gsttag.c: (gst_tag_get_flag):
11098         * gst/gsttag.h:
11099
11100 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
11101
11102         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
11103         leak
11104
11105 2004-03-05  David Schleef  <ds@schleef.org>
11106
11107         * REQUIREMENTS: Add bison and flex.
11108         * configure.ac: Fix comment about bison.
11109         * docs/random/ds/0.9-suggested-changes: yer ma
11110         * tools/gst-inspect.c: (print_element_info):  Fix warning.
11111
11112 2004-03-05  Benjamin Otte  <otte@gnome.org>
11113
11114         * gst/gstelement.c: (gst_element_error_full):
11115           revert recent recursive state changing commit - messing with other
11116           elements' states is evil and should be done by apps only.
11117
11118 2004-03-05  Benjamin Otte  <otte@gnome.org>
11119
11120         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
11121           check for empty intersection instead of NULL caps
11122         (gst_element_get_compatible_pad_filtered):
11123           remove old workaround that is only a bug nowadays
11124
11125 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11126
11127         * gst/gstelement.c: (gst_element_error_full):
11128           make elements try to recursively change state to PAUSED on all
11129           parents after an error to suppress ensuing warnings
11130         * gst/parse/grammar.y:
11131           make it check if it was able to sync the state, and throw an error
11132           if not, so stuff like
11133           oggdemux ! vorbisdec ! osssink gets caught
11134
11135 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11136
11137         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
11138           it contains lib64; use AS_AC_EXPAND to handle it properly
11139
11140 2004-03-05  David Schleef  <ds@schleef.org>
11141
11142         * gst/gstcpuid_i386.s:  Remove unused code
11143         * libs/gst/getbits/getbits.c: (gst_getbits_init),
11144         (gst_getbits_newbuf): Remove MMX code
11145         * libs/gst/getbits/getbits.h: Remove MMX code
11146
11147 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
11148
11149         * debian/.cvsignore:
11150         * debian/README.Debian:
11151         * debian/changelog:
11152         * debian/control:
11153         * debian/control.in:
11154         * debian/copyright:
11155         * debian/gstreamer-core-libs-dev.files:
11156         * debian/gstreamer-core-libs.files:
11157         * debian/gstreamer-core.files:
11158         * debian/gstreamer-core.postinst:
11159         * debian/gstreamer-core.postrm:
11160         * debian/gstreamer-doc.files:
11161         * debian/gstreamer-doc.links:
11162         * debian/gstreamer-doc.lintian:
11163         * debian/gstreamer-runtime.files:
11164         * debian/gstreamer-runtime.manpages:
11165         * debian/gstreamer-runtime.postinst:
11166         * debian/gstreamer-runtime.postrm:
11167         * debian/gstreamer-tools.files:
11168         * debian/gstreamer-tools.manpages:
11169         * debian/libgstreamer-dev.files:
11170         * debian/libgstreamer0.4.1.files:
11171         * debian/libgstreamerVERSION.files:
11172         * debian/rules:
11173         Debian package info not maintained here.
11174
11175 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11176
11177         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11178         * gst/gstbin.c: (gst_bin_class_init):
11179         * gst/gstelement.c: (gst_element_class_init):
11180         * gst/gstindex.c: (gst_index_class_init):
11181         * gst/gstobject.c: (gst_object_class_init),
11182         (gst_signal_object_class_init):
11183         * gst/gstpad.c: (gst_pad_template_class_init):
11184         * gst/gstregistry.c: (gst_registry_class_init):
11185         * gst/gsturi.c: (gst_uri_handler_base_init):
11186         * gst/gstxml.c: (gst_xml_class_init):
11187         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11188         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
11189           make all signal names use dashes instead of underscore
11190
11191 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11192
11193         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
11194
11195 2004-03-03  Benjamin Otte  <otte@gnome.org>
11196
11197         * gst/schedulers/gstoptimalscheduler.c:
11198           revert last commit by Andy Wingo. It causes segfaults on unreffing
11199           in Rhythmbox. (see bug #135672)
11200
11201 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11202
11203         * po/fr.po: fix typo
11204
11205 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11206
11207         * tools/gst-inspect.c: (main): 
11208         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
11209
11210 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11211
11212         * configure.ac:
11213           get GLIB_ONLY and POPT flags for the nonversioned binaries
11214         * tools/Makefile.am:
11215           use them
11216
11217 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11218
11219         * gst/gst.c: (init_post):
11220           change so that GST_REGISTRY now is where the global registry gets
11221           saved, since that is where plugins now get attached to first, and
11222           spilled over to the user registry.  Note that in the case of using
11223           GST_REGISTRY env var, we don't want to affect any real registries
11224           beyond the one given by this var, and thus we don't set a user
11225           registry to spill to.  So make sure GST_REGISTRY is writable.
11226
11227 2004-03-01  David Schleef  <ds@schleef.org>
11228
11229         * AUTHORS:  Added some names.  Add yourself if you're missing.
11230
11231 2004-03-01  David Schleef  <ds@schleef.org>
11232
11233         * MAINTAINERS: Add
11234
11235 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
11236
11237         * configure.ac:
11238           remove whitespace
11239         * docs/gst/tmpl/gstbuffer.sgml:
11240         * docs/gst/tmpl/gstdata.sgml:
11241         * docs/gst/tmpl/gstreamer-unused.sgml:
11242         * docs/gst/tmpl/gstxml.sgml:
11243           doc update
11244         * docs/manuals.mak:
11245           add a FIXME
11246         * docs/pwg/intro-preface.xml:
11247         * docs/pwg/pwg.xml:
11248           remove GNOME
11249         * gst/gst.c: (init_post):
11250           try GST_PLUGIN_PATH paths for the _global_registry first
11251         * gst/gstelement.h:
11252           add the error message as well, otherwise (null) debug info doesn't
11253           make much sense
11254         * tools/gst-register.c: (main):
11255           spill paths to next registry if this registry is not writable
11256         * po/fr.po:
11257         * po/nl.po:
11258           translation updates
11259
11260 2004-03-01  Johan Dahlin  <johan@gnome.org>
11261
11262         * gst/gstbuffer.c (_gst_buffer_initialize): 
11263         * gst/gstdata.c (gst_data_get_type): 
11264         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
11265         instead of ref, since some applications that uses GBoxed
11266         routines depends on a function that actually returns a copy.
11267
11268 2004-02-27  Benjamin Otte  <otte@gnome.org>
11269
11270         * gst/gstbuffer.h:
11271           remove gst_buffer_free, use gst_data_unref
11272         * gst/gstdata.c: (gst_data_get_type):
11273           use refcounting in GstData GBoxed registration
11274         * gst/gstdata.h:
11275           remove gst_data_free, use gst_data_unref
11276
11277 2004-02-27  Johan Dahlin  <johan@gnome.org>
11278
11279         * gst/gstdata.c (gst_data_get_type): New function, register
11280         GstData as a GBoxed type.
11281
11282         * gst/gstdata.h (GST_TYPE_DATA): New macro
11283
11284 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
11285
11286         * Makefile.am:
11287         * gstreamer.spec.in:
11288           put back RELEASE
11289         * gst/Makefile.am:
11290           clean up non-disting of built files
11291         * testsuite/debug/commandline.c:
11292           test fix for option rename
11293
11294 2004-02-26  David Schleef  <ds@schleef.org>
11295
11296         * configure.ac:  We don't really need glib-2.3.  Also remove
11297         some unneeded checks for library functions.
11298         * gst/Makefile.am:  Instead, we need to not dist files created
11299         by glib-genmarshal.
11300
11301 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11302
11303         * configure.ac:
11304           bump glib required version to 2.3.0 for g_value_takes_boxed
11305
11306  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
11307
11308         * common/m4/gst-docs.m4
11309         change flavour text from enable to disable as enable is our default
11310         closes bug Bug 135304
11311
11312 === release 0.7.5 ===
11313  
11314  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11315  
11316         * NEWS:
11317           instate NEWS file
11318         * Makefile.am:
11319         * gstreamer.spec.in:
11320         * RELEASE:
11321           put back release
11322         * configure.ac:
11323         * docs/random/release:
11324           more updates
11325
11326 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11327
11328         * gst/gsttag.c: (_gst_tag_initialize):
11329         * po/fr.po:
11330         * po/nl.po:
11331           remove hyphen from codec tags
11332
11333 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11334
11335         * gst/parse/Makefile.am:
11336           fix dependency so that a make from a clean build works the first
11337           time
11338
11339 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11340
11341         * docs/random/release:
11342           update release strategy
11343         * po/fr.po:
11344           auto-update po file
11345         * po/nl.po:
11346           update dutch translation
11347
11348 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11349
11350         * docs/manual/debugging.xml:
11351         fix manual for new debugging system
11352
11353 2004-02-25  Andy Wingo  <wingo@pobox.com>
11354
11355         * gst/gstpad.c (gst_pad_link_prepare): Re-add
11356         gst_pad_link_prepare. Please email the list with specific reasons
11357         for reverting.
11358
11359 2004-02-24  Andy Wingo  <wingo@pobox.com>
11360
11361         * gst/gstelement.c (gst_element_dispose): Protect against multiple
11362         invocations.
11363
11364         * gst/schedulers/gstoptimalscheduler.c:
11365         I added a mess of prototypes at the top of the file by way of
11366         documentation. Some of the operations on chains and groups were
11367         re-organized.
11368
11369         (create_group): Added a type argument so if the group is enabled,
11370         the setup_group_scheduler knows what to do.
11371         (group_elements): Added a type argument here, too, to be passed on
11372         to create_group.
11373         (group_element_set_enabled): If an unlinked PLAYING element is
11374         added to a bin, we have to create a new group to hold the element,
11375         and this function will be called before the group is added to the
11376         chain. Thus we have a valid case for group->chain==NULL. Instead
11377         of calling chain_group_set_enabled, just set the flag on the group
11378         (the chain's status will be set when the group is added to it).
11379         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
11380         Setup the group scheduler when the group is enabled, not
11381         specifically when an element goes PAUSED->PLAYING. This means
11382         PLAYING elements can be added, linked, and scheduled into a
11383         PLAYING pipeline, as was intended.
11384         (add_to_group): Don't ref the group twice. I don't know when this
11385         double-ref got in here. Removing it has the potential to cause
11386         segfaults if other parts of the scheduler are buggy. If you find
11387         that the scheduler is segfaulting for you, put in an extra ref
11388         here and see if that hacks over the underlying issue. Of course,
11389         then find out what code is unreffing a group it doesn't own...
11390         (create_group): Make the extra refcount floating, and remove it
11391         after adding the element. This means that...
11392         (unref_group): Destroy when the refcount reaches 0, not 1, like
11393         every other refcounted object in the known universe.
11394         (remove_from_group): When a group becomes empty, set it to be not
11395         active, and remove it from its chain. Don't unref it again,
11396         there's no floating reference any more.
11397         (destroy_group): We have to remove the group from the chain in
11398         remove_from_group (rather than here) to break refcounting cycles
11399         (the chain always has a ref on the group). So assert that
11400         group->chain==NULL.
11401         (ref_group_by_count): Removed, it was commented out anyway.
11402         (merge_chains): Use the remove_from_chain and add_to_chain
11403         primitives to do the reparenting, instead of rolling our own
11404         implementation.
11405         (add_to_chain): The first non-disabled group in the chain's group
11406         list will be the entry point for the chain. Because buffers can
11407         accumulate in loop elements' peer bufpens, we preferentially
11408         schedule loop groups before get groups to avoid unnecessary
11409         execution of get-based groups when the bufpens are already full.
11410         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
11411         (get_group_schedule_function): Ditto.
11412         (loop_group_schedule_function): Ditto.
11413         (gst_opt_scheduler_loop_wrapper): Ditto.
11414         (gst_opt_scheduler_iterate): Ditto.
11415
11416         I understand the opt scheduler now, yippee!
11417
11418         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
11419         (gst_pad_get_name, gst_pad_set_chain_function) 
11420         (gst_pad_set_get_function, gst_pad_set_event_function) 
11421         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
11422         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
11423         (gst_pad_set_query_function, gst_pad_get_query_types) 
11424         (gst_pad_get_query_types_default) 
11425         (gst_pad_set_internal_link_function) 
11426         (gst_pad_set_formats_function, gst_pad_set_link_function) 
11427         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
11428         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
11429         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
11430         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
11431         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
11432         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
11433         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
11434         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
11435         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
11436         (gst_pad_event_default_dispatch, gst_pad_event_default) 
11437         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
11438         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
11439         (gst_pad_get_formats_default, gst_pad_get_formats): Better
11440         argument checks, and some doc fixes.
11441
11442         (gst_pad_custom_new_from_template): Um, does anyone
11443         use these functions? Actually make a custom pad instead of a
11444         normal one.
11445         (gst_pad_try_set_caps): Transpose some checks.
11446         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
11447         the pad is in negotiation.
11448         (gst_pad_try_relink_filtered): Use pad_link_prepare.
11449         
11450         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
11451
11452         * gst/gstelement.h: 
11453         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
11454         on the list.
11455
11456 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11457
11458         * gst/gstbin.c: (gst_bin_add):
11459           add error for not being able to add elements
11460
11461 2004-02-22  Julien MOUTTE <julien@moutte.net>
11462
11463         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
11464         audio-codec and video-codec.
11465
11466 2004-02-22  Benjamin Otte  <otte@gnome.org>
11467
11468         reported by: Padraig O'Briain <padraig.obriain@sun.com>
11469
11470         * autogen.sh:
11471           replace test -e with test -x for mkinstalldirs to be more portable.
11472           (fixes #134816)
11473
11474 2004-02-22  Benjamin Otte  <otte@gnome.org>
11475
11476         * gst/gstpad.c:
11477           revert last patch from Andy, it makes gst_pad_can_link_filtered much
11478           too noisy
11479         * gst/gsttag.c: (_gst_tag_initialize):
11480         * gst/gsttag.h:
11481           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
11482         * libs/gst/control/dparam.c: (gst_dparam_attach):
11483         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
11484           check that types for attached dparams match
11485
11486 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11487
11488         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
11489         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11490         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11491           fix errors
11492
11493 2004-02-20  Andy Wingo  <wingo@pobox.com>
11494
11495         * gst/gstbin.c:
11496         * gst/gstbuffer.c:
11497         * gst/gstplugin.c:
11498         * gst/registries/gstxmlregistry.c: 
11499         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
11500
11501         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
11502         (gst_element_add_pad): DEBUG->INFO, some fixes.
11503         (gst_element_get_compatible_pad_template): Just see if the
11504         templates' caps intersect, not if one is a strict subset of the
11505         other. This conforms more to what gst_pad_link_intersect() does.
11506         (gst_element_class_add_pad_template): Don't memcpy the pad
11507         template, just ref it.
11508         (gst_element_get_compatible_pad_filtered): Clean up debug messages
11509
11510         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
11511         (gst_pad_link_filtered): Debug changes.
11512         (gst_pad_link_prepare): New function, consolidated from
11513         can_link_filtered and link_filtered.
11514
11515         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
11516         look more like that of the functions in gstelement.c
11517
11518         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
11519         object, and return the empty string if object is NULL.
11520
11521         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
11522         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
11523         LOG, not DEBUG. We still get flex info on debug.
11524
11525         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
11526         debug string more verbose.
11527         (plugin_times_older_than): DEBUG->LOG.
11528
11529 2004-02-20  Julien MOUTTE <julien@moutte.net>
11530
11531         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
11532         will emit found_tag for each stream they demux with the codec.
11533
11534 2004-02-20  Benjamin Otte  <otte@gnome.org>
11535
11536         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
11537           copy navigation event correctly. Check freeing tag lists. 
11538         * gst/gstthread.c: (gst_thread_change_state):
11539           don't abort() on state changing mess - it might happen because of
11540           bugs.
11541         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
11542           use boxed functions
11543         * gst/gstvalue.h:
11544           fix GST_VALUE_HOLDS_CAPS
11545
11546 2004-02-19  David Schleef  <ds@schleef.org>
11547
11548         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
11549         and use it for GST_FUNCTION.  (bug #134750)
11550
11551 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11552
11553         * po/fr.po:
11554         * po/nl.po:
11555           updating translations
11556
11557 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11558
11559         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
11560
11561 2004-02-18  kost@imn.htwk-leipzig.de
11562
11563         reviewed by: David Schleef  <ds@schleef.org>
11564
11565         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
11566         for libgstcontrol.
11567
11568 2004-02-18  David Schleef  <ds@schleef.org>
11569
11570         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11571         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11572         (gst_dpsmooth_new): Additional fixes to get double dparams working.
11573         * tools/gst-inspect.c: (print_element_info): Support dumping of
11574         double dparam information.
11575
11576 2004-02-17  David Schleef  <ds@schleef.org>
11577
11578         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11579         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
11580         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
11581         Use GST_TYPE_CAPS in signal prototype.
11582         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
11583         Convert GST_TYPE_CAPS to boxed.
11584         * gst/gstelement.c: (gst_element_class_init):
11585         Use GST_TYPE_TAG_LIST in signal prototype.
11586         * gst/gstindex.c: (gst_index_class_init):
11587         * gst/gstindex.h:
11588         Add GST_TYPE_INDEX_ENTRY type.
11589         * gst/gstmarshal.list:
11590         Add necessary marshal types.
11591         * gst/gstpad.c: (gst_real_pad_class_init),
11592         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
11593         (gst_pad_recover_caps_error):
11594         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
11595         * gst/gststructure.c: (_gst_structure_initialize),
11596         (gst_structure_copy), (_gst_structure_copy_conditional):
11597         * gst/gststructure.h:
11598         Convert GST_TYPE_STRUCTURE to boxed.
11599         * gst/gsttag.c: (gst_tag_list_get_type):
11600         * gst/gsttag.h:
11601         Add GST_TYPE_TAG_LIST type.
11602
11603 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11604
11605         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
11606         to what we agreed with david.
11607         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
11608
11609 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11610
11611         * po/nl.po: update translation
11612
11613 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11614
11615         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
11616           throw an error if spider is trying to play a mime type there is
11617           no decoder for
11618         * po/POTFILES.in:
11619           add gst/autoplug/gstspider.c for translation
11620
11621 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11622
11623         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
11624         silently when the pad is negotiating.
11625
11626 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11627
11628         * docs/faq/Makefile.am:
11629           add script to run gstreamer uninstalled 
11630         * docs/faq/faq.xml:
11631         * docs/faq/developing.xml:
11632         * docs/faq/gst-uninstalled:
11633           extract script to run gstreamer uninstalled
11634         * docs/manuals.mak:
11635           add EXTRA_SOURCES variable for Makefile.am's to set to
11636           use additional SOURCE files for the doc build
11637
11638 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11639
11640         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
11641
11642 2004-02-15  Julien MOUTTE  <julien@moutte.net>
11643
11644         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
11645         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
11646         an error was thrown by osssink. Basically a state change failure for
11647         an element in a different scheduling group was considered as
11648         successful, which means that caps nego was going on and weird stuff
11649         happened. Like I wrote in the comment there, if someone wants to
11650         revert that please drop me a mail explaining why because I really see
11651         no point in keeping that broken behaviour there.
11652         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
11653         be empty, we then return NULL which will trigger a nice error when 
11654         pulling from the pad.
11655
11656 2004-02-13  David Schleef  <ds@schleef.org>
11657
11658         * libs/gst/control/dparam.c: (gst_dparam_class_init),
11659         (gst_dparam_get_property), (gst_dparam_set_property),
11660         (gst_dparam_do_update_default):
11661         * libs/gst/control/dparam.h:
11662         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11663         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
11664         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
11665         (gst_dpsmooth_do_update_double):
11666         * libs/gst/control/dparam_smooth.h:
11667         * libs/gst/control/dparammanager.c:
11668         (gst_dpman_inline_direct_update):
11669         Add support for double dparams.
11670
11671 2004-02-13  David Schleef  <ds@schleef.org>
11672
11673         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
11674         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
11675
11676 2004-02-13  Mattias Wadman  <mattias@sudac.org>
11677
11678         reviewed by: David Schleef  <ds@schleef.org>
11679
11680         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
11681         (gst_fdsrc_init), (gst_fdsrc_set_property),
11682         (gst_fdsrc_get_property), (gst_fdsrc_get):
11683         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
11684         and sends an EOS event if file descriptor reading times out.
11685
11686 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11687
11688         * configure.ac:
11689           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
11690
11691 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11692
11693         * configure.ac: pass required libxml version as argument
11694         (bug reported by Christophe Fergeau)
11695
11696 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11697   
11698         * docs/gst/gstreamer-docs.sgml:
11699         * docs/gst/tmpl/gstxml.sgml:
11700         * docs/libs/gstreamer-libs-docs.sgml:
11701           version API docs
11702
11703 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11704
11705         * gst/gstinfo.c:
11706         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
11707         (gst_registry_pool_feature_filter):
11708         * gst/gstthread.c: (gst_thread_class_init):
11709         * gst/gstvalue.c:
11710           add includes exposed by building without libxml
11711         * gst/indexers/Makefile.am:
11712           do not build fileindex when LOADSAVE disabled; we should have
11713           a better libxml check later since fileindex depends on xml, not
11714           LOADSAVE or REGISTRY
11715         * libs/gst/control/Makefile.am:
11716           link with m
11717         * tools/Makefile.am:
11718           fix wrong source code for gst-xmlinspect
11719
11720 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11721
11722         * configure.ac:
11723           fix gcov help output
11724           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
11725         * docs/random/release:
11726           some updated releasing notes
11727         * gstreamer.spec.in:
11728           more updates
11729
11730 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11731
11732         * docs/faq/faq.xml:
11733         * docs/manual/manual.xml:
11734         * docs/pwg/pwg.xml:
11735         * docs/pwg/titlepage.xml:
11736           put version in documentation
11737
11738 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11739
11740         * tools/Makefile.am: fix man page installation
11741
11742 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11743
11744         * configure.ac:
11745           don't check for libxml when load/save and registry disabled (#105844)
11746         * gstreamer.spec.in:
11747           sync with fedora candidate spec
11748
11749 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11750
11751         * po/fr.po:
11752         * po/nl.po:
11753           replace multidisksrc with multifilesrc
11754
11755 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11756
11757         * po/POTFILES.in:
11758           update to multidisksrc => multifilesrc file renaming (#134145)
11759
11760 2004-02-11  David Schleef  <ds@schleef.org>
11761
11762         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
11763         * docs/gst/tmpl/gstpadtemplate.sgml: same
11764         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
11765         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
11766         fixing dance.
11767         * gst/gstutils.c: Remove disabled code that uses GstProps.
11768         * gst/registries/gstxmlregistry.h: same
11769         * docs/random/ds/0.9-suggested-changes: random notes
11770
11771 2004-02-11  kost@imn.htwk-leipzig.de
11772
11773         reviewed by: David Schleef  <ds@schleef.org>
11774
11775         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
11776         initialisation of clock (bug #134128)
11777
11778 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11779
11780         * configure.ac:
11781         * gst/elements/Makefile.am:
11782         * gst/elements/gstelements.c:
11783         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
11784         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
11785         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
11786         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
11787         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
11788         * gst/elements/gstmultifilesrc.h:
11789           rename multidisksrc to multifilesrc (part of #122200)
11790
11791 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11792
11793         * docs/manuals.mak:
11794           fix automake complaints
11795         * gst-element-check.m4:
11796           fix unquotedness
11797
11798 2004-02-11  David Schleef  <ds@schleef.org>
11799
11800         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
11801         * gst/gstatomic_impl.h: Disable sparc implementation.
11802
11803 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11804
11805         * gst-element-check.m4:
11806           fix underquoted macros as reported by automake 1.8.x (#133800)
11807         * configure.ac:
11808           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
11809           by autopoint (fixes #132996)
11810
11811 2004-02-10  Andy Wingo  <wingo@pobox.com>
11812
11813         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
11814         way to do inheritance.
11815         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
11816         (gst_pad_get_query_types, gst_pad_get_query_types_default):
11817         Routine docs.
11818         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
11819         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
11820         doc.
11821         (gst_pad_unlink, gst_pad_is_linked): Docs.
11822         (gst_pad_renegotiate): A brief description of capsnego.
11823         (gst_pad_try_set_caps): Document.
11824         (gst_pad_try_set_caps_nonfixed): Document.
11825         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
11826         (gst_pad_set_parent): Deprecated (although not out of the API).
11827         (gst_pad_get_parent): Deprecated, although many plugins use this.
11828         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
11829         are private and will go away in 0.9.
11830         (gst_pad_perform_negotiate): Doc.
11831         (gst_pad_link_unnegotiate): I think this is meant to be static.
11832         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
11833         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
11834         (gst_pad_get_peer): Doc updates.
11835         (gst_pad_caps_change_notify): Doc.
11836         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
11837         (gst_ghost_pad_new): Doc fixes.
11838
11839         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
11840         (gst_object_check_uniqueness): 
11841
11842         * gst/gstelement.c (gst_element_add_pad) 
11843         (gst_element_add_ghost_pad, gst_element_remove_pad) 
11844         (gst_element_remove_ghost_pad, gst_element_get_pad) 
11845         (gst_element_get_static_pad, gst_element_get_pad_list) 
11846         (gst_element_class_get_pad_template_list) 
11847         (gst_element_class_get_pad_template): Work on the docs.
11848         (gst_element_get_pad_template_list): Uses the class method.
11849         (gst_element_get_compatible_pad_template): Docs, and consolidate
11850         some test conditions. 
11851         (gst_element_get_pad_from_template): New static function.
11852         (gst_element_request_compatible_pad): Docs, and work with
11853         non-request compatible templates. 
11854         (gst_element_get_compatible_pad_filtered): Docs and remove
11855         redundant checks.
11856         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
11857         (gst_element_link_filtered, gst_element_link_many) 
11858         (gst_element_link, gst_element_link_pads) 
11859         (gst_element_unlink_many): Docs.
11860
11861 2004-02-05  Andy Wingo  <wingo@pobox.com>
11862
11863         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
11864         s/pointer/boxed/.
11865
11866         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
11867
11868         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
11869         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
11870         with the type=GST_TYPE_CAPS. This allows language bindings to know
11871         what kind of data they're dealing with.
11872
11873         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
11874         to NULL when g_value_init is called. GstCaps, which rolls its own
11875         type implementation, now does the same instead of allocating empty
11876         caps.
11877         (_gst_caps_initialize, _gst_caps_collect_value,
11878         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
11879         table methods. This allows G_VALUE_COLLECT to work.
11880
11881 2004-02-05  Andy Wingo  <wingo@pobox.com>
11882
11883         * configure.ac:
11884         * testsuite/Makefile.am (SUBDIRS): 
11885         * testsuite/ghostpads/Makefile.am: 
11886         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
11887
11888         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
11889         These two routines are the only ones that set
11890         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
11891         pad template. They should be made static, depending on ABI needs.
11892         (gst_real_pad_dispose): Handle the case of ghost pads without a
11893         parent. Assert after dealing with ghost pads that the ghost pad
11894         list is empty.
11895         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
11896         set after creation.
11897         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
11898         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
11899         functions. set_property will call add_ghost_pad/remove_ghost_pad
11900         as appropriate.
11901         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
11902
11903         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
11904         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
11905         (gst_element_remove_pad): Handle ghost pads as well.
11906         (gst_element_remove_ghost_pad): Deprecated (could be removed,
11907         depending on API-stability needs).
11908
11909 2004-02-05  Andy Wingo  <wingo@pobox.com>
11910
11911         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
11912         of course they're const
11913
11914 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11915
11916         * tools/Makefile.am:
11917         * tools/gst-feedback:
11918         * tools/gst-feedback-0.7:
11919           make gst-feedback versioned too for consistency
11920
11921 2004-02-11  David Schleef  <ds@schleef.org>
11922
11923         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11924         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
11925
11926 2004-02-10  Julien MOUTTE <julien@moutte.net>
11927
11928         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
11929         the structure does not contain a valid tag list. Adding a safety check
11930         to remove a noisy warning in that case.
11931
11932 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
11933
11934         * gst/gst.c: fix name to be in line with others
11935
11936 2004-02-09  Julien MOUTTE <julien@moutte.net>
11937
11938         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
11939         not shout that loud when len is 0. Just return 0 silently.
11940
11941 2004-02-09  Julien MOUTTE  <julien@moutte.net>
11942
11943         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
11944         because data_unref has one and I prefer the debug to be symetric.
11945         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
11946         were refed when added to the queue and unrefed only once when the queue
11947         was flushed. Now the flush handler unref the buffers two times : first
11948         unref for the ref added when pushing in the queue's tail and second
11949         unref to destroy the flushed buffer.
11950
11951 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
11952
11953         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
11954
11955 2004-02-06  David Schleef  <ds@schleef.org>
11956
11957         * docs/random/ds/0.9-suggested-changes: Random ramblings
11958         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
11959         to int before printing.
11960         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
11961         * gst/parse/parse.l: same.  See bug #129600
11962
11963 2004-02-06  David Schleef  <ds@schleef.org>
11964
11965         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
11966         (gst_index_add_entry), (gst_index_add_associationv),
11967         (gst_index_add_association): Add gst_index_add_associationv()
11968         and clean up gst_index_add_association(). #127133
11969
11970 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11971
11972         * autogen.sh: check out common with right tag if CVS/Tag exists
11973
11974 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11975
11976         * testsuite/ghostpads/ghostpads.c: (main):
11977           fix testsuite from segfaulting
11978
11979 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11980
11981         * Makefile.am: add release target
11982         * configure.ac: bump nano to 1
11983         * docs/random/release:
11984
11985 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11986
11987         * gst/gstcaps.h:
11988         * gst/gstelement.c: (gst_element_base_class_init),
11989         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11990         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11991         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11992         (gst_real_pad_dispose):
11993         * gst/gststructure.c: (gst_structure_free),
11994         (gst_structure_from_string):
11995           put reverted patch back in
11996         * gst/gstelement.c: (gst_element_remove_pad):
11997           free explicit caps if they're set
11998         * gst/gstpad.c: (_gst_pad_default_fixate_func):
11999           copy the structure when fixating
12000
12001 2004-02-05  David Schleef  <ds@schleef.org>
12002
12003         * gst/gstmarshal.list:
12004         * gst/gstpad.c: (gst_real_pad_class_init),
12005         (_gst_real_pad_fixate_accumulator):
12006         Revert POINTER->BOXED change in signal marshaller.
12007
12008 === release 0.7.4 ===
12009                                                                                 
12010 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12011                                                                                 
12012         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
12013         * configure.ac: changed for release
12014
12015 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
12016
12017         * gstreamer.spec.in:
12018           bump required version of gtk-doc
12019
12020 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
12021
12022         * gst/gstcaps.h:
12023         * gst/gstelement.c: (gst_element_base_class_init),
12024         (gst_element_class_set_details), (gst_element_clear_pad_caps):
12025         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12026         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
12027         (gst_real_pad_dispose):
12028         * gst/gststructure.c: (gst_structure_free),
12029         (gst_structure_from_string):
12030           revert patch that breaks applications, reapply after release
12031           to get this fixed properly
12032
12033 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12034
12035         * gst/gsttag.c: (_gst_tag_initialize):
12036         * gst/gsttag.h:
12037           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
12038
12039 2004-02-04  David Schleef  <ds@schleef.org>
12040
12041         Fix some memleaks:
12042         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
12043         (gst_spider_plug_from_srcpad):
12044         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
12045
12046 2004-02-04  David Schleef  <ds@schleef.org>
12047
12048         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
12049         a GstRealPad before accessing its structure members.
12050
12051 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12052
12053         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
12054         (gst_clock_get_speed):
12055         * gst/gstclock.h:
12056           reset padding, remove unused fields
12057
12058 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12059
12060         * gst/autoplug/gstspideridentity.c:
12061         (gst_spider_identity_sink_loop_type_finding):
12062           use get_allowed_caps, not get_caps (fixes #132519)
12063         * gst/elements/gsttypefind.c: (stop_typefinding):
12064           use correct order when sending buffers and seeking
12065
12066 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12067
12068         * configure.ac:
12069         * gst/gstelement.h:
12070         * gst/gstpad.h:
12071         * gst/gstqueue.h:
12072           upgrade libtool CURRENT, reset padding
12073
12074 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12075
12076         * configure.ac:
12077           bump to prerelease
12078           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
12079
12080 2004-02-04  David Schleef  <ds@schleef.org>
12081
12082         * docs/random/ds/0.9-suggested-changes: random notes
12083         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
12084         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
12085         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
12086         expansion.
12087         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
12088         (gst_filesink_get_query_types): same
12089         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
12090         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
12091         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
12092         to use new GST_PTR_FORMAT.
12093         * gst/gstelement.h: deprecate function factory macros
12094         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
12095         These are our last variadic macros that can't be replaced with
12096         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
12097         attempting to deprecate gst_element_clock_wait().
12098         * gst/gstevent.h: same
12099         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12100         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
12101         * gst/gstpad.h: deprecate function factory macros similar to above.
12102
12103 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12104
12105         * configure.ac:
12106         * tools/Makefile.am:
12107         * tools/gst-run.c: (popt_callback), (hash_print_key),
12108         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
12109         (get_candidates), (main):
12110           add new source file to generate non-versioned wrapper binaries
12111           for our tools.
12112
12113 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12114
12115         * gst/gstevent.c: (_gst_event_free):
12116           actually break; inside the switch statement
12117         * gst/parse/grammar.y:
12118           fix memleak where GValues weren't unset
12119
12120 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12121
12122         * gst/gststructure.c: (gst_structure_from_string):
12123           fix huge memleak
12124         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12125         (new_entry), (gst_type_find_element_chain):
12126         * gst/gstelement.c: (gst_element_base_class_init),
12127         (gst_element_class_set_details):
12128         * gst/gstpad.c: (gst_pad_can_link_filtered):
12129           fix smaller memleaks
12130         * gst/gstpad.c: (gst_real_pad_dispose):
12131           check that explicit caps are gone
12132         * gst/gststructure.c: (gst_structure_free):
12133           actually free the structure
12134         * gst/gstelement.c: (gst_element_clear_pad_caps):
12135           unset explicit caps
12136
12137 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12138
12139         * tools/Makefile.am:
12140           use AM_CFLAGS since all the CFLAGS are the same
12141           use AM_LDFAGS
12142
12143 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12144
12145         * docs/manual/gnome.xml:
12146           expand example a little
12147         * gst/gst.c: (gst_init_with_popt_table),
12148         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
12149           make sure popt option displays are done with right textdomain
12150           use GstPoptOption type
12151         * gst/gst.h:
12152           create GstPoptOption type
12153
12154 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12155
12156         * gst/gsterror.c: (_gst_stream_errors_init):
12157         * gst/gsterror.h:
12158           adding error type for no codec
12159         * po/POTFILES.in:
12160           add gst-inspect
12161         * po/nl.po:
12162           update dutch translation
12163         * tools/gst-inspect.c: (print_element_list), (main):
12164           do proper internationalization
12165         * tools/gst-launch.c: (idle_func):
12166           remove commented out function call
12167
12168 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12169
12170         * docs/README:
12171           add some error fixing notes
12172         * docs/gst/gstreamer-sections.txt:
12173           remove double entries
12174         * docs/gst/tmpl/gstbin.sgml:
12175         * docs/gst/tmpl/gstclock.sgml:
12176           remove override
12177         * docs/gst/tmpl/gstelement.sgml:
12178         * docs/gst/tmpl/gstindex.sgml:
12179         * docs/gst/tmpl/gstobject.sgml:
12180         * docs/gst/tmpl/gstpadtemplate.sgml:
12181         * docs/gst/tmpl/gstreamer-unused.sgml:
12182         * docs/gst/tmpl/gsttag.sgml:
12183         * docs/gst/tmpl/gstthread.sgml:
12184         * docs/gst/tmpl/gstxml.sgml:
12185         * gst/gsttag.h:
12186           sync header prototypes with c decls
12187         * gst/gsttaginterface.c:
12188           fix doc headers
12189
12190 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12191
12192         * gst/parse/Makefile.am:
12193         * gst/gstobject.h:
12194           get rid of gstmarshal.h dependency. It's not needed.
12195         * gst/gst.h:
12196         * gst/elements/gstfakesink.c:
12197         * gst/elements/gstfakesrc.c:
12198         * gst/elements/gstidentity.c:
12199         * gst/gstbin.c:
12200         * gst/gstelement.c:
12201         * gst/gstindex.c:
12202         * gst/gstobject.c:
12203         * gst/gstpad.c:
12204         * gst/gstthread.c:
12205         * gst/gstxml.c:
12206         * libs/gst/control/dparam.c:
12207         * libs/gst/control/dparammanager.c:
12208           include gstmarshal.h.
12209         Fixes #132045
12210
12211 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12212
12213         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
12214         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
12215         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
12216         * gst/elements/gstfilesrc.h:
12217           don't ref the filesrc when creating mmaped buffers. Don't keep a
12218           list of not-yet-destroyed buffers.
12219         * gst/gstbuffer.h:
12220           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
12221
12222 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12223
12224         * gst/gst.c: (init_pre):
12225           remove textdomain
12226
12227 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12228
12229         * docs/pwg/advanced-events.xml:
12230         * docs/pwg/advanced-scheduling.xml:
12231         * docs/pwg/intro-basics.xml:
12232         * docs/pwg/other-manager.xml:
12233         * docs/pwg/other-nton.xml:
12234         * docs/pwg/other-ntoone.xml:
12235         * docs/pwg/other-oneton.xml:
12236         * docs/pwg/pwg.xml:
12237           All sort of documentation... Forgot what. Point is that I want this
12238           in before I leave. The 'other-*' will be the last section and will
12239           explain issues specific to these type of elements.
12240
12241 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12242
12243         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12244         (gst_filesrc_get_read):
12245           set all the values on buffers that we can
12246
12247 2004-02-02  David Schleef  <ds@schleef.org>
12248
12249         Change usage of isblah() to g_ascii_isblah() to be more locale
12250         independent.  (#133076)
12251         * gst/gsturi.c: (gst_uri_protocol_check_internal):
12252         * gst/gstutils.c:
12253         * gst/parse/parse.l:
12254
12255 2004-02-02  Jon Trowbridge  <trow@gnu.org>
12256
12257         reviewed by: David Schleef  <ds@schleef.org>
12258
12259         Fix memory leaks:
12260         * gst/gstcaps.c: (gst_caps_to_string):
12261         * gst/registries/gstxmlregistry.c:
12262         (gst_xml_registry_add_path_list_func),
12263         (gst_xml_registry_parse_padtemplate):
12264
12265 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12266
12267         * gst/gstelement.c: (gst_element_default_error):
12268           suffix error messages with period
12269
12270 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12271
12272         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12273         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12274         * gst/gsterror.c: (gst_error_get_message):
12275           Suffix with dots
12276         * po/fr.po:
12277         * po/nl.po:
12278           Update translation files
12279
12280 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12281
12282         * gst/autoplug/gstspideridentity.c:
12283         (gst_spider_identity_sink_loop_type_finding):
12284         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12285         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12286         (gst_filesink_close_file), (gst_filesink_handle_event),
12287         (gst_filesink_chain):
12288         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12289         (gst_filesrc_get_read), (gst_filesrc_open_file):
12290         * gst/elements/gstidentity.c: (gst_identity_chain):
12291         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12292         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12293         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12294         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12295         * gst/gsterror.c: (_gst_core_errors_init),
12296         (_gst_library_errors_init), (_gst_resource_errors_init),
12297         (_gst_stream_errors_init), (gst_error_get_message):
12298         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12299         (gst_pad_recover_caps_error), (gst_pad_pull):
12300         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12301         * gst/schedulers/gstbasicscheduler.c:
12302         (gst_basic_scheduler_chainhandler_proxy),
12303         (gst_basic_scheduler_gethandler_proxy),
12304         (gst_basic_scheduler_cothreaded_chain):
12305           Suffix error messages with period.
12306           Use (NULL) instead of NULL
12307
12308 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12309
12310         * docs/gst/tmpl/gstelement.sgml:
12311         * docs/gst/tmpl/gstxml.sgml:
12312         * gst/gstelement.c: (gst_element_error_full):
12313           add element path to error
12314
12315 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12316
12317         * docs/random/mimetypes:
12318           update raw int/float info
12319         * gst/gsttag.c: (_gst_tag_initialize):
12320         * gst/gsttag.h:
12321           add GST_TAG_ENCODER
12322
12323 2004-01-30  David Schleef  <ds@schleef.org>
12324
12325         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
12326           missing (#132991)
12327
12328 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
12329
12330         reviewed by Benjamin Otte 
12331           parts of the patch submitted in bug #113913
12332
12333         * configure.ac:
12334           use AC_C_INLINE. Use = instead of == with test
12335         * examples/plugins/example.c:
12336         * gst/autoplug/gstspideridentity.c:
12337         * gst/elements/gstfdsrc.c:
12338         * gst/elements/gstfilesrc.c:
12339         * gst/elements/gstidentity.c:
12340         * gst/elements/gstmultidisksrc.c:
12341         * gst/elements/gststatistics.c:
12342         * gst/gstelement.c:
12343         * gst/gstobject.c:
12344         * gst/gstpad.c:
12345         * gst/gstpipeline.c:
12346         * gst/gstthread.c:
12347           don't end enums with a comma
12348         * gst/gstindex.c: (gst_index_compare_func):
12349           do explicit casting to gint
12350         * gst/gsttrace.c: (gst_trace_text_flush):
12351           #define strsize as a macro
12352
12353 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
12354
12355         * docs/README:
12356         * docs/gst/gstreamer-docs.sgml:
12357         * docs/gst/gstreamer-sections.txt:
12358         * docs/gst/tmpl/gstelement.sgml:
12359         * docs/gst/tmpl/gsterror.sgml:
12360         * docs/gst/tmpl/gstinterface.sgml:
12361         * docs/gst/tmpl/gstreamer-unused.sgml:
12362         * docs/gst/tmpl/gststructure.sgml:
12363         * docs/gst/tmpl/gsttag.sgml:
12364         * docs/gst/tmpl/gsttaginterface.sgml:
12365         * docs/gst/tmpl/gstvalue.sgml:
12366         make sure all API ends up in the built docs
12367         * gst/gstinterface.c:
12368         * gst/gststructure.c: (gst_structure_id_set_value),
12369         (gst_structure_set_value), (gst_structure_id_get_value):
12370         * gst/gststructure.h:
12371         * gst/gstvalue.h:
12372         sync .h with .c declarations
12373
12374 2004-01-30  Julien Moutte  <julien@moutte.net>
12375
12376         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
12377         Ronald will fix riffread.
12378
12379 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12380
12381         * docs/pwg/advanced-interfaces.xml:
12382           Added tuner interface docs.
12383
12384 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12385
12386         * docs/random/mimetypes:
12387           correct Theora information
12388         * gst/gstelement.h:
12389           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
12390
12391 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12392
12393         * gst/gstelement.c: (gst_element_error_full):
12394         * gst/gstelement.h:
12395           GST_ELEMENT_ERROR in enum -> _IN_ERROR
12396
12397 2004-01-29  Julien MOUTTE  <julien@moutte.net>
12398
12399         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
12400         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
12401         again and even before DISCONT.
12402         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
12403         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
12404         bytestream so that it's not stopping to fill the bytestream if events
12405         different than EOS or DISCONT are received. Instead it process them so
12406         that they go downstream.
12407
12408 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12409
12410         * docs/gst/tmpl/gstelement.sgml:
12411         * docs/gst/tmpl/gstreamer-unused.sgml:
12412         * docs/gst/tmpl/gstxml.sgml:
12413         * gst/autoplug/gstspideridentity.c:
12414         (gst_spider_identity_sink_loop_type_finding):
12415         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12416         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12417         (gst_filesink_close_file), (gst_filesink_handle_event),
12418         (gst_filesink_chain):
12419         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12420         (gst_filesrc_get_read), (gst_filesrc_open_file):
12421         * gst/elements/gstidentity.c: (gst_identity_chain):
12422         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12423         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12424         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12425         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12426         * gst/gstelement.h:
12427         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12428         (gst_pad_recover_caps_error), (gst_pad_pull):
12429         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12430         * gst/schedulers/gstbasicscheduler.c:
12431         (gst_basic_scheduler_chainhandler_proxy),
12432         (gst_basic_scheduler_gethandler_proxy),
12433         (gst_basic_scheduler_cothreaded_chain):
12434           gst_element_error -> GST_ELEMENT_ERROR
12435
12436 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12437
12438         * docs/Makefile.am:
12439         * docs/gst/tmpl/gstelement.sgml:
12440         * docs/gst/tmpl/gstxml.sgml:
12441         * docs/manuals.mak:
12442         * docs/pwg/advanced-request.xml:
12443         * docs/pwg/advanced-scheduling.xml:
12444         * docs/pwg/advanced-tagging.xml:
12445           fix non-validating docbook using CDATA
12446           make sure make check-local gets run first to check if it validates
12447
12448 2004-01-29  Julien MOUTTE <julien@moutte.net>
12449
12450         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
12451         handling (up and downstream).
12452         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
12453         my_filter thing.
12454
12455 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12456
12457         * docs/pwg/advanced-tagging.xml:
12458           Add docs about tag writing.
12459
12460 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12461
12462         * docs/pwg/advanced-tagging.xml:
12463           Add a part about tag reading and application signalling... Tag
12464           writing still needs to be documented.
12465         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12466           We can set file locations in READY, too.
12467
12468 2004-01-29  Julien MOUTTE <julien@moutte.net>
12469
12470         * docs/random/ds/element-checklist: Adding some notes about src
12471         events.
12472
12473 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12474
12475         * docs/random/mimetypes:
12476           Update docs to point to correct elements for various mimetypes, and
12477           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
12478           <stephane.loeuillet@tiscali.fr>.
12479
12480 2004-01-28  David Schleef  <ds@schleef.org>
12481
12482         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
12483
12484 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12485
12486         * docs/random/mimetypes:
12487           update docs for audio/x-raw-float. Add "buffer-frames=0 means
12488           undefined"
12489         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12490           make it only work in NULL.
12491         * gst/gstcaps.c:
12492           don't posion NULL caps
12493         * gst/gstelement.c: (gst_element_set_time):
12494           add debugging statement
12495         * gst/gstelement.c: (gst_element_emit_found_tag),
12496         (gst_element_found_tag_func), (gst_element_found_tags):
12497         * gst/gstelement.h:
12498           These functions take const taglists
12499         * gst/gstpad.c: (gst_pad_proxy_getcaps):
12500           fix memleak
12501         * gst/gstpad.c: (gst_pad_event_default):
12502           make more effort on handling discont and clocks, g_warn if everything
12503           fails
12504         * gst/gststructure.c: (gst_structure_remove_fields),
12505         (gst_structure_remove_fields_valist):
12506         * gst/gststructure.h:
12507           add gst_structure_remove_fields(_valist)
12508         * gst/gsttag.c:
12509           fix doc glitch
12510
12511 2004-01-28  David Schleef  <ds@schleef.org>
12512
12513         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
12514         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
12515         Fix memory leakage of gst_caps_to_string().
12516
12517         Use GST_PTR_FORMAT instead of gst_caps_to_string():
12518         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
12519         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
12520         (gst_spider_identity_sink_loop_type_finding):
12521         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12522         (find_suggest):
12523         * gst/gstpad.c: (gst_pad_try_relink_filtered),
12524         (gst_pad_set_explicit_caps):
12525         * gst/parse/grammar.y:
12526
12527 2004-01-28  David Schleef  <ds@schleef.org>
12528
12529         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
12530         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
12531         * docs/random/ds/0.9-suggested-changes: Notes from Company.
12532         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
12533         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
12534         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
12535         (gst_debug_log_default), (_gst_info_printf_extension),
12536         (_gst_info_printf_extension_arginfo):  Add printf extension.
12537         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
12538         * gst/gststructure.c: (gst_structure_to_string),
12539         (_gst_structure_parse_value): Use gst_value_deserialize() and
12540         remove old code.
12541         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
12542         (gst_value_deserialize_boolean), (gst_strtoi),
12543         (gst_value_deserialize_int), (gst_value_deserialize_double),
12544         (gst_value_deserialize_string), (gst_value_deserialize): Implement
12545         a bunch of deserialize functions and gst_value_deserialize.
12546         * gst/gstvalue.h: er, _de_serialize, not unserialize
12547         * testsuite/caps/string-conversions.c: (main): We don't currently
12548         handle (float) in caps, so convert these to (double).
12549         * testsuite/debug/Makefile.am: Add new test for the printf extension
12550         * testsuite/debug/printf_extension.c: (main): same
12551
12552 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12553
12554         * docs/random/company/time:
12555           Add some docs about clocking and time
12556
12557 2004-01-28  Julien MOUTTE <julien@moutte.net>
12558
12559         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
12560
12561 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12562
12563         * docs/pwg/advanced-clock.xml:
12564         * docs/pwg/advanced-dparams.xml:
12565         * docs/pwg/advanced-events.xml:
12566         * docs/pwg/advanced-interfaces.xml:
12567         * docs/pwg/advanced-midi.xml:
12568         * docs/pwg/advanced-request.xml:
12569         * docs/pwg/advanced-scheduling.xml:
12570         * docs/pwg/advanced-tagging.xml:
12571         * docs/pwg/advanced-types.xml:
12572         * docs/pwg/appendix-checklist.xml:
12573         * docs/pwg/building-boiler.xml:
12574         * docs/pwg/building-chainfn.xml:
12575         * docs/pwg/building-filterfactory.xml:
12576         * docs/pwg/building-pads.xml:
12577         * docs/pwg/building-props.xml:
12578         * docs/pwg/building-signals.xml:
12579         * docs/pwg/building-state.xml:
12580         * docs/pwg/building-testapp.xml:
12581         * docs/pwg/intro-basics.xml:
12582         * docs/pwg/intro-preface.xml:
12583         * docs/pwg/other-autoplugger.xml:
12584         * docs/pwg/other-sink.xml:
12585         * docs/pwg/other-source.xml:
12586         * docs/pwg/titlepage.xml:
12587           fix up id's
12588
12589 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12590
12591         * docs/95NonPath:
12592         * docs/HACKING:
12593         * docs/README:
12594         * docs/building-the-docs-on-debian:
12595           collect relevant bits of doc info
12596
12597 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12598
12599         * docs/pwg/advanced_tagging.xml:
12600           Half-assed commit so Thomas can re-arrange document IDs here to be
12601           consistent, too.
12602
12603 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12604
12605         * docs/manual/autoplugging.xml:
12606         * docs/manual/bins-api.xml:
12607         * docs/manual/bins.xml:
12608         * docs/manual/buffers-api.xml:
12609         * docs/manual/buffers.xml:
12610         * docs/manual/clocks.xml:
12611         * docs/manual/components.xml:
12612         * docs/manual/cothreads.xml:
12613         * docs/manual/debugging.xml:
12614         * docs/manual/dparams-app.xml:
12615         * docs/manual/dynamic.xml:
12616         * docs/manual/elements-api.xml:
12617         * docs/manual/elements.xml:
12618         * docs/manual/factories.xml:
12619         * docs/manual/gnome.xml:
12620         * docs/manual/goals.xml:
12621         * docs/manual/helloworld.xml:
12622         * docs/manual/helloworld2.xml:
12623         * docs/manual/init-api.xml:
12624         * docs/manual/intro.xml:
12625         * docs/manual/links-api.xml:
12626         * docs/manual/links.xml:
12627         * docs/manual/manual.xml:
12628         * docs/manual/motivation.xml:
12629         * docs/manual/pads-api.xml:
12630         * docs/manual/pads.xml:
12631         * docs/manual/plugins-api.xml:
12632         * docs/manual/plugins.xml:
12633         * docs/manual/programs.xml:
12634         * docs/manual/queues.xml:
12635         * docs/manual/quotes.xml:
12636         * docs/manual/schedulers.xml:
12637         * docs/manual/states-api.xml:
12638         * docs/manual/states.xml:
12639         * docs/manual/threads.xml:
12640         * docs/manual/typedetection.xml:
12641         * docs/manual/xml.xml:
12642           use chapter, part, section or misc as id starts for all bits
12643
12644 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12645
12646         * docs/gst/gstreamer-sections.txt:
12647           Fix up TITLE of the sections
12648
12649 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12650
12651         * docs/pwg/advanced_interfaces.xml:
12652           Add documentation on propertyprobing.
12653         * docs/pwg/advanced_events.xml:
12654         * docs/pwg/advanced_tagging.xml:
12655         * docs/pwg/building_boiler.xml:
12656         * docs/pwg/building_filterfactory.xml:
12657         * docs/pwg/pwg.xml:
12658           Move filterfactory and tagging into their own chapter, add a chapter
12659           on events. all these are empty placeholders that will be filled in
12660           some day.
12661
12662 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12663
12664         * docs/pwg/advanced_interfaces.xml:
12665           Docs for mixer interface. Also a check for website uploading.
12666
12667 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12668
12669         * docs/HACKING:
12670         * docs/Makefile.am:
12671         * docs/faq/Makefile.am:
12672         * docs/gst/Makefile.am:
12673         * docs/gst/tmpl/gstelement.sgml:
12674         * docs/gst/tmpl/gstplugin.sgml:
12675         * docs/gst/tmpl/gstreamer-unused.sgml:
12676         * docs/libs/Makefile.am:
12677         * docs/manual/Makefile.am:
12678         * docs/manuals.mak:
12679         * docs/pwg/Makefile.am:
12680         * docs/upload.mak:
12681           Separate out upload target and make it similar for
12682           both docbook and gtk-doc docs
12683
12684 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12685
12686         * docs/manuals.mak:
12687           Fix upload target to work with freedesktop
12688
12689 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12690
12691         * docs/pwg/advanced_types.xml:
12692           Add notes on creating your own types.
12693         * docs/pwg/building_boiler.xml:
12694         * docs/pwg/building_pads.xml:
12695         * docs/pwg/building_state.xml:
12696           Add some stuff about how to retrieve values from structures, how
12697           that relates to types and change layout slightly again to be almost
12698           perfect.
12699
12700 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12701
12702         * docs/pwg/advanced_dparams.xml:
12703         * docs/pwg/advanced_scheduling.xml:
12704           Change index layout slightly.
12705
12706 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12707
12708         * docs/pwg/advanced_clock.xml:
12709         * docs/pwg/advanced_interfaces.xml:
12710         * docs/pwg/advanced_midi.xml:
12711           General placeholders for now.
12712         * docs/pwg/advanced_request.xml:
12713           Explanation about sometimes and request pads.
12714         * docs/pwg/advanced_scheduling.xml:
12715           Concept of bytestream, loopfunctions and schedulers.
12716         * docs/pwg/building_boiler.xml:
12717           Add something about plugin-init.
12718
12719 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12720
12721         * docs/pwg/building_pads.xml:
12722           Fix broken docbook
12723
12724 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12725
12726         * docs/pwg/advanced_interfaces.xml:
12727         * docs/pwg/pwg.xml:
12728           Add as a placeholder for future filling-in.
12729         * docs/pwg/basics_autoplugging.xml:
12730         * docs/pwg/basics_buffers.xml:
12731         * docs/pwg/basics_elements.xml:
12732         * docs/pwg/basics_events.xml:
12733         * docs/pwg/basics_plugins.xml:
12734         * docs/pwg/basics_types.xml:
12735           Remove, because unused (this is all in intro_basics.xml).
12736         * docs/pwg/building_signals.xml:
12737           Short intro to signals + reference to GObject docs - we really
12738           shouldn't go into these sort of things to deply because we don't
12739           use them that extensively anyway.
12740         * docs/pwg/building_state.xml:
12741           Explanation of states. Benjamin, please check.
12742         * docs/pwg/building_testapp.xml:
12743           Put everything in one page - putting only a few lines of content
12744           per page doesn't really make sense.
12745
12746           Time to get into the advanced topics. ;).
12747
12748 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12749
12750         * docs/pwg/advanced_types.xml:
12751           Finish documenting the current state of mimetypes.
12752         * docs/pwg/building_boiler.xml:
12753         * docs/pwg/building_chainfn.xml:
12754         * docs/pwg/building_pads.xml:
12755         * docs/pwg/building_props.xml:
12756         * docs/pwg/building_testapp.xml:
12757           Start documenting the "how to build a simple audio filter" part
12758           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
12759           states and (maybe?) a short introduction to capsnego in the chapter
12760           on pads (building_pads.xml). Capsnego should probably be explained
12761           fully in advanced_capsnego.xml or so.
12762
12763 2004-01-26  David Schleef  <ds@schleef.org>
12764
12765         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
12766         * gst/gstpad.h: Add new function to allow element to (somewhat)
12767         specify non-fixed caps on a pad.
12768         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
12769         that I added a few weeks ago.
12770
12771 2004-01-26  David Schleef  <ds@schleef.org>
12772
12773         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
12774           making try_set_caps() work with non-fixed caps.
12775
12776 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12777
12778         * docs/pwg/advanced_types.xml:
12779         * docs/pwg/intro_basics.xml:
12780         * docs/pwg/intro_preface.xml:
12781         * docs/pwg/pwg.xml:
12782         * docs/pwg/titlepage.xml:
12783           First try to resurrect the PWG. I'm halfway integrating the mimetypes
12784           in here (docs/random/mimetypes), and will from there on work on both
12785           updating outdated parts and adding missing parts.
12786           That doesn't mean I'll fix it completely, but I'll try at least. ;).
12787
12788 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12789
12790         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
12791           policy is set
12792
12793 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12794
12795         * gst/gstelement.h:
12796           remove gst_element_factory_get_version. It doesn't exist anymore.
12797         * gst/gstplugin.c:
12798         * gst/gstplugin.h:
12799           remove gst_plugin_set_name and change gst_plugin_get_longname to
12800           gst_plugin_get_description to match code.
12801         * gst/gsterror.h:
12802           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
12803         * gst/gstpad.c: (gst_pad_try_set_caps):
12804           make it work with nonfixed caps.
12805           Note that even in the nonfixed case the link function of the pad
12806           that tries to set caps isn't called.
12807
12808 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12809
12810         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
12811           fix bug where buffer was not assembled correctly
12812         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
12813           silence by default
12814         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12815           only seek if there's no more buffers that could work without seeking
12816
12817 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12818
12819         * gst/gsttag.c: (_gst_tag_initialize):
12820         * gst/gsttag.h:
12821           Add application tag (for encoding/muxing app).
12822
12823 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
12824
12825         * autogen.sh:
12826           make autopoint force, and libtoolize not copy
12827         * common/m4/as-docbook.m4:
12828           added docbook xml catalog setup check
12829         * common/m4/gst-doc.m4:
12830           use docbook check
12831
12832 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
12833
12834         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
12835         * gst/gsttag.h:
12836           add GstTagFlag
12837
12838 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12839
12840         * docs/gst/gstreamer-sections.txt:
12841         * docs/gst/tmpl/gst.sgml:
12842         * docs/gst/tmpl/gstbuffer.sgml:
12843         * docs/gst/tmpl/gstclock.sgml:
12844         * docs/gst/tmpl/gstelement.sgml:
12845         * docs/gst/tmpl/gstreamer-unused.sgml:
12846         * docs/gst/tmpl/gstxml.sgml:
12847           sync latest API changes to docs
12848
12849 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12850
12851         * gst/gstpluginfeature.c:
12852           fix doc snippet
12853         * tools/gst-inspect.c: (print_element_list):
12854           fix output of typefind
12855           add GPL header
12856         * tools/gst-launch.c:
12857           add GPL header
12858
12859 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12860
12861         * gst/elements/Makefile.am:
12862         * gst/elements/gstelements.c:
12863         * gst/elements/gsttypefindelement.c:
12864         * gst/elements/gsttypefindelement.h:
12865         * po/POTFILES.in:
12866         * po/fr.po:
12867         * po/nl.po:
12868           renamed gsttypefindelement to gsttypefind, conserving CVS history
12869
12870 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12871
12872         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
12873         * gst/gsttag.h:
12874           add some tags used in ogg as well
12875           fix _ in replaygain tags
12876
12877 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12878
12879         * gst/gsterror.h:
12880           fix wrong GST_LIBRARY_ERROR_ENCODE addition
12881
12882 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12883
12884         * gst/gstelement.c: (gst_element_error_full):
12885         * gst/gstelement.h:
12886           change _extended to _full
12887
12888 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12889
12890         reviewed by: <delete if not using a buddy>
12891
12892         * docs/gst/tmpl/gst.sgml:
12893         * docs/gst/tmpl/gstbuffer.sgml:
12894         * docs/gst/tmpl/gstclock.sgml:
12895         * docs/gst/tmpl/gstelement.sgml:
12896         * docs/gst/tmpl/gstreamer-unused.sgml:
12897         * docs/gst/tmpl/gstxml.sgml:
12898         * gst/gstelement.c: (gst_element_error_full):
12899         * gst/gstelement.h:
12900
12901 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12902
12903         * gst/gstelement.h: fix _gst_element_error_printf prototype
12904
12905 2004-01-20  David Schleef  <ds@schleef.org>
12906
12907         * gst/gststructure.c: (gst_structure_to_string):
12908         Convert function to use gst_value_serialize().
12909         * gst/gstvalue.c: (gst_value_serialize_list),
12910         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
12911         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
12912         (gst_value_serialize_int), (gst_value_serialize_double),
12913         (gst_string_wrap), (gst_value_serialize_string),
12914         (gst_value_serialize), (gst_value_deserialize):
12915         * gst/gstvalue.h:
12916         Add implementations for serialize.
12917
12918 2004-01-20  Julien MOUTTE  <julien@moutte.net>
12919
12920         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
12921         we want to keep that one in the future or change xvidenc.c to use 
12922         another error.
12923
12924 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12925
12926         * gst/gstelement.c: (_gst_element_error_printf):
12927         * gst/gstelement.h:
12928           privatise function
12929
12930 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12931
12932         * docs/random/error:
12933           doc explaining error system
12934         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12935           cleanup
12936
12937 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12938
12939         * gst/gst-i18n-app.h:
12940         * gst/gst-i18n-lib.h:
12941           remove inclusion of config.h
12942         * po/POTFILES.in:
12943         * po/nl.po:
12944           add gst/gstelement.c
12945
12946 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12947
12948         * po/nl.po: updated Dutch translation
12949
12950 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12951
12952         * gst/gsterror.c: (_gst_core_errors_init),
12953         (_gst_library_errors_init), (_gst_resource_errors_init),
12954         (_gst_stream_errors_init):
12955         remove ending punctuation dots
12956
12957 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12958
12959         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
12960         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
12961         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12962         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12963         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12964         use GST_ERROR_SYSTEM
12965
12966 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12967
12968         * gst/gstelement.c: (gst_element_error_printf),
12969         (gst_element_error_extended):
12970         * gst/gstelement.h:
12971           add a helper printf function so we can have NULL values passed.
12972
12973 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12974
12975         * gst/gstelement.h:
12976           add G_STMT macros to gst_element_error, which isn't strictly
12977           necessary but people tell me to anyway.
12978
12979 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
12980
12981         * gst/Makefile.am:
12982         * gst/autoplug/gstspideridentity.c:
12983         (gst_spider_identity_sink_loop_type_finding):
12984         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12985         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12986         (gst_filesink_close_file), (gst_filesink_handle_event),
12987         (gst_filesink_chain):
12988         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
12989         (gst_filesrc_map_region), (gst_filesrc_get_read),
12990         (gst_filesrc_open_file):
12991         * gst/elements/gstidentity.c: (gst_identity_chain):
12992         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12993         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12994         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12995         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
12996         * gst/gst.h:
12997         * gst/gst_private.h:
12998         * gst/gstelement.c: (gst_element_class_init),
12999         (gst_element_default_error), (gst_element_error_func),
13000         (gst_element_error_extended):
13001         * gst/gstelement.h:
13002         * gst/gsterror.c: (_gst_core_errors_init),
13003         (_gst_library_errors_init), (_gst_resource_errors_init),
13004         (_gst_stream_errors_init), (gst_error_get_message):
13005         * gst/gsterror.h:
13006         * gst/gstinfo.c: (_gst_debug_init):
13007         * gst/gstmarshal.list:
13008         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13009         (gst_pad_recover_caps_error), (gst_pad_pull):
13010         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
13011         * gst/schedulers/gstbasicscheduler.c:
13012         (gst_basic_scheduler_chainhandler_proxy),
13013         (gst_basic_scheduler_gethandler_proxy),
13014         (gst_basic_scheduler_cothreaded_chain):
13015         * po/POTFILES.in:
13016         * po/fr.po:
13017         * po/nl.po:
13018           change error signal
13019           add error categories
13020
13021 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
13022
13023         * gst/gsttag.c: (_gst_tag_initialize):
13024         * gst/gsttag.h:
13025         Add replaygain tag
13026
13027 2004-01-18  Colin Walters  <walters@verbum.org>
13028
13029         * examples/retag/retag.c: Call gst_init before processing
13030         program args.  Add g_assert to _link_many call.
13031
13032 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13033
13034         * gst/gstpad.c: (gst_pad_alloc_buffer):
13035           Return a newly allocated buffer when the pad has no peer.
13036
13037 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13038
13039         * gst/gstclock.c: (gst_clock_get_time):
13040           make it compile with gcc 2.95 again.
13041           Patch by Scott Wheeler
13042
13043 2004-01-15  David Schleef  <ds@schleef.org>
13044
13045         * gst/gstcaps.h:
13046         Added gst_caps_is_simple() macro.
13047         * testsuite/caps/caps.c: (test1):
13048         * testsuite/caps/intersect2.c: (main):
13049         * testsuite/caps/intersection.c: (main):
13050         Fixes to make 'make check' work again after removing
13051         gst_caps_is_chained().
13052
13053 2004-01-15  Leif Johnson <leif@ambient.2y.net>
13054
13055         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
13056         and additions to the MIDI document.
13057
13058 2004-01-15  David Schleef  <ds@schleef.org>
13059
13060         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
13061         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
13062         of GST_RPAD_, since we don't know if it's a real or ghost pad.
13063
13064 2004-01-15  David Schleef  <ds@schleef.org>
13065
13066         * gst/gstqueue.c:
13067         * gst/gstqueue.h:
13068         Fix the spelling of "treshold" and make min_threshold actually
13069         affect the queue.
13070
13071 2004-01-15  David Schleef  <ds@schleef.org>
13072
13073         * gst/gstcaps.c:
13074         Add lots of documentation.
13075         * gst/gstcaps.h:
13076         Deprecate a few functions.
13077         * gst/gstpad.c:
13078         Removed use of deprecated functions.
13079
13080 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13081
13082         * gst/gstpad.c: (gst_pad_is_linked):
13083         * gst/gstpad.h:
13084           implement gst_pad_is_linked
13085         * gst/gstelement.h:
13086           reserve space for initiate_state_change
13087
13088 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13089
13090         * gst/autoplug/gstspideridentity.c:
13091         (gst_spider_identity_sink_loop_type_finding):
13092           break infinite loop by just returning instead of looping
13093         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
13094           set event time difference correctly. Set it to 1 second instead
13095           of 100ms to be more tolerant
13096         * gst/gstelement.c: (gst_element_set_time):
13097           add debugging output
13098
13099 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13100
13101         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
13102           query if buffers are inside the pool, ignore events
13103
13104 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13105
13106         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
13107         (gst_clock_set_speed), (gst_clock_set_active),
13108         (gst_clock_is_active), (gst_clock_reset),
13109         (gst_clock_handle_discont):
13110         * gst/gstclock.h:
13111           deprecate old interface and disable functions that aren't in use
13112           anymore.
13113         * gst/gstelement.h:
13114         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
13115         (gst_element_set_time), (gst_element_adjust_time):
13116           add concept of "element time" and functions to get/set this time.
13117         * gst/gstelement.c: (gst_element_change_state):
13118           update element time correctly.
13119         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13120           This is a debug message, not a g_critical.
13121         * gst/gstpad.c: (gst_pad_event_default):
13122           handle discontinuous events right with element time.
13123         * gst/gstscheduler.c: (gst_scheduler_state_transition):
13124           update to clocking fixes.
13125           set clocks on elements in READY=>PAUSED. The old behaviour caused
13126           a wrong element time on the first element that started playing.
13127         * gst/schedulers/gstbasicscheduler.c:
13128         (gst_basic_scheduler_class_init):
13129         * gst/schedulers/gstoptimalscheduler.c:
13130         (gst_opt_scheduler_class_init):
13131           remove code that just implements the default behaviour.
13132         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
13133           update to use new clocking functions
13134         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
13135         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
13136           update to test new element time.
13137         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
13138           use _get_allowed_caps instead of _get_caps. This catches filtered
13139           caps correctly.
13140         * testsuite/debug/commandline.c:
13141           update for new GST_DEBUG syntax.
13142         * testsuite/threads/Makefile.am:
13143           disable a test that only works sometimes.
13144
13145 2004-01-13  Julien MOUTTE <julien@moutte.net>
13146
13147         * po/LINGUAS: Adding fr.
13148         * po/fr.po: Adding french translation.
13149
13150 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13151
13152         * gst/parse/grammar.y:
13153         * po/POTFILES.in:
13154         * po/nl.po:
13155         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
13156           translate parsing error messages
13157
13158 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13159
13160         * po/POTFILES.in: adding gst-launch
13161         * po/nl.po: updated translation, all 99 strings translated
13162         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
13163         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
13164           fix strings for translation
13165
13166 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13167
13168         * gst/gst.c:
13169           - capitalize beginnings of popt options
13170           - fix strings for translation
13171           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
13172
13173 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13174
13175         * po/README: add some notes on how to update translations
13176
13177 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13178
13179         * ABOUT-NLS: removed, is autogenerated from autopoint
13180         * autogen.sh: add autopoint stuff
13181         * configure.ac: fix up gettext stuff
13182         * gst/Makefile.am: add i18n headers to noinst_HEADERS
13183         * gst/elements/gsttypefindelement.c: add header include
13184         * gst/gettext.h: add header, copy from system-installed header
13185         * gst/gst-i18n-app.h: to be included by each app having translations
13186         * gst/gst-i18n-lib.h: to be included by each lib having translations
13187         * gst/gst.c: (init_pre): fix up gettext calls
13188         * gst/gst_private.h: remove i18n stuff, moving to separate headers
13189         * po/LINGUAS: the new way to specify translations present
13190         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
13191         * po/Makevars: the variables filled in for GStreamer
13192         * po/POTFILES.in: added new files with translations
13193         * po/de.po: has new strings
13194         * po/nl.po: readded, has new strings
13195
13196 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13197
13198         * gst/gsttag.c: fix some strings marked for translation
13199
13200 2004-01-13  Iain <iain@prettypeople.org>
13201
13202         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
13203         group when we add an element to it, cos we unref it when we remove one
13204
13205 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
13206
13207         * testsuite/debug/commandline.c: (debug_not_reached):
13208         * testsuite/debug/output.c: (check_message):
13209           fix testsuite
13210
13211 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13212
13213         * examples/cutter/.cvsignore:
13214         * examples/helloworld/.cvsignore:
13215         * examples/launch/.cvsignore:
13216         * examples/manual/.cvsignore:
13217         * examples/mixer/.cvsignore:
13218         * examples/pingpong/.cvsignore:
13219         * examples/plugins/.cvsignore:
13220         * examples/queue/.cvsignore:
13221         * examples/queue2/.cvsignore:
13222         * examples/queue3/.cvsignore:
13223         * examples/queue4/.cvsignore:
13224         * examples/retag/.cvsignore:
13225         * examples/thread/.cvsignore:
13226         * examples/typefind/.cvsignore:
13227         * examples/xml/.cvsignore:
13228         * gst/.cvsignore:
13229         * gst/autoplug/.cvsignore:
13230         * gst/elements/.cvsignore:
13231         * gst/indexers/.cvsignore:
13232         * gst/parse/.cvsignore:
13233         * gst/registries/.cvsignore:
13234         * gst/schedulers/.cvsignore:
13235         * libs/gst/bytestream/.cvsignore:
13236         * libs/gst/control/.cvsignore:
13237         * libs/gst/getbits/.cvsignore:
13238         * tests/.cvsignore:
13239         * tests/bufspeed/.cvsignore:
13240         * tests/instantiate/.cvsignore:
13241         * tests/memchunk/.cvsignore:
13242         * tests/muxing/.cvsignore:
13243         * tests/sched/.cvsignore:
13244         * tests/seeking/.cvsignore:
13245         * tests/threadstate/.cvsignore:
13246         * testsuite/.cvsignore:
13247         * testsuite/caps/.cvsignore:
13248         * testsuite/cleanup/.cvsignore:
13249         * testsuite/dynparams/.cvsignore:
13250         * testsuite/plugin/.cvsignore:
13251         * tools/.cvsignore:
13252           update - this is huge, because it includes *.bb, *.bbg and *.da files
13253           which are generated for gcov.
13254
13255 2004-01-11  David Schleef  <ds@schleef.org>
13256
13257         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
13258         a function to parse integers in ways that strto[u]l() does not.
13259
13260 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13261
13262         * tools/gst-inspect.c: (print_caps):
13263           improve output of caps a bit
13264
13265 2004-01-11  David Schleef  <ds@schleef.org>
13266
13267         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
13268         inherit correct flags (READONLY and DONTKEEP).
13269
13270 2004-01-11  David Schleef  <ds@schleef.org>
13271
13272         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
13273         (gst_filesrc_map_region):
13274         * gst/gstbuffer.c: (_gst_buffer_initialize),
13275         (_gst_buffer_sub_free), (gst_buffer_default_copy),
13276         (gst_buffer_new), (gst_buffer_create_sub),
13277         (gst_buffer_is_span_fast), (gst_buffer_span):
13278         * gst/gstbuffer.h:
13279         Change GstBuffer private structure element names. (all files)
13280         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
13281         (gst_queue_link):
13282         * gst/gstqueue.h:
13283         Implement getcaps/pad_link functions that handle the case where
13284         there are data in the queue.
13285
13286 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13287
13288         * gst/elements/gstbufferstore.c:
13289           initialize debugging structure correctly
13290         * gst/elements/gsttee.c: (gst_tee_set_property):
13291           g_object_notify when property was changed
13292         * gst/elements/gsttypefindelement.c:
13293         (gst_type_find_element_change_state):
13294           clear caps correctly
13295
13296 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13297
13298         * gst/gstqueue.c: (gst_queue_init):
13299           Use better defaults for when a queue should block. This
13300           gets rid of jerky playback for quite a few files.
13301           It takes more memory.
13302
13303 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
13304
13305         (gst_xml_registry_parse_padtemplate):
13306           make critical message slightly more useful
13307
13308 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13309
13310         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
13311         (gst_debug_message_get), (gst_debug_log_default):
13312         * gst/gstinfo.h:
13313           Change gst_debug_log(_valist) to take a const format string.
13314           Change prototype of log function and functions using those to 
13315           take a GstDebugMessage instead of a string that requires using
13316           gst_debug_message_get.
13317
13318 2004-01-08  David Schleef  <ds@schleef.org>
13319
13320         * Makefile.am:
13321         * configure.ac:
13322         Add option --enable-gcov to build GStreamer with -fprofile-arcs
13323         and -ftest-coverage, which allows gcov to show information about
13324         testsuite coverage.
13325
13326 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13327
13328         * gst/gstutils.h:
13329           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
13330           GST_PARENT_CALL_WITH_DEFAULT
13331         * gst/elements/gstaggregator.c: 
13332         * gst/elements/gstbufferstore.c: 
13333         * gst/elements/gstfakesink.c: 
13334         * gst/elements/gstfakesrc.c: 
13335         * gst/elements/gstfdsink.c: 
13336         * gst/elements/gstfdsrc.c: 
13337         * gst/elements/gstfilesink.c: 
13338         * gst/elements/gstfilesrc.c: 
13339         * gst/elements/gstidentity.c: 
13340         * gst/elements/gstmd5sink.c: 
13341         * gst/elements/gstmultidisksrc.c:
13342         * gst/elements/gstpipefilter.c: 
13343         * gst/elements/gstshaper.c:
13344         * gst/elements/gststatistics.c:
13345         * gst/elements/gsttee.c:
13346         * gst/elements/gsttypefindelement.c:
13347           use them.
13348
13349 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
13350
13351         * docs/gst/gstreamer-docs.sgml: remove props
13352         * docs/gst/gstreamer-sections.txt: remove props
13353         * docs/gst/tmpl/gst.sgml:
13354         * docs/gst/tmpl/gstbin.sgml:
13355         * docs/gst/tmpl/gstbuffer.sgml:
13356         * docs/gst/tmpl/gstcaps.sgml:
13357         * docs/gst/tmpl/gstclock.sgml:
13358         * docs/gst/tmpl/gstelement.sgml:
13359         * docs/gst/tmpl/gstindex.sgml:
13360         * docs/gst/tmpl/gstobject.sgml:
13361         * docs/gst/tmpl/gstpad.sgml:
13362         * docs/gst/tmpl/gstpadtemplate.sgml:
13363         * docs/gst/tmpl/gstreamer-unused.sgml:
13364         * docs/gst/tmpl/gstthread.sgml:
13365         * docs/gst/tmpl/gstxml.sgml:
13366           sync with code reorganization
13367
13368 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
13369
13370         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13371         Make the 'Could not find compatible pad' message more informative.
13372
13373 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13374                                                                                 
13375         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
13376           Fix for if we pass NULL as property to location.
13377         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
13378         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
13379           Fix for instantiate-test (see below).
13380         * gst/gststructure.c: (_gst_structure_parse_value):
13381           Fix compile error on gcc-2.96.
13382         * configure.ac:
13383         * tests/Makefile.am:
13384         * tests/instantiate/Makefile.am:
13385         * tests/instantiate/create.c: (create_all_elements), (main):
13386           Add a test that instantiates all elements. This makes it easy to
13387           track dead code for old API/design (like setting event functions
13388           on sink pads and so on).
13389
13390 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
13391
13392         * gst/gstcaps.c: (gst_caps_append_structure):
13393           Move the poisoning to allow a NULL structure
13394         * gst/gstevent.c: (_gst_event_free):
13395           When freeing a navigation event, free the structure
13396           also
13397
13398 2004-01-04  David Schleef  <ds@schleef.org>
13399
13400         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13401         Remove usage of gst_pad_proxy_fixate.
13402         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
13403         (gst_caps_split_one), (gst_caps_replace):
13404         Add poisoning code.
13405         * gst/gstmarshal.list:
13406         Add pointer__pointer for fixate signal
13407         * gst/gstpad.c: (gst_real_pad_class_init),
13408         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
13409         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
13410         (gst_pad_set_explicit_caps), (gst_pad_template_new):
13411         Add poisoning code. Add fixate signal on RealPad. Change
13412         set_explicit_caps() to take const GstCaps, like try_set_caps().
13413         * gst/gstpad.h:
13414         * testsuite/caps/Makefile.am:
13415         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
13416
13417 2004-01-03  David Schleef  <ds@schleef.org>
13418
13419         * gst/elements/gsttypefindelement.c:
13420         (gst_type_find_element_have_type), (gst_type_find_element_init):
13421         Use gst_pad_use_explicit_caps for src pad.
13422         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
13423         before using it.
13424
13425 2004-01-03  David Schleef  <ds@schleef.org>
13426
13427         * gst/gstelement.c: (gst_element_link_pads_filtered),
13428         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
13429         that linking was successful.
13430         * gst/gstpad.c: (gst_pad_link_free),
13431         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
13432         (gst_pad_link_try), (gst_pad_link_unnegotiate),
13433         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
13434         GstPadLinkReturn correctly between functions, and don't fail
13435         when DELAYED is used (DELAYED is very important).  Better
13436         cleanup on unlinking and unnegotiation.  Should fix some spider
13437         bugs.
13438
13439 2004-01-02  David Schleef  <ds@schleef.org>
13440
13441         * gst/gstelement.c: (gst_element_class_init),
13442         (gst_element_base_class_init): ->padtemplates should be cleared
13443         in base_init, since we need to have a fresh list for every
13444         class.  (Alternately, we chould copy the list and share the
13445         actual pad templates (not the list), but that would require
13446         changing every plugin to move pad template registration from
13447         base_init to class_init.)
13448
13449 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13450
13451         * gst/gstelement.c: (gst_element_class_add_pad_template):
13452           Refuse registering a pad template if another pad template
13453           with the same name already exists (#114715).
13454
13455 2004-01-02  David Schleef  <ds@schleef.org>
13456
13457         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
13458         (gst_caps_is_equal_fixed): Add new function.
13459         * gst/gstcaps.h: ditto.
13460         * gst/gstpad.c: (gst_real_pad_class_init),
13461         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
13462         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
13463         check new caps against existing caps -- if they're the same, return
13464         OK without renegotiating.  caps-nego-failed signal fixed so that
13465         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
13466         to save an extra caps copy.  Don't complete negotiation if a pad
13467         link function returns DELAYED.
13468
13469 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13470
13471         * gst/gstpad.c: (gst_pad_try_relink_filtered):
13472           Fix wrong g_return_if_fail
13473
13474 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
13475
13476         * gst/gstbin.c: (gst_bin_class_init):
13477         Change the marshalling of element_added/element_removed
13478         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
13479         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
13480
13481 2004-01-01  David Schleef  <ds@schleef.org>
13482
13483         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13484         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
13485         (gst_pad_use_explicit_caps):
13486         * gst/gstpad.h:
13487         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
13488         to use an internal getcaps and link fuction so that negotiation
13489         always results in the explicitly set caps.
13490         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
13491         are particularly useful for decoders.
13492
13493 2003-12-31  David Schleef  <ds@schleef.org>
13494
13495         * gst/elements/gstidentity.c: (gst_identity_class_init),
13496         (gst_identity_init), (gst_identity_chain),
13497         (gst_identity_set_property), (gst_identity_get_property):
13498         * gst/elements/gstidentity.h:
13499         * gst/gstqueue.c: (gst_queue_init):
13500           Negotiation fixes.
13501
13502 2003-12-31  David Schleef  <ds@schleef.org>
13503
13504         * gst/gstcaps.c: (gst_caps_intersect),
13505         (_gst_caps_normalize_foreach), (gst_caps_normalize):
13506           Implement gst_caps_normalize().
13507         * testsuite/caps/normalisation.c: (main):
13508           Add an additional test
13509
13510 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13511
13512         * gst/gstqueue.c: (gst_queue_init):
13513           use gst_pad_proxy_getcaps()
13514
13515 2003-12-31  David Schleef  <ds@schleef.org>
13516
13517         * gst/elements/gstshaper.c: (gst_shaper_link):
13518         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13519         * gst/gstqueue.c: (gst_queue_link):
13520           Negotiation fixes.
13521
13522 2003-12-31  David Schleef  <ds@schleef.org>
13523
13524         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
13525         * gst/gstpad.h: Add functions that are useful as default pad
13526         link and fixate functions for elements.
13527
13528 2003-12-30  David Schleef  <ds@schleef.org>
13529
13530         * gst/gstpad.c: (gst_pad_link_try):
13531           Fix segfault when attempting to return to old caps
13532
13533 2003-12-29  David Schleef  <ds@schleef.org>
13534
13535         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
13536         (gst_caps_structure_simplify), (gst_caps_simplify):
13537         * gst/gstcaps.h:
13538           Add simplify function
13539         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
13540         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
13541         * gst/gstpad.h:
13542           Copy over srcnotify, sinknotify when calling old pad_link
13543           functions.  Add new is_negotiated() function.
13544         * gst/gststructure.c: (gst_structure_copy):
13545           Fix an incredibly stupid bug that should have been noticed
13546           weeks ago.  _copy() returned the argument, not the new copy.
13547
13548 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13549
13550         * gst/gstcaps.c: (gst_caps_append):
13551           add sanity checks
13552         * gst/gstcaps.h: (gst_caps_debug):
13553           remove, it doesn't exist anymore.
13554         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
13555         (gst_element_threadsafe_properties_post_run):
13556           make debugging messages not clutter up THREAD debug category
13557         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
13558         (gst_element_change_state):
13559           update to new caps API
13560         * gst/gstinterface.c: (gst_implements_interface_cast):
13561           don't put vital code in g_return_if_fail
13562         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
13563         (gst_pad_link_filtered):
13564           add pst_pad_try_link and use it.
13565         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
13566           implement correctly, deprecate first one.
13567         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
13568           add and implement.
13569         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
13570           implement.
13571         (gst_pad_get_negotiated_caps):
13572           add and implement. Make GST_PAD_CAPS call this function.
13573         (gst_pad_get_caps):
13574           remove unneeded check..
13575         (gst_pad_recover_caps_error):
13576           disable, always return FALSE.
13577         (gst_real_pad_dispose):
13578           don't free caps and appfilter anymore, they're unused.
13579         * gst/gstpad.h:
13580           Reflect changes mentioned above.
13581         * gst/gstsystemclock.c: (gst_system_clock_wait):
13582           Make 'clock is way behind' a debugging message.
13583         * gst/gstthread.c: (gst_thread_change_state):
13584           Fix debugging message
13585
13586 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
13587
13588         * gst/gstinfo.h:
13589           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
13590         * docs/gst/tmpl/gstreamer-unused.sgml:
13591           removed all traces of cvs conflicts
13592
13593 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13594
13595         * configure.ac:
13596         * gst/schedulers/cothreads_compat.h:
13597         * libs/Makefile.am:
13598           remove last instances of wingo cothread usage
13599
13600 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13601
13602         * gst/gstplugin.c:
13603         * gst/gstversion.h.in:
13604         * gst/parse/grammar.y:
13605           change comment block from /** to /* when not gtk-doc comments
13606
13607 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13608
13609         * gst/gst.c: whitespace and doc style fixes
13610
13611 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13612
13613         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
13614
13615 2003-12-24  Colin Walters  <walters@verbum.org>
13616
13617         * gst/elements/gsttypefindelement.c:
13618           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
13619           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
13620           Don't double-free caps.
13621
13622 2003-12-23  David Schleef  <ds@schleef.org>
13623
13624         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
13625           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
13626           Many little fixes and additions of debug statements to
13627           get rhythmbox working.
13628
13629 2003-12-23  Colin Walters  <walters@verbum.org>
13630
13631         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
13632         Use GST_PAD_LINK_SUCCESSFUL.
13633
13634 2003-12-23  David Schleef  <ds@schleef.org>
13635
13636         * gst/elements/gstaggregator.c:
13637         * gst/elements/gsttee.c:
13638           Use gst_pad_proxy_getcaps().
13639         * gst/gstpad.c:
13640         * gst/gstpad.h:
13641           Add gst_pad_proxy_getcaps(), which filter elements can use
13642           as a generic getcaps implementation.
13643           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
13644           was advertised.
13645
13646 2003-12-23  David Schleef  <ds@schleef.org>
13647
13648         * gst/gstpad.c:
13649           Rearrange/rewrite much of the pad negotiation code, since it
13650           resembled pasta.  This actually changes the way some
13651           negotiation works, since the previous code was inconsistent
13652           depending on how it was invoked.  Add (internal) structure
13653           GstPadLink, which is used to hold some information (more in
13654           the future) about the link between two pads.  Fixes a number
13655           of bugs, including random lossage of filter caps when the
13656           initial negotiation is delayed.  A few functions are still
13657           unimplemented.
13658         * gst/gstpad.h:
13659           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
13660           these when testing GstPadLinkReturn values instead of comparing
13661           directly.
13662
13663 2003-12-23  David Schleef  <ds@schleef.org>
13664
13665         * gst/gstvalue.c: 
13666         * gst/gstvalue.h:
13667           Rearrange lots of code.  Change registration of compare function
13668           into registration of compare/serialize/deserialize functions.
13669           Doesn't include implementation of gst_value_[de]serialize(),
13670           but that should be easy.
13671
13672 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13673
13674         * docs/gst/gstreamer-sections.txt:
13675         * docs/gst/tmpl/gstprops.sgml: removed
13676         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
13677           David removed props and caps code, so let's remove their docs as well.
13678           Removed all no longer existing symbols from gstreamer-sections.txt
13679           
13680 2003-12-22  Colin Walters  <walters@verbum.org>
13681
13682         * gst/gsttaginterface.c, gst/gsttaginterface.h,
13683           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
13684           of tags directly.
13685
13686 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13687
13688         * gst/elements/gstelements.c:
13689           Set ranks of elements to NONE, so the autoplugger doesn't use them.
13690         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
13691           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
13692           gst_caps (peer).
13693
13694 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13695
13696         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
13697         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
13698         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
13699         (gst_spider_identity_sink_loop_type_finding):
13700         * gst/autoplug/gstspideridentity.h:
13701           Fix autoplugging in spider element, so it works with new caps.
13702           This was mainly caused by identifying empty caps incorrectly.
13703
13704 2003-12-22  David Schleef  <ds@schleef.org>
13705
13706         * gststructure.c, gstvalue.c, gstvalue.h: Add
13707           gst_value_init_and_copy() and use it, to avoid silly mistakes in
13708           using g_value_copy()
13709
13710 2003-12-21  David Schleef  <ds@schleef.org>
13711
13712         * many, many files: Merge CAPS branch.  This includes:
13713           - implemention of GstValue and several GstValue types
13714           - implemention of GstStructure
13715           - entire rewrite of GstCaps
13716           - removal of GstProps
13717           - many changes to GstPad to compensate for new caps paradigm
13718           - removal of GstBufferpool
13719         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
13720         gstvalue.h, gst/gstcaps[2]*.[ch]:
13721           - rename gstcaps2.[ch] to gstcaps.[ch]
13722
13723 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13724
13725         * gst/gstqueue.c: (gst_queue_handle_pending_events),
13726         (gst_queue_chain), (gst_queue_handle_src_event):
13727           implement timeout for sending events. Workaround for if the
13728           pipeline on this queue is not passing any data.
13729
13730 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
13731                                                                                 
13732         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
13733         * moved CVS to freedesktop.org