gst/base/gstcollectpads.c: Broadcast the condition when shutting down, to make sure...
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
2         * gst/base/gstcollectpads.c: (gst_collectpads_finalize),
3         (gst_collectpads_stop):
4           Broadcast the condition when shutting down, to make sure we wake all
5           threads up. Shut down pads on finalize, for safety.
6
7 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
8         * gst/base/gstbasetransform.c: (gst_base_transform_init),
9         (gst_base_transform_handle_buffer),
10         (gst_base_transform_change_state):
11           Handle PAUSED->READY->PAUSED transition after negotiation
12           occurred already.
13         * gst/gstmessage.c: (gst_message_init):
14           Extra piece of debug for new messages.
15
16 2005-08-01  Stefan Kost  <ensonic@users.sf.net>
17
18         * configure.ac:
19         * docs/gst/tmpl/gstbasesrc.sgml:
20         * docs/gst/tmpl/gstelement.sgml:
21         * docs/gst/tmpl/gstevent.sgml:
22         * docs/gst/tmpl/gstfakesrc.sgml:
23         * docs/gst/tmpl/gstformat.sgml:
24         * docs/gst/tmpl/gstghostpad.sgml:
25         * docs/gst/tmpl/gstpad.sgml:
26         * docs/gst/tmpl/gstquery.sgml:
27         * docs/gst/tmpl/gststructure.sgml:
28         * docs/gst/tmpl/gsttaglist.sgml:
29         * docs/gst/tmpl/gstvalue.sgml:
30         * docs/libs/gstreamer-libs-docs.sgml:
31         * docs/libs/gstreamer-libs-sections.txt:
32         * docs/libs/gstreamer-libs.types:
33         * libs/gst/Makefile.am:
34         * libs/gst/control/.cvsignore:
35         * libs/gst/control/Makefile.am:
36         * libs/gst/control/control.c:
37         * libs/gst/control/control.h:
38         * libs/gst/control/dparam.c:
39         * libs/gst/control/dparam.h:
40         * libs/gst/control/dparam_smooth.c:
41         * libs/gst/control/dparam_smooth.h:
42         * libs/gst/control/dparamcommon.h:
43         * libs/gst/control/dparammanager.c:
44         * libs/gst/control/dparammanager.h:
45         * libs/gst/control/dplinearinterp.c:
46         * libs/gst/control/dplinearinterp.h:
47         * libs/gst/control/unitconvert.c:
48         * libs/gst/control/unitconvert.h:
49         * testsuite/Makefile.am:
50         * testsuite/dynparams/.cvsignore:
51         * testsuite/dynparams/Makefile.am:
52         * testsuite/dynparams/dparamstest.c:
53         * tools/Makefile.am:
54         * tools/gst-inspect.c: (print_element_info), (main):
55         * tools/gst-xmlinspect.c: (print_element_info), (main):
56           deactivate and remove dparams (libgstcontrol)
57
58 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
59
60         * gst/elements/gsttypefindelement.c:
61         (gst_type_find_element_have_type), (gst_type_find_element_init),
62         (stop_typefinding), (gst_type_find_element_handle_event),
63         (gst_type_find_element_chain), (gst_type_find_element_getrange):
64         * gst/elements/gsttypefindelement.h:
65           Set caps on all outgoing buffers, not just the first one.
66
67 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
68
69         * gst/elements/gsttypefindelement.c:
70         (gst_type_find_element_have_type),
71         (gst_type_find_element_check_set_buffer_caps),
72         (gst_type_find_element_init), (stop_typefinding),
73         (gst_type_find_element_handle_event),
74         (gst_type_find_element_chain), (gst_type_find_element_getrange):
75         * gst/elements/gsttypefindelement.h:
76           Set caps on first outgoing buffer when we've found the type.
77
78 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
79
80         * docs/gst/gstreamer-docs.sgml:
81         * docs/gst/gstreamer-sections.txt:
82         * docs/gst/tmpl/gstscheduler.sgml:
83         * docs/gst/tmpl/gstschedulerfactory.sgml:
84           Remove some old cruft from docs.
85
86 2005-07-31  Tim-Philipp Müller  <tim at centricular dot net>
87
88         * gst/gstpad.h:
89           Fix inline docs for GstPadLinkReturn.
90           
91         * gst/gststructure.c: (gst_structure_has_name):
92         * gst/gststructure.h:
93         * docs/gst/gstreamer-sections.txt:
94           New API: gst_structure_has_name().
95
96 2005-07-30  Tim-Philipp Müller  <tim at centricular dot net>
97
98         * configure.ac:
99           Use AC_SYS_LARGEFILE, which will set _FILE_OFFSET_BITS=64
100           and _LARGEFILE_SOURCE in config.h as required. Do not 
101           export those flags in our .pc files any longer (#142209).
102
103           Remove unused GST_DISABLE_OMEGA_COTHREADS stuff.
104
105         * gst/elements/gstfilesink.c: (gst_file_sink_class_init),
106         (gst_file_sink_do_seek), (gst_file_sink_event),
107         (gst_file_sink_get_current_offset), (gst_file_sink_render):
108           Redo seek/tell calls with large file support in mind; add some
109           debugging messages; add log message that tells us when large
110           file support is unavailable or not enabled for some reason.
111
112         * gst/elements/gstfilesrc.c: (gst_file_src_class_init):
113           Add log message that tells us when large file support 
114           is unavailable or not enabled for some reason.
115
116 2005-07-29  Wim Taymans  <wim@fluendo.com>
117
118         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
119         Added test for removing an element with ghostpad from a bin.
120         Fixed test as current implementation does the right thing.
121
122         * gst/gstghostpad.c: (gst_proxy_pad_class_init),
123         (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
124         (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
125         (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
126         (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
127         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
128         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
129         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
130         (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
131         (gst_proxy_pad_get_target), (gst_proxy_pad_init),
132         (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
133         (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
134         (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
135         (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
136         (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
137         (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
138         * gst/gstghostpad.h:
139         Clean up ghostpads, remove properties for internal stuff.
140         Make threadsafe.
141         Fix refcounting.
142         Prepare for switching targets, not all use cases work yet.
143
144 2005-07-29  Wim Taymans  <wim@fluendo.com>
145
146         * docs/design/part-gstghostpad.txt:
147         Small update.
148
149         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
150         (gst_bin_remove_func):
151         Unlinking pads while holding the bin LOCK is not a good
152         idea.
153
154         * gst/gstpad.c: (gst_pad_class_init),
155         (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
156         (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
157         No prob setting template after creating the pad.
158
159 2005-07-29  Jan Schmidt  <thaytan@mad.scientist.com>
160
161         * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
162         (gst_bus_peek), (gst_bus_source_dispatch),
163         (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
164         (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
165           gst_bus_poll may be called from other threads. Handle
166           this nicely by not making poll_data disappear off the
167           stack once gst_bus_poll returns.
168           gst_bus_peek now increments the refcount on the returned
169           message.
170
171 2005-07-29  Wim Taymans  <wim@fluendo.com>
172
173         * docs/design/part-gstghostpad.txt:
174         Overview of current GhostPad datastructures and use
175         cases for changing the target.
176
177 2005-07-28  Wim Taymans  <wim@fluendo.com>
178
179         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
180         Added checks for hierarchy consistency whan adding linked
181         elements to bins.
182
183         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
184         Added check to test element scheduling without bin/pipeline.
185
186         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
187         First add elements to bin, then link.
188         
189         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
190         (gst_bin_remove_func):
191         Unlink pads from elements added/removed from bin to maintain
192         hierarchy consistency.
193
194 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
195
196         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
197         (gst_base_transform_handle_buffer):
198         * gst/base/gstbasetransform.h:
199           Remove broken delay_configure (fixes renegotiation of software
200           scaling pipelines); remove some leftover printf()s.
201
202 2005-07-28  Wim Taymans  <wim@fluendo.com>
203
204         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
205         Added some more tests for wrong hierarchy
206
207         * docs/design/part-overview.txt:
208         Some updates.
209
210         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
211         Cleanups.
212
213         * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
214         (gst_element_dispose):
215         Some more cleanups.
216
217         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
218         (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
219         (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
220         (gst_pad_set_caps), (gst_pad_send_event):
221         Check for correct hierarchy when linking pads. Moving to
222         strict requirement for ghostpads when linking elements in
223         different bins.
224
225         * gst/gstpad.h:
226         Clean ups. Added WRONG_HIERARCHY return value.
227
228 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
229
230         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
231           Better debug if no transform is possible.
232
233 2005-07-27  Wim Taymans  <wim@fluendo.com>
234
235         * docs/random/wtay/network-transp:
236         Some old doc I had.
237
238 2005-07-27  Wim Taymans  <wim@fluendo.com>
239
240         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
241         (gst_dp_event_from_packet):
242         Fix serialization of seek events.
243
244 2005-07-27  Wim Taymans  <wim@fluendo.com>
245
246         * check/gst-libs/gdp.c: (GST_START_TEST):
247         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
248         Fix compilation and fix event serialization.
249
250 2005-07-27  Wim Taymans  <wim@fluendo.com>
251
252         * CHANGES-0.9:
253         * docs/design/part-TODO.txt:
254         * docs/design/part-events.txt:
255         Some docs updates
256
257         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
258         (gst_base_sink_event), (gst_base_sink_do_sync),
259         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
260         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
261         (gst_base_src_do_seek), (gst_base_src_event_handler),
262         (gst_base_src_loop):
263         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
264         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
265         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
266         (gst_base_transform_event), (gst_base_transform_handle_buffer),
267         (gst_base_transform_set_passthrough),
268         (gst_base_transform_is_passthrough):
269         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
270         * gst/elements/gstfilesink.c: (gst_file_sink_event):
271         Event updates.
272
273         * gst/gstbuffer.h:
274         Use faster casts.
275
276         * gst/gstelement.c: (gst_element_seek):
277         * gst/gstelement.h:
278         Update gst_element_seek.
279
280         * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
281         (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
282         (gst_event_new_flush_start), (gst_event_new_flush_stop),
283         (gst_event_new_eos), (gst_event_new_newsegment),
284         (gst_event_parse_newsegment), (gst_event_new_tag),
285         (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
286         (gst_event_parse_qos), (gst_event_new_seek),
287         (gst_event_parse_seek), (gst_event_new_navigation):
288         * gst/gstevent.h:
289         Make GstEvent use GstStructure. Add parsing code, make sure the
290         API is sufficiently generic.
291         Mark possible directions of events and serialization.
292
293         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
294         (_gst_message_copy), (gst_message_new_segment_start),
295         (gst_message_new_segment_done), (gst_message_new_custom),
296         (gst_message_parse_segment_start),
297         (gst_message_parse_segment_done):
298         Small cleanups.
299
300         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
301         (gst_pad_set_caps), (gst_pad_send_event):
302         Update for new events. 
303         Catch events sent in wrong directions.
304
305         * gst/gstqueue.c: (gst_queue_link_src),
306         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
307         (gst_queue_handle_src_query):
308         Event updates.
309
310         * gst/gsttag.c:
311         * gst/gsttag.h:
312         Remove event code from this file.
313
314         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
315         (gst_dp_event_from_packet):
316         Event updates.
317
318 2005-07-27  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
319
320         * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
321         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
322         (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
323           Make debugging actually useful.
324
325 2005-07-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
326
327         * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
328         (gst_pad_fixate_caps):
329           Implement default fixation once again, so that gst_pad_fixate()
330           actually does anything at all. This probably needs to be some
331           sort of a last resort, and use profile-based fixation first, but
332           since that doesn't exist yet, this is the best we have. Fixes
333           visualization in Totem.
334
335 2005-07-22  Wim Taymans  <wim@fluendo.com>
336
337         * docs/design/part-events.txt:
338         Small update.
339
340         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
341         (gst_base_sink_do_sync), (gst_base_sink_activate_push),
342         (gst_base_sink_activate_pull):
343         Some more comments.
344
345         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
346         (gst_fake_src_create):
347         Fix handoff marshall.
348
349         * gst/elements/gstidentity.c: (gst_identity_class_init),
350         (gst_identity_transform_ip):
351         We're a real inplace element.
352
353         * gst/gstbus.c: (gst_bus_post):
354         Added some comments.
355
356         * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
357         * tests/muxing/case1.c: (main):
358         * tests/sched/dynamic-pipeline.c: (main):
359         * tests/sched/interrupt1.c: (main):
360         * tests/sched/interrupt2.c: (main):
361         * tests/sched/interrupt3.c: (main):
362         * tests/sched/runxml.c: (main):
363         * tests/sched/sched-stress.c: (main):
364         * tests/seeking/seeking1.c: (event_received), (main):
365         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
366         (main):
367         * tests/threadstate/threadstate3.c: (main):
368         * tests/threadstate/threadstate4.c: (main):
369         * tests/threadstate/threadstate5.c: (main):
370         Fix the tests.
371
372 2005-07-21  Wim Taymans  <wim@fluendo.com>
373
374         * docs/design/part-seeking.txt:
375         Some small additions.
376
377         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
378         (gst_base_sink_get_times), (gst_base_sink_do_sync),
379         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
380         * gst/base/gstbasesink.h:
381         discont values are gint64, handle the math correctly.
382
383         * gst/base/gstbasesrc.c: (gst_base_src_loop):
384         Make the basesrc report error if the source pad is not linked.
385
386         * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
387         (gst_queue_loop), (gst_queue_handle_src_query),
388         (gst_queue_src_activate_push):
389         Make queue collect data even if the srcpad is not linked.
390         Start pushing out data as soon as it is linked.
391
392         * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
393         * gst/gstutils.h:
394         Added gst_flow_get_name() to ease error reporting.
395
396 2005-07-20  Wim Taymans  <wim@fluendo.com>
397
398         * gst/gstmessage.c: (gst_message_new_segment_start),
399         (gst_message_new_segment_done), (gst_message_parse_segment_start),
400         (gst_message_parse_segment_done):
401         * gst/gstmessage.h:
402         Added a bunch of messages for advanced seeking.
403
404         * gst/parse/grammar.y:
405         * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
406         (gst_dpman_state_changed):
407         Fix some new-pad -> pad-added signals
408
409 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
410
411         * docs/manual/appendix-porting.xml:
412         * docs/pwg/appendix-porting.xml:
413           Document new-pad/state-change signal renames and the FixedList
414           type rename.
415
416 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
417
418         * docs/manual/advanced-autoplugging.xml:
419         * docs/manual/basics-helloworld.xml:
420         * docs/manual/basics-pads.xml:
421         * docs/random/ds/0.9-suggested-changes:
422         * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
423         * gst/gstelement.h:
424         * gst/gstevent.h:
425         * gst/gstformat.h:
426         * gst/gstquery.h:
427         * gst/gststructure.c: (gst_structure_value_get_generic_type),
428         (gst_structure_parse_array), (gst_structure_parse_value):
429         * gst/gstvalue.c: (gst_type_is_fixed),
430         (gst_value_list_prepend_value), (gst_value_list_append_value),
431         (gst_value_list_get_size), (gst_value_list_get_value),
432         (gst_value_transform_array_string), (gst_value_serialize_array),
433         (gst_value_deserialize_array), (gst_value_intersect_array),
434         (gst_value_is_fixed), (_gst_value_initialize):
435         * gst/gstvalue.h:
436           GstElement::new-pad -> pad-added, GstElement::state-change ->
437           state-changed, GstValueFixedList -> GstValueArray, add format and
438           flags as their own arguments in gst_element_seek() (should improve
439           "bindeability"), remove function generators since they don't work
440           under a whole bunch of compilers (they were deprecated already
441           anyway).
442
443 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
444
445         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
446         (_gst_debug_register_funcptr):
447         * gst/gstinfo.h:
448           Fix illegal cast on some platforms (#309253).
449
450 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
451
452         * gst/gstmessage.c: (gst_message_new_custom):
453         * gst/gstmessage.h:
454           Add _new_custom, make _new_application a macro to _new_custom.
455
456 2005-07-20  Wim Taymans  <wim@fluendo.com>
457
458         * gst/base/gstbasesrc.c: (gst_base_src_init),
459         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
460         * gst/base/gstbasesrc.h:
461         Add a gboolean to decide when to push out a discont.
462
463         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
464         (gst_queue_loop), (gst_queue_handle_src_query),
465         (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
466         (gst_queue_set_property), (gst_queue_get_property):
467         Some cleanups.
468
469         * tests/threadstate/threadstate1.c: (main):
470         Make a thread test compile and run... very silly..
471
472
473 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
474
475         * docs/manual/appendix-porting.xml:
476           Mention removal of libgstgconf-0.9.la and existence of gconf
477           elements.
478
479 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
480
481         * docs/pwg/advanced-clock.xml:
482         * docs/pwg/appendix-porting.xml:
483         * docs/pwg/intro-preface.xml:
484         * docs/pwg/other-base.xml:
485         * docs/pwg/other-manager.xml:
486         * docs/pwg/other-nton.xml:
487         * docs/pwg/other-ntoone.xml:
488         * docs/pwg/other-oneton.xml:
489         * docs/pwg/pwg.xml:
490           Document base classes, update sections of n-to-1 and 1-to-n (muxer,
491           demuxer), remove n-to-n (was never written), fix some code examples
492           and links and update the porting section to include all this.
493
494 2005-07-19  Wim Taymans  <wim@fluendo.com>
495
496         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
497         (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
498         (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
499         (gst_queue_src_activate_push), (gst_queue_change_state),
500         (gst_queue_get_property):
501         * gst/gstqueue.h:
502         Propagate GstFlowReturn more intelligently upstream and output
503         an ERROR/EOS when streaming stopped due to fatal error.
504
505 2005-07-19  Wim Taymans  <wim@fluendo.com>
506
507         * tools/gst-launch.c: (check_intr), (event_loop), (main):
508         Don't block forever for the state change to complete, the
509         pipeline already did with a sensible timeout.
510
511 2005-07-19  Wim Taymans  <wim@fluendo.com>
512
513         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
514         Make sure we never call the create function is we
515         got deactivated.
516
517 2005-07-19  Andy Wingo  <wingo@pobox.com>
518
519         * gst/parse/parse.l: Attempt to solve bug #172815.
520
521 2005-07-19  Wim Taymans  <wim@fluendo.com>
522
523         * docs/design/part-clocks.txt:
524         * docs/design/part-events.txt:
525         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
526         Small docs updates.
527         Only update the seeking values when we are not
528         busy streaming.
529
530 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
531
532         * gst/base/gstbasesrc.c: (gst_base_src_loop):
533           Oops, ignore the result of gst_pad_push_event here.
534
535 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
536
537         * gst/base/gstbasesrc.c: (gst_base_src_loop),
538         (gst_base_src_activate_push):
539           Send discont event from the loop function, as pads
540           aren't activated yet in the activate_push handler.
541
542         * gst/gstbin.c: (bin_bus_handler):
543           Don't leak element name.
544
545 2005-07-18  Andy Wingo  <wingo@pobox.com>
546
547         * configure.ac: Use AS_LIBTOOL_TAGS.
548
549 2005-07-18  Wim Taymans  <wim@fluendo.com>
550
551         * docs/gst/gstreamer.types:
552         Remove deleted types.
553
554 2005-07-18  Wim Taymans  <wim@fluendo.com>
555
556         * check/elements/gstfakesrc.c: (GST_START_TEST):
557         * configure.ac:
558         * gst/Makefile.am:
559         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
560         (init_popt_callback):
561         * gst/gst.h:
562         * gst/gst_private.h:
563         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
564         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
565         * gst/gstbin.h:
566         * gst/gstbus.h:
567         * gst/gstconfig.h.in:
568         * gst/gstelement.c: (gst_element_class_init),
569         (gst_element_set_base_time), (gst_element_get_base_time),
570         (iterator_fold_with_resync), (gst_element_change_state),
571         (gst_element_dispose), (gst_element_get_bus):
572         * gst/gstelement.h:
573         * gst/gstelementfactory.h:
574         * gst/gsterror.c: (_gst_core_errors_init):
575         * gst/gsterror.h:
576         * gst/gstevent.h:
577         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
578         * gst/gstindex.c:
579         * gst/gstinfo.c: (_gst_debug_init):
580         * gst/gstmessage.c: (_gst_message_copy):
581         * gst/gstmessage.h:
582         * gst/gstminiobject.h:
583         * gst/gstobject.c:
584         * gst/gstobject.h:
585         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
586         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
587         * gst/gstpad.h:
588         * gst/gstparse.h:
589         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
590         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
591         (gst_pipeline_get_last_stream_time):
592         * gst/gstpipeline.h:
593         * gst/gstpluginfeature.h:
594         * gst/gstquery.h:
595         * gst/gstscheduler.c:
596         * gst/gstscheduler.h:
597         * gst/gststructure.h:
598         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
599         (gst_task_finalize), (gst_task_func), (gst_task_create),
600         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
601         (gst_task_stop), (gst_task_pause):
602         * gst/gsttask.h:
603         * gst/gsttypefind.h:
604         * gst/gsttypes.h:
605         * gst/registries/gstlibxmlregistry.c: (load_feature),
606         (gst_xml_registry_load), (gst_xml_registry_save_feature):
607         * gst/registries/gstxmlregistry.c:
608         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
609         * gst/schedulers/threadscheduler.c:
610         * libs/gst/control/dparammanager.h:
611         * tools/gst-inspect.c: (print_element_list),
612         (print_plugin_features), (print_element_features):
613         * tools/gst-xmlinspect.c: (print_element_list),
614         (print_plugin_info), (main):
615         Removed plugable schedulers.
616         Removed Scheduler/Manager from elements.
617         Removed gsttypes.h, rearranged includes.
618         Removed dependency pad<->element, element<>pipeline, and
619         various others,  fix includes.
620         implement gst_pad_get_parent() with gst_object_get_parent()
621         Make GstTask sefcontained.
622         Fix _get_state() on GstBin, it did not return ASYNC with a 0
623         timeout.
624         Fix endless loop in iterator_fold_with_resync.
625
626
627 2005-07-18  Wim Taymans  <wim@fluendo.com>
628
629         * gst/Makefile.am:
630         * gst/gstarch.h:
631         Remove old file.
632
633 2005-07-18  Wim Taymans  <wim@fluendo.com>
634
635         * gst/Makefile.am:
636         No more cothreads.h
637
638 2005-07-18  Wim Taymans  <wim@fluendo.com>
639
640         * gst/cothreads.c:
641         * gst/cothreads.h:
642         Let's remove these.
643
644 2005-07-18  Wim Taymans  <wim@fluendo.com>
645
646         * docs/design/part-dynamic.txt:
647         * docs/design/part-events.txt:
648         * docs/design/part-seeking.txt:
649         Some more docs in the works.
650
651         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
652         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
653         (gst_base_transform_setcaps), (gst_base_transform_get_size),
654         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
655         (gst_base_transform_handle_buffer),
656         (gst_base_transform_sink_activate_push),
657         (gst_base_transform_src_activate_pull),
658         (gst_base_transform_set_passthrough),
659         (gst_base_transform_is_passthrough):
660         Refcounting fixes.
661
662         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
663         Cleanups.
664
665         * gst/gstevent.c: (gst_event_finalize):
666         Set SRC to NULL.
667
668         * gst/gstutils.c: (gst_element_unlink),
669         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
670         (gst_pad_proxy_setcaps):
671         * gst/gstutils.h:
672         Add _get_parent_element() to get a pads parent as an element.
673
674 2005-07-18  Wim Taymans  <wim@fluendo.com>
675
676         * check/gst/gstbin.c: (GST_START_TEST):
677         Remove bogus test.
678
679 2005-07-18  Wim Taymans  <wim@fluendo.com>
680
681         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
682         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
683         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
684         (gst_base_sink_event), (gst_base_sink_do_sync),
685         (gst_base_sink_chain), (gst_base_sink_loop),
686         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
687         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
688         Refcounting fixes.
689         Fix logic for returning ASYNC when not prerolled.
690
691 2005-07-18  Wim Taymans  <wim@fluendo.com>
692
693         * gst/gstqueue.c: (gst_queue_handle_sink_event):
694         Fix nasty refcount bug.
695
696 2005-07-16 Philippe Khalaf <burger@speedy.org>
697         * gst/elements/gstfdsrc.c:
698         * gst/elements/gstfdsrc.h:
699         * gst/elements/gstelements.c:
700         * gst/elements/Makefile.am:
701         Ported fdsrc to 0.9.
702
703 2005-07-16  Wim Taymans  <wim@fluendo.com>
704
705         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
706         (gst_base_sink_do_sync):
707         Fix compile error.
708
709 2005-07-16  Wim Taymans  <wim@fluendo.com>
710
711         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
712         (gst_base_sink_event), (gst_base_sink_get_times),
713         (gst_base_sink_do_sync), (gst_base_sink_change_state):
714         * gst/base/gstbasesink.h:
715         Store and use discont values when syncing buffers as described
716         in design docs.
717         
718         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
719         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
720         (gst_base_src_activate_push):
721         Push discont event when starting.
722
723         * gst/elements/gstidentity.c: (gst_identity_transform):
724         Small cleanups.
725
726         * gst/gstbin.c: (gst_bin_change_state):
727         Small cleanups in base_time  distribution.
728
729         * gst/gstelement.c: (gst_element_set_base_time),
730         (gst_element_get_base_time), (gst_element_change_state):
731         * gst/gstelement.h:
732         Added methods for the base_time of the element.
733         Some MT fixes.
734
735         * gst/gstpipeline.c: (gst_pipeline_send_event),
736         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
737         (gst_pipeline_get_last_stream_time):
738         * gst/gstpipeline.h:
739         MT fixes.
740         Handle seeking as described in design doc, remove stream_time
741         hack.
742         Cleanups clock and stream_time selection code. Added accessors
743         for the stream_time.
744         
745
746 2005-07-16  Andy Wingo  <wingo@pobox.com>
747
748         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
749         (#305291).
750
751 2005-07-16  Wim Taymans  <wim@fluendo.com>
752
753         * check/gst/gstbin.c: (GST_START_TEST):
754         Make elements silent as the deep_notify refs the
755         parent, which might make the test fail.
756
757         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
758         Don't hold the lock for too long.
759
760 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
761
762         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
763           Don't unref the caps we passed to gst_caps_make_writable() after
764           passing them. gst_caps_make_writable() will do that for us.
765
766 2005-07-15  Andy Wingo  <wingo@pobox.com>
767
768         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
769         (#157311).
770
771         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
772         own marshalling function for the handoff signal. Properly type the
773         buffer as a buffer. Fixes some warnings. Should do a more general
774         solution.
775         (gst_identity_class_init): Plug into the right marshaller.
776
777 2005-07-15  Wim Taymans  <wim@fluendo.com>
778
779         * docs/design/part-TODO.txt:
780         * docs/design/part-clocks.txt:
781         * docs/design/part-element-sink.txt:
782         * docs/design/part-events.txt:
783         * docs/design/part-gstpipeline.txt:
784         Updated docs, mostly DISCONT related.
785
786 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
787
788         * docs/pwg/building-pads.xml:
789           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
790
791 2005-07-15  Andy Wingo  <wingo@pobox.com>
792
793         * tools/gst-typefind.c: Update, add copyright block.
794
795         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
796         Normalize and truncate caps before fixation.
797
798         * gst/gstcaps.h:
799         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
800         discards all but the first structure from its argument.
801
802 2005-07-15  Wim Taymans  <wim@fluendo.com>
803
804         * gst/base/gstbasetransform.c: (gst_base_transform_init),
805         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
806         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
807         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
808         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
809         (gst_base_transform_chain), (gst_base_transform_change_state),
810         (gst_base_transform_set_passthrough),
811         (gst_base_transform_is_passthrough):
812         * gst/base/gstbasetransform.h:
813         Make passthrough work using the bufferpools.
814         Changed API a bit, subclasses have to write into a buffer
815         provided by the base class.
816         More debug info in nego functions.
817         
818         * gst/elements/gstidentity.c: (gst_identity_init),
819         (gst_identity_transform):
820         Port to new base class.
821
822 2005-07-15  Wim Taymans  <wim@fluendo.com>
823
824         * gst/gstmessage.c: (gst_message_new_state_changed):
825         * tools/gst-launch.c: (event_loop), (main):
826         Totally dump messages in -launch with the -m option.
827         Fix message name for State messages,
828
829 2005-07-14  Wim Taymans  <wim@fluendo.com>
830
831         * gst/base/gstbasesrc.c: (gst_base_src_loop):
832         Post error messages on errors.
833
834 2005-07-14  Wim Taymans  <wim@fluendo.com>
835
836         * gst/gstcaps.c: (gst_caps_do_simplify):
837         Remove debug info.
838
839         * gst/gsterror.h:
840         Define error for stream stopped.
841
842         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
843         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
844         Do proper return values.
845
846         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
847         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
848         (gst_pad_get_range):
849         Better return values.
850
851         * gst/gstpad.h:
852         Reorganise return values, add macro to check for fatal errors.
853
854         * gst/gstqueue.c: (gst_queue_chain):
855         Return proper GstFlowReturn values,
856
857 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
858
859         * docs/gst/gstreamer-sections.txt:
860         * docs/gst/gstreamer.types:
861         * docs/gst/tmpl/gst.sgml:
862         * docs/gst/tmpl/gstbasesink.sgml:
863         * docs/gst/tmpl/gstbasesrc.sgml:
864         * docs/gst/tmpl/gstbasetransform.sgml:
865         * docs/gst/tmpl/gstbin.sgml:
866         * docs/gst/tmpl/gstbuffer.sgml:
867         * docs/gst/tmpl/gstcaps.sgml:
868         * docs/gst/tmpl/gstclock.sgml:
869         * docs/gst/tmpl/gstcompat.sgml:
870         * docs/gst/tmpl/gstconfig.sgml:
871         * docs/gst/tmpl/gstelement.sgml:
872         * docs/gst/tmpl/gstelementdetails.sgml:
873         * docs/gst/tmpl/gstelementfactory.sgml:
874         * docs/gst/tmpl/gstenumtypes.sgml:
875         * docs/gst/tmpl/gsterror.sgml:
876         * docs/gst/tmpl/gstevent.sgml:
877         * docs/gst/tmpl/gstfakesink.sgml:
878         * docs/gst/tmpl/gstfakesrc.sgml:
879         * docs/gst/tmpl/gstfilesink.sgml:
880         * docs/gst/tmpl/gstfilesrc.sgml:
881         * docs/gst/tmpl/gstfilter.sgml:
882         * docs/gst/tmpl/gstformat.sgml:
883         * docs/gst/tmpl/gstghostpad.sgml:
884         * docs/gst/tmpl/gstimplementsinterface.sgml:
885         * docs/gst/tmpl/gstindex.sgml:
886         * docs/gst/tmpl/gstindexfactory.sgml:
887         * docs/gst/tmpl/gstinfo.sgml:
888         * docs/gst/tmpl/gstiterator.sgml:
889         * docs/gst/tmpl/gstmacros.sgml:
890         * docs/gst/tmpl/gstmemchunk.sgml:
891         * docs/gst/tmpl/gstminiobject.sgml:
892         * docs/gst/tmpl/gstobject.sgml:
893         * docs/gst/tmpl/gstpad.sgml:
894         * docs/gst/tmpl/gstpadtemplate.sgml:
895         * docs/gst/tmpl/gstparse.sgml:
896         * docs/gst/tmpl/gstpipeline.sgml:
897         * docs/gst/tmpl/gstplugin.sgml:
898         * docs/gst/tmpl/gstpluginfeature.sgml:
899         * docs/gst/tmpl/gstquery.sgml:
900         * docs/gst/tmpl/gstqueue.sgml:
901         * docs/gst/tmpl/gstregistry.sgml:
902         * docs/gst/tmpl/gstregistrypool.sgml:
903         * docs/gst/tmpl/gstscheduler.sgml:
904         * docs/gst/tmpl/gstschedulerfactory.sgml:
905         * docs/gst/tmpl/gststructure.sgml:
906         * docs/gst/tmpl/gstsystemclock.sgml:
907         * docs/gst/tmpl/gsttaglist.sgml:
908         * docs/gst/tmpl/gsttagsetter.sgml:
909         * docs/gst/tmpl/gsttrace.sgml:
910         * docs/gst/tmpl/gsttrashstack.sgml:
911         * docs/gst/tmpl/gsttypefind.sgml:
912         * docs/gst/tmpl/gsttypefindfactory.sgml:
913         * docs/gst/tmpl/gsttypes.sgml:
914         * docs/gst/tmpl/gsturihandler.sgml:
915         * docs/gst/tmpl/gsturitype.sgml:
916         * docs/gst/tmpl/gstutils.sgml:
917         * docs/gst/tmpl/gstvalue.sgml:
918         * docs/gst/tmpl/gstversion.sgml:
919         * docs/gst/tmpl/gstxml.sgml:
920         * docs/libs/tmpl/gstcontrol.sgml:
921         * docs/libs/tmpl/gstdataprotocol.sgml:
922         * docs/libs/tmpl/gstdparam.sgml:
923         * docs/libs/tmpl/gstdplinint.sgml:
924         * docs/libs/tmpl/gstdpman.sgml:
925         * docs/libs/tmpl/gstdpsmooth.sgml:
926         * docs/libs/tmpl/gstgetbits.sgml:
927         * docs/libs/tmpl/gstunitconvert.sgml:
928         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
929         (gst_push_src_base_init), (gst_push_src_class_init),
930         (gst_push_src_init), (gst_push_src_create):
931         * gst/base/gstpushsrc.h:
932         * gst/elements/gstelements.c:
933         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
934         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
935         (gst_fake_sink_init), (gst_fake_sink_set_property),
936         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
937         (gst_fake_sink_event), (gst_fake_sink_preroll),
938         (gst_fake_sink_render), (gst_fake_sink_change_state):
939         * gst/elements/gstfakesink.h:
940         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
941         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
942         (gst_fake_src_base_init), (gst_fake_src_class_init),
943         (gst_fake_src_init), (gst_fake_src_event_handler),
944         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
945         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
946         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
947         (gst_fake_src_create_buffer), (gst_fake_src_create),
948         (gst_fake_src_start), (gst_fake_src_stop):
949         * gst/elements/gstfakesrc.h:
950         * gst/elements/gstfilesink.c: (_do_init),
951         (gst_file_sink_base_init), (gst_file_sink_class_init),
952         (gst_file_sink_init), (gst_file_sink_dispose),
953         (gst_file_sink_set_location), (gst_file_sink_set_property),
954         (gst_file_sink_get_property), (gst_file_sink_open_file),
955         (gst_file_sink_close_file), (gst_file_sink_query),
956         (gst_file_sink_event), (gst_file_sink_render),
957         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
958         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
959         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
960         * gst/elements/gstfilesink.h:
961         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
962         (gst_file_src_class_init), (gst_file_src_init),
963         (gst_file_src_finalize), (gst_file_src_set_location),
964         (gst_file_src_set_property), (gst_file_src_get_property),
965         (gst_file_src_map_region), (gst_file_src_map_small_region),
966         (gst_file_src_create_mmap), (gst_file_src_create_read),
967         (gst_file_src_create), (gst_file_src_is_seekable),
968         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
969         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
970         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
971         (gst_file_src_uri_handler_init):
972         * gst/elements/gstfilesrc.h:
973           more autistic cleanliness in functions/names/defines
974
975 2005-07-13  Andy Wingo  <wingo@pobox.com>
976
977         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
978         source couldn't negotiate.
979
980         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
981         connections again.
982
983         * gst/gstutils.h:
984         * gst/gstutils.c (gst_element_link_pads_filtered): New old
985         function. I am channeling Hades. Put your boots on suckers!!!
986
987 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
988
989         * testsuite/caps/Makefile.am:
990         * testsuite/caps/value_compare.c:
991         * testsuite/caps/value_intersect.c:
992         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
993           move two testsuite apps over to the check dir
994
995 2005-07-12  Wim Taymans  <wim@fluendo.com>
996
997         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
998         Added more debug info in the negotiate process.
999
1000         * gst/gstmessage.h:
1001         Prepare for segment playback.
1002
1003         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
1004         Better debugging.
1005
1006         * gst/gstutils.c:
1007         Some more docs.
1008
1009         * tools/gst-launch.c: (main):
1010         NULL pipeline on errors.
1011
1012 2005-07-12  Andy Wingo  <wingo@pobox.com>
1013
1014         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
1015         not it comes from a malloc region. Make sure our copy gets freed.
1016
1017 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1018
1019         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
1020         * check/gst/gstmessage.c: (GST_START_TEST):
1021         * check/gst/gststructure.c: (GST_START_TEST),
1022         (gst_structure_suite), (main):
1023           more testing
1024         * gst/gstelement.c: (gst_element_message_full):
1025           clean up GError and debug string now that they get copied
1026         * gst/gstmessage.c: (gst_message_new_error),
1027         (gst_message_new_warning), (gst_message_parse_error),
1028         (gst_message_parse_warning):
1029           use GST_TYPE_G_ERROR for structure_new, and take copies of
1030           arguments, so that we don't mess up refcounting
1031
1032 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1033
1034         * check/Makefile.am:
1035           add per-test valgrind targets
1036         * check/gst-libs/gdp.c: (GST_START_TEST),
1037         (gst_data_protocol_suite), (main):
1038           clean up
1039
1040 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1041
1042         * check/Makefile.am:
1043           instate more valgrindable tests
1044         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1045         (GST_START_TEST), (fakesrc_suite):
1046         * check/gst/gstpad.c: (GST_START_TEST):
1047         * check/gst/gststructure.c: (GST_START_TEST):
1048           fix test leaks
1049         * docs/gst/tmpl/gstminiobject.sgml:
1050         * gst/gstpad.c: (gst_pad_finalize):
1051           fix the static mutex leak
1052
1053 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1054
1055         * check/Makefile.am:
1056           add two more tests for valgrinding
1057         * check/gst/gstvalue.c: (GST_START_TEST):
1058           test refcount of deserialized buffer, found a leak
1059         * docs/gst/gstreamer-docs.sgml:
1060         * docs/gst/gstreamer-sections.txt:
1061         * docs/gst/gstreamer.types:
1062         * docs/gst/tmpl/gstminiobject.sgml:
1063           add miniobject to docs
1064         * gst/gstminiobject.c:
1065           add some docs
1066         * gst/gstvalue.c: (gst_value_deserialize_buffer),
1067         (gst_string_unwrap):
1068           fix a hard-to-find invalid write for one of the tests
1069           fix a leak for deserialized buffers
1070
1071 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1072
1073         * docs/pwg/advanced-events.xml:
1074         * docs/pwg/advanced-request.xml:
1075         * docs/pwg/advanced-scheduling.xml:
1076         * docs/pwg/appendix-porting.xml:
1077         * docs/pwg/building-boiler.xml:
1078         * docs/pwg/intro-preface.xml:
1079         * docs/pwg/other-ntoone.xml:
1080           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
1081           of example code and explanation for pad activation, loop() and
1082           getrange() functions and a bit more. Remove old comments pointing
1083           to loop-functions.
1084         * examples/pwg/Makefile.am:
1085           Add loop/getrange examples.
1086
1087 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1088
1089         * configure.ac:
1090           check for valgrind binary + some fixes
1091         * check/gst.supp:
1092           valgrind suppressions for the tests
1093         * check/Makefile.am:
1094           add a valgrind: target that valgrinds the unit tests
1095         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
1096         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
1097         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1098         * check/gst/gstghostpad.c:
1099           added some cleanup
1100         * check/gst/gstdata.c:
1101           removed
1102         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
1103         (thread_unref), (gst_mini_object_suite), (main):
1104           added
1105         * gst/gst.c: (gst_deinit):
1106         * gst/gst.h:
1107           add a method to clean up.
1108         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1109         (gst_system_clock_obtain):
1110           allow for disposing the system clock.
1111         * tools/gst-launch.c: (main):
1112           deinit
1113
1114 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1115
1116         * docs/gst/tmpl/gstbasesrc.sgml:
1117         * docs/gst/tmpl/gstfakesrc.sgml:
1118         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1119         (gst_base_src_init), (gst_base_src_set_property),
1120         (gst_base_src_get_property), (gst_base_src_get_range),
1121         (gst_base_src_start):
1122         * gst/base/gstbasesrc.h:
1123           add num-buffers property
1124         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1125         (gst_fakesrc_init), (gst_fakesrc_set_property),
1126         (gst_fakesrc_get_property), (gst_fakesrc_create),
1127         (gst_fakesrc_start):
1128           remove num-buffers property
1129
1130 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1131
1132         * docs/gst/gstreamer-sections.txt:
1133         * docs/gst/tmpl/gstbasesink.sgml:
1134         * docs/gst/tmpl/gstbasesrc.sgml:
1135         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
1136         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
1137         (gst_base_sink_finalize), (gst_base_sink_set_clock),
1138         (gst_base_sink_set_property), (gst_base_sink_get_property),
1139         (gst_base_sink_handle_object), (gst_base_sink_event),
1140         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
1141         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
1142         (gst_base_sink_loop), (gst_base_sink_deactivate),
1143         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
1144         (gst_base_sink_change_state):
1145         * gst/base/gstbasesink.h:
1146         * gst/base/gstbasesrc.h:
1147         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
1148         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
1149         (gst_filesink_init):
1150           more macro splitting
1151
1152 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1153
1154         * gst/gstelement.c: (gst_element_get_bus):
1155           add debug
1156         * tools/gst-launch.c: (check_intr), (event_loop):
1157           fix bus leaks
1158
1159 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1160
1161         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
1162           fix a caps leak
1163
1164 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1165
1166         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1167         (gst_base_src_finalize):
1168           add finalize method and clean up properly
1169         * gst/gstpipeline.c: (gst_pipeline_dispose):
1170           add debug
1171
1172 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1173
1174         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
1175         (gst_bin_suite):
1176           add more things to check
1177         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
1178         * gst/gstelement.c:
1179           more debug
1180
1181 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1182
1183         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1184         (GST_START_TEST), (fakesrc_suite):
1185         * check/gst-libs/gdp.c: (GST_START_TEST):
1186         * check/gst/gst.c: (GST_START_TEST):
1187         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
1188         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1189         * check/gst/gstbus.c: (GST_START_TEST):
1190         * check/gst/gstcaps.c: (GST_START_TEST):
1191         * check/gst/gstdata.c: (GST_START_TEST):
1192         * check/gst/gstelement.c: (GST_START_TEST):
1193         * check/gst/gstghostpad.c: (GST_START_TEST):
1194         * check/gst/gstiterator.c: (GST_START_TEST):
1195         * check/gst/gstmessage.c: (GST_START_TEST):
1196         * check/gst/gstobject.c: (GST_START_TEST):
1197         * check/gst/gstpad.c: (GST_START_TEST):
1198         * check/gst/gststructure.c: (GST_START_TEST):
1199         * check/gst/gstsystemclock.c: (GST_START_TEST),
1200         (gst_systemclock_suite):
1201         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
1202         * check/gst/gstvalue.c: (GST_START_TEST):
1203         * check/pipelines/cleanup.c: (GST_START_TEST):
1204         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
1205         * check/states/sinks.c: (GST_START_TEST):
1206         * check/gstcheck.c: (gst_check_init):
1207         * check/gstcheck.h:
1208           add debugging category
1209           use GST_START_TEST now, so we add a debug line
1210
1211 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1212
1213         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
1214           add test for state change message on a bin
1215         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
1216           add another test
1217         * gst/gstbin.c: (gst_bin_init):
1218         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
1219         * gst/gstelement.c: (gst_element_post_message),
1220         (gst_element_set_state):
1221         * gst/gstelementfactory.c: (gst_element_factory_create):
1222         * gst/gstmessage.c: (gst_message_new):
1223         * gst/gstscheduler.c:
1224           various debugging additions and cleanups
1225
1226 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1227
1228         * check/Makefile.am:
1229         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
1230         (main):
1231           adding tests for elements
1232         * gst/gstelement.c: (gst_element_dispose):
1233
1234 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1235
1236         * gst/registries/gstlibxmlregistry.c: (load_feature):
1237           plug more leaks.  A simple gst_init() now is leakfree, yay.
1238
1239 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1240
1241         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
1242         (gst_xml_registry_load):
1243           plug another memleak
1244
1245 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1246
1247         * configure.ac:
1248           use GST_SET_ERROR_CFLAGS
1249         * docs/faq/cvs.xml:
1250           change to ERROR_CFLAGS
1251
1252 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1253
1254         * configure.ac:
1255           make GST_ERROR_CFLAGS overridable and re-enable Werror
1256         * docs/faq/cvs.xml:
1257           add a note about error CFLAGS
1258         * docs/gst/tmpl/gstfakesrc.sgml:
1259         * gst/elements/gstfakesrc.c:
1260           comment out some unused code
1261         * gst/gst.c: (split_and_iterate):
1262         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
1263         (load_feature):
1264           plug some memleaks
1265
1266 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1267
1268         * common/Makefile.am:
1269         * common/gtk-doc.mak:
1270         * docs/gst/Makefile.am:
1271           factor out gtk-doc.mak
1272
1273 2005-07-07  Wim Taymans  <wim@fluendo.com>
1274
1275         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
1276         (gst_thread_scheduler_dispose):
1277         Unlock the STREAM_LOCK completely.
1278
1279 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1280
1281         * check/Makefile.am:
1282         * check/elements/.cvsignore:
1283         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1284         (START_TEST), (fakesrc_suite), (main):
1285         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1286         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
1287         (gst_fakesrc_create), (gst_fakesrc_start):
1288         * gst/elements/gstfakesrc.h:
1289           adding a first element test
1290
1291 2005-07-07  Andy Wingo  <wingo@pobox.com>
1292
1293         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
1294         debug message.
1295
1296 2005-07-07  Wim Taymans  <wim@fluendo.com>
1297
1298         * gst/gstquery.c:
1299         * gst/gstquery.h:
1300         Remove old types
1301
1302 2005-07-07  Wim Taymans  <wim@fluendo.com>
1303
1304         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
1305         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
1306         Allow subclasses to implement their own negotiation.
1307
1308 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1309
1310         * docs/design/part-gstbin.txt:
1311         * docs/design/part-gstpipeline.txt:
1312           Update design notes to reflect the movement of
1313           responsibility for bus handling from GstPipeline to
1314           GstBin
1315
1316 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1317
1318         * configure.ac:
1319           Remove unnecessary queue2/3/4 examples.
1320
1321 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1322
1323         * examples/Makefile.am:
1324         * examples/helloworld/helloworld.c: (event_loop), (main):
1325         * examples/queue/queue.c: (event_loop), (main):
1326         * examples/queue2/queue2.c: (main):
1327           Update a couple of the examples to work again.
1328
1329         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1330         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
1331          Spelling corrections and extra debug.
1332         
1333         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
1334         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
1335         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
1336         * gst/gstbin.h:
1337         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
1338         (gst_pipeline_change_state):
1339         * gst/gstpipeline.h:
1340           Move the bus handler for children to the GstBin, and create a
1341           separate bus for receiving messages from children to the one the
1342           bus sends 'upwards' on.
1343
1344 2005-07-06  Wim Taymans  <wim@fluendo.com>
1345
1346         * gst/base/README:
1347         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1348         (gst_base_sink_handle_object), (gst_base_sink_loop),
1349         (gst_base_sink_change_state):
1350         * gst/base/gstbasesink.h:
1351         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1352         (gst_base_src_init), (gst_base_src_setcaps),
1353         (gst_base_src_getcaps), (gst_base_src_loop),
1354         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
1355         (gst_base_src_start), (gst_base_src_change_state):
1356         * gst/base/gstbasesrc.h:
1357         Make basesrc negotiate.
1358         Handle the case where preroll fails in basesink.
1359         Update README.
1360
1361 2005-07-06  Wim Taymans  <wim@fluendo.com>
1362
1363         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
1364         Implement the fixate function.
1365         Clean up acceptcaps.
1366
1367 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1368
1369         * docs/pwg/building-filterfactory.xml:
1370         * docs/pwg/pwg.xml:
1371           Remove never-written filter-factory chapter; I'll add the various
1372           base classes to part 4 ("other element types") later on.
1373
1374 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1375
1376         * docs/pwg/advanced-negotiation.xml:
1377         * docs/pwg/building-boiler.xml:
1378         * docs/pwg/building-pads.xml:
1379         * docs/pwg/pwg.xml:
1380         * examples/pwg/Makefile.am:
1381           Add a chapter on caps negotiation, simplify the original code
1382           samples a bit w.r.t. caps negotiation, add link to the advanced
1383           section. Add a bunch of examples showing different use cases of
1384           different types of caps negotiation. Upstream renegotiation isn't
1385           fully documented yet since nobody knows how that works.
1386
1387 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
1388
1389         * check/gst/gstpad.c:
1390         * check/gstcheck.c:
1391         * gst/gstpad.c: (gst_pad_get_internal_links_default):
1392           if pad has no parent, return NULL as list of internal links
1393
1394 2005-07-05  Andy Wingo  <wingo@pobox.com>
1395
1396         * gst/elements/gstfilesrc.c:
1397         * gst/elements/gstfakesrc.c: 
1398         * gst/base/gstpushsrc.c:
1399         * gst/base/gstbasesrc.h: 
1400         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
1401         
1402 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
1403
1404         * Makefile.am:
1405           better report generation target (lcov needs a patch)
1406
1407 2005-07-05  Andy Wingo  <wingo@pobox.com>
1408
1409         * gst/elements, testsuite: Null if we got it...
1410
1411 2005-07-05  Wim Taymans  <wim@fluendo.com>
1412
1413         * configure.ac:
1414         * libs/gst/dataprotocol/Makefile.am:
1415         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
1416         * libs/gst/dataprotocol/dataprotocol.h:
1417         * pkgconfig/Makefile.am:
1418         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
1419         * pkgconfig/gstreamer-dataprotocol.pc.in:
1420         Ported dataprotol to 0.9. 
1421         Added pkgconfig files.
1422
1423 2005-07-05  Andy Wingo  <wingo@pobox.com>
1424
1425         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
1426         Default to returning TRUE for the case when tranform_caps returns
1427         a fixed caps, like for identity or volume.
1428
1429         * check/gst/gstbus.c (pound_bus_with_messages): 
1430         * check/gst/gstmessage.c (START_TEST): 
1431         * check/pipelines/simple_launch_lines.c (got_handoff): Application
1432         message API change.
1433
1434         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
1435         logic weaks here: always run transform_caps, trying passthrough
1436         operation only if the original caps intersects with the transform.
1437
1438         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
1439         source and sink caps.
1440
1441         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
1442         Intersect the peer caps with the pad template before going into
1443         transform_caps.
1444         (gst_base_transform_transform_caps): More debugging.
1445
1446         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
1447         src argument.
1448
1449 2005-07-04  Edward Hervey  <edward@fluendo.com>
1450
1451         * gst/gstutils.c:
1452         * gst/gstutils.h:
1453         (gst_pad_add_*_probe): now returns the signal id for better wrapping
1454         in bindings.
1455
1456 2005-07-04  Andy Wingo  <wingo@pobox.com>
1457
1458         * check/gst/gstpad.c: Only set explicit caps on pads.
1459
1460 2005-07-01  Andy Wingo  <wingo@pobox.com>
1461
1462         * tests/network-clock.scm: Commentary update.
1463
1464         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
1465         Didn't really make sense, not implementable with basetransform,
1466         etc.
1467         (gst_identity_transform): Unref inbuf via make_writable. Feeble
1468         attempt at implementing the sync property, needs an unlock method.
1469
1470         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
1471         New func, by default returns the same caps (the identity
1472         transformation).
1473         (gst_base_transform_getcaps): Uses transform_caps to return
1474         something sensible.
1475         (gst_base_transform_setcaps): Complicated logic to get caps on
1476         both pads, even if they are different, and to call set_caps once
1477         for every time both pads get their caps set.
1478         (gst_base_transform_handle_buffer): Give the ref to the transform
1479         function. Allows in-place modification of the buffer.
1480
1481         * gst/base/gstbasetransform.h (transform_caps): New class method.
1482         Given caps on one side, what can I do on the other.
1483         (set_caps): Take two caps, one for each side of the element.
1484
1485         * gst/gstpad.h:
1486         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
1487         caps in place. This is safe because we can check the mutability of
1488         the caps, and a good idea because fixate functions are just called
1489         as a matter of last resort. (Not actually implemented.)
1490         (gst_pad_set_caps): If the caps we're setting is actually the same
1491         as the existing pad caps, just update the pointer without calling
1492         setcaps. Assert that caps is either NULL or fixed, as per the
1493         docs.
1494
1495         * gst/gstghostpad.c: Update for fixate changes.
1496
1497 2005-07-02  Andy Wingo  <wingo@pobox.com>
1498
1499         * gst/gstcaps.c:
1500         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
1501         two refcounts makes it immutable, which is enough. Doc more.
1502
1503 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
1504
1505         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
1506           Put the mini_object into GValue as a mini_object,
1507           not a gpointer, since that's how we declared
1508           the signal.
1509
1510 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1511
1512         * examples/pwg/Makefile.am:
1513           Fix buildbot again.
1514
1515 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1516
1517         * docs/pwg/building-testapp.xml:
1518           Add extra check.
1519         * examples/pwg/Makefile.am:
1520           Fix buildbot.
1521
1522 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1523
1524         * configure.ac:
1525         * examples/Makefile.am:
1526         * examples/pwg/Makefile.am:
1527         * examples/pwg/extract.pl:
1528           Enable building the PWG examples.
1529         * docs/pwg/advanced-interfaces.xml:
1530           Add URI interface stub.
1531         * docs/pwg/advanced-types.xml:
1532         * docs/pwg/other-autoplugger.xml:
1533         * docs/pwg/appendix-porting.xml:
1534         * docs/pwg/pwg.xml:
1535           Add porting guide (mostly stubs), remove autoplugging (see ADM).
1536         * docs/pwg/building-boiler.xml:
1537         * docs/pwg/building-chainfn.xml:
1538         * docs/pwg/building-pads.xml:
1539         * docs/pwg/building-props.xml:
1540         * docs/pwg/building-state.xml:
1541         * docs/pwg/building-testapp.xml:
1542           Update the building-*.xml parts for 0.9 changes. All examples
1543           code blocks compile in examples/pwg/*.
1544
1545 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1546
1547         * docs/manual/advanced-autoplugging.xml:
1548         * docs/manual/appendix-checklist.xml:
1549         * docs/manual/appendix-integration.xml:
1550         * docs/manual/highlevel-components.xml:
1551           Fix playbin/decodebin examples, update docs a bit, mention bus
1552           instead of signals in various places, mention kmplayer and
1553           kaffeine since they have a working GStreamer backend in the KDE
1554           section.
1555
1556 2005-06-30  Wim Taymans  <wim@fluendo.com>
1557
1558         * CHANGES-0.9:
1559         * docs/design/draft-ghostpads.txt:
1560         * docs/design/draft-push-pull.txt:
1561         * docs/design/draft-query.txt:
1562         * docs/design/part-TODO.txt:
1563         * docs/design/part-query.txt:
1564         Added CHANGES-0.9 doc, updated status of other docs.
1565         
1566         * gst/gstquery.h:
1567         Remove "hmm" macro
1568
1569 2005-06-30  Wim Taymans  <wim@fluendo.com>
1570
1571         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1572         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
1573         (gst_base_sink_change_state):
1574         * gst/base/gstbasesink.h:
1575         Some tweaks, only EOS and a buffer complete a preroll.
1576
1577 2005-06-30  Andy Wingo  <wingo@pobox.com>
1578
1579         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
1580         activate_push down to the internal pad as well.
1581
1582 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
1583
1584         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1585
1586         * gst/gsttaginterface.c:
1587           Some documentation fixes (#307394 and #307397).
1588
1589 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
1590
1591         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1592
1593         * gst/gstvalue.c: (gst_value_intersect_list):
1594           Fix memleak (#309125).
1595
1596 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1597
1598         * docs/manual/advanced-dataaccess.xml:
1599           Fix fakesrc example to compile; doesn't work, bug somewhere...?
1600         * docs/manual/basics-pads.xml:
1601           Add reference for filtered caps to above chapter.
1602
1603 2005-06-30  Wim Taymans  <wim@fluendo.com>
1604
1605         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
1606         (gst_bin_change_state):
1607         Probes are gone.
1608         Lame attempt at making the state change function a bit
1609         more readable.
1610
1611 2005-06-30  Wim Taymans  <wim@fluendo.com>
1612
1613         * docs/design/part-clocks.txt:
1614         * docs/design/part-element-sink.txt:
1615         * docs/design/part-events.txt:
1616         * docs/design/part-preroll.txt:
1617         * docs/design/part-states.txt:
1618         Some more tweeks and additions to the docs.
1619
1620 2005-06-30  Wim Taymans  <wim@fluendo.com>
1621
1622         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1623         (default_have_data), (gst_pad_class_init), (gst_pad_init),
1624         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1625         (gst_pad_check_pull_range), (gst_pad_get_range),
1626         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
1627         * gst/gstpad.h:
1628         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
1629         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1630         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1631         (gst_pad_remove_buffer_probe):
1632         Removed atomic operations, use existing LOCK.
1633         Move exception handling out of main code path.
1634
1635 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1636
1637         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1638         (silly_return_true_function), (gst_pad_class_init),
1639         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1640         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
1641         (gst_pad_send_event):
1642           Fix accumulator, add default value by using _emitv() instead
1643           of _emit() for signal emission.
1644
1645 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1646
1647         * docs/manual/advanced-dataaccess.xml:
1648         * examples/manual/Makefile.am:
1649           Add probe example.
1650         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
1651           Make work (??).
1652
1653 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
1654
1655         * gst/elements/gstfilesink.c: (gst_filesink_render):
1656           Simplify code so that we don't have to handle short
1657           writes and return GST_FLOW_ERROR if an error occured.
1658
1659 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1660
1661         * docs/gst/gstreamer-docs.sgml:
1662           Remove probes more.
1663
1664 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1665
1666         * docs/gst/gstreamer-sections.txt:
1667         * docs/gst/tmpl/gstpad.sgml:
1668         * docs/gst/tmpl/gstprobe.sgml:
1669         * gst/Makefile.am:
1670         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1671         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
1672         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
1673         (gst_pad_push_event), (gst_pad_send_event):
1674         * gst/gstpad.h:
1675         * gst/gstutils.c: (gst_pad_add_data_probe),
1676         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1677         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1678         (gst_pad_remove_buffer_probe):
1679         * gst/gstutils.h:
1680           Remove old probes, add new g-signal-based probes and some utility
1681           functions.
1682
1683 2005-06-29  Edward Hervey  <edward@fluendo.com>
1684
1685         * gst/gstelementfactory.c:
1686         * gst/gstutils.h:
1687         * gst/gstutils.c:
1688         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
1689         the definition to the header file.
1690
1691 2005-06-29  Andy Wingo  <wingo@pobox.com>
1692
1693         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
1694         plugins from the source directory.
1695
1696 2005-06-29  Wim Taymans  <wim@fluendo.com>
1697
1698         * docs/gst/tmpl/gstbuffer.sgml:
1699         * docs/gst/tmpl/gstclock.sgml:
1700         Some fixings for blantently wrong text.
1701
1702 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1703
1704         * check/Makefile.am:
1705         * gst/gst.c: (add_path_func), (init_pre):
1706         * gst/gstregistry.c: (gst_registry_add_path):
1707           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
1708           only scan the GST_PLUGIN_PATH locations, and not add
1709           system locations
1710
1711 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1712
1713         * docs/gst/gstreamer-sections.txt:
1714         * docs/gst/tmpl/gstbasesrc.sgml:
1715         * gst/gstelement.c:
1716         * gst/gstelement.h:
1717         * gst/gstevent.c:
1718         * gst/gstutils.c:
1719           doc fixes
1720
1721 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1722
1723         * docs/manual/advanced-autoplugging.xml:
1724           Fix autoplugging example.
1725
1726 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1727
1728         * docs/manual/advanced-autoplugging.xml:
1729         * docs/manual/mime-world.fig:
1730           Try to get autoplugging working, fix type detection. Fix text
1731           in hello-world image.
1732
1733 2005-06-29  Wim Taymans  <wim@fluendo.com>
1734
1735         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1736         (gst_base_sink_change_state):
1737         Small debug line.
1738
1739         * gst/gstclock.h:
1740         map SIGNAL and BROADCAST to the right function.
1741
1742         * gst/gstobject.h:
1743         Remove redundant braces.
1744
1745         * gst/gstpad.c: (gst_pad_set_caps):
1746         Don't call setcaps function when reseting caps to NULL.
1747
1748         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1749         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
1750         (gst_system_clock_id_unschedule):
1751         Use BROADCAST as this is what we do.
1752
1753 2005-06-29  Wim Taymans  <wim@fluendo.com>
1754
1755         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
1756         We are actually prerolling before commiting the state
1757         change. 
1758
1759 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1760
1761         * docs/manual/advanced-clocks.xml:
1762         * docs/manual/advanced-interfaces.xml:
1763         * docs/manual/advanced-metadata.xml:
1764         * docs/manual/advanced-position.xml:
1765         * docs/manual/advanced-schedulers.xml:
1766         * docs/manual/advanced-threads.xml:
1767         * docs/manual/appendix-porting.xml:
1768         * docs/manual/basics-bins.xml:
1769         * docs/manual/basics-bus.xml:
1770         * docs/manual/basics-elements.xml:
1771         * docs/manual/basics-helloworld.xml:
1772         * docs/manual/basics-pads.xml:
1773         * docs/manual/highlevel-components.xml:
1774         * docs/manual/manual.xml:
1775         * docs/manual/thread.fig:
1776           Update (until threads/scheduling) Application Development Manual;
1777           remove GstThread, add GstBus, add simple porting checklist, add
1778           documentation for tag writing, clocks, make all examples until this
1779           part compile and run.
1780         * examples/manual/Makefile.am:
1781           Update from changes to Application Development Manual; add bus
1782           example, remove thread example.
1783
1784 2005-06-28  Wim Taymans  <wim@fluendo.com>
1785
1786         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
1787         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
1788         (gst_bus_source_dispatch):
1789         Add debugging messages.
1790         Make internal methods static.
1791         Handle the case where the bus is flushed in the handler.
1792         
1793         * gst/gstelement.c: (gst_element_get_bus):
1794         Fix refcount in _get_bus();
1795
1796         * gst/gstpipeline.c: (gst_pipeline_change_state),
1797         (gst_pipeline_get_clock_func):
1798         Clock refcounting fixes.
1799         Handle the case where preroll timed out more gracefully.
1800         
1801         * gst/gstsystemclock.c: (gst_system_clock_dispose):
1802         Clean up the internal thread in dispose. This is needed
1803         for subclasses that actually get disposed.
1804         
1805         * gst/schedulers/threadscheduler.c:
1806         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
1807         (gst_thread_scheduler_dispose):
1808         Free thread pool in dispose.
1809
1810 2005-06-28  Andy Wingo  <wingo@pobox.com>
1811
1812         * tests/network-clock-utils.scm (debug, print-event): New utils.
1813
1814         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
1815         (*packet-loss*): Unified loss probability.
1816         (network-time): Report out-of-band events.
1817
1818         * tests/plot-data: Add support for out-of-band events. Hack it
1819         into this script instead of passing it down the pipe; should fix
1820         this later.
1821
1822 2005-06-28  Wim Taymans  <wim@fluendo.com>
1823
1824         * docs/gst/gstreamer.types:
1825         * docs/gst/tmpl/gstbasesrc.sgml:
1826         * docs/gst/tmpl/gstpad.sgml:
1827         Docs fixes.
1828
1829 2005-06-28  Wim Taymans  <wim@fluendo.com>
1830
1831         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1832         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
1833         (gst_proxy_pad_do_fixatecaps):
1834         Correctly proxy the check_pull_range function.
1835
1836 2005-06-28  Andy Wingo  <wingo@pobox.com>
1837
1838         * tests/network-clock.scm: Removed need for slib.
1839         
1840 2005-06-28  Wim Taymans  <wim@fluendo.com>
1841
1842         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
1843         (gst_basesink_preroll_queue_flush):
1844         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
1845         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
1846         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1847         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
1848         (gst_proxy_pad_set_property):
1849         * gst/gstpad.c:
1850         * gst/gstpad.h:
1851         * gst/gstqueue.c: (gst_queue_init):
1852         The deprecated pad loop function is removed now.
1853
1854 2005-06-28  Andy Wingo  <wingo@pobox.com>
1855
1856         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
1857         New parameters, simulate network packet loss.
1858
1859         * tests/network-clock-utils.scm: Initialize the RNG.
1860
1861 2005-06-28  Wim Taymans  <wim@fluendo.com>
1862
1863         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
1864         (gst_basesink_event), (gst_basesink_deactivate):
1865         Flushing the preroll queue always needs to unlock the waiters.
1866
1867 2005-06-28  Edward Hervey  <edward@fluendo.com>
1868
1869         * gst/gstpipeline.c: (gst_pipeline_send_event): 
1870         Wheen a seek was successful on a pipeline, set the stream_time to the
1871         seek offset in order to have a synchronized stream_time.
1872
1873 2005-06-28  Wim Taymans  <wim@fluendo.com>
1874
1875         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1876         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
1877         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
1878         (gst_proxy_pad_do_fixatecaps):
1879         Call wrapper function instead of just calling the function
1880         pointers. This takes care of any locking and whatmore.
1881
1882 2005-06-28  Wim Taymans  <wim@fluendo.com>
1883
1884         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
1885         (gst_pad_pull_range):
1886         * gst/gstpad.h:
1887         CONNECTED -> LINKED.
1888
1889 2005-06-28  Andy Wingo  <wingo@pobox.com>
1890
1891         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
1892         source-munging commit!!!
1893
1894         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
1895         (gst_object_sink): Take gpointer arguments, not GstObject --
1896         avoids casts. Like GLib.
1897
1898         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
1899         activate.
1900
1901 2005-06-27  Andy Wingo  <wingo@pobox.com>
1902
1903         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
1904         remaining buffer.
1905
1906         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
1907         returns a sorted copy of the trace list.
1908         (gst_alloc_trace_print_live): New API, only prints traces with
1909         live objects. Sort the list.
1910         (gst_alloc_trace_print_all): Sort the list.
1911         (gst_alloc_trace_print): Align columns.
1912
1913         * gst/elements/gstttypefindelement.c:
1914         * gst/elements/gsttee.c:
1915         * gst/base/gstbasesrc.c:
1916         * gst/base/gstbasesink.c:
1917         * gst/base/gstbasetransform.c:
1918         * gst/gstqueue.c: Adapt for pad activation changes.
1919
1920         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
1921         sched.
1922         (gst_pipeline_dispose): Drop ref on sched.
1923
1924         * gst/gstpad.c (gst_pad_init): Set the default activate func.
1925         (gst_pad_activate_default): Push mode by default.
1926         (pre_activate_switch, post_activate_switch): New stubs, things to
1927         do before and after switching activation modes on pads.
1928         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
1929         the pad's activate function to choose which mode to activate.
1930         Shortcut on deactivation and call the right function directly.
1931         (gst_pad_activate_pull): New API, (de)activates a pad in pull
1932         mode.
1933         (gst_pad_activate_push): New API, same for push mode.
1934         (gst_pad_set_activate_function) 
1935         (gst_pad_set_activatepull_function) 
1936         (gst_pad_set_activatepush_function): Setters for new API.
1937
1938         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
1939         Trace all miniobjects.
1940         (gst_mini_object_make_writable): Unref the arg if we copy, like
1941         gst_caps_make_writable.
1942
1943         * gst/gstmessage.c (_gst_message_initialize): No trace init.
1944
1945         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
1946         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
1947         Adapt for new pad API.
1948
1949         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
1950
1951         * gst/gstelement.h:
1952         * gst/gstelement.c (gst_element_iterate_src_pads) 
1953         (gst_element_iterate_sink_pads): New API functions.
1954         
1955         * gst/gstelement.c (iterator_fold_with_resync): New utility,
1956         should fold into gstiterator.c in some form.
1957         (gst_element_pads_activate): Simplified via use of fold and
1958         delegation of decisions to gstpad->activate.
1959
1960         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
1961         help in debugging.
1962
1963         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
1964         class once in init, like gstmessage. Didn't run into this issue
1965         but it seems correct. Don't initialize a trace, gstminiobject does
1966         that.
1967
1968         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
1969         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
1970         to the bus.
1971         (assert_live_count): New util function, uses alloc traces to check
1972         cleanup.
1973
1974         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
1975         To be modified when unlink drops the internal pad.
1976
1977 2005-06-27  Wim Taymans  <wim@fluendo.com>
1978
1979         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
1980         (gst_bin_change_state):
1981         Cleanup the get_state() function a little, make sure it
1982         iterates the same set of elements.
1983         Added stub iterate_state_order().
1984
1985 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
1986
1987         * docs/gst/gstreamer-docs.sgml:
1988         * docs/gst/gstreamer-sections.txt:
1989         * docs/gst/gstreamer.types:
1990         * docs/gst/tmpl/gstbasesink.sgml:
1991         * docs/gst/tmpl/gstbasesrc.sgml:
1992         * docs/gst/tmpl/gstbasetransform.sgml:
1993         * docs/gst/tmpl/gstelement.sgml:
1994         * docs/gst/tmpl/gstiterator.sgml:
1995         * gst/base/gstbasesrc.c:
1996         * gst/base/gstbasesrc.h:
1997         * gst/base/gstbasetransform.h:
1998         * gst/gstelement.c:
1999         * gst/gstiterator.h:
2000           adding basetransform and iterator docs
2001
2002 2005-06-27  Andy Wingo  <wingo@pobox.com>
2003
2004         * docs/design/part-activation.txt: Notes on how activation should
2005         work -- not quite implemented yet.
2006
2007 2005-06-25  Wim Taymans  <wim@fluendo.com>
2008
2009         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
2010         At least get the chain function correct, needs more
2011         fixing.
2012
2013 2005-06-25  Wim Taymans  <wim@fluendo.com>
2014
2015         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2016         (gst_basesink_handle_object), (gst_basesink_event),
2017         (gst_basesink_do_sync), (gst_basesink_handle_event),
2018         (gst_basesink_change_state):
2019         * gst/gsttask.h:
2020         Right, two problems here: ghostpads don't take locks and
2021         glib _rec_mutex_lock_full() with depth==0 still locks.
2022         Catch illegal locking and g_warn them.
2023
2024 2005-06-25  Wim Taymans  <wim@fluendo.com>
2025
2026         * check/states/sinks.c: (START_TEST), (gst_object_suite):
2027         Have to check for completion now...
2028
2029 2005-06-25  Wim Taymans  <wim@fluendo.com>
2030
2031         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2032         (gst_basesink_handle_object), (gst_basesink_event),
2033         (gst_basesink_do_sync), (gst_basesink_handle_event),
2034         (gst_basesink_change_state):
2035         * gst/gstpad.h:
2036         Unlock STREAM_LOCK whatever the recursion was.
2037
2038 2005-06-25  Wim Taymans  <wim@fluendo.com>
2039
2040         * gst/base/gstbasesink.c: (gst_basesink_set_property),
2041         (gst_basesink_preroll_queue_empty),
2042         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
2043         (gst_basesink_event), (gst_basesink_do_sync),
2044         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
2045         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
2046         (gst_basesink_change_state):
2047         Reworked the base sink, handle event and buffer serialisation
2048         correctly and removed possible deadlock.
2049         Handle EOS correctly.
2050
2051 2005-06-25  Wim Taymans  <wim@fluendo.com>
2052
2053         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
2054         (gst_pipeline_change_state):
2055         * tools/gst-launch.c: (check_intr), (event_loop), (main):
2056         Allow elements to post EOS in the state change function.
2057         Fix up -launch, make it exit the poll loop when the
2058         pipeline actually changed state.
2059         Fix up warning parsing in -launch.
2060
2061 2005-06-25  Wim Taymans  <wim@fluendo.com>
2062
2063         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
2064         (gst_tee_sink_activate):
2065         Core takes STREAM_LOCK for us now.
2066
2067 2005-06-25  Wim Taymans  <wim@fluendo.com>
2068
2069         * gst/gstelement.c: (gst_element_get_state_func),
2070         (gst_element_set_state):
2071         * gst/gstelement.h:
2072         * gst/gstmessage.c: (gst_message_parse_error),
2073         (gst_message_parse_warning):
2074         Keep track of current target state while performing a state
2075         change so that subclasses can do something interesting.
2076         Fix parsing of warning/error messages when GError is NULL.
2077
2078 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
2079
2080         * docs/gst/Makefile.am:
2081         * docs/gst/gstreamer-docs.sgml:
2082         * docs/gst/gstreamer-sections.txt:
2083         * docs/gst/gstreamer.types:
2084         * docs/gst/tmpl/gstbasesink.sgml:
2085         * docs/gst/tmpl/gstbasesrc.sgml:
2086         * docs/gst/tmpl/gstbin.sgml:
2087         * docs/gst/tmpl/gstcompat.sgml:
2088         * docs/gst/tmpl/gstfakesink.sgml:
2089         * docs/gst/tmpl/gstfakesrc.sgml:
2090         * docs/gst/tmpl/gstfilesink.sgml:
2091         * docs/gst/tmpl/gstfilesrc.sgml:
2092         * docs/gst/tmpl/gstindex.sgml:
2093         * docs/manual/appendix-quotes.xml:
2094         * gst/base/gstbasesrc.h:
2095         * gst/elements/gstfakesrc.h:
2096         * gst/gstmessage.h:
2097           start pulling in base classes and elements in our docs
2098
2099 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
2100
2101         * docs/gst/Makefile.am:
2102         * docs/libs/Makefile.am:
2103           fixed make distcheck with gtk-doc 1.3
2104
2105 2005-06-23  Wim Taymans  <wim@fluendo.com>
2106
2107         * gst/gstelement.c: (gst_element_get_state_func),
2108         (gst_element_set_state), (gst_element_change_state):
2109         When the state did not change, also report NO_PREROLL
2110         when it matters.
2111
2112 2005-06-23  Wim Taymans  <wim@fluendo.com>
2113
2114         * gst/gstpad.c: (gst_pad_event_default):
2115         * gst/gstqueue.c: (gst_queue_loop):
2116         No unsafe task pausing please.
2117
2118 2005-06-23  Wim Taymans  <wim@fluendo.com>
2119
2120         * gst/schedulers/threadscheduler.c:
2121         (gst_thread_scheduler_task_start),
2122         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
2123         Ref the task before pushing it on the threadpool. This
2124         makes sure that we have a ref when the threadfunction is
2125         actually called.
2126
2127 2005-06-23  Andy Wingo  <wingo@pobox.com>
2128
2129         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
2130         offset is greater than the file's size.
2131
2132         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
2133         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
2134         * gst/gstobject.c (gst_object_class_init): Make the class lock
2135         recursive. Wim won't let me drop deep_notify. Decodebin works
2136         again, whoopdy doo.
2137
2138         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
2139         internal pad, and hacks accordingly. Doesn't do it on the target
2140         pad because we change its caps. Probably catches all cases of
2141         interest tho.
2142         (gst_ghost_pad_set_property): Connect to notify::caps as
2143         appropritate.
2144
2145         * tests/network-clock.scm (plot-simulation): Pipe data to the
2146         elite python skript.
2147
2148         * tests/network-clock-utils.scm (define-parameter): New macro,
2149         defines a parameter that can be set via the command line.
2150         (set-parameter!, parse-parameter-arguments): Command line args
2151         parser.
2152
2153         * tests/plot-data: Simple matplotlib-based plotter, takes input on
2154         stdin.
2155
2156 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
2157
2158         * gst/elements/gsttypefindelement.c:
2159         (gst_type_find_element_handle_event):
2160           Don't restart typefinding on a discont.
2161         * gst/gstelement.c: (gst_element_set_state):
2162           Debug spelling fix.
2163         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
2164           Allow changing mode of an active pad.
2165           Debug output fixes.
2166         * gst/registries/gstlibxmlregistry.c: (load_feature):
2167           Don't cast a static pad template to a normal pad template.
2168
2169 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
2170
2171         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2172         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2173           remove gst_strtoll completely, since it didn't actually do
2174           anything more than what g_ascii_strtoull already does.
2175           check for range errors when deserializing
2176           do a cast for the unsigned cases; but further fixing needs
2177           a decision on what the interpretation of "(int)" and
2178           deserialization should be for values that fall outside the
2179           type's boundaries (ie, refuse, or interpret as casting)
2180
2181 2005-06-23  Wim Taymans  <wim@fluendo.com>
2182
2183         * check/Makefile.am:
2184         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
2185         * docs/design/part-live-source.txt:
2186         * docs/design/part-states.txt:
2187         * gst/base/gstbasesrc.c: (gst_basesrc_init),
2188         (gst_basesrc_set_live), (gst_basesrc_is_live),
2189         (gst_basesrc_get_range), (gst_basesrc_activate),
2190         (gst_basesrc_change_state):
2191         * gst/base/gstbasesrc.h:
2192         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2193         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
2194         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
2195         * gst/gstelement.c: (gst_element_get_state_func),
2196         (gst_element_set_state):
2197         * gst/gstelement.h:
2198         * gst/gsttypes.h:
2199         * tools/gst-launch.c: (event_loop), (main):
2200         Added support for live sources and other elements that
2201         cannot do preroll.
2202         Updated design docs, added live-source design doc.
2203         Implemented live source functionality in basesrc
2204         Fix error condition in _bin_get_state()
2205         Implement live source handling in -launch.
2206         Added check for live sources.
2207         Fixed case in GstBin where elements were changed state
2208         multiple times.
2209
2210
2211 2005-06-23  Andy Wingo  <wingo@pobox.com>
2212
2213         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
2214         borken refcounting.
2215
2216         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
2217         gst_caps_replace takes care of this for us.
2218
2219         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
2220         gst_pad_set_caps on the target, not just its setcaps() function.
2221
2222         * tests/network-clock.scm: 
2223         * tests/network-clock-utils.scm: A network clock simulator.
2224         Something of an algorithmic testbed before doing something in C.
2225
2226 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2227
2228         * check/Makefile.am:
2229         * check/gst/capslist.h:
2230           copy over from 0.8, and add two with bitmasks specified with
2231           (int) 0xFF...
2232         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2233           add test to parse everything from capslist.h
2234         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
2235         (main):
2236           add test for structure deserialization
2237         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2238           add tests for deserialization of strings to int types
2239         * gst/gststructure.c: (gst_structure_nth_field_name):
2240         * gst/gststructure.h:
2241           add a way to get the name of a field referenced by index
2242         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2243           instead of checking if the resulting long long lies between
2244           min and max, we check if the long long would fit into
2245           a number of bytes for the final type.
2246           This fixes cases where a string represents 2^32 - 1, which
2247           when cast to int would be the (valid) -1, but is bigger than
2248           G_MAXINT
2249
2250 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2251
2252         * gst/parse/grammar.y:
2253           add a log line for type deserialization
2254
2255 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2256
2257         * check/gst/gstvalue.c: (START_TEST):
2258         * gst/gstvalue.c: (gst_value_deserialize):
2259           return long long, not int, so gint64 deserialization actually
2260           works.  Is there any flag that makes the compiler check this ?
2261           Fixes #308559
2262
2263 2005-06-22  Wim Taymans  <wim@fluendo.com>
2264
2265         * gst/gstbuffer.h:
2266         Added convenience macros for setting buffers in GValue.
2267
2268 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2269
2270         * check/gst/.cvsignore:
2271         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2272           add a test deserializing int64, and comment part out because
2273           it fails, yay !
2274
2275 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2276
2277         * check/Makefile.am:
2278         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
2279         * testsuite/Makefile.am:
2280         * testsuite/caps/Makefile.am:
2281         * testsuite/caps/value_serialize.c:
2282         * testsuite/test_gst_init.c:
2283           move a value_serialize test over
2284
2285 2005-06-20  Wim Taymans  <wim@fluendo.com>
2286
2287         * gst/gstpad.c:
2288         Small doc updates.
2289         
2290         * gst/gstvalue.c: (gst_value_compare_buffer),
2291         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
2292         (gst_value_compare_flags), (gst_value_serialize_flags),
2293         (gst_value_deserialize_flags), (_gst_value_initialize):
2294         Fix serialisation of buffers, they are not boxed types anymore
2295
2296 2005-06-20  Wim Taymans  <wim@fluendo.com>
2297
2298         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2299         Testcase to show error in buffer-on-caps serialisation.
2300
2301 2005-06-20  Andy Wingo  <wingo@pobox.com>
2302
2303         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
2304         will be adding to later.
2305
2306         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
2307         if its socks fill with rocks.
2308         (gst_system_clock_obtain): Set the name on object construction.
2309         Avoid double-checked locking.
2310
2311 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
2312
2313         * gst/gsturi.c: (gst_element_make_from_uri):
2314           Fix potential endless loop.
2315
2316 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2317
2318         * check/Makefile.am:
2319           add gsttag
2320         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
2321         (main):
2322           move over from testsuite dir and clean up
2323         * configure.ac:
2324         * gst/gsttag.c:
2325         * testsuite/Makefile.am:
2326         * testsuite/tags/.cvsignore:
2327         * testsuite/tags/Makefile.am:
2328         * testsuite/tags/merge.c:
2329           remove testsuite/tags
2330
2331 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2332
2333         * docs/gst/gstreamer-sections.txt:
2334         * docs/gst/tmpl/gstenumtypes.sgml:
2335         * win32/gstenumtypes.c:
2336           clean up documentation build a little
2337
2338 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2339
2340         * check/gstcheck.h:
2341           add macros for checking refcounts on objects and caps
2342         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
2343           add some more unit tests
2344         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
2345         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
2346           fix leaked refcounts (I hope :)) so unittest works
2347         * gst/gstpad.h:
2348           whitespace removal
2349
2350 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2351
2352         * configure.ac: back to HEAD
2353
2354 === release 0.9.1 ===
2355
2356 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2357
2358         * NEWS:
2359         * RELEASE:
2360           updated
2361
2362 2005-06-17  Andy Wingo  <wingo@pobox.com>
2363
2364         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
2365         assert; it's always possible that the pad gets deactivated in
2366         between the checks in gstpad.c and the implementation. Rely on
2367         finish_preroll() to return a FLUSHING or similar instead of on the
2368         assert.
2369         
2370         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
2371         clock and post an EOS message if we come out of finish_preroll in
2372         the playing state.
2373
2374 2005-06-16  David Schleef  <ds@schleef.org>
2375
2376         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
2377         (gst_capsfilter_set_property): Allow NULL as possible value
2378         for filter_caps property, indicating GST_CAPS_ANY.
2379
2380 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2381
2382         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
2383           fix debug output
2384         * gst/schedulers/Makefile.am:
2385           use libgst prefix
2386         * gstreamer.spec.in:
2387           fix spec for it
2388
2389 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2390
2391         * gstreamer.spec.in:
2392           clean up
2393
2394 2005-06-08  Andy Wingo  <wingo@pobox.com>
2395
2396         * gst/gstutils.c: RPAD fixes all around.
2397         (gst_element_link_pads): Refcounting fixes.
2398
2399         * tools/gst-inspect.c:
2400         * tools/gst-xmlinspect.c:
2401         * parse/grammar.y:
2402         * gst/base/gsttypefindhelper.c:
2403         * gst/base/gstbasesink.c:
2404         * gst/gstqueue.c: RPAD fixes.
2405
2406         * gst/gstghostpad.h:
2407         * gst/gstghostpad.c: New ghost pad implementation as full proxy
2408         pads. The tricky thing is they provide both source and sink
2409         interfaces, since they proxy the internal pad for the external
2410         pad, and vice versa. Implement with lower-level ProxyPad objects,
2411         with the interior proxy pad as a child of the exterior ghost pad.
2412         Should write a doc on this.
2413         
2414         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
2415         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
2416         gst_object API.
2417         
2418         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
2419         pads are real pads. No ghost pads in this file. Not documenting
2420         the myriad s/RPAD/PAD/ and REALIZE fixes.
2421         (gst_pad_class_init): Add properties for "direction" and
2422         "template". Both are construct-only, so they can't change during
2423         the life of the pad. Fixes properly deriving from GstPad.
2424         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
2425         derived objects, just set properties when creating the objects via
2426         g_object_new.
2427         (gst_pad_get_parent): Implement as a function, return NULL if the
2428         parent is not an element.
2429         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
2430         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
2431         
2432         * gst/gstobject.c (gst_object_class_init): Make name a construct
2433         property. Don't set it in the object init.
2434
2435         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
2436         with UNKNOWN direction.
2437         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
2438         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
2439         (gst_element_remove_pad): Remove ghost-pad special cases.
2440         (gst_element_pads_activate): Remove rpad cruft.
2441
2442         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
2443         catch the pad's-parent-not-an-element case.
2444
2445         * gst/gst.h: Include gstghostpad.h.
2446
2447         * gst/gst.c (init_post): No more real, ghost pads.
2448
2449         * gst/Makefile.am: Add gstghostpad.[ch].
2450
2451         * check/Makefile.am:
2452         * check/gst/gstbin.c:
2453         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
2454         into a bin creates ghost pads, and that the refcounts are right.
2455         Partly moved from gstbin.c.
2456
2457 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2458
2459         * check/gst-libs/.cvsignore:
2460         * check/gst/.cvsignore:
2461         * check/pipelines/.cvsignore:
2462           ignore more
2463         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
2464         (START_TEST), (cleanup_suite), (main):
2465           add some tests related to cleanup after running pipelines
2466
2467 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2468
2469         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
2470           add a testsuite for GstBuffer
2471
2472 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2473
2474         * gst/gstminiobject.h:
2475           add defines for accessing the refcount
2476
2477 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
2478
2479         * Makefile.am: added support for html unit test coverage reports
2480
2481 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
2482
2483         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
2484           Free existing caps if the capsfilter changes. Add a FIXME about
2485           setting those caps on the pads.
2486
2487         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
2488           Before adding a ghost pad to a parent bin, check that there isn't
2489           already one for the element on the bin. Prevents infinite recursion
2490           when using decodebin in parse pipelines. Andy says he'll rewrite the
2491           way this works anyway, so ignore the hack.
2492
2493 2005-06-02  Andy Wingo  <wingo@pobox.com>
2494
2495         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
2496         file size, pass it on to the type find helper.
2497
2498         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
2499         segment_start and segment_end properly according to the seek
2500         method. Segment_end is still a bit flaky because offset can be
2501         negative for CUR and END cases, but it takes -1 as an "unset"
2502         value.
2503
2504 2005-06-02  Wim Taymans  <wim@fluendo.com>
2505
2506         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
2507         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
2508         (gst_basesink_activate):
2509         * gst/base/gstbasesink.h:
2510         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2511         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2512         (gst_pad_query), (gst_pad_start_task):
2513         * gst/gstpad.h:
2514         * gst/gstqueue.c: (gst_queue_bufferalloc),
2515         (gst_queue_handle_sink_event), (gst_queue_chain):
2516         Bufferalloc: return GstFlowReturn to more accuratly report
2517         why allocation failed.
2518
2519 2005-06-02  Wim Taymans  <wim@fluendo.com>
2520
2521         * gst/gstpipeline.c: (gst_pipeline_send_event):
2522         Take snapshot of state without blocking.
2523
2524 2005-06-02  Wim Taymans  <wim@fluendo.com>
2525
2526         * docs/design/part-TODO.txt:
2527         * docs/design/part-caps.txt:
2528         * docs/design/part-clocks.txt:
2529         * docs/design/part-negotiation.txt:
2530         * docs/design/part-preroll.txt:
2531         Small doc updates 
2532
2533 2005-05-30  Wim Taymans  <wim@fluendo.com>
2534
2535         * gst/elements/gstidentity.c: (gst_identity_event),
2536         (gst_identity_transform), (gst_identity_get_property):
2537         Protect last_message property as it is accessed from
2538         multiple threads.
2539
2540 2005-05-30  Wim Taymans  <wim@fluendo.com>
2541
2542         * gst/gstelement.c: (gst_element_init),
2543         (gst_element_pads_activate), (gst_element_change_state):
2544         Slicker pad activation code.
2545
2546 2005-05-30  Wim Taymans  <wim@fluendo.com>
2547
2548         * gst/Makefile.am:
2549         * gst/gstelement.h:
2550         * gst/gstelementfactory.h:
2551         * gst/gsttypes.h:
2552         Move elementfactory methods to separate .h file.
2553
2554 2005-05-30  Wim Taymans  <wim@fluendo.com>
2555
2556         * docs/design/part-overview.txt:
2557         * gst/gstsystemclock.h:
2558         Small typo fixes, doc updates.
2559
2560 2005-05-30  Wim Taymans  <wim@fluendo.com>
2561
2562         * gst/gst.c: (gst_init_get_popt_table), (init_post),
2563         (init_popt_callback):
2564         Remove cpu-opt flag.
2565
2566 2005-05-30  Wim Taymans  <wim@fluendo.com>
2567
2568         * gst/gstbuffer.c: (gst_subbuffer_finalize),
2569         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
2570         * gst/gstbuffer.h:
2571         Avoid typechecking in places where not needed.
2572         Added accessor for malloc_data.
2573
2574 2005-05-30  Wim Taymans  <wim@fluendo.com>
2575
2576         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
2577         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
2578         (gst_pad_configure_sink), (gst_pad_configure_src),
2579         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
2580         (gst_pad_start_task):
2581         Propagate errors from _set_caps() in configure_src/sink
2582         functions instead of returning TRUE.
2583         FLUSH events can travel up and downstream
2584
2585
2586 2005-05-30  Wim Taymans  <wim@fluendo.com>
2587
2588         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2589         (gst_basesink_activate):
2590         Handle EOS in preroll.
2591
2592 2005-05-30  Wim Taymans  <wim@fluendo.com>
2593
2594         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2595         (gst_queue_loop), (gst_queue_handle_src_event):
2596         Remove old pieces of code
2597         Flushing the queue in an upstream event is a very bad idea.
2598
2599 2005-05-26  Andy Wingo  <wingo@pobox.com>
2600
2601         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
2602         gst_value_set_mini_object so as to add a ref on the object (which
2603         will be removed when the value is unset).
2604
2605         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
2606         arg type in ::handoff.
2607
2608         * gst/gstelement.c (gst_element_change_state): Also deactivate
2609         pads in READY->NULL, just in case the element didn't make it to
2610         PAUSED. Wingo tested, Wim approved.
2611
2612 2005-05-26  Wim Taymans  <wim@fluendo.com>
2613
2614         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2615         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2616         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
2617         A flushing pad cannot be used to alloc_buffer from.
2618
2619 2005-05-26  Wim Taymans  <wim@fluendo.com>
2620
2621         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
2622         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
2623         (gst_bus_source_dispatch), (gst_bus_source_finalize),
2624         (gst_bus_create_watch), (gst_bus_add_watch_full):
2625         * gst/gstbus.h:
2626         Implement a real GSource and use g_main_context_wakeup() to
2627         signal new messages instead of the socketpair.
2628
2629 2005-05-25  Wim Taymans  <wim@fluendo.com>
2630
2631         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
2632         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
2633         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2634         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2635         (gst_pad_send_event), (gst_pad_start_task):
2636         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
2637         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
2638         (gst_queue_sink_activate), (gst_queue_src_activate),
2639         (gst_queue_change_state):
2640         * gst/gstqueue.h:
2641         Fix state changes for non sinks. We now change sinks, then elements
2642         with unconnected srcpads, then the rest.
2643         More efficient queue unlocking in flush and state changes.
2644         Set the pad activate mode even if it does not have an activate
2645         function.
2646
2647 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2648
2649         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
2650           Don't go in pull mode for non-seekable sources.
2651         * gst/elements/gsttypefindelement.h:
2652         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
2653         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
2654         (free_entry), (stop_typefinding),
2655         (gst_type_find_element_handle_event), (find_peek),
2656         (gst_type_find_element_chain), (do_pull_typefind),
2657         (gst_type_find_element_change_state):
2658           Allow typefinding (w/o seeking) in push-mode, simplified version
2659           of what was in 0.8.
2660         * gst/gstutils.c: (gst_buffer_join):
2661         * gst/gstutils.h:
2662           gst_buffer_join() from 0.8.
2663
2664 2005-05-25  Wim Taymans  <wim@fluendo.com>
2665
2666         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2667         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2668         (gst_pad_send_event), (gst_pad_start_task):
2669         Disable attempt at mode switching until it is figured out.
2670
2671 2005-05-25  Wim Taymans  <wim@fluendo.com>
2672
2673         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
2674         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2675         (gst_basesink_finish_preroll), (gst_basesink_chain),
2676         (gst_basesink_loop), (gst_basesink_activate),
2677         (gst_basesink_change_state):
2678         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
2679         (gst_basesrc_get_range), (gst_basesrc_loop),
2680         (gst_basesrc_activate):
2681         * gst/elements/gsttee.c: (gst_tee_sink_activate):
2682         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
2683         (gst_real_pad_init), (gst_real_pad_set_property),
2684         (gst_real_pad_get_property), (gst_pad_set_active),
2685         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
2686         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
2687         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
2688         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
2689         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2690         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
2691         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
2692         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
2693         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
2694         (gst_pad_stop_task):
2695         * gst/gstpad.h:
2696         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2697         (gst_queue_loop), (gst_queue_src_activate):
2698         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
2699         (gst_task_get_state):
2700         * gst/gsttask.h:
2701         * gst/schedulers/threadscheduler.c:
2702         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
2703         Implement gst_pad_pause/start/stop_task(), take STREAM lock
2704         in task function.
2705         Remove ACTIVE pad flag, use FLUSHING everywhere
2706         Added _pad_chain(), _pad_get_range() to call chain/getrange 
2707         functions.
2708         Add locks around IS_FLUSHING when reading.
2709         Take STREAM lock in chain(), get_range() functions so plugins
2710         don't need to take it anymore.
2711         
2712
2713
2714 2005-05-25  Wim Taymans  <wim@fluendo.com>
2715
2716         * tools/gst-launch.c: (event_loop):
2717         Unref message after using its contents instead of
2718         before.
2719
2720 2005-05-24  Wim Taymans  <wim@fluendo.com>
2721
2722         * docs/design/draft-ghostpads.txt:
2723         * docs/design/draft-push-pull.txt:
2724         * docs/design/draft-query.txt:
2725         * docs/design/part-overview.txt:
2726         Docs updates, added general overview doc.
2727
2728 2005-05-21  David Schleef  <ds@schleef.org>
2729
2730         * docs/gst/tmpl/old/GstBin.sgml:
2731         * docs/gst/tmpl/old/GstBuffer.sgml:
2732         * docs/gst/tmpl/old/GstCaps.sgml:
2733         * docs/gst/tmpl/old/GstClock.sgml:
2734         * docs/gst/tmpl/old/GstCompat.sgml:
2735         * docs/gst/tmpl/old/GstData.sgml:
2736         * docs/gst/tmpl/old/GstElement.sgml:
2737         * docs/gst/tmpl/old/GstEvent.sgml:
2738         * docs/gst/tmpl/old/GstIndex.sgml:
2739         * docs/gst/tmpl/old/GstStructure.sgml:
2740         * docs/gst/tmpl/old/GstTag.sgml:
2741         * docs/gst/tmpl/old/cothreads.sgml:
2742         * docs/gst/tmpl/old/cothreads_compat.sgml:
2743         * docs/gst/tmpl/old/gettext.sgml:
2744         * docs/gst/tmpl/old/gobject2gtk.sgml:
2745         * docs/gst/tmpl/old/grammar.tab.sgml:
2746         * docs/gst/tmpl/old/gst-i18n-app.sgml:
2747         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
2748         * docs/gst/tmpl/old/gst_private.sgml:
2749         * docs/gst/tmpl/old/gstaggregator.sgml:
2750         * docs/gst/tmpl/old/gstarch.sgml:
2751         * docs/gst/tmpl/old/gstatomic_impl.sgml:
2752         * docs/gst/tmpl/old/gstbufferstore.sgml:
2753         * docs/gst/tmpl/old/gstdata_private.sgml:
2754         * docs/gst/tmpl/old/gstdisksink.sgml:
2755         * docs/gst/tmpl/old/gstdisksrc.sgml:
2756         * docs/gst/tmpl/old/gstelementfactory.sgml:
2757         * docs/gst/tmpl/old/gstextratypes.sgml:
2758         * docs/gst/tmpl/old/gstfakesink.sgml:
2759         * docs/gst/tmpl/old/gstfakesrc.sgml:
2760         * docs/gst/tmpl/old/gstfdsink.sgml:
2761         * docs/gst/tmpl/old/gstfdsrc.sgml:
2762         * docs/gst/tmpl/old/gstfilesink.sgml:
2763         * docs/gst/tmpl/old/gstfilesrc.sgml:
2764         * docs/gst/tmpl/old/gsthttpsrc.sgml:
2765         * docs/gst/tmpl/old/gstidentity.sgml:
2766         * docs/gst/tmpl/old/gstindexfactory.sgml:
2767         * docs/gst/tmpl/old/gstmarshal.sgml:
2768         * docs/gst/tmpl/old/gstmd5sink.sgml:
2769         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
2770         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
2771         * docs/gst/tmpl/old/gstpadtemplate.sgml:
2772         * docs/gst/tmpl/old/gstpipefilter.sgml:
2773         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
2774         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
2775         * docs/gst/tmpl/old/gstshaper.sgml:
2776         * docs/gst/tmpl/old/gstspider.sgml:
2777         * docs/gst/tmpl/old/gstspideridentity.sgml:
2778         * docs/gst/tmpl/old/gststatistics.sgml:
2779         * docs/gst/tmpl/old/gsttee.sgml:
2780         * docs/gst/tmpl/old/gsttimecache.sgml:
2781         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
2782         * docs/gst/tmpl/old/gstxmlregistry.sgml:
2783         * docs/gst/tmpl/old/gthread-cothreads.sgml:
2784         * docs/gst/tmpl/old/types.sgml:
2785           I didn't intend to add these or check them in.
2786
2787 2005-05-19  David Schleef  <ds@schleef.org>
2788
2789         * configure.ac: Use -no-common everywhere.  In a sane world, it
2790           would be the default in libtool, because without it, you can't
2791           build DLLs on Windows.
2792         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
2793         * docs/gst/gstreamer-sections.txt:
2794         * docs/gst/tmpl/gstcpu.sgml:
2795         * docs/gst/tmpl/gstdata.sgml:
2796         * docs/gst/tmpl/gstthread.sgml:
2797
2798 2005-05-19  David Schleef  <ds@schleef.org>
2799
2800         * gst/gstminiobject.c: (gst_value_set_mini_object),
2801         (gst_value_take_mini_object), (gst_value_get_mini_object):
2802         * gst/gstminiobject.h: Add GValue set/get functions.
2803
2804 2005-05-19  Wim Taymans  <wim@fluendo.com>
2805
2806         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
2807         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
2808         (gst_subbuffer_init), (gst_buffer_is_span_fast):
2809         * gst/gstbuffer.h:
2810         * gst/gstbus.c: (gst_bus_post):
2811         * gst/gstelement.c: (gst_element_get_random_pad):
2812         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
2813         Make subbufer unref the parent in finalize.
2814         some more debugging info.
2815
2816
2817 2005-05-19  Wim Taymans  <wim@fluendo.com>
2818
2819         * gst/base/gstbasesink.c: (gst_basesink_class_init),
2820         (gst_basesink_init), (gst_basesink_finalize),
2821         (gst_basesink_activate), (gst_basesink_change_state):
2822         Don't free preroll queue too early.
2823
2824 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2825
2826         * gst/Makefile.am:
2827         * gst/ROADMAP:
2828           Hi, I'm outdated. Please shoot me.
2829
2830 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2831
2832         * gst/gstpipeline.c: (gst_pipeline_send_event):
2833           Do not access variables after they have been deleted.
2834
2835 2005-05-19  Wim Taymans  <wim@fluendo.com>
2836
2837         * tools/gst-inspect.c: (print_plugin_features):
2838         A plugin feature does unfortunatly not use the
2839         object name yet...
2840
2841 2005-05-18  Wim Taymans  <wim@fluendo.com>
2842
2843         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
2844         Port _span() functions to new subbuffers.
2845
2846 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2847
2848         * gst/gstbin.c: (gst_bin_add_func):
2849           Fix clock settery in bins when adding kids after the clock has
2850           been selected.
2851
2852 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2853
2854         * gst/elements/gstidentity.c: (gst_identity_class_init):
2855           Workaround until signals support GstMiniObject.
2856
2857 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
2858
2859         * gst/gstbuffer.c:
2860         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
2861
2862 2005-05-18  Wim Taymans  <wim@fluendo.com>
2863
2864         * gst/base/Makefile.am:
2865         * gst/base/gstadapter.c: (gst_adapter_base_init),
2866         (gst_adapter_class_init), (gst_adapter_init),
2867         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
2868         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
2869         (gst_adapter_flush), (gst_adapter_available),
2870         (gst_adapter_available_fast):
2871         * gst/base/gstadapter.h:
2872         Ported and added adapter to the base classes.
2873
2874 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
2875
2876         * gst/gst.c:
2877         * gst/gstmessage.c:
2878           Make sure the class is reffed/unreffed once before threads can be
2879           used.  Fixes #304551.
2880
2881 2005-05-17  Wim Taymans  <wim@fluendo.com>
2882
2883         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
2884         (gst_basesink_chain_unlocked), (gst_basesink_activate):
2885         * gst/gstminiobject.c: (gst_mini_object_get_type),
2886         (gst_mini_object_free):
2887         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
2888         (gst_pad_push), (gst_pad_push_event):
2889         * gst/gstqueue.c: (gst_queue_change_state):
2890         Don't queue buffers in basesink when we are flushing.
2891         Unref buffer when flushing in basesink.
2892         Flush queue when going to READY
2893         Unref buffer when _push() returns an error.
2894         Don't free MiniObject instance when refcount is incremented
2895         in _finalize() so that we can recover objects.
2896
2897 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2898
2899         * docs/manual/advanced-schedulers.xml:
2900         * docs/manual/appendix-checklist.xml:
2901         * docs/pwg/advanced-clock.xml:
2902         * docs/pwg/advanced-interfaces.xml:
2903         * docs/pwg/advanced-request.xml:
2904         * docs/pwg/advanced-types.xml:
2905         * docs/pwg/intro-preface.xml:
2906         * examples/plugins/example.c: (gst_example_get_type),
2907         (gst_example_class_init), (gst_example_chain),
2908         (gst_example_set_property), (gst_example_get_property),
2909         (gst_example_change_state), (plugin_init):
2910         * examples/plugins/example.h:
2911           small doc fixes
2912
2913 2005-05-17  Wim Taymans  <wim@fluendo.com>
2914
2915         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
2916         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
2917         * gst/gstqueue.c: (gst_queue_change_state):
2918         Clear queue when going to READY.
2919         Remove IN_SETCAPS flag too.
2920
2921 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
2922
2923         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
2924           Remove implicit cast from gboolean to GstElementStateReturn;
2925           make sure we still return failure in paused => ready case if
2926           the parent class fails to change state and our own stop 
2927           vfunc succeeds.
2928
2929 2005-05-17  Wim Taymans  <wim@fluendo.com>
2930
2931         * tools/gst-launch.c: (event_loop):
2932         Message was unreffed too soon.
2933
2934 2005-05-16  Andy Wingo  <wingo@pobox.com>
2935
2936         * gst/gstbin.c (sink_iterator_filter): Err... um...
2937
2938         * check/gst/gstbin.c (test_ghost_pads): New test for the
2939         ghosting-if-elements-not-in-same-bin behavior.
2940
2941 2005-05-16  David Schleef  <ds@schleef.org>
2942
2943         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
2944         accessing refcount directly.
2945
2946 2005-05-15  David Schleef  <ds@schleef.org>
2947
2948         * check/Makefile.am: remove GstData checks
2949         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
2950         * gst/Makefile.am: add miniobject, remove data
2951         * gst/gst.h: add miniobject, remove data
2952         * gst/gstdata.c: remove
2953         * gst/gstdata.h: remove
2954         * gst/gstdata_private.h: remove
2955         * gst/gsttypes.h: remove GstEvent and GstMessage
2956         * gst/gstelement.c: (gst_element_post_message): fix for API changes
2957         * gst/gstmarshal.list: change BOXED -> OBJECT
2958
2959         Implement GstMiniObject.
2960         * gst/gstminiobject.c:
2961         * gst/gstminiobject.h:
2962
2963         Modify to be subclasses of GstMiniObject.
2964         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
2965         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
2966         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
2967         (gst_subbuffer_get_type), (gst_subbuffer_init),
2968         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
2969         (gst_buffer_span):
2970         * gst/gstbuffer.h:
2971         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
2972         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
2973         (_gst_event_copy), (gst_event_new):
2974         * gst/gstevent.h:
2975         * gst/gstmessage.c: (_gst_message_initialize),
2976         (gst_message_get_type), (gst_message_class_init),
2977         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
2978         (gst_message_new), (gst_message_new_error),
2979         (gst_message_new_warning), (gst_message_new_tag),
2980         (gst_message_new_state_changed), (gst_message_new_application):
2981         * gst/gstmessage.h:
2982         * gst/gstprobe.c: (gst_probe_perform),
2983         (gst_probe_dispatcher_dispatch):
2984         * gst/gstprobe.h:
2985         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
2986         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
2987         (_gst_query_copy), (gst_query_new):
2988
2989         Update elements for GstData -> GstMiniObject changes
2990         * gst/gstquery.h:
2991         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
2992         (gst_queue_chain), (gst_queue_loop):
2993         * gst/elements/gstbufferstore.c:
2994         (gst_buffer_store_add_buffer_func),
2995         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
2996         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
2997         (gst_fakesink_render):
2998         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
2999         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
3000         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
3001         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
3002         (gst_filesrc_create_read):
3003         * gst/elements/gstidentity.c: (gst_identity_class_init):
3004         * gst/elements/gsttypefindelement.c:
3005         (gst_type_find_element_src_event), (free_entry_buffers),
3006         (gst_type_find_element_handle_event):
3007         * libs/gst/dataprotocol/dataprotocol.c:
3008         (gst_dp_header_from_buffer):
3009         * libs/gst/dataprotocol/dataprotocol.h:
3010         * libs/gst/dataprotocol/dp-private.h:
3011
3012 2005-05-15  David Schleef  <ds@schleef.org>
3013
3014         * gst/elements/gstelements.c: Don't include headers that were
3015         just removed.
3016
3017 2005-05-15  David Schleef  <ds@schleef.org>
3018
3019         * gst/elements/Makefile.am: Remove some elements that don't
3020         need to be in the core (or even exist at all).
3021         * gst/elements/gstaggregator.c:
3022         * gst/elements/gstaggregator.h:
3023         * gst/elements/gstmd5sink.c:
3024         * gst/elements/gstmd5sink.h:
3025         * gst/elements/gstmultifilesrc.c:
3026         * gst/elements/gstmultifilesrc.h:
3027         * gst/elements/gstpipefilter.c:
3028         * gst/elements/gstpipefilter.h:
3029         * gst/elements/gstshaper.c:
3030         * gst/elements/gstshaper.h:
3031         * gst/elements/gststatistics.c:
3032         * gst/elements/gststatistics.h:
3033         * po/POTFILES.in: Remove above files.
3034
3035 2005-05-14  Andy Wingo  <wingo@pobox.com>
3036
3037         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
3038         so as to get the refs right.
3039         (sink_iterator_filter): New function, wraps bin_element_is_sink,
3040         unreffing objects that don't pass the filter.
3041
3042         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
3043         gst_element_set_bus.
3044         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
3045         normal cases, this will destroy the bus.
3046
3047         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
3048         object.
3049
3050         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
3051         has no sinks.
3052
3053 2005-05-13  Andy Wingo  <wingo@pobox.com>
3054
3055         * gst/gstutils.c (gst_element_link_pads): Instead of calling
3056         gst_pad_link, call pad_link_maybe_ghosting,
3057         (pad_link_maybe_ghosting): Links pads, making sure that the
3058         elements being linked are in the same bin.
3059         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
3060         Helpers for pad_link_maybe_ghosting.
3061
3062 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3063
3064         * configure.ac:
3065           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
3066
3067 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3068
3069         * docs/design/part-element-source.txt:
3070           Mention GstPushSrc
3071
3072 2005-05-12  Wim Taymans  <wim@fluendo.com>
3073
3074         * gst/base/gstbasesink.c: (gst_basesink_init),
3075         (gst_basesink_activate):
3076         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
3077         (gst_basesrc_is_seekable):
3078         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
3079         (bin_element_is_sink), (gst_bin_change_state):
3080         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3081         * gst/gstelement.h:
3082         Identify sinks by their flag to avoid overly complicated
3083         checks (fow now).
3084         Do state changes even for elements not reachable from the
3085         sinks.
3086         BaseSink is a sink now :)
3087         Some more debugging info in the basesrc.
3088
3089
3090 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3091
3092         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
3093           Implement _query on a bin, similar to _send_event.
3094
3095 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
3096
3097         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
3098           Discont event offset format should be GST_FORMAT_BYTES,
3099           not GST_FORMAT_TIME.
3100
3101 2005-05-12  Wim Taymans  <wim@fluendo.com>
3102
3103         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
3104         Same fix as Ronald's but without the signal. 
3105
3106 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3107
3108         * gst/gstutils.c: (gst_element_query_position):
3109           No, an element is not a pad.
3110
3111 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3112
3113         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
3114         (gst_bin_get_state):
3115           If a child is removed from a bin while we remove the child from
3116           the bin and while we're retrieving its state, signal this to the
3117           get_state function so we abort the wait (instead of waiting for
3118           a timeout) and can immediately re-iterate over all other elements.
3119
3120 2005-05-12  Wim Taymans  <wim@fluendo.com>
3121
3122         * gst/base/Makefile.am:
3123         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
3124         (gst_basesrc_start):
3125         * gst/base/gstbasesrc.h:
3126         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
3127         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
3128         (gst_pushsrc_init), (gst_pushsrc_create):
3129         * gst/base/gstpushsrc.h:
3130         Added is_seekable to BaseSrc
3131         Added simple PushSrc.
3132
3133 2005-05-11  Wim Taymans  <wim@fluendo.com>
3134
3135         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3136         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3137         (gst_element_link_pads), (gst_element_query_position),
3138         (gst_element_query_convert), (intersect_caps_func),
3139         (gst_pad_query_position), (gst_pad_query_convert):
3140         Fix refcounting in utils function.
3141         No point in trying to activate a pad when it's added, it could
3142         be added from the state change function and then we deadlock, the
3143         element has to decide what to do.
3144
3145 2005-05-10  Andy Wingo  <wingo@pobox.com>
3146
3147         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
3148         *all* the arguments.
3149
3150         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
3151         stream lock if it's a FLUSH_DONE; normal flushes don't get the
3152         lock (according to the docs -- if this is wrong change the docs).
3153
3154         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
3155         flush messages in the NULL state.
3156
3157         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
3158         message immediately and return.
3159         (gst_bus_set_flushing): New function. If a bus is flushing, it
3160         flushes out any queued messages and immediately unrefs new
3161         messages. This is so when an element goes to NULL, all of the
3162         unhandled messages coming from it can be freed, and their
3163         references to the element dropped. In other words: message source
3164         ref considered harmful :P
3165
3166         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
3167         we're finished with it.
3168
3169         * gst/gstmessage.c (gst_message_new_state_changed): 
3170
3171 2005-05-10  Wim Taymans  <wim@fluendo.com>
3172
3173         * gst/gstvalue.c: (gst_value_compare_flags),
3174         (gst_value_serialize_flags), (gst_value_deserialize_flags),
3175         (_gst_value_initialize):
3176         Added flags serialize/deserialize/compare code.
3177
3178 2005-05-09  Andy Wingo  <wingo@pobox.com>
3179
3180         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
3181         Intersect the peer's caps with our caps.
3182
3183 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3184
3185         * gst/base/gsttypefindhelper.c: (helper_find_peek):
3186         * gst/elements/gsttypefindelement.c: (find_peek):
3187           Handle negative offsets better. Fixes decodebin.
3188
3189 2005-05-09  Wim Taymans  <wim@fluendo.com>
3190
3191         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
3192         (gst_base_transform_event):
3193         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
3194         Implement accept_caps.
3195         Fix silly lock/unlock mismatch in base class.
3196
3197 2005-05-09  Wim Taymans  <wim@fluendo.com>
3198
3199         * docs/design/draft-push-pull.txt:
3200         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
3201         * gst/elements/gstfilesink.c: (gst_filesink_init),
3202         (gst_filesink_query):
3203         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3204         (gst_type_find_handle_src_query), (find_element_get_length):
3205         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
3206         * gst/gstelement.h:
3207         * gst/gstmessage.c:
3208         * gst/gstmessage.h:
3209         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
3210         (gst_real_pad_get_caps_unlocked),
3211         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
3212         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3213         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
3214         (gst_real_pad_dispose), (gst_real_pad_finalize),
3215         (gst_pad_load_and_link), (gst_pad_save_thyself),
3216         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
3217         (gst_pad_check_pull_range), (gst_pad_pull_range),
3218         (gst_pad_template_get_type), (gst_pad_template_class_init),
3219         (gst_pad_template_init), (gst_pad_template_dispose),
3220         (name_is_valid), (gst_static_pad_template_get),
3221         (gst_pad_template_new), (gst_static_pad_template_get_caps),
3222         (gst_pad_template_get_caps), (gst_pad_set_element_private),
3223         (gst_pad_get_element_private), (gst_pad_start_task),
3224         (gst_pad_pause_task), (gst_pad_stop_task),
3225         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
3226         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
3227         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
3228         (gst_ghost_pad_new):
3229         * gst/gstpad.h:
3230         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
3231         (gst_query_new_position), (gst_query_set_position),
3232         (gst_query_parse_position), (gst_query_new_convert),
3233         (gst_query_set_convert), (gst_query_parse_convert):
3234         * gst/gstquery.h:
3235         * gst/gstqueryutils.c:
3236         * gst/gstqueryutils.h:
3237         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3238         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3239         (gst_queue_handle_src_query):
3240         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3241         (gst_element_query_position), (gst_element_query_convert),
3242         (intersect_caps_func), (gst_pad_query_position),
3243         (gst_pad_query_convert):
3244         * gst/gstutils.h:
3245         * tools/gst-inspect.c: (print_pad_info):
3246         * tools/gst-xmlinspect.c: (print_element_info):
3247         Remove old query functions. Ported old code.
3248         Added position/convert helper functions to gstutils.
3249         Reordered gstpad.c code, grouping relevant things.
3250         Remove gst_message_new(), always need to speficy a specific
3251         message.
3252
3253
3254 2005-05-09  Andy Wingo  <wingo@pobox.com>
3255
3256         * gst/gstiterator.h: Add some includes.
3257
3258         * gst/gstqueryutils.h: Include more headers.
3259
3260         * gst/gstpad.h:
3261         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
3262         some uses of gst_pad_query.
3263
3264         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
3265         NULL out parameters.
3266         (gst_query_new_position): New proc, allocates a new position
3267         query.
3268
3269         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
3270         gstqueryutils.c to the build.
3271
3272         * gst/gststructure.c (gst_structure_set_valist): Implement with
3273         the generic G_VALUE_COLLECT.
3274         
3275 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
3276
3277         * gst/Makefile.am: (gst_headers):
3278         Added gstqueryutils.h to the list of headers to install, that was
3279         a 'nachty' move wingo :)
3280
3281 2005-05-06  Andy Wingo  <wingo@pobox.com>
3282
3283         * gst/gstquery.h
3284         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
3285         GstData, init a memchunk.
3286         (standard_definitions): Add a few query types, deprecate a few.
3287         (gst_query_get_type): New proc.
3288         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
3289         implementation.
3290         (gst_query_new_application, gst_query_get_structure): New public
3291         procs.
3292
3293         * docs/design/draft-query.txt: Removed LINKS from the query types,
3294         because all the rest can be dispatched to other pads -- seemed
3295         ugly to have a query that couldn't be dispatched. internal_links
3296         is fine as a pad method.
3297
3298         * gst/gstpad.h: Add query2 as a pad method, add the new functions
3299         in gstpad.c, but maintain binary compatibility for the moment.
3300         Will fix before 0.9 is out.
3301
3302         * gst/gstqueryutils.c: 
3303         * gst/gstqueryutils.h: New files, implement 3 methods for each
3304         query type: parse_query, parse_response, and set. Probably need an
3305         allocator as well.
3306
3307         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
3308
3309         * gst/elements/gstfilesink.c (gst_filesink_query2):
3310         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
3311         query_types, and formats methods.
3312
3313         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
3314         (gst_pad_set_query2_function): New functions.
3315         (gst_real_pad_init): Set query2_default as the default query2
3316         function. Basically just dispatches to internally linked pads.
3317
3318         Needs review!
3319         
3320         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
3321         without using the atomic operations. Only one thread can possibly
3322         be accessing the data at this point. Changed so as to avoid
3323         gst_atomic operations.
3324
3325 2005-05-06  Wim Taymans  <wim@fluendo.com>
3326
3327         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
3328         Also set caps if we use the fallback buffer alloc.
3329
3330 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
3331
3332         * docs/gst/Makefile.am:
3333         * docs/gst/gstreamer-docs.sgml:
3334         * docs/gst/gstreamer-sections.txt:
3335         * docs/gst/tmpl/gstatomic.sgml:
3336         * docs/gst/tmpl/gstmemchunk.sgml:
3337         * testsuite/elements/struct_i386.h:
3338         * win32/GStreamer.vcproj:
3339         * win32/Makefile:
3340           Purge GstAtomic stuff from docs and win32 makefiles as well
3341
3342 2005-05-06  Wim Taymans  <wim@fluendo.com>
3343
3344         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
3345         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
3346         * gst/gstpad.c: (gst_pad_peer_get_caps):
3347         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3348         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3349         (gst_queue_src_activate), (gst_queue_change_state):
3350         * gst/gstqueue.h:
3351         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3352         (intersect_caps_func):
3353         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
3354         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
3355         Some fixes for the peer_get_caps() change.
3356
3357 2005-05-06  Wim Taymans  <wim@fluendo.com>
3358
3359         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
3360         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
3361         (gst_basesink_activate):
3362         Actually do something with error codes returned from the push
3363         functions.
3364
3365 2005-05-06  Wim Taymans  <wim@fluendo.com>
3366
3367         * docs/design/part-element-sink.txt:
3368         * docs/design/part-element-source.txt:
3369         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3370         (gst_basesink_event), (gst_basesink_activate):
3371         * gst/base/gstbasesink.h:
3372         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
3373         (gst_basesrc_activate):
3374         * gst/base/gstbasesrc.h:
3375         * gst/gstelement.c: (gst_element_pads_activate):
3376         Some more documentation.
3377         Fixed scheduling decision in _pads_activate().
3378
3379 2005-05-05  Andy Wingo  <wingo@pobox.com>
3380
3381         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
3382         the test suite.
3383
3384 2005-05-05  Wim Taymans  <wim@fluendo.com>
3385
3386         * gst/base/Makefile.am:
3387         * gst/base/gstbasesink.h:
3388         * gst/base/gstbasesrc.c: (gst_basesrc_init),
3389         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
3390         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
3391         (gst_collectpads_class_init), (gst_collectpads_init),
3392         (gst_collectpads_finalize), (gst_collectpads_new),
3393         (gst_collectpads_set_function), (gst_collectpads_add_pad),
3394         (find_pad), (gst_collectpads_remove_pad),
3395         (gst_collectpads_is_active), (gst_collectpads_collect),
3396         (gst_collectpads_collect_range), (gst_collectpads_start),
3397         (gst_collectpads_stop), (gst_collectpads_peek),
3398         (gst_collectpads_pop), (gst_collectpads_available),
3399         (gst_collectpads_read), (gst_collectpads_flush),
3400         (gst_collectpads_chain):
3401         * gst/base/gstcollectpads.h:
3402         * gst/elements/Makefile.am:
3403         * gst/elements/gstelements.c:
3404         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3405         (gst_fakesink_get_times), (gst_fakesink_event),
3406         (gst_fakesink_preroll), (gst_fakesink_render):
3407         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
3408         (gst_filesink_init), (gst_filesink_set_location),
3409         (gst_filesink_open_file), (gst_filesink_close_file),
3410         (gst_filesink_pad_query), (gst_filesink_event),
3411         (gst_filesink_render), (gst_filesink_change_state):
3412         * gst/elements/gstfilesink.h:
3413         Added object to help in making collect pad based elements.
3414         Ported filesink.
3415         Make event function in sink baseclass return gboolean.
3416
3417 2005-05-05  Wim Taymans  <wim@fluendo.com>
3418
3419         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
3420         (gst_bin_get_by_name):
3421         * gst/gstbuffer.h:
3422         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
3423         (gst_clock_finalize):
3424         * gst/gstdata.c: (gst_data_replace):
3425         * gst/gstdata.h:
3426         * gst/gstelement.c: (gst_element_request_pad),
3427         (gst_element_pads_activate):
3428         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
3429         (gst_object_unref):
3430         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3431         (gst_pad_set_checkgetrange_function),
3432         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
3433         (gst_pad_check_pull_range), (gst_pad_pull_range),
3434         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3435         (gst_pad_pause_task), (gst_pad_stop_task):
3436         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3437         (gst_element_request_pad), (gst_pad_proxy_getcaps):
3438         Fix name lookup in GstBin.
3439         Added _data_replace() function and _buffer_replace()
3440         Use finalize method to clean up clock.
3441         Fix refcounting on request pads.
3442         Fix pad schedule mode error.
3443         Some more object refcounting debug info,
3444
3445
3446 2005-05-04  Andy Wingo <wingo@pobox.com>
3447
3448         * check/Makefile.am:
3449         * docs/gst/tmpl/gstatomic.sgml:
3450         * docs/gst/tmpl/gstplugin.sgml:
3451         * gst/base/gstbasesink.c: (gst_basesink_activate):
3452         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
3453         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
3454         (gst_basesrc_query), (gst_basesrc_set_property),
3455         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
3456         (gst_basesrc_activate):
3457         * gst/base/gstbasesrc.h:
3458         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
3459         (gst_base_transform_src_activate):
3460         * gst/elements/gstelements.c:
3461         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3462         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
3463         * gst/elements/gsttee.c: (gst_tee_sink_activate):
3464         * gst/elements/gsttypefindelement.c: (find_element_get_length),
3465         (gst_type_find_element_checkgetrange),
3466         (gst_type_find_element_activate):
3467         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
3468         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
3469         (gst_caps_load_thyself):
3470         * gst/gstelement.c: (gst_element_pads_activate),
3471         (gst_element_save_thyself), (gst_element_restore_thyself):
3472         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
3473         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
3474         * gst/gstpad.h:
3475         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
3476         (gst_xml_parse_file), (gst_xml_parse_memory),
3477         (gst_xml_get_element), (gst_xml_make_element):
3478         * gst/indexers/gstfileindex.c: (gst_file_index_load),
3479         (_file_index_id_save_xml), (gst_file_index_commit):
3480         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
3481         (read_enum), (load_pad_template), (load_feature), (load_plugin),
3482         (load_paths):
3483         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
3484         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
3485         * tools/gst-complete.c: (main):
3486         * tools/gst-compprep.c: (main):
3487         * tools/gst-inspect.c: (print_element_properties_info):
3488         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
3489         * tools/gst-xmlinspect.c: (print_element_properties):
3490         GCC 4 fixen.
3491         
3492 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
3493
3494         * gst/gstplugin.c: (gst_plugin_check_module),
3495         (gst_plugin_check_file), (gst_plugin_load_file):
3496             apply patch from #172526 to make register work on MacOSX
3497
3498 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3499
3500         * docs/gst/tmpl/gstconfig.sgml:
3501         * gst/gstconfig.h.in:
3502           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
3503         * testsuite/debug/printf_extension.c: (main):
3504           Do not use GST_PTR_FORMAT on pointers to types with
3505           sizeof < sizeof(gpointer).  Fixes test on 64-bit
3506         * testsuite/elements/property.h:
3507           use correct printf format
3508
3509 2005-05-02  Wim Taymans  <wim@fluendo.com>
3510
3511         * docs/design/draft-push-pull.txt:
3512         * docs/design/draft-query.txt:
3513         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
3514         (gst_basesrc_start):
3515         Added draft for new query API.
3516         Added draft for better selecting scheduling methods.
3517         Make basesrc ignore length if the subclass does not support
3518         it.
3519
3520 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3521
3522         * gst/Makefile.am:
3523           possible fixes for automake-1.5 - _LIBADD is reserved
3524
3525 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3526
3527         * docs/faq/Makefile.am:
3528         * docs/manual/Makefile.am:
3529         * docs/manuals.mak:
3530         * docs/pwg/Makefile.am:
3531         * gst/Makefile.am:
3532           possible fixes for automake-1.5
3533
3534 2005-04-28  Wim Taymans  <wim@fluendo.com>
3535
3536         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3537         (gst_basesink_pad_getcaps), (gst_basesink_init),
3538         (gst_basesink_do_sync):
3539         * gst/gstclock.c: (gst_clock_entry_new):
3540         * gst/gstevent.c: (gst_event_discont_get_value):
3541         * gst/gstpipeline.c: (pipeline_bus_handler),
3542         (gst_pipeline_change_state):
3543         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
3544         Better debugging of clocking info.
3545         Allow NULL values when getting discont values.
3546
3547 2005-04-27  Wim Taymans  <wim@fluendo.com>
3548
3549         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
3550         * check/gst/gstpad.c: (gst_pad_suite):
3551         Increase timeout for checks.
3552
3553 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3554
3555         * check/Makefile.am:
3556           fix the broken rule for cleanup.  Apparently this rule is
3557           only needed on FC2, so maybe this warrants further autotool
3558           inspection.
3559
3560 2005-04-26  Wim Taymans  <wim@fluendo.com>
3561
3562         * gst/gsttrashstack.h:
3563         Ooohh. a nasty one! After having a failed pop() from the stack,
3564         it's possible that the stack is empty. In that case, don't
3565         follow the NULL pointer.
3566
3567 2005-04-25  Wim Taymans  <wim@fluendo.com>
3568
3569         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3570         (gst_pad_set_checkgetrange_function),
3571         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
3572         (gst_pad_check_pull_range), (gst_pad_pull_range),
3573         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3574         (gst_pad_pause_task), (gst_pad_stop_task):
3575         * gst/gstplugin.c: (gst_plugin_load):
3576         * gst/gstplugin.h:
3577         Remove gst_library_load as it does more harm than good with
3578         the new g_module flags.
3579         Revert bogus caps template check in pad linking, pad caps
3580         are important when linking not the template, which is more
3581         general than the current caps.
3582
3583 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3584
3585         * gst/autoplug/.cvsignore:
3586         * gst/autoplug/Makefile.am:
3587         * gst/autoplug/gstsearchfuncs.c:
3588         * gst/autoplug/gstsearchfuncs.h:
3589         * gst/autoplug/gstspider.c:
3590         * gst/autoplug/gstspider.h:
3591         * gst/autoplug/gstspideridentity.c:
3592         * gst/autoplug/gstspideridentity.h:
3593         * gst/autoplug/spidertest.c:
3594           Die, spider, die.
3595
3596 2005-04-25  Wim Taymans  <wim@fluendo.com>
3597
3598         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3599         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3600         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
3601         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
3602         * gst/gstpad.h:
3603         Added stubs for unimplemented functions. 
3604
3605 2005-04-24  David Schleef  <ds@schleef.org>
3606
3607         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
3608         please fix.
3609
3610 2005-04-24  David Schleef  <ds@schleef.org>
3611
3612         Convert everything from GstAtomicInt to g_atomic_int_*, and
3613         remove gstatomic.
3614         * gst/Makefile.am:
3615         * gst/gstatomic.c:
3616         * gst/gstatomic.h:
3617         * gst/gstatomic_impl.h:
3618         * gst/gstbuffer.c:
3619         * gst/gstcaps.c:
3620         * gst/gstcaps.h:
3621         * gst/gstclock.c:
3622         * gst/gstclock.h:
3623         * gst/gstdata.c:
3624         * gst/gstdata.h:
3625         * gst/gstdata_private.h:
3626         * gst/gstevent.c:
3627         * gst/gstinfo.c:
3628         * gst/gstinfo.h:
3629         * gst/gstmessage.c:
3630         * gst/gstobject.c:
3631         * gst/gstobject.h:
3632         * gst/gststructure.c:
3633         * gst/gststructure.h:
3634         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
3635         * gst/gstutils.h:
3636
3637 2005-04-24  David Schleef  <ds@schleef.org>
3638
3639         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
3640         make the regressions tests work.  Remove some code that is no
3641         longer true.
3642         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
3643         Disable warning for pads without templates.
3644
3645 2005-04-24  David Schleef  <ds@schleef.org>
3646
3647         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
3648         functions that handle filtered links.
3649         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
3650         removed functions.
3651         * gst/gstutils.c: Fix/remove utility functions that handle
3652         filtered caps.
3653         * gst/gstutils.h:
3654         * gst/gstvalue.c: Add serialization/deserialization of caps
3655         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
3656         requires fixing so that the filter caps notation creates
3657         a capsfilter element and sets the filter_caps property.  I
3658         think everyone probably wants to keep the shorthand notation.
3659         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
3660         * docs/gst/tmpl/gstpad.sgml:
3661
3662         * gst/elements/gstelements.c: Register capsfilter element.
3663         * gst/Makefile.am: fix spacing
3664         * docs/random/ds/0.9-suggested-changes: random
3665
3666 2005-04-23  David Schleef  <ds@schleef.org>
3667
3668         * gst/elements/Makefile.am:
3669         * gst/elements/gstcapsfilter.c: New element that acts like an
3670         identity, but filters caps.  Will eventually replace filtered
3671         caps in pad linking.
3672         * gst/gstutils.c: (gst_element_create_all_pads): New function
3673         to create all the ALWAYS pads that are registered with an
3674         element class.  This functionality should eventually be
3675         merged in with GstElement initialization.
3676         * gst/gstutils.h:
3677         * testsuite/trigger/README: part of trigger test code that should
3678         have been checked in a long time ago.
3679
3680 2005-04-23  David Schleef  <ds@schleef.org>
3681
3682         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
3683         needed with new versions of libtool (nobody will confirm this),
3684         and hard to carry around.
3685         * gst/autoplug/Makefile.am:
3686         * gst/base/Makefile.am:
3687         * gst/elements/Makefile.am:
3688         * gst/indexers/Makefile.am:
3689         * gst/schedulers/Makefile.am:
3690         * libs/gst/bytestream/Makefile.am:
3691         * libs/gst/control/Makefile.am:
3692         * libs/gst/dataprotocol/Makefile.am:
3693         * libs/gst/getbits/Makefile.am:
3694
3695 2005-04-21  Wim Taymans  <wim@fluendo.com>
3696
3697         * docs/design/draft-push-pull.txt:
3698         * docs/design/part-MT-refcounting.txt:
3699         * docs/design/part-TODO.txt:
3700         * docs/design/part-caps.txt:
3701         * docs/design/part-events.txt:
3702         * docs/design/part-gstbus.txt:
3703         * docs/design/part-gstpipeline.txt:
3704         * docs/design/part-messages.txt:
3705         * docs/design/part-push-pull.txt:
3706         * docs/design/part-query.txt:
3707         Some more docs.
3708
3709 2005-04-21  Wim Taymans  <wim@fluendo.com>
3710
3711         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
3712         (gst_message_new), (gst_message_new_error),
3713         (gst_message_new_warning), (gst_message_new_tag),
3714         (gst_message_new_state_changed), (gst_message_new_application),
3715         (gst_message_get_structure):
3716         * gst/gstmessage.h:
3717         * gst/gststructure.c: (gst_structure_set_parent_refcount),
3718         (gst_structure_copy_conditional):
3719         Use parent refcount in GstMessage to ensure GstStructure
3720         consistency.
3721         Cleaned up headers a bit.
3722         
3723
3724 2005-04-20  Wim Taymans  <wim@fluendo.com>
3725
3726         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3727         (gst_basesink_pad_getcaps), (gst_basesink_init),
3728         (gst_basesink_chain_unlocked):
3729         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
3730         (gst_type_find_helper):
3731         * gst/elements/gsttypefindelement.c:
3732         (gst_type_find_element_have_type), (gst_type_find_element_init),
3733         (stop_typefinding), (gst_type_find_element_handle_event),
3734         (find_suggest), (gst_type_find_element_chain),
3735         (gst_type_find_element_checkgetrange),
3736         (gst_type_find_element_getrange), (do_typefind),
3737         (gst_type_find_element_activate):
3738         * gst/gstbuffer.c: (_gst_buffer_sub_free),
3739         (gst_buffer_default_free), (gst_buffer_default_copy),
3740         (gst_buffer_set_caps):
3741         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
3742         (gst_caps_replace):
3743         * gst/gstmessage.c: (gst_message_new),
3744         (gst_message_new_state_changed):
3745         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3746         (gst_pad_set_checkgetrange_function),
3747         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
3748         (gst_pad_set_caps), (gst_pad_check_pull_range),
3749         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
3750         * gst/gstpad.h:
3751         * gst/gsttypefind.c: (gst_type_find_register):
3752         Make gst_caps_replace() work like other _replace() functions.
3753         Use _caps_replace() where possible.
3754         Make sure _message_new() initialises its field.
3755         Add gst_static_pad_template_get_caps()
3756
3757
3758 2005-04-18  Andy Wingo  <wingo@pobox.com>
3759
3760         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
3761         on the peer, not the pad. I think that was a typo. Pass an extra
3762         arg to see if random access is possible. Activate the pads as
3763         PULL_RANGE if possible.
3764
3765         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
3766
3767         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
3768         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
3769         to PROP_....
3770
3771 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3772
3773         * docs/faq/using.xml:
3774           Add note on gstreamer-properties (#154996).
3775
3776 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3777
3778         * docs/random/bbb/optional-properties:
3779           Some analysis on optional properties.
3780
3781 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3782
3783         * docs/gst/tmpl/gstelementfactory.sgml:
3784         * gst/gstelement.h:
3785         * gst/gstelementfactory.c: (gst_element_factory_init),
3786         (gst_element_factory_cleanup), (gst_element_register),
3787         (__gst_element_factory_add_static_pad_template),
3788         (gst_element_factory_get_static_pad_templates),
3789         (gst_element_factory_can_src_caps),
3790         (gst_element_factory_can_sink_caps):
3791         * gst/registries/Makefile.am:
3792         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
3793         (gst_xml_registry_class_init), (gst_xml_registry_init),
3794         (gst_xml_registry_new), (gst_xml_registry_set_property),
3795         (gst_xml_registry_get_property), (get_time), (make_dir),
3796         (gst_xml_registry_get_perms_func),
3797         (plugin_times_older_than_recurse), (plugin_times_older_than),
3798         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
3799         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
3800         (add_to_char_array), (read_string), (read_uint), (read_enum),
3801         (load_pad_template), (load_feature), (load_plugin), (load_paths),
3802         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
3803         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
3804         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
3805         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
3806         (gst_xml_registry_rebuild):
3807         * gst/registries/gstlibxmlregistry.h:
3808         * tools/gst-compprep.c: (main):
3809         * tools/gst-inspect.c: (print_pad_templates_info):
3810         * tools/gst-xmlinspect.c: (print_element_info):
3811           Use libxml2 for registry parsing, use staticpadtemplates in
3812           elementfactories. Makes gst_init() +/- 10x faster.
3813
3814 2005-04-12  Wim Taymans  <wim@fluendo.com>
3815
3816         * gst/base/Makefile.am:
3817         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3818         (gst_basesink_pad_getcaps), (gst_basesink_init),
3819         (gst_basesink_event), (gst_basesink_change_state):
3820         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3821         (gst_basesrc_init), (gst_basesrc_query),
3822         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3823         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3824         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3825         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3826         (gst_basesrc_stop), (gst_basesrc_activate),
3827         (gst_basesrc_change_state):
3828         * gst/base/gsttypefindhelper.c: (helper_find_peek),
3829         (helper_find_suggest), (gst_type_find_helper):
3830         * gst/base/gsttypefindhelper.h:
3831         * gst/elements/Makefile.am:
3832         * gst/elements/gstelements.c:
3833         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3834         (gst_fakesink_get_times), (gst_fakesink_event),
3835         (gst_fakesink_preroll), (gst_fakesink_render):
3836         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3837         (gst_fakesrc_init), (gst_fakesrc_event_handler),
3838         (gst_fakesrc_get_property), (gst_fakesrc_create),
3839         (gst_fakesrc_start), (gst_fakesrc_stop):
3840         * gst/elements/gstfakesrc.h:
3841         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
3842         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3843         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3844         (gst_filesrc_create_read), (gst_filesrc_create),
3845         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
3846         (gst_filesrc_start):
3847         * gst/elements/gsttypefindelement.c:
3848         (gst_type_find_element_have_type), (gst_type_find_element_init),
3849         (start_typefinding), (stop_typefinding), (push_buffer_store),
3850         (gst_type_find_element_handle_event),
3851         (gst_type_find_element_chain),
3852         (gst_type_find_element_checkgetrange),
3853         (gst_type_find_element_getrange), (do_typefind),
3854         (gst_type_find_element_activate),
3855         (gst_type_find_element_change_state):
3856         * gst/elements/gsttypefindelement.h:
3857         * gst/gstpipeline.c: (pipeline_bus_handler):
3858         Added typefind helper.
3859         Small preroll fix in the base sink.
3860         Disable typefind code in basesrc.
3861         Crude port of typefindelement.
3862         Fakesrc cleanups.
3863
3864
3865 2005-04-11  Wim Taymans  <wim@fluendo.com>
3866
3867         * check/gst/gstbus.c: (gstbus_suite):
3868         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
3869         * check/gstcheck.h:
3870           Fix up the timeout so that the test does not fail.
3871
3872 2005-04-06  Wim Taymans  <wim@fluendo.com>
3873
3874         * gst/base/README:
3875         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3876         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
3877         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3878         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3879         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3880         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3881         (gst_basesrc_stop), (gst_basesrc_activate),
3882         (gst_basesrc_change_state), (basesrc_find_peek),
3883         (basesrc_find_suggest), (gst_basesrc_type_find):
3884         * gst/base/gstbasesrc.h:
3885         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
3886         (gst_filesrc_class_init), (gst_filesrc_init),
3887         (gst_filesrc_finalize), (gst_filesrc_set_location),
3888         (gst_filesrc_set_property), (gst_filesrc_get_property),
3889         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3890         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3891         (gst_filesrc_create_read), (gst_filesrc_create),
3892         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
3893         * gst/elements/gstfilesrc.h:
3894         * gst/gstelement.c: (gst_element_get_state_func),
3895         (gst_element_lost_state), (gst_element_pads_activate):
3896         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3897         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3898         (gst_pad_pull_range):
3899         * gst/gstpad.h:
3900         More work on the generic source base class, implement seeking,
3901         query.
3902         Make filesrc extend the base source class.
3903         Added gst_pad_set_checkgetrange_function to GstPad.
3904
3905 2005-04-06  Andy Wingo  <wingo@pobox.com>
3906
3907         * pkgconfig/gstreamer-base.pc.in:
3908         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
3909
3910         * pkgconfig/Makefile.am:
3911         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
3912
3913 2005-04-04  Wim Taymans  <wim@fluendo.com>
3914
3915         * gst/base/Makefile.am:
3916         * gst/base/README:
3917         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3918         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
3919         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
3920         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
3921         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3922         (gst_basesrc_base_init), (gst_basesrc_class_init),
3923         (gst_basesrc_init), (gst_basesrc_get_formats),
3924         (gst_basesrc_get_query_types), (gst_basesrc_query),
3925         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
3926         (gst_basesrc_set_property), (gst_basesrc_get_property),
3927         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
3928         (gst_basesrc_loop), (gst_basesrc_activate),
3929         (gst_basesrc_change_state):
3930         * gst/base/gstbasesrc.h:
3931         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
3932         (gst_fakesrc_class_init), (gst_fakesrc_init),
3933         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
3934         (gst_fakesrc_get_property), (gst_fakesrc_create):
3935         * gst/elements/gstfakesrc.h:
3936         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
3937         (gst_filesrc_open_file), (gst_filesrc_loop),
3938         (gst_filesrc_activate), (filesrc_find_peek),
3939         (gst_filesrc_type_find):
3940         Made base source class, make fakesrc extend it.
3941         Add comments to basesink class.
3942         Some filesrc cleanup.
3943
3944 2005-03-31  David Schleef  <ds@schleef.org>
3945
3946         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
3947         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
3948         expected to link against libgstreamer.
3949         * gst/base/Makefile.am: link against libgstreamer
3950         * gst/elements/Makefile.am: same
3951
3952 2005-03-31  Andy Wingo  <wingo@pobox.com>
3953
3954         * tests/instantiate/Makefile.am:
3955         * tests/instantiate/caps.c: Add test to test speed of caps copy
3956         and free.
3957
3958         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
3959         GMemChunk to be fair.
3960
3961         * gst/gsttrashstack.h: Remove warning about using the fallback
3962         trash stack implementation, it's still faster than malloc.
3963
3964 2005-03-30  Andy Wingo  <wingo@pobox.com>
3965
3966         * tests/complexity.c: Add a copyright.
3967
3968 2005-03-31  Wim Taymans  <wim@fluendo.com>
3969
3970         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
3971         (gst_base_transform_class_init), (gst_base_transform_init),
3972         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
3973         (gst_base_transform_get_property),
3974         (gst_base_transform_sink_activate),
3975         (gst_base_transform_src_activate),
3976         (gst_base_transform_change_state):
3977         * gst/base/gstbasetransform.h:
3978         * gst/elements/gstidentity.c: (gst_identity_class_init),
3979         (gst_identity_event), (gst_identity_check_perfect),
3980         (gst_identity_transform), (gst_identity_start),
3981         (gst_identity_stop):
3982         Added start/stop methods to transform base class so subclasses 
3983         don't need to deal with state changes even.
3984
3985 2005-03-31  Wim Taymans  <wim@fluendo.com>
3986
3987         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
3988         (gst_event_new_discontinuous), (gst_event_discont_get_value):
3989         * gst/gstevent.h:
3990         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3991         (gst_pad_pull_range):
3992         Added rate to the discont event to prepare for variable speed
3993         and reverse playback.
3994
3995 2005-03-29  David Schleef  <ds@schleef.org>
3996
3997         * configure.ac:
3998         * testsuite/trigger/Makefile.am:
3999         * testsuite/trigger/trigger.c: A little example program to show
4000         how trigger-based elements can work.
4001
4002 2005-03-29  Wim Taymans  <wim@fluendo.com>
4003
4004         * gst/base/Makefile.am:
4005         * gst/base/README:
4006         * gst/base/gstbasesink.c: (gst_basesink_get_type),
4007         (gst_basesink_base_init), (gst_basesink_class_init),
4008         (gst_basesink_pad_getcaps), (gst_basesink_init),
4009         (gst_basesink_activate), (gst_basesink_change_state):
4010         * gst/base/gstbasesink.h:
4011         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
4012         (gst_base_transform_base_init), (gst_base_transform_finalize),
4013         (gst_base_transform_class_init), (gst_base_transform_init),
4014         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
4015         (gst_base_transform_event), (gst_base_transform_getrange),
4016         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
4017         (gst_base_transform_set_property),
4018         (gst_base_transform_get_property),
4019         (gst_base_transform_sink_activate),
4020         (gst_base_transform_src_activate),
4021         (gst_base_transform_change_state):
4022         * gst/base/gstbasetransform.h:
4023         * gst/elements/gstidentity.c: (gst_identity_finalize),
4024         (gst_identity_class_init), (gst_identity_init),
4025         (gst_identity_event), (gst_identity_check_perfect),
4026         (gst_identity_transform), (gst_identity_set_property),
4027         (gst_identity_get_property), (gst_identity_change_state):
4028         * gst/elements/gstidentity.h:
4029         * gst/gstelement.c: (gst_element_get_state_func),
4030         (gst_element_lost_state), (gst_element_pads_activate):
4031         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4032         (gst_pad_check_pull_range), (gst_pad_pull_range):
4033         * gst/gstpad.h:
4034         Simplify pad activation.
4035         Added function to check if pull_range can be performed.
4036         Error out when pulling inactive or flushing pads.
4037         Removed const from refcounted types as it does not make sense.
4038         Simplify pad templates in basesink
4039         Added base class for simple 1-to-1 transforms.
4040         Make identity subclass the base transform.
4041
4042 2005-03-29  Andy Wingo  <wingo@pobox.com>
4043
4044         * docs/libs/gstreamer-libs-overrides.txt: 
4045         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
4046         really don't understand what's going on, but like whatever. I want
4047         green buildbot!
4048
4049         * docs/gst/Makefile.am:
4050         * docs/libs/Makefile.am: Dist the overrides files.
4051
4052         * check/Makefile.am (clean-local): Remove .libs directories.
4053
4054         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
4055         elements to EXTRA_DIST, so po/ files are happy.
4056
4057         * po/POTFILES.in: Er, remove it here.
4058
4059         * po/POTFILES: Remove gstspider.c.
4060
4061         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
4062
4063         * docs/libs/gstreamer-libs-docs.sgml: 
4064         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
4065         bytestream.
4066
4067         * tests/complexity.c (main): Set the length of the preroll queue
4068         on the sinks to prevent a lockup.
4069
4070         * libs/gst/dataprotocol/Makefile.am: 
4071         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
4072         the same as the one in check/gst-libs/gdp.c.
4073
4074         * po/, docs/gst/: Commit automatic changes to docs and po files.
4075
4076         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
4077         the versioned libgstbase.
4078
4079         * check/Makefile.am: Depend on an unversioned gst-register, seems
4080         to make autoconf happier.
4081
4082         * gst/base/Makefile.am: Make libgstbase a versioned lib.
4083
4084 2005-03-28  Wim Taymans  <wim@fluendo.com>
4085
4086         * configure.ac:
4087         * docs/design/part-gstelement.txt:
4088         * docs/design/part-negotiation.txt:
4089         * docs/design/part-preroll.txt:
4090         * docs/design/part-scheduling.txt:
4091         * docs/design/part-states.txt:
4092         * gst/Makefile.am:
4093         * gst/base/Makefile.am:
4094         * gst/base/README:
4095         * gst/base/gstbasesink.c: (gst_basesink_get_template),
4096         (gst_basesink_base_init), (gst_basesink_class_init),
4097         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4098         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4099         (gst_basesink_set_pad_functions),
4100         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
4101         (gst_basesink_set_property), (gst_basesink_get_property),
4102         (gst_base_sink_get_template), (gst_base_sink_get_caps),
4103         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
4104         (gst_basesink_preroll_queue_push),
4105         (gst_basesink_preroll_queue_empty),
4106         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
4107         (gst_basesink_event), (gst_basesink_get_times),
4108         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
4109         (gst_basesink_chain_unlocked), (gst_basesink_chain),
4110         (gst_basesink_loop), (gst_basesink_activate),
4111         (gst_basesink_change_state):
4112         * gst/base/gstbasesink.h:
4113         * gst/elements/Makefile.am:
4114         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
4115         (gst_fakesink_class_init), (gst_fakesink_init),
4116         (gst_fakesink_set_property), (gst_fakesink_get_property),
4117         (gst_fakesink_get_times), (gst_fakesink_event),
4118         (gst_fakesink_preroll), (gst_fakesink_render),
4119         (gst_fakesink_change_state):
4120         * gst/elements/gstfakesink.h:
4121         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4122         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
4123         * gst/gstelement.c: (gst_element_add_pad),
4124         (gst_element_get_state_func), (gst_element_abort_state),
4125         (gst_element_commit_state), (gst_element_lost_state),
4126         (gst_element_set_state), (gst_element_pads_activate):
4127         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
4128         * gst/gstpipeline.c: (gst_pipeline_send_event),
4129         (gst_pipeline_change_state):
4130         Added state change code.
4131         Added/updated docs.
4132         Added sink base class, make fakesink extend the base class.
4133         Small cleanups in GstPipeline.
4134
4135 2005-03-26  David Schleef  <ds@schleef.org>
4136
4137         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
4138         is broken and should be implemented in a different library.
4139         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
4140         * gst/gst.h: remove gstcpu.h
4141         * gst/gstcpu.c: remove
4142         * gst/gstcpu.h: remove
4143         * gst/Makefile.am.future: Remove this file.  It's ancient.
4144
4145 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4146
4147         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4148         (gst_bin_send_event):
4149           Add default event/set_manager handlers. The set_manager handler
4150           takes care that the manager is distributed over kids that were
4151           already in the bin before the manager was set. The event handler
4152           is a utility virtual function that sends the event over all sinks,
4153           so that gst_element_send_event (bin, event); has the expected
4154           behaviour.
4155         * gst/gstpad.c: (gst_pad_event_default):
4156           Re-install default event handling for discontinuities, so that
4157           seeking works without requiring hacks in applications or extra
4158           code in sinks.
4159         * gst/gstpipeline.c: (gst_pipeline_class_init),
4160         (gst_pipeline_send_event):
4161           Half hack, half utility: set a pipeline to PAUSED for seek events,
4162           since that is the only way we can guarantee a/v sync. Means that
4163           you can do gst_element_seek (pipeline, method, pos); on a pipeline
4164           and it "just works".
4165
4166 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4167
4168         * gst/gstpipeline.c: (gst_pipeline_use_clock):
4169           Lock/unlock mismatch.
4170
4171 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
4172
4173         * docs/faq/gst-uninstalled:
4174           add gst-plugins-base
4175         * docs/gst/Makefile.am:
4176           don't error out until docs are fixed
4177         * docs/gst/gstreamer.types:
4178           remove thread
4179
4180 2005-03-22  Wim Taymans  <wim@fluendo.com>
4181
4182         * check/Makefile.am:
4183         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
4184         * gst/gststructure.c: (gst_structure_set_valist),
4185         (gst_structure_copy_conditional):
4186         Activated more tests.
4187         Added message test.
4188         Added G_TYPE_POINTER to GstStructure.
4189         
4190
4191 2005-03-22  Wim Taymans  <wim@fluendo.com>
4192
4193         * docs/design/part-TODO.txt:
4194         * docs/design/part-events.txt:
4195         * docs/design/part-gstbin.txt:
4196         * docs/design/part-gstbus.txt:
4197         * docs/design/part-gstpipeline.txt:
4198         * docs/design/part-messages.txt:
4199         * gst/gstbus.c:
4200         * gst/gstmessage.c:
4201         Docs updates
4202
4203 2005-03-21  Wim Taymans  <wim@fluendo.com>
4204
4205         * gst/gstbus.c: (gst_bus_post):
4206         Fix copy-and-paste error.
4207
4208 2005-03-21  Wim Taymans  <wim@fluendo.com>
4209
4210         * check/Makefile.am:
4211         * gst/Makefile.am:
4212         * gst/elements/Makefile.am:
4213         * gst/elements/gstelements.c:
4214         * gst/elements/gstfakesink.c: (gst_fakesink_init),
4215         (gst_fakesink_event), (gst_fakesink_chain):
4216         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4217         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
4218         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
4219         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
4220         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
4221         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
4222         (gst_fakesrc_loop), (gst_fakesrc_activate),
4223         (gst_fakesrc_change_state):
4224         * gst/elements/gstfakesrc.h:
4225         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
4226         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
4227         (gst_filesrc_open_file), (gst_filesrc_loop),
4228         (gst_filesrc_activate), (gst_filesrc_change_state),
4229         (filesrc_find_peek), (filesrc_find_suggest),
4230         (gst_filesrc_type_find):
4231         * gst/elements/gstidentity.c: (gst_identity_finalize),
4232         (gst_identity_class_init), (gst_identity_init),
4233         (gst_identity_proxy_getcaps), (identity_queue_push),
4234         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
4235         (gst_identity_getrange), (gst_identity_chain),
4236         (gst_identity_sink_loop), (gst_identity_src_loop),
4237         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
4238         (gst_identity_set_property), (gst_identity_get_property),
4239         (gst_identity_change_state):
4240         * gst/elements/gstidentity.h:
4241         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
4242         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
4243         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
4244         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
4245         (gst_tee_sink_activate):
4246         * gst/elements/gsttee.h:
4247         * gst/gst.c: (gst_register_core_elements), (init_post):
4248         * gst/gst.h:
4249         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
4250         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
4251         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
4252         (gst_bin_change_state):
4253         * gst/gstbin.h:
4254         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
4255         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
4256         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
4257         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
4258         (gst_bus_set_sync_handler), (gst_bus_create_watch),
4259         (bus_watch_callback), (bus_watch_destroy),
4260         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
4261         (poll_timeout), (gst_bus_poll):
4262         * gst/gstbus.h:
4263         * gst/gstcaps.h:
4264         * gst/gstdata.h:
4265         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4266         (gst_element_post_message), (gst_element_message_full),
4267         (gst_element_get_state_func), (gst_element_get_state),
4268         (gst_element_abort_state), (gst_element_commit_state),
4269         (gst_element_lost_state), (gst_element_set_state),
4270         (gst_element_pads_activate), (gst_element_change_state),
4271         (gst_element_dispose), (gst_element_set_manager_func),
4272         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
4273         (gst_element_set_manager), (gst_element_get_manager),
4274         (gst_element_set_bus), (gst_element_get_bus),
4275         (gst_element_set_scheduler), (gst_element_get_scheduler):
4276         * gst/gstelement.h:
4277         * gst/gstevent.c: (gst_event_new_segment_seek),
4278         (gst_event_new_flush):
4279         * gst/gstevent.h:
4280         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
4281         (_gst_message_free), (gst_message_get_type), (gst_message_new),
4282         (gst_message_new_eos), (gst_message_new_error),
4283         (gst_message_new_warning), (gst_message_new_tag),
4284         (gst_message_new_state_changed), (gst_message_new_application),
4285         (gst_message_get_structure), (gst_message_parse_tag),
4286         (gst_message_parse_state_changed), (gst_message_parse_error),
4287         (gst_message_parse_warning):
4288         * gst/gstmessage.h:
4289         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
4290         (gst_real_pad_set_property), (gst_pad_set_active),
4291         (gst_pad_is_active), (gst_pad_set_blocked_async),
4292         (gst_pad_set_blocked), (gst_pad_is_blocked),
4293         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
4294         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
4295         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
4296         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
4297         (gst_pad_link_filtered), (gst_pad_relink_filtered),
4298         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
4299         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
4300         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
4301         (gst_pad_set_caps), (gst_pad_configure_sink),
4302         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
4303         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
4304         (gst_real_pad_dispose), (gst_real_pad_finalize),
4305         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
4306         (gst_pad_event_default_dispatch), (gst_pad_event_default),
4307         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
4308         * gst/gstpad.h:
4309         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
4310         (pipeline_bus_handler), (gst_pipeline_change_state),
4311         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
4312         * gst/gstpipeline.h:
4313         * gst/gstprobe.h:
4314         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
4315         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
4316         (gst_queue_link_src), (gst_queue_bufferalloc),
4317         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
4318         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
4319         (gst_queue_loop), (gst_queue_handle_src_event),
4320         (gst_queue_handle_src_query), (gst_queue_src_activate),
4321         (gst_queue_change_state):
4322         * gst/gstqueue.h:
4323         * gst/gstscheduler.c: (gst_scheduler_init),
4324         (gst_scheduler_dispose), (gst_scheduler_create_task),
4325         (gst_scheduler_factory_create):
4326         * gst/gstscheduler.h:
4327         * gst/gststructure.c: (gst_structure_get_type),
4328         (gst_structure_copy_conditional):
4329         * gst/gststructure.h:
4330         * gst/gsttaginterface.h:
4331         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
4332         (gst_task_init), (gst_task_dispose), (gst_task_create),
4333         (gst_task_get_state), (gst_task_start), (gst_task_stop),
4334         (gst_task_pause):
4335         * gst/gsttask.h:
4336         * gst/gstthread.c:
4337         * gst/gstthread.h:
4338         * gst/gsttypes.h:
4339         * gst/schedulers/Makefile.am:
4340         * gst/schedulers/cothreads_compat.h:
4341         * gst/schedulers/entryscheduler.c:
4342         * gst/schedulers/faircothreads.c:
4343         * gst/schedulers/faircothreads.h:
4344         * gst/schedulers/fairscheduler.c:
4345         * gst/schedulers/gstbasicscheduler.c:
4346         * gst/schedulers/gstoptimalscheduler.c:
4347         * gst/schedulers/gthread-cothreads.h:
4348         * gst/schedulers/threadscheduler.c:
4349         (gst_thread_scheduler_task_get_type),
4350         (gst_thread_scheduler_task_class_init),
4351         (gst_thread_scheduler_task_init),
4352         (gst_thread_scheduler_task_start),
4353         (gst_thread_scheduler_task_stop),
4354         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
4355         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
4356         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
4357         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
4358         (plugin_init):
4359         * libs/gst/Makefile.am:
4360         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
4361         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
4362         (gst_file_pad_parent_set):
4363         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
4364         (gst_dp_event_from_packet):
4365         * tests/complexity.c: (main):
4366         * tests/mass_elements.c: (main):
4367         * testsuite/states/locked.c: (message_received), (main):
4368         * testsuite/states/parent.c: (main):
4369         * tools/gst-inspect.c: (print_element_flag_info),
4370         (print_implementation_info), (print_pad_info):
4371         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
4372         (main):
4373         * tools/gst-md5sum.c: (event_loop), (main):
4374         * tools/gst-typefind.c: (main):
4375         * tools/gst-xmlinspect.c: (print_element_info):
4376         Next big merge.
4377         Added GstBus for mainloop integration.
4378         Added GstMessage for sending notifications on the bus.
4379         Added GstTask as an abstraction for pipeline entry points.
4380         Removed GstThread.
4381         Removed Schedulers.
4382         Simplified GstQueue for multithreaded core.
4383         Made _link threadsafe, removed old capsnego.
4384         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
4385         Added pad blocking functions.
4386         Reworked scheduling functions in GstPad to prepare for
4387         scheduling updates soon.
4388         Moved events out of data stream.
4389         Simplified GstEvent types.
4390         Added return values to push/pull.
4391         Removed clocking from GstElement.
4392         Added prototypes for state change function for next merge.
4393         Removed iterate from bins and state change management.
4394         Fixed some elements, disabled others for now.
4395         Fixed -inspect and -launch.
4396         Added check for GstBus.
4397
4398 2005-03-10  Wim Taymans  <wim@fluendo.com>
4399
4400         * docs/design/part-MT-refcounting.txt:
4401         * docs/design/part-clocks.txt:
4402         * docs/design/part-gstelement.txt:
4403         * docs/design/part-gstobject.txt:
4404         * docs/design/part-standards.txt:
4405         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4406         (gst_bin_remove_func), (gst_bin_remove):
4407         * gst/gstbin.h:
4408         * gst/gstbuffer.c:
4409         * gst/gstcaps.h:
4410         * testsuite/clock/clock1.c: (main):
4411         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
4412         (main):
4413         * testsuite/dlopen/loadgst.c: (do_test):
4414         * testsuite/refcounting/bin.c: (add_remove_test1),
4415         (add_remove_test2), (main):
4416         * testsuite/refcounting/element.c: (main):
4417         * testsuite/refcounting/element_pad.c: (main):
4418         * testsuite/refcounting/pad.c: (main):
4419         * tools/gst-launch.c: (sigint_handler_sighandler):
4420         * tools/gst-typefind.c: (main):
4421         Doc updates.
4422         Added doc about clock.
4423         removed gst_bin_iterate_recurse_up(), marked methods
4424         for removal.
4425         Fix more testsuites.
4426
4427 2005-03-09  Wim Taymans  <wim@fluendo.com>
4428
4429         * gst/gstpad.c: (gst_pad_get_direction),
4430         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
4431         (gst_pad_collect_valist):
4432         * testsuite/bins/interface.c: (main):
4433         * testsuite/caps/audioscale.c: (test_caps):
4434         * testsuite/caps/caps.c: (test1), (test2), (test3):
4435         * testsuite/caps/deserialize.c: (main):
4436         * testsuite/caps/enumcaps.c: (main):
4437         * testsuite/caps/filtercaps.c: (main):
4438         * testsuite/caps/intersect2.c: (main):
4439         * testsuite/caps/random.c: (main):
4440         * testsuite/caps/renegotiate.c: (my_fixate), (main):
4441         * testsuite/caps/sets.c: (check_caps):
4442         * testsuite/caps/simplify.c: (check_caps), (main):
4443         * testsuite/caps/subtract.c: (check_caps):
4444         Fix _pad_get_direction wrt ghostpads.
4445         Fix caps testsuite.
4446
4447 2005-03-09  Wim Taymans  <wim@fluendo.com>
4448
4449         * check/Makefile.am:
4450         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
4451         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
4452         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
4453         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
4454         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
4455         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
4456         (gst_bin_remove), (gst_bin_iterate_recurse_up),
4457         (bin_element_is_sink), (gst_bin_iterate_sinks),
4458         (gst_bin_iterate_all_by_interface):
4459         * gst/gstbin.h:
4460         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
4461         (gst_element_change_state), (gst_element_dispose),
4462         (gst_element_finalize), (gst_element_set_loop_function):
4463         * gst/gstelement.h:
4464         * gst/gstiterator.c: (find_custom_fold_func):
4465         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4466         (gst_pad_collectv), (gst_pad_collect_valist),
4467         (gst_pad_template_new):
4468         * gst/gstpipeline.c: (gst_pipeline_class_init),
4469         (gst_pipeline_dispose), (gst_pipeline_set_property),
4470         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
4471         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
4472         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
4473         * gst/gstutils.h:
4474         * gst/schedulers/entryscheduler.c:
4475         * gst/schedulers/gstbasicscheduler.c:
4476         (gst_basic_scheduler_cothreaded_chain),
4477         (gst_basic_scheduler_chain_add_element):
4478         * testsuite/bins/interface.c: (main):
4479         Added GstBin test.
4480         Added GstSystemClock test.
4481         Implemented clock distribution code in GstBin.
4482         Implemented iterate sinks method for future use.
4483         Rearranged gstelement.h
4484         Fix GstIterator comparison bug.
4485         Moved some code to GstPipeline, mostly clocking related.
4486
4487 2005-03-09  Wim Taymans  <wim@fluendo.com>
4488
4489         * configure.ac:
4490         * gst/gst_private.h:
4491         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4492         (gst_bin_remove_func), (gst_bin_remove),
4493         (gst_bin_get_by_name_recurse_up):
4494         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
4495         (gst_clock_id_compare_func), (gst_clock_id_wait),
4496         (gst_clock_id_wait_async), (gst_clock_init),
4497         (gst_clock_adjust_unlocked), (gst_clock_get_time):
4498         * gst/gstelement.h:
4499         * gst/gstinfo.c: (_gst_debug_init):
4500         * gst/gstobject.h:
4501         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4502         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
4503         * gst/gstpad.h:
4504         Bump version number, we're now 0.9.0
4505         Add future debugging category.
4506         Fix NULL _unref() in _get_by_name_recurse_up
4507         Rearrange gstpad.h.
4508         Update some docs.
4509
4510 2005-03-08  Wim Taymans  <wim@fluendo.com>
4511
4512         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
4513         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4514         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
4515         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
4516         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
4517         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
4518         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
4519         * gst/elements/gstidentity.c: (gst_identity_class_init):
4520         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
4521         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
4522         * gst/elements/gstshaper.c: (gst_shaper_class_init):
4523         * gst/elements/gststatistics.c: (gst_statistics_class_init):
4524         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
4525         (gst_tee_link):
4526         * gst/gstelement.c: (gst_element_class_init),
4527         (gst_element_base_class_init), (gst_element_init),
4528         (gst_element_get_random_pad), (gst_element_wait_state_change),
4529         (gst_element_change_state), (gst_element_dispose),
4530         (gst_element_finalize), (gst_element_set_loop_function):
4531         * gst/gstelement.h:
4532         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
4533         * gst/gstthread.c: (gst_thread_class_init),
4534         (gst_thread_release_children_locks), (gst_thread_change_state):
4535         * gst/schedulers/gstbasicscheduler.c:
4536         (gst_basic_scheduler_loopfunc_wrapper),
4537         (gst_basic_scheduler_chain_wrapper),
4538         (gst_basic_scheduler_src_wrapper),
4539         (gst_basic_scheduler_remove_element):
4540         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4541         Remove threadsafe properties. Fix elements because GObject
4542         complains when installing a property before declaring a
4543         set/get_property handler.
4544         Rearrange gstelement.h file, use STATE macros for state locks.
4545         Free mutexes in the finalize method instead of dispose.
4546
4547 2005-03-08  Wim Taymans  <wim@fluendo.com>
4548
4549         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
4550         * gst/gstthread.c: (gst_thread_release_children_locks):
4551         Added parentage check.
4552         Fix build og GstThread again.
4553
4554 2005-03-08  Wim Taymans  <wim@fluendo.com>
4555
4556         * docs/design/part-MT-refcounting.txt:
4557         * docs/design/part-conventions.txt:
4558         * docs/design/part-gstobject.txt:
4559         * docs/design/part-relations.txt:
4560         * docs/design/part-standards.txt:
4561         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4562         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
4563         (gst_bin_get_by_name), (gst_bin_get_by_interface),
4564         (gst_bin_iterate_all_by_interface):
4565         * gst/gstbuffer.h:
4566         * gst/gstclock.h:
4567         * gst/gstelement.c: (gst_element_class_init),
4568         (gst_element_change_state), (gst_element_set_loop_function):
4569         * gst/gstelement.h:
4570         * gst/gstiterator.c:
4571         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
4572         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
4573         (gst_object_dispatch_properties_changed), (gst_object_set_name),
4574         (gst_object_set_parent), (gst_object_unparent),
4575         (gst_object_check_uniqueness):
4576         * gst/gstobject.h:
4577         Docs updates, clean up some headers.
4578
4579 2005-03-07  Wim Taymans  <wim@fluendo.com>
4580
4581         * check/.cvsignore:
4582         * check/Makefile.am:
4583         * check/gst-libs/.cvsignore:
4584         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
4585         * check/gst/.cvsignore:
4586         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
4587         (START_TEST), (gstbus_suite), (main):
4588         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
4589         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
4590         (gst_data_suite), (main):
4591         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
4592         (add_fold_func), (gstiterator_suite), (main):
4593         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
4594         (thread_name_object), (thread_name_object_default),
4595         (gst_object_name_compare), (gst_object_suite), (main):
4596         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
4597         (gst_pad_suite), (main):
4598         * check/gstcheck.c: (gst_check_log_message_func),
4599         (gst_check_log_critical_func), (gst_check_init):
4600         * check/gstcheck.h:
4601         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
4602         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
4603         Added checks.
4604
4605 2005-03-07  Wim Taymans  <wim@fluendo.com>
4606
4607         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
4608         (gst_list_iterator_next), (gst_list_iterator_resync),
4609         (gst_list_iterator_free), (gst_iterator_new_list),
4610         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
4611         (gst_iterator_free), (gst_iterator_push), (filter_next),
4612         (filter_resync), (filter_uninit), (filter_free),
4613         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
4614         (gst_iterator_foreach), (find_custom_fold_func),
4615         (gst_iterator_find_custom):
4616         * gst/gstiterator.h:
4617         Added missing files.
4618
4619 2005-03-07  Wim Taymans  <wim@fluendo.com>
4620
4621         * Makefile.am:
4622         * configure.ac:
4623         * docs/design/part-MT-refcounting.txt:
4624         * docs/design/part-conventions.txt:
4625         * docs/design/part-gstobject.txt:
4626         * docs/design/part-relations.txt:
4627         * examples/mixer/mixer.c: (main):
4628         * examples/thread/thread.c: (eos), (main):
4629         * gst/Makefile.am:
4630         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
4631         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
4632         (gst_spider_plug_from_srcpad):
4633         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
4634         (gst_spider_identity_change_state),
4635         (gst_spider_identity_sink_loop_type_finding):
4636         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
4637         * gst/elements/gstidentity.c: (gst_identity_init):
4638         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
4639         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
4640         * gst/elements/gsttypefindelement.c: (free_entry):
4641         * gst/gst.c:
4642         * gst/gst.h:
4643         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
4644         (gst_bin_set_clock_func), (gst_bin_auto_clock),
4645         (gst_bin_set_index), (gst_bin_set_element_sched),
4646         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
4647         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
4648         (gst_bin_iterate_elements), (iterate_child_recurse),
4649         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
4650         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
4651         (compare_interface), (gst_bin_get_by_interface),
4652         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
4653         * gst/gstbin.h:
4654         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
4655         (gst_buffer_default_free), (gst_buffer_default_copy),
4656         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
4657         (gst_buffer_create_sub):
4658         * gst/gstbuffer.h:
4659         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
4660         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
4661         (gst_caps_unref), (gst_static_caps_get),
4662         (gst_caps_remove_and_get_structure), (gst_caps_append),
4663         (gst_caps_append_structure), (gst_caps_remove_structure),
4664         (gst_caps_copy_nth), (gst_caps_set_simple),
4665         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
4666         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
4667         (gst_caps_structure_intersect_field), (gst_caps_intersect),
4668         (gst_caps_structure_subtract_field), (gst_caps_subtract),
4669         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
4670         (gst_caps_structure_figure_out_union),
4671         (gst_caps_switch_structures), (gst_caps_do_simplify),
4672         (gst_caps_replace), (gst_caps_from_string),
4673         (gst_caps_copy_conditional):
4674         * gst/gstcaps.h:
4675         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
4676         (_gst_clock_id_free), (gst_clock_id_unref),
4677         (gst_clock_id_compare_func), (gst_clock_id_wait),
4678         (gst_clock_id_wait_async), (gst_clock_class_init),
4679         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
4680         (gst_clock_get_time), (gst_clock_set_time_adjust),
4681         (gst_clock_set_property), (gst_clock_get_property):
4682         * gst/gstclock.h:
4683         * gst/gstcompat.h:
4684         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
4685         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
4686         * gst/gstdata.h:
4687         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4688         (gst_element_requires_clock), (gst_element_provides_clock),
4689         (gst_element_set_clock), (gst_element_clock_wait),
4690         (gst_element_wait), (gst_element_set_time_delay),
4691         (gst_element_is_indexable), (gst_element_add_pad),
4692         (gst_element_add_ghost_pad), (gst_element_remove_pad),
4693         (pad_compare_name), (gst_element_get_static_pad),
4694         (gst_element_request_pad), (gst_element_get_request_pad),
4695         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
4696         (gst_element_class_get_pad_template_list),
4697         (gst_element_class_get_pad_template), (gst_element_error_func),
4698         (gst_element_get_random_pad), (gst_element_get_event_masks),
4699         (gst_element_send_event), (gst_element_seek),
4700         (gst_element_get_query_types), (gst_element_query),
4701         (gst_element_get_formats), (gst_element_convert),
4702         (gst_element_is_locked_state), (gst_element_set_locked_state),
4703         (gst_element_sync_state_with_parent), (gst_element_change_state),
4704         (gst_element_finalize), (gst_element_yield),
4705         (gst_element_interrupt), (gst_element_set_scheduler),
4706         (gst_element_get_scheduler), (gst_element_set_loop_function):
4707         * gst/gstelement.h:
4708         * gst/gstevent.h:
4709         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
4710         (gst_format_get_by_nick), (gst_format_get_details),
4711         (gst_format_iterate_definitions):
4712         * gst/gstformat.h:
4713         * gst/gstindex.c: (gst_index_gtype_resolver):
4714         * gst/gstinfo.c:
4715         * gst/gstinfo.h:
4716         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
4717         (gst_mem_chunk_free):
4718         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
4719         (gst_object_ref), (gst_object_unref), (gst_object_sink),
4720         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
4721         (gst_object_dispatch_properties_changed),
4722         (gst_object_set_name_default), (gst_object_set_name),
4723         (gst_object_get_name), (gst_object_set_name_prefix),
4724         (gst_object_get_name_prefix), (gst_object_set_parent),
4725         (gst_object_get_parent), (gst_object_unparent),
4726         (gst_object_check_uniqueness), (gst_object_save_thyself),
4727         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
4728         (gst_object_set_property), (gst_object_get_property),
4729         (gst_object_get_path_string):
4730         * gst/gstobject.h:
4731         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
4732         (gst_real_pad_init), (gst_real_pad_get_property),
4733         (gst_pad_custom_new), (gst_pad_get_direction),
4734         (gst_pad_set_active), (gst_pad_is_active),
4735         (gst_pad_set_event_function), (gst_pad_is_linked),
4736         (gst_pad_link_free), (gst_pad_link_intersect),
4737         (gst_pad_link_fixate), (gst_pad_set_caps),
4738         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
4739         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
4740         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
4741         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
4742         (gst_pad_get_caps), (gst_pad_peer_get_caps),
4743         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
4744         (gst_pad_realize), (gst_pad_get_allowed_caps),
4745         (gst_real_pad_dispose), (gst_real_pad_finalize),
4746         (gst_pad_collectv), (gst_pad_collect_valist),
4747         (gst_pad_template_dispose), (gst_pad_template_new),
4748         (gst_pad_get_internal_links):
4749         * gst/gstpad.h:
4750         * gst/gstpipeline.c: (gst_pipeline_dispose),
4751         (gst_pipeline_change_state):
4752         * gst/gstpipeline.h:
4753         * gst/gstplugin.c:
4754         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
4755         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
4756         * gst/gstpluginfeature.h:
4757         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4758         * gst/gstquery.c: (_gst_query_type_initialize),
4759         (gst_query_type_register), (gst_query_type_get_by_nick),
4760         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
4761         * gst/gstquery.h:
4762         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
4763         * gst/gstscheduler.c: (gst_scheduler_add_element),
4764         (gst_scheduler_factory_create):
4765         * gst/gststructure.c: (gst_structure_set_parent_refcount),
4766         (gst_structure_free), (gst_structure_set_name),
4767         (gst_structure_id_set_value), (gst_structure_set_value),
4768         (gst_structure_set_valist), (gst_structure_remove_field),
4769         (gst_structure_remove_fields),
4770         (gst_structure_remove_fields_valist),
4771         (gst_structure_remove_all_fields), (gst_structure_foreach),
4772         (gst_structure_map_in_place),
4773         (gst_caps_structure_fixate_field_nearest_int),
4774         (gst_caps_structure_fixate_field_nearest_double):
4775         * gst/gststructure.h:
4776         * gst/gstsystemclock.c: (gst_system_clock_class_init),
4777         (gst_system_clock_init), (gst_system_clock_dispose),
4778         (gst_system_clock_async_thread),
4779         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
4780         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
4781         * gst/gstsystemclock.h:
4782         * gst/gsttag.c: (gst_tag_list_add_value_internal),
4783         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
4784         * gst/gsttaginterface.c:
4785         * gst/gstthread.c: (gst_thread_dispose),
4786         (gst_thread_release_children_locks), (gst_thread_change_state),
4787         (gst_thread_main_loop):
4788         * gst/gsttrashstack.h:
4789         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
4790         * gst/gsttypes.h:
4791         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
4792         (gst_element_request_pad), (gst_element_get_pad_from_template),
4793         (gst_element_request_compatible_pad),
4794         (gst_element_get_compatible_pad_filtered),
4795         (gst_element_get_compatible_pad), (gst_element_state_get_name),
4796         (gst_element_link_pads_filtered), (gst_element_link_filtered),
4797         (gst_element_link_many), (gst_element_link),
4798         (gst_element_link_pads), (gst_element_unlink_pads),
4799         (gst_element_unlink_many), (gst_element_unlink),
4800         (gst_pad_can_link_filtered), (gst_pad_can_link),
4801         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
4802         (gst_object_default_error), (gst_bin_add_many),
4803         (gst_bin_remove_many), (gst_element_populate_std_props),
4804         (gst_element_class_install_std_props), (gst_buffer_merge),
4805         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
4806         (link_fold_func), (gst_pad_proxy_setcaps):
4807         * gst/gstutils.h:
4808         * gst/gstvalue.c: (gst_value_deserialize_string):
4809         * gst/parse/grammar.y:
4810         * gst/schedulers/gstbasicscheduler.c:
4811         (gst_basic_scheduler_cothreaded_chain),
4812         (gst_basic_scheduler_chain_recursive_add),
4813         (gst_basic_scheduler_pad_link):
4814         * gst/schedulers/gstoptimalscheduler.c:
4815         (get_group_schedule_function),
4816         (gst_opt_scheduler_state_transition),
4817         (gst_opt_scheduler_add_element), (element_get_reachables_func):
4818         * libs/gst/bytestream/bytestream.c:
4819         * libs/gst/dataprotocol/dataprotocol.c:
4820         (gst_dp_header_from_buffer):
4821         * po/nb.po:
4822         * po/ru.po:
4823         * tests/threadstate/threadstate2.c: (eos):
4824         * tools/gst-compprep.c: (main):
4825         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
4826         (print_pad_info), (print_children_info):
4827         * tools/gst-launch.c: (idle_func), (main):
4828         * tools/gst-md5sum.c: (idle_func), (main):
4829         * tools/gst-xmlinspect.c: (print_element_info):
4830         First THREADED backport attempt, focusing on adding locks and
4831         making sure the API is threadsafe. Needs more work. More docs
4832         follow this week.
4833
4834 2005-02-24  Andy Wingo  <wingo@pobox.com>
4835
4836         * tests/bench-complexity.scm:
4837         * tests/complexity.gnuplot: New files, good for running complexity
4838         benchmarks.
4839
4840         * tests/Makefile.am:
4841         * tests/complexity.c: New test, sets up N elements, at each level
4842         teeing into M streams per element. Eeeenteresting.
4843
4844         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
4845         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
4846         running bench-mass_elements.scm.
4847
4848         * tests/bench-mass_elements.scm: New script, runs mass_elements
4849         for various numbers of identities, outputting the results to a
4850         file. Requires guile 1.6. Just for testing.
4851
4852 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
4853
4854         * gst/schedulers/fairscheduler.c:
4855           compile with debug disabled
4856
4857 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
4858
4859         * configure.ac:
4860           hunting season on 0.9 is now OPEN
4861
4862 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
4863
4864         * docs/libs/tmpl/gstcontrol.sgml:
4865         * docs/libs/tmpl/gstdparam.sgml:
4866         * docs/libs/tmpl/gstdplinint.sgml:
4867         * docs/libs/tmpl/gstdpman.sgml:
4868         * docs/libs/tmpl/gstdpsmooth.sgml:
4869         * docs/libs/tmpl/gstunitconvert.sgml:
4870           more docs for the state of dparams
4871
4872 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4873
4874         * gst/gstelementfactory.c: (gst_element_factory_create):
4875         * gst/gstobject.c: (gst_object_init),
4876         (gst_object_set_name_default), (gst_object_set_name):
4877           name objects by default, not in gst_element_factory_create. Allows
4878           using elements created with g_object_new. (fixes #167283)
4879
4880 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4881
4882         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
4883           make the time that debugging functions print relative to when
4884           gst_init was called
4885
4886 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
4887
4888         * gst/gsttaginterface.c:
4889           Fix inline docs: tag setter vararg functions are NULL-terminated,
4890           GST_TAG_INVALID doesn't exist any more.
4891
4892 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4893
4894         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
4895         Allocate the 1 byte more memory that was forgotten!!!!!
4896         fixes memory corruption on 64bit platforms
4897
4898 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
4899
4900         * docs/pwg/building-pads.xml:
4901         * docs/pwg/intro-basics.xml:
4902           fixed a few typos, relabeled introductionary list of types
4903         * docs/random/ensonic/dparams.txt:
4904           more notes abut dparam changes
4905         * libs/gst/control/dparam.c: (gst_dparam_attach):
4906         * libs/gst/control/dparammanager.c:
4907         * libs/gst/control/dparammanager.h:
4908           - many comments and notes on dparam implementation
4909           - new dparams are were not initialized to the default value
4910             from param spec
4911
4912 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
4913
4914         submitted by: Peter Astakhov
4915
4916         * po/LINGUAS:
4917         * po/ru.po:
4918           adding Russian translation
4919
4920 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
4921
4922         * configure.ac:
4923         * docs/gst/Makefile.am:
4924         * docs/libs/Makefile.am:
4925           make sure popt is added to gtk-doc flags.  Fixes #147782.
4926
4927 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
4928
4929         * docs/faq/using.xml:
4930           Fix typo in FAQ (artssink => artsdsink)
4931
4932 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4933
4934         * tools/gst-launch.1.in:
4935           Fix typo (#166699).
4936
4937 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
4938
4939         * docs/faq/using.xml:
4940           Add -v argument to fakesrc/fakesink gst-launch line,
4941           so that the promised output will actually show up.
4942
4943 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4944
4945         * gst/gstthread.c: (gst_thread_change_state):
4946           Implement state-change error handling (#166073).
4947
4948 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4949
4950         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
4951           Release interrupt after handling (#166250).
4952
4953 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4954
4955         * configure.ac:
4956           back to HEAD
4957
4958 === release 0.8.9 ===
4959
4960 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4961
4962         * NEWS:
4963         * RELEASE:
4964         * configure.ac:
4965           releasing 0.8.9, "Like Eating Glass"
4966
4967 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4968
4969         submitted by: Clytie Siddall
4970
4971         * po/vi.po: Added Vietnamese translation
4972
4973 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
4974
4975         patch by: Tim Philipp-Müller
4976
4977         * configure.ac:
4978         * gst/gstpad.c:
4979           unref data when probe function returns FALSE.  Fixes #166362
4980
4981 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4982
4983         * gst/gst.c: (gst_init_get_popt_table):
4984           Fix typo (#166269).
4985
4986 2005-02-04  Andy Wingo  <wingo@pobox.com>
4987
4988         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
4989         the debugging on whether the caps are compatible.
4990
4991 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4992
4993         * docs/manual/basics-elements.xml:
4994           Fix two typos.
4995
4996 2005-02-02  Wim Taymans  <wim@fluendo.com>
4997
4998         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
4999         (schedule_chain), (get_invalid_call), (chain_invalid_call),
5000         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
5001         Remove some FIXMEs after analysing and commenting why they
5002         are not issues.
5003
5004 2005-02-02  Wim Taymans  <wim@fluendo.com>
5005
5006         * gst/schedulers/gstoptimalscheduler.c:
5007         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
5008         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
5009         (get_invalid_call), (chain_invalid_call),
5010         (get_group_schedule_function), (loop_group_schedule_function),
5011         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
5012         (gst_opt_scheduler_state_transition),
5013         (gst_opt_scheduler_add_element),
5014         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
5015         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
5016         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
5017         (gst_opt_scheduler_show):
5018         Added lock to protect scheduler data structures.
5019
5020 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5021
5022         * testsuite/threads/threadi.c: (cb_data):
5023           Fix buglet in test.
5024
5025 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5026
5027         * testsuite/threads/Makefile.am:
5028         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
5029           On Wim's request, split the test in three separately-compiled
5030           tests that each test a very specific bug. Two of them still fail,
5031           will create bugs for those. threadi.c indicates why they fail.
5032
5033 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5034
5035         * gst/schedulers/gstoptimalscheduler.c:
5036         (get_group_schedule_function):
5037           Try to work with the threading mess that queue_link is.
5038
5039 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5040
5041         * gst/gstbin.c: (gst_bin_remove_func):
5042           Explicitely make an element release locks in a group when being
5043           remove from a bin.
5044         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
5045           If there's no scheduler, always return immediately (similar to
5046           gst_element_interrupt).
5047
5048 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5049
5050         * gst/gstbin.c: (gst_bin_child_state_change_func):
5051           Remove a piece of code that could never be reached.
5052         * docs/gst/gstreamer-sections.txt:
5053         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
5054         (gst_pad_call_get_function):
5055         * gst/gstpad.h:
5056         * testsuite/pad/Makefile.am:
5057           Fix #150546, enable tests.
5058
5059 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5060
5061         * docs/pwg/advanced-types.xml:
5062           Fix description for buffer-frames=0.
5063         * docs/gst/tmpl/gstbin.sgml:
5064         * gst/gstbin.c: (gst_bin_child_state_change_func),
5065         (gst_bin_change_state), (gst_bin_change_state_norecurse):
5066         * gst/gstbin.h:
5067         * testsuite/threads/Makefile.am:
5068         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
5069         (cb_state), (cb_play), (main):
5070           Fix non-recursive state changes to *really* change the state
5071           of the object, and not just call parent_class->state_change.
5072           Fix a lot of lockups caused by this. Fixes #132775. Add test
5073           for the problem. Also enable test to show #142588 (fixed).
5074         * gst/gstthread.c: (gst_thread_change_state),
5075         (gst_thread_child_state_change):
5076           Don't exit the thread if we go to NULL and are inside thread
5077           context. Instead, return control to the main thread context
5078           and exit from there.
5079         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
5080           Don't unset virtual functions, since those may still be used.
5081           That's not necessarily correct, but suffices for now.
5082         * configure.ac:
5083         * testsuite/Makefile.am:
5084         * testsuite/pad/Makefile.am:
5085         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
5086         (gst_test_sink_base_init), (gst_test_sink_chain),
5087         (gst_test_sink_init), (main):
5088         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
5089         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
5090         (main):
5091         * testsuite/pad/link.c: (gst_test_element_class_init),
5092         (gst_test_element_base_init), (gst_test_src_get),
5093         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
5094         (gst_test_filter_loop), (gst_test_filter_init),
5095         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
5096         (cb_error), (main):
5097           Add tests to show #150546. Pass, but should fail (currently
5098           disabled from the testsuite).
5099         * gst/gstscheduler.c: (gst_scheduler_dispose):
5100           Dereference child schedulers on dispose (#94464).
5101         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
5102           Fix typo.
5103         * testsuite/threads/thread.c: (main):
5104           Add more debug.
5105
5106 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5107
5108         * gst/gstpad.c: (gst_pad_push):
5109           Oops, revert previous commit, broke testsuite...
5110
5111 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5112
5113         * gst/gstpad.c: (gst_pad_push):
5114           Add check that the pad on which the push is performed is not a
5115           get-based pad (#150546).
5116
5117 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5118
5119         * gst/elements/gsttypefindelement.c:
5120         (gst_type_find_element_handle_event):
5121           Fix buffer pushing if stream EOSes during typefinding.
5122
5123 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
5124
5125         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5126
5127         * gst/gstvalue.c: (gst_string_wrap):
5128           Allow NULL-strings as argument (#165365).
5129
5130 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
5131
5132         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5133
5134         * gst/schedulers/faircothreads.c:
5135         (gst_fair_scheduler_cothread_queue_show):
5136           Fix build without debug enabled.
5137
5138 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
5139
5140         * docs/gst/gstreamer-sections.txt:
5141         * docs/libs/gstreamer-libs-docs.sgml:
5142         * docs/libs/gstreamer-libs-sections.txt:
5143         * docs/libs/tmpl/gstcontrol.sgml:
5144         * docs/libs/tmpl/gstdparam.sgml:
5145         * docs/libs/tmpl/gstdplinint.sgml:
5146         * docs/libs/tmpl/gstdpman.sgml:
5147         * docs/libs/tmpl/gstdpsmooth.sgml:
5148         * docs/libs/tmpl/gstputbits.sgml:
5149         * docs/libs/tmpl/gstunitconvert.sgml:
5150         * libs/gst/control/dparam.c:
5151         * libs/gst/control/dparam.h:
5152         * libs/gst/control/dparammanager.c:
5153         (gst_dpman_add_required_dparam_callback),
5154         (gst_dpman_add_required_dparam_direct),
5155         (gst_dpman_add_required_dparam_array),
5156         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
5157         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
5158         (gst_dpman_get_manager)
5159           restructured DParam docs
5160
5161 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
5162
5163         * gst-element-check.m4:
5164           Only check for gst-inspect if we haven't already
5165           found it in previous element check runs
5166
5167 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
5168
5169         * docs/gst/Makefile.am:
5170         * docs/libs/Makefile.am:
5171           fixed install rules to treat style.css as optional
5172
5173 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
5174
5175         * docs/gst/Makefile.am:
5176         * docs/libs/Makefile.am:
5177           install style.css along with docs
5178         * docs/gst/tmpl/gstbin.sgml:
5179         * docs/gst/tmpl/gstclock.sgml:
5180         * docs/gst/tmpl/gstdata.sgml:
5181         * docs/gst/tmpl/gstelement.sgml:
5182         * gst/gstbin.h:
5183         * gst/gstelement.c: (gst_element_class_init):
5184         * gst/gstelement.h:
5185           fixing incomplete docs
5186
5187 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
5188
5189         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5190           Don't unref seek event twice when fflush() fails
5191           
5192 2005-01-22  David Schleef  <ds@schleef.org>
5193
5194         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
5195
5196 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
5197
5198         * docs/gst/Makefile.am:
5199         * docs/libs/Makefile.am:
5200           added params for deprecation guards
5201         * gst/gst.c:
5202         * gst/gst.h:
5203         * gst/gsterror.c: (_gst_resource_errors_init),
5204         (_gst_stream_errors_init):
5205         * gst/gsterror.h:
5206           documented some more enums
5207
5208 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
5209         * gst/autoplug/gstspideridentity.c:
5210         Cosmetic fix - spider_find_peek should be static
5211         * gst/parse/parse.l:
5212         Applying fix for #164261
5213
5214 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
5215
5216         * docs/gst/gstreamer-sections.txt:
5217         * docs/gst/tmpl/gstplugin.sgml:
5218         * docs/libs/gstreamer-libs-sections.txt:
5219         * docs/libs/tmpl/gstcontrol.sgml:
5220         * gst/gstbuffer.h:
5221         * gst/gsttag.h:
5222         * gst/gstvalue.c:
5223           added docs for the TAG defines
5224
5225 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5226
5227         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
5228           Only unref entry if there is an entry.
5229
5230 2005-01-17  Wim Taymans  <wim@fluendo.com>
5231
5232         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5233         (remove_from_group), (schedule_group), (normalize_group),
5234         (gst_opt_scheduler_iterate):
5235         Also ref/unref decoupled elements before iterating the
5236         group since they are not added to the list of elements.
5237
5238 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5239
5240         * docs/manual/highlevel-components.xml:
5241           Add subtitle/streamselection as new features to playbin.
5242
5243 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5244
5245         * docs/manual/manual.xml:
5246           Re-enable dataaccess docs (oops).
5247
5248 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5249
5250         * docs/pwg/advanced-types.xml:
5251         * docs/random/mimetypes:
5252           Add documentation on libsndfile types (#163309), by Steve Baker
5253           <steve@stevebaker.org>.
5254         * gst/gstelement.c: (gst_element_release_request_pad):
5255           If an element has no explicit function, just remove the pad.
5256
5257 2005-01-17  Luca Ognibene  <luogni@tin.it>
5258
5259         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5260
5261         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
5262           Fix memleak (#163801).
5263
5264 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5265
5266         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
5267           I think this is actually more correct...
5268
5269 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5270
5271         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5272           Another workaround for memory access while destroyed in callback.
5273           Please, someone with refcount knowledge, have a look at this.
5274
5275 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5276
5277         * docs/faq/faq.xml:
5278         * docs/faq/legal.xml:
5279           move the legal Q&A here
5280
5281 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5282
5283         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
5284         (gst_tee_request_new_pad):
5285           Fix negotiation.
5286
5287 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5288
5289         * docs/random/omega/caps2:
5290         * testsuite/caps/caps_strings:
5291           replace framerate aproximations by their real value
5292           (24000/1001, 30000/1001, 60000/1001)
5293           Partially fixes bug #164049
5294
5295 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5296
5297         * docs/gst/Makefile.am:
5298           don't fail on the stupid GstPoptOption
5299
5300 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5301
5302         * gst/gstpad.h:
5303         * gst/gstprobe.c:
5304           allow probes to work on ghost pads by realizing the pad
5305           probe debugging
5306
5307 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5308
5309         * docs/gst/gstreamer-sections.txt:
5310         * docs/gst/tmpl/gstpad.sgml:
5311         * gst/gstpad.c: (gst_pad_set_active_recursive):
5312         * gst/gstpad.h:
5313           Add gst_pad_set_active_recursive().
5314
5315 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5316
5317         * docs/random/release:
5318           updates
5319         * gst/gst_private.h:
5320         * gst/gstinfo.c:
5321         * gst/gstobject.c:
5322           move deep_notify logging to a new category
5323         * gst/gstprobe.c:
5324         * gst/gstprobe.h:
5325           add stuff so bindings can wrap probes
5326
5327 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5328
5329         * gst/gstplugin.c: (gst_plugin_load):
5330           Fix plugin loading if plugin/lib was already loaded. Fixes
5331           #163383
5332
5333 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
5334
5335         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5336
5337         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
5338           Protect plugin loading by a mutex so it's threadsafe. Fixes
5339           #163234.
5340
5341 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5342
5343         * gst/gstevent.c: (_gst_event_copy):
5344           Reference source object when copying events, since it'll be
5345           dereferenced on event dereferencing as well.
5346
5347 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5348
5349         * docs/gst/gstreamer-sections.txt:
5350         * docs/gst/tmpl/gstevent.sgml:
5351         * gst/gstevent.c: (gst_event_new_filler_stamped),
5352         (gst_event_filler_get_duration):
5353         * gst/gstevent.h:
5354           Add two new functions for filler events (which are used to
5355           synchronize streams if one of them is not having any data
5356           for a while) without interrupting the actual data-stream.
5357           Basically a no-op.
5358         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5359         (gst_queue_link_sink), (gst_queue_link_src),
5360         (gst_queue_change_state):
5361           Allow for renegotiation while filled. Required for stream
5362           switching while playing.
5363
5364 2005-01-08  Benjamin Otte  <otte@gnome.org>
5365
5366         * gst/gstelement.c: (gst_element_link_many):
5367           fix up g_return_if_fail's
5368         * po/LINGUAS:
5369         * po/de.po:
5370           add German translation, that was somehow not included
5371
5372 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5373
5374         * docs/random/mimetypes:
5375           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
5376           do not add them to riff-lib as they are not common
5377
5378 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5379
5380         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5381           Check for existence of probe after performing the probe before
5382           re-accessing it to prevent segfaults caused by removal of the
5383           probe in the callback.
5384
5385 2005-01-05  David Schleef  <ds@schleef.org>
5386
5387         * testsuite/registry/Makefile.am:
5388         * testsuite/registry/gst-print-formats.c:
5389         (print_pad_templates_info), (print_element_list),
5390         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
5391         (g_list_uniqify), (get_pad_templates_info),
5392         (get_element_mime_list), (print_mime_list), (main): A little
5393         program that looks through the registry to find elements of
5394         a given type.  Not particularly interesting as a test, except
5395         that there's no other test covering the same area.
5396
5397 2005-01-05  David Schleef  <ds@schleef.org>
5398
5399         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
5400         (fault_handler_sigaction), (fault_spin),
5401         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
5402         in signal.h-type signal handlers by not calling forbidden functions,
5403         including gst_element_set_state().
5404
5405 2005-01-05  David Schleef  <ds@schleef.org>
5406
5407         * gst/gstvalue.h: Mark _gst_reserved[] as private
5408
5409 2005-01-05  David Schleef  <ds@schleef.org>
5410
5411         * gst/gstvalue.c: Fix doc build problem.
5412
5413 2005-01-05  David Schleef  <ds@schleef.org>
5414
5415         * gst/gstvalue.c: Add some documentation
5416
5417 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
5418
5419         * docs/README:
5420           another shell oneliner for empty return value docs
5421         * gst/gstcaps.c:
5422         * gst/gstvalue.c:
5423         * libs/gst/control/dparam.c:
5424           more doc fixes (parameters and return values)
5425
5426 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
5427
5428         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5429
5430         * gst/gstregistry.h:
5431         * gst/registries/gstxmlregistry.c:
5432           Fix macro's for Mingw (fixes #162276).
5433
5434 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
5435
5436         * docs/README:
5437           quick shell oneliner to find undocumented members
5438         * docs/gst/tmpl/gstplugin.sgml:
5439         * docs/gst/tmpl/gstscheduler.sgml:
5440         * docs/gst/tmpl/gstthread.sgml:
5441           more enumtypes cleanup
5442         * gst/gsterror.h:
5443           activated documentation comments, now someone needs to document
5444           the enums :(
5445
5446 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5447
5448         * docs/manual/manual.xml:
5449           Add dataaccess part (doh!).
5450
5451 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5452
5453         * docs/manual/advanced-autoplugging.xml:
5454           Fix typo (intiate -> initiate).
5455
5456 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5457
5458         * docs/random/bbb/streamselection:
5459           Add some notes on how to handle multi-subtitle/-audio streams.
5460
5461 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
5462
5463         * docs/gst/gstreamer-docs.sgml:
5464         * docs/gst/gstreamer-sections.txt:
5465         * docs/gst/tmpl/gstenumtypes.sgml:
5466         * docs/gst/tmpl/gsterror.sgml:
5467         * docs/gst/tmpl/gstevent.sgml:
5468         * docs/gst/tmpl/gstpad.sgml:
5469         * docs/gst/tmpl/gstpadtemplate.sgml:
5470         * docs/gst/tmpl/gstthread.sgml:
5471           removed gstenumtypes section from docs and put all the enums into
5472           their sections
5473
5474 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5475
5476         * gst/gstplugin.c:
5477           document gst_library_load a bit more (riff special case + return
5478           value if already loaded)
5479         * testsuite/bytestream/filepadsink.c:
5480           plugin name is 'gstbytestream', not 'bytestream'
5481
5482 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5483
5484         * docs/random/bbb/subtitles:
5485           Add some first mind rumblings on proper subtitle support.
5486
5487 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
5488
5489         * po/ca.po:
5490         * po/sv.po:
5491           updated translations
5492
5493 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5494
5495         * docs/manual/advanced-dataaccess.xml:
5496           Add section on how to use fakesrc/fakesink/identity in your
5497           application, plus section on how to embed plugins. Also mention
5498           probes.
5499         * docs/manual/appendix-checklist.xml:
5500         * docs/manual/appendix-debugging.xml:
5501         * docs/manual/appendix-gnome.xml:
5502         * docs/manual/appendix-integration.xml:
5503           Debug -> checklist, GNOME -> integration, add sections on Linux,
5504           KDE integration and add other things useful for application
5505           development.
5506         * docs/manual/manual.xml:
5507           Remove some fixmes, update some file pointers.
5508         * docs/pwg/appendix-checklist.xml:
5509           Fix typo.
5510         * docs/pwg/building-boiler.xml:
5511           Remove ugly header and add commented fixme.
5512         * docs/pwg/pwg.xml:
5513           Add fixme.
5514         * examples/manual/Makefile.am:
5515           Add example for added docs.
5516
5517 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5518
5519         * configure.ac:
5520           back to HEAD
5521
5522 === release 0.8.8 ===
5523
5524 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5525
5526         * NEWS:
5527         * RELEASE:
5528         * configure.ac:
5529           Releasing 0.8.8, "I'll Take Care Of You"
5530
5531 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5532
5533         * configure.ac:
5534           second prerelease
5535
5536 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5537
5538         patch by: Wim Taymans
5539
5540         * gst/gstbin.c:
5541           Fix for #159852 - make iterate emission threadsafe
5542
5543 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5544
5545         * docs/faq/cvs.xml:
5546           notes about new fdo account request
5547
5548 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
5549
5550         * docs/gst/gstreamer-docs.sgml:
5551         * docs/gst/tmpl/gstenumtypes.sgml:
5552         * docs/gst/tmpl/gstplugin.sgml:
5553         * docs/libs/gstreamer-libs-docs.sgml:
5554           Added missing short docs. Added ids for navigation.
5555
5556 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5557
5558         * docs/manual/advanced-autoplugging.xml:
5559         * docs/manual/advanced-schedulers.xml:
5560         * docs/manual/advanced-threads.xml:
5561           Rewrites. Remove cothreads, go a bit into opt specifically,
5562           document threads and their gotchas, and do some technical stuff
5563           on autoplugging plus add some working examples. Fixes #157395.
5564         * examples/manual/Makefile.am:
5565           Add typefind/autoplugger example (one that actually works).
5566           Remove queue example since it's a duplicate of the thread one.
5567
5568 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5569
5570         * gst/gstvalue.c: (gst_value_deserialize_string):
5571           use deprecated g_value_set_string_take_ownership to keep compatible
5572           with glib 2.2
5573
5574 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5575
5576         * gst/gstvalue.c: (gst_value_deserialize_string):
5577           revert last patch, only dom a g_utf8_validate now before accepting
5578           the string - caps parsing strips " from strings so we can't rely on
5579           them
5580         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5581           disable a test that tested the above and comment it
5582
5583 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
5584
5585         Patch reviewed by David Schleef  <ds@schleef.org>
5586
5587         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
5588         bug #153882)
5589         * win32/gstenumtypes.h: same
5590
5591 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5592
5593         * gst/gstpad.c: (gst_pad_query):
5594           Do query on realized pad, similar to how convert/send_event handle
5595           this. Also makes sense, since this pad belongs to the function to
5596           which this query will be sent. Fixes #158163.
5597
5598 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
5599
5600         * docs/manual/appendix-programs.xml: fix pipeline to actually work
5601
5602 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5603
5604         * docs/faq/general.xml: fix pipeline to actually work
5605
5606 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5607
5608         * gst/gstvalue.c: (gst_value_deserialize_string):
5609           check that a simple string that gets deserialized does not contain
5610           invalid characters
5611         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5612           remove a test that tested a wring behaviour
5613
5614 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
5615
5616         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5617
5618         * docs/manual/intro-motivation.xml:
5619           Fix typos.
5620
5621 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
5622
5623         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5624
5625         * docs/gst/tmpl/gstprobe.sgml:
5626           Fix documentation of probe callback - it is supposed to return
5627           FALSE, not TRUE, to remove data from the stream (#159087).
5628
5629 2004-12-16  Daniel Gazard  <dany42@free.fr>
5630
5631         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5632
5633         * gst/gstelementfactory.c: (gst_element_factory_create):
5634           Fix compile failure if compiling without libxml2 support (#149936).
5635
5636 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5637
5638         * docs/manual/advanced-autoplugging.xml:
5639         * docs/manual/highlevel-components.xml:
5640           Move spider from autoplugging to components. Autoplugging is for
5641           internals, not for solutions. ;-).
5642
5643 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5644
5645         * docs/random/ds/0.9-suggested-changes:
5646           Make note on device/location/uri property names.
5647
5648 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5649
5650         * docs/manual/advanced-autoplugging.xml:
5651         * docs/manual/advanced-clocks.xml:
5652         * docs/manual/advanced-interfaces.xml:
5653         * docs/manual/advanced-metadata.xml:
5654         * docs/manual/advanced-position.xml:
5655         * docs/manual/advanced-schedulers.xml:
5656         * docs/manual/advanced-threads.xml:
5657         * docs/manual/appendix-gnome.xml:
5658         * docs/manual/appendix-programs.xml:
5659         * docs/manual/appendix-quotes.xml:
5660         * docs/manual/autoplugging.xml:
5661         * docs/manual/basics-bins.xml:
5662         * docs/manual/basics-data.xml:
5663         * docs/manual/basics-elements.xml:
5664         * docs/manual/basics-helloworld.xml:
5665         * docs/manual/basics-init.xml:
5666         * docs/manual/basics-pads.xml:
5667         * docs/manual/basics-plugins.xml:
5668         * docs/manual/bins-api.xml:
5669         * docs/manual/bins.xml:
5670         * docs/manual/buffers-api.xml:
5671         * docs/manual/buffers.xml:
5672         * docs/manual/clocks.xml:
5673         * docs/manual/components.xml:
5674         * docs/manual/cothreads.xml:
5675         * docs/manual/debugging.xml:
5676         * docs/manual/dparams-app.xml:
5677         * docs/manual/dynamic.xml:
5678         * docs/manual/elements-api.xml:
5679         * docs/manual/elements.xml:
5680         * docs/manual/factories.xml:
5681         * docs/manual/gnome.xml:
5682         * docs/manual/goals.xml:
5683         * docs/manual/helloworld.xml:
5684         * docs/manual/helloworld2.xml:
5685         * docs/manual/highlevel-components.xml:
5686         * docs/manual/highlevel-xml.xml:
5687         * docs/manual/init-api.xml:
5688         * docs/manual/intro-basics.xml:
5689         * docs/manual/intro-motivation.xml:
5690         * docs/manual/intro-preface.xml:
5691         * docs/manual/intro.xml:
5692         * docs/manual/links-api.xml:
5693         * docs/manual/links.xml:
5694         * docs/manual/manual.xml:
5695         * docs/manual/motivation.xml:
5696         * docs/manual/pads-api.xml:
5697         * docs/manual/pads.xml:
5698         * docs/manual/plugins-api.xml:
5699         * docs/manual/plugins.xml:
5700         * docs/manual/programs.xml:
5701         * docs/manual/queues.xml:
5702         * docs/manual/quotes.xml:
5703         * docs/manual/schedulers.xml:
5704         * docs/manual/states-api.xml:
5705         * docs/manual/states.xml:
5706         * docs/manual/threads.xml:
5707         * docs/manual/typedetection.xml:
5708         * docs/manual/win32.xml:
5709         * docs/manual/xml.xml:
5710           Try 2. This time, include a short preface as a "general
5711           introduction", also add code blocks around all code samples
5712           so they get compiled. We still need a way to tell readers
5713           the filename of the code sample. In some cases, don't show
5714           all code in the documentation, but do include it in the generated
5715           code. This allows for focussing on specific bits in the docs,
5716           while still having a full test application available.
5717         * examples/manual/Makefile.am:
5718           Fix up examples for new ADM. Add several of the new examples that
5719           were either added or were missing from the build system.
5720         * examples/manual/extract.pl:
5721           Allow nameless blocks.
5722
5723 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5724
5725         * docs/manual/elements-api.xml:
5726         * docs/manual/helloworld.xml:
5727         * examples/manual/extract.pl:
5728           fix last example.  Add example of adding code blocks that are not
5729           shown in docbook output.
5730
5731 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5732
5733         * docs/manual/dynamic.xml:
5734         * docs/manual/elements-api.xml:
5735         * docs/manual/gnome.xml:
5736         * docs/manual/helloworld2.xml:
5737         * docs/manual/init-api.xml:
5738         * docs/manual/queues.xml:
5739         * docs/manual/threads.xml:
5740         * docs/manual/xml.xml:
5741         * examples/manual/extract.pl:
5742           Make it possible to extract example code from separate blocks.
5743           Should make Ronald happy.
5744
5745 2004-12-15  Wim Taymans  <wim@fluendo.com>
5746
5747         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5748         (remove_from_group), (group_elements_set_visited),
5749         (normalize_group), (gst_opt_scheduler_iterate):
5750         Fix bug where a flag was not updated on a decoupled entry point 
5751         because we were just checking the group element list and decoupled
5752         elements are not in that list..
5753
5754 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5755
5756         * docs/manual/advanced-autoplugging.xml:
5757         * docs/manual/advanced-clocks.xml:
5758         * docs/manual/advanced-dparams.xml:
5759         * docs/manual/advanced-interfaces.xml:
5760         * docs/manual/advanced-metadata.xml:
5761         * docs/manual/advanced-position.xml:
5762         * docs/manual/advanced-schedulers.xml:
5763         * docs/manual/advanced-threads.xml:
5764         * docs/manual/appendix-debugging.xml:
5765         * docs/manual/appendix-gnome.xml:
5766         * docs/manual/appendix-programs.xml:
5767         * docs/manual/appendix-quotes.xml:
5768         * docs/manual/appendix-win32.xml:
5769         * docs/manual/autoplugging.xml:
5770         * docs/manual/basics-bins.xml:
5771         * docs/manual/basics-data.xml:
5772         * docs/manual/basics-elements.xml:
5773         * docs/manual/basics-helloworld.xml:
5774         * docs/manual/basics-init.xml:
5775         * docs/manual/basics-pads.xml:
5776         * docs/manual/basics-plugins.xml:
5777         * docs/manual/bins-api.xml:
5778         * docs/manual/bins.xml:
5779         * docs/manual/buffers-api.xml:
5780         * docs/manual/buffers.xml:
5781         * docs/manual/clocks.xml:
5782         * docs/manual/components.xml:
5783         * docs/manual/cothreads.xml:
5784         * docs/manual/debugging.xml:
5785         * docs/manual/dparams-app.xml:
5786         * docs/manual/dynamic.xml:
5787         * docs/manual/elements-api.xml:
5788         * docs/manual/elements.xml:
5789         * docs/manual/factories.xml:
5790         * docs/manual/gnome.xml:
5791         * docs/manual/goals.xml:
5792         * docs/manual/helloworld.xml:
5793         * docs/manual/helloworld2.xml:
5794         * docs/manual/highlevel-components.xml:
5795         * docs/manual/highlevel-xml.xml:
5796         * docs/manual/init-api.xml:
5797         * docs/manual/intro-motivation.xml:
5798         * docs/manual/intro-preface.xml:
5799         * docs/manual/intro.xml:
5800         * docs/manual/links-api.xml:
5801         * docs/manual/links.xml:
5802         * docs/manual/manual.xml:
5803         * docs/manual/motivation.xml:
5804         * docs/manual/pads-api.xml:
5805         * docs/manual/pads.xml:
5806         * docs/manual/plugins-api.xml:
5807         * docs/manual/plugins.xml:
5808         * docs/manual/programs.xml:
5809         * docs/manual/queues.xml:
5810         * docs/manual/quotes.xml:
5811         * docs/manual/schedulers.xml:
5812         * docs/manual/states-api.xml:
5813         * docs/manual/states.xml:
5814         * docs/manual/threads.xml:
5815         * docs/manual/typedetection.xml:
5816         * docs/manual/win32.xml:
5817         * docs/manual/xml.xml:
5818           First try at rewriting the ADM. Needs lotsamore work, but some
5819           parts might already be somewhat useful.
5820         * docs/pwg/advanced-interfaces.xml:
5821           Remove properties interface, it never actually existed (except for
5822           on my HD...).
5823
5824 2004-12-13  David Schleef  <ds@schleef.org>
5825
5826         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
5827         be NULL (bug #160220).
5828
5829 2004-12-13  David Schleef  <ds@schleef.org>
5830
5831         * configure.ac: remove all mmx stuff, because it's not used.
5832         * docs/random/ds/0.9-suggested-changes: additional notes
5833         * include/Makefile.am: we don't use these anymore
5834         * include/mmx.h: remove
5835         * include/sse.h: remove
5836
5837 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5838
5839         * docs/random/mimetypes:
5840           Add FOURCC code for h264 codec (VSSH)
5841           Add alternate FOURCC codes for h263 related codecs
5842
5843 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
5844
5845         * docs/manual/programs.xml:
5846           Added more gst-launch examples.
5847
5848 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5849
5850         * gst/gstqueue.c: (gst_queue_handle_src_query):
5851           Check for availability again.
5852
5853 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5854
5855         * gst/gstcaps.c: (gst_caps_compare_structures):
5856           Simple caps go first. This has the nice side-effect of fixing an
5857           obscure warning.
5858
5859 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5860
5861         * gst/gstversion.h.in:
5862           Protect header.
5863
5864 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5865
5866         * gst/schedulers/gstoptimalscheduler.c:
5867         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
5868         (gst_opt_scheduler_get_wrapper):
5869           When we're recursing into a chain run, only run the directly
5870           related group, not all queued ones. This will fix a possible
5871           deadlock in chains with more than two groups.
5872
5873 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5874
5875         * autogen.sh:
5876           remove patch if autopoint fails
5877
5878 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5879
5880         * docs/gst/gstreamer-sections.txt:
5881           Document Thomas' addition, fix build, make Luis the sheriff happy.
5882
5883 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5884
5885         * gst/gstplugin.c:
5886         * gst/gstplugin.h:
5887           add accessor for version field
5888
5889 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5890
5891         submitted by: Luca Ferretti <elle.uca@infinito.it>
5892
5893         * po/LINGUAS:
5894         * po/it.po:
5895           New tranlation added: Italian
5896
5897 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5898
5899         * gst/gstpad.c: (gst_pad_is_negotiated),
5900         (gst_pad_get_negotiated_caps):
5901           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
5902           it doesn't actually check the contents), so be sure to hand it
5903           a RealPad else we'll crash.
5904
5905 2004-12-03  Wim Taymans  <wim@fluendo.com>
5906
5907         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5908         (gst_queue_link), (gst_queue_handle_src_query):
5909         Reverted to 1.110 until this makes the testsuite and various
5910         apps work.
5911
5912 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
5913
5914         * docs/upload.mak: fix included CVS conflict strings
5915
5916 2004-12-01  William Jon McCann  <mccann@jhu.edu>
5917
5918         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5919
5920         * gst/gstelement.c: (gst_element_error_full):
5921           Use g_error_new_literal because error text may have
5922           percentage signs in it. Fixes #160019.
5923
5924 2004-12-01  Benjamin Otte  <otte@gnome.org>
5925
5926         * gst/elements/gstbufferstore.c:
5927         (gst_buffer_store_add_buffer_func):
5928           don't try to make subbuffers bigger than they can be. (fixes
5929           #159970)
5930
5931 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5932
5933         * docs/gst/gstreamer-sections.txt:
5934         * docs/gst/tmpl/gstvalue.sgml:
5935           Add new function to docs to fix build.
5936
5937 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5938
5939         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
5940         * gst/gstpad.c: (_gst_pad_default_fixate_value),
5941         (_gst_pad_default_fixate_foreach):
5942         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
5943         * gst/gstvalue.h:
5944           Deprecate _type_is_fixed, use _value_is_fixed instead, since
5945           in some cases (arrays), the fixedness depends on the content.
5946         * gst/gstqueue.c: (gst_queue_handle_src_query):
5947           Check for availability before doing something.
5948
5949 2004-11-29  Wim Taymans  <wim@fluendo.com>
5950
5951         * testsuite/threads/Makefile.am:
5952         * testsuite/threads/signals.c: (gst_test_get_type),
5953         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
5954         (gst_test_set_property), (gst_test_get_property),
5955         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
5956         (gst_test_do_prop), (run_thread), (main):
5957         Added a bunch of testcases that show threadsafety bugs in glib.
5958
5959 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
5960
5961         * docs/manual/programs.xml:
5962           Added a first batch of gst-launch examples, as provided by Ronald
5963           and others from the devel-mlist
5964
5965 2004-11-28  Benjamin Otte  <otte@gnome.org>
5966
5967         * gst/gstelement.c: (gst_element_negotiate_pads):
5968           simplify
5969         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
5970         (gst_value_serialize_string), (gst_value_deserialize_string):
5971           add unwrapping of previously wrapped strings. Fix bug in wrapping
5972           while at it.
5973         * testsuite/caps/value_serialize.c: (test1),
5974         (test_string_serialization), (test_string_deserialization), (main):
5975           add tests for string (de)serialization
5976
5977 2004-11-26  Wim Taymans  <wim@fluendo.com>
5978
5979         * testsuite/threads/159566.c: (object_deep_notify), (main):
5980         * testsuite/threads/Makefile.am:
5981         Added testsuite to show bug #159566
5982
5983 2004-11-25  Wim Taymans  <wim@fluendo.com>
5984
5985         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
5986         (gst_thread_child_state_change), (gst_thread_main_loop):
5987         Ref the thread object in the GThread mainloop. Break out of the
5988         thread mainloop if it holds the last ref. This properly exits
5989         the threads when disposing the thread from its own context. It
5990         also avoids possible deadlocks in the dispose function.
5991
5992 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
5993
5994         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
5995         it is necessary to wait.
5996
5997 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5998
5999         * docs/pwg/building-boiler.xml:
6000           Make description somewhat clearer.
6001
6002 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6003
6004         * docs/upload.mak:
6005           Apparently docs changed location on FDO's server.
6006
6007 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6008
6009         * docs/pwg/appendix-checklist.xml:
6010           Add some random notes on things to check when writing an element.
6011           This list can be extended as people see fit.
6012
6013 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
6014
6015         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
6016         (gst_queue_link_src): Allow for renegotiating the caps of the sink
6017         pad. The queue will now wait until it is empty and forward the new
6018         caps to the source.
6019         * gst/gstbin.c (gst_bin_set_element_sched)
6020         (gst_bin_unset_element_sched): Make sure that all elements and
6021         links are registered and unregistered with the scheduler exactly
6022         once. This elaborates on a fix by Benjamin Otte, but
6023         guarantees that decoupled elements are also registered.
6024
6025 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
6026
6027         * docs/manual/quotes.xml:
6028           add a quote
6029         * configure.ac:
6030         * gst/gst.c:
6031         * gst/gstinfo.c:
6032           add LIBDIR and move init message higher up so it's at the start
6033
6034 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
6035
6036         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
6037         * gstreamer.spec.in: add fair
6038
6039 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6040
6041         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6042         * gst/elements/gstidentity.c: (gst_identity_class_init):
6043           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
6044           <teuf@gnome.org> (#157263).
6045         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
6046         (gst_type_find_handle_src_query):
6047           Subtract size of internally stored data from position queries.
6048
6049 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
6050
6051         * gst/schedulers/fairscheduler.c:
6052         * gst/schedulers/faircothreads.c:
6053         * gst/schedulers/faircothreads.h:
6054         New cothread based scheduler: Fair scheduler.
6055         * gst/schedulers/gthread-cothreads.h: 
6056         Add the standard #if around the whole file.
6057         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
6058         compilation of the functions defined in this file. This is
6059         necessary to be able to use this file as a normal header.
6060         * gst/schedulers/Makefile.am: Add compiling support for fair
6061         scheduler.
6062         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
6063         scheduler cothreads layer from documentation generation.
6064
6065 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6066
6067         * gst/autoplug/gstspideridentity.c:
6068         (gst_spider_identity_sink_loop_type_finding):
6069           Don't crash if that function is not implemented.
6070
6071 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6072
6073         * docs/pwg/advanced-types.xml:
6074           Another typo.
6075
6076 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6077
6078         * docs/pwg/intro-preface.xml:
6079           Hm, ok, so the brackets weren't really useful...
6080         * docs/pwg/other-ntoone.xml:
6081           Fix embarassing typo.
6082
6083 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6084
6085         * docs/pwg/intro-preface.xml:
6086           Rewrite preface.
6087
6088 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6089
6090         * docs/pwg/advanced-scheduling.xml:
6091         * docs/pwg/advanced-tagging.xml:
6092         * docs/pwg/advanced-types.xml:
6093         * docs/pwg/building-boiler.xml:
6094         * docs/pwg/building-chainfn.xml:
6095         * docs/pwg/building-signals.xml:
6096         * docs/pwg/building-state.xml:
6097         * docs/pwg/building-testapp.xml:
6098         * docs/pwg/intro-basics.xml:
6099         * docs/pwg/other-manager.xml:
6100         * docs/pwg/other-source.xml:
6101           Typo fixes.
6102         * docs/pwg/other-manager.xml:
6103           Add some first content. No example code yet.
6104         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
6105           Remove double newlines.
6106
6107 2004-11-04  Wim Taymans  <wim@fluendo.com>
6108
6109         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6110         (remove_from_group), (normalize_group), (group_migrate_connected),
6111         (gst_opt_scheduler_iterate):
6112         * testsuite/schedulers/.cvsignore:
6113         * testsuite/schedulers/Makefile.am:
6114         * testsuite/schedulers/queue_link.c: (main):
6115         Added testcase for scheduler segfault.
6116         Fix scheduler segfault when removing a decoupled
6117         entry point as the last element from a group.
6118
6119 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6120
6121         * gst/gstmarshal.list: add missing marshaller, fixes build
6122
6123 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6124
6125         * docs/random/signal: added notes about using BOXED for GstBuffer
6126         signal marshallers, not POINTER
6127
6128 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6129
6130         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6131         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
6132         POINTER=>BOXED changes to marshal GstBuffers
6133
6134 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6135
6136         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
6137         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
6138
6139 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
6140
6141         * docs/gst/gstreamer-sections.txt:
6142         * docs/gst/tmpl/gstcaps.sgml:
6143         * docs/gst/tmpl/gsterror.sgml:
6144         * docs/gst/tmpl/gstinfo.sgml:
6145         * docs/gst/tmpl/gstmacros.sgml:
6146         * docs/gst/tmpl/gstutils.sgml:
6147         * docs/random/ensonic/interfaces.txt:
6148         * gst/gstinfo.h:
6149           added some more docs, removed two obsolete defines
6150
6151 2004-11-02  Kjartan Maraas <as at gnome.org>
6152
6153         reviewed by: Wim Taymans, Ronald Bultje.
6154
6155         * gst/cothreads.c: (cothread_create):
6156         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
6157         (gst_bin_child_state_change_func):
6158         * gst/gstbuffer.c: (gst_buffer_span):
6159         * gst/gstelement.c: (gst_element_get_index),
6160         (gst_element_get_event_masks), (gst_element_get_query_types),
6161         (gst_element_get_formats):
6162         * gst/gsterror.c: (_gst_core_errors_init),
6163         (_gst_library_errors_init), (_gst_resource_errors_init),
6164         (_gst_stream_errors_init):
6165         * gst/gstobject.c: (gst_object_default_deep_notify):
6166         * gst/gstpad.c: (gst_pad_get_event_masks),
6167         (gst_pad_get_internal_links_default):
6168         * gst/gstplugin.c: (gst_plugin_register_func),
6169         (gst_plugin_get_module):
6170         * gst/gststructure.c: (gst_structure_get_string),
6171         (gst_structure_get_abbrs), (gst_structure_from_abbr),
6172         (gst_structure_to_abbr):
6173         * gst/gstutils.c: (gst_print_element_args):
6174         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6175         (setup_group_scheduler), (gst_opt_scheduler_iterate):
6176         Aplied part of patch #157127: Cleanup of issues reported by 
6177         sparse.
6178         Also do not try to use cothreads when there is no cothread
6179         context yet.
6180
6181 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
6182
6183         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6184         (gst_opt_scheduler_iterate):
6185         Applied patch #154061. Running a pipeline in which an element 
6186         calls GST_ELEMENT_ERROR in the chain function, the opt 
6187         scheduler doesn't unref the chain so it never gets freed.
6188
6189 2004-11-02  Wim Taymans  <wim@fluendo.com>
6190
6191         * gst/gststructure.c: (gst_structure_get_abbrs),
6192         (gst_structure_from_abbr), (gst_structure_to_abbr):
6193         Remove that ugly if-then thing in the code that converts
6194         between strings and types.
6195
6196 2004-11-02  Wim Taymans  <wim@fluendo.com>
6197
6198         * gst/gstscheduler.c: (gst_scheduler_add_element),
6199         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
6200         Aplied clock distribution patch, this should fix bug
6201         #148787.
6202
6203 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
6204
6205         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
6206
6207         * po/LINGUAS:
6208         * po/nb.po:
6209           Added Norwegian Bokmaal translation
6210
6211 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6212
6213         * tools/gst-inspect.c: (print_signal_info):
6214           print signal arguments as pointers if they are
6215
6216 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
6217
6218         * docs/pwg/building-boiler.xml:
6219           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
6220
6221 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6222
6223         * gst/parse/parse.l:
6224         * testsuite/parse/parse1.c: (main):
6225         Since parse can do 'element name=a:b' make 'a:b.' work as
6226         well. 
6227         Added testcase to verify fix.
6228
6229 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6230
6231         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
6232         Use the realpad when printing the direction.
6233         Add extra \n when printing extensions of typefind factories.
6234
6235 2004-10-13  David Schleef  <ds@schleef.org>
6236
6237         * examples/manual/Makefile.am: $< isn't portable in Makefile
6238         rules.
6239
6240 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
6241
6242         * docs/gst/tmpl/gstobject.sgml:
6243         * docs/gst/tmpl/gstplugin.sgml:
6244         * docs/gst/tmpl/gstpluginfeature.sgml:
6245         * docs/gst/tmpl/gstregistry.sgml:
6246         * docs/gst/tmpl/gstversion.sgml:
6247         * gst/gstbin.c:
6248           more api documentation
6249         * gst/gstplugin.c: (gst_plugin_register_func),
6250         (gst_plugin_check_file), (gst_plugin_load_file):
6251           better error signaling and logging
6252
6253 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6254
6255         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
6256           Subtract current queue contents from position queries.
6257
6258 2004-10-11  Johan Dahlin  <johan@gnome.org>
6259
6260         * gst/gsturi.c (gst_uri_get_location): unescape string
6261         (gst_uri_construct): escape string.
6262
6263 2004-10-11  Benjamin Otte  <otte@gnome.org>
6264
6265         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
6266         (gst_pad_try_set_caps_nonfixed):
6267           allow renegotiation of unconnected pads (as inside spider). Simply
6268           return OK if unconnected - mimic try_set_caps there.
6269
6270 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6271
6272         * gst/gstbin.c: (gst_bin_sync_children_state):
6273           Add missing break.
6274
6275 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6276
6277         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
6278         Set element to EOS before sending EOS event
6279
6280 2004-10-08  Wim Taymans  <wim at fluendo dot com>
6281
6282         * gst/elements/gsttypefindelement.c:
6283         (gst_type_find_element_handle_event):
6284         Handle EOS events when doing the transition from
6285         typefind to data passing. This should fix the
6286         infinite loops in short files.
6287
6288 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6289
6290         * gst/gstthread.c: (gst_thread_change_state),
6291         (gst_thread_child_state_change):
6292         Make sure no iteration happens while performing
6293         the state change as it could mess up the internal
6294         consistency of the thread state.
6295
6296 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6297
6298         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
6299         (gst_thread_change_state), (gst_thread_child_state_change):
6300         Do not try to grab the iterate lock in the state change method
6301         when we are in the same thread as the iterate or else we
6302         could deadlock. Some other cleanups.
6303
6304 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6305
6306         * configure.ac:
6307           bump nano to cvs
6308
6309 === release 0.8.7 ===
6310
6311 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6312
6313         * configure.ac:
6314         * NEWS:
6315         * RELEASE:
6316         * configure.ac:
6317           releasing 0.8.7, "A Cruise"
6318
6319 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6320
6321         * docs/random/mimetypes:
6322         Add an entry for Sony ATRAC3 audio format with mime-type
6323         used by rmdemux et riff-read
6324
6325 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6326
6327         * gst/elements/gsttypefindelement.c: (stop_typefinding):
6328         Push the buffer store instead of clearing it in case that
6329         the stream is not seekable.
6330
6331 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6332
6333         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
6334         (gst_thread_main_loop):
6335         Lock the iteration and the state change so that automatic
6336         negotiation and fixation does not happen at the same time
6337         as the in stream negotiation.
6338
6339 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6340
6341         * configure.ac:
6342           bump nano to cvs
6343
6344 === release 0.8.6 ===
6345
6346 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6347
6348         * configure.ac:
6349         * NEWS:
6350         * RELEASE:
6351         * configure.ac:
6352           releasing 0.8.6, "Narc"
6353
6354 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6355
6356         * configure.ac:
6357           prerel bump
6358
6359 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6360
6361         patch by: Steve Lhomme
6362
6363         * gst/elements/gstfakesrc.c:
6364         * gst/elements/gstidentity.c:
6365         * gst/gstthread.c:
6366           Fix for #153881
6367
6368 2004-10-01  Wim Taymans  <wim at fluendo dot com>
6369
6370         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
6371         Fix threadsafety of the crc checking function.
6372
6373 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6374
6375         patch by: Ronald Bultje
6376
6377         * gst/elements/gsttypefindelement.c: (stop_typefinding),
6378         (gst_type_find_element_handle_event),
6379         (gst_type_find_element_chain):
6380         * gst/elements/gsttypefindelement.h:
6381          #153657.
6382          Filter out discont event from seekable sources when typefind
6383          asks them to seek.  Fixes typefind with demuxers for
6384          avi, asf and matroska.
6385
6386 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6387
6388         * docs/gst/gstreamer-sections.txt:
6389         * gst/gstcaps.c:
6390         * gst/gstcaps.h:
6391         * gst/gstpad.c:
6392           Revert preferred caps: (#147789)
6393
6394 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
6395
6396         * win32/dirent.c:
6397           fix a memory leak
6398
6399 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6400
6401         * configure.ac:
6402           bump for prerelease
6403
6404 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6405
6406         * docs/Makefile.am:
6407         * docs/manual/elements-api.xml:
6408           restructure so that common stuff is shown first
6409         * docs/manual/init-api.xml:
6410           convert to examples
6411         * docs/manual/manual.xml:
6412         * docs/manuals.mak:
6413         * docs/url.entities:
6414           link to API on the website, possibly override later in build
6415         * examples/manual/.cvsignore:
6416           ignore more
6417         * examples/manual/Makefile.am:
6418           add more examples
6419         * examples/manual/extract.pl:
6420           error out on failure
6421
6422 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6423
6424         * docs/gst/tmpl/gstthread.sgml:
6425         * docs/manual/init-api.xml:
6426         * examples/manual/Makefile.am:
6427           convert two code bits to examples
6428
6429 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6430
6431         * gst/gstelement.c: (gst_element_change_state):
6432           Well, actually, I was about to remove this insane assert when
6433           I noticed Wim already did that. A warning is nice so we can
6434           fix actual ugs (using --g-fatal-warnings and backtraces), so
6435           I added that instead.
6436
6437 2004-09-06  Wim Taymans  <wim@fluendo.com>
6438
6439         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
6440         (gst_element_threadsafe_properties_post_run),
6441         (gst_element_set_state), (gst_element_change_state):
6442         Added extra refcounting around various places. 
6443
6444 2004-09-06  Wim Taymans  <wim@fluendo.com>
6445
6446         * gst/gstpad.c: (gst_pad_link_call_link_functions):
6447         Fix debug info.
6448
6449 2004-09-06  Wim Taymans  <wim@fluendo.com>
6450
6451         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6452         (remove_from_group):
6453         Some more debug info.
6454
6455 2004-09-03  Wim Taymans  <wim@fluendo.com>
6456
6457         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
6458         (gst_fakesrc_init), (gst_fakesrc_set_clock),
6459         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
6460         (gst_fakesrc_get), (gst_fakesrc_change_state):
6461         * gst/elements/gstfakesrc.h:
6462         * gst/elements/gstidentity.c: (gst_identity_class_init),
6463         (gst_identity_init), (gst_identity_chain),
6464         (gst_identity_set_property), (gst_identity_get_property),
6465         (gst_identity_change_state):
6466         * gst/elements/gstidentity.h:
6467         Added datarate properties to limit the datarate.
6468
6469 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6470
6471         * gst/autoplug/gstspider.c: (plugin_init):
6472           don't set a rank. We don't want to autoplug by inserting spiders.
6473
6474 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6475
6476         * gst/autoplug/gstspider.c: (gst_spider_class_init),
6477         (gst_spider_identity_plug):
6478           add a template for spider's sink
6479         * gst/gst.c: (gst_register_core_elements):
6480           queue's rank should be NULL, we don't want spider to add it.
6481
6482 2004-08-18  David Schleef  <ds@schleef.org>
6483
6484         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
6485         * docs/libs/Makefile.am: same
6486         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
6487         * docs/random/ds/0.9-planning: random additions
6488         * docs/random/ds/0.9-suggested-changes: same
6489         * gst/gstxml.h: remove vestigal GstXMLNs definition
6490
6491         Preferred caps: (#147789)
6492         * docs/gst/gstreamer-sections.txt: Add symbols
6493         * docs/gst/tmpl/gstcaps.sgml: Add symbols
6494         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
6495         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
6496         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
6497         (gst_caps_get_preferred), (gst_caps_set_preferred),
6498         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
6499         (gst_caps_use_preferred): Handle caps preferences
6500         * gst/gstcaps.h: Add caps preferences
6501         * gst/gstpad.c: (gst_pad_link_get_preferred),
6502         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
6503         (gst_pad_renegotiate), (gst_pad_guess_preferred),
6504         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
6505         negotiation.
6506
6507 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6508
6509         * gst/autoplug/gstspideridentity.c:
6510         (gst_spider_identity_request_new_pad):
6511         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
6512         (gst_aggregator_init):
6513         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
6514         (gst_fakesink_init):
6515         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
6516         (gst_fakesrc_init):
6517         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
6518         (gst_fdsink_init):
6519         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
6520         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
6521         (gst_filesink_init):
6522         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
6523         (gst_filesrc_init):
6524         * gst/elements/gstidentity.c: (gst_identity_base_init),
6525         (gst_identity_init):
6526         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
6527         (gst_multifilesrc_init):
6528         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
6529         (gst_pipefilter_init):
6530         * gst/elements/gststatistics.c: (gst_statistics_base_init),
6531         (gst_statistics_init):
6532         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
6533         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
6534           s/gst_pad_new/&_from_template/
6535           register pad templates in the base_init function
6536           add static pad template definitions
6537
6538 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6539
6540         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
6541         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
6542         * testsuite/refcounting/pad.c: (main):
6543         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
6544           s/gst_pad_new/&_from_template/
6545           prepare deprecation of gst_pad_new
6546
6547 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
6548
6549         patch by: Luca Ognibene <skaboy81@virgilio.it>
6550
6551         * gst/gstcaps.c:
6552         * gst/gstelement.c:
6553         * gst/gstpad.c:
6554         * gst/gstxml.c:
6555           fix memleaks.  Fixes #150001
6556
6557 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6558
6559         * docs/random/ds/0.9-suggested-changes:
6560           add notes - mostly about pad templates
6561
6562 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
6563
6564         * win32/GStreamer.vcproj:
6565           temporary locale files are .gmo not .mo
6566
6567 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6568
6569         * configure.ac: bump nano to cvs
6570
6571 === release 0.8.5 ===
6572
6573 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6574
6575         * configure.ac:
6576           releasing 0.8.5, "Stuttgart"
6577         * NEWS:
6578         * RELEASE:
6579         * configure.ac:
6580         * docs/random/release:
6581           updates for release
6582
6583 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6584
6585         patch by: Wim Taymans (wim@fluendo.com)
6586
6587         * gst/gstbuffer.c:
6588         * gst/gstindex.h:
6589         * libs/gst/dataprotocol/dataprotocol.c:
6590           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
6591
6592 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6593
6594         * Makefile.am:
6595         * win32/MANIFEST:
6596           add win32 dir to the build.  Fixes #149981.
6597
6598 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6599
6600         * configure.ac:
6601           bump libtool versioning
6602         * gst/gststructure.c:
6603           mark function as static
6604         * po/af.po:
6605         * po/az.po:
6606         * po/ca.po:
6607         * po/cs.po:
6608         * po/en_GB.po:
6609         * po/fr.po:
6610         * po/nl.po:
6611         * po/sq.po:
6612         * po/sr.po:
6613         * po/sv.po:
6614         * po/tr.po:
6615         * po/uk.po:
6616           translations update
6617         * win32/README.txt:
6618           trademark protection
6619
6620 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6621
6622         * configure.ac:
6623           fix GST_ORIGIN
6624           set GST_PACKAGE to source, and distinguish between release and other
6625         * tools/gst-inspect.c:
6626           print out plugin an element factory is part of so we see this info
6627
6628 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6629
6630         * docs/gst/gstreamer-sections.txt:
6631         * docs/gst/tmpl/gstbuffer.sgml:
6632         * docs/gst/tmpl/gstschedulerfactory.sgml:
6633           reorder docs a little, make GstBuffer's more sensible.
6634         * gst/gstbuffer.h:
6635           API: added GST_BUFFER_FLAG_DELTA_UNIT
6636         * gst/gstscheduler.c:
6637           comment API addition
6638
6639 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6640
6641         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6642           work with non-regular files that can be mmapped (like /dev/zero)
6643         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
6644           get rid of typefinds that require a seek when we can't seek instead
6645           of trying them over and over again
6646         * tools/gst-launch.c: (idle_func), (error_cb), (main):
6647           return non-zero failure value when the pipeline was interrupted or
6648           an error occurred
6649
6650 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6651
6652         * win32/config.h:
6653         * win32/GStreamer.vcproj:
6654           compile and install the locales
6655
6656 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6657
6658         * gst/gstvalue.c:
6659           fix a possible memory leak under Windows
6660
6661 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6662
6663         * win32/GStreamer.vcproj:
6664           fix a memory leak that occured under Windows
6665         * win32/gstreamer.def:
6666           add gst_scheduler_register
6667
6668 2004-08-11  Benjamin Otte  <otte@gnome.org>
6669
6670         * docs/gst/gstreamer-sections.txt:
6671         * gst/gstscheduler.c: (gst_scheduler_register):
6672         * gst/gstscheduler.h:
6673           API:
6674           add gst_scheduler_register shortcut similar to gst_element_register
6675         * gst/schedulers/entryscheduler.c: (plugin_init):
6676         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
6677         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
6678           use it
6679
6680 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
6681
6682         * gst/gstvalue.h:
6683           fix a memory leak that occured under Windows
6684
6685 2004-08-10  Colin Walters  <walters@redhat.com>
6686
6687         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
6688         Don't use O_EXCL to open temporary registry.  It will prevent
6689         registry creation if a temporary one already exists, which
6690         is unnecessary.
6691
6692 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6693
6694         * docs/gst/gstreamer-sections.txt:
6695         * docs/gst/tmpl/gstvalue.sgml:
6696           remove some valuable stuff from the documentation due to the use of GST_EXPORT
6697
6698 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6699
6700         * win32/gstbytestream.vcproj:
6701         * win32/gstelements.vcproj:
6702         * win32/gstgetbits.vcproj:
6703         * win32/gst-inspect.vcproj:
6704         * win32/gst-launch.vcproj:
6705         * win32/gstoptimalscheduler.vcproj:
6706         * win32/GStreamer.vcproj:
6707         * win32/gst-register.vcproj:
6708         * win32/gstspider.vcproj:
6709           update the include and lib dirs to fit standard libraries as
6710           described in the Win32 manual
6711
6712 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6713
6714         * win32/config.h:
6715         * win32/gstversion.h:
6716           enable NLS again, push the version number for the coming 0.8.5 release
6717
6718 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6719
6720         * gst/gstvalue.h:
6721           export gst_type_XXX for windows DLLs
6722
6723 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6724
6725         * docs/faq/gst-uninstalled:
6726           fix PKG_CONFIG_PATH and PYTHONPATH
6727         * gst/schedulers/Makefile.am:
6728           cleanup
6729         * libs/gst/bytestream/bytestream.c:
6730           remove newline
6731         * po/LINGUAS:
6732         * po/sq.po:
6733           adding Albanian translation (Laurent Dhima)
6734         * po/cs.po:
6735           updated
6736
6737 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6738
6739         * po/ca.po:
6740         * po/sv.po:
6741           updated translations
6742
6743 2004-08-04  Benjamin Otte  <otte@gnome.org>
6744
6745         * tests/mass_elements.c: (main):
6746           allow specifying src and sink element explicitly, so I can test
6747           videotestsrc instead of fakesrc
6748
6749 2004-08-04  Benjamin Otte  <otte@gnome.org>
6750
6751         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
6752         (gst_structure_id_empty_new), (gst_structure_empty_new),
6753         (gst_structure_copy):
6754           add gst_structure_id_empty_new_with_size to allow preallocating
6755           value array sizes. Use this in gst_structure_copy to get rid of
6756           reallocs.
6757           don't do quark=>string=>quark when copying structures
6758
6759 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
6760
6761         * docs/manual/win32.xml:
6762         * win32/README.txt:
6763           update documentation with the clean version of dependencies
6764
6765 2004-08-03  Benjamin Otte  <otte@gnome.org>
6766
6767         * gst/schedulers/entryscheduler.c:
6768         (gst_entry_scheduler_remove_element):
6769           fix for GST_DISABLE_DEBUG
6770         * tools/gst-launch.c: (print_tag):
6771           fixes for G_DISABLE_ASSERT
6772
6773 2004-08-03  Benjamin Otte  <otte@gnome.org>
6774
6775         * gst/gst.c: (gst_register_core_elements):
6776           fix for G_DISABLE_ASSERT
6777         * gst/gstinfo.c: (__gst_in_valgrind):
6778           add for GST_DISABLE_DEBUG
6779
6780 2004-08-03  Benjamin Otte  <otte@gnome.org>
6781
6782         * gst/parse/parse.l:
6783           fix for G_DISABLE_ASSERT
6784
6785 2004-08-03  Wim Taymans  <wim@fluendo.com>
6786
6787         * gst/gstbin.c: (gst_bin_get_type),
6788         (gst_bin_child_state_change_func):
6789         * gst/gstthread.c: (gst_thread_change_state):
6790         Backported some debug logging from a reverted patch
6791         Don't try to destroy the thread twice. Added some more
6792         debugging in GstThread. Unlock and signal even if we
6793         are in the thread context.
6794
6795 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6796
6797         * po/uk.po:
6798           updated translation
6799
6800 2004-07-30  David Schleef  <ds@schleef.org>
6801
6802         * gst/gstatomic_impl.h: Enable atomic code for x86_64
6803
6804 2004-07-29  David Schleef  <ds@schleef.org>
6805
6806         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
6807         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
6808
6809 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
6810
6811         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
6812         (gst_bin_add_func), (gst_bin_remove_func),
6813         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
6814         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
6815         (gst_bin_change_state_norecurse), (gst_bin_dispose),
6816         (gst_bin_sync_children_state):
6817         * gst/gstbin.h:
6818         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
6819         (gst_thread_change_state):
6820         * testsuite/states/Makefile.am:
6821           revert state change patches as agreed so we can rework them
6822           gradually
6823
6824 2004-07-29  Benjamin Otte  <otte@gnome.org>
6825
6826         * libs/gst/control/Makefile.am:
6827           link to libgstreamer (fixes Debian bug 262019, see
6828           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
6829
6830 2004-07-29  Wim Taymans  <wim@fluendo.com>
6831
6832         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6833         (check_from_fraction_convert), (transform_test), (main):
6834         Make the test less pedantic about float roundoff errors.
6835
6836 2004-07-29  Benjamin Otte  <otte@gnome.org>
6837
6838         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
6839         (gst_filesrc_srcpad_event):
6840           make seek events to before start/after end of file not fail, but
6841           seek to start/end instead
6842         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
6843           add more output
6844
6845 2004-07-29  Benjamin Otte  <otte@gnome.org>
6846
6847         * gst/gstpad.c: (gst_pad_set_explicit_caps):
6848           check that caps are fixed
6849         * gst/gstpad.c: (gst_pad_template_new):
6850           don't try to simplify caps, costs too much time on gst_init
6851         * gst/gstplugin.c: (gst_plugin_add_feature):
6852           G_ERROR if features are added twice
6853         * gst/gsttypefind.c: (gst_type_find_register):
6854         * gst/gstelementfactory.c: (gst_element_register):
6855           don't add features twice
6856         * docs/random/ds/0.9-suggested-changes:
6857           add note about possible gst_init optimization
6858
6859 2004-07-28  David Schleef  <ds@schleef.org>
6860
6861         * testsuite/elements/Makefile.am:
6862         * testsuite/elements/struct_i386.h:
6863         * testsuite/elements/struct_size.c: (main):  A little test
6864         to keep distcheck from working if someone changes a structure
6865         size accidentally.
6866
6867 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6868
6869         * docs/libs/Makefile.am:
6870         * docs/libs/gstreamer-libs-docs.sgml:
6871         * docs/libs/gstreamer-libs-sections.txt:
6872         * docs/libs/tmpl/gstbytestream.sgml:
6873         * docs/libs/tmpl/gstcontrol.sgml:
6874         * docs/libs/tmpl/gstdataprotocol.sgml:
6875         * docs/libs/tmpl/gstgetbits.sgml:
6876         * libs/gst/bytestream/Makefile.am:
6877         * libs/gst/bytestream/bytestream.c:
6878         * libs/gst/bytestream/bytestream.h:
6879         * libs/gst/control/Makefile.am:
6880         * libs/gst/dataprotocol/Makefile.am:
6881         * libs/gst/getbits/Makefile.am:
6882         * libs/gst/getbits/getbits.h:
6883           various doc and style fixes, adding bytestream to libs docs.
6884
6885 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6886
6887         * docs/gst/gstreamer-docs.sgml:
6888         * docs/libs/Makefile.am:
6889         * docs/libs/gstreamer-libs-docs.sgml:
6890         * docs/libs/gstreamer-libs-sections.txt:
6891         * libs/gst/control/dparam.c:
6892           more doc fixes.  gst-libs docs now build the same way as gst.
6893
6894 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6895
6896         * configure.ac:
6897         * testsuite/Makefile.am:
6898         * testsuite/bins/Makefile.am:
6899         * testsuite/caps/Makefile.am:
6900         * testsuite/cleanup/Makefile.am:
6901         * testsuite/clock/Makefile.am:
6902         * testsuite/debug/Makefile.am:
6903         * testsuite/dlopen/Makefile.am:
6904         * testsuite/dynparams/Makefile.am:
6905         * testsuite/elements/.cvsignore:
6906         * testsuite/elements/Makefile.am:
6907         * testsuite/enumcaps/Makefile.am:
6908         * testsuite/enumcaps/enumcaps.c:
6909         * testsuite/ghostpads/Makefile.am:
6910         * testsuite/indexers/Makefile.am:
6911         * testsuite/negotiation/Makefile.am:
6912         * testsuite/parse/Makefile.am:
6913         * testsuite/plugin/Makefile.am:
6914         * testsuite/refcounting/Makefile.am:
6915         * testsuite/schedulers/.cvsignore:
6916         * testsuite/states/Makefile.am:
6917         * testsuite/tags/Makefile.am:
6918         * testsuite/threads/Makefile.am:
6919           fold enumcaps into caps dir
6920           clean up Makefile.am's for testsuite
6921
6922 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6923
6924         * docs/gst/Makefile.am:
6925         * docs/libs/Makefile.am:
6926           clean up docs build.  Fixes needless rebuilding of template files.
6927
6928 2004-07-28  Wim Taymans  <wim@fluendo.com>
6929
6930         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
6931         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
6932         Make sure that a bin state change tries to keep the children
6933         in sync. 
6934         Added debug logging to the thread.
6935
6936 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
6937
6938         * win32/GStreamer.vcproj:
6939         * win32/gstreamer.def:
6940           more exports for the plugins
6941
6942 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
6943
6944         * win32/gstgetbits.vcproj:
6945         * win32/gstgetbits.def:
6946         * win32/msvc71.sln:
6947           add support for the getbits plugin
6948
6949 2004-07-27  Wim Taymans  <wim@fluendo.com>
6950
6951         * gst/gstvalue.c: (gst_value_transform_double_fraction),
6952         (gst_value_transform_fraction_double), (_gst_value_initialize):
6953         * testsuite/caps/Makefile.am:
6954         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6955         (check_from_fraction_convert), (transform_test), (main):
6956         Added transform functions between double and fraction.
6957         Added testcase to verify transforms
6958
6959 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6960
6961         * win32/GStreamer.vcproj:
6962           rename GStreamer-0.8.lib to libgstreamer.lib
6963
6964 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6965
6966         * win32/gstelements.vcproj:
6967         * win32/gstoptimalscheduler.vcproj:
6968           fixes for the Release build
6969
6970 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6971
6972         * win32/config.h:
6973           update the version number
6974
6975 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6976
6977         * win32/GStreamer.vcproj:
6978           add gstinterface to the build
6979
6980 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6981
6982         * win32/gstreamer.def:
6983           add many definitions needed by plugins,
6984           GST_CAT_DEFAULT only available in the Debug build ?
6985
6986 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6987
6988         * gst/gstelement.c: (gst_element_set_eos_recursive):
6989           various whitespace fixes.
6990           doc fix, fixes #148497
6991
6992 2004-07-25  Benjamin Otte  <otte@gnome.org>
6993
6994         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
6995           don't delay links on the sink elements, it causes unnegotiated
6996           links.
6997         * gst/elements/gsttypefindelement.c:
6998         (gst_type_find_element_base_init):
6999           add our padtemplates, we indeed do have some.
7000         * gst/elements/gsttypefindelement.c:
7001         (gst_type_find_element_handle_event),
7002         (gst_type_find_element_chain):
7003           don't push data when typefinding failed.
7004         * gst/gstpad.c: (gst_pad_link_fixate):
7005           check that no fixate function returns empty caps.
7006         * gst/gstpad.c: (gst_pad_push):
7007           check that the link is negotiated before data gets pushed.
7008         * tools/gst-register.c: (main):
7009           don't assert (fixes #148283)
7010
7011 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7012
7013         * docs/gst/gstreamer-sections.txt:
7014         * docs/gst/tmpl/gstconfig.sgml:
7015           add GST_PLUGIN_EXPORT definition
7016
7017 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7018
7019         * gst/gstplugin.h:
7020         * gst/gstconfig.h.in:
7021         * win32/gstconfig.h:
7022         * win32/gstelements.def:
7023         * win32/gstelements.vcproj:
7024         * win32/gstoptimalscheduler.def:
7025         * win32/gstoptimalscheduler.vcproj:
7026         * win32/gstspider.def:
7027         * win32/gstspider.vcproj:
7028           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
7029
7030 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7031
7032         * docs/gst/gstreamer-sections.txt:
7033           remove GST_CAT_DEFAULT because the type has changed
7034
7035 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7036
7037         * win32/gstbytestream.vcproj:
7038         * win32/gstelements.vcproj:
7039         * win32/gst-inspect.vcproj:
7040         * win32/gst-launch.vcproj:
7041         * win32/gstoptimalscheduler.vcproj:
7042         * win32/GStreamer.vcproj:
7043         * win32/gst-register.vcproj:
7044         * win32/gstspider.vcproj:
7045         * win32/msvc71.sln:
7046           Copy the files where needed after building, The testsuite will be
7047           built separately
7048
7049 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7050
7051         * win32/config.h:
7052         * win32/README.txt:
7053         * docs/manual/win32.xml:
7054         Fixed the plugin and GStreamer location
7055
7056 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7057
7058         * win32/gstreamer.def:
7059         More exports for the plugins
7060
7061 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7062
7063         * gst/gstinfo.h:
7064         Marc was right, we need to export literally GST_CAT_DEFAULT
7065
7066 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7067
7068         * win32/config.h:
7069         NLS crashes in gettext, disabled until this is solved
7070
7071 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7072
7073         * win32/gst-inspect.vcproj:
7074         * win32/gst-launch.vcproj:
7075         Should use NLS when available
7076
7077 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7078
7079         * gst/registries/gstxmlregistry.c:
7080         removing the file doesn't seem to be a good idea on Linux
7081
7082 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7083
7084         * gst/registries/gstxmlregistry.c:
7085         Remove the registry before renaming the tempfile (needed for Windows)
7086
7087 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7088
7089         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
7090         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
7091         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
7092         * gst/elements/gstmultifilesrc.h:
7093         Added newmedia property so it generates newmedia events between each
7094         file when property is set, as well as fixed eos handling
7095
7096 2004-07-22  David Schleef  <ds@schleef.org>
7097
7098         * gst/gststructure.c: (gst_structure_id_empty_new),
7099         (gst_structure_empty_new):  Set type field correctly.
7100         * gst/gststructure.h: Check type field correctly.
7101         * testsuite/caps/Makefile.am:
7102         * testsuite/caps/structure.c: (test1), (main): Add a very small
7103         test for structures.
7104
7105 2004-07-22  David Schleef  <ds@schleef.org>
7106
7107         * docs/random/ds/0.9-suggested-changes: more comments
7108         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
7109
7110 2004-07-22  Benjamin Otte  <otte@gnome.org>
7111
7112         * gst/gstelementfactory.c: (gst_element_register):
7113           set the factory in the class struct, so gst_element_get_factory
7114           actually works
7115         * gst/parse/grammar.y:
7116           set element to playing when it gets unlocked as we can't rely on the
7117           bin state - all elements in the bin state might still be locked in
7118           NULL)
7119
7120 2004-07-22  Benjamin Otte  <otte@gnome.org>
7121
7122         * gst/gstelement.c: (gst_element_set_state_func):
7123           make this a static function
7124
7125 2004-07-22  Wim Taymans  <wim@fluendo.com>
7126
7127         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
7128         (gst_opt_scheduler_pad_link):
7129         fix 147894-2 and the group_link problem.
7130
7131 2004-07-22  Wim Taymans  <wim@fluendo.com>
7132
7133         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7134         (handoff_identity), (main):
7135         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7136         (handoff_identity), (main):
7137         * testsuite/schedulers/Makefile.am:
7138         * testsuite/schedulers/group_link.c: (main):
7139         Show bug in scheduler when linking chain and loop based element 
7140         where the chain based element was not yet in a group.
7141
7142 2004-07-21  Benjamin Otte  <otte@gnome.org>
7143
7144         * gst/.cvsignore:
7145         * gst/autoplug/.cvsignore:
7146         * gst/elements/.cvsignore:
7147         * gst/indexers/.cvsignore:
7148         * libs/gst/bytestream/.cvsignore:
7149         * libs/gst/control/.cvsignore:
7150         * libs/gst/getbits/.cvsignore:
7151         * testsuite/states/.cvsignore:
7152         * testsuite/threads/.cvsignore:
7153           keep this up to date, since I seem to be the only one who cares
7154           about not missing files on commits (editor's note: no you don't,
7155           but feel free to change them at the time you add stuff instead
7156           of later on)
7157
7158 2004-07-21  Benjamin Otte  <otte@gnome.org>
7159
7160         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7161         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
7162         (gst_bin_child_state_change_func), (set_kid_state_func),
7163         (gst_bin_set_state), (gst_bin_change_state_norecurse):
7164           make state changes work correctly and reentrant (so removing
7165           elements from bins during state changes of bins doesn't cause
7166           segfaults or even wrong states)
7167           add debugging category and debugging output to print children states
7168         * gst/gstbin.c: (gst_bin_dispose): 
7169           add some assertion checks
7170         * gst/gstbin.h:
7171         * gst/gstbin.c: (gst_bin_sync_children_state):
7172           deprecate this function - it just does gst_bin_set_state (bin,
7173           GST_STATE (bin)) 
7174         * testsuite/threads/queue.c: (main):
7175           don't use gst_bin_sync_children_state anymore
7176         * testsuite/states/Makefile.am:
7177         * testsuite/states/bin.c:
7178           test that the state changes of bins work as expected
7179         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
7180           some adjustments to change states correctly, too
7181         * gst/gstthread.c: (gst_thread_change_state):
7182           don't enable/disable "threadsafe" properties, they're unused and
7183           cause random segfaults
7184         * testsuite/threads/Makefile.am:
7185           the queue check randomly passes now, ignore it
7186
7187 2004-07-21  Benjamin Otte  <otte@gnome.org>
7188
7189         * gst/gstpad.c:
7190           check if data is NULL before outputting debug info. (fixes #145100)
7191
7192 2004-07-21  Benjamin Otte  <otte@gnome.org>
7193
7194         * gst/schedulers/entryscheduler.c:
7195         (gst_entry_scheduler_loop_wrapper),
7196         (gst_entry_scheduler_chain_wrapper),
7197         (gst_entry_scheduler_get_wrapper):
7198           reset the state when the cothread starts, so we don't get assertion
7199           failures on restarting of cothreads
7200
7201 2004-07-20  Benjamin Otte  <otte@gnome.org>
7202
7203         * gst/gstelement.c: (gst_element_link_pads_filtered):
7204           use correct sinkpad, if only sinkpad is specified, but not srcpad
7205           (fixes #147889)
7206         * gst/gstelement.c: (gst_element_set_state_func),
7207         (gst_element_change_state): ref/unref the element, signal handlers
7208         could get rid of the element otherwise
7209
7210 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7211
7212         * docs/random/ds/0.9-suggested-changes:
7213           Make note about renaming fixed-list to array.
7214         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
7215         (_gst_value_initialize):
7216           Add array intersections.
7217         * testsuite/caps/intersect2.c: (main):
7218           Add test for array intersections.
7219
7220 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7221
7222         * configure.ac: back to cvs
7223
7224 === release 0.8.4 ===
7225
7226 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7227
7228         * configure.ac:
7229           releasing 0.8.4, "Paella"
7230           bump libtool versioning
7231
7232 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7233
7234         * po/LINGUAS:
7235         * po/ca.po:
7236           adding Catalan translation (Jordi Mallach)
7237
7238 2004-07-20  Wim Taymans  <wim@fluendo.com>
7239
7240         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7241         (handoff_identity), (main):
7242         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7243         (handoff_identity), (main):
7244         * testsuite/schedulers/Makefile.am:
7245         Added failing testcase for variant of #147894
7246
7247 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7248
7249         patch by: David Moore
7250
7251         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7252         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
7253         (group_migrate_connected):
7254         * testsuite/schedulers/Makefile.am:
7255           fix for #142813 (Deadlock in optimal scheduler)
7256
7257 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7258
7259         patch by: Wim Taymans
7260
7261         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7262         (gst_opt_scheduler_schedule_run_queue),
7263         (gst_opt_scheduler_get_wrapper), (get_group),
7264         (group_migrate_connected):
7265         * testsuite/schedulers/Makefile.am:
7266           fix for #147819 (Add some checks in the opt scheduler)
7267
7268 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7269
7270         patch by: Benjamin Otte
7271
7272         * gst/gstelementfactory.c: (__gst_element_details_set):
7273           fix for #147929: running gst-register in non-utf8 locale can cause
7274           invalid registry
7275
7276 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7277
7278         patch by: Wim Taymans
7279
7280         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
7281         (group_has_element), (element_get_reachables_func),
7282         (group_migrate_connected):
7283           fix for #147894 (opt scheduler decoupled elements mismanagement)
7284         * testsuite/schedulers/Makefile.am:
7285           testsuite app now passes
7286
7287 2004-07-19  Wim Taymans  <wim@fluendo.com>
7288
7289         * testsuite/schedulers/147819.c: (handoff_identity1),
7290         (handoff_identity2), (main):
7291         * testsuite/schedulers/Makefile.am:
7292         Added testcase for bug 147819
7293
7294 2004-07-19  Wim Taymans  <wim@fluendo.com>
7295
7296         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7297         (handoff_identity), (main):
7298         * testsuite/schedulers/Makefile.am:
7299         Added testcase for bug 147894
7300
7301 2004-07-16  Wim Taymans  <wim@fluendo.com>
7302
7303         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
7304         * testsuite/schedulers/142183.c: (handoff_identity), (main):
7305         * testsuite/schedulers/Makefile.am:
7306         Added testsuite for bug 142183 in its two incarnations. Refcount
7307         is not increased for scheduled elements and threadsafe properties
7308         mutexes are not properly unlocked.
7309
7310 2004-07-16  Wim Taymans  <wim@fluendo.com>
7311
7312         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
7313         (create_chain), (destroy_chain), (create_group), (destroy_group),
7314         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
7315         (group_dec_link), (gst_opt_scheduler_pad_link),
7316         (group_inc_links_for_element), (group_migrate_connected):
7317         Call group_inc_link with the proper src->sink ordering -- 
7318         break this, and we break sort_chain. patch from wingo for bug
7319         147713.
7320         Partially revert patch 1.89. When adding a loop based element to 
7321         the scheduler, the links to other groups are automatically followed
7322         and incremented. This should not happen because the bin will call
7323         pad_link explicitly for those connection, resulting in them counted 
7324         twice. Results in assertion failure on pipeline cleanup.
7325
7326 2004-07-16  Wim Taymans  <wim@fluendo.com>
7327
7328         * testsuite/schedulers/143777-2.c: (main):
7329         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
7330         (main):
7331         * testsuite/schedulers/Makefile.am:
7332         Added cleanup code to testcase 143777-2.
7333         Added testcase to show bug 147713, does not really show the
7334         deadlock as I can't figure out how to trigger it, but it does
7335         demonstrate bad ordering in the scheduler.
7336
7337 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7338
7339         * gst/gstvalue.c: (gst_value_deserialize_fraction):
7340           change strndup to g_strndup.  Fixes #147707
7341
7342 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7343
7344         * po/af.po:
7345         * po/az.po:
7346         * po/cs.po:
7347         * po/en_GB.po:
7348         * po/fr.po:
7349         * po/nl.po:
7350         * po/sr.po:
7351         * po/sv.po:
7352         * po/tr.po:
7353         * po/uk.po:
7354           updated translations
7355
7356 2004-07-16  Benjamin Otte  <otte@gnome.org>
7357
7358         * gst/gstvalue.c: (gst_greatest_common_divisor):
7359           use ints and return ints, fractions only use ints, too, so this
7360           avoids accidently casting multiplications to unsigned
7361         (gst_value_lcopy_fraction): it's ints, not uint32
7362         (gst_value_set_fraction): disallow minint, multiplying and negation
7363           are broken with it
7364         (gst_value_fraction_multiply): fix to make large numbers work and get
7365         rid of the assumption that the multiplication of two ints fits an
7366         int64 - dunno if that's true for all systems
7367         * testsuite/caps/Makefile.am:
7368         * testsuite/caps/fraction-multiply-and-zero.c:
7369         (check_multiplication), (check_equal), (zero_test), (main):
7370           add tests for all the stuff above
7371         * testsuite/caps/value_compare.c: (test1):
7372           fix comment
7373         * tests/.cvsignore:
7374         * testsuite/caps/.cvsignore:
7375         * testsuite/debug/.cvsignore:
7376         * testsuite/dlopen/.cvsignore:
7377         * testsuite/states/.cvsignore:
7378           get up to date
7379
7380 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7381
7382         * docs/manual/bins-api.xml:
7383         * docs/manual/factories.xml:
7384         * docs/manual/helloworld.xml:
7385         * docs/manual/links-api.xml: 
7386           fixes for out of date info, incorrect info and grammar
7387
7388 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7389
7390         * docs/manual/pads.xml:
7391         * docs/manual/pads-api.xml: grammar fix
7392
7393 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7394
7395         * docs/manual/pads-api.xml: typo + grammar fix
7396
7397 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7398
7399         * docs/gst/gstreamer-sections.txt:
7400           add new symbols
7401         * docs/gst/tmpl/gstelement.sgml:
7402         * docs/gst/tmpl/gstpad.sgml:
7403         * docs/gst/tmpl/gsttypes.sgml:
7404         * docs/gst/tmpl/gstvalue.sgml:
7405           update docs
7406         * gst/gststructure.c: (gst_structure_set_valist),
7407         (gst_structure_from_abbr), (gst_structure_to_abbr):
7408         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
7409         (gst_greatest_common_divisor), (gst_value_init_fraction),
7410         (gst_value_copy_fraction), (gst_value_collect_fraction),
7411         (gst_value_lcopy_fraction), (gst_value_set_fraction),
7412         (gst_value_get_fraction_numerator),
7413         (gst_value_get_fraction_denominator),
7414         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
7415         (gst_value_deserialize_fraction),
7416         (gst_value_transform_fraction_string),
7417         (gst_value_transform_string_fraction),
7418         (gst_value_compare_fraction), (_gst_value_initialize):
7419         * gst/gstvalue.h:
7420           adding GstFraction GValue type, get/set, and multiply
7421         * testsuite/caps/Makefile.am:
7422         * testsuite/caps/fraction.c: (test), (main):
7423         * testsuite/caps/string-conversions.c: (main):
7424         * testsuite/caps/value_compare.c: (test1), (main):
7425           add regression tests for GstFraction
7426
7427 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7428         
7429         * docs/manual/init-api.xml: Grammar fix
7430
7431 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7432
7433         * docs/manual/states.xml: Fix inconsistent information
7434
7435 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7436
7437         * gst/gstelement.c: (gst_element_set_state):
7438         * gst/gstpad.c: (gst_pad_try_set_caps):
7439         * gst/gststructure.c:
7440         * gst/gstthread.c: (gst_thread_child_state_change):
7441         * gst/gstvalue.c: (gst_value_compare_double):
7442         * gst/gstvalue.h:
7443         * testsuite/parse/parse1.c: (main):
7444           debugging additions and style cleanups
7445
7446 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7447
7448         * docs/manual/states.xml: Grammar fix
7449
7450 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7451
7452         * docs/manual/pads.xml: Grammar fix
7453
7454 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7455
7456         * docs/manual/elements.xml: Fixed image reference
7457
7458 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7459
7460         * docs/manual/goals.xml: Grammar fix
7461
7462 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7463
7464         * docs/manual/motivation.xml:
7465         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
7466
7467 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7468
7469         * docs/manual/motivation.xml: Fix spelling
7470
7471 2004-07-15  Benjamin Otte  <otte@gnome.org>
7472
7473         * gst/gstelement.h: 
7474           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
7475           strings.
7476         * gst/gstelement.c (gst_element_class_init):
7477           GError's are boxed, not objects
7478         * gst/gstmarshal.list:
7479           update list for the fixed error signal
7480
7481 2004-07-14  Andy Wingo  <wingo@pobox.com>
7482
7483         * gst/gsttag.c: Add a tag merge func for pointers. The header was
7484         there all along, but the function wasn't. (guile-gstreamer's build
7485         system uses the address of the function -- I wasn't actually
7486         trying to use this.)
7487
7488 2004-07-14  Andy Wingo  <wingo@pobox.com>
7489
7490         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
7491         as gst_pad_proxy_pad_link) just link to every other pad when they
7492         are called. In the case where the graph has cycles, this will mean
7493         that a call to try_set_caps will recurse. Allow this recursion
7494         and return OK, while we wait for the first try_set_caps to give a
7495         proper return value.
7496         (gst_pad_link_call_link_functions): Since this function is the
7497         only one to set the NEGOTIATING flag on a pad, if the flag is set
7498         it means that the link functions have indirectly recursed. If this
7499         happens, error out to avoid infinite recursion and an eventual
7500         SEGV.
7501         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
7502         (gst_pad_proxy_getcaps): Intersect the result with the template
7503         caps to ensure that the return value is valid.
7504
7505 2004-07-14  Andy Wingo  <wingo@pobox.com>
7506
7507         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
7508         one refcount, the calling function is the owner of the buffer.
7509
7510 2004-07-14  Wim Taymans  <wim@fluendo.com>
7511
7512         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7513         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7514         Fix stupid warning when an element is to be migrated but
7515         is already migrated.
7516
7517 2004-07-14  Wim Taymans  <wim@fluendo.com>
7518
7519         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7520         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7521         Make sure that a single non-loop-based element does not 
7522         end up in a group. This fixes the testsuite again.
7523
7524 2004-07-14  Wim Taymans  <wim@fluendo.com>
7525
7526         * gst/schedulers/gstoptimalscheduler.c: (create_group),
7527         (add_to_group), (merge_groups), (schedule_group),
7528         (gst_opt_scheduler_get_wrapper), (group_elements),
7529         (group_dec_link), (gst_opt_scheduler_pad_link),
7530         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
7531         (gst_opt_scheduler_iterate):
7532         move isolated groups to a new chain.
7533         Emit a warning instead of segfaulting in some error cases.
7534         Fix a bug where the link count between groups was not calculated 
7535         correctly. Fixes #144510.
7536
7537 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
7538         * gst/elements/gstfilesrc.c:
7539           Binary files support under Windows now OK
7540       
7541 2004-07-13  Benjamin Otte  <otte@gnome.org>
7542
7543           compatibility fixes for Solaris 8/gcc 2.95
7544         * configure.ac:
7545           include libintl libs in LDFLAGS
7546         * gstvalue.c (gst_value_deserialize_buffer):
7547           cast isxdigit stuff to int to silence compiler warning
7548
7549 2004-07-12  Benjamin Otte  <otte@gnome.org>
7550
7551         * gst/gsttypes.h:
7552           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
7553           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
7554           just causes support madness
7555         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7556           make it work without this
7557         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
7558         (gst_file_index_commit):
7559           glib IO channels don't want binary mode
7560         * testsuite/bytestream/filepadsink.c: (main):
7561         * testsuite/bytestream/test1.c: (read_param_file):
7562           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
7563
7564 2004-07-12  Benjamin Otte  <otte@gnome.org>
7565
7566         * gst/gstelement.c: (gst_element_class_init),
7567         (gst_element_set_state), (gst_element_set_state_func):
7568           virutalize gst_element_set_state, use set_state member in class
7569           struct that was already added in 0.7 for this.
7570         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
7571         (gst_bin_change_state):
7572           make gst_bin_foreach works similar to other foreach functions, plug
7573           memleaks in it. Make functions using it work with the new approach.
7574           Document gst_bin_foreach, so it can be exported if we want to
7575         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
7576           use virtualized set_state to make set_state on bins set the state of
7577           all its children.
7578
7579 2004-07-12  Benjamin Otte  <otte@gnome.org>
7580
7581         * configure.ac:
7582           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
7583           http://bugs.gentoo.org/show_bug.cgi?id=53967)
7584         * gst/gstpad.c: (gst_pad_alloc_buffer):
7585           allow buffer_alloc functions to return NULL and allocate a normal
7586           buffer in that case
7587
7588 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7589         * gst/elements/gstfilesink.c:
7590         * gst/elements/gstfilesrc.c:
7591         * gst/indexers/gstfileindex.c:
7592         * gst/gsttypes.h:
7593         * testsuite/bytestream/filepadsink.c:
7594         * testsuite/bytestream/test1.c:
7595           Handle binary files under Windows
7596
7597 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7598         * docs/manual/win32.xml:
7599         * win32/config.h:
7600         * win32/gst-register.vcproj:
7601         * win32/gstreamer.def:
7602           Update to another gettext public build
7603
7604 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7605         * gst/gstplugin.c:
7606           Fix an impossible C syntax
7607         * win32/config.h:
7608           Disable i18n under Windows for the moment
7609         * win32/gst-register.vcproj:
7610           Use this configuration
7611
7612 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
7613         * docs/manual/quotes.xml:
7614           Keep the quotes file alive
7615         * docs/random/ds/0.9-suggested-changes:
7616           Add the suggestion of including a 'rowstride' as part of video
7617           format caps
7618
7619 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7620
7621         * gst/gstelement.c: (gst_element_set_state),
7622         (gst_element_change_state):
7623           d'oh.  Set PENDING state correctly before forcing bin to change.
7624         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7625         (gst_structure_parse_fixed_list):
7626         * gst/schedulers/gstoptimalscheduler.c:
7627         (gst_opt_scheduler_state_transition):
7628         * testsuite/states/parent.c: (main):
7629           remove comment now that it's fixed.
7630
7631 2004-07-11  Benjamin Otte  <otte@gnome.org>
7632
7633         * gst/gstclock.h:
7634           GST_SECOND shouldn't cause a conversion to unsigned.
7635         * testsuite/clock/.cvsignore:
7636         * testsuite/clock/Makefile.am:
7637         * testsuite/clock/signedness.c: (main):
7638           make sure it never will again
7639
7640 2004-07-11  Andy Wingo  <wingo@pobox.com>
7641
7642         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
7643         whose state is higher than the bin state, raise the bin state to
7644         ensure that bin state := highest child state.
7645         
7646 2004-07-11  Andy Wingo  <wingo@pobox.com>
7647
7648         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
7649         procedure on the children of a bin. Assumes that the procedure can
7650         change the set of children.
7651         (set_kid_state_func): New static function.
7652         (gst_bin_change_state): Use gst_bin_foreach to call
7653         set_kid_state_func. Fixes a bug: if a child had a state-change
7654         handler that removes it from the bin, there would be a segfault.
7655         Hopefully it should also work in the case where the state-change
7656         handler on one child adds or removes other children. In any case,
7657         fixes should go to gst_bin_foreach.
7658
7659 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
7660
7661         * gst/gstelement.c: (gst_element_set_state):
7662           compatibility fix for latest plugins release.  Change loop back
7663           to while {}
7664
7665 2004-07-09  Wim Taymans  <wim@fluendo.com>
7666
7667         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
7668         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
7669         (gst_thread_main_loop):
7670         Since remove is virtual in GstBin we must not assume the 
7671         elements GList to have anothing useful.
7672         Add some more logging to GstThread and be a bit more paranoid
7673         when resetting the scheduler.
7674         Set the state of the bin to NULL before removing the children.
7675
7676 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7677
7678         * testsuite/threads/Makefile.am:
7679         * testsuite/threads/threadg.c:
7680           added test to check if problem when removing all elements from a
7681           GstThread before setting GstThread state to NULL
7682
7683 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7684
7685         * docs/gst/tmpl/gstelement.sgml:
7686         * docs/gst/tmpl/gsttypes.sgml:
7687         * gst/gstbin.c: (gst_bin_change_state):
7688         * gst/gstelement.c: (gst_element_set_state),
7689         (gst_element_change_state):
7690           rework so that for bins we try to set the state on all children
7691           as well even if the bin is in the correct state already.
7692           change while to do so at least one iteration is done.
7693           For regular elements, we fall back to the previous behaviour for
7694           now since we first need a new plugins release.
7695         * testsuite/states/parent.c: (main):
7696           test for this case
7697           Fixes #123774
7698
7699 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7700
7701         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
7702         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
7703         (gst_queue_release_locks), (gst_queue_change_state),
7704         (gst_queue_set_property):
7705           add proper lock debugging.  Change dispose to finalize, since
7706           we're freeing mutexes and other stuff which should happen only once.
7707
7708 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7709
7710         * docs/gst/tmpl/gstelement.sgml:
7711         * docs/gst/tmpl/gstplugin.sgml:
7712         * docs/gst/tmpl/gsttypes.sgml:
7713         * docs/pwg/building-state.xml:
7714         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
7715         * gst/gstelement.c: (gst_element_change_state):
7716         * gst/gstthread.c: (gst_thread_change_state):
7717           catch wrong state changes in element base class.
7718
7719 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7720
7721         * gst/gstinfo.h:
7722           clean up layout a little.
7723
7724 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7725
7726         * configure.ac:
7727         * testsuite/Makefile.am:
7728         * testsuite/states/Makefile.am:
7729         * testsuite/states/parent.c: (main):
7730           re-enable states testsuite dir.  Add test for state changes and
7731           parent behaviour
7732
7733 2004-07-09  Wim Taymans  <wim@fluendo.com>
7734
7735         * gst/schedulers/gstoptimalscheduler.c:
7736         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
7737         (element_get_reachables_func), (element_get_reachables),
7738         (debug_element), (rechain_group), (group_migrate_connected),
7739         (gst_opt_scheduler_pad_unlink):
7740         Do not try to migrate decoupled elements to a new group since
7741         they are not added to groups.
7742
7743 2004-07-08  Benjamin Otte  <otte@gnome.org>
7744
7745         * gst/gstelement.c: (gst_element_error_func):
7746           make reentrant (= allow removing elements in error handler)
7747
7748 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7749
7750         * gst/gstpad.c: (gst_pad_event_default_dispatch),
7751         (gst_pad_send_event), (gst_pad_call_chain_function):
7752           events sent to elements below PAUSED cannot be handled, so
7753           don't try to
7754
7755 2004-07-08  Wim Taymans  <wim@fluendo.com>
7756
7757         * gst/schedulers/gstoptimalscheduler.c:
7758         (chain_recursively_migrate_group), (create_group),
7759         (schedule_group), (gst_opt_scheduler_pad_link),
7760         (group_elements_set_visited), (element_get_reachables_func),
7761         (element_get_reachables), (group_can_reach_group), (debug_element),
7762         (rechain_group), (group_migrate_connected),
7763         (gst_opt_scheduler_pad_unlink):
7764         * testsuite/schedulers/Makefile.am:
7765         Implemented group splitting and rechaining.
7766         Fixes 143777 and 143777-2 in the testsuite.
7767
7768 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7769
7770         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7771           extra debugging
7772         * gst/gstevent.h:
7773         * gst/gstinfo.c: (gst_debug_log_default):
7774           print time nicely.  add thread pointer until someone figures out
7775           a completely portable way of getting at thread id's.
7776         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
7777         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
7778         (gst_pad_call_chain_function):
7779           extra debugging
7780         * gst/schedulers/gstoptimalscheduler.c:
7781         (get_group_schedule_function), (loop_group_schedule_function),
7782         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
7783         (pad_clear_queued), (gst_opt_scheduler_iterate):
7784           rename BUFPEN and friends to DATAPEN since that's what they are.
7785
7786 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7787
7788         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7789         * gst/gstbuffer.h:
7790         * gst/gstpad.c:
7791           cleanups and debugging
7792
7793 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7794
7795         * configure.ac:
7796         * gst/gstvalue.c: (gst_value_compare_enum),
7797         (gst_value_serialize_enum), (gst_value_deserialize_enum),
7798         (gst_value_can_compare), (gst_value_compare):
7799         * testsuite/Makefile.am:
7800         * testsuite/enumcaps/Makefile.am:
7801         * testsuite/enumcaps/enumcaps.c:
7802           Fix enum serialization, deserialization, comparison in caps, add
7803           a test to ensure that this continues working in the future.
7804
7805 2004-07-06  David Schleef  <ds@schleef.org>
7806
7807         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7808         Fix memleak.
7809
7810 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7811
7812         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
7813         * gst/gstplugin.h:
7814         * gst/registries/gstxmlregistry.c:
7815         (plugin_times_older_than_recurse), (plugin_times_older_than),
7816         (gst_xml_registry_parse_padtemplate):
7817           only rebuild registry when actual plugins have a newer time than
7818           the registry.  Fixes #145520
7819
7820 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7821
7822         * docs/manual/manual.xml:
7823         * docs/manual/win32.xml:
7824           add chapter on win32 building.  fixes #142422
7825
7826 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7827
7828         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
7829
7830         * gst/autoplug/gstspider.c: (gst_spider_init),
7831         (gst_spider_dispose):
7832           fix spider memleaks.  fixes #137863
7833
7834 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7835
7836         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
7837
7838         * gst/schedulers/gstoptimalscheduler.c:
7839         (gst_opt_scheduler_pad_unlink):
7840           fix SIGBUS error, fixes #145338
7841
7842 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7843
7844         * gst/gstobject.c: (gst_object_replace):
7845         * gst/gstscheduler.c: (gst_scheduler_get_clock):
7846         * gst/gstsystemclock.c: (gst_system_clock_obtain):
7847           clean up clock lifecycle.  Fixes #109831
7848
7849 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7850
7851         * po/LINGUAS:
7852         * po/cs.po:
7853           added Czech translation (Miloslav Trmac)
7854
7855 2004-07-04  David Schleef  <ds@schleef.org>
7856
7857         * tools/Makefile.am:
7858         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
7859
7860 2004-07-04  David Schleef  <ds@schleef.org>
7861
7862         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
7863
7864 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
7865
7866         * gst/gstbin.c: (gst_bin_restore_thyself):
7867           chain to parent restore so the bins get restored correctly
7868           in the editor
7869
7870 2004-07-03  David Schleef  <ds@schleef.org>
7871
7872         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7873         Actually do something in these functions, like before the big
7874         caps change.  (bug #145137)
7875
7876 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7877
7878         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
7879         (gst_element_get_compatible_pad_filtered):
7880         * gst/gstthread.c: (gst_thread_main_loop):
7881           more debugging
7882
7883 2004-07-02  David Schleef  <ds@schleef.org>
7884
7885         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
7886         * gst/gstobject.h:
7887         * gst/gstparse.h:
7888         * gst/gsttrace.h:
7889         * gst/gstxml.h:
7890
7891 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7892
7893         * gst/gstpad.c: (gst_pad_check_schedulers),
7894         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
7895         (gst_pad_link_prepare):
7896           revert until testsuite is fixed
7897
7898 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7899
7900         * testsuite/Makefile.am:
7901         * testsuite/caps/filtercaps.c: (main):
7902         * testsuite/clock/clock1.c: (main):
7903         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
7904           fix some more tests
7905
7906 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7907
7908         * testsuite/cleanup/cleanup1.c: (create_pipeline):
7909         * testsuite/cleanup/cleanup2.c: (create_pipeline):
7910         * testsuite/cleanup/cleanup4.c: (main):
7911           fix testsuite
7912
7913 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7914
7915         * libs/gst/control/control.c:
7916         * libs/gst/control/dparam.c:
7917         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
7918         * libs/gst/control/dparammanager.c:
7919         * libs/gst/control/dparammanager.h:
7920         * testsuite/dynparams/Makefile.am:
7921         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
7922         (gst_dptest_change_state), (gst_dptest_chain), (main):
7923           fix testcase for dparams
7924           add debugging category
7925
7926 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7927
7928         * testsuite/Rules:
7929           change path
7930
7931 2004-07-02  Benjamin Otte  <otte@gnome.org>
7932
7933         * tests/.cvsignore:
7934         * tests/Makefile.am:
7935         * tests/mass_elements.c: (gst_get_current_time), (main):
7936           add simple benchmark to test various speeds of fakesrc ! identity !
7937           identity ! ... ! fakesink.
7938           Usage: mass_elements [num_identities] [num_buffers]
7939           If not specified they default to 1000.
7940
7941 2004-07-02  Benjamin Otte  <otte@gnome.org>
7942
7943         * gst/gstpad.c: (gst_pad_check_schedulers),
7944         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
7945         (gst_pad_link_prepare):
7946           check that pads that get linked belong to the same manager. The old
7947           code allowed linking elements before putting them into bins, so it
7948           worked to link them and then put them in different threads, which
7949           lead to weird behaviour.
7950           Since this effectively disallows linking elements before putting
7951           them in a bin, some applications might not work after this and error
7952           out. If these applications are too critical, we might need to revert
7953           that patch. Please test this before the next release...
7954
7955 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7956
7957         * gst/gstpad.c: (gst_pad_get_caps):
7958           throw an error if the getcaps function does not return a subset of
7959           the template caps.
7960         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
7961           make disconts without position info an error in debugging
7962         * tests/spidey_bench.c: (handoff), (main):
7963           don't count first try when averaging
7964
7965 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7966
7967         * gst/gstplugin.c: (gst_plugin_load_file):
7968           figure out problem with dynamic test
7969
7970 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7971
7972         * docs/gst/Makefile.am:
7973           fix docs build
7974
7975 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7976
7977         * po/POTFILES.in:
7978         * po/af.po:
7979         * po/az.po:
7980         * po/en_GB.po:
7981         * po/fr.po:
7982         * po/nl.po:
7983         * po/sr.po:
7984         * po/sv.po:
7985         * po/tr.po:
7986         * po/uk.po:
7987         * tools/gst-register.c: (plugin_added_func), (main):
7988           i18n-ize -register, fix plural
7989
7990 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7991
7992         * gst/elements/gstidentity.c: (gst_identity_class_init),
7993         (gst_identity_init), (gst_identity_chain),
7994         (gst_identity_set_property), (gst_identity_get_property):
7995         * gst/elements/gstidentity.h:
7996           check for perfect stream
7997
7998 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7999
8000         * gst/elements/gstidentity.c: (gst_identity_chain):
8001           print offset_end
8002
8003 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8004
8005         * docs/gst/Makefile.am:
8006         * docs/gst/gstreamer-docs.sgml:
8007           doc fixes
8008
8009 2004-06-24  David Schleef  <ds@schleef.org>
8010
8011         * autogen.sh:  Remove call to env, since the buildbot isn't
8012         broken anymore.
8013
8014 2004-06-24  Wim Taymans  <wim@fluendo.com>
8015
8016         * gst/elements/Makefile.am:
8017         * gst/elements/gstelements.c:
8018         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
8019         (gst_multifdsink_class_init), (gst_multifdsink_init),
8020         (gst_multifdsink_add), (gst_multifdsink_remove),
8021         (gst_multifdsink_clear), (gst_multifdsink_chain),
8022         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
8023         * gst/elements/gstmultifdsink.h:
8024         Added an element that writes to multiple filedescriptors at once.
8025
8026 2004-06-24  Benjamin Otte  <otte@gnome.org>
8027
8028         * gst/parse/grammar.y:
8029           don't try to link elements before they have been added to bins
8030
8031 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8032
8033         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
8034         (gst_file_pad_get_length):
8035         * libs/gst/bytestream/filepad.h:
8036           add 2 new functions
8037
8038 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8039
8040         * docs/gst/gstreamer-sections.txt:
8041         remove from docs, the define that Benjamin removed from gstelement.h
8042
8043 2004-06-22  Benjamin Otte  <otte@gnome.org>
8044
8045         * gst/gstelement.h:
8046           remove define that referenced a nonexisting GstElement struct member
8047
8048 2004-06-20  Benjamin Otte  <otte@gnome.org>
8049
8050         * gst/gstdata.c: (gst_data_is_writable):
8051           whoops, return values were wrong, so writable data was marked as
8052           non-writable and vice versa. (fixes #143953, spotted by Francis
8053           Labonte)
8054           Shows how rarely we need to copy data ;)
8055
8056 2004-06-20  Benjamin Otte  <otte@gnome.org>
8057
8058         * testsuite/schedulers/.cvsignore:
8059         * testsuite/schedulers/Makefile.am:
8060         * testsuite/schedulers/143777-2.c: (main):
8061           add test for opt breakage in bug #143777
8062
8063 2004-06-20  Benjamin Otte  <otte@gnome.org>
8064
8065         * gst/gstpad.c: (gst_pad_call_chain_function):
8066           check for if we were unlinked while inside the chainfunction (fixes
8067           entrygthread having issues with #143777)
8068         * testsuite/schedulers/143777.c: (main):
8069         * testsuite/schedulers/Makefile.am:
8070           add a test for that fix
8071
8072 2004-06-20  Benjamin Otte  <otte@gnome.org>
8073
8074         * gst/gstvalue.c: (gst_value_set_int_range):
8075           test that start is smaller then end
8076         * libs/gst/bytestream/Makefile.am:
8077         * libs/gst/bytestream/filepad.c: 
8078         * libs/gst/bytestream/filepad.h:
8079           add GstFilePad - a pad that behaves like a FILE*
8080         * testsuite/bytestream/.cvsignore:
8081         * testsuite/bytestream/Makefile.am:
8082         * testsuite/bytestream/filepadsink.c: 
8083           test for the GstFilePad
8084
8085 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8086
8087         * gst/elements/gstidentity.c: (gst_identity_class_init),
8088         (gst_identity_init), (gst_identity_set_clock),
8089         (gst_identity_chain), (gst_identity_set_property),
8090         (gst_identity_get_property):
8091         * gst/elements/gstidentity.h:
8092         * gst/gstclock.c: (gst_clock_id_wait):
8093           add a "sync" property to sync to the clock
8094
8095 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8096
8097         * gst/gstelementfactory.c: (gst_element_factory_create):
8098           make the freakin "elementfactory bla has no type" message more
8099           useful. So we actually can do something when someone shows up
8100           complaining about it.
8101
8102 2004-06-15  Johan Dahlin  <johan@gnome.org>
8103
8104         * tools/gst-inspect.c (main): Fallback to plugin if no element is
8105         found. This matches the old behavior better. Thanks to Thomas for
8106         pointing out.
8107
8108 2004-06-14  David Schleef  <ds@schleef.org>
8109
8110         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
8111         -fomit-frame-pointer.  Appears to generate correct code in
8112         other cases as well.
8113
8114 2004-06-14  Johan Dahlin  <johan@gnome.org>
8115
8116         * tools/gst-inspect.c (main): Add two new command line options: -a
8117         to print all elements and -n to print the name on each line. Also
8118         fix some error reporting.
8119         (main): Simplify, remove -n and always print names if -a is specified
8120
8121 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
8122
8123         * win32/gstconfig.h:
8124         * win32/GSTreamer.vcproj:
8125         * win32/Makefile:
8126         * gst/gstconfig.h.in:
8127         * gst/gst.h:
8128         * gst/gstbin.h:
8129         * gst/gstelement.h:
8130         * gst/gstevent.h:
8131         * gst/gstobject.h:
8132         * gst/gstpad.h:
8133         * docs/gst/gstreamer-sections.txt:
8134         * docs/gst/tmpl/gstconfig.sgml:
8135           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
8136
8137 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8138         * docs/gst/gstreamer-sections.txt:
8139         * docs/gst/tmpl/gstconfig.sgml:
8140         Add the GSTREAMER_EXPORT macro to the docs
8141
8142 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8143
8144         * tools/gst-compprep.c: (handle_xmlerror), (main):
8145         Add a check for the version that introduced SetStructuredError to fix
8146         the build on FC1
8147
8148 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8149
8150         * win32/msvc71.sln:
8151         * win32/testsuite/:
8152           prepare to compile the testsuite with MSVC
8153
8154 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8155
8156         * docs/manual/win32.xml:
8157           attempt to transform the Win32 README into an XML doc
8158
8159 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8160
8161         * gst/gst.c:
8162         * gst/gstbin.*:
8163         * gst/config.h.in:
8164         * gst/gstelement.*:
8165         * gst/gstevent.h:
8166         * gst/gstobject.*:
8167         * gst/gstpad.h:
8168         * tools/gst-register.c:
8169         * win32/gstreamer.def:
8170           extern symbols are now exported for the Windows DLL
8171
8172 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8173
8174         * gst/gstinfo.h:
8175           fix a problem to enable/disable DEBUG under MSVC
8176
8177 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8178
8179         * win32/:
8180           enable more debug code in DEBUG build
8181
8182 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8183
8184         * win32/config.h:
8185         * gst/gst-i18n-app.h:
8186           enable NLS under Windows
8187
8188 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
8189         * tools/gst-compprep.c: (handle_xmlerror), (main):
8190           Make an error that baffled me a bit clearer
8191
8192 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8193
8194         * gst/gstqueue.c:
8195           don't use g_queue_get_length () because it's 2.4, use ->length
8196
8197 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
8198
8199         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
8200
8201         * tools/gst-inspect.c: (print_signal_info):
8202           don't free random data twice. (fixes #144185)
8203
8204 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
8205
8206         * gst/gstqueue.c:
8207         * gst/gstqueue.h:
8208           fix removing from the wrong queue on event timeout
8209           fix disposing of the event queue by casting correctly
8210           add mutexes for handling the event queue
8211           someone was sleeping when fixing queue last time around :)
8212
8213 2004-06-10  Johan Dahlin  <johan@gnome.org>
8214
8215         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
8216         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
8217
8218 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8219
8220         * docs/random/gdp:
8221         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
8222         * libs/gst/dataprotocol/dataprotocol.c:
8223         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8224         (gst_dp_buffer_from_header):
8225         * libs/gst/dataprotocol/dataprotocol.h:
8226         * libs/gst/dataprotocol/dp-private.h:
8227           rev version to 0.1, add buffer flags and copy them
8228
8229 2004-06-09  Johan Dahlin  <johan@gnome.org>
8230
8231         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
8232         the flags from the buffer we're copying.
8233
8234 2004-06-09  Wim Taymans  <wim@fluendo.com>
8235
8236         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
8237         * gst/elements/gstidentity.c: (gst_identity_init),
8238         (gst_identity_chain):
8239         Print more buffer info in fakesink.
8240         Make identity output similar to fakesink.
8241
8242 2004-06-07  Daniel Gazard  <dany42@free.fr>
8243
8244         reviewed by Benjamin Otte  <otte@gnome.org>
8245
8246         * configure.ac:
8247           fix cross compiling not working. (fixes #143741)
8248
8249 2004-06-07  Benjamin Otte  <otte@gnome.org>
8250
8251         * gst/gstelement.c: (gst_element_set_time_delay):
8252           add failure check
8253         * gst/gstinfo.h:
8254           put brackets around macro arguments of GST_TIME_ARGS, add note to
8255           move it to correct header in 0.9
8256
8257 2004-06-07  Benjamin Otte  <otte@gnome.org>
8258
8259         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
8260         (gst_file_index_load), (_file_index_id_save_entries),
8261         (gst_file_index_commit), (gst_file_index_add_association),
8262         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
8263         (gst_file_index_plugin_init):
8264           make debugging use a default category
8265
8266 2004-06-06  David Moore  <dcm@acm.org>
8267
8268         reviewed by Benjamin Otte  <otte@gnome.org>
8269
8270         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
8271         (gst_fdsrc_change_state):
8272           reset offset counter when going READY => PAUSED. (fixes #142903)
8273
8274 2004-06-06  ed@catmur.co.uk
8275
8276         reviewed by Benjamin Otte  <otte@gnome.org>
8277
8278         * gst/registries/gstxmlregistry.c:
8279         (gst_xml_registry_rebuild_recurse):
8280           don't rely on g_dir_open to figure out if a file is a directory, use
8281           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
8282           directories. (fixes #142850)
8283
8284 2004-06-06  Benjamin Otte  <otte@gnome.org>
8285
8286         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
8287           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
8288         * libs/gst/bytestream/adapter.c:
8289         * libs/gst/bytestream/adapter.h:
8290           fix copyright in header and typo in debugging category name
8291
8292 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8293
8294         * configure.ac:
8295           bump nano to cvs
8296
8297 === release 0.8.3 ===
8298
8299 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8300
8301         * configure.ac:
8302           update libtool versioning
8303           do a new release
8304         * docs/gst/tmpl/gstelement.sgml:
8305         * docs/gst/tmpl/gsttypes.sgml:
8306         * gst/gstinfo.c: (_gst_debug_init):
8307           put back GST_CAT_DATAFLOW to fix API breakage
8308
8309 2004-06-04  David Schleef  <ds@schleef.org>
8310
8311         * autogen.sh: Add a temporary 'env' to test buildbot problems.
8312
8313 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8314
8315         * configure.ac:
8316           bump nano to cvs
8317
8318 === release 0.8.2 ===
8319
8320 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8321
8322         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
8323           check GST_DEBUG environment variable which is parsed the same way
8324           as --gst-debug=
8325
8326 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8327
8328         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
8329                             gstmd5sink.c gstshaper.c gsttee.c
8330                             gsttypefindelement.c
8331         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
8332
8333           - removing trailing commas at end of enums
8334             it is correct C99 code but C90 compilers would complain
8335             (AIX, Forte, ...)
8336             ('should' fix #143290, at least partially)
8337
8338 2004-05-27  Wim Taymans  <wim@fluendo.com>
8339
8340         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
8341         (chain_group_set_enabled), (create_group), (add_to_group),
8342         (merge_groups), (setup_group_scheduler), (group_elements),
8343         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
8344         Don't try to follow the pad connections with other groups
8345         when a loop based element is added to the scheduler because
8346         the bin will inform the scheduler about the pad links a little
8347         later.
8348
8349 2004-05-27  Wim Taymans  <wim@fluendo.com>
8350
8351         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8352         (remove_from_chain), (chain_group_set_enabled),
8353         (setup_group_scheduler), (group_element_set_enabled),
8354         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
8355         (gst_opt_scheduler_show):
8356         Elements without a group can do a state change as well, just wait
8357         with the setup of the scheduling function when it is added to a
8358         chain.
8359
8360 2004-05-27  Wim Taymans  <wim@fluendo.com>
8361
8362         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8363         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
8364         (merge_groups), (setup_group_scheduler),
8365         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
8366         (gst_opt_scheduler_show):
8367         Fixes to maintain internal consistency of the scheduler data
8368         structures. 
8369          - adding an enabled group to a chain should increment the
8370            number of enabled elements in that chain.
8371          - removing an enabled group from a chain could disable the
8372            chain.
8373          - removing a disabled group from a chain could enable the
8374            chain.
8375          - add g_assert when internal inconsistency is detected.
8376          - adding an element to a group could increase the number of
8377            links this group has with other groups.
8378          - merging two groups also merges the chains.
8379          - also show group links in the _show method.
8380            
8381
8382 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8383
8384         * gst/gstcaps.c: (gst_caps_structure_simplify):
8385           don't print error messages when there is no error
8386         * gst/gstvalue.c: (gst_value_compare_int_range):
8387           compare the second value, too
8388         * testsuite/caps/Makefile.am:
8389         * testsuite/caps/random.c: (assert_on_error), (main):
8390           add tests to make sure the two things above are checked for
8391
8392 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8393
8394         * configure.ac:
8395         * libs/gst/dataprotocol/Makefile.am:
8396         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
8397         * libs/gst/dataprotocol/dataprotocol.h:
8398           wrap header in GST_ENABLE_NEW.  make code use it
8399
8400 2004-05-23  Johan Dahlin  <johan@gnome.org>
8401
8402         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
8403         so verbose and print GstElement signal names all the time.
8404
8405 2004-05-22  David Schleef  <ds@schleef.org>
8406
8407         * gst/registries/gstxmlregistry.c:
8408         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
8409         (bug #142957)
8410
8411 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
8412
8413         * configure.ac:
8414           scrub cflags for glib2 so gcc doesn't complain when glib is in
8415           /usr/local
8416
8417 2004-05-21  Johan Dahlin  <johan@gnome.org>
8418
8419         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
8420         __GNUC__, patch from Brian Cameron, fixes bug #142804
8421
8422 2004-05-20  David Schleef  <ds@schleef.org>
8423
8424         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
8425         comparison code.  (bug #142819)
8426
8427 2004-05-20  Wim Taymans  <wim@fluendo.com>
8428
8429         * gst/gstbuffer.c: (gst_buffer_default_copy):
8430         * gst/gstbuffer.h:
8431         Added Comment to a flag.
8432         copy relevant flags in _buffer_copy.
8433
8434 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8435
8436         reviewed by: Wim Taymans <wim at fluendo dot com>
8437
8438         * gst/gstbuffer.h:
8439           add GST_BUFFER_IN_CAPS buffer flag
8440         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8441         (gst_structure_parse_any_list), (gst_structure_parse_list),
8442         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
8443         * gst/gstvalue.c: (gst_value_serialize_any_list),
8444         (gst_value_transform_any_list_string),
8445         (gst_value_list_prepend_value), (gst_value_list_append_value),
8446         (gst_value_list_get_size), (gst_value_list_get_value),
8447         (gst_value_transform_list_string),
8448         (gst_value_transform_fixed_list_string),
8449         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
8450         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
8451         (_gst_value_initialize):
8452         * gst/gstvalue.h:
8453           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
8454           < , > as a format.
8455         * testsuite/caps/string-conversions.c: (main):
8456           add regression tests for < >
8457
8458 2004-05-20  Johan Dahlin  <johan@gnome.org>
8459
8460         * docs/gst/Makefile.am (all-local): Re-add
8461
8462 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8463
8464         * docs/gst/Makefile.am:
8465         * docs/gst/gstreamer-docs.sgml:
8466         * docs/libs/Makefile.am:
8467         * docs/libs/gstreamer-libs-docs.sgml:
8468           fix distcheck issues
8469
8470 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8471
8472         * libs/gst/dataprotocol/Makefile.am:
8473           add to autotest
8474
8475 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8476
8477         * libs/gst/dataprotocol/Makefile.am:
8478         * libs/gst/dataprotocol/dataprotocol.c:
8479         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8480         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
8481         * libs/gst/dataprotocol/dp-private.h:
8482           use GST macros to read/write fixed length ints
8483           add some more asserts
8484
8485 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8486
8487         * docs/libs/gstreamer-libs-docs.sgml:
8488         * docs/libs/gstreamer-libs-sections.txt:
8489           remove idct and putbits
8490         * configure.ac:
8491         * docs/libs/tmpl/gstdataprotocol.sgml:
8492         * libs/gst/Makefile.am:
8493         * libs/gst/dataprotocol/Makefile.am:
8494         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
8495         (buffer_test), (caps_test), (event_test), (main):
8496         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
8497         (gst_dp_dump_byte_array), (gst_dp_init),
8498         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
8499         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8500         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
8501         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
8502         (gst_dp_validate_header), (gst_dp_validate_payload),
8503         (gst_dp_validate_packet), (plugin_init):
8504         * libs/gst/dataprotocol/dataprotocol.h:
8505         * libs/gst/dataprotocol/dp-private.h:
8506           add dataprotocol
8507
8508 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8509
8510         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
8511           fix int variable deserialization and add a helper so we can actually
8512           debug this.
8513
8514 2004-05-18  David Schleef  <ds@schleef.org>
8515
8516         * testsuite/debug/commandline.c: (main): Call ./commandline, not
8517           argv[0].  Calling yourself is probably not the best way to
8518           construct a test like this, btw.
8519
8520 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8521
8522         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
8523           don't claim to be more intelligent than a scheduler when the
8524           scheduler claims the pipeline is stopped
8525         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
8526         (safe_cothread_destroy),
8527         (gst_entry_scheduler_remove_all_cothreads),
8528         (gst_entry_scheduler_reset), (_remove_cothread),
8529         (gst_entry_scheduler_state_transition):
8530           hold off cothread destruction if we're not in main cothread
8531         * configure.ac:
8532         * testsuite/Makefile.am:
8533           add new test dir
8534         * testsuite/schedulers/.cvsignore:
8535         * testsuite/schedulers/Makefile.am:
8536           add tests
8537         * testsuite/schedulers/relink.c: (cb_handoff), (main):
8538           check relinking and adding/removing elements from a running pipeline
8539         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
8540           check unlinking in a running pipeline
8541         * testsuite/schedulers/unref.c: (cb_handoff), (main):
8542           check unreffing a running pipeline
8543         * testsuite/schedulers/useless_iteration.c: (main):
8544           check iterating a pipeline that contains running threads works
8545
8546 2004-05-18  David Schleef  <ds@schleef.org>
8547
8548         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
8549           is false.
8550
8551 2004-05-18  Wim Taymans  <wim@fluendo.com>
8552
8553         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8554         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
8555         Fixed an error introduced with patch for 1.63. When setting
8556         a get based element as the entry point in a group, make sure
8557         to mark the group as GET based.
8558
8559 2004-05-18  Wim Taymans  <wim@fluendo.com>
8560
8561         * gst/schedulers/gstoptimalscheduler.c: (create_group),
8562         (setup_group_scheduler), (loop_group_schedule_function),
8563         (gst_opt_scheduler_pad_link):
8564         Added some more debug info and fixed a bug where the group
8565         type was set to LOOP but it was in fact unknown.
8566
8567 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8568
8569         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
8570           make resetting scheduler work twice in a row
8571
8572 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8573
8574         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
8575         (CREATE_USERIALIZATION), (_gst_value_initialize),
8576         (gst_value_compare_float), (gst_value_serialize_float),
8577         (gst_value_deserialize_float), (gst_value_compare_enum),
8578         (gst_value_serialize_enum), (gst_value_deserialize_enum):
8579           add serialization and comparison functions for long, int64, enum and
8580           float values
8581         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
8582           use best serialization function in type hierarchy instead of only a
8583           matching one. This is required for enums to work.
8584         * gst/parse/grammar.y:
8585           use gst_caps_deserialize
8586         * testsuite/parse/Makefile.am:
8587           parse1 now works
8588         * testsuite/parse/parse1.c: (main):
8589           remove aggregator check, aggregator is broken, this test works now
8590           but fails because of bug #138012
8591         * testsuite/parse/parse2.c: (main):
8592           s/xvideosink/xvimagesink - this test looks a lot like we should
8593           disable it
8594
8595 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8596
8597         * gst/gstelement.c: (gst_element_class_init):
8598           whoops, store the signal id correctly
8599         * gst/schedulers/gstbasicscheduler.c:
8600         (gst_basic_scheduler_chain_wrapper):
8601           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
8602           chain function isn't linked
8603
8604 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
8605         * configure.ac:
8606         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
8607         support until we decide where the flags should be used
8608         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
8609         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
8610         * gst/gstpad.c: (gst_pad_link_call_link_functions):
8611         Output refused caps in the debug info
8612
8613 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8614
8615         * gst/elements/gstidentity.c: (gst_identity_chain):
8616           add duration debug
8617         * gst/gstinfo.c: (gst_debug_log_default):
8618           add timestamp
8619
8620 2004-05-13  Benjamin Otte  <otte@gnome.org>
8621
8622         * gst/gstpipeline.c: (gst_pipeline_dispose),
8623         (gst_pipeline_change_state):
8624           call gst_scheduler_reset on dispose (fixes #141416)
8625
8626 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8627
8628         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8629           compute mapsize correctly
8630         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8631           use correct datatypes when calling a varargs function
8632         * gst/elements/gsttypefindelement.c: (stop_typefinding):
8633           push a DISCONT event as first thing
8634         * gst/gst_private.h:
8635         * gst/gstinfo.c: (_gst_debug_init):
8636           remove GST_DATAFLOW debugging category
8637         * gst/gstbin.c: (gst_bin_iterate):
8638           use GST_SCHEDULING category
8639         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
8640         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
8641         (gst_pad_call_get_function):
8642           add GST_DATAFLOW to easily track flow of buffers or events.
8643         * gst/gstqueue.c: (gst_queue_get_type),
8644         (gst_queue_handle_pending_events), (gst_queue_chain),
8645         (gst_queue_get), (gst_queue_handle_src_event):
8646           use own static debugging category GST_DATAFLOW for dataflow,
8647           use DEBUG category for showing which path events go, use LOG
8648           category for buffers.
8649
8650 2004-05-10  David Schleef  <ds@schleef.org>
8651
8652         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
8653
8654 2004-05-10  David Schleef  <ds@schleef.org>
8655
8656         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
8657         symbols, because otherwise we don't know what they are.  Thanks,
8658         the GStreamer team.
8659         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
8660
8661 2004-05-10  David Schleef  <ds@schleef.org>
8662
8663         (from Steve Lhomme)
8664         * win32/Makefile: When using make clean the MS Visual Studio makefiles
8665         are deleted.  Fix.
8666         * win32/Makefile.inspect:
8667         * win32/Makefile.launch:
8668         * win32/Makefile.register:
8669
8670 2004-05-10  David Schleef  <ds@schleef.org>
8671
8672         * gst/gstinfo.h: Add missing inline function.
8673         * gst/gsttrace.c: add include
8674         * gst/parse/grammar.y: remove unused code
8675         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
8676         more portable.
8677         * tools/gst-register.c: wrap unistd.h
8678         
8679         More additions/fixes from Steve for the MSVC build.
8680         * win32/GStreamer.vcproj:
8681         * win32/Makefile:
8682         * win32/Makefile.inspect:
8683         * win32/Makefile.launch:
8684         * win32/Makefile.register:
8685         * win32/README.txt:
8686         * win32/gst-inspect.vcproj:
8687         * win32/gst-launch.vcproj:
8688         * win32/gst-register.vcproj:
8689         * win32/gstbytestream.def:
8690         * win32/gstbytestream.vcproj:
8691         * win32/gstconfig.h:
8692         * win32/gstelements.def:
8693         * win32/gstelements.vcproj:
8694         * win32/gstenumtypes.c:
8695         * win32/gstenumtypes.h:
8696         * win32/gstoptimalscheduler.def:
8697         * win32/gstoptimalscheduler.vcproj:
8698         * win32/gstreamer.def:
8699         * win32/gstspider.def:
8700         * win32/gstspider.vcproj:
8701         * win32/gstversion.h:
8702         * win32/msvc71.sln:
8703
8704 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8705
8706         * gst/gstelement.c: (gst_element_class_init),
8707         (gst_element_no_more_pads):
8708         * gst/gstelement.h:
8709           add gst_element_no_more_pads and the "no-more-pads" signal
8710
8711 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8712
8713         * gst/gstregistry.c: (gst_registry_add_plugin):
8714           refuse to add plugins when a plugin with same name is already
8715           registered. Fixes a bunch of "How to remove plugins?" issues.
8716           May lead to other problems though, let's test
8717
8718 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8719
8720         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
8721         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
8722         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
8723
8724 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8725
8726         * tests/Makefile.am: fix am16 issue
8727
8728 2004-05-09  Benjamin Otte  <otte@gnome.org>
8729
8730         * libs/gst/bytestream/Makefile.am:
8731           we should indeed add .c files to makefiles or they won't be built
8732           (d'oh)
8733
8734 2004-05-08  Benjamin Otte  <otte@gnome.org>
8735
8736         * gst/gstpad.c: (gst_pad_proxy_fixate):
8737           really reduce the set of caps
8738
8739 2004-05-08  Benjamin Otte  <otte@gnome.org>
8740
8741         * tests/Makefile.am:
8742         * tests/spidey_bench.c: (handoff), (main):
8743           add benchmark to test how long spider needs to create a pipeline
8744
8745 2004-05-08  Benjamin Otte  <otte@gnome.org>
8746
8747         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
8748           mark links as unengaged when unnegotiating instead of deactivating.
8749           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
8750
8751 2004-05-08  Benjamin Otte  <otte@gnome.org>
8752
8753         * docs/manual/helloworld.xml:
8754           s/audiosink/osssink (patch by Patrick Guimond)
8755
8756 2004-05-07  David Schleef  <ds@schleef.org>
8757
8758         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
8759         since it contains important stuff.
8760
8761 2004-05-07  David Schleef  <ds@schleef.org>
8762
8763         * testsuite/caps/caps.c: (test3), (main): A check for appending
8764         ANY caps.
8765
8766 2004-05-07  David Schleef  <ds@schleef.org>
8767
8768         * common/m4/as-compiler-flag.m4: Properly quote arguments,
8769         which may contain commas.  Fixes detection of -Wa,-mregnames
8770
8771 2004-05-06  David Schleef  <ds@schleef.org>
8772
8773         Changes to handle compilers that don't have variadic macro
8774         support.  In particular, glib headers define some inlines
8775         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
8776         builds.
8777         * gst/Makefile.am:
8778         * gst/cothreads.c:
8779         * gst/elements/gstfdsink.c:
8780         * gst/elements/gstfdsrc.c:
8781         * gst/elements/gstfilesink.c:
8782         * gst/elements/gstfilesrc.c:
8783         * gst/gst_private.h:
8784         * gst/gstatomic.c:
8785         * gst/gstcaps.c: (gst_caps_append):
8786         * gst/gstcpu.c: (gst_cpuid_i386):
8787         * gst/gstelement.c:
8788         * gst/gsterror.c:
8789         * gst/gstfilter.c:
8790         * gst/gstinfo.h:
8791         * gst/gstprobe.c:
8792         * gst/gstquery.c:
8793         * gst/gstregistry.c:
8794         * gst/gststructure.c:
8795         * gst/gsttaginterface.c:
8796         * gst/gsttrace.c: (gst_trace_new):
8797         * gst/gsttrashstack.c:
8798         * gst/gsturi.c:
8799         * gst/gstvalue.c:
8800         * gst/parse/grammar.y:
8801         * gst/parse/parse.l:
8802         * tools/gst-inspect.c: (main):
8803         * tools/gst-launch.c: (main):
8804         * tools/gst-xmlinspect.c: (PUT_STRING):
8805
8806 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8807
8808         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
8809         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
8810         * gst/elements/gstfilesrc.h:
8811           send NEW_MEDIA events correctly
8812         * gst/elements/gsttypefindelement.c: (start_typefinding),
8813         (gst_type_find_element_handle_event):
8814           restart typefinding when we get a NEW_MEDIA event
8815         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
8816         (gst_bin_dispose):
8817           don't die when someone removes elements in callbacks
8818         * gst/gstelement.c: (gst_element_change_state):
8819           improve debugging
8820         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
8821           we need a NEW_MEDIA event to engage a link
8822         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
8823           don't g_print debugging stuff
8824         * testsuite/caps/simplify.c: (check_caps):
8825
8826 2004-05-04  Benjamin Otte  <otte@gnome.org>
8827
8828         * gst/parse/grammar.y:
8829           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
8830
8831 2004-05-04  Benjamin Otte  <otte@gnome.org>
8832
8833         * testsuite/caps/renegotiate.c: (main):
8834           improve output in error case
8835
8836 2004-05-04  Benjamin Otte  <otte@gnome.org>
8837
8838         * gst/parse/grammar.y:
8839           fix assert to not trigger when there's no error argument
8840         * gst/parse/parse.l:
8841           fix definition of caps to allow more than two structures
8842         * testsuite/caps/Makefile.am:
8843         * testsuite/caps/renegotiate.c: (main):
8844           it's sinesrc and works in that case
8845
8846 2004-05-04  Wim Taymans  <wim@fluendo.com>
8847
8848         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8849         (group_dec_link), (gst_opt_scheduler_pad_unlink):
8850         when removing an element from a group, we always need to
8851         decrement the link count that this group had with other 
8852         groups through the element.
8853         added an extra assert to catch inconsistencies when decrementing
8854         the link count.
8855
8856 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8857
8858         * configure.ac:
8859         * docs/gst/Makefile.am:
8860         * docs/gst/gstreamer-sections.txt:
8861         * docs/gst/tmpl/gstcompat.sgml:
8862         * examples/appreader/Makefile.am:
8863         * examples/cutter/Makefile.am:
8864         * examples/events/Makefile.am:
8865         * examples/helloworld/Makefile.am:
8866         * examples/helloworld2/Makefile.am:
8867         * examples/launch/Makefile.am:
8868         * examples/manual/Makefile.am:
8869         * examples/mixer/Makefile.am:
8870         * examples/pingpong/Makefile.am:
8871         * examples/plugins/Makefile.am:
8872         * examples/queue/Makefile.am:
8873         * examples/queue2/Makefile.am:
8874         * examples/queue3/Makefile.am:
8875         * examples/queue4/Makefile.am:
8876         * examples/retag/Makefile.am:
8877         * examples/thread/Makefile.am:
8878         * examples/typefind/Makefile.am:
8879         * examples/xml/Makefile.am:
8880         * gst/Makefile.am:
8881         * gst/autoplug/Makefile.am:
8882         * gst/elements/Makefile.am:
8883         * gst/gstcompat.h:
8884         * gst/indexers/Makefile.am:
8885         * gst/parse/Makefile.am:
8886         * gst/registries/Makefile.am:
8887         * gst/schedulers/Makefile.am:
8888         * libs/gst/bytestream/Makefile.am:
8889         * libs/gst/control/Makefile.am:
8890         * libs/gst/getbits/Makefile.am:
8891         * po/af.po:
8892         * po/az.po:
8893         * po/en_GB.po:
8894         * po/fr.po:
8895         * po/nl.po:
8896         * po/sr.po:
8897         * po/sv.po:
8898         * po/tr.po:
8899         * po/uk.po:
8900         * tests/Makefile.am:
8901         * tests/bufspeed/Makefile.am:
8902         * tests/instantiate/Makefile.am:
8903         * tests/memchunk/Makefile.am:
8904         * tests/muxing/Makefile.am:
8905         * tests/negotiation/Makefile.am:
8906         * tests/probes/Makefile.am:
8907         * tests/sched/Makefile.am:
8908         * tests/seeking/Makefile.am:
8909         * tests/threadstate/Makefile.am:
8910         * testsuite/caps/Makefile.am:
8911         * testsuite/cleanup/Makefile.am:
8912         * testsuite/dlopen/Makefile.am:
8913         * testsuite/dynparams/Makefile.am:
8914         * testsuite/plugin/Makefile.am:
8915         * testsuite/states/Makefile.am:
8916         * tools/Makefile.am:
8917           reorganize compile/link flags to be consistent
8918           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
8919
8920 2004-05-04  David Schleef  <ds@schleef.org>
8921
8922         The "once more, with feeling" check-in.
8923         * testsuite/caps/Makefile.am: dist caps_strings
8924         * testsuite/caps/renegotiate.c: (main): This test triggers a
8925           segfault in the core.  Marking as failing.
8926
8927 2004-05-03  David Schleef  <ds@schleef.org>
8928
8929         * testsuite/caps/deserialize.c: (main): Fix problems noticed
8930           by the build bots.
8931         * testsuite/caps/renegotiate.c: (main): Same.
8932
8933 2004-05-03  David Schleef  <ds@schleef.org>
8934
8935         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
8936
8937 2004-05-03  David Schleef  <ds@schleef.org>
8938
8939         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
8940           variable to find our source file.
8941
8942 2004-05-03  David Schleef  <ds@schleef.org>
8943
8944         * configure.ac:  Link plugins with libgstreamer and dependent
8945           libraries
8946         * testsuite/caps/Makefile.am:
8947         * testsuite/caps/caps_strings:
8948         * testsuite/caps/deserialize.c: (main): Add a little test to slog
8949           through a file of caps strings and test each one
8950
8951 2004-05-04  Benjamin Otte  <otte@gnome.org>
8952
8953         * libs/gst/bytestream/Makefile.am:
8954         * libs/gst/bytestream/adapter.c: 
8955         * libs/gst/bytestream/adapter.h:
8956           add GstAdapter, similar to bytestream, but doesn't require ugly event
8957           handling or uglier loopbased elements
8958
8959 2004-05-03  David Schleef  <ds@schleef.org>
8960
8961         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
8962         * testsuite/caps/erathostenes.c:
8963         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
8964
8965 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8966
8967         * docs/pwg/pwg.xml:
8968           remove hardcoded stylesheet path (duh)
8969         * docs/random/release:
8970         * docs/gst/gstreamer-sections.txt:
8971         * gst/Makefile.am:
8972         * gst/gst.h:
8973         * gst/gst_private.h:
8974         * gst/gstcaps.c:
8975         * gst/gstevent.c:
8976         * gst/gstformat.c:
8977         * gst/gstinfo.c:
8978         * gst/gstinfo.h:
8979         * gst/gstinterface.c:
8980         * gst/gstmemchunk.c:
8981         * gst/gstprobe.c:
8982         * gst/gstquery.c:
8983         * gst/gstregistry.c:
8984         * gst/gstregistrypool.c:
8985         * gst/gststructure.c:
8986         * gst/gsttaginterface.c:
8987         * gst/gstthread.c:
8988         * gst/gsttrace.c:
8989         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
8990         * gst/gsturi.c:
8991         * gst/gstvalue.c:
8992           deprecate gst_info; remove gstlog.h
8993    
8994
8995 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8996
8997         * Makefile.am:
8998         * po/en_GB.po:
8999         * po/sv.po:
9000         * po/uk.po:
9001           updated translations
9002
9003 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9004
9005         * gst/gstbin.c: (gst_bin_dispose):
9006           better debugging
9007
9008 2004-05-03  Johan Dahlin  <johan@gnome.org>
9009
9010         * gst/schedulers/gstoptimalscheduler.c
9011         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
9012         really is a GstElement. Avoids critical when running gst-launch -v
9013         and a oggdemux/decoding pipeline.
9014
9015 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9016
9017         * docs/gst/tmpl/gstpipeline.sgml :
9018         * docs/manual/elements-api.xml :
9019                 doc fix by Patrick Guimond (Protector) from devel ML
9020                 reviewed by ronald
9021
9022 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9023
9024         * docs/gst/Makefile.am :
9025         * docs/libs/Makefile.am :
9026                 apply a patch from Arwed v. Merkatz so that gtk-doc
9027                 generated docs install (same for .devhelp file)
9028                 (fixes part 1 of #138836)
9029
9030 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9031
9032         * docs/faq/dependencies.xml: typo
9033         * docs/faq/getting.xml :
9034             - fix download URL for new gstreamer site
9035             - hide sf.net download page as latest version aren't there
9036             - fix apt URLs
9037             - fill "get via CVS" paragraph (link to dev page on the site)
9038         * docs/faq/general.xml:
9039             hide status tables as they no more exists
9040             change case on plugins license file to reflect reality
9041         * docs/faq/troubleshooting.xml:
9042             remove the wiki question/answer as there is no more wiki
9043
9044 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9045
9046         * gst/gsterror.h:
9047           include the headers needed for declarations used in this header
9048
9049 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9050
9051         * docs/random/uraeus/gstreamer_and_midi.txt :
9052           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
9053           (fixes #132288)
9054
9055 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
9056
9057         reviewed by Benjamin Otte  <otte@gnome.org>
9058
9059         * gst/schedulers/gthread-cothreads.h:
9060           free allocated data for main cothread, too when destroying context
9061           (fixes #141417)
9062
9063 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9064
9065         * docs/manual/goals.xml : remove duplicated paragraph at end 
9066         of doc page (fixes #141448)
9067
9068 2004-04-29  David Schleef  <ds@schleef.org>
9069
9070         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
9071         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
9072
9073 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9074
9075         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
9076           fix property
9077         * gst/gstcaps.c:
9078           fix doc string
9079         * po/POTFILES.in:
9080           rename typefind source file
9081
9082 2004-04-28  David Schleef  <ds@schleef.org>
9083
9084         Several new files from Steve Lhomme's MSVC patch (bug #141317):
9085         * win32/GStreamer.vcproj:
9086         * win32/Makefile:
9087         * win32/config.h:
9088         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
9089         (_trewinddir), (_ttelldir), (_tseekdir):
9090         * win32/dirent.h:
9091         * win32/gst-inspect.vcproj:
9092         * win32/gst-launch.vcproj:
9093         * win32/gst-register.vcproj:
9094         * win32/gstbytestream.vcproj:
9095         * win32/gstelements.vcproj:
9096         * win32/gstoptimalscheduler.vcproj:
9097         * win32/gstspider.vcproj:
9098         * win32/gtchar.h:
9099         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
9100         * win32/mman.h:
9101         * win32/mman.inl:
9102         * win32/msvc71.sln:
9103
9104 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9105
9106         * gst/gst.c: (init_post):
9107         * gst/gstinfo.c:
9108           remove useless _gst_progname stuff
9109         * tools/gst-inspect.c: (print_field), (print_caps):
9110           improve caps output
9111
9112 2004-04-28  David Schleef  <ds@schleef.org>
9113
9114         Disable parsing of a lot of files that aren't part of the
9115         exported API.  Move corresponding template files to old/,
9116         waiting for removal when they don't contain anything
9117         interesting.
9118         * docs/gst/Makefile.am:
9119         * docs/gst/gstreamer-sections.txt:
9120         * docs/gst/tmpl/cothreads.sgml:
9121         * docs/gst/tmpl/cothreads_compat.sgml:
9122         * docs/gst/tmpl/gettext.sgml:
9123         * docs/gst/tmpl/gobject2gtk.sgml:
9124         * docs/gst/tmpl/grammar.tab.sgml:
9125         * docs/gst/tmpl/gst-i18n-app.sgml:
9126         * docs/gst/tmpl/gst-i18n-lib.sgml:
9127         * docs/gst/tmpl/gst_private.sgml:
9128         * docs/gst/tmpl/gstaggregator.sgml:
9129         * docs/gst/tmpl/gstarch.sgml:
9130         * docs/gst/tmpl/gstatomic_impl.sgml:
9131         * docs/gst/tmpl/gstbufferstore.sgml:
9132         * docs/gst/tmpl/gstdata_private.sgml:
9133         * docs/gst/tmpl/gstdisksink.sgml:
9134         * docs/gst/tmpl/gstdisksrc.sgml:
9135         * docs/gst/tmpl/gstelementfactory.sgml:
9136         * docs/gst/tmpl/gstextratypes.sgml:
9137         * docs/gst/tmpl/gstfakesink.sgml:
9138         * docs/gst/tmpl/gstfakesrc.sgml:
9139         * docs/gst/tmpl/gstfdsink.sgml:
9140         * docs/gst/tmpl/gstfdsrc.sgml:
9141         * docs/gst/tmpl/gstfilesink.sgml:
9142         * docs/gst/tmpl/gstfilesrc.sgml:
9143         * docs/gst/tmpl/gsthttpsrc.sgml:
9144         * docs/gst/tmpl/gstidentity.sgml:
9145         * docs/gst/tmpl/gstindexfactory.sgml:
9146         * docs/gst/tmpl/gstmarshal.sgml:
9147         * docs/gst/tmpl/gstmd5sink.sgml:
9148         * docs/gst/tmpl/gstmultidisksrc.sgml:
9149         * docs/gst/tmpl/gstmultifilesrc.sgml:
9150         * docs/gst/tmpl/gstpadtemplate.sgml:
9151         * docs/gst/tmpl/gstpipefilter.sgml:
9152         * docs/gst/tmpl/gstschedulerfactory.sgml:
9153         * docs/gst/tmpl/gstsearchfuncs.sgml:
9154         * docs/gst/tmpl/gstshaper.sgml:
9155         * docs/gst/tmpl/gstspider.sgml:
9156         * docs/gst/tmpl/gstspideridentity.sgml:
9157         * docs/gst/tmpl/gststatistics.sgml:
9158         * docs/gst/tmpl/gsttee.sgml:
9159         * docs/gst/tmpl/gsttimecache.sgml:
9160         * docs/gst/tmpl/gsttypefind.sgml:
9161         * docs/gst/tmpl/gsttypefindfactory.sgml:
9162         * docs/gst/tmpl/gstxmlregistry.sgml:
9163         * docs/gst/tmpl/gthread-cothreads.sgml:
9164         * docs/gst/tmpl/old/cothreads.sgml:
9165         * docs/gst/tmpl/old/cothreads_compat.sgml:
9166         * docs/gst/tmpl/old/gettext.sgml:
9167         * docs/gst/tmpl/old/gobject2gtk.sgml:
9168         * docs/gst/tmpl/old/grammar.tab.sgml:
9169         * docs/gst/tmpl/old/gst-i18n-app.sgml:
9170         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
9171         * docs/gst/tmpl/old/gst_private.sgml:
9172         * docs/gst/tmpl/old/gstaggregator.sgml:
9173         * docs/gst/tmpl/old/gstarch.sgml:
9174         * docs/gst/tmpl/old/gstatomic_impl.sgml:
9175         * docs/gst/tmpl/old/gstbufferstore.sgml:
9176         * docs/gst/tmpl/old/gstdata_private.sgml:
9177         * docs/gst/tmpl/old/gstdisksink.sgml:
9178         * docs/gst/tmpl/old/gstdisksrc.sgml:
9179         * docs/gst/tmpl/old/gstelementfactory.sgml:
9180         * docs/gst/tmpl/old/gstextratypes.sgml:
9181         * docs/gst/tmpl/old/gstfakesink.sgml:
9182         * docs/gst/tmpl/old/gstfakesrc.sgml:
9183         * docs/gst/tmpl/old/gstfdsink.sgml:
9184         * docs/gst/tmpl/old/gstfdsrc.sgml:
9185         * docs/gst/tmpl/old/gstfilesink.sgml:
9186         * docs/gst/tmpl/old/gstfilesrc.sgml:
9187         * docs/gst/tmpl/old/gsthttpsrc.sgml:
9188         * docs/gst/tmpl/old/gstidentity.sgml:
9189         * docs/gst/tmpl/old/gstindexfactory.sgml:
9190         * docs/gst/tmpl/old/gstmarshal.sgml:
9191         * docs/gst/tmpl/old/gstmd5sink.sgml:
9192         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
9193         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
9194         * docs/gst/tmpl/old/gstpadtemplate.sgml:
9195         * docs/gst/tmpl/old/gstpipefilter.sgml:
9196         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
9197         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
9198         * docs/gst/tmpl/old/gstshaper.sgml:
9199         * docs/gst/tmpl/old/gstspider.sgml:
9200         * docs/gst/tmpl/old/gstspideridentity.sgml:
9201         * docs/gst/tmpl/old/gststatistics.sgml:
9202         * docs/gst/tmpl/old/gsttee.sgml:
9203         * docs/gst/tmpl/old/gsttimecache.sgml:
9204         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
9205         * docs/gst/tmpl/old/gstxmlregistry.sgml:
9206         * docs/gst/tmpl/old/gthread-cothreads.sgml:
9207         * docs/gst/tmpl/old/types.sgml:
9208         * docs/gst/tmpl/types.sgml:
9209
9210         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
9211         gtkdoc-scan doesn't like files with the same name in different
9212         directories.
9213         * gst/elements/Makefile.am:
9214         * gst/elements/gstelements.c:
9215         * gst/elements/gsttypefind.c: 
9216         * gst/elements/gsttypefind.h:
9217         * gst/elements/gsttypefindelement.c:
9218         * gst/elements/gsttypefindelement.h:
9219
9220 2004-04-28  David Schleef  <ds@schleef.org>
9221
9222         A bunch of portability fixes, derived from Steve Lhomme's MSVC
9223         patch (bug #141317):
9224         * gst/gst-i18n-lib.h: Allow disabling gettext.
9225         * gst/gstatomic_impl.h: disable warning when it's dumb.
9226         * gst/gstclock.c: fix include
9227         * gst/gstcompat.h: fix variadic macro
9228         * gst/gstinfo.c: fix include
9229         * gst/gstmacros.h: add defines for inlines on MSVC
9230         * gst/gstplugin.c: fix includes
9231         * gst/gstregistry.c: fix includes
9232         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
9233         * gst/gstsystemclock.c: fix include
9234         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
9235         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
9236         * gst/registries/gstxmlregistry.c:
9237         (gst_xml_registry_parse_element_factory): fix use of non-portable
9238         functions
9239         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
9240         * libs/gst/control/dparammanager.h: same
9241
9242 2004-04-28  David Schleef  <ds@schleef.org>
9243
9244         Move a bunch of unused files to old/ with names that are
9245         not case-insensitive-unique.  These files still contain some
9246         useful information that needs to be merged into gstbin.sgml,
9247         etc., so they shouldn't be deleted yet.
9248         * docs/gst/tmpl/GstBin.sgml:
9249         * docs/gst/tmpl/GstBuffer.sgml:
9250         * docs/gst/tmpl/GstCaps.sgml:
9251         * docs/gst/tmpl/GstClock.sgml:
9252         * docs/gst/tmpl/GstCompat.sgml:
9253         * docs/gst/tmpl/GstData.sgml:
9254         * docs/gst/tmpl/GstElement.sgml:
9255         * docs/gst/tmpl/GstEvent.sgml:
9256         * docs/gst/tmpl/GstIndex.sgml:
9257         * docs/gst/tmpl/GstStructure.sgml:
9258         * docs/gst/tmpl/GstTag.sgml:
9259         * docs/gst/tmpl/old/GstBin.sgml:
9260         * docs/gst/tmpl/old/GstBuffer.sgml:
9261         * docs/gst/tmpl/old/GstCaps.sgml:
9262         * docs/gst/tmpl/old/GstClock.sgml:
9263         * docs/gst/tmpl/old/GstCompat.sgml:
9264         * docs/gst/tmpl/old/GstData.sgml:
9265         * docs/gst/tmpl/old/GstElement.sgml:
9266         * docs/gst/tmpl/old/GstEvent.sgml:
9267         * docs/gst/tmpl/old/GstIndex.sgml:
9268         * docs/gst/tmpl/old/GstStructure.sgml:
9269         * docs/gst/tmpl/old/GstTag.sgml:
9270
9271 2004-04-28  David Schleef  <ds@schleef.org>
9272
9273         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
9274         (gst_caps_append), (gst_caps_append_structure),
9275         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
9276         (gst_caps_set_simple), (gst_caps_set_simple_valist),
9277         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
9278         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
9279         (gst_caps_intersect), (gst_caps_normalize),
9280         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
9281         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
9282         * gst/gstcaps.h: use GST_IS_CAPS().
9283
9284 2004-04-26  David Schleef  <ds@schleef.org>
9285
9286         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
9287         assembly.  gcc doesn't handle it correctly. (bug #141083)
9288         * gst/gsttrashstack.h: same
9289
9290 2004-04-25  Benjamin Otte  <otte@gnome.org>
9291
9292         * gst/gstelement.c: (gst_element_change_state):
9293           fix assertion to do an int comparison
9294
9295 2004-04-25  Benjamin Otte  <otte@gnome.org>
9296
9297         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9298           better debugging output on error
9299
9300 2004-04-25  Benjamin Otte  <otte@gnome.org>
9301
9302         * gst/gstcaps.c: (gst_caps_subtract):
9303           fix memleak
9304
9305 2004-04-23  Benjamin Otte  <otte@gnome.org>
9306
9307         * gst/gstvalue.c: (gst_value_compare_buffer),
9308         (_gst_value_initialize):
9309           add comparison function for buffers
9310
9311 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9312
9313         * docs/pwg/pwg.xml:
9314           Just found out that this so-called "ima-wav" format is really
9315           just "dvi adpcm" (according to the MS WAV documentation). So
9316           renaming it. We didn't use it yet anyway.
9317
9318 2004-04-23  Benjamin Otte  <otte@gnome.org>
9319
9320         * gst/gstcaps.c: (gst_caps_is_always_compatible):
9321           call gst_caps_is_subset
9322
9323 2004-04-23  Benjamin Otte  <otte@gnome.org>
9324
9325         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
9326         (gst_caps_is_subset):
9327           add documentation
9328
9329 2004-04-23  Benjamin Otte  <otte@gnome.org>
9330           
9331         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
9332         (gst_caps_structure_subtract), (gst_caps_subtract),
9333         (gst_caps_structure_figure_out_union),
9334         (gst_caps_structure_simplify), (gst_caps_do_simplify):
9335           fix simplifying and subtracting not working correctly with optional
9336           properties
9337           solve assorted problems that make it now simplify ebven more
9338         * docs/gst/tmpl/gstcaps.sgml:
9339         * gst/gstcaps.h:
9340           make gst_caps_do_simplify return a bool to indicate if it simplified
9341         * testsuite/caps/simplify.c: (main):
9342           add more checks. The tests is quite a bit useless right now because
9343           the core is heavily simplifying itself.
9344         * testsuite/caps/caps.h:
9345           fix caps to contain all optional properties
9346
9347 2004-04-22  Benjamin Otte  <otte@gnome.org>
9348
9349         * docs/gst/tmpl/gstcaps.sgml:
9350         * docs/gst/tmpl/gstfilesrc.sgml:
9351         * docs/gst/tmpl/gststructure.sgml:
9352         * docs/gst/tmpl/gstvalue.sgml:
9353           update for recent API changes
9354         * gst/gstcaps.c: (gst_caps_do_simplify):
9355           fix to stop trying with a freed structure
9356         * gst/gstpad.c: (gst_pad_link_fixate):
9357           simplify caps
9358         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
9359           remove C++ comment
9360         * gst/gstpad.h:
9361           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
9362         * gst/gststructure.c: (gst_structure_value_get_generic_type),
9363         (gst_structure_to_string):
9364           keep the correct type when using lists of ranges
9365         * gst/gstvalue.c: (gst_value_list_prepend_value),
9366         (gst_value_list_append_value):
9367           copy the value before adding to the list (d'oh)
9368         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
9369         (gst_value_subtract_int_range_int_range):
9370           handle overflows correctly
9371         * gst/gstvalue.c: (gst_value_subtract_from_list):
9372           fix memleak
9373         * testsuite/caps/caps.h:
9374           add a caps that caused segfaults
9375
9376 2004-04-22  Benjamin Otte  <otte@gnome.org>
9377
9378         * testsuite/refcounting/pad.c: (main):
9379           fix test
9380
9381 2004-04-22  Benjamin Otte  <otte@gnome.org>
9382
9383         * gst/gstcaps.c: (gst_caps_subtract):
9384           allow subtracting ANY and EMPTY from ANY caps
9385
9386 2004-04-22  Benjamin Otte  <otte@gnome.org>
9387
9388         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
9389         (gst_caps_union):
9390           only simplify in functions that create new caps. Simplifying in
9391           gst_caps_append breaks tests.
9392
9393 2004-04-22  Benjamin Otte  <otte@gnome.org>
9394
9395         * gst/gstcaps.c: (gst_caps_structure_simplify):
9396           unset GValue after use
9397         * gst/gstcaps.c: (gst_caps_append), 
9398         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
9399           use gst_caps_simplify (reduces registry size by 30%)
9400         * gst/gstpad.c: (gst_pad_template_new):
9401           don't allow NULL caps
9402
9403 2004-04-22  Benjamin Otte  <otte@gnome.org>
9404
9405         * docs/gst/gstreamer-sections.txt:
9406           add gst_caps_do_simplify
9407         * gst/gstcaps.c:
9408           add documentation for gst_caps_do_simplify
9409         * gst/gstvalue.h:
9410           fix typo in gst_value_register_subtract_func declaration for gst-doc
9411
9412 2004-04-22  Benjamin Otte  <otte@gnome.org>
9413
9414         * gst/gstcaps.c: (gst_caps_from_string_inplace):
9415           fix bug when converting from empty string.
9416         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
9417         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
9418           use gst_caps_new_empty to allocate a new caps. Only that function
9419           allocates memory for caps now.
9420         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
9421         (gst_caps_remove_structure):
9422           add ability to remove one structure (but not to header yet)
9423         * gst/gstcaps.c: (gst_caps_compare_structures),
9424         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
9425         (gst_caps_structure_simplify), (gst_caps_do_simplify),
9426         * gst/gstcaps.h:
9427           add gst_caps_do_simplify that tries to simplify a caps in place.
9428           Deprecate old gst_caps_simplify function.
9429         * testsuite/caps/caps.h:
9430           add caps.h containing a common set of caps to test against.
9431         * testsuite/caps/sets.c: (check_caps), (main):
9432           use it.
9433         * testsuite/caps/.cvsignore:
9434         * testsuite/caps/Makefile.am:
9435         * testsuite/caps/simplify.c: (check_caps), (main):
9436           add test to check correctness and efficency of caps simplification.
9437
9438 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
9439
9440         reviewed by Benjamin Otte  <otte@gnome.org>
9441
9442         * gst/gstparse.c: (_gst_parse_escape):
9443           Free the GString used in _gst_parse_escape()
9444
9445 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9446
9447         * gst/gstpad.c: (gst_pad_link_negotiate):
9448           refuse to link if the link is not possible
9449         * configure.ac:
9450         * testsuite/Makefile.am:
9451         * testsuite/negotiation/.cvsignore:
9452         * testsuite/negotiation/Makefile.am:
9453         * testsuite/negotiation/pad_link.c: (main):
9454           add test that checks the above behaviour
9455
9456 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9457
9458         * docs/gst/gstreamer-sections.txt:
9459           add newly added API
9460
9461 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9462
9463         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9464         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
9465         (gst_filesrc_open_file), (gst_filesrc_close_file),
9466         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
9467         * gst/elements/gstfilesrc.h:
9468           add support for non-regular files (#140734)
9469
9470 2004-04-21  Benjamin Otte  <otte@gnome.org>
9471
9472         * gst/gstpad.c: (gst_pad_link_fixate):
9473           add sophisticated error checking code to see if fixation functions
9474           did their fixation right
9475
9476 2004-04-21  Benjamin Otte  <otte@gnome.org>
9477
9478         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
9479           check for ANY caps before appending/unioning
9480         * gst/gstcaps.c: (gst_caps_is_subset),
9481         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
9482         (gst_caps_structure_subtract), (gst_caps_subtract):
9483         * gst/gstcaps.h:
9484           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
9485           the API. deprecate gst_caps_is_equal_fixed
9486         * gst/gstpad.c: (gst_pad_try_set_caps):
9487         * gst/gstqueue.c: (gst_queue_link):
9488           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
9489         * gst/gststructure.c: (gst_structure_get_name_id):
9490         * gst/gststructure.h:
9491           add function gst_structure_get_name_id
9492         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
9493         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
9494         (gst_value_subtract_int_range_int_range),
9495         (gst_value_subtract_double_double_range),
9496         (gst_value_subtract_double_range_double),
9497         (gst_value_subtract_double_range_double_range),
9498         (gst_value_subtract_from_list), (gst_value_subtract_list),
9499         (gst_value_can_intersect), (gst_value_subtract),
9500         (gst_value_can_subtract), (gst_value_register_subtract_func),
9501         (_gst_value_initialize):
9502         * gst/gstvalue.h:
9503           add support for subtracting values from each other. Note that
9504           subtracting means subtracting as in set theory. Required for caps
9505           stuff above.
9506         * testsuite/caps/.cvsignore:
9507         * testsuite/caps/Makefile.am:
9508         * testsuite/caps/erathostenes.c: (erathostenes), (main):
9509         * testsuite/caps/sets.c: (check_caps), (main):
9510         * testsuite/caps/subtract.c: (check_caps), (main):
9511           add tests for subtraction and equality code.
9512
9513 2004-04-20  David Schleef  <ds@schleef.org>
9514
9515         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
9516         * gst/indexers/Makefile.am:
9517         * gst/schedulers/Makefile.am:
9518         * libs/gst/bytestream/Makefile.am:
9519         * libs/gst/control/Makefile.am:
9520         * libs/gst/getbits/Makefile.am:
9521
9522 2004-04-20  David Schleef  <ds@schleef.org>
9523
9524         * common/as-libtool.mak: Fine-tune DLL building.
9525         * configure.ac: Link plugins against libgstreamer.  Define plugindir
9526         (like gst-plugins)
9527         * examples/plugins/Makefile.am: remove plugindir
9528         * gst/autoplug/Makefile.am: DLL building fixes
9529         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
9530         Windows.
9531         * gst/elements/gstelements.c: Conditionally disable pipefilter.
9532         * gst/indexers/Makefile.am: DLL building fixes
9533         * gst/schedulers/Makefile.am: DLL building fixes.
9534         * libs/gst/bytestream/Makefile.am: DLL building fixes.
9535         * libs/gst/control/Makefile.am: same
9536         * libs/gst/getbits/Makefile.am: same
9537         * testsuite/Makefile.am: New dlopen directory
9538         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
9539         when dlopened.
9540         * testsuite/dlopen/dlopen_gst.c: (main): same
9541         * testsuite/dlopen/loadgst.c: (do_test): same
9542
9543 2004-04-20  David Schleef  <ds@schleef.org>
9544
9545         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
9546         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
9547
9548 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9549
9550         * gst/gstelement.c: (gst_element_wait),
9551         (gst_element_set_time_delay), (gst_element_change_state):
9552           Use GST_TIME_*
9553
9554 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9555
9556         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
9557         (gst_spider_identity_plug):
9558           improve debugging messages
9559         * gst/gstbin.c: (gst_bin_remove_func):
9560           make sure the state_change function is only called with simple state
9561           transitions
9562
9563 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9564
9565         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
9566         (gst_fakesink_set_property), (gst_fakesink_chain):
9567         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
9568         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
9569         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
9570         * gst/elements/gstidentity.c: (gst_identity_chain),
9571         (gst_identity_set_property):
9572         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
9573         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
9574           add warnings to _set_property for unknown arguments
9575           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
9576
9577 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9578
9579         * Makefile.am:
9580         * docs/manuals.mak:
9581           add .po file download snippet
9582           fix a bug in the doc makefile
9583
9584 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9585
9586         * Makefile.am:
9587         * po/LINGUAS:
9588         * po/en_GB.po:
9589           Added en_GB translation (Gareth Owen)
9590
9591 2004-04-20  Johan Dahlin  <johan@gnome.org>
9592
9593         * gst/gstpad.c (_invent_event): Clean up
9594
9595 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9596
9597         * testsuite/caps/filtercaps.c: (main):
9598           fix test to test things correctly (caps are complicated)
9599
9600 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9601
9602         * testsuite/caps/Makefile.am:
9603         * testsuite/caps/filtercaps.c: (main):
9604           add test (that doesn't work right now, but should)
9605
9606 2004-04-19  David Schleef  <ds@schleef.org>
9607
9608         * configure.ac: Add test for allowing unaligned access.  Add define
9609         to put in gstconfig.h.
9610         * docs/gst/gstreamer-sections.txt: New symbols
9611         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
9612         * docs/gst/tmpl/gstfilesrc.sgml:
9613         * docs/gst/tmpl/gstparse.sgml:
9614         * docs/gst/tmpl/gsttypes.sgml:
9615         * docs/gst/tmpl/gstutils.sgml:
9616         * docs/gst/tmpl/gstvalue.sgml:
9617         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
9618         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
9619         on most !i386/!powerpc architectures.  From Daniel Gazard
9620         <daniel.gazard@free.fr>.  (bug #140156)
9621         * po/af.po: Check in changes made by gettext.
9622         * po/az.po:
9623         * po/fr.po:
9624         * po/nl.po:
9625         * po/sr.po:
9626         * po/sv.po:
9627
9628 2004-04-20  Benjamin Otte  <otte@gnome.org>
9629
9630         * gst/schedulers/entryscheduler.c: 
9631         (gst_entry_scheduler_yield):
9632           refuse to yield when decoupled elements insist on doing that.
9633           At least it's better than crashing
9634
9635 2004-04-19  David Schleef  <ds@schleef.org>
9636
9637         * docs/libs/Makefile.am: Change sinclude to include
9638         * docs/gst/Makefile.am: same
9639         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
9640
9641 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9642
9643         * po/LINGUAS:
9644         * po/uk.po:
9645           Added Ukrainian translation (Maxim V. Dziumanenko)
9646
9647 2004-04-19  Johan Dahlin  <johan@gnome.org>
9648
9649         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
9650         checking here, do it before calling the function.
9651         Clean up, use for loops instead of while loops while iterating
9652         over lists.
9653
9654         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
9655         in debug message.
9656         (gst_spider_create_and_plug): Improve debug message.
9657         General: Replace while loops which iterates over GLists with for
9658         loops. Which are much cleaner, improves readability, especially
9659         for gst_spider_identity_plug
9660
9661         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
9662         fixes bug 140477
9663
9664 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9665
9666         * po/LINGUAS:
9667         * po/tr.po:
9668           Added Turkish translation (Baris Cicek)
9669
9670 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9671
9672         * docs/faq/troubleshooting.xml:
9673           Mention gst-register in the FAQ (fixes 139045).
9674
9675 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9676
9677         * docs/gst/gstreamer-sections.txt:
9678
9679 2004-04-17  Benjamin Otte  <otte@gnome.org>
9680
9681         * gst/gstelement.c: (gst_element_dispose):
9682           simplify
9683         * gst/gstpad.c: (gst_pad_call_chain_function):
9684           don't create loads of events due to bad macro usage
9685
9686 2004-04-16  David Schleef  <ds@schleef.org>
9687
9688         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
9689         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
9690         * gst/gstvalue.c: (gst_value_serialize_buffer),
9691         (gst_value_deserialize_buffer), (gst_type_is_fixed),
9692         (_gst_value_initialize): Create a new function gst_type_is_fixed()
9693         to indicate types that are fixed wrt caps or not.  Switching to
9694         this function fixes (bug #140298).
9695         * gst/gstvalue.h:
9696
9697 2004-04-16  David Schleef  <ds@schleef.org>
9698
9699         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
9700         for GST_UNALIGNED_ACESS, since we essentially know which archs
9701         are ok.
9702
9703 2004-04-17  Benjamin Otte  <otte@gnome.org>
9704
9705         * docs/gst/Makefile.am:
9706           ignore gst/parse directory when building docs (fixes #140205)
9707
9708 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9709
9710         * testsuite/refcounting/mem.c: (vmsize):
9711           do error checking
9712
9713 2004-04-16  Johan Dahlin  <johan@gnome.org>
9714
9715         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
9716         and gst_pad_call_get_function.
9717
9718 2004-04-15  David Schleef  <ds@schleef.org>
9719
9720         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
9721         checks if we can access unaligned memory.
9722         * configure.ac: Use it.
9723
9724 2004-04-16  Benjamin Otte  <otte@gnome.org>
9725
9726         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
9727         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9728         * gst/elements/gstfilesrc.h:
9729           s/seek_happened/need_discont/ and require discont before sending any
9730           data
9731
9732 2004-04-15  David Schleef  <ds@schleef.org>
9733
9734         * gst/gstvalue.c: (gst_value_serialize_buffer),
9735         (gst_value_deserialize_buffer), (_gst_value_initialize):
9736         Register these types as fundamental types. (bug #140015)
9737
9738 2004-04-16  Benjamin Otte  <otte@gnome.org>
9739
9740         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
9741         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
9742         (gst_pad_pull):
9743           implement enforcing discont events before buffers are passed. This
9744           allows state changes of only some elements and later correctly going
9745           on where they left off (or in short: you can now set audio sinks to
9746           NULL to release the device when the pipeline is paused)
9747         * gst/gstpad.c: (gst_pad_call_chain_function),
9748         (gst_pad_call_get_function):
9749         * gst/gstpad.h:
9750           add gst_pad_call_chain_function and gst_pad_call_get_function for
9751           scheduler interaction. They are required because of the changes
9752           above.
9753         * gst/schedulers/entryscheduler.c: (get_buffer),
9754         (gst_entry_scheduler_chain_wrapper),
9755         (gst_entry_scheduler_get_wrapper),
9756         (gst_entry_scheduler_state_transition),
9757         (gst_entry_scheduler_pad_link):
9758         * gst/schedulers/gstbasicscheduler.c:
9759         (gst_basic_scheduler_chain_wrapper),
9760         (gst_basic_scheduler_src_wrapper),
9761         (gst_basic_scheduler_chainhandler_proxy),
9762         (gst_basic_scheduler_gethandler_proxy),
9763         (gst_basic_scheduler_cothreaded_chain),
9764         (gst_basic_scheduler_chain_elements):
9765         * gst/schedulers/gstoptimalscheduler.c:
9766         (get_group_schedule_function), (pad_clear_queued),
9767         (gst_opt_scheduler_pad_link):
9768           use the new functions instead of calling get/chain-functions
9769           directly.
9770
9771 2004-04-15  David Schleef  <ds@schleef.org>
9772
9773         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
9774         * docs/gst/tmpl/gstinfo.sgml: same
9775         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
9776         gtk-doc put here.
9777         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
9778         * examples/queue/queue.c: (main):  We iterate pipelines, not
9779         bins.  (bug #139996)
9780
9781 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9782
9783         * docs/pwg/advanced-types.xml:
9784           Add MS RLE support. Also document Qt RLE although I have no sample
9785           files for that yet. And document an extra property for ADPCM.
9786
9787 2004-04-15  David Schleef  <ds@schleef.org>
9788
9789         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
9790         (_gst_plugin_fault_handler_setup):  Disable more stuff on
9791         Windows.
9792
9793 2004-04-15  David Schleef  <ds@schleef.org>
9794
9795         * gst/gstinfo.c: (_gst_debug_init): Change some internal
9796         symbol names to not conflict with new gstinfo.h symbols.
9797         * gst/gstinfo.h: Add inline functions for all those crazy
9798         compilers that don't know how to handle variadic macros (MSVC).
9799
9800 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9801
9802         * configure.ac: bump nano to 1
9803
9804 === release 0.8.1 ===
9805
9806 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9807
9808         * NEWS:
9809         * RELEASE:
9810         * configure.ac:
9811           releasing 0.8.1, "Snow Brigade"
9812
9813 2004-04-14  David Schleef  <ds@schleef.org>
9814
9815         * testsuite/Makefile.am: define tests_ignore
9816         * testsuite/Rules: Added new tests_ignore, which get compiled,
9817         but not run (generally because they're inconsistent or have
9818         heisenbugs).  Now we can ensure all the .c files compile in
9819         testsuite/.
9820         * testsuite/bins/Makefile.am: define tests_ignore
9821         * testsuite/bytestream/Makefile.am:
9822         * testsuite/caps/Makefile.am:
9823         * testsuite/clock/Makefile.am:
9824         * testsuite/debug/Makefile.am:
9825         * testsuite/debug/global.c: (gst_debug_log_one),
9826         (gst_debug_log_two): Fix compilation problem.
9827         * testsuite/dynparams/Makefile.am:
9828         * testsuite/elements/Makefile.am:
9829         * testsuite/ghostpads/Makefile.am:
9830         * testsuite/indexers/Makefile.am:
9831         * testsuite/parse/Makefile.am:
9832         * testsuite/plugin/Makefile.am:
9833         * testsuite/refcounting/Makefile.am:
9834         * testsuite/refcounting/element_pad.c: (main): Don't return leak
9835         results, because it's not calculated correctly.
9836         * testsuite/refcounting/pad.c: (main): same
9837         * testsuite/states/Makefile.am:
9838         * testsuite/tags/Makefile.am:
9839         * testsuite/threads/Makefile.am:
9840
9841 2004-04-14  David Schleef  <ds@schleef.org>
9842
9843         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
9844         generating bad code around the cpu detection asm code.
9845
9846 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
9847
9848         * tools/gst-inspect.c: (print_element_info):
9849           print numeric version of rank as well, since we added some - 1
9850           rank values to elements
9851
9852 2004-04-13  David Schleef  <ds@schleef.org>
9853
9854         * configure.ac:  Disable various code when compiling for MinGW.
9855         * gst/elements/Makefile.am:
9856         * gst/elements/gstelements.c:
9857         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
9858         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
9859         * gst/registries/gstxmlregistry.c: (make_dir):
9860
9861 2004-04-13  David Schleef  <ds@schleef.org>
9862
9863         * gst/Makefile.am:
9864         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
9865         assembly.
9866         * gst/gstcpuid_i386.s: remove
9867
9868 2004-04-13  David Schleef  <ds@schleef.org>
9869
9870         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
9871         seems to think it needs to be done.
9872         * docs/gst/tmpl/gstfakesink.sgml:
9873         * docs/gst/tmpl/gstfakesrc.sgml:
9874         * docs/gst/tmpl/gstfdsink.sgml:
9875         * docs/gst/tmpl/gstfdsrc.sgml:
9876         * docs/gst/tmpl/gstfilesink.sgml:
9877         * docs/gst/tmpl/gstfilesrc.sgml:
9878         * docs/gst/tmpl/gstidentity.sgml:
9879         * docs/gst/tmpl/gstmd5sink.sgml:
9880         * docs/gst/tmpl/gstmultifilesrc.sgml:
9881         * docs/gst/tmpl/gstpipefilter.sgml:
9882         * docs/gst/tmpl/gstshaper.sgml:
9883         * docs/gst/tmpl/gstspider.sgml:
9884         * docs/gst/tmpl/gstspideridentity.sgml:
9885         * docs/gst/tmpl/gststatistics.sgml:
9886         * docs/gst/tmpl/gsttee.sgml:
9887         * docs/gst/tmpl/gsttypefind.sgml:
9888         * docs/gst/tmpl/gstutils.sgml:
9889
9890 2004-04-13  David Schleef  <ds@schleef.org>
9891
9892         * configure.ac: Changes to remove POSIXisms (mmap in this case)
9893         and to build DLLs on Windows.
9894         * gst/Makefile.am:
9895         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9896         (gst_filesrc_open_file):
9897         * gst/schedulers/Makefile.am:
9898
9899 2004-04-13  David Schleef  <ds@schleef.org>
9900
9901         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
9902         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
9903         fixating lists.
9904
9905 2004-04-12  David Schleef  <ds@schleef.org>
9906
9907         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
9908         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
9909         to using it.
9910         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
9911         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
9912         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
9913         * gst/gststructure.c: (gst_structure_set_valist),
9914         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
9915         support for buffers.
9916         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
9917         intended to be const.
9918         * gst/gsttag.h: same
9919         * gst/gstvalue.c: (gst_value_serialize_buffer),
9920         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
9921         to (de)serialize buffers.
9922         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
9923         * testsuite/caps/string-conversions.c: (main):
9924         * testsuite/caps/value_serialize.c: add new test
9925
9926 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9927
9928         * docs/pwg/advanced-types.xml:
9929           Document MS video 1 (video/x-msvideocodec) mimetype/format.
9930
9931 2004-04-11  Benjamin Otte  <otte@gnome.org>
9932
9933         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
9934           rename categories to basic_*
9935         * gst/schedulers/gstbasicscheduler.c: 
9936         (gst_basic_scheduler_chain_wrapper),
9937         (gst_basic_scheduler_chainhandler_proxy),
9938         (gst_basic_scheduler_gethandler_proxy),
9939         (gst_basic_scheduler_eventhandler_proxy):
9940           debugging category fixes - put common stuff in log category
9941         * gst/schedulers/gstbasicscheduler.c: 
9942         (gst_basic_scheduler_chain_elements):
9943           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
9944           active and linking two active chains
9945
9946 2004-04-10  Benjamin Otte  <otte@gnome.org>
9947
9948         * docs/pwg/intro-preface.xml:
9949           fix dead links and remove reference to Wiki
9950
9951 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9952
9953         * gst/schedulers/gstbasicscheduler.c:
9954           make sure we can switch back to the main function if we're still in
9955           the main function (supposed to fix #139617)
9956         * gst/schedulers/gthread-cothreads.h:
9957           don't throw an error when switching to the same cothread
9958
9959 2004-04-09  Benjamin Otte  <otte@gnome.org>
9960
9961         * gst/gstbin.c: (gst_bin_get_type):
9962         * gst/gstclock.c: (gst_clock_get_type):
9963         * gst/gstindex.c: (gst_index_get_type):
9964         * gst/gstobject.c: (gst_object_get_type),
9965         (gst_signal_object_get_type):
9966         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
9967         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
9968         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
9969         * gst/gstqueue.c: (gst_queue_get_type):
9970         * gst/gstregistry.c: (gst_registry_get_type):
9971         * gst/gstsystemclock.c: (gst_system_clock_get_type):
9972         * gst/gstthread.c: (gst_thread_get_type):
9973           don't use memchunks for these objects, use malloc instead
9974
9975 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
9976
9977         * docs/gst/.cvsignore:
9978         * docs/gst/Makefile.am:
9979         * docs/gst/gstreamer-sections.txt:
9980         * docs/gst/tmpl/gstaggregator.sgml:
9981         * docs/gst/tmpl/gstbuffer.sgml:
9982         * docs/gst/tmpl/gstclock.sgml:
9983         * docs/gst/tmpl/gstelement.sgml:
9984         * docs/gst/tmpl/gstfakesink.sgml:
9985         * docs/gst/tmpl/gstfakesrc.sgml:
9986         * docs/gst/tmpl/gstfdsink.sgml:
9987         * docs/gst/tmpl/gstfdsrc.sgml:
9988         * docs/gst/tmpl/gstfilesink.sgml:
9989         * docs/gst/tmpl/gstfilesrc.sgml:
9990         * docs/gst/tmpl/gstidentity.sgml:
9991         * docs/gst/tmpl/gstindex.sgml:
9992         * docs/gst/tmpl/gstinfo.sgml:
9993         * docs/gst/tmpl/gstmd5sink.sgml:
9994         * docs/gst/tmpl/gstmultifilesrc.sgml:
9995         * docs/gst/tmpl/gstpad.sgml:
9996         * docs/gst/tmpl/gstpipefilter.sgml:
9997         * docs/gst/tmpl/gstpipeline.sgml:
9998         * docs/gst/tmpl/gstpluginfeature.sgml:
9999         * docs/gst/tmpl/gstqueue.sgml:
10000         * docs/gst/tmpl/gstregistry.sgml:
10001         * docs/gst/tmpl/gstscheduler.sgml:
10002         * docs/gst/tmpl/gstshaper.sgml:
10003         * docs/gst/tmpl/gstspider.sgml:
10004         * docs/gst/tmpl/gstspideridentity.sgml:
10005         * docs/gst/tmpl/gststatistics.sgml:
10006         * docs/gst/tmpl/gstsystemclock.sgml:
10007         * docs/gst/tmpl/gsttee.sgml:
10008         * docs/gst/tmpl/gstthread.sgml:
10009         * docs/gst/tmpl/gsttypefind.sgml:
10010         * docs/gst/tmpl/gstutils.sgml:
10011           further doc build fixes
10012
10013 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10014
10015         * docs/gst/Makefile.am:
10016           make docs exit on scanning problems
10017           fix nonsrcdir build issues
10018         * docs/gst/gstreamer-sections.txt:
10019           adding stuff from -unused
10020         * gst/gstqueue.h:
10021           create GstQueueSize
10022         * gst/schedulers/cothreads_compat.h:
10023           fix cothread warnings
10024
10025 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10026
10027         * docs/gst/gstreamer-sections.txt:
10028           remove defines deprecated by Benjamin
10029
10030 2004-04-07  Benjamin Otte  <otte@gnome.org>
10031
10032         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10033           when the buffer is complete, don't check if other buffers are needed
10034         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
10035           check that the offset is >0 so we don't try to read before the
10036           beginning of the file
10037         * gst/gstpad.c: (gst_pad_set_pad_template):
10038           sink the template, so we don't end up with 130k pad templates
10039
10040 2004-04-06  Benjamin Otte  <otte@gnome.org>
10041
10042         * gst/autoplug/gstspider.c: (gst_spider_link_add):
10043           don't ref the element, adding already reffed it. And we didn't unref
10044           it later anyway... (huge memleak when you used many spider elements)
10045         * gst/gstelement.c: (gst_element_base_class_finalize):
10046         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
10047         (gst_element_register):
10048         * gst/gsturi.c: (gst_element_make_from_uri):
10049           use gst_object_(un)ref instead of g_object(un)ref
10050
10051 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10052
10053         * gst/gstbuffer.h:
10054           remove macro that wouldn't work anymore because struct member has
10055           been removed.
10056         * gst/schedulers/entryscheduler.c: (schedule_forward):
10057           fix segfault for unconnected pads
10058         
10059 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10060
10061         reviewed by David Schleef <ds@schleef.org>
10062
10063         * gst/gstinfo.h:
10064           *_FORMAT modifiers should require putting a % in front of them for
10065           consistency reasons.
10066
10067 2004-04-05  Colin Walters  <walters@redhat.com>
10068
10069         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
10070         space.
10071
10072 2004-04-05  Benjamin Otte  <otte@gnome.org>
10073
10074         * configure.ac:
10075         * gst/Makefile.am:
10076         * gst/gst_private.h:
10077         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
10078           add support for detecting if GStreamer runs inside valgrind.
10079           requires valgrind (d'oh) and --enable-debug for correct cdetection.
10080           print a big message in valgrind that GStreamer has detected it's
10081           running inside and might now use different code.
10082         * gst/gstmemchunk.c: (populate), (free_area),
10083         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
10084         (gst_mem_chunk_free):
10085           flag memchunks for valgrind, so it can detect leaking of chunks.
10086           This allows detecting leaks of GstBuffer and GstEvent correctly
10087           inside valgrind.
10088
10089 2004-04-05  David Schleef  <ds@schleef.org>
10090
10091         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
10092           jensgr@gmx.net (Jens Granseuer)
10093
10094 2004-04-05  David Schleef  <ds@schleef.org>
10095
10096         * gst/gstbuffer.c: (_gst_buffer_sub_free),
10097         (gst_buffer_default_free), (gst_buffer_default_copy),
10098         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
10099         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
10100         structures in one place.
10101
10102 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10103
10104         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
10105           (GST_TIME_FORMAT, GST_TIME_ARGS)
10106
10107 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10108
10109         * testsuite/elements/Makefile.am:
10110           disable test until it stops breaking make distcheck
10111
10112 2004-04-05  Johan Dahlin  <johan@gnome.org>
10113
10114         * po/sv.po: Updated translation
10115
10116 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10117
10118         * gst/gstplugin.c: (gst_plugin_load_file):
10119           fix segfault for when original plugin was loaded statically
10120
10121 2004-04-05  Benjamin Otte  <otte@gnome.org>
10122
10123         * testsuite/debug/category.c: (main):
10124         * testsuite/debug/commandline.c: (main):
10125         * testsuite/debug/output.c: (main):
10126           fix tests to work again with debugging enabled
10127
10128 2004-04-05  Benjamin Otte  <otte@gnome.org>
10129
10130         * gst/schedulers/gstbasicscheduler.c:
10131         (gst_basic_scheduler_pad_link):
10132           fix to work with recent scheduling changes
10133
10134 2004-04-05  Benjamin Otte  <otte@gnome.org>
10135
10136         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
10137         prepareChangeLog doesn't work when cvs indents):
10138           don't throw an error when no element can be scheduled, there's too
10139           many weird reasons why it doesn't work. Return STOPPED instead.
10140           decoupled elemts' schedulability doesn't depend on bufpens.
10141
10142 2004-04-04  Benjamin Otte  <otte@gnome.org>
10143
10144         * gst/schedulers/gstbasicscheduler.c:
10145         (gst_basic_scheduler_pad_select):
10146           fix uninitialized variable warnings
10147
10148 2004-04-04  Benjamin Otte  <otte@gnome.org>
10149
10150         * gst/gstpad.c: (gst_pad_collect_valist):
10151           fix uninitialized variable warning
10152         * gst/schedulers/entryscheduler.c: (schedule_forward):
10153           fix shadowed variable
10154
10155 2004-04-04  Benjamin Otte  <otte@gnome.org>
10156
10157         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
10158         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
10159         (gst_pad_select):
10160         * gst/gstpad.h:
10161         * gst/gstscheduler.c: (gst_scheduler_pad_select),
10162         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
10163         * gst/gstscheduler.h:
10164           implement gst_pad_collect as replacement for gst_pad_select.
10165           deprecate gst_pad_select and gst_scheduler_(un)lock_element
10166           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
10167           new pad_select, lock and unlock calls.
10168         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
10169         * gst/cothreads.h:
10170         * gst/schedulers/cothreads_compat.h:
10171         * gst/schedulers/gthread-cothreads.h:
10172           remove unused cothread_lock and cothread_unlock calls
10173         * gst/schedulers/entryscheduler.c:
10174         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
10175         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
10176         (gst_entry_scheduler_pad_select):
10177           update to new API
10178         * gst/schedulers/gstbasicscheduler.c:
10179         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
10180         (gst_basic_scheduler_pad_select):
10181           remove useless lock and unlock calls, update pad_select to new API
10182           (untested)
10183         * gst/schedulers/gstoptimalscheduler.c:
10184         (gst_opt_scheduler_class_init):
10185           remove useless select, lock and unlock function calls
10186         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
10187           use gst_pad_collect instead of gst_pad_select
10188
10189 2004-04-04  Benjamin Otte  <otte@gnome.org>
10190
10191         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
10192         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
10193         (schedule_next_element), (print_entry):
10194           add can_schedule_pad to handle element states.
10195           add schedule_forward to select the correct entry to schedule next
10196
10197 2004-04-03  Benjamin Otte  <otte@gnome.org>
10198
10199         * gst/schedulers/entryscheduler.c: 
10200           remove unused variable, fix error inside Rb, fix compile warning in
10201           unreachable code
10202
10203 2004-04-03  Benjamin Otte  <otte@gnome.org>
10204
10205         * gst/schedulers/entryscheduler.c:
10206           completely revamp the inner workings, so it's a lot easier to
10207           understand and extend
10208
10209 2004-04-03  Andy Wingo  <wingo@pobox.com>
10210
10211         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
10212         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
10213         This allows better introspection of pipeline topology.
10214         (add_to_chain): Don't do trickery to put loop elements first;
10215         rather, queue a chain sort by marking the chain as dirty.
10216         (remove_from_chain): Mark the chain dirty.
10217         (sort_chain): New function. Sorts the group list so that terminal
10218         sinks are first. This means elements on the sink side will be
10219         preferentially sscheduled before elements on the src side of the
10220         pipeline.
10221         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
10222         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
10223         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
10224         (group_inc_link): Change argument and variable names to match the
10225         new link structure member names (src and sink).
10226         (group_dec_link): Add some description
10227
10228 2004-04-03  Benjamin Otte  <otte@gnome.org>
10229
10230         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
10231         * gst/gstinfo.h:
10232         * testsuite/debug/category.c: (main):
10233         * testsuite/debug/commandline.c: (main):
10234         * testsuite/debug/output.c: (main):
10235         * testsuite/debug/printf_extension.c: (main):
10236           fix to successfully build and test with --disable-gst-debug
10237           configure switch (fixes #138705)
10238
10239 2004-04-03  Benjamin Otte  <otte@gnome.org>
10240
10241         * docs/pwg/building-boiler.xml:
10242           add cvs login line and s/anonymous/anoncvs/
10243
10244 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
10245
10246         reviewed by Benjamin Otte  <otte@gnome.org>
10247
10248         * gst/gststructure.c: (gst_structure_free):
10249           memleak fix: free fields array (partial fix for #134839)
10250
10251 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10252
10253         * docs/random/ds/0.9-suggested-changes:
10254           Add a note to change handoff use in fakesrc to be usable in
10255           a more generic way (fakesrc should be renamed to appsrc or so).
10256         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
10257           Change signal type to scope, so we can fill the buffer in the
10258           handoff handler (that's the whole use of this signal...).
10259
10260 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10261
10262         * docs/pwg/other-ntoone.xml:
10263           Document muxers and n-to-1 elements.
10264
10265 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
10266
10267         * gst/registries/gstxmlregistry.c
10268         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
10269         determine if a file is a G_MODULE. The old one discards paths
10270         containing "so" somewhere in the middle. My home directory is
10271         called "soto". Go figure...
10272
10273 2004-03-31  David Schleef  <ds@schleef.org>
10274
10275         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
10276         to eventually deprecate gst_buffer_merge().  (bug: #136408)
10277         * gst/gstbuffer.h:
10278
10279 2004-03-31  David Schleef  <ds@schleef.org>
10280
10281         * gst/gstvalue.c: (gst_value_union_int_int_range),
10282         (gst_value_union_int_range_int_range), (gst_value_can_union),
10283         (gst_value_union), (_gst_value_initialize):  Add some union
10284         implementations.  We didn't have any previously.
10285         * testsuite/caps/Makefile.am:
10286         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
10287         (gst_audioscale_getcaps), (test_caps), (main): A little test
10288         that is the same as the caps manipulation in audioscale.
10289
10290 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10291
10292         * docs/faq/general.xml:
10293           add entry about "does gst support format X?"
10294
10295 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10296
10297         * gst/gstthread.c:
10298           fix docs
10299         * gst/gstutils.h:
10300           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
10301
10302 2004-03-30  Benjamin Otte  <otte@gnome.org>
10303
10304         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10305           set the offset of the buffer to the requested offset
10306         * gst/elements/gsttypefind.c: (stop_typefinding):
10307           revert patch 1.18 (which I unfortunately don't know the reason for).
10308           This is needed to allow downstream elements to seek. Otherwise
10309           typefind might overwrite a previous seek by downstream elements.
10310           This lead to errors with id3tag and typefind on some mp3s.
10311         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10312         (gst_entry_scheduler_iterate):
10313           be more verbose when debugging
10314
10315 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10316
10317         * gst/gstcaps.c: (gst_caps_from_string_inplace):
10318           make sure we don't get NULL strings
10319
10320 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10321
10322         * gst/gstcaps.c:
10323         * gst/gstelement.c:
10324         * gst/gstelementfactory.c: (gst_element_factory_get_type):
10325         * gst/gstindex.c: (gst_index_resolver_get_type),
10326         (gst_index_get_type), (gst_index_factory_get_type):
10327         * gst/gstinfo.c:
10328         * gst/gstpad.c:
10329         * gst/gstplugin.c:
10330         * gst/gsturi.c: (gst_uri_handler_get_type):
10331         * gst/gstvalue.c:
10332           first batch of documentation fixes
10333
10334 2004-03-29  David Schleef  <ds@schleef.org>
10335
10336         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
10337         * docs/gst/gstreamer-docs.sgml:  More hacking
10338         * docs/gst/gstreamer-sections.txt:
10339         * docs/gst/tmpl/cothreads_compat.sgml:
10340         * docs/gst/tmpl/gstcaps.sgml:
10341         * docs/gst/tmpl/gstclock.sgml:
10342         * docs/gst/tmpl/gstelement.sgml:
10343         * docs/gst/tmpl/gstevent.sgml:
10344         * docs/gst/tmpl/gstpad.sgml:
10345         * docs/gst/tmpl/gstutils.sgml:
10346         * docs/gst/tmpl/gstxml.sgml:
10347         * docs/gst/tmpl/gthread-cothreads.sgml:
10348         * docs/random/ds/0.9-suggested-changes:
10349         * gst/elements/gstfakesink.h: doc fixes
10350         * gst/elements/gstfakesrc.h: doc fixes
10351         * gst/gstcaps.c: doc fixes
10352         * gst/gstcaps.h: doc fixes
10353         * gst/gstelement.c: doc fixes
10354         * gst/gstelement.h: doc fixes
10355         * gst/gstindex.c: doc fixes
10356         * gst/gstinfo.c: doc fixes
10357         * gst/gstpad.c: doc fixes
10358         * gst/gstpad.h: doc fixes
10359         * gst/gstplugin.c: doc fixes
10360         * gst/gsttypefind.h: doc fixes
10361         * gst/gsturi.c: doc fixes
10362         * gst/gstvalue.c: doc fixes
10363
10364 2004-03-29  Colin Walters  <walters@redhat.com>
10365
10366         * gst/registries/gstxmlregistry.c (get_time)
10367         (plugin_times_older_than_recurse):
10368         Use the result of stat to determine whether a path is a file,
10369         so we don't attempt to opendir() files.
10370
10371 2004-03-29  Benjamin Otte  <otte@gnome.org>
10372
10373         * gst/gstpad.c: (gst_pad_set_explicit_caps):
10374           print caps in debugging output when setting caps failed
10375         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10376         (schedule_next_element), (get_buffer), (run_chainhandler),
10377         (element_may_start), (gst_entry_scheduler_chain_handler),
10378         (gst_entry_scheduler_get_handler),
10379         (gst_entry_scheduler_state_transition),
10380         (gst_entry_scheduler_pad_link):
10381           make this scheduler a testcase for mandatory
10382           discont-before-first-buffer which is needed if we want to allow apps
10383           to release the sound device.
10384           add SCHED_ASSERT macro to print scheduler state before an assertion
10385           triggers.
10386
10387 2004-03-29  Benjamin Otte  <otte@gnome.org>
10388
10389         * COPYING:
10390           replace by LGPL (former COPYING.LIB). The core is completely
10391           licensed LGPL.
10392         * COPYING.LIB:
10393           remove
10394
10395 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10396
10397         * po/af.po:
10398         * po/sv.po:
10399           updated Afrikaans and Swedish
10400
10401 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10402
10403         * po/LINGUAS:
10404         * po/az.po:
10405           adding Azerbaijani (Mətin Əmirov)
10406
10407 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
10408
10409         * gst/gstelement.h: 
10410         * gst/gstelement.c (gst_element_set_time_delay): New function for
10411         setting element time taking into account a hardware buffering
10412         delay.
10413         (gst_element_set_time): Now just an invocation of
10414         gst_element_set_time_delay.
10415         * gst/gstclock.h: 
10416         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
10417         allowing to set event times in the future.
10418         (gst_clock_get_event_time): Now just an invocation of
10419         gst_clock_get_event_time_delay.
10420
10421 2004-03-28  Benjamin Otte  <otte@gnome.org>
10422
10423         * gst/gstbin.c: (gst_bin_set_element_sched),
10424         (gst_bin_unset_element_sched):
10425           don't add decoupled elements to schedulers - otherwise it's
10426           impossible to control if a link to a decoupled element was already
10427           removed from a scheduler or not.
10428         * gst/schedulers/cothreads_compat.h:
10429         * gst/schedulers/gthread-cothreads.h:
10430           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
10431           is no "unused" warning.
10432         * gst/schedulers/Makefile.am:
10433         * gst/schedulers/entryscheduler.c:
10434           add new scheduler, based on ideas from talking to David and Martin.
10435           It's supposed to be small and correct. Currently it's also slow (but
10436           it's not noticable)
10437         * examples/retag/retag.c: (main):
10438         * testsuite/bytestream/test1.c: (main):
10439           fix missing NULLs at end of variadic functions
10440         * testsuite/elements/.cvsignore:
10441           update
10442
10443 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
10444
10445         * gst/gstevent.h:
10446         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
10447
10448 2004-03-25  David Schleef  <ds@schleef.org>
10449
10450         * docs/gst/gstreamer-sections.txt:  More doc hacking.
10451         * docs/gst/tmpl/gstaggregator.sgml:
10452         * docs/gst/tmpl/gstautoplugfactory.sgml:
10453         * docs/gst/tmpl/gstbin.sgml:
10454         * docs/gst/tmpl/gstbuffer.sgml:
10455         * docs/gst/tmpl/gstbufferstore.sgml:
10456         * docs/gst/tmpl/gstfakesink.sgml:
10457         * docs/gst/tmpl/gstfakesrc.sgml:
10458         * docs/gst/tmpl/gstmd5sink.sgml:
10459         * docs/gst/tmpl/gstreamer-unused.sgml:
10460         * docs/gst/tmpl/gstsearchfuncs.sgml:
10461         * docs/gst/tmpl/gstshaper.sgml:
10462         * docs/gst/tmpl/gstspider.sgml:
10463         * docs/gst/tmpl/gsttee.sgml:
10464         * docs/gst/tmpl/gstutils.sgml:
10465         * docs/gst/tmpl/gstvalue.sgml:
10466         * docs/gst/tmpl/gstxml.sgml:
10467         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
10468         and we don't support it.
10469         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
10470         (gst_use_threads), (gst_has_threads): same
10471         * gst/gstthreaddummy.c: same
10472         * gst/autoplug/gstspider.c: Make gst_spider_details static.
10473         * gst/autoplug/gstspider.h: same
10474         * gst/elements/gstaggregator.h: Remove bogus function from header
10475         * gst/elements/gstfakesink.h: same
10476         * gst/elements/gstfakesrc.h: same
10477         * gst/elements/gstmd5sink.h: same
10478         * gst/elements/gstshaper.h: same
10479         * gst/elements/gsttee.h: same
10480         * gst/gstbin.c: doc fixes
10481         * gst/gstbin.h: Remove unused definition.
10482         * gst/gstbuffer.c: doc fixes
10483         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
10484         * gst/gstfilter.c: doc fixes
10485         * gst/gsttag.c: doc fixes
10486         * gst/gstvalue.c: doc fixes
10487
10488 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10489
10490         * docs/pwg/advanced-types.xml:
10491           Document typefinding.
10492         * docs/pwg/other-oneton.xml:
10493           Document one-to-n elements, demuxers and parsers.
10494
10495 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
10496
10497         reviewed by: David Schleef  <ds@schleef.org>
10498
10499         * configure.ac: Check bison version (bug #127838)
10500
10501 2004-03-25  David Schleef  <ds@schleef.org>
10502
10503         * docs/gst/gstreamer-docs.sgml: More fine tuning.
10504         * docs/gst/gstreamer-sections.txt:
10505         * docs/gst/tmpl/gstautoplug.sgml:
10506         * docs/gst/tmpl/gststaticautoplug.sgml:
10507         * docs/gst/tmpl/gststaticautoplugrender.sgml:
10508         * docs/gst/tmpl/gstutils.sgml:
10509         * docs/gst/tmpl/gstxml.sgml:
10510
10511 2004-03-24  David Schleef  <ds@schleef.org>
10512
10513         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
10514         manual being such complete crap, that I decided to do major
10515         hacking of it.  This checkin replaces any fine tuning that
10516         may have been done previously, with the benefit of actually
10517         being complete for much of the API that was changed since
10518         0.6.  Further fine tuning will occur shortly.  (bug #134721)
10519         * docs/gst/gstreamer-sections.txt:
10520         * docs/gst/tmpl/GstBin.sgml:
10521         * docs/gst/tmpl/GstBuffer.sgml:
10522         * docs/gst/tmpl/GstCaps.sgml:
10523         * docs/gst/tmpl/GstClock.sgml:
10524         * docs/gst/tmpl/GstCompat.sgml:
10525         * docs/gst/tmpl/GstData.sgml:
10526         * docs/gst/tmpl/GstElement.sgml:
10527         * docs/gst/tmpl/GstEvent.sgml:
10528         * docs/gst/tmpl/GstIndex.sgml:
10529         * docs/gst/tmpl/GstStructure.sgml:
10530         * docs/gst/tmpl/GstTag.sgml:
10531         * docs/gst/tmpl/cothreads.sgml:
10532         * docs/gst/tmpl/cothreads_compat.sgml:
10533         * docs/gst/tmpl/gettext.sgml:
10534         * docs/gst/tmpl/grammar.tab.sgml:
10535         * docs/gst/tmpl/gst-i18n-app.sgml:
10536         * docs/gst/tmpl/gst-i18n-lib.sgml:
10537         * docs/gst/tmpl/gst.sgml:
10538         * docs/gst/tmpl/gst_private.sgml:
10539         * docs/gst/tmpl/gstaggregator.sgml:
10540         * docs/gst/tmpl/gstarch.sgml:
10541         * docs/gst/tmpl/gstatomic.sgml:
10542         * docs/gst/tmpl/gstatomic_impl.sgml:
10543         * docs/gst/tmpl/gstbin.sgml:
10544         * docs/gst/tmpl/gstbuffer.sgml:
10545         * docs/gst/tmpl/gstbufferstore.sgml:
10546         * docs/gst/tmpl/gstcaps.sgml:
10547         * docs/gst/tmpl/gstclock.sgml:
10548         * docs/gst/tmpl/gstcompat.sgml:
10549         * docs/gst/tmpl/gstconfig.sgml:
10550         * docs/gst/tmpl/gstcpu.sgml:
10551         * docs/gst/tmpl/gstdata.sgml:
10552         * docs/gst/tmpl/gstdata_private.sgml:
10553         * docs/gst/tmpl/gstelement.sgml:
10554         * docs/gst/tmpl/gstenumtypes.sgml:
10555         * docs/gst/tmpl/gsterror.sgml:
10556         * docs/gst/tmpl/gstevent.sgml:
10557         * docs/gst/tmpl/gstfakesink.sgml:
10558         * docs/gst/tmpl/gstfakesrc.sgml:
10559         * docs/gst/tmpl/gstfilesink.sgml:
10560         * docs/gst/tmpl/gstfilter.sgml:
10561         * docs/gst/tmpl/gstindex.sgml:
10562         * docs/gst/tmpl/gstinfo.sgml:
10563         * docs/gst/tmpl/gstinterface.sgml:
10564         * docs/gst/tmpl/gstlog.sgml:
10565         * docs/gst/tmpl/gstmacros.sgml:
10566         * docs/gst/tmpl/gstmarshal.sgml:
10567         * docs/gst/tmpl/gstmd5sink.sgml:
10568         * docs/gst/tmpl/gstmultifilesrc.sgml:
10569         * docs/gst/tmpl/gstobject.sgml:
10570         * docs/gst/tmpl/gstpad.sgml:
10571         * docs/gst/tmpl/gstparse.sgml:
10572         * docs/gst/tmpl/gstpipeline.sgml:
10573         * docs/gst/tmpl/gstplugin.sgml:
10574         * docs/gst/tmpl/gstpluginfeature.sgml:
10575         * docs/gst/tmpl/gstqueue.sgml:
10576         * docs/gst/tmpl/gstreamer-unused.sgml:
10577         * docs/gst/tmpl/gstregistry.sgml:
10578         * docs/gst/tmpl/gstregistrypool.sgml:
10579         * docs/gst/tmpl/gstscheduler.sgml:
10580         * docs/gst/tmpl/gstsearchfuncs.sgml:
10581         * docs/gst/tmpl/gstshaper.sgml:
10582         * docs/gst/tmpl/gstspider.sgml:
10583         * docs/gst/tmpl/gstspideridentity.sgml:
10584         * docs/gst/tmpl/gststructure.sgml:
10585         * docs/gst/tmpl/gstsystemclock.sgml:
10586         * docs/gst/tmpl/gsttag.sgml:
10587         * docs/gst/tmpl/gsttaginterface.sgml:
10588         * docs/gst/tmpl/gsttee.sgml:
10589         * docs/gst/tmpl/gstthread.sgml:
10590         * docs/gst/tmpl/gsttrace.sgml:
10591         * docs/gst/tmpl/gsttrashstack.sgml:
10592         * docs/gst/tmpl/gsttypefind.sgml:
10593         * docs/gst/tmpl/gsttypes.sgml:
10594         * docs/gst/tmpl/gsturi.sgml:
10595         * docs/gst/tmpl/gsturitype.sgml:
10596         * docs/gst/tmpl/gstutils.sgml:
10597         * docs/gst/tmpl/gstvalue.sgml:
10598         * docs/gst/tmpl/gstversion.sgml:
10599         * docs/gst/tmpl/gstxml.sgml:
10600         * docs/gst/tmpl/gstxmlregistry.sgml:
10601         * docs/gst/tmpl/gthread-cothreads.sgml:
10602         * docs/gst/tmpl/types.sgml:
10603
10604 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10605
10606         * docs/pwg/other-sink.xml:
10607         * docs/pwg/other-source.xml:
10608           Documentation on how to write source and sink elements. Other
10609           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
10610           manager, autoplugger) are all still pending.
10611
10612 2004-03-25  Benjamin Otte  <otte@gnome.org>
10613
10614         * testsuite/elements/Makefile.am:
10615         * testsuite/elements/gst-compprep-check:
10616           add check to make sure gst-compprep works
10617         * testsuite/elements/gst-inspect-check.in:
10618           improve initialization output
10619         * testsuite/Makefile.am:
10620         * testsuite/gst-inspect-check:
10621           remove old file
10622
10623 2004-03-24  David Schleef  <ds@schleef.org>
10624
10625         * testsuite/elements/Makefile.am:
10626         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
10627         to the testsuite.
10628
10629 2004-03-24  Benjamin Otte  <otte@gnome.org>
10630
10631         * libs/gst/control/dparam.c: (gst_dparam_attach),
10632         (gst_dparam_detach):
10633         * libs/gst/control/dparammanager.c: (gst_dpman_init):
10634           fix lvalue casts for real
10635
10636 2004-03-24  Benjamin Otte  <otte@gnome.org>
10637
10638         * gst/schedulers/gstbasicscheduler.c:
10639         (gst_basic_scheduler_src_wrapper):
10640         * gst/schedulers/gstoptimalscheduler.c:
10641         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
10642         (pad_clear_queued), (gst_opt_scheduler_add_element),
10643         (gst_opt_scheduler_remove_element):
10644           fix GStreamer to not have issues with lvalue casts anymore (fixes
10645           #136841)
10646
10647 2004-03-24  Benjamin Otte  <otte@gnome.org>
10648
10649         * gst/gstelement.c:
10650           add documentation about a gobject quirk where the object hasn't the
10651           correct class pointer set on initialization
10652         * gst/schedulers/gstbasicscheduler.c:
10653         (gst_basic_scheduler_src_wrapper):
10654           make sure to not run into an infinite loop
10655
10656 2004-03-22  Benjamin Otte  <otte@gnome.org>
10657
10658         * gst/gstutils.c: (gst_util_dump_mem):
10659         * gst/gstutils.h:
10660           first argument of gst_util_dump_mem should be const
10661
10662 2004-03-22  Johan Dahlin  <johan@gnome.org>
10663
10664         * gst/gstvalue.h: Clean up a little bit.
10665
10666 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
10667
10668         reviewed by Benjamin Otte  <otte@gnome.org>
10669
10670         * gst/autoplug/gstspider.c: (gst_spider_dispose):
10671         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
10672         (gst_aggregator_class_init), (gst_aggregator_init):
10673         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10674         (gst_filesrc_dispose), (gst_filesrc_set_location):
10675         * gst/elements/gstidentity.c: (gst_identity_finalize),
10676         (gst_identity_class_init), (gst_identity_chain):
10677         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
10678         * gst/elements/gststatistics.c: (gst_statistics_finalize),
10679         (gst_statistics_class_init):
10680         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
10681         (gst_tee_get_property):
10682           clean up used memory in this elements correctly on teardown (closes
10683           #137279)
10684
10685 2004-03-20  Colin Walters  <walters@redhat.com>
10686
10687         * gst/registries/gstxmlregistry.c:
10688         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
10689         registry saving atomic.
10690
10691 2004-03-20  Colin Walters  <walters@redhat.com>
10692
10693         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
10694         Just use
10695         access() instead of actually creating and deleting files.
10696
10697 2004-03-18  David Schleef  <ds@schleef.org>
10698
10699         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
10700         (bug #137625)
10701
10702 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10703
10704         * po/sv.po: updated translation (Christian Rose)
10705
10706 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10707
10708         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
10709         (gst_filesink_get_query_types), (_do_init),
10710         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
10711           return FALSE silently
10712         * po/af.po: updated translation (Petri Jooste)
10713
10714 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10715
10716         * Makefile.am:
10717         * configure.ac:
10718           dist common properly
10719         * po/af.po:
10720         * po/fr.po:
10721         * po/nl.po:
10722         * po/sr.po:
10723         * po/sv.po:
10724           refreshing translations
10725
10726 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10727
10728         * po/LINGUAS:
10729         * po/sv.po:
10730         * po/af.po:
10731           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
10732
10733 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10734
10735         * Makefile.am: use common/release.mak
10736
10737 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10738
10739         * docs/faq/gst-uninstalled:
10740           adding gst-monkeysaudio to the list of possible plugin dirs
10741
10742 2004-03-16  David Schleef  <ds@schleef.org>
10743
10744         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
10745         (gst_init_check_with_popt_table):  Fix some gettext strings to
10746         make them easier to translate.  Required making the strings
10747         non-const.
10748
10749 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10750
10751         * configure.ac: bump nano to 1
10752
10753 === release 0.8.0 ===
10754
10755 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10756
10757         * configure.ac: release 0.8.0, "Executive Slacks"
10758
10759 2004-03-16  Johan Dahlin  <johan@gnome.org>
10760
10761         * gst/schedulers/gstoptimalscheduler.c
10762         (gst_opt_scheduler_pad_unlink): Remove double ;,
10763         spotted by Scott Wheeler
10764
10765 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10766
10767         * configure.ac: bump libtool version
10768
10769 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10770
10771         * gst/gstcaps.h:
10772         * gst/gststructure.h:
10773           add reserved padding
10774
10775 2004-03-15  Benjamin Otte  <otte@gnome.org>
10776
10777         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10778           set the first parameter for select call correctly.
10779           (fixes #137230)
10780
10781 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10782
10783         * *.c,*.h: don't mix tabs and spaces
10784
10785 2004-03-15  Johan Dahlin  <johan@gnome.org>
10786
10787         * gst/schedulers/gstoptimalscheduler.c
10788         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
10789         crash on MPEG playback. My boolean arithmetic is a bit rusty.
10790
10791         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
10792         
10793 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10794
10795         * testsuite/Rules:
10796           fix gst-register rules
10797
10798 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10799
10800         * testsuite/Rules:
10801           use versioned gst-register
10802
10803 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10804
10805         * docs/libs/gstreamer-libs-sections.txt:
10806           remove </SUBSECTION>
10807         * gst/gstplugin.c:
10808         * gst/gstregistry.c: (gst_registry_add_plugin):
10809         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
10810         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
10811           add debugging and fix some comment blocks
10812
10813 2004-03-15  Johan Dahlin  <johan@gnome.org>
10814
10815         * *.h: Revert indent changes.
10816         
10817 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10818
10819         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
10820           g_error_free the g_error
10821         * tools/gst-feedback-m.m:
10822           check for other versions of gstreamer
10823         * tools/gst-indent:
10824           use sh, not bash
10825
10826 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10827
10828         * tools/gst-register.c: do not spill paths when registries are not
10829           writable, until we fix the "user running gst-register" case.
10830
10831 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10832
10833         * *.c, *.h: commit of gst-indent run on core
10834
10835 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10836
10837         * tools/gst-indent:
10838         * tools/Makefile.am:
10839           add our indentation style as a script
10840
10841 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10842
10843         * po/sr.po:
10844         * po/LINGUAS:
10845           added Serbian translation
10846
10847 2004-03-13  Benjamin Otte  <otte@gnome.org>
10848
10849         * gst/gstelement.c:
10850           add documentation note about gst_element_found_tags_for_pad not
10851           being usable in getfunctions. (see #137042)
10852
10853 2004-03-12  David Schleef  <ds@schleef.org>
10854
10855         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
10856         change API right now!  Readd gst_caps_is_simple() macro.
10857         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
10858         uninitialized variable.  I'd bet this caused crashes.
10859         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
10860
10861 2004-03-12  Johan Dahlin  <johan@gnome.org>
10862
10863         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
10864         * gst/gstcaps.h: Clean up
10865
10866         * gst/gst.c (init_post): call gst_caps_get_type() instead of
10867         _gst_caps_initalize()
10868
10869         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
10870         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
10871
10872         * gst/gststructure.c (gst_structure_get_type): Ditto
10873
10874         * gst/gststructure.h: Ditto
10875         
10876 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10877
10878         * gst/gstqueue.c: (gst_queue_init):
10879           Reset default max. values in queues. Reason is simply to avoid
10880           braindead use. If you want wider values, use the properties. The
10881           default is supposed to always work. Wider values would make this
10882           beast a memory hog by default (250 full-PAL RGB32 video frames?
10883           That's 440 MB! No thank you).
10884
10885 2004-03-10  David Schleef  <ds@schleef.org>
10886
10887         * tools/gst-run.c: (main):  Fix crash when no relevant tools
10888         were found.  (bug #136793)
10889
10890 2004-03-10  Johan Dahlin  <johan@gnome.org>
10891
10892         * gst/schedulers/gstoptimalscheduler.c
10893         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
10894         links to elements within the same group, so we can finally remove
10895         that annoying warning. Refactor the code a little bit
10896         (group_dec_links_for_element): Split out
10897
10898 2004-03-09  David Schleef  <ds@schleef.org>
10899
10900         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
10901         (bug #134863)
10902
10903 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10904
10905         * configure.ac: first bug fix due to major/minor bump
10906
10907 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10908
10909         * configure.ac: bump nano to 1
10910
10911 === release 0.7.6 ===
10912
10913 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10914
10915         * NEWS:
10916         * RELEASE:
10917         * configure.ac:
10918           releasing 0.7.6, "Almost"
10919         * po/fr.po:
10920         * po/nl.po:
10921         * tools/Makefile.am:
10922         * tools/gst-feedback-m.m:
10923           unversioned source
10924
10925 2004-03-09  Johan Dahlin  <johan@gnome.org>
10926
10927         Reviewed by: Thomas Vander Stichele
10928
10929         * gst/gstelement.c (gst_element_class_init): register second
10930         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
10931         language bindings can (de)marshall correctly.
10932
10933         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
10934
10935         * gst/gsterror.c (gst_g_error_get_type): New function
10936
10937         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
10938         with VOID:OBJECT,OBJECT,STRING 
10939
10940 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
10941
10942         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
10943         Free a leaked g_timer on early returns.
10944
10945 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10946
10947         * docs/pwg/advanced-types.xml:
10948           Add cinepak description.
10949
10950 2004-03-07  David Schleef  <ds@schleef.org>
10951
10952         * docs/random/mimetypes:  Added cinepak description
10953
10954 2004-03-07  Andy Wingo  <wingo@pobox.com>
10955
10956         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
10957
10958         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
10959         there are no links to other groups when a group is destroyed.
10960         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
10961         removed from a group, make sure the link count to elements linked
10962         to other pads is appropriately decremented. This really fixes
10963         #135672.
10964
10965         The 1.60->1.61 patch has been reapplied in light of this fix.
10966
10967         * gst/gstelement.c (gst_element_dispose): Really protect against
10968         multiple invocations this time.
10969
10970 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10971
10972         * docs/gst/gstreamer-sections.txt:
10973         * docs/gst/tmpl/gsttag.sgml:
10974           remove some deprecated functions, document some existing ones
10975         * gst/gsttag.c: (gst_tag_get_flag):
10976         * gst/gsttag.h:
10977           add accessor function
10978
10979 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10980
10981         * docs/gst/gstreamer-sections.txt:
10982         * docs/gst/tmpl/gsttag.sgml:
10983         * docs/gst/tmpl/gstxml.sgml:
10984         * gst/gsttag.c: (gst_tag_get_flag):
10985         * gst/gsttag.h:
10986
10987 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
10988
10989         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
10990         leak
10991
10992 2004-03-05  David Schleef  <ds@schleef.org>
10993
10994         * REQUIREMENTS: Add bison and flex.
10995         * configure.ac: Fix comment about bison.
10996         * docs/random/ds/0.9-suggested-changes: yer ma
10997         * tools/gst-inspect.c: (print_element_info):  Fix warning.
10998
10999 2004-03-05  Benjamin Otte  <otte@gnome.org>
11000
11001         * gst/gstelement.c: (gst_element_error_full):
11002           revert recent recursive state changing commit - messing with other
11003           elements' states is evil and should be done by apps only.
11004
11005 2004-03-05  Benjamin Otte  <otte@gnome.org>
11006
11007         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
11008           check for empty intersection instead of NULL caps
11009         (gst_element_get_compatible_pad_filtered):
11010           remove old workaround that is only a bug nowadays
11011
11012 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11013
11014         * gst/gstelement.c: (gst_element_error_full):
11015           make elements try to recursively change state to PAUSED on all
11016           parents after an error to suppress ensuing warnings
11017         * gst/parse/grammar.y:
11018           make it check if it was able to sync the state, and throw an error
11019           if not, so stuff like
11020           oggdemux ! vorbisdec ! osssink gets caught
11021
11022 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11023
11024         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
11025           it contains lib64; use AS_AC_EXPAND to handle it properly
11026
11027 2004-03-05  David Schleef  <ds@schleef.org>
11028
11029         * gst/gstcpuid_i386.s:  Remove unused code
11030         * libs/gst/getbits/getbits.c: (gst_getbits_init),
11031         (gst_getbits_newbuf): Remove MMX code
11032         * libs/gst/getbits/getbits.h: Remove MMX code
11033
11034 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
11035
11036         * debian/.cvsignore:
11037         * debian/README.Debian:
11038         * debian/changelog:
11039         * debian/control:
11040         * debian/control.in:
11041         * debian/copyright:
11042         * debian/gstreamer-core-libs-dev.files:
11043         * debian/gstreamer-core-libs.files:
11044         * debian/gstreamer-core.files:
11045         * debian/gstreamer-core.postinst:
11046         * debian/gstreamer-core.postrm:
11047         * debian/gstreamer-doc.files:
11048         * debian/gstreamer-doc.links:
11049         * debian/gstreamer-doc.lintian:
11050         * debian/gstreamer-runtime.files:
11051         * debian/gstreamer-runtime.manpages:
11052         * debian/gstreamer-runtime.postinst:
11053         * debian/gstreamer-runtime.postrm:
11054         * debian/gstreamer-tools.files:
11055         * debian/gstreamer-tools.manpages:
11056         * debian/libgstreamer-dev.files:
11057         * debian/libgstreamer0.4.1.files:
11058         * debian/libgstreamerVERSION.files:
11059         * debian/rules:
11060         Debian package info not maintained here.
11061
11062 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11063
11064         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11065         * gst/gstbin.c: (gst_bin_class_init):
11066         * gst/gstelement.c: (gst_element_class_init):
11067         * gst/gstindex.c: (gst_index_class_init):
11068         * gst/gstobject.c: (gst_object_class_init),
11069         (gst_signal_object_class_init):
11070         * gst/gstpad.c: (gst_pad_template_class_init):
11071         * gst/gstregistry.c: (gst_registry_class_init):
11072         * gst/gsturi.c: (gst_uri_handler_base_init):
11073         * gst/gstxml.c: (gst_xml_class_init):
11074         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11075         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
11076           make all signal names use dashes instead of underscore
11077
11078 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11079
11080         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
11081
11082 2004-03-03  Benjamin Otte  <otte@gnome.org>
11083
11084         * gst/schedulers/gstoptimalscheduler.c:
11085           revert last commit by Andy Wingo. It causes segfaults on unreffing
11086           in Rhythmbox. (see bug #135672)
11087
11088 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11089
11090         * po/fr.po: fix typo
11091
11092 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11093
11094         * tools/gst-inspect.c: (main): 
11095         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
11096
11097 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11098
11099         * configure.ac:
11100           get GLIB_ONLY and POPT flags for the nonversioned binaries
11101         * tools/Makefile.am:
11102           use them
11103
11104 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11105
11106         * gst/gst.c: (init_post):
11107           change so that GST_REGISTRY now is where the global registry gets
11108           saved, since that is where plugins now get attached to first, and
11109           spilled over to the user registry.  Note that in the case of using
11110           GST_REGISTRY env var, we don't want to affect any real registries
11111           beyond the one given by this var, and thus we don't set a user
11112           registry to spill to.  So make sure GST_REGISTRY is writable.
11113
11114 2004-03-01  David Schleef  <ds@schleef.org>
11115
11116         * AUTHORS:  Added some names.  Add yourself if you're missing.
11117
11118 2004-03-01  David Schleef  <ds@schleef.org>
11119
11120         * MAINTAINERS: Add
11121
11122 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
11123
11124         * configure.ac:
11125           remove whitespace
11126         * docs/gst/tmpl/gstbuffer.sgml:
11127         * docs/gst/tmpl/gstdata.sgml:
11128         * docs/gst/tmpl/gstreamer-unused.sgml:
11129         * docs/gst/tmpl/gstxml.sgml:
11130           doc update
11131         * docs/manuals.mak:
11132           add a FIXME
11133         * docs/pwg/intro-preface.xml:
11134         * docs/pwg/pwg.xml:
11135           remove GNOME
11136         * gst/gst.c: (init_post):
11137           try GST_PLUGIN_PATH paths for the _global_registry first
11138         * gst/gstelement.h:
11139           add the error message as well, otherwise (null) debug info doesn't
11140           make much sense
11141         * tools/gst-register.c: (main):
11142           spill paths to next registry if this registry is not writable
11143         * po/fr.po:
11144         * po/nl.po:
11145           translation updates
11146
11147 2004-03-01  Johan Dahlin  <johan@gnome.org>
11148
11149         * gst/gstbuffer.c (_gst_buffer_initialize): 
11150         * gst/gstdata.c (gst_data_get_type): 
11151         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
11152         instead of ref, since some applications that uses GBoxed
11153         routines depends on a function that actually returns a copy.
11154
11155 2004-02-27  Benjamin Otte  <otte@gnome.org>
11156
11157         * gst/gstbuffer.h:
11158           remove gst_buffer_free, use gst_data_unref
11159         * gst/gstdata.c: (gst_data_get_type):
11160           use refcounting in GstData GBoxed registration
11161         * gst/gstdata.h:
11162           remove gst_data_free, use gst_data_unref
11163
11164 2004-02-27  Johan Dahlin  <johan@gnome.org>
11165
11166         * gst/gstdata.c (gst_data_get_type): New function, register
11167         GstData as a GBoxed type.
11168
11169         * gst/gstdata.h (GST_TYPE_DATA): New macro
11170
11171 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
11172
11173         * Makefile.am:
11174         * gstreamer.spec.in:
11175           put back RELEASE
11176         * gst/Makefile.am:
11177           clean up non-disting of built files
11178         * testsuite/debug/commandline.c:
11179           test fix for option rename
11180
11181 2004-02-26  David Schleef  <ds@schleef.org>
11182
11183         * configure.ac:  We don't really need glib-2.3.  Also remove
11184         some unneeded checks for library functions.
11185         * gst/Makefile.am:  Instead, we need to not dist files created
11186         by glib-genmarshal.
11187
11188 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11189
11190         * configure.ac:
11191           bump glib required version to 2.3.0 for g_value_takes_boxed
11192
11193  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
11194
11195         * common/m4/gst-docs.m4
11196         change flavour text from enable to disable as enable is our default
11197         closes bug Bug 135304
11198
11199 === release 0.7.5 ===
11200  
11201  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11202  
11203         * NEWS:
11204           instate NEWS file
11205         * Makefile.am:
11206         * gstreamer.spec.in:
11207         * RELEASE:
11208           put back release
11209         * configure.ac:
11210         * docs/random/release:
11211           more updates
11212
11213 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11214
11215         * gst/gsttag.c: (_gst_tag_initialize):
11216         * po/fr.po:
11217         * po/nl.po:
11218           remove hyphen from codec tags
11219
11220 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11221
11222         * gst/parse/Makefile.am:
11223           fix dependency so that a make from a clean build works the first
11224           time
11225
11226 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11227
11228         * docs/random/release:
11229           update release strategy
11230         * po/fr.po:
11231           auto-update po file
11232         * po/nl.po:
11233           update dutch translation
11234
11235 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11236
11237         * docs/manual/debugging.xml:
11238         fix manual for new debugging system
11239
11240 2004-02-25  Andy Wingo  <wingo@pobox.com>
11241
11242         * gst/gstpad.c (gst_pad_link_prepare): Re-add
11243         gst_pad_link_prepare. Please email the list with specific reasons
11244         for reverting.
11245
11246 2004-02-24  Andy Wingo  <wingo@pobox.com>
11247
11248         * gst/gstelement.c (gst_element_dispose): Protect against multiple
11249         invocations.
11250
11251         * gst/schedulers/gstoptimalscheduler.c:
11252         I added a mess of prototypes at the top of the file by way of
11253         documentation. Some of the operations on chains and groups were
11254         re-organized.
11255
11256         (create_group): Added a type argument so if the group is enabled,
11257         the setup_group_scheduler knows what to do.
11258         (group_elements): Added a type argument here, too, to be passed on
11259         to create_group.
11260         (group_element_set_enabled): If an unlinked PLAYING element is
11261         added to a bin, we have to create a new group to hold the element,
11262         and this function will be called before the group is added to the
11263         chain. Thus we have a valid case for group->chain==NULL. Instead
11264         of calling chain_group_set_enabled, just set the flag on the group
11265         (the chain's status will be set when the group is added to it).
11266         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
11267         Setup the group scheduler when the group is enabled, not
11268         specifically when an element goes PAUSED->PLAYING. This means
11269         PLAYING elements can be added, linked, and scheduled into a
11270         PLAYING pipeline, as was intended.
11271         (add_to_group): Don't ref the group twice. I don't know when this
11272         double-ref got in here. Removing it has the potential to cause
11273         segfaults if other parts of the scheduler are buggy. If you find
11274         that the scheduler is segfaulting for you, put in an extra ref
11275         here and see if that hacks over the underlying issue. Of course,
11276         then find out what code is unreffing a group it doesn't own...
11277         (create_group): Make the extra refcount floating, and remove it
11278         after adding the element. This means that...
11279         (unref_group): Destroy when the refcount reaches 0, not 1, like
11280         every other refcounted object in the known universe.
11281         (remove_from_group): When a group becomes empty, set it to be not
11282         active, and remove it from its chain. Don't unref it again,
11283         there's no floating reference any more.
11284         (destroy_group): We have to remove the group from the chain in
11285         remove_from_group (rather than here) to break refcounting cycles
11286         (the chain always has a ref on the group). So assert that
11287         group->chain==NULL.
11288         (ref_group_by_count): Removed, it was commented out anyway.
11289         (merge_chains): Use the remove_from_chain and add_to_chain
11290         primitives to do the reparenting, instead of rolling our own
11291         implementation.
11292         (add_to_chain): The first non-disabled group in the chain's group
11293         list will be the entry point for the chain. Because buffers can
11294         accumulate in loop elements' peer bufpens, we preferentially
11295         schedule loop groups before get groups to avoid unnecessary
11296         execution of get-based groups when the bufpens are already full.
11297         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
11298         (get_group_schedule_function): Ditto.
11299         (loop_group_schedule_function): Ditto.
11300         (gst_opt_scheduler_loop_wrapper): Ditto.
11301         (gst_opt_scheduler_iterate): Ditto.
11302
11303         I understand the opt scheduler now, yippee!
11304
11305         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
11306         (gst_pad_get_name, gst_pad_set_chain_function) 
11307         (gst_pad_set_get_function, gst_pad_set_event_function) 
11308         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
11309         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
11310         (gst_pad_set_query_function, gst_pad_get_query_types) 
11311         (gst_pad_get_query_types_default) 
11312         (gst_pad_set_internal_link_function) 
11313         (gst_pad_set_formats_function, gst_pad_set_link_function) 
11314         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
11315         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
11316         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
11317         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
11318         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
11319         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
11320         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
11321         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
11322         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
11323         (gst_pad_event_default_dispatch, gst_pad_event_default) 
11324         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
11325         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
11326         (gst_pad_get_formats_default, gst_pad_get_formats): Better
11327         argument checks, and some doc fixes.
11328
11329         (gst_pad_custom_new_from_template): Um, does anyone
11330         use these functions? Actually make a custom pad instead of a
11331         normal one.
11332         (gst_pad_try_set_caps): Transpose some checks.
11333         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
11334         the pad is in negotiation.
11335         (gst_pad_try_relink_filtered): Use pad_link_prepare.
11336         
11337         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
11338
11339         * gst/gstelement.h: 
11340         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
11341         on the list.
11342
11343 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11344
11345         * gst/gstbin.c: (gst_bin_add):
11346           add error for not being able to add elements
11347
11348 2004-02-22  Julien MOUTTE <julien@moutte.net>
11349
11350         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
11351         audio-codec and video-codec.
11352
11353 2004-02-22  Benjamin Otte  <otte@gnome.org>
11354
11355         reported by: Padraig O'Briain <padraig.obriain@sun.com>
11356
11357         * autogen.sh:
11358           replace test -e with test -x for mkinstalldirs to be more portable.
11359           (fixes #134816)
11360
11361 2004-02-22  Benjamin Otte  <otte@gnome.org>
11362
11363         * gst/gstpad.c:
11364           revert last patch from Andy, it makes gst_pad_can_link_filtered much
11365           too noisy
11366         * gst/gsttag.c: (_gst_tag_initialize):
11367         * gst/gsttag.h:
11368           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
11369         * libs/gst/control/dparam.c: (gst_dparam_attach):
11370         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
11371           check that types for attached dparams match
11372
11373 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11374
11375         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
11376         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11377         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11378           fix errors
11379
11380 2004-02-20  Andy Wingo  <wingo@pobox.com>
11381
11382         * gst/gstbin.c:
11383         * gst/gstbuffer.c:
11384         * gst/gstplugin.c:
11385         * gst/registries/gstxmlregistry.c: 
11386         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
11387
11388         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
11389         (gst_element_add_pad): DEBUG->INFO, some fixes.
11390         (gst_element_get_compatible_pad_template): Just see if the
11391         templates' caps intersect, not if one is a strict subset of the
11392         other. This conforms more to what gst_pad_link_intersect() does.
11393         (gst_element_class_add_pad_template): Don't memcpy the pad
11394         template, just ref it.
11395         (gst_element_get_compatible_pad_filtered): Clean up debug messages
11396
11397         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
11398         (gst_pad_link_filtered): Debug changes.
11399         (gst_pad_link_prepare): New function, consolidated from
11400         can_link_filtered and link_filtered.
11401
11402         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
11403         look more like that of the functions in gstelement.c
11404
11405         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
11406         object, and return the empty string if object is NULL.
11407
11408         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
11409         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
11410         LOG, not DEBUG. We still get flex info on debug.
11411
11412         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
11413         debug string more verbose.
11414         (plugin_times_older_than): DEBUG->LOG.
11415
11416 2004-02-20  Julien MOUTTE <julien@moutte.net>
11417
11418         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
11419         will emit found_tag for each stream they demux with the codec.
11420
11421 2004-02-20  Benjamin Otte  <otte@gnome.org>
11422
11423         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
11424           copy navigation event correctly. Check freeing tag lists. 
11425         * gst/gstthread.c: (gst_thread_change_state):
11426           don't abort() on state changing mess - it might happen because of
11427           bugs.
11428         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
11429           use boxed functions
11430         * gst/gstvalue.h:
11431           fix GST_VALUE_HOLDS_CAPS
11432
11433 2004-02-19  David Schleef  <ds@schleef.org>
11434
11435         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
11436         and use it for GST_FUNCTION.  (bug #134750)
11437
11438 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11439
11440         * po/fr.po:
11441         * po/nl.po:
11442           updating translations
11443
11444 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11445
11446         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
11447
11448 2004-02-18  kost@imn.htwk-leipzig.de
11449
11450         reviewed by: David Schleef  <ds@schleef.org>
11451
11452         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
11453         for libgstcontrol.
11454
11455 2004-02-18  David Schleef  <ds@schleef.org>
11456
11457         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11458         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11459         (gst_dpsmooth_new): Additional fixes to get double dparams working.
11460         * tools/gst-inspect.c: (print_element_info): Support dumping of
11461         double dparam information.
11462
11463 2004-02-17  David Schleef  <ds@schleef.org>
11464
11465         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11466         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
11467         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
11468         Use GST_TYPE_CAPS in signal prototype.
11469         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
11470         Convert GST_TYPE_CAPS to boxed.
11471         * gst/gstelement.c: (gst_element_class_init):
11472         Use GST_TYPE_TAG_LIST in signal prototype.
11473         * gst/gstindex.c: (gst_index_class_init):
11474         * gst/gstindex.h:
11475         Add GST_TYPE_INDEX_ENTRY type.
11476         * gst/gstmarshal.list:
11477         Add necessary marshal types.
11478         * gst/gstpad.c: (gst_real_pad_class_init),
11479         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
11480         (gst_pad_recover_caps_error):
11481         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
11482         * gst/gststructure.c: (_gst_structure_initialize),
11483         (gst_structure_copy), (_gst_structure_copy_conditional):
11484         * gst/gststructure.h:
11485         Convert GST_TYPE_STRUCTURE to boxed.
11486         * gst/gsttag.c: (gst_tag_list_get_type):
11487         * gst/gsttag.h:
11488         Add GST_TYPE_TAG_LIST type.
11489
11490 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11491
11492         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
11493         to what we agreed with david.
11494         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
11495
11496 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11497
11498         * po/nl.po: update translation
11499
11500 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11501
11502         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
11503           throw an error if spider is trying to play a mime type there is
11504           no decoder for
11505         * po/POTFILES.in:
11506           add gst/autoplug/gstspider.c for translation
11507
11508 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11509
11510         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
11511         silently when the pad is negotiating.
11512
11513 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11514
11515         * docs/faq/Makefile.am:
11516           add script to run gstreamer uninstalled 
11517         * docs/faq/faq.xml:
11518         * docs/faq/developing.xml:
11519         * docs/faq/gst-uninstalled:
11520           extract script to run gstreamer uninstalled
11521         * docs/manuals.mak:
11522           add EXTRA_SOURCES variable for Makefile.am's to set to
11523           use additional SOURCE files for the doc build
11524
11525 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11526
11527         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
11528
11529 2004-02-15  Julien MOUTTE  <julien@moutte.net>
11530
11531         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
11532         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
11533         an error was thrown by osssink. Basically a state change failure for
11534         an element in a different scheduling group was considered as
11535         successful, which means that caps nego was going on and weird stuff
11536         happened. Like I wrote in the comment there, if someone wants to
11537         revert that please drop me a mail explaining why because I really see
11538         no point in keeping that broken behaviour there.
11539         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
11540         be empty, we then return NULL which will trigger a nice error when 
11541         pulling from the pad.
11542
11543 2004-02-13  David Schleef  <ds@schleef.org>
11544
11545         * libs/gst/control/dparam.c: (gst_dparam_class_init),
11546         (gst_dparam_get_property), (gst_dparam_set_property),
11547         (gst_dparam_do_update_default):
11548         * libs/gst/control/dparam.h:
11549         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11550         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
11551         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
11552         (gst_dpsmooth_do_update_double):
11553         * libs/gst/control/dparam_smooth.h:
11554         * libs/gst/control/dparammanager.c:
11555         (gst_dpman_inline_direct_update):
11556         Add support for double dparams.
11557
11558 2004-02-13  David Schleef  <ds@schleef.org>
11559
11560         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
11561         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
11562
11563 2004-02-13  Mattias Wadman  <mattias@sudac.org>
11564
11565         reviewed by: David Schleef  <ds@schleef.org>
11566
11567         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
11568         (gst_fdsrc_init), (gst_fdsrc_set_property),
11569         (gst_fdsrc_get_property), (gst_fdsrc_get):
11570         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
11571         and sends an EOS event if file descriptor reading times out.
11572
11573 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11574
11575         * configure.ac:
11576           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
11577
11578 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11579
11580         * configure.ac: pass required libxml version as argument
11581         (bug reported by Christophe Fergeau)
11582
11583 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11584   
11585         * docs/gst/gstreamer-docs.sgml:
11586         * docs/gst/tmpl/gstxml.sgml:
11587         * docs/libs/gstreamer-libs-docs.sgml:
11588           version API docs
11589
11590 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11591
11592         * gst/gstinfo.c:
11593         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
11594         (gst_registry_pool_feature_filter):
11595         * gst/gstthread.c: (gst_thread_class_init):
11596         * gst/gstvalue.c:
11597           add includes exposed by building without libxml
11598         * gst/indexers/Makefile.am:
11599           do not build fileindex when LOADSAVE disabled; we should have
11600           a better libxml check later since fileindex depends on xml, not
11601           LOADSAVE or REGISTRY
11602         * libs/gst/control/Makefile.am:
11603           link with m
11604         * tools/Makefile.am:
11605           fix wrong source code for gst-xmlinspect
11606
11607 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11608
11609         * configure.ac:
11610           fix gcov help output
11611           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
11612         * docs/random/release:
11613           some updated releasing notes
11614         * gstreamer.spec.in:
11615           more updates
11616
11617 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11618
11619         * docs/faq/faq.xml:
11620         * docs/manual/manual.xml:
11621         * docs/pwg/pwg.xml:
11622         * docs/pwg/titlepage.xml:
11623           put version in documentation
11624
11625 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11626
11627         * tools/Makefile.am: fix man page installation
11628
11629 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11630
11631         * configure.ac:
11632           don't check for libxml when load/save and registry disabled (#105844)
11633         * gstreamer.spec.in:
11634           sync with fedora candidate spec
11635
11636 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11637
11638         * po/fr.po:
11639         * po/nl.po:
11640           replace multidisksrc with multifilesrc
11641
11642 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11643
11644         * po/POTFILES.in:
11645           update to multidisksrc => multifilesrc file renaming (#134145)
11646
11647 2004-02-11  David Schleef  <ds@schleef.org>
11648
11649         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
11650         * docs/gst/tmpl/gstpadtemplate.sgml: same
11651         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
11652         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
11653         fixing dance.
11654         * gst/gstutils.c: Remove disabled code that uses GstProps.
11655         * gst/registries/gstxmlregistry.h: same
11656         * docs/random/ds/0.9-suggested-changes: random notes
11657
11658 2004-02-11  kost@imn.htwk-leipzig.de
11659
11660         reviewed by: David Schleef  <ds@schleef.org>
11661
11662         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
11663         initialisation of clock (bug #134128)
11664
11665 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11666
11667         * configure.ac:
11668         * gst/elements/Makefile.am:
11669         * gst/elements/gstelements.c:
11670         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
11671         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
11672         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
11673         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
11674         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
11675         * gst/elements/gstmultifilesrc.h:
11676           rename multidisksrc to multifilesrc (part of #122200)
11677
11678 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11679
11680         * docs/manuals.mak:
11681           fix automake complaints
11682         * gst-element-check.m4:
11683           fix unquotedness
11684
11685 2004-02-11  David Schleef  <ds@schleef.org>
11686
11687         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
11688         * gst/gstatomic_impl.h: Disable sparc implementation.
11689
11690 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11691
11692         * gst-element-check.m4:
11693           fix underquoted macros as reported by automake 1.8.x (#133800)
11694         * configure.ac:
11695           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
11696           by autopoint (fixes #132996)
11697
11698 2004-02-10  Andy Wingo  <wingo@pobox.com>
11699
11700         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
11701         way to do inheritance.
11702         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
11703         (gst_pad_get_query_types, gst_pad_get_query_types_default):
11704         Routine docs.
11705         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
11706         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
11707         doc.
11708         (gst_pad_unlink, gst_pad_is_linked): Docs.
11709         (gst_pad_renegotiate): A brief description of capsnego.
11710         (gst_pad_try_set_caps): Document.
11711         (gst_pad_try_set_caps_nonfixed): Document.
11712         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
11713         (gst_pad_set_parent): Deprecated (although not out of the API).
11714         (gst_pad_get_parent): Deprecated, although many plugins use this.
11715         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
11716         are private and will go away in 0.9.
11717         (gst_pad_perform_negotiate): Doc.
11718         (gst_pad_link_unnegotiate): I think this is meant to be static.
11719         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
11720         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
11721         (gst_pad_get_peer): Doc updates.
11722         (gst_pad_caps_change_notify): Doc.
11723         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
11724         (gst_ghost_pad_new): Doc fixes.
11725
11726         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
11727         (gst_object_check_uniqueness): 
11728
11729         * gst/gstelement.c (gst_element_add_pad) 
11730         (gst_element_add_ghost_pad, gst_element_remove_pad) 
11731         (gst_element_remove_ghost_pad, gst_element_get_pad) 
11732         (gst_element_get_static_pad, gst_element_get_pad_list) 
11733         (gst_element_class_get_pad_template_list) 
11734         (gst_element_class_get_pad_template): Work on the docs.
11735         (gst_element_get_pad_template_list): Uses the class method.
11736         (gst_element_get_compatible_pad_template): Docs, and consolidate
11737         some test conditions. 
11738         (gst_element_get_pad_from_template): New static function.
11739         (gst_element_request_compatible_pad): Docs, and work with
11740         non-request compatible templates. 
11741         (gst_element_get_compatible_pad_filtered): Docs and remove
11742         redundant checks.
11743         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
11744         (gst_element_link_filtered, gst_element_link_many) 
11745         (gst_element_link, gst_element_link_pads) 
11746         (gst_element_unlink_many): Docs.
11747
11748 2004-02-05  Andy Wingo  <wingo@pobox.com>
11749
11750         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
11751         s/pointer/boxed/.
11752
11753         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
11754
11755         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
11756         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
11757         with the type=GST_TYPE_CAPS. This allows language bindings to know
11758         what kind of data they're dealing with.
11759
11760         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
11761         to NULL when g_value_init is called. GstCaps, which rolls its own
11762         type implementation, now does the same instead of allocating empty
11763         caps.
11764         (_gst_caps_initialize, _gst_caps_collect_value,
11765         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
11766         table methods. This allows G_VALUE_COLLECT to work.
11767
11768 2004-02-05  Andy Wingo  <wingo@pobox.com>
11769
11770         * configure.ac:
11771         * testsuite/Makefile.am (SUBDIRS): 
11772         * testsuite/ghostpads/Makefile.am: 
11773         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
11774
11775         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
11776         These two routines are the only ones that set
11777         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
11778         pad template. They should be made static, depending on ABI needs.
11779         (gst_real_pad_dispose): Handle the case of ghost pads without a
11780         parent. Assert after dealing with ghost pads that the ghost pad
11781         list is empty.
11782         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
11783         set after creation.
11784         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
11785         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
11786         functions. set_property will call add_ghost_pad/remove_ghost_pad
11787         as appropriate.
11788         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
11789
11790         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
11791         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
11792         (gst_element_remove_pad): Handle ghost pads as well.
11793         (gst_element_remove_ghost_pad): Deprecated (could be removed,
11794         depending on API-stability needs).
11795
11796 2004-02-05  Andy Wingo  <wingo@pobox.com>
11797
11798         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
11799         of course they're const
11800
11801 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11802
11803         * tools/Makefile.am:
11804         * tools/gst-feedback:
11805         * tools/gst-feedback-0.7:
11806           make gst-feedback versioned too for consistency
11807
11808 2004-02-11  David Schleef  <ds@schleef.org>
11809
11810         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11811         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
11812
11813 2004-02-10  Julien MOUTTE <julien@moutte.net>
11814
11815         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
11816         the structure does not contain a valid tag list. Adding a safety check
11817         to remove a noisy warning in that case.
11818
11819 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
11820
11821         * gst/gst.c: fix name to be in line with others
11822
11823 2004-02-09  Julien MOUTTE <julien@moutte.net>
11824
11825         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
11826         not shout that loud when len is 0. Just return 0 silently.
11827
11828 2004-02-09  Julien MOUTTE  <julien@moutte.net>
11829
11830         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
11831         because data_unref has one and I prefer the debug to be symetric.
11832         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
11833         were refed when added to the queue and unrefed only once when the queue
11834         was flushed. Now the flush handler unref the buffers two times : first
11835         unref for the ref added when pushing in the queue's tail and second
11836         unref to destroy the flushed buffer.
11837
11838 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
11839
11840         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
11841
11842 2004-02-06  David Schleef  <ds@schleef.org>
11843
11844         * docs/random/ds/0.9-suggested-changes: Random ramblings
11845         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
11846         to int before printing.
11847         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
11848         * gst/parse/parse.l: same.  See bug #129600
11849
11850 2004-02-06  David Schleef  <ds@schleef.org>
11851
11852         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
11853         (gst_index_add_entry), (gst_index_add_associationv),
11854         (gst_index_add_association): Add gst_index_add_associationv()
11855         and clean up gst_index_add_association(). #127133
11856
11857 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11858
11859         * autogen.sh: check out common with right tag if CVS/Tag exists
11860
11861 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11862
11863         * testsuite/ghostpads/ghostpads.c: (main):
11864           fix testsuite from segfaulting
11865
11866 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11867
11868         * Makefile.am: add release target
11869         * configure.ac: bump nano to 1
11870         * docs/random/release:
11871
11872 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11873
11874         * gst/gstcaps.h:
11875         * gst/gstelement.c: (gst_element_base_class_init),
11876         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11877         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11878         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11879         (gst_real_pad_dispose):
11880         * gst/gststructure.c: (gst_structure_free),
11881         (gst_structure_from_string):
11882           put reverted patch back in
11883         * gst/gstelement.c: (gst_element_remove_pad):
11884           free explicit caps if they're set
11885         * gst/gstpad.c: (_gst_pad_default_fixate_func):
11886           copy the structure when fixating
11887
11888 2004-02-05  David Schleef  <ds@schleef.org>
11889
11890         * gst/gstmarshal.list:
11891         * gst/gstpad.c: (gst_real_pad_class_init),
11892         (_gst_real_pad_fixate_accumulator):
11893         Revert POINTER->BOXED change in signal marshaller.
11894
11895 === release 0.7.4 ===
11896                                                                                 
11897 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11898                                                                                 
11899         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
11900         * configure.ac: changed for release
11901
11902 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
11903
11904         * gstreamer.spec.in:
11905           bump required version of gtk-doc
11906
11907 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11908
11909         * gst/gstcaps.h:
11910         * gst/gstelement.c: (gst_element_base_class_init),
11911         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11912         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11913         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11914         (gst_real_pad_dispose):
11915         * gst/gststructure.c: (gst_structure_free),
11916         (gst_structure_from_string):
11917           revert patch that breaks applications, reapply after release
11918           to get this fixed properly
11919
11920 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11921
11922         * gst/gsttag.c: (_gst_tag_initialize):
11923         * gst/gsttag.h:
11924           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
11925
11926 2004-02-04  David Schleef  <ds@schleef.org>
11927
11928         Fix some memleaks:
11929         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
11930         (gst_spider_plug_from_srcpad):
11931         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
11932
11933 2004-02-04  David Schleef  <ds@schleef.org>
11934
11935         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
11936         a GstRealPad before accessing its structure members.
11937
11938 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11939
11940         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
11941         (gst_clock_get_speed):
11942         * gst/gstclock.h:
11943           reset padding, remove unused fields
11944
11945 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11946
11947         * gst/autoplug/gstspideridentity.c:
11948         (gst_spider_identity_sink_loop_type_finding):
11949           use get_allowed_caps, not get_caps (fixes #132519)
11950         * gst/elements/gsttypefind.c: (stop_typefinding):
11951           use correct order when sending buffers and seeking
11952
11953 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11954
11955         * configure.ac:
11956         * gst/gstelement.h:
11957         * gst/gstpad.h:
11958         * gst/gstqueue.h:
11959           upgrade libtool CURRENT, reset padding
11960
11961 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11962
11963         * configure.ac:
11964           bump to prerelease
11965           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
11966
11967 2004-02-04  David Schleef  <ds@schleef.org>
11968
11969         * docs/random/ds/0.9-suggested-changes: random notes
11970         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
11971         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
11972         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
11973         expansion.
11974         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
11975         (gst_filesink_get_query_types): same
11976         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
11977         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
11978         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
11979         to use new GST_PTR_FORMAT.
11980         * gst/gstelement.h: deprecate function factory macros
11981         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
11982         These are our last variadic macros that can't be replaced with
11983         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
11984         attempting to deprecate gst_element_clock_wait().
11985         * gst/gstevent.h: same
11986         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11987         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
11988         * gst/gstpad.h: deprecate function factory macros similar to above.
11989
11990 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11991
11992         * configure.ac:
11993         * tools/Makefile.am:
11994         * tools/gst-run.c: (popt_callback), (hash_print_key),
11995         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
11996         (get_candidates), (main):
11997           add new source file to generate non-versioned wrapper binaries
11998           for our tools.
11999
12000 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12001
12002         * gst/gstevent.c: (_gst_event_free):
12003           actually break; inside the switch statement
12004         * gst/parse/grammar.y:
12005           fix memleak where GValues weren't unset
12006
12007 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12008
12009         * gst/gststructure.c: (gst_structure_from_string):
12010           fix huge memleak
12011         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12012         (new_entry), (gst_type_find_element_chain):
12013         * gst/gstelement.c: (gst_element_base_class_init),
12014         (gst_element_class_set_details):
12015         * gst/gstpad.c: (gst_pad_can_link_filtered):
12016           fix smaller memleaks
12017         * gst/gstpad.c: (gst_real_pad_dispose):
12018           check that explicit caps are gone
12019         * gst/gststructure.c: (gst_structure_free):
12020           actually free the structure
12021         * gst/gstelement.c: (gst_element_clear_pad_caps):
12022           unset explicit caps
12023
12024 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12025
12026         * tools/Makefile.am:
12027           use AM_CFLAGS since all the CFLAGS are the same
12028           use AM_LDFAGS
12029
12030 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12031
12032         * docs/manual/gnome.xml:
12033           expand example a little
12034         * gst/gst.c: (gst_init_with_popt_table),
12035         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
12036           make sure popt option displays are done with right textdomain
12037           use GstPoptOption type
12038         * gst/gst.h:
12039           create GstPoptOption type
12040
12041 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12042
12043         * gst/gsterror.c: (_gst_stream_errors_init):
12044         * gst/gsterror.h:
12045           adding error type for no codec
12046         * po/POTFILES.in:
12047           add gst-inspect
12048         * po/nl.po:
12049           update dutch translation
12050         * tools/gst-inspect.c: (print_element_list), (main):
12051           do proper internationalization
12052         * tools/gst-launch.c: (idle_func):
12053           remove commented out function call
12054
12055 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12056
12057         * docs/README:
12058           add some error fixing notes
12059         * docs/gst/gstreamer-sections.txt:
12060           remove double entries
12061         * docs/gst/tmpl/gstbin.sgml:
12062         * docs/gst/tmpl/gstclock.sgml:
12063           remove override
12064         * docs/gst/tmpl/gstelement.sgml:
12065         * docs/gst/tmpl/gstindex.sgml:
12066         * docs/gst/tmpl/gstobject.sgml:
12067         * docs/gst/tmpl/gstpadtemplate.sgml:
12068         * docs/gst/tmpl/gstreamer-unused.sgml:
12069         * docs/gst/tmpl/gsttag.sgml:
12070         * docs/gst/tmpl/gstthread.sgml:
12071         * docs/gst/tmpl/gstxml.sgml:
12072         * gst/gsttag.h:
12073           sync header prototypes with c decls
12074         * gst/gsttaginterface.c:
12075           fix doc headers
12076
12077 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12078
12079         * gst/parse/Makefile.am:
12080         * gst/gstobject.h:
12081           get rid of gstmarshal.h dependency. It's not needed.
12082         * gst/gst.h:
12083         * gst/elements/gstfakesink.c:
12084         * gst/elements/gstfakesrc.c:
12085         * gst/elements/gstidentity.c:
12086         * gst/gstbin.c:
12087         * gst/gstelement.c:
12088         * gst/gstindex.c:
12089         * gst/gstobject.c:
12090         * gst/gstpad.c:
12091         * gst/gstthread.c:
12092         * gst/gstxml.c:
12093         * libs/gst/control/dparam.c:
12094         * libs/gst/control/dparammanager.c:
12095           include gstmarshal.h.
12096         Fixes #132045
12097
12098 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12099
12100         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
12101         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
12102         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
12103         * gst/elements/gstfilesrc.h:
12104           don't ref the filesrc when creating mmaped buffers. Don't keep a
12105           list of not-yet-destroyed buffers.
12106         * gst/gstbuffer.h:
12107           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
12108
12109 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12110
12111         * gst/gst.c: (init_pre):
12112           remove textdomain
12113
12114 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12115
12116         * docs/pwg/advanced-events.xml:
12117         * docs/pwg/advanced-scheduling.xml:
12118         * docs/pwg/intro-basics.xml:
12119         * docs/pwg/other-manager.xml:
12120         * docs/pwg/other-nton.xml:
12121         * docs/pwg/other-ntoone.xml:
12122         * docs/pwg/other-oneton.xml:
12123         * docs/pwg/pwg.xml:
12124           All sort of documentation... Forgot what. Point is that I want this
12125           in before I leave. The 'other-*' will be the last section and will
12126           explain issues specific to these type of elements.
12127
12128 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12129
12130         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12131         (gst_filesrc_get_read):
12132           set all the values on buffers that we can
12133
12134 2004-02-02  David Schleef  <ds@schleef.org>
12135
12136         Change usage of isblah() to g_ascii_isblah() to be more locale
12137         independent.  (#133076)
12138         * gst/gsturi.c: (gst_uri_protocol_check_internal):
12139         * gst/gstutils.c:
12140         * gst/parse/parse.l:
12141
12142 2004-02-02  Jon Trowbridge  <trow@gnu.org>
12143
12144         reviewed by: David Schleef  <ds@schleef.org>
12145
12146         Fix memory leaks:
12147         * gst/gstcaps.c: (gst_caps_to_string):
12148         * gst/registries/gstxmlregistry.c:
12149         (gst_xml_registry_add_path_list_func),
12150         (gst_xml_registry_parse_padtemplate):
12151
12152 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12153
12154         * gst/gstelement.c: (gst_element_default_error):
12155           suffix error messages with period
12156
12157 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12158
12159         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12160         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12161         * gst/gsterror.c: (gst_error_get_message):
12162           Suffix with dots
12163         * po/fr.po:
12164         * po/nl.po:
12165           Update translation files
12166
12167 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12168
12169         * gst/autoplug/gstspideridentity.c:
12170         (gst_spider_identity_sink_loop_type_finding):
12171         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12172         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12173         (gst_filesink_close_file), (gst_filesink_handle_event),
12174         (gst_filesink_chain):
12175         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12176         (gst_filesrc_get_read), (gst_filesrc_open_file):
12177         * gst/elements/gstidentity.c: (gst_identity_chain):
12178         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12179         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12180         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12181         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12182         * gst/gsterror.c: (_gst_core_errors_init),
12183         (_gst_library_errors_init), (_gst_resource_errors_init),
12184         (_gst_stream_errors_init), (gst_error_get_message):
12185         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12186         (gst_pad_recover_caps_error), (gst_pad_pull):
12187         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12188         * gst/schedulers/gstbasicscheduler.c:
12189         (gst_basic_scheduler_chainhandler_proxy),
12190         (gst_basic_scheduler_gethandler_proxy),
12191         (gst_basic_scheduler_cothreaded_chain):
12192           Suffix error messages with period.
12193           Use (NULL) instead of NULL
12194
12195 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12196
12197         * docs/gst/tmpl/gstelement.sgml:
12198         * docs/gst/tmpl/gstxml.sgml:
12199         * gst/gstelement.c: (gst_element_error_full):
12200           add element path to error
12201
12202 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12203
12204         * docs/random/mimetypes:
12205           update raw int/float info
12206         * gst/gsttag.c: (_gst_tag_initialize):
12207         * gst/gsttag.h:
12208           add GST_TAG_ENCODER
12209
12210 2004-01-30  David Schleef  <ds@schleef.org>
12211
12212         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
12213           missing (#132991)
12214
12215 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
12216
12217         reviewed by Benjamin Otte 
12218           parts of the patch submitted in bug #113913
12219
12220         * configure.ac:
12221           use AC_C_INLINE. Use = instead of == with test
12222         * examples/plugins/example.c:
12223         * gst/autoplug/gstspideridentity.c:
12224         * gst/elements/gstfdsrc.c:
12225         * gst/elements/gstfilesrc.c:
12226         * gst/elements/gstidentity.c:
12227         * gst/elements/gstmultidisksrc.c:
12228         * gst/elements/gststatistics.c:
12229         * gst/gstelement.c:
12230         * gst/gstobject.c:
12231         * gst/gstpad.c:
12232         * gst/gstpipeline.c:
12233         * gst/gstthread.c:
12234           don't end enums with a comma
12235         * gst/gstindex.c: (gst_index_compare_func):
12236           do explicit casting to gint
12237         * gst/gsttrace.c: (gst_trace_text_flush):
12238           #define strsize as a macro
12239
12240 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
12241
12242         * docs/README:
12243         * docs/gst/gstreamer-docs.sgml:
12244         * docs/gst/gstreamer-sections.txt:
12245         * docs/gst/tmpl/gstelement.sgml:
12246         * docs/gst/tmpl/gsterror.sgml:
12247         * docs/gst/tmpl/gstinterface.sgml:
12248         * docs/gst/tmpl/gstreamer-unused.sgml:
12249         * docs/gst/tmpl/gststructure.sgml:
12250         * docs/gst/tmpl/gsttag.sgml:
12251         * docs/gst/tmpl/gsttaginterface.sgml:
12252         * docs/gst/tmpl/gstvalue.sgml:
12253         make sure all API ends up in the built docs
12254         * gst/gstinterface.c:
12255         * gst/gststructure.c: (gst_structure_id_set_value),
12256         (gst_structure_set_value), (gst_structure_id_get_value):
12257         * gst/gststructure.h:
12258         * gst/gstvalue.h:
12259         sync .h with .c declarations
12260
12261 2004-01-30  Julien Moutte  <julien@moutte.net>
12262
12263         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
12264         Ronald will fix riffread.
12265
12266 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12267
12268         * docs/pwg/advanced-interfaces.xml:
12269           Added tuner interface docs.
12270
12271 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12272
12273         * docs/random/mimetypes:
12274           correct Theora information
12275         * gst/gstelement.h:
12276           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
12277
12278 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12279
12280         * gst/gstelement.c: (gst_element_error_full):
12281         * gst/gstelement.h:
12282           GST_ELEMENT_ERROR in enum -> _IN_ERROR
12283
12284 2004-01-29  Julien MOUTTE  <julien@moutte.net>
12285
12286         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
12287         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
12288         again and even before DISCONT.
12289         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
12290         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
12291         bytestream so that it's not stopping to fill the bytestream if events
12292         different than EOS or DISCONT are received. Instead it process them so
12293         that they go downstream.
12294
12295 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12296
12297         * docs/gst/tmpl/gstelement.sgml:
12298         * docs/gst/tmpl/gstreamer-unused.sgml:
12299         * docs/gst/tmpl/gstxml.sgml:
12300         * gst/autoplug/gstspideridentity.c:
12301         (gst_spider_identity_sink_loop_type_finding):
12302         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12303         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12304         (gst_filesink_close_file), (gst_filesink_handle_event),
12305         (gst_filesink_chain):
12306         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12307         (gst_filesrc_get_read), (gst_filesrc_open_file):
12308         * gst/elements/gstidentity.c: (gst_identity_chain):
12309         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12310         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12311         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12312         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12313         * gst/gstelement.h:
12314         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12315         (gst_pad_recover_caps_error), (gst_pad_pull):
12316         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12317         * gst/schedulers/gstbasicscheduler.c:
12318         (gst_basic_scheduler_chainhandler_proxy),
12319         (gst_basic_scheduler_gethandler_proxy),
12320         (gst_basic_scheduler_cothreaded_chain):
12321           gst_element_error -> GST_ELEMENT_ERROR
12322
12323 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12324
12325         * docs/Makefile.am:
12326         * docs/gst/tmpl/gstelement.sgml:
12327         * docs/gst/tmpl/gstxml.sgml:
12328         * docs/manuals.mak:
12329         * docs/pwg/advanced-request.xml:
12330         * docs/pwg/advanced-scheduling.xml:
12331         * docs/pwg/advanced-tagging.xml:
12332           fix non-validating docbook using CDATA
12333           make sure make check-local gets run first to check if it validates
12334
12335 2004-01-29  Julien MOUTTE <julien@moutte.net>
12336
12337         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
12338         handling (up and downstream).
12339         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
12340         my_filter thing.
12341
12342 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12343
12344         * docs/pwg/advanced-tagging.xml:
12345           Add docs about tag writing.
12346
12347 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12348
12349         * docs/pwg/advanced-tagging.xml:
12350           Add a part about tag reading and application signalling... Tag
12351           writing still needs to be documented.
12352         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12353           We can set file locations in READY, too.
12354
12355 2004-01-29  Julien MOUTTE <julien@moutte.net>
12356
12357         * docs/random/ds/element-checklist: Adding some notes about src
12358         events.
12359
12360 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12361
12362         * docs/random/mimetypes:
12363           Update docs to point to correct elements for various mimetypes, and
12364           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
12365           <stephane.loeuillet@tiscali.fr>.
12366
12367 2004-01-28  David Schleef  <ds@schleef.org>
12368
12369         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
12370
12371 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12372
12373         * docs/random/mimetypes:
12374           update docs for audio/x-raw-float. Add "buffer-frames=0 means
12375           undefined"
12376         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12377           make it only work in NULL.
12378         * gst/gstcaps.c:
12379           don't posion NULL caps
12380         * gst/gstelement.c: (gst_element_set_time):
12381           add debugging statement
12382         * gst/gstelement.c: (gst_element_emit_found_tag),
12383         (gst_element_found_tag_func), (gst_element_found_tags):
12384         * gst/gstelement.h:
12385           These functions take const taglists
12386         * gst/gstpad.c: (gst_pad_proxy_getcaps):
12387           fix memleak
12388         * gst/gstpad.c: (gst_pad_event_default):
12389           make more effort on handling discont and clocks, g_warn if everything
12390           fails
12391         * gst/gststructure.c: (gst_structure_remove_fields),
12392         (gst_structure_remove_fields_valist):
12393         * gst/gststructure.h:
12394           add gst_structure_remove_fields(_valist)
12395         * gst/gsttag.c:
12396           fix doc glitch
12397
12398 2004-01-28  David Schleef  <ds@schleef.org>
12399
12400         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
12401         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
12402         Fix memory leakage of gst_caps_to_string().
12403
12404         Use GST_PTR_FORMAT instead of gst_caps_to_string():
12405         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
12406         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
12407         (gst_spider_identity_sink_loop_type_finding):
12408         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12409         (find_suggest):
12410         * gst/gstpad.c: (gst_pad_try_relink_filtered),
12411         (gst_pad_set_explicit_caps):
12412         * gst/parse/grammar.y:
12413
12414 2004-01-28  David Schleef  <ds@schleef.org>
12415
12416         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
12417         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
12418         * docs/random/ds/0.9-suggested-changes: Notes from Company.
12419         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
12420         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
12421         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
12422         (gst_debug_log_default), (_gst_info_printf_extension),
12423         (_gst_info_printf_extension_arginfo):  Add printf extension.
12424         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
12425         * gst/gststructure.c: (gst_structure_to_string),
12426         (_gst_structure_parse_value): Use gst_value_deserialize() and
12427         remove old code.
12428         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
12429         (gst_value_deserialize_boolean), (gst_strtoi),
12430         (gst_value_deserialize_int), (gst_value_deserialize_double),
12431         (gst_value_deserialize_string), (gst_value_deserialize): Implement
12432         a bunch of deserialize functions and gst_value_deserialize.
12433         * gst/gstvalue.h: er, _de_serialize, not unserialize
12434         * testsuite/caps/string-conversions.c: (main): We don't currently
12435         handle (float) in caps, so convert these to (double).
12436         * testsuite/debug/Makefile.am: Add new test for the printf extension
12437         * testsuite/debug/printf_extension.c: (main): same
12438
12439 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12440
12441         * docs/random/company/time:
12442           Add some docs about clocking and time
12443
12444 2004-01-28  Julien MOUTTE <julien@moutte.net>
12445
12446         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
12447
12448 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12449
12450         * docs/pwg/advanced-clock.xml:
12451         * docs/pwg/advanced-dparams.xml:
12452         * docs/pwg/advanced-events.xml:
12453         * docs/pwg/advanced-interfaces.xml:
12454         * docs/pwg/advanced-midi.xml:
12455         * docs/pwg/advanced-request.xml:
12456         * docs/pwg/advanced-scheduling.xml:
12457         * docs/pwg/advanced-tagging.xml:
12458         * docs/pwg/advanced-types.xml:
12459         * docs/pwg/appendix-checklist.xml:
12460         * docs/pwg/building-boiler.xml:
12461         * docs/pwg/building-chainfn.xml:
12462         * docs/pwg/building-filterfactory.xml:
12463         * docs/pwg/building-pads.xml:
12464         * docs/pwg/building-props.xml:
12465         * docs/pwg/building-signals.xml:
12466         * docs/pwg/building-state.xml:
12467         * docs/pwg/building-testapp.xml:
12468         * docs/pwg/intro-basics.xml:
12469         * docs/pwg/intro-preface.xml:
12470         * docs/pwg/other-autoplugger.xml:
12471         * docs/pwg/other-sink.xml:
12472         * docs/pwg/other-source.xml:
12473         * docs/pwg/titlepage.xml:
12474           fix up id's
12475
12476 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12477
12478         * docs/95NonPath:
12479         * docs/HACKING:
12480         * docs/README:
12481         * docs/building-the-docs-on-debian:
12482           collect relevant bits of doc info
12483
12484 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12485
12486         * docs/pwg/advanced_tagging.xml:
12487           Half-assed commit so Thomas can re-arrange document IDs here to be
12488           consistent, too.
12489
12490 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12491
12492         * docs/manual/autoplugging.xml:
12493         * docs/manual/bins-api.xml:
12494         * docs/manual/bins.xml:
12495         * docs/manual/buffers-api.xml:
12496         * docs/manual/buffers.xml:
12497         * docs/manual/clocks.xml:
12498         * docs/manual/components.xml:
12499         * docs/manual/cothreads.xml:
12500         * docs/manual/debugging.xml:
12501         * docs/manual/dparams-app.xml:
12502         * docs/manual/dynamic.xml:
12503         * docs/manual/elements-api.xml:
12504         * docs/manual/elements.xml:
12505         * docs/manual/factories.xml:
12506         * docs/manual/gnome.xml:
12507         * docs/manual/goals.xml:
12508         * docs/manual/helloworld.xml:
12509         * docs/manual/helloworld2.xml:
12510         * docs/manual/init-api.xml:
12511         * docs/manual/intro.xml:
12512         * docs/manual/links-api.xml:
12513         * docs/manual/links.xml:
12514         * docs/manual/manual.xml:
12515         * docs/manual/motivation.xml:
12516         * docs/manual/pads-api.xml:
12517         * docs/manual/pads.xml:
12518         * docs/manual/plugins-api.xml:
12519         * docs/manual/plugins.xml:
12520         * docs/manual/programs.xml:
12521         * docs/manual/queues.xml:
12522         * docs/manual/quotes.xml:
12523         * docs/manual/schedulers.xml:
12524         * docs/manual/states-api.xml:
12525         * docs/manual/states.xml:
12526         * docs/manual/threads.xml:
12527         * docs/manual/typedetection.xml:
12528         * docs/manual/xml.xml:
12529           use chapter, part, section or misc as id starts for all bits
12530
12531 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12532
12533         * docs/gst/gstreamer-sections.txt:
12534           Fix up TITLE of the sections
12535
12536 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12537
12538         * docs/pwg/advanced_interfaces.xml:
12539           Add documentation on propertyprobing.
12540         * docs/pwg/advanced_events.xml:
12541         * docs/pwg/advanced_tagging.xml:
12542         * docs/pwg/building_boiler.xml:
12543         * docs/pwg/building_filterfactory.xml:
12544         * docs/pwg/pwg.xml:
12545           Move filterfactory and tagging into their own chapter, add a chapter
12546           on events. all these are empty placeholders that will be filled in
12547           some day.
12548
12549 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12550
12551         * docs/pwg/advanced_interfaces.xml:
12552           Docs for mixer interface. Also a check for website uploading.
12553
12554 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12555
12556         * docs/HACKING:
12557         * docs/Makefile.am:
12558         * docs/faq/Makefile.am:
12559         * docs/gst/Makefile.am:
12560         * docs/gst/tmpl/gstelement.sgml:
12561         * docs/gst/tmpl/gstplugin.sgml:
12562         * docs/gst/tmpl/gstreamer-unused.sgml:
12563         * docs/libs/Makefile.am:
12564         * docs/manual/Makefile.am:
12565         * docs/manuals.mak:
12566         * docs/pwg/Makefile.am:
12567         * docs/upload.mak:
12568           Separate out upload target and make it similar for
12569           both docbook and gtk-doc docs
12570
12571 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12572
12573         * docs/manuals.mak:
12574           Fix upload target to work with freedesktop
12575
12576 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12577
12578         * docs/pwg/advanced_types.xml:
12579           Add notes on creating your own types.
12580         * docs/pwg/building_boiler.xml:
12581         * docs/pwg/building_pads.xml:
12582         * docs/pwg/building_state.xml:
12583           Add some stuff about how to retrieve values from structures, how
12584           that relates to types and change layout slightly again to be almost
12585           perfect.
12586
12587 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12588
12589         * docs/pwg/advanced_dparams.xml:
12590         * docs/pwg/advanced_scheduling.xml:
12591           Change index layout slightly.
12592
12593 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12594
12595         * docs/pwg/advanced_clock.xml:
12596         * docs/pwg/advanced_interfaces.xml:
12597         * docs/pwg/advanced_midi.xml:
12598           General placeholders for now.
12599         * docs/pwg/advanced_request.xml:
12600           Explanation about sometimes and request pads.
12601         * docs/pwg/advanced_scheduling.xml:
12602           Concept of bytestream, loopfunctions and schedulers.
12603         * docs/pwg/building_boiler.xml:
12604           Add something about plugin-init.
12605
12606 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12607
12608         * docs/pwg/building_pads.xml:
12609           Fix broken docbook
12610
12611 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12612
12613         * docs/pwg/advanced_interfaces.xml:
12614         * docs/pwg/pwg.xml:
12615           Add as a placeholder for future filling-in.
12616         * docs/pwg/basics_autoplugging.xml:
12617         * docs/pwg/basics_buffers.xml:
12618         * docs/pwg/basics_elements.xml:
12619         * docs/pwg/basics_events.xml:
12620         * docs/pwg/basics_plugins.xml:
12621         * docs/pwg/basics_types.xml:
12622           Remove, because unused (this is all in intro_basics.xml).
12623         * docs/pwg/building_signals.xml:
12624           Short intro to signals + reference to GObject docs - we really
12625           shouldn't go into these sort of things to deply because we don't
12626           use them that extensively anyway.
12627         * docs/pwg/building_state.xml:
12628           Explanation of states. Benjamin, please check.
12629         * docs/pwg/building_testapp.xml:
12630           Put everything in one page - putting only a few lines of content
12631           per page doesn't really make sense.
12632
12633           Time to get into the advanced topics. ;).
12634
12635 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12636
12637         * docs/pwg/advanced_types.xml:
12638           Finish documenting the current state of mimetypes.
12639         * docs/pwg/building_boiler.xml:
12640         * docs/pwg/building_chainfn.xml:
12641         * docs/pwg/building_pads.xml:
12642         * docs/pwg/building_props.xml:
12643         * docs/pwg/building_testapp.xml:
12644           Start documenting the "how to build a simple audio filter" part
12645           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
12646           states and (maybe?) a short introduction to capsnego in the chapter
12647           on pads (building_pads.xml). Capsnego should probably be explained
12648           fully in advanced_capsnego.xml or so.
12649
12650 2004-01-26  David Schleef  <ds@schleef.org>
12651
12652         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
12653         * gst/gstpad.h: Add new function to allow element to (somewhat)
12654         specify non-fixed caps on a pad.
12655         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
12656         that I added a few weeks ago.
12657
12658 2004-01-26  David Schleef  <ds@schleef.org>
12659
12660         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
12661           making try_set_caps() work with non-fixed caps.
12662
12663 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12664
12665         * docs/pwg/advanced_types.xml:
12666         * docs/pwg/intro_basics.xml:
12667         * docs/pwg/intro_preface.xml:
12668         * docs/pwg/pwg.xml:
12669         * docs/pwg/titlepage.xml:
12670           First try to resurrect the PWG. I'm halfway integrating the mimetypes
12671           in here (docs/random/mimetypes), and will from there on work on both
12672           updating outdated parts and adding missing parts.
12673           That doesn't mean I'll fix it completely, but I'll try at least. ;).
12674
12675 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12676
12677         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
12678           policy is set
12679
12680 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12681
12682         * gst/gstelement.h:
12683           remove gst_element_factory_get_version. It doesn't exist anymore.
12684         * gst/gstplugin.c:
12685         * gst/gstplugin.h:
12686           remove gst_plugin_set_name and change gst_plugin_get_longname to
12687           gst_plugin_get_description to match code.
12688         * gst/gsterror.h:
12689           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
12690         * gst/gstpad.c: (gst_pad_try_set_caps):
12691           make it work with nonfixed caps.
12692           Note that even in the nonfixed case the link function of the pad
12693           that tries to set caps isn't called.
12694
12695 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12696
12697         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
12698           fix bug where buffer was not assembled correctly
12699         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
12700           silence by default
12701         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12702           only seek if there's no more buffers that could work without seeking
12703
12704 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12705
12706         * gst/gsttag.c: (_gst_tag_initialize):
12707         * gst/gsttag.h:
12708           Add application tag (for encoding/muxing app).
12709
12710 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
12711
12712         * autogen.sh:
12713           make autopoint force, and libtoolize not copy
12714         * common/m4/as-docbook.m4:
12715           added docbook xml catalog setup check
12716         * common/m4/gst-doc.m4:
12717           use docbook check
12718
12719 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
12720
12721         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
12722         * gst/gsttag.h:
12723           add GstTagFlag
12724
12725 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12726
12727         * docs/gst/gstreamer-sections.txt:
12728         * docs/gst/tmpl/gst.sgml:
12729         * docs/gst/tmpl/gstbuffer.sgml:
12730         * docs/gst/tmpl/gstclock.sgml:
12731         * docs/gst/tmpl/gstelement.sgml:
12732         * docs/gst/tmpl/gstreamer-unused.sgml:
12733         * docs/gst/tmpl/gstxml.sgml:
12734           sync latest API changes to docs
12735
12736 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12737
12738         * gst/gstpluginfeature.c:
12739           fix doc snippet
12740         * tools/gst-inspect.c: (print_element_list):
12741           fix output of typefind
12742           add GPL header
12743         * tools/gst-launch.c:
12744           add GPL header
12745
12746 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12747
12748         * gst/elements/Makefile.am:
12749         * gst/elements/gstelements.c:
12750         * gst/elements/gsttypefindelement.c:
12751         * gst/elements/gsttypefindelement.h:
12752         * po/POTFILES.in:
12753         * po/fr.po:
12754         * po/nl.po:
12755           renamed gsttypefindelement to gsttypefind, conserving CVS history
12756
12757 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12758
12759         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
12760         * gst/gsttag.h:
12761           add some tags used in ogg as well
12762           fix _ in replaygain tags
12763
12764 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12765
12766         * gst/gsterror.h:
12767           fix wrong GST_LIBRARY_ERROR_ENCODE addition
12768
12769 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12770
12771         * gst/gstelement.c: (gst_element_error_full):
12772         * gst/gstelement.h:
12773           change _extended to _full
12774
12775 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12776
12777         reviewed by: <delete if not using a buddy>
12778
12779         * docs/gst/tmpl/gst.sgml:
12780         * docs/gst/tmpl/gstbuffer.sgml:
12781         * docs/gst/tmpl/gstclock.sgml:
12782         * docs/gst/tmpl/gstelement.sgml:
12783         * docs/gst/tmpl/gstreamer-unused.sgml:
12784         * docs/gst/tmpl/gstxml.sgml:
12785         * gst/gstelement.c: (gst_element_error_full):
12786         * gst/gstelement.h:
12787
12788 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12789
12790         * gst/gstelement.h: fix _gst_element_error_printf prototype
12791
12792 2004-01-20  David Schleef  <ds@schleef.org>
12793
12794         * gst/gststructure.c: (gst_structure_to_string):
12795         Convert function to use gst_value_serialize().
12796         * gst/gstvalue.c: (gst_value_serialize_list),
12797         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
12798         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
12799         (gst_value_serialize_int), (gst_value_serialize_double),
12800         (gst_string_wrap), (gst_value_serialize_string),
12801         (gst_value_serialize), (gst_value_deserialize):
12802         * gst/gstvalue.h:
12803         Add implementations for serialize.
12804
12805 2004-01-20  Julien MOUTTE  <julien@moutte.net>
12806
12807         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
12808         we want to keep that one in the future or change xvidenc.c to use 
12809         another error.
12810
12811 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12812
12813         * gst/gstelement.c: (_gst_element_error_printf):
12814         * gst/gstelement.h:
12815           privatise function
12816
12817 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12818
12819         * docs/random/error:
12820           doc explaining error system
12821         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12822           cleanup
12823
12824 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12825
12826         * gst/gst-i18n-app.h:
12827         * gst/gst-i18n-lib.h:
12828           remove inclusion of config.h
12829         * po/POTFILES.in:
12830         * po/nl.po:
12831           add gst/gstelement.c
12832
12833 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12834
12835         * po/nl.po: updated Dutch translation
12836
12837 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12838
12839         * gst/gsterror.c: (_gst_core_errors_init),
12840         (_gst_library_errors_init), (_gst_resource_errors_init),
12841         (_gst_stream_errors_init):
12842         remove ending punctuation dots
12843
12844 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12845
12846         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
12847         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
12848         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12849         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12850         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12851         use GST_ERROR_SYSTEM
12852
12853 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12854
12855         * gst/gstelement.c: (gst_element_error_printf),
12856         (gst_element_error_extended):
12857         * gst/gstelement.h:
12858           add a helper printf function so we can have NULL values passed.
12859
12860 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12861
12862         * gst/gstelement.h:
12863           add G_STMT macros to gst_element_error, which isn't strictly
12864           necessary but people tell me to anyway.
12865
12866 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
12867
12868         * gst/Makefile.am:
12869         * gst/autoplug/gstspideridentity.c:
12870         (gst_spider_identity_sink_loop_type_finding):
12871         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12872         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12873         (gst_filesink_close_file), (gst_filesink_handle_event),
12874         (gst_filesink_chain):
12875         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
12876         (gst_filesrc_map_region), (gst_filesrc_get_read),
12877         (gst_filesrc_open_file):
12878         * gst/elements/gstidentity.c: (gst_identity_chain):
12879         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12880         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12881         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12882         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
12883         * gst/gst.h:
12884         * gst/gst_private.h:
12885         * gst/gstelement.c: (gst_element_class_init),
12886         (gst_element_default_error), (gst_element_error_func),
12887         (gst_element_error_extended):
12888         * gst/gstelement.h:
12889         * gst/gsterror.c: (_gst_core_errors_init),
12890         (_gst_library_errors_init), (_gst_resource_errors_init),
12891         (_gst_stream_errors_init), (gst_error_get_message):
12892         * gst/gsterror.h:
12893         * gst/gstinfo.c: (_gst_debug_init):
12894         * gst/gstmarshal.list:
12895         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12896         (gst_pad_recover_caps_error), (gst_pad_pull):
12897         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12898         * gst/schedulers/gstbasicscheduler.c:
12899         (gst_basic_scheduler_chainhandler_proxy),
12900         (gst_basic_scheduler_gethandler_proxy),
12901         (gst_basic_scheduler_cothreaded_chain):
12902         * po/POTFILES.in:
12903         * po/fr.po:
12904         * po/nl.po:
12905           change error signal
12906           add error categories
12907
12908 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
12909
12910         * gst/gsttag.c: (_gst_tag_initialize):
12911         * gst/gsttag.h:
12912         Add replaygain tag
12913
12914 2004-01-18  Colin Walters  <walters@verbum.org>
12915
12916         * examples/retag/retag.c: Call gst_init before processing
12917         program args.  Add g_assert to _link_many call.
12918
12919 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12920
12921         * gst/gstpad.c: (gst_pad_alloc_buffer):
12922           Return a newly allocated buffer when the pad has no peer.
12923
12924 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12925
12926         * gst/gstclock.c: (gst_clock_get_time):
12927           make it compile with gcc 2.95 again.
12928           Patch by Scott Wheeler
12929
12930 2004-01-15  David Schleef  <ds@schleef.org>
12931
12932         * gst/gstcaps.h:
12933         Added gst_caps_is_simple() macro.
12934         * testsuite/caps/caps.c: (test1):
12935         * testsuite/caps/intersect2.c: (main):
12936         * testsuite/caps/intersection.c: (main):
12937         Fixes to make 'make check' work again after removing
12938         gst_caps_is_chained().
12939
12940 2004-01-15  Leif Johnson <leif@ambient.2y.net>
12941
12942         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
12943         and additions to the MIDI document.
12944
12945 2004-01-15  David Schleef  <ds@schleef.org>
12946
12947         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
12948         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
12949         of GST_RPAD_, since we don't know if it's a real or ghost pad.
12950
12951 2004-01-15  David Schleef  <ds@schleef.org>
12952
12953         * gst/gstqueue.c:
12954         * gst/gstqueue.h:
12955         Fix the spelling of "treshold" and make min_threshold actually
12956         affect the queue.
12957
12958 2004-01-15  David Schleef  <ds@schleef.org>
12959
12960         * gst/gstcaps.c:
12961         Add lots of documentation.
12962         * gst/gstcaps.h:
12963         Deprecate a few functions.
12964         * gst/gstpad.c:
12965         Removed use of deprecated functions.
12966
12967 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12968
12969         * gst/gstpad.c: (gst_pad_is_linked):
12970         * gst/gstpad.h:
12971           implement gst_pad_is_linked
12972         * gst/gstelement.h:
12973           reserve space for initiate_state_change
12974
12975 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12976
12977         * gst/autoplug/gstspideridentity.c:
12978         (gst_spider_identity_sink_loop_type_finding):
12979           break infinite loop by just returning instead of looping
12980         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
12981           set event time difference correctly. Set it to 1 second instead
12982           of 100ms to be more tolerant
12983         * gst/gstelement.c: (gst_element_set_time):
12984           add debugging output
12985
12986 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12987
12988         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
12989           query if buffers are inside the pool, ignore events
12990
12991 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12992
12993         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
12994         (gst_clock_set_speed), (gst_clock_set_active),
12995         (gst_clock_is_active), (gst_clock_reset),
12996         (gst_clock_handle_discont):
12997         * gst/gstclock.h:
12998           deprecate old interface and disable functions that aren't in use
12999           anymore.
13000         * gst/gstelement.h:
13001         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
13002         (gst_element_set_time), (gst_element_adjust_time):
13003           add concept of "element time" and functions to get/set this time.
13004         * gst/gstelement.c: (gst_element_change_state):
13005           update element time correctly.
13006         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13007           This is a debug message, not a g_critical.
13008         * gst/gstpad.c: (gst_pad_event_default):
13009           handle discontinuous events right with element time.
13010         * gst/gstscheduler.c: (gst_scheduler_state_transition):
13011           update to clocking fixes.
13012           set clocks on elements in READY=>PAUSED. The old behaviour caused
13013           a wrong element time on the first element that started playing.
13014         * gst/schedulers/gstbasicscheduler.c:
13015         (gst_basic_scheduler_class_init):
13016         * gst/schedulers/gstoptimalscheduler.c:
13017         (gst_opt_scheduler_class_init):
13018           remove code that just implements the default behaviour.
13019         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
13020           update to use new clocking functions
13021         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
13022         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
13023           update to test new element time.
13024         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
13025           use _get_allowed_caps instead of _get_caps. This catches filtered
13026           caps correctly.
13027         * testsuite/debug/commandline.c:
13028           update for new GST_DEBUG syntax.
13029         * testsuite/threads/Makefile.am:
13030           disable a test that only works sometimes.
13031
13032 2004-01-13  Julien MOUTTE <julien@moutte.net>
13033
13034         * po/LINGUAS: Adding fr.
13035         * po/fr.po: Adding french translation.
13036
13037 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13038
13039         * gst/parse/grammar.y:
13040         * po/POTFILES.in:
13041         * po/nl.po:
13042         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
13043           translate parsing error messages
13044
13045 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13046
13047         * po/POTFILES.in: adding gst-launch
13048         * po/nl.po: updated translation, all 99 strings translated
13049         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
13050         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
13051           fix strings for translation
13052
13053 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13054
13055         * gst/gst.c:
13056           - capitalize beginnings of popt options
13057           - fix strings for translation
13058           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
13059
13060 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13061
13062         * po/README: add some notes on how to update translations
13063
13064 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13065
13066         * ABOUT-NLS: removed, is autogenerated from autopoint
13067         * autogen.sh: add autopoint stuff
13068         * configure.ac: fix up gettext stuff
13069         * gst/Makefile.am: add i18n headers to noinst_HEADERS
13070         * gst/elements/gsttypefindelement.c: add header include
13071         * gst/gettext.h: add header, copy from system-installed header
13072         * gst/gst-i18n-app.h: to be included by each app having translations
13073         * gst/gst-i18n-lib.h: to be included by each lib having translations
13074         * gst/gst.c: (init_pre): fix up gettext calls
13075         * gst/gst_private.h: remove i18n stuff, moving to separate headers
13076         * po/LINGUAS: the new way to specify translations present
13077         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
13078         * po/Makevars: the variables filled in for GStreamer
13079         * po/POTFILES.in: added new files with translations
13080         * po/de.po: has new strings
13081         * po/nl.po: readded, has new strings
13082
13083 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13084
13085         * gst/gsttag.c: fix some strings marked for translation
13086
13087 2004-01-13  Iain <iain@prettypeople.org>
13088
13089         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
13090         group when we add an element to it, cos we unref it when we remove one
13091
13092 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
13093
13094         * testsuite/debug/commandline.c: (debug_not_reached):
13095         * testsuite/debug/output.c: (check_message):
13096           fix testsuite
13097
13098 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13099
13100         * examples/cutter/.cvsignore:
13101         * examples/helloworld/.cvsignore:
13102         * examples/launch/.cvsignore:
13103         * examples/manual/.cvsignore:
13104         * examples/mixer/.cvsignore:
13105         * examples/pingpong/.cvsignore:
13106         * examples/plugins/.cvsignore:
13107         * examples/queue/.cvsignore:
13108         * examples/queue2/.cvsignore:
13109         * examples/queue3/.cvsignore:
13110         * examples/queue4/.cvsignore:
13111         * examples/retag/.cvsignore:
13112         * examples/thread/.cvsignore:
13113         * examples/typefind/.cvsignore:
13114         * examples/xml/.cvsignore:
13115         * gst/.cvsignore:
13116         * gst/autoplug/.cvsignore:
13117         * gst/elements/.cvsignore:
13118         * gst/indexers/.cvsignore:
13119         * gst/parse/.cvsignore:
13120         * gst/registries/.cvsignore:
13121         * gst/schedulers/.cvsignore:
13122         * libs/gst/bytestream/.cvsignore:
13123         * libs/gst/control/.cvsignore:
13124         * libs/gst/getbits/.cvsignore:
13125         * tests/.cvsignore:
13126         * tests/bufspeed/.cvsignore:
13127         * tests/instantiate/.cvsignore:
13128         * tests/memchunk/.cvsignore:
13129         * tests/muxing/.cvsignore:
13130         * tests/sched/.cvsignore:
13131         * tests/seeking/.cvsignore:
13132         * tests/threadstate/.cvsignore:
13133         * testsuite/.cvsignore:
13134         * testsuite/caps/.cvsignore:
13135         * testsuite/cleanup/.cvsignore:
13136         * testsuite/dynparams/.cvsignore:
13137         * testsuite/plugin/.cvsignore:
13138         * tools/.cvsignore:
13139           update - this is huge, because it includes *.bb, *.bbg and *.da files
13140           which are generated for gcov.
13141
13142 2004-01-11  David Schleef  <ds@schleef.org>
13143
13144         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
13145         a function to parse integers in ways that strto[u]l() does not.
13146
13147 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13148
13149         * tools/gst-inspect.c: (print_caps):
13150           improve output of caps a bit
13151
13152 2004-01-11  David Schleef  <ds@schleef.org>
13153
13154         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
13155         inherit correct flags (READONLY and DONTKEEP).
13156
13157 2004-01-11  David Schleef  <ds@schleef.org>
13158
13159         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
13160         (gst_filesrc_map_region):
13161         * gst/gstbuffer.c: (_gst_buffer_initialize),
13162         (_gst_buffer_sub_free), (gst_buffer_default_copy),
13163         (gst_buffer_new), (gst_buffer_create_sub),
13164         (gst_buffer_is_span_fast), (gst_buffer_span):
13165         * gst/gstbuffer.h:
13166         Change GstBuffer private structure element names. (all files)
13167         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
13168         (gst_queue_link):
13169         * gst/gstqueue.h:
13170         Implement getcaps/pad_link functions that handle the case where
13171         there are data in the queue.
13172
13173 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13174
13175         * gst/elements/gstbufferstore.c:
13176           initialize debugging structure correctly
13177         * gst/elements/gsttee.c: (gst_tee_set_property):
13178           g_object_notify when property was changed
13179         * gst/elements/gsttypefindelement.c:
13180         (gst_type_find_element_change_state):
13181           clear caps correctly
13182
13183 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13184
13185         * gst/gstqueue.c: (gst_queue_init):
13186           Use better defaults for when a queue should block. This
13187           gets rid of jerky playback for quite a few files.
13188           It takes more memory.
13189
13190 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
13191
13192         (gst_xml_registry_parse_padtemplate):
13193           make critical message slightly more useful
13194
13195 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13196
13197         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
13198         (gst_debug_message_get), (gst_debug_log_default):
13199         * gst/gstinfo.h:
13200           Change gst_debug_log(_valist) to take a const format string.
13201           Change prototype of log function and functions using those to 
13202           take a GstDebugMessage instead of a string that requires using
13203           gst_debug_message_get.
13204
13205 2004-01-08  David Schleef  <ds@schleef.org>
13206
13207         * Makefile.am:
13208         * configure.ac:
13209         Add option --enable-gcov to build GStreamer with -fprofile-arcs
13210         and -ftest-coverage, which allows gcov to show information about
13211         testsuite coverage.
13212
13213 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13214
13215         * gst/gstutils.h:
13216           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
13217           GST_PARENT_CALL_WITH_DEFAULT
13218         * gst/elements/gstaggregator.c: 
13219         * gst/elements/gstbufferstore.c: 
13220         * gst/elements/gstfakesink.c: 
13221         * gst/elements/gstfakesrc.c: 
13222         * gst/elements/gstfdsink.c: 
13223         * gst/elements/gstfdsrc.c: 
13224         * gst/elements/gstfilesink.c: 
13225         * gst/elements/gstfilesrc.c: 
13226         * gst/elements/gstidentity.c: 
13227         * gst/elements/gstmd5sink.c: 
13228         * gst/elements/gstmultidisksrc.c:
13229         * gst/elements/gstpipefilter.c: 
13230         * gst/elements/gstshaper.c:
13231         * gst/elements/gststatistics.c:
13232         * gst/elements/gsttee.c:
13233         * gst/elements/gsttypefindelement.c:
13234           use them.
13235
13236 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
13237
13238         * docs/gst/gstreamer-docs.sgml: remove props
13239         * docs/gst/gstreamer-sections.txt: remove props
13240         * docs/gst/tmpl/gst.sgml:
13241         * docs/gst/tmpl/gstbin.sgml:
13242         * docs/gst/tmpl/gstbuffer.sgml:
13243         * docs/gst/tmpl/gstcaps.sgml:
13244         * docs/gst/tmpl/gstclock.sgml:
13245         * docs/gst/tmpl/gstelement.sgml:
13246         * docs/gst/tmpl/gstindex.sgml:
13247         * docs/gst/tmpl/gstobject.sgml:
13248         * docs/gst/tmpl/gstpad.sgml:
13249         * docs/gst/tmpl/gstpadtemplate.sgml:
13250         * docs/gst/tmpl/gstreamer-unused.sgml:
13251         * docs/gst/tmpl/gstthread.sgml:
13252         * docs/gst/tmpl/gstxml.sgml:
13253           sync with code reorganization
13254
13255 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
13256
13257         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13258         Make the 'Could not find compatible pad' message more informative.
13259
13260 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13261                                                                                 
13262         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
13263           Fix for if we pass NULL as property to location.
13264         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
13265         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
13266           Fix for instantiate-test (see below).
13267         * gst/gststructure.c: (_gst_structure_parse_value):
13268           Fix compile error on gcc-2.96.
13269         * configure.ac:
13270         * tests/Makefile.am:
13271         * tests/instantiate/Makefile.am:
13272         * tests/instantiate/create.c: (create_all_elements), (main):
13273           Add a test that instantiates all elements. This makes it easy to
13274           track dead code for old API/design (like setting event functions
13275           on sink pads and so on).
13276
13277 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
13278
13279         * gst/gstcaps.c: (gst_caps_append_structure):
13280           Move the poisoning to allow a NULL structure
13281         * gst/gstevent.c: (_gst_event_free):
13282           When freeing a navigation event, free the structure
13283           also
13284
13285 2004-01-04  David Schleef  <ds@schleef.org>
13286
13287         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13288         Remove usage of gst_pad_proxy_fixate.
13289         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
13290         (gst_caps_split_one), (gst_caps_replace):
13291         Add poisoning code.
13292         * gst/gstmarshal.list:
13293         Add pointer__pointer for fixate signal
13294         * gst/gstpad.c: (gst_real_pad_class_init),
13295         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
13296         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
13297         (gst_pad_set_explicit_caps), (gst_pad_template_new):
13298         Add poisoning code. Add fixate signal on RealPad. Change
13299         set_explicit_caps() to take const GstCaps, like try_set_caps().
13300         * gst/gstpad.h:
13301         * testsuite/caps/Makefile.am:
13302         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
13303
13304 2004-01-03  David Schleef  <ds@schleef.org>
13305
13306         * gst/elements/gsttypefindelement.c:
13307         (gst_type_find_element_have_type), (gst_type_find_element_init):
13308         Use gst_pad_use_explicit_caps for src pad.
13309         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
13310         before using it.
13311
13312 2004-01-03  David Schleef  <ds@schleef.org>
13313
13314         * gst/gstelement.c: (gst_element_link_pads_filtered),
13315         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
13316         that linking was successful.
13317         * gst/gstpad.c: (gst_pad_link_free),
13318         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
13319         (gst_pad_link_try), (gst_pad_link_unnegotiate),
13320         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
13321         GstPadLinkReturn correctly between functions, and don't fail
13322         when DELAYED is used (DELAYED is very important).  Better
13323         cleanup on unlinking and unnegotiation.  Should fix some spider
13324         bugs.
13325
13326 2004-01-02  David Schleef  <ds@schleef.org>
13327
13328         * gst/gstelement.c: (gst_element_class_init),
13329         (gst_element_base_class_init): ->padtemplates should be cleared
13330         in base_init, since we need to have a fresh list for every
13331         class.  (Alternately, we chould copy the list and share the
13332         actual pad templates (not the list), but that would require
13333         changing every plugin to move pad template registration from
13334         base_init to class_init.)
13335
13336 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13337
13338         * gst/gstelement.c: (gst_element_class_add_pad_template):
13339           Refuse registering a pad template if another pad template
13340           with the same name already exists (#114715).
13341
13342 2004-01-02  David Schleef  <ds@schleef.org>
13343
13344         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
13345         (gst_caps_is_equal_fixed): Add new function.
13346         * gst/gstcaps.h: ditto.
13347         * gst/gstpad.c: (gst_real_pad_class_init),
13348         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
13349         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
13350         check new caps against existing caps -- if they're the same, return
13351         OK without renegotiating.  caps-nego-failed signal fixed so that
13352         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
13353         to save an extra caps copy.  Don't complete negotiation if a pad
13354         link function returns DELAYED.
13355
13356 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13357
13358         * gst/gstpad.c: (gst_pad_try_relink_filtered):
13359           Fix wrong g_return_if_fail
13360
13361 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
13362
13363         * gst/gstbin.c: (gst_bin_class_init):
13364         Change the marshalling of element_added/element_removed
13365         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
13366         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
13367
13368 2004-01-01  David Schleef  <ds@schleef.org>
13369
13370         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13371         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
13372         (gst_pad_use_explicit_caps):
13373         * gst/gstpad.h:
13374         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
13375         to use an internal getcaps and link fuction so that negotiation
13376         always results in the explicitly set caps.
13377         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
13378         are particularly useful for decoders.
13379
13380 2003-12-31  David Schleef  <ds@schleef.org>
13381
13382         * gst/elements/gstidentity.c: (gst_identity_class_init),
13383         (gst_identity_init), (gst_identity_chain),
13384         (gst_identity_set_property), (gst_identity_get_property):
13385         * gst/elements/gstidentity.h:
13386         * gst/gstqueue.c: (gst_queue_init):
13387           Negotiation fixes.
13388
13389 2003-12-31  David Schleef  <ds@schleef.org>
13390
13391         * gst/gstcaps.c: (gst_caps_intersect),
13392         (_gst_caps_normalize_foreach), (gst_caps_normalize):
13393           Implement gst_caps_normalize().
13394         * testsuite/caps/normalisation.c: (main):
13395           Add an additional test
13396
13397 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13398
13399         * gst/gstqueue.c: (gst_queue_init):
13400           use gst_pad_proxy_getcaps()
13401
13402 2003-12-31  David Schleef  <ds@schleef.org>
13403
13404         * gst/elements/gstshaper.c: (gst_shaper_link):
13405         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13406         * gst/gstqueue.c: (gst_queue_link):
13407           Negotiation fixes.
13408
13409 2003-12-31  David Schleef  <ds@schleef.org>
13410
13411         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
13412         * gst/gstpad.h: Add functions that are useful as default pad
13413         link and fixate functions for elements.
13414
13415 2003-12-30  David Schleef  <ds@schleef.org>
13416
13417         * gst/gstpad.c: (gst_pad_link_try):
13418           Fix segfault when attempting to return to old caps
13419
13420 2003-12-29  David Schleef  <ds@schleef.org>
13421
13422         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
13423         (gst_caps_structure_simplify), (gst_caps_simplify):
13424         * gst/gstcaps.h:
13425           Add simplify function
13426         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
13427         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
13428         * gst/gstpad.h:
13429           Copy over srcnotify, sinknotify when calling old pad_link
13430           functions.  Add new is_negotiated() function.
13431         * gst/gststructure.c: (gst_structure_copy):
13432           Fix an incredibly stupid bug that should have been noticed
13433           weeks ago.  _copy() returned the argument, not the new copy.
13434
13435 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13436
13437         * gst/gstcaps.c: (gst_caps_append):
13438           add sanity checks
13439         * gst/gstcaps.h: (gst_caps_debug):
13440           remove, it doesn't exist anymore.
13441         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
13442         (gst_element_threadsafe_properties_post_run):
13443           make debugging messages not clutter up THREAD debug category
13444         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
13445         (gst_element_change_state):
13446           update to new caps API
13447         * gst/gstinterface.c: (gst_implements_interface_cast):
13448           don't put vital code in g_return_if_fail
13449         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
13450         (gst_pad_link_filtered):
13451           add pst_pad_try_link and use it.
13452         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
13453           implement correctly, deprecate first one.
13454         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
13455           add and implement.
13456         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
13457           implement.
13458         (gst_pad_get_negotiated_caps):
13459           add and implement. Make GST_PAD_CAPS call this function.
13460         (gst_pad_get_caps):
13461           remove unneeded check..
13462         (gst_pad_recover_caps_error):
13463           disable, always return FALSE.
13464         (gst_real_pad_dispose):
13465           don't free caps and appfilter anymore, they're unused.
13466         * gst/gstpad.h:
13467           Reflect changes mentioned above.
13468         * gst/gstsystemclock.c: (gst_system_clock_wait):
13469           Make 'clock is way behind' a debugging message.
13470         * gst/gstthread.c: (gst_thread_change_state):
13471           Fix debugging message
13472
13473 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
13474
13475         * gst/gstinfo.h:
13476           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
13477         * docs/gst/tmpl/gstreamer-unused.sgml:
13478           removed all traces of cvs conflicts
13479
13480 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13481
13482         * configure.ac:
13483         * gst/schedulers/cothreads_compat.h:
13484         * libs/Makefile.am:
13485           remove last instances of wingo cothread usage
13486
13487 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13488
13489         * gst/gstplugin.c:
13490         * gst/gstversion.h.in:
13491         * gst/parse/grammar.y:
13492           change comment block from /** to /* when not gtk-doc comments
13493
13494 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13495
13496         * gst/gst.c: whitespace and doc style fixes
13497
13498 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13499
13500         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
13501
13502 2003-12-24  Colin Walters  <walters@verbum.org>
13503
13504         * gst/elements/gsttypefindelement.c:
13505           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
13506           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
13507           Don't double-free caps.
13508
13509 2003-12-23  David Schleef  <ds@schleef.org>
13510
13511         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
13512           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
13513           Many little fixes and additions of debug statements to
13514           get rhythmbox working.
13515
13516 2003-12-23  Colin Walters  <walters@verbum.org>
13517
13518         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
13519         Use GST_PAD_LINK_SUCCESSFUL.
13520
13521 2003-12-23  David Schleef  <ds@schleef.org>
13522
13523         * gst/elements/gstaggregator.c:
13524         * gst/elements/gsttee.c:
13525           Use gst_pad_proxy_getcaps().
13526         * gst/gstpad.c:
13527         * gst/gstpad.h:
13528           Add gst_pad_proxy_getcaps(), which filter elements can use
13529           as a generic getcaps implementation.
13530           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
13531           was advertised.
13532
13533 2003-12-23  David Schleef  <ds@schleef.org>
13534
13535         * gst/gstpad.c:
13536           Rearrange/rewrite much of the pad negotiation code, since it
13537           resembled pasta.  This actually changes the way some
13538           negotiation works, since the previous code was inconsistent
13539           depending on how it was invoked.  Add (internal) structure
13540           GstPadLink, which is used to hold some information (more in
13541           the future) about the link between two pads.  Fixes a number
13542           of bugs, including random lossage of filter caps when the
13543           initial negotiation is delayed.  A few functions are still
13544           unimplemented.
13545         * gst/gstpad.h:
13546           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
13547           these when testing GstPadLinkReturn values instead of comparing
13548           directly.
13549
13550 2003-12-23  David Schleef  <ds@schleef.org>
13551
13552         * gst/gstvalue.c: 
13553         * gst/gstvalue.h:
13554           Rearrange lots of code.  Change registration of compare function
13555           into registration of compare/serialize/deserialize functions.
13556           Doesn't include implementation of gst_value_[de]serialize(),
13557           but that should be easy.
13558
13559 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13560
13561         * docs/gst/gstreamer-sections.txt:
13562         * docs/gst/tmpl/gstprops.sgml: removed
13563         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
13564           David removed props and caps code, so let's remove their docs as well.
13565           Removed all no longer existing symbols from gstreamer-sections.txt
13566           
13567 2003-12-22  Colin Walters  <walters@verbum.org>
13568
13569         * gst/gsttaginterface.c, gst/gsttaginterface.h,
13570           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
13571           of tags directly.
13572
13573 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13574
13575         * gst/elements/gstelements.c:
13576           Set ranks of elements to NONE, so the autoplugger doesn't use them.
13577         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
13578           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
13579           gst_caps (peer).
13580
13581 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13582
13583         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
13584         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
13585         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
13586         (gst_spider_identity_sink_loop_type_finding):
13587         * gst/autoplug/gstspideridentity.h:
13588           Fix autoplugging in spider element, so it works with new caps.
13589           This was mainly caused by identifying empty caps incorrectly.
13590
13591 2003-12-22  David Schleef  <ds@schleef.org>
13592
13593         * gststructure.c, gstvalue.c, gstvalue.h: Add
13594           gst_value_init_and_copy() and use it, to avoid silly mistakes in
13595           using g_value_copy()
13596
13597 2003-12-21  David Schleef  <ds@schleef.org>
13598
13599         * many, many files: Merge CAPS branch.  This includes:
13600           - implemention of GstValue and several GstValue types
13601           - implemention of GstStructure
13602           - entire rewrite of GstCaps
13603           - removal of GstProps
13604           - many changes to GstPad to compensate for new caps paradigm
13605           - removal of GstBufferpool
13606         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
13607         gstvalue.h, gst/gstcaps[2]*.[ch]:
13608           - rename gstcaps2.[ch] to gstcaps.[ch]
13609
13610 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13611
13612         * gst/gstqueue.c: (gst_queue_handle_pending_events),
13613         (gst_queue_chain), (gst_queue_handle_src_event):
13614           implement timeout for sending events. Workaround for if the
13615           pipeline on this queue is not passing any data.
13616
13617 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
13618                                                                                 
13619         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
13620         * moved CVS to freedesktop.org
13621