gst/elements/gsttypefindelement.*: Set caps on all outgoing buffers, not just the...
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
2
3         * gst/elements/gsttypefindelement.c:
4         (gst_type_find_element_have_type), (gst_type_find_element_init),
5         (stop_typefinding), (gst_type_find_element_handle_event),
6         (gst_type_find_element_chain), (gst_type_find_element_getrange):
7         * gst/elements/gsttypefindelement.h:
8           Set caps on all outgoing buffers, not just the first one.
9
10 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
11
12         * gst/elements/gsttypefindelement.c:
13         (gst_type_find_element_have_type),
14         (gst_type_find_element_check_set_buffer_caps),
15         (gst_type_find_element_init), (stop_typefinding),
16         (gst_type_find_element_handle_event),
17         (gst_type_find_element_chain), (gst_type_find_element_getrange):
18         * gst/elements/gsttypefindelement.h:
19           Set caps on first outgoing buffer when we've found the type.
20
21 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
22
23         * docs/gst/gstreamer-docs.sgml:
24         * docs/gst/gstreamer-sections.txt:
25         * docs/gst/tmpl/gstscheduler.sgml:
26         * docs/gst/tmpl/gstschedulerfactory.sgml:
27           Remove some old cruft from docs.
28
29 2005-07-31  Tim-Philipp Müller  <tim at centricular dot net>
30
31         * gst/gstpad.h:
32           Fix inline docs for GstPadLinkReturn.
33           
34         * gst/gststructure.c: (gst_structure_has_name):
35         * gst/gststructure.h:
36         * docs/gst/gstreamer-sections.txt:
37           New API: gst_structure_has_name().
38
39 2005-07-30  Tim-Philipp Müller  <tim at centricular dot net>
40
41         * configure.ac:
42           Use AC_SYS_LARGEFILE, which will set _FILE_OFFSET_BITS=64
43           and _LARGEFILE_SOURCE in config.h as required. Do not 
44           export those flags in our .pc files any longer (#142209).
45
46           Remove unused GST_DISABLE_OMEGA_COTHREADS stuff.
47
48         * gst/elements/gstfilesink.c: (gst_file_sink_class_init),
49         (gst_file_sink_do_seek), (gst_file_sink_event),
50         (gst_file_sink_get_current_offset), (gst_file_sink_render):
51           Redo seek/tell calls with large file support in mind; add some
52           debugging messages; add log message that tells us when large
53           file support is unavailable or not enabled for some reason.
54
55         * gst/elements/gstfilesrc.c: (gst_file_src_class_init):
56           Add log message that tells us when large file support 
57           is unavailable or not enabled for some reason.
58
59 2005-07-29  Wim Taymans  <wim@fluendo.com>
60
61         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
62         Added test for removing an element with ghostpad from a bin.
63         Fixed test as current implementation does the right thing.
64
65         * gst/gstghostpad.c: (gst_proxy_pad_class_init),
66         (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
67         (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
68         (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
69         (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
70         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
71         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
72         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
73         (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
74         (gst_proxy_pad_get_target), (gst_proxy_pad_init),
75         (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
76         (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
77         (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
78         (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
79         (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
80         (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
81         * gst/gstghostpad.h:
82         Clean up ghostpads, remove properties for internal stuff.
83         Make threadsafe.
84         Fix refcounting.
85         Prepare for switching targets, not all use cases work yet.
86
87 2005-07-29  Wim Taymans  <wim@fluendo.com>
88
89         * docs/design/part-gstghostpad.txt:
90         Small update.
91
92         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
93         (gst_bin_remove_func):
94         Unlinking pads while holding the bin LOCK is not a good
95         idea.
96
97         * gst/gstpad.c: (gst_pad_class_init),
98         (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
99         (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
100         No prob setting template after creating the pad.
101
102 2005-07-29  Jan Schmidt  <thaytan@mad.scientist.com>
103
104         * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
105         (gst_bus_peek), (gst_bus_source_dispatch),
106         (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
107         (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
108           gst_bus_poll may be called from other threads. Handle
109           this nicely by not making poll_data disappear off the
110           stack once gst_bus_poll returns.
111           gst_bus_peek now increments the refcount on the returned
112           message.
113
114 2005-07-29  Wim Taymans  <wim@fluendo.com>
115
116         * docs/design/part-gstghostpad.txt:
117         Overview of current GhostPad datastructures and use
118         cases for changing the target.
119
120 2005-07-28  Wim Taymans  <wim@fluendo.com>
121
122         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
123         Added checks for hierarchy consistency whan adding linked
124         elements to bins.
125
126         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
127         Added check to test element scheduling without bin/pipeline.
128
129         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
130         First add elements to bin, then link.
131         
132         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
133         (gst_bin_remove_func):
134         Unlink pads from elements added/removed from bin to maintain
135         hierarchy consistency.
136
137 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
138
139         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
140         (gst_base_transform_handle_buffer):
141         * gst/base/gstbasetransform.h:
142           Remove broken delay_configure (fixes renegotiation of software
143           scaling pipelines); remove some leftover printf()s.
144
145 2005-07-28  Wim Taymans  <wim@fluendo.com>
146
147         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
148         Added some more tests for wrong hierarchy
149
150         * docs/design/part-overview.txt:
151         Some updates.
152
153         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
154         Cleanups.
155
156         * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
157         (gst_element_dispose):
158         Some more cleanups.
159
160         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
161         (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
162         (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
163         (gst_pad_set_caps), (gst_pad_send_event):
164         Check for correct hierarchy when linking pads. Moving to
165         strict requirement for ghostpads when linking elements in
166         different bins.
167
168         * gst/gstpad.h:
169         Clean ups. Added WRONG_HIERARCHY return value.
170
171 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
172
173         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
174           Better debug if no transform is possible.
175
176 2005-07-27  Wim Taymans  <wim@fluendo.com>
177
178         * docs/random/wtay/network-transp:
179         Some old doc I had.
180
181 2005-07-27  Wim Taymans  <wim@fluendo.com>
182
183         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
184         (gst_dp_event_from_packet):
185         Fix serialization of seek events.
186
187 2005-07-27  Wim Taymans  <wim@fluendo.com>
188
189         * check/gst-libs/gdp.c: (GST_START_TEST):
190         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
191         Fix compilation and fix event serialization.
192
193 2005-07-27  Wim Taymans  <wim@fluendo.com>
194
195         * CHANGES-0.9:
196         * docs/design/part-TODO.txt:
197         * docs/design/part-events.txt:
198         Some docs updates
199
200         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
201         (gst_base_sink_event), (gst_base_sink_do_sync),
202         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
203         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
204         (gst_base_src_do_seek), (gst_base_src_event_handler),
205         (gst_base_src_loop):
206         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
207         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
208         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
209         (gst_base_transform_event), (gst_base_transform_handle_buffer),
210         (gst_base_transform_set_passthrough),
211         (gst_base_transform_is_passthrough):
212         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
213         * gst/elements/gstfilesink.c: (gst_file_sink_event):
214         Event updates.
215
216         * gst/gstbuffer.h:
217         Use faster casts.
218
219         * gst/gstelement.c: (gst_element_seek):
220         * gst/gstelement.h:
221         Update gst_element_seek.
222
223         * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
224         (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
225         (gst_event_new_flush_start), (gst_event_new_flush_stop),
226         (gst_event_new_eos), (gst_event_new_newsegment),
227         (gst_event_parse_newsegment), (gst_event_new_tag),
228         (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
229         (gst_event_parse_qos), (gst_event_new_seek),
230         (gst_event_parse_seek), (gst_event_new_navigation):
231         * gst/gstevent.h:
232         Make GstEvent use GstStructure. Add parsing code, make sure the
233         API is sufficiently generic.
234         Mark possible directions of events and serialization.
235
236         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
237         (_gst_message_copy), (gst_message_new_segment_start),
238         (gst_message_new_segment_done), (gst_message_new_custom),
239         (gst_message_parse_segment_start),
240         (gst_message_parse_segment_done):
241         Small cleanups.
242
243         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
244         (gst_pad_set_caps), (gst_pad_send_event):
245         Update for new events. 
246         Catch events sent in wrong directions.
247
248         * gst/gstqueue.c: (gst_queue_link_src),
249         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
250         (gst_queue_handle_src_query):
251         Event updates.
252
253         * gst/gsttag.c:
254         * gst/gsttag.h:
255         Remove event code from this file.
256
257         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
258         (gst_dp_event_from_packet):
259         Event updates.
260
261 2005-07-27  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
262
263         * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
264         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
265         (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
266           Make debugging actually useful.
267
268 2005-07-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
269
270         * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
271         (gst_pad_fixate_caps):
272           Implement default fixation once again, so that gst_pad_fixate()
273           actually does anything at all. This probably needs to be some
274           sort of a last resort, and use profile-based fixation first, but
275           since that doesn't exist yet, this is the best we have. Fixes
276           visualization in Totem.
277
278 2005-07-22  Wim Taymans  <wim@fluendo.com>
279
280         * docs/design/part-events.txt:
281         Small update.
282
283         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
284         (gst_base_sink_do_sync), (gst_base_sink_activate_push),
285         (gst_base_sink_activate_pull):
286         Some more comments.
287
288         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
289         (gst_fake_src_create):
290         Fix handoff marshall.
291
292         * gst/elements/gstidentity.c: (gst_identity_class_init),
293         (gst_identity_transform_ip):
294         We're a real inplace element.
295
296         * gst/gstbus.c: (gst_bus_post):
297         Added some comments.
298
299         * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
300         * tests/muxing/case1.c: (main):
301         * tests/sched/dynamic-pipeline.c: (main):
302         * tests/sched/interrupt1.c: (main):
303         * tests/sched/interrupt2.c: (main):
304         * tests/sched/interrupt3.c: (main):
305         * tests/sched/runxml.c: (main):
306         * tests/sched/sched-stress.c: (main):
307         * tests/seeking/seeking1.c: (event_received), (main):
308         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
309         (main):
310         * tests/threadstate/threadstate3.c: (main):
311         * tests/threadstate/threadstate4.c: (main):
312         * tests/threadstate/threadstate5.c: (main):
313         Fix the tests.
314
315 2005-07-21  Wim Taymans  <wim@fluendo.com>
316
317         * docs/design/part-seeking.txt:
318         Some small additions.
319
320         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
321         (gst_base_sink_get_times), (gst_base_sink_do_sync),
322         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
323         * gst/base/gstbasesink.h:
324         discont values are gint64, handle the math correctly.
325
326         * gst/base/gstbasesrc.c: (gst_base_src_loop):
327         Make the basesrc report error if the source pad is not linked.
328
329         * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
330         (gst_queue_loop), (gst_queue_handle_src_query),
331         (gst_queue_src_activate_push):
332         Make queue collect data even if the srcpad is not linked.
333         Start pushing out data as soon as it is linked.
334
335         * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
336         * gst/gstutils.h:
337         Added gst_flow_get_name() to ease error reporting.
338
339 2005-07-20  Wim Taymans  <wim@fluendo.com>
340
341         * gst/gstmessage.c: (gst_message_new_segment_start),
342         (gst_message_new_segment_done), (gst_message_parse_segment_start),
343         (gst_message_parse_segment_done):
344         * gst/gstmessage.h:
345         Added a bunch of messages for advanced seeking.
346
347         * gst/parse/grammar.y:
348         * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
349         (gst_dpman_state_changed):
350         Fix some new-pad -> pad-added signals
351
352 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
353
354         * docs/manual/appendix-porting.xml:
355         * docs/pwg/appendix-porting.xml:
356           Document new-pad/state-change signal renames and the FixedList
357           type rename.
358
359 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
360
361         * docs/manual/advanced-autoplugging.xml:
362         * docs/manual/basics-helloworld.xml:
363         * docs/manual/basics-pads.xml:
364         * docs/random/ds/0.9-suggested-changes:
365         * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
366         * gst/gstelement.h:
367         * gst/gstevent.h:
368         * gst/gstformat.h:
369         * gst/gstquery.h:
370         * gst/gststructure.c: (gst_structure_value_get_generic_type),
371         (gst_structure_parse_array), (gst_structure_parse_value):
372         * gst/gstvalue.c: (gst_type_is_fixed),
373         (gst_value_list_prepend_value), (gst_value_list_append_value),
374         (gst_value_list_get_size), (gst_value_list_get_value),
375         (gst_value_transform_array_string), (gst_value_serialize_array),
376         (gst_value_deserialize_array), (gst_value_intersect_array),
377         (gst_value_is_fixed), (_gst_value_initialize):
378         * gst/gstvalue.h:
379           GstElement::new-pad -> pad-added, GstElement::state-change ->
380           state-changed, GstValueFixedList -> GstValueArray, add format and
381           flags as their own arguments in gst_element_seek() (should improve
382           "bindeability"), remove function generators since they don't work
383           under a whole bunch of compilers (they were deprecated already
384           anyway).
385
386 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
387
388         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
389         (_gst_debug_register_funcptr):
390         * gst/gstinfo.h:
391           Fix illegal cast on some platforms (#309253).
392
393 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
394
395         * gst/gstmessage.c: (gst_message_new_custom):
396         * gst/gstmessage.h:
397           Add _new_custom, make _new_application a macro to _new_custom.
398
399 2005-07-20  Wim Taymans  <wim@fluendo.com>
400
401         * gst/base/gstbasesrc.c: (gst_base_src_init),
402         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
403         * gst/base/gstbasesrc.h:
404         Add a gboolean to decide when to push out a discont.
405
406         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
407         (gst_queue_loop), (gst_queue_handle_src_query),
408         (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
409         (gst_queue_set_property), (gst_queue_get_property):
410         Some cleanups.
411
412         * tests/threadstate/threadstate1.c: (main):
413         Make a thread test compile and run... very silly..
414
415
416 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
417
418         * docs/manual/appendix-porting.xml:
419           Mention removal of libgstgconf-0.9.la and existence of gconf
420           elements.
421
422 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
423
424         * docs/pwg/advanced-clock.xml:
425         * docs/pwg/appendix-porting.xml:
426         * docs/pwg/intro-preface.xml:
427         * docs/pwg/other-base.xml:
428         * docs/pwg/other-manager.xml:
429         * docs/pwg/other-nton.xml:
430         * docs/pwg/other-ntoone.xml:
431         * docs/pwg/other-oneton.xml:
432         * docs/pwg/pwg.xml:
433           Document base classes, update sections of n-to-1 and 1-to-n (muxer,
434           demuxer), remove n-to-n (was never written), fix some code examples
435           and links and update the porting section to include all this.
436
437 2005-07-19  Wim Taymans  <wim@fluendo.com>
438
439         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
440         (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
441         (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
442         (gst_queue_src_activate_push), (gst_queue_change_state),
443         (gst_queue_get_property):
444         * gst/gstqueue.h:
445         Propagate GstFlowReturn more intelligently upstream and output
446         an ERROR/EOS when streaming stopped due to fatal error.
447
448 2005-07-19  Wim Taymans  <wim@fluendo.com>
449
450         * tools/gst-launch.c: (check_intr), (event_loop), (main):
451         Don't block forever for the state change to complete, the
452         pipeline already did with a sensible timeout.
453
454 2005-07-19  Wim Taymans  <wim@fluendo.com>
455
456         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
457         Make sure we never call the create function is we
458         got deactivated.
459
460 2005-07-19  Andy Wingo  <wingo@pobox.com>
461
462         * gst/parse/parse.l: Attempt to solve bug #172815.
463
464 2005-07-19  Wim Taymans  <wim@fluendo.com>
465
466         * docs/design/part-clocks.txt:
467         * docs/design/part-events.txt:
468         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
469         Small docs updates.
470         Only update the seeking values when we are not
471         busy streaming.
472
473 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
474
475         * gst/base/gstbasesrc.c: (gst_base_src_loop):
476           Oops, ignore the result of gst_pad_push_event here.
477
478 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
479
480         * gst/base/gstbasesrc.c: (gst_base_src_loop),
481         (gst_base_src_activate_push):
482           Send discont event from the loop function, as pads
483           aren't activated yet in the activate_push handler.
484
485         * gst/gstbin.c: (bin_bus_handler):
486           Don't leak element name.
487
488 2005-07-18  Andy Wingo  <wingo@pobox.com>
489
490         * configure.ac: Use AS_LIBTOOL_TAGS.
491
492 2005-07-18  Wim Taymans  <wim@fluendo.com>
493
494         * docs/gst/gstreamer.types:
495         Remove deleted types.
496
497 2005-07-18  Wim Taymans  <wim@fluendo.com>
498
499         * check/elements/gstfakesrc.c: (GST_START_TEST):
500         * configure.ac:
501         * gst/Makefile.am:
502         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
503         (init_popt_callback):
504         * gst/gst.h:
505         * gst/gst_private.h:
506         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
507         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
508         * gst/gstbin.h:
509         * gst/gstbus.h:
510         * gst/gstconfig.h.in:
511         * gst/gstelement.c: (gst_element_class_init),
512         (gst_element_set_base_time), (gst_element_get_base_time),
513         (iterator_fold_with_resync), (gst_element_change_state),
514         (gst_element_dispose), (gst_element_get_bus):
515         * gst/gstelement.h:
516         * gst/gstelementfactory.h:
517         * gst/gsterror.c: (_gst_core_errors_init):
518         * gst/gsterror.h:
519         * gst/gstevent.h:
520         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
521         * gst/gstindex.c:
522         * gst/gstinfo.c: (_gst_debug_init):
523         * gst/gstmessage.c: (_gst_message_copy):
524         * gst/gstmessage.h:
525         * gst/gstminiobject.h:
526         * gst/gstobject.c:
527         * gst/gstobject.h:
528         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
529         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
530         * gst/gstpad.h:
531         * gst/gstparse.h:
532         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
533         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
534         (gst_pipeline_get_last_stream_time):
535         * gst/gstpipeline.h:
536         * gst/gstpluginfeature.h:
537         * gst/gstquery.h:
538         * gst/gstscheduler.c:
539         * gst/gstscheduler.h:
540         * gst/gststructure.h:
541         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
542         (gst_task_finalize), (gst_task_func), (gst_task_create),
543         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
544         (gst_task_stop), (gst_task_pause):
545         * gst/gsttask.h:
546         * gst/gsttypefind.h:
547         * gst/gsttypes.h:
548         * gst/registries/gstlibxmlregistry.c: (load_feature),
549         (gst_xml_registry_load), (gst_xml_registry_save_feature):
550         * gst/registries/gstxmlregistry.c:
551         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
552         * gst/schedulers/threadscheduler.c:
553         * libs/gst/control/dparammanager.h:
554         * tools/gst-inspect.c: (print_element_list),
555         (print_plugin_features), (print_element_features):
556         * tools/gst-xmlinspect.c: (print_element_list),
557         (print_plugin_info), (main):
558         Removed plugable schedulers.
559         Removed Scheduler/Manager from elements.
560         Removed gsttypes.h, rearranged includes.
561         Removed dependency pad<->element, element<>pipeline, and
562         various others,  fix includes.
563         implement gst_pad_get_parent() with gst_object_get_parent()
564         Make GstTask sefcontained.
565         Fix _get_state() on GstBin, it did not return ASYNC with a 0
566         timeout.
567         Fix endless loop in iterator_fold_with_resync.
568
569
570 2005-07-18  Wim Taymans  <wim@fluendo.com>
571
572         * gst/Makefile.am:
573         * gst/gstarch.h:
574         Remove old file.
575
576 2005-07-18  Wim Taymans  <wim@fluendo.com>
577
578         * gst/Makefile.am:
579         No more cothreads.h
580
581 2005-07-18  Wim Taymans  <wim@fluendo.com>
582
583         * gst/cothreads.c:
584         * gst/cothreads.h:
585         Let's remove these.
586
587 2005-07-18  Wim Taymans  <wim@fluendo.com>
588
589         * docs/design/part-dynamic.txt:
590         * docs/design/part-events.txt:
591         * docs/design/part-seeking.txt:
592         Some more docs in the works.
593
594         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
595         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
596         (gst_base_transform_setcaps), (gst_base_transform_get_size),
597         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
598         (gst_base_transform_handle_buffer),
599         (gst_base_transform_sink_activate_push),
600         (gst_base_transform_src_activate_pull),
601         (gst_base_transform_set_passthrough),
602         (gst_base_transform_is_passthrough):
603         Refcounting fixes.
604
605         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
606         Cleanups.
607
608         * gst/gstevent.c: (gst_event_finalize):
609         Set SRC to NULL.
610
611         * gst/gstutils.c: (gst_element_unlink),
612         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
613         (gst_pad_proxy_setcaps):
614         * gst/gstutils.h:
615         Add _get_parent_element() to get a pads parent as an element.
616
617 2005-07-18  Wim Taymans  <wim@fluendo.com>
618
619         * check/gst/gstbin.c: (GST_START_TEST):
620         Remove bogus test.
621
622 2005-07-18  Wim Taymans  <wim@fluendo.com>
623
624         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
625         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
626         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
627         (gst_base_sink_event), (gst_base_sink_do_sync),
628         (gst_base_sink_chain), (gst_base_sink_loop),
629         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
630         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
631         Refcounting fixes.
632         Fix logic for returning ASYNC when not prerolled.
633
634 2005-07-18  Wim Taymans  <wim@fluendo.com>
635
636         * gst/gstqueue.c: (gst_queue_handle_sink_event):
637         Fix nasty refcount bug.
638
639 2005-07-16 Philippe Khalaf <burger@speedy.org>
640         * gst/elements/gstfdsrc.c:
641         * gst/elements/gstfdsrc.h:
642         * gst/elements/gstelements.c:
643         * gst/elements/Makefile.am:
644         Ported fdsrc to 0.9.
645
646 2005-07-16  Wim Taymans  <wim@fluendo.com>
647
648         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
649         (gst_base_sink_do_sync):
650         Fix compile error.
651
652 2005-07-16  Wim Taymans  <wim@fluendo.com>
653
654         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
655         (gst_base_sink_event), (gst_base_sink_get_times),
656         (gst_base_sink_do_sync), (gst_base_sink_change_state):
657         * gst/base/gstbasesink.h:
658         Store and use discont values when syncing buffers as described
659         in design docs.
660         
661         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
662         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
663         (gst_base_src_activate_push):
664         Push discont event when starting.
665
666         * gst/elements/gstidentity.c: (gst_identity_transform):
667         Small cleanups.
668
669         * gst/gstbin.c: (gst_bin_change_state):
670         Small cleanups in base_time  distribution.
671
672         * gst/gstelement.c: (gst_element_set_base_time),
673         (gst_element_get_base_time), (gst_element_change_state):
674         * gst/gstelement.h:
675         Added methods for the base_time of the element.
676         Some MT fixes.
677
678         * gst/gstpipeline.c: (gst_pipeline_send_event),
679         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
680         (gst_pipeline_get_last_stream_time):
681         * gst/gstpipeline.h:
682         MT fixes.
683         Handle seeking as described in design doc, remove stream_time
684         hack.
685         Cleanups clock and stream_time selection code. Added accessors
686         for the stream_time.
687         
688
689 2005-07-16  Andy Wingo  <wingo@pobox.com>
690
691         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
692         (#305291).
693
694 2005-07-16  Wim Taymans  <wim@fluendo.com>
695
696         * check/gst/gstbin.c: (GST_START_TEST):
697         Make elements silent as the deep_notify refs the
698         parent, which might make the test fail.
699
700         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
701         Don't hold the lock for too long.
702
703 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
704
705         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
706           Don't unref the caps we passed to gst_caps_make_writable() after
707           passing them. gst_caps_make_writable() will do that for us.
708
709 2005-07-15  Andy Wingo  <wingo@pobox.com>
710
711         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
712         (#157311).
713
714         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
715         own marshalling function for the handoff signal. Properly type the
716         buffer as a buffer. Fixes some warnings. Should do a more general
717         solution.
718         (gst_identity_class_init): Plug into the right marshaller.
719
720 2005-07-15  Wim Taymans  <wim@fluendo.com>
721
722         * docs/design/part-TODO.txt:
723         * docs/design/part-clocks.txt:
724         * docs/design/part-element-sink.txt:
725         * docs/design/part-events.txt:
726         * docs/design/part-gstpipeline.txt:
727         Updated docs, mostly DISCONT related.
728
729 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
730
731         * docs/pwg/building-pads.xml:
732           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
733
734 2005-07-15  Andy Wingo  <wingo@pobox.com>
735
736         * tools/gst-typefind.c: Update, add copyright block.
737
738         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
739         Normalize and truncate caps before fixation.
740
741         * gst/gstcaps.h:
742         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
743         discards all but the first structure from its argument.
744
745 2005-07-15  Wim Taymans  <wim@fluendo.com>
746
747         * gst/base/gstbasetransform.c: (gst_base_transform_init),
748         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
749         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
750         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
751         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
752         (gst_base_transform_chain), (gst_base_transform_change_state),
753         (gst_base_transform_set_passthrough),
754         (gst_base_transform_is_passthrough):
755         * gst/base/gstbasetransform.h:
756         Make passthrough work using the bufferpools.
757         Changed API a bit, subclasses have to write into a buffer
758         provided by the base class.
759         More debug info in nego functions.
760         
761         * gst/elements/gstidentity.c: (gst_identity_init),
762         (gst_identity_transform):
763         Port to new base class.
764
765 2005-07-15  Wim Taymans  <wim@fluendo.com>
766
767         * gst/gstmessage.c: (gst_message_new_state_changed):
768         * tools/gst-launch.c: (event_loop), (main):
769         Totally dump messages in -launch with the -m option.
770         Fix message name for State messages,
771
772 2005-07-14  Wim Taymans  <wim@fluendo.com>
773
774         * gst/base/gstbasesrc.c: (gst_base_src_loop):
775         Post error messages on errors.
776
777 2005-07-14  Wim Taymans  <wim@fluendo.com>
778
779         * gst/gstcaps.c: (gst_caps_do_simplify):
780         Remove debug info.
781
782         * gst/gsterror.h:
783         Define error for stream stopped.
784
785         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
786         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
787         Do proper return values.
788
789         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
790         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
791         (gst_pad_get_range):
792         Better return values.
793
794         * gst/gstpad.h:
795         Reorganise return values, add macro to check for fatal errors.
796
797         * gst/gstqueue.c: (gst_queue_chain):
798         Return proper GstFlowReturn values,
799
800 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
801
802         * docs/gst/gstreamer-sections.txt:
803         * docs/gst/gstreamer.types:
804         * docs/gst/tmpl/gst.sgml:
805         * docs/gst/tmpl/gstbasesink.sgml:
806         * docs/gst/tmpl/gstbasesrc.sgml:
807         * docs/gst/tmpl/gstbasetransform.sgml:
808         * docs/gst/tmpl/gstbin.sgml:
809         * docs/gst/tmpl/gstbuffer.sgml:
810         * docs/gst/tmpl/gstcaps.sgml:
811         * docs/gst/tmpl/gstclock.sgml:
812         * docs/gst/tmpl/gstcompat.sgml:
813         * docs/gst/tmpl/gstconfig.sgml:
814         * docs/gst/tmpl/gstelement.sgml:
815         * docs/gst/tmpl/gstelementdetails.sgml:
816         * docs/gst/tmpl/gstelementfactory.sgml:
817         * docs/gst/tmpl/gstenumtypes.sgml:
818         * docs/gst/tmpl/gsterror.sgml:
819         * docs/gst/tmpl/gstevent.sgml:
820         * docs/gst/tmpl/gstfakesink.sgml:
821         * docs/gst/tmpl/gstfakesrc.sgml:
822         * docs/gst/tmpl/gstfilesink.sgml:
823         * docs/gst/tmpl/gstfilesrc.sgml:
824         * docs/gst/tmpl/gstfilter.sgml:
825         * docs/gst/tmpl/gstformat.sgml:
826         * docs/gst/tmpl/gstghostpad.sgml:
827         * docs/gst/tmpl/gstimplementsinterface.sgml:
828         * docs/gst/tmpl/gstindex.sgml:
829         * docs/gst/tmpl/gstindexfactory.sgml:
830         * docs/gst/tmpl/gstinfo.sgml:
831         * docs/gst/tmpl/gstiterator.sgml:
832         * docs/gst/tmpl/gstmacros.sgml:
833         * docs/gst/tmpl/gstmemchunk.sgml:
834         * docs/gst/tmpl/gstminiobject.sgml:
835         * docs/gst/tmpl/gstobject.sgml:
836         * docs/gst/tmpl/gstpad.sgml:
837         * docs/gst/tmpl/gstpadtemplate.sgml:
838         * docs/gst/tmpl/gstparse.sgml:
839         * docs/gst/tmpl/gstpipeline.sgml:
840         * docs/gst/tmpl/gstplugin.sgml:
841         * docs/gst/tmpl/gstpluginfeature.sgml:
842         * docs/gst/tmpl/gstquery.sgml:
843         * docs/gst/tmpl/gstqueue.sgml:
844         * docs/gst/tmpl/gstregistry.sgml:
845         * docs/gst/tmpl/gstregistrypool.sgml:
846         * docs/gst/tmpl/gstscheduler.sgml:
847         * docs/gst/tmpl/gstschedulerfactory.sgml:
848         * docs/gst/tmpl/gststructure.sgml:
849         * docs/gst/tmpl/gstsystemclock.sgml:
850         * docs/gst/tmpl/gsttaglist.sgml:
851         * docs/gst/tmpl/gsttagsetter.sgml:
852         * docs/gst/tmpl/gsttrace.sgml:
853         * docs/gst/tmpl/gsttrashstack.sgml:
854         * docs/gst/tmpl/gsttypefind.sgml:
855         * docs/gst/tmpl/gsttypefindfactory.sgml:
856         * docs/gst/tmpl/gsttypes.sgml:
857         * docs/gst/tmpl/gsturihandler.sgml:
858         * docs/gst/tmpl/gsturitype.sgml:
859         * docs/gst/tmpl/gstutils.sgml:
860         * docs/gst/tmpl/gstvalue.sgml:
861         * docs/gst/tmpl/gstversion.sgml:
862         * docs/gst/tmpl/gstxml.sgml:
863         * docs/libs/tmpl/gstcontrol.sgml:
864         * docs/libs/tmpl/gstdataprotocol.sgml:
865         * docs/libs/tmpl/gstdparam.sgml:
866         * docs/libs/tmpl/gstdplinint.sgml:
867         * docs/libs/tmpl/gstdpman.sgml:
868         * docs/libs/tmpl/gstdpsmooth.sgml:
869         * docs/libs/tmpl/gstgetbits.sgml:
870         * docs/libs/tmpl/gstunitconvert.sgml:
871         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
872         (gst_push_src_base_init), (gst_push_src_class_init),
873         (gst_push_src_init), (gst_push_src_create):
874         * gst/base/gstpushsrc.h:
875         * gst/elements/gstelements.c:
876         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
877         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
878         (gst_fake_sink_init), (gst_fake_sink_set_property),
879         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
880         (gst_fake_sink_event), (gst_fake_sink_preroll),
881         (gst_fake_sink_render), (gst_fake_sink_change_state):
882         * gst/elements/gstfakesink.h:
883         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
884         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
885         (gst_fake_src_base_init), (gst_fake_src_class_init),
886         (gst_fake_src_init), (gst_fake_src_event_handler),
887         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
888         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
889         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
890         (gst_fake_src_create_buffer), (gst_fake_src_create),
891         (gst_fake_src_start), (gst_fake_src_stop):
892         * gst/elements/gstfakesrc.h:
893         * gst/elements/gstfilesink.c: (_do_init),
894         (gst_file_sink_base_init), (gst_file_sink_class_init),
895         (gst_file_sink_init), (gst_file_sink_dispose),
896         (gst_file_sink_set_location), (gst_file_sink_set_property),
897         (gst_file_sink_get_property), (gst_file_sink_open_file),
898         (gst_file_sink_close_file), (gst_file_sink_query),
899         (gst_file_sink_event), (gst_file_sink_render),
900         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
901         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
902         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
903         * gst/elements/gstfilesink.h:
904         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
905         (gst_file_src_class_init), (gst_file_src_init),
906         (gst_file_src_finalize), (gst_file_src_set_location),
907         (gst_file_src_set_property), (gst_file_src_get_property),
908         (gst_file_src_map_region), (gst_file_src_map_small_region),
909         (gst_file_src_create_mmap), (gst_file_src_create_read),
910         (gst_file_src_create), (gst_file_src_is_seekable),
911         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
912         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
913         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
914         (gst_file_src_uri_handler_init):
915         * gst/elements/gstfilesrc.h:
916           more autistic cleanliness in functions/names/defines
917
918 2005-07-13  Andy Wingo  <wingo@pobox.com>
919
920         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
921         source couldn't negotiate.
922
923         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
924         connections again.
925
926         * gst/gstutils.h:
927         * gst/gstutils.c (gst_element_link_pads_filtered): New old
928         function. I am channeling Hades. Put your boots on suckers!!!
929
930 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
931
932         * testsuite/caps/Makefile.am:
933         * testsuite/caps/value_compare.c:
934         * testsuite/caps/value_intersect.c:
935         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
936           move two testsuite apps over to the check dir
937
938 2005-07-12  Wim Taymans  <wim@fluendo.com>
939
940         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
941         Added more debug info in the negotiate process.
942
943         * gst/gstmessage.h:
944         Prepare for segment playback.
945
946         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
947         Better debugging.
948
949         * gst/gstutils.c:
950         Some more docs.
951
952         * tools/gst-launch.c: (main):
953         NULL pipeline on errors.
954
955 2005-07-12  Andy Wingo  <wingo@pobox.com>
956
957         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
958         not it comes from a malloc region. Make sure our copy gets freed.
959
960 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
961
962         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
963         * check/gst/gstmessage.c: (GST_START_TEST):
964         * check/gst/gststructure.c: (GST_START_TEST),
965         (gst_structure_suite), (main):
966           more testing
967         * gst/gstelement.c: (gst_element_message_full):
968           clean up GError and debug string now that they get copied
969         * gst/gstmessage.c: (gst_message_new_error),
970         (gst_message_new_warning), (gst_message_parse_error),
971         (gst_message_parse_warning):
972           use GST_TYPE_G_ERROR for structure_new, and take copies of
973           arguments, so that we don't mess up refcounting
974
975 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
976
977         * check/Makefile.am:
978           add per-test valgrind targets
979         * check/gst-libs/gdp.c: (GST_START_TEST),
980         (gst_data_protocol_suite), (main):
981           clean up
982
983 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
984
985         * check/Makefile.am:
986           instate more valgrindable tests
987         * check/elements/gstfakesrc.c: (chain_func), (event_func),
988         (GST_START_TEST), (fakesrc_suite):
989         * check/gst/gstpad.c: (GST_START_TEST):
990         * check/gst/gststructure.c: (GST_START_TEST):
991           fix test leaks
992         * docs/gst/tmpl/gstminiobject.sgml:
993         * gst/gstpad.c: (gst_pad_finalize):
994           fix the static mutex leak
995
996 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
997
998         * check/Makefile.am:
999           add two more tests for valgrinding
1000         * check/gst/gstvalue.c: (GST_START_TEST):
1001           test refcount of deserialized buffer, found a leak
1002         * docs/gst/gstreamer-docs.sgml:
1003         * docs/gst/gstreamer-sections.txt:
1004         * docs/gst/gstreamer.types:
1005         * docs/gst/tmpl/gstminiobject.sgml:
1006           add miniobject to docs
1007         * gst/gstminiobject.c:
1008           add some docs
1009         * gst/gstvalue.c: (gst_value_deserialize_buffer),
1010         (gst_string_unwrap):
1011           fix a hard-to-find invalid write for one of the tests
1012           fix a leak for deserialized buffers
1013
1014 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1015
1016         * docs/pwg/advanced-events.xml:
1017         * docs/pwg/advanced-request.xml:
1018         * docs/pwg/advanced-scheduling.xml:
1019         * docs/pwg/appendix-porting.xml:
1020         * docs/pwg/building-boiler.xml:
1021         * docs/pwg/intro-preface.xml:
1022         * docs/pwg/other-ntoone.xml:
1023           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
1024           of example code and explanation for pad activation, loop() and
1025           getrange() functions and a bit more. Remove old comments pointing
1026           to loop-functions.
1027         * examples/pwg/Makefile.am:
1028           Add loop/getrange examples.
1029
1030 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1031
1032         * configure.ac:
1033           check for valgrind binary + some fixes
1034         * check/gst.supp:
1035           valgrind suppressions for the tests
1036         * check/Makefile.am:
1037           add a valgrind: target that valgrinds the unit tests
1038         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
1039         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
1040         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1041         * check/gst/gstghostpad.c:
1042           added some cleanup
1043         * check/gst/gstdata.c:
1044           removed
1045         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
1046         (thread_unref), (gst_mini_object_suite), (main):
1047           added
1048         * gst/gst.c: (gst_deinit):
1049         * gst/gst.h:
1050           add a method to clean up.
1051         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1052         (gst_system_clock_obtain):
1053           allow for disposing the system clock.
1054         * tools/gst-launch.c: (main):
1055           deinit
1056
1057 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1058
1059         * docs/gst/tmpl/gstbasesrc.sgml:
1060         * docs/gst/tmpl/gstfakesrc.sgml:
1061         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1062         (gst_base_src_init), (gst_base_src_set_property),
1063         (gst_base_src_get_property), (gst_base_src_get_range),
1064         (gst_base_src_start):
1065         * gst/base/gstbasesrc.h:
1066           add num-buffers property
1067         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1068         (gst_fakesrc_init), (gst_fakesrc_set_property),
1069         (gst_fakesrc_get_property), (gst_fakesrc_create),
1070         (gst_fakesrc_start):
1071           remove num-buffers property
1072
1073 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1074
1075         * docs/gst/gstreamer-sections.txt:
1076         * docs/gst/tmpl/gstbasesink.sgml:
1077         * docs/gst/tmpl/gstbasesrc.sgml:
1078         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
1079         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
1080         (gst_base_sink_finalize), (gst_base_sink_set_clock),
1081         (gst_base_sink_set_property), (gst_base_sink_get_property),
1082         (gst_base_sink_handle_object), (gst_base_sink_event),
1083         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
1084         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
1085         (gst_base_sink_loop), (gst_base_sink_deactivate),
1086         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
1087         (gst_base_sink_change_state):
1088         * gst/base/gstbasesink.h:
1089         * gst/base/gstbasesrc.h:
1090         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
1091         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
1092         (gst_filesink_init):
1093           more macro splitting
1094
1095 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1096
1097         * gst/gstelement.c: (gst_element_get_bus):
1098           add debug
1099         * tools/gst-launch.c: (check_intr), (event_loop):
1100           fix bus leaks
1101
1102 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1103
1104         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
1105           fix a caps leak
1106
1107 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1108
1109         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1110         (gst_base_src_finalize):
1111           add finalize method and clean up properly
1112         * gst/gstpipeline.c: (gst_pipeline_dispose):
1113           add debug
1114
1115 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1116
1117         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
1118         (gst_bin_suite):
1119           add more things to check
1120         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
1121         * gst/gstelement.c:
1122           more debug
1123
1124 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1125
1126         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1127         (GST_START_TEST), (fakesrc_suite):
1128         * check/gst-libs/gdp.c: (GST_START_TEST):
1129         * check/gst/gst.c: (GST_START_TEST):
1130         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
1131         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1132         * check/gst/gstbus.c: (GST_START_TEST):
1133         * check/gst/gstcaps.c: (GST_START_TEST):
1134         * check/gst/gstdata.c: (GST_START_TEST):
1135         * check/gst/gstelement.c: (GST_START_TEST):
1136         * check/gst/gstghostpad.c: (GST_START_TEST):
1137         * check/gst/gstiterator.c: (GST_START_TEST):
1138         * check/gst/gstmessage.c: (GST_START_TEST):
1139         * check/gst/gstobject.c: (GST_START_TEST):
1140         * check/gst/gstpad.c: (GST_START_TEST):
1141         * check/gst/gststructure.c: (GST_START_TEST):
1142         * check/gst/gstsystemclock.c: (GST_START_TEST),
1143         (gst_systemclock_suite):
1144         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
1145         * check/gst/gstvalue.c: (GST_START_TEST):
1146         * check/pipelines/cleanup.c: (GST_START_TEST):
1147         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
1148         * check/states/sinks.c: (GST_START_TEST):
1149         * check/gstcheck.c: (gst_check_init):
1150         * check/gstcheck.h:
1151           add debugging category
1152           use GST_START_TEST now, so we add a debug line
1153
1154 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1155
1156         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
1157           add test for state change message on a bin
1158         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
1159           add another test
1160         * gst/gstbin.c: (gst_bin_init):
1161         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
1162         * gst/gstelement.c: (gst_element_post_message),
1163         (gst_element_set_state):
1164         * gst/gstelementfactory.c: (gst_element_factory_create):
1165         * gst/gstmessage.c: (gst_message_new):
1166         * gst/gstscheduler.c:
1167           various debugging additions and cleanups
1168
1169 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1170
1171         * check/Makefile.am:
1172         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
1173         (main):
1174           adding tests for elements
1175         * gst/gstelement.c: (gst_element_dispose):
1176
1177 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1178
1179         * gst/registries/gstlibxmlregistry.c: (load_feature):
1180           plug more leaks.  A simple gst_init() now is leakfree, yay.
1181
1182 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1183
1184         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
1185         (gst_xml_registry_load):
1186           plug another memleak
1187
1188 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1189
1190         * configure.ac:
1191           use GST_SET_ERROR_CFLAGS
1192         * docs/faq/cvs.xml:
1193           change to ERROR_CFLAGS
1194
1195 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1196
1197         * configure.ac:
1198           make GST_ERROR_CFLAGS overridable and re-enable Werror
1199         * docs/faq/cvs.xml:
1200           add a note about error CFLAGS
1201         * docs/gst/tmpl/gstfakesrc.sgml:
1202         * gst/elements/gstfakesrc.c:
1203           comment out some unused code
1204         * gst/gst.c: (split_and_iterate):
1205         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
1206         (load_feature):
1207           plug some memleaks
1208
1209 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1210
1211         * common/Makefile.am:
1212         * common/gtk-doc.mak:
1213         * docs/gst/Makefile.am:
1214           factor out gtk-doc.mak
1215
1216 2005-07-07  Wim Taymans  <wim@fluendo.com>
1217
1218         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
1219         (gst_thread_scheduler_dispose):
1220         Unlock the STREAM_LOCK completely.
1221
1222 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1223
1224         * check/Makefile.am:
1225         * check/elements/.cvsignore:
1226         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1227         (START_TEST), (fakesrc_suite), (main):
1228         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1229         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
1230         (gst_fakesrc_create), (gst_fakesrc_start):
1231         * gst/elements/gstfakesrc.h:
1232           adding a first element test
1233
1234 2005-07-07  Andy Wingo  <wingo@pobox.com>
1235
1236         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
1237         debug message.
1238
1239 2005-07-07  Wim Taymans  <wim@fluendo.com>
1240
1241         * gst/gstquery.c:
1242         * gst/gstquery.h:
1243         Remove old types
1244
1245 2005-07-07  Wim Taymans  <wim@fluendo.com>
1246
1247         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
1248         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
1249         Allow subclasses to implement their own negotiation.
1250
1251 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1252
1253         * docs/design/part-gstbin.txt:
1254         * docs/design/part-gstpipeline.txt:
1255           Update design notes to reflect the movement of
1256           responsibility for bus handling from GstPipeline to
1257           GstBin
1258
1259 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1260
1261         * configure.ac:
1262           Remove unnecessary queue2/3/4 examples.
1263
1264 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1265
1266         * examples/Makefile.am:
1267         * examples/helloworld/helloworld.c: (event_loop), (main):
1268         * examples/queue/queue.c: (event_loop), (main):
1269         * examples/queue2/queue2.c: (main):
1270           Update a couple of the examples to work again.
1271
1272         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1273         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
1274          Spelling corrections and extra debug.
1275         
1276         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
1277         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
1278         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
1279         * gst/gstbin.h:
1280         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
1281         (gst_pipeline_change_state):
1282         * gst/gstpipeline.h:
1283           Move the bus handler for children to the GstBin, and create a
1284           separate bus for receiving messages from children to the one the
1285           bus sends 'upwards' on.
1286
1287 2005-07-06  Wim Taymans  <wim@fluendo.com>
1288
1289         * gst/base/README:
1290         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1291         (gst_base_sink_handle_object), (gst_base_sink_loop),
1292         (gst_base_sink_change_state):
1293         * gst/base/gstbasesink.h:
1294         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1295         (gst_base_src_init), (gst_base_src_setcaps),
1296         (gst_base_src_getcaps), (gst_base_src_loop),
1297         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
1298         (gst_base_src_start), (gst_base_src_change_state):
1299         * gst/base/gstbasesrc.h:
1300         Make basesrc negotiate.
1301         Handle the case where preroll fails in basesink.
1302         Update README.
1303
1304 2005-07-06  Wim Taymans  <wim@fluendo.com>
1305
1306         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
1307         Implement the fixate function.
1308         Clean up acceptcaps.
1309
1310 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1311
1312         * docs/pwg/building-filterfactory.xml:
1313         * docs/pwg/pwg.xml:
1314           Remove never-written filter-factory chapter; I'll add the various
1315           base classes to part 4 ("other element types") later on.
1316
1317 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1318
1319         * docs/pwg/advanced-negotiation.xml:
1320         * docs/pwg/building-boiler.xml:
1321         * docs/pwg/building-pads.xml:
1322         * docs/pwg/pwg.xml:
1323         * examples/pwg/Makefile.am:
1324           Add a chapter on caps negotiation, simplify the original code
1325           samples a bit w.r.t. caps negotiation, add link to the advanced
1326           section. Add a bunch of examples showing different use cases of
1327           different types of caps negotiation. Upstream renegotiation isn't
1328           fully documented yet since nobody knows how that works.
1329
1330 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
1331
1332         * check/gst/gstpad.c:
1333         * check/gstcheck.c:
1334         * gst/gstpad.c: (gst_pad_get_internal_links_default):
1335           if pad has no parent, return NULL as list of internal links
1336
1337 2005-07-05  Andy Wingo  <wingo@pobox.com>
1338
1339         * gst/elements/gstfilesrc.c:
1340         * gst/elements/gstfakesrc.c: 
1341         * gst/base/gstpushsrc.c:
1342         * gst/base/gstbasesrc.h: 
1343         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
1344         
1345 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
1346
1347         * Makefile.am:
1348           better report generation target (lcov needs a patch)
1349
1350 2005-07-05  Andy Wingo  <wingo@pobox.com>
1351
1352         * gst/elements, testsuite: Null if we got it...
1353
1354 2005-07-05  Wim Taymans  <wim@fluendo.com>
1355
1356         * configure.ac:
1357         * libs/gst/dataprotocol/Makefile.am:
1358         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
1359         * libs/gst/dataprotocol/dataprotocol.h:
1360         * pkgconfig/Makefile.am:
1361         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
1362         * pkgconfig/gstreamer-dataprotocol.pc.in:
1363         Ported dataprotol to 0.9. 
1364         Added pkgconfig files.
1365
1366 2005-07-05  Andy Wingo  <wingo@pobox.com>
1367
1368         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
1369         Default to returning TRUE for the case when tranform_caps returns
1370         a fixed caps, like for identity or volume.
1371
1372         * check/gst/gstbus.c (pound_bus_with_messages): 
1373         * check/gst/gstmessage.c (START_TEST): 
1374         * check/pipelines/simple_launch_lines.c (got_handoff): Application
1375         message API change.
1376
1377         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
1378         logic weaks here: always run transform_caps, trying passthrough
1379         operation only if the original caps intersects with the transform.
1380
1381         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
1382         source and sink caps.
1383
1384         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
1385         Intersect the peer caps with the pad template before going into
1386         transform_caps.
1387         (gst_base_transform_transform_caps): More debugging.
1388
1389         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
1390         src argument.
1391
1392 2005-07-04  Edward Hervey  <edward@fluendo.com>
1393
1394         * gst/gstutils.c:
1395         * gst/gstutils.h:
1396         (gst_pad_add_*_probe): now returns the signal id for better wrapping
1397         in bindings.
1398
1399 2005-07-04  Andy Wingo  <wingo@pobox.com>
1400
1401         * check/gst/gstpad.c: Only set explicit caps on pads.
1402
1403 2005-07-01  Andy Wingo  <wingo@pobox.com>
1404
1405         * tests/network-clock.scm: Commentary update.
1406
1407         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
1408         Didn't really make sense, not implementable with basetransform,
1409         etc.
1410         (gst_identity_transform): Unref inbuf via make_writable. Feeble
1411         attempt at implementing the sync property, needs an unlock method.
1412
1413         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
1414         New func, by default returns the same caps (the identity
1415         transformation).
1416         (gst_base_transform_getcaps): Uses transform_caps to return
1417         something sensible.
1418         (gst_base_transform_setcaps): Complicated logic to get caps on
1419         both pads, even if they are different, and to call set_caps once
1420         for every time both pads get their caps set.
1421         (gst_base_transform_handle_buffer): Give the ref to the transform
1422         function. Allows in-place modification of the buffer.
1423
1424         * gst/base/gstbasetransform.h (transform_caps): New class method.
1425         Given caps on one side, what can I do on the other.
1426         (set_caps): Take two caps, one for each side of the element.
1427
1428         * gst/gstpad.h:
1429         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
1430         caps in place. This is safe because we can check the mutability of
1431         the caps, and a good idea because fixate functions are just called
1432         as a matter of last resort. (Not actually implemented.)
1433         (gst_pad_set_caps): If the caps we're setting is actually the same
1434         as the existing pad caps, just update the pointer without calling
1435         setcaps. Assert that caps is either NULL or fixed, as per the
1436         docs.
1437
1438         * gst/gstghostpad.c: Update for fixate changes.
1439
1440 2005-07-02  Andy Wingo  <wingo@pobox.com>
1441
1442         * gst/gstcaps.c:
1443         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
1444         two refcounts makes it immutable, which is enough. Doc more.
1445
1446 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
1447
1448         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
1449           Put the mini_object into GValue as a mini_object,
1450           not a gpointer, since that's how we declared
1451           the signal.
1452
1453 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1454
1455         * examples/pwg/Makefile.am:
1456           Fix buildbot again.
1457
1458 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1459
1460         * docs/pwg/building-testapp.xml:
1461           Add extra check.
1462         * examples/pwg/Makefile.am:
1463           Fix buildbot.
1464
1465 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1466
1467         * configure.ac:
1468         * examples/Makefile.am:
1469         * examples/pwg/Makefile.am:
1470         * examples/pwg/extract.pl:
1471           Enable building the PWG examples.
1472         * docs/pwg/advanced-interfaces.xml:
1473           Add URI interface stub.
1474         * docs/pwg/advanced-types.xml:
1475         * docs/pwg/other-autoplugger.xml:
1476         * docs/pwg/appendix-porting.xml:
1477         * docs/pwg/pwg.xml:
1478           Add porting guide (mostly stubs), remove autoplugging (see ADM).
1479         * docs/pwg/building-boiler.xml:
1480         * docs/pwg/building-chainfn.xml:
1481         * docs/pwg/building-pads.xml:
1482         * docs/pwg/building-props.xml:
1483         * docs/pwg/building-state.xml:
1484         * docs/pwg/building-testapp.xml:
1485           Update the building-*.xml parts for 0.9 changes. All examples
1486           code blocks compile in examples/pwg/*.
1487
1488 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1489
1490         * docs/manual/advanced-autoplugging.xml:
1491         * docs/manual/appendix-checklist.xml:
1492         * docs/manual/appendix-integration.xml:
1493         * docs/manual/highlevel-components.xml:
1494           Fix playbin/decodebin examples, update docs a bit, mention bus
1495           instead of signals in various places, mention kmplayer and
1496           kaffeine since they have a working GStreamer backend in the KDE
1497           section.
1498
1499 2005-06-30  Wim Taymans  <wim@fluendo.com>
1500
1501         * CHANGES-0.9:
1502         * docs/design/draft-ghostpads.txt:
1503         * docs/design/draft-push-pull.txt:
1504         * docs/design/draft-query.txt:
1505         * docs/design/part-TODO.txt:
1506         * docs/design/part-query.txt:
1507         Added CHANGES-0.9 doc, updated status of other docs.
1508         
1509         * gst/gstquery.h:
1510         Remove "hmm" macro
1511
1512 2005-06-30  Wim Taymans  <wim@fluendo.com>
1513
1514         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1515         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
1516         (gst_base_sink_change_state):
1517         * gst/base/gstbasesink.h:
1518         Some tweaks, only EOS and a buffer complete a preroll.
1519
1520 2005-06-30  Andy Wingo  <wingo@pobox.com>
1521
1522         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
1523         activate_push down to the internal pad as well.
1524
1525 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
1526
1527         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1528
1529         * gst/gsttaginterface.c:
1530           Some documentation fixes (#307394 and #307397).
1531
1532 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
1533
1534         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1535
1536         * gst/gstvalue.c: (gst_value_intersect_list):
1537           Fix memleak (#309125).
1538
1539 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1540
1541         * docs/manual/advanced-dataaccess.xml:
1542           Fix fakesrc example to compile; doesn't work, bug somewhere...?
1543         * docs/manual/basics-pads.xml:
1544           Add reference for filtered caps to above chapter.
1545
1546 2005-06-30  Wim Taymans  <wim@fluendo.com>
1547
1548         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
1549         (gst_bin_change_state):
1550         Probes are gone.
1551         Lame attempt at making the state change function a bit
1552         more readable.
1553
1554 2005-06-30  Wim Taymans  <wim@fluendo.com>
1555
1556         * docs/design/part-clocks.txt:
1557         * docs/design/part-element-sink.txt:
1558         * docs/design/part-events.txt:
1559         * docs/design/part-preroll.txt:
1560         * docs/design/part-states.txt:
1561         Some more tweeks and additions to the docs.
1562
1563 2005-06-30  Wim Taymans  <wim@fluendo.com>
1564
1565         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1566         (default_have_data), (gst_pad_class_init), (gst_pad_init),
1567         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1568         (gst_pad_check_pull_range), (gst_pad_get_range),
1569         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
1570         * gst/gstpad.h:
1571         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
1572         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1573         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1574         (gst_pad_remove_buffer_probe):
1575         Removed atomic operations, use existing LOCK.
1576         Move exception handling out of main code path.
1577
1578 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1579
1580         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1581         (silly_return_true_function), (gst_pad_class_init),
1582         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1583         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
1584         (gst_pad_send_event):
1585           Fix accumulator, add default value by using _emitv() instead
1586           of _emit() for signal emission.
1587
1588 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1589
1590         * docs/manual/advanced-dataaccess.xml:
1591         * examples/manual/Makefile.am:
1592           Add probe example.
1593         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
1594           Make work (??).
1595
1596 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
1597
1598         * gst/elements/gstfilesink.c: (gst_filesink_render):
1599           Simplify code so that we don't have to handle short
1600           writes and return GST_FLOW_ERROR if an error occured.
1601
1602 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1603
1604         * docs/gst/gstreamer-docs.sgml:
1605           Remove probes more.
1606
1607 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1608
1609         * docs/gst/gstreamer-sections.txt:
1610         * docs/gst/tmpl/gstpad.sgml:
1611         * docs/gst/tmpl/gstprobe.sgml:
1612         * gst/Makefile.am:
1613         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1614         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
1615         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
1616         (gst_pad_push_event), (gst_pad_send_event):
1617         * gst/gstpad.h:
1618         * gst/gstutils.c: (gst_pad_add_data_probe),
1619         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1620         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1621         (gst_pad_remove_buffer_probe):
1622         * gst/gstutils.h:
1623           Remove old probes, add new g-signal-based probes and some utility
1624           functions.
1625
1626 2005-06-29  Edward Hervey  <edward@fluendo.com>
1627
1628         * gst/gstelementfactory.c:
1629         * gst/gstutils.h:
1630         * gst/gstutils.c:
1631         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
1632         the definition to the header file.
1633
1634 2005-06-29  Andy Wingo  <wingo@pobox.com>
1635
1636         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
1637         plugins from the source directory.
1638
1639 2005-06-29  Wim Taymans  <wim@fluendo.com>
1640
1641         * docs/gst/tmpl/gstbuffer.sgml:
1642         * docs/gst/tmpl/gstclock.sgml:
1643         Some fixings for blantently wrong text.
1644
1645 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1646
1647         * check/Makefile.am:
1648         * gst/gst.c: (add_path_func), (init_pre):
1649         * gst/gstregistry.c: (gst_registry_add_path):
1650           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
1651           only scan the GST_PLUGIN_PATH locations, and not add
1652           system locations
1653
1654 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1655
1656         * docs/gst/gstreamer-sections.txt:
1657         * docs/gst/tmpl/gstbasesrc.sgml:
1658         * gst/gstelement.c:
1659         * gst/gstelement.h:
1660         * gst/gstevent.c:
1661         * gst/gstutils.c:
1662           doc fixes
1663
1664 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1665
1666         * docs/manual/advanced-autoplugging.xml:
1667           Fix autoplugging example.
1668
1669 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1670
1671         * docs/manual/advanced-autoplugging.xml:
1672         * docs/manual/mime-world.fig:
1673           Try to get autoplugging working, fix type detection. Fix text
1674           in hello-world image.
1675
1676 2005-06-29  Wim Taymans  <wim@fluendo.com>
1677
1678         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1679         (gst_base_sink_change_state):
1680         Small debug line.
1681
1682         * gst/gstclock.h:
1683         map SIGNAL and BROADCAST to the right function.
1684
1685         * gst/gstobject.h:
1686         Remove redundant braces.
1687
1688         * gst/gstpad.c: (gst_pad_set_caps):
1689         Don't call setcaps function when reseting caps to NULL.
1690
1691         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1692         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
1693         (gst_system_clock_id_unschedule):
1694         Use BROADCAST as this is what we do.
1695
1696 2005-06-29  Wim Taymans  <wim@fluendo.com>
1697
1698         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
1699         We are actually prerolling before commiting the state
1700         change. 
1701
1702 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1703
1704         * docs/manual/advanced-clocks.xml:
1705         * docs/manual/advanced-interfaces.xml:
1706         * docs/manual/advanced-metadata.xml:
1707         * docs/manual/advanced-position.xml:
1708         * docs/manual/advanced-schedulers.xml:
1709         * docs/manual/advanced-threads.xml:
1710         * docs/manual/appendix-porting.xml:
1711         * docs/manual/basics-bins.xml:
1712         * docs/manual/basics-bus.xml:
1713         * docs/manual/basics-elements.xml:
1714         * docs/manual/basics-helloworld.xml:
1715         * docs/manual/basics-pads.xml:
1716         * docs/manual/highlevel-components.xml:
1717         * docs/manual/manual.xml:
1718         * docs/manual/thread.fig:
1719           Update (until threads/scheduling) Application Development Manual;
1720           remove GstThread, add GstBus, add simple porting checklist, add
1721           documentation for tag writing, clocks, make all examples until this
1722           part compile and run.
1723         * examples/manual/Makefile.am:
1724           Update from changes to Application Development Manual; add bus
1725           example, remove thread example.
1726
1727 2005-06-28  Wim Taymans  <wim@fluendo.com>
1728
1729         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
1730         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
1731         (gst_bus_source_dispatch):
1732         Add debugging messages.
1733         Make internal methods static.
1734         Handle the case where the bus is flushed in the handler.
1735         
1736         * gst/gstelement.c: (gst_element_get_bus):
1737         Fix refcount in _get_bus();
1738
1739         * gst/gstpipeline.c: (gst_pipeline_change_state),
1740         (gst_pipeline_get_clock_func):
1741         Clock refcounting fixes.
1742         Handle the case where preroll timed out more gracefully.
1743         
1744         * gst/gstsystemclock.c: (gst_system_clock_dispose):
1745         Clean up the internal thread in dispose. This is needed
1746         for subclasses that actually get disposed.
1747         
1748         * gst/schedulers/threadscheduler.c:
1749         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
1750         (gst_thread_scheduler_dispose):
1751         Free thread pool in dispose.
1752
1753 2005-06-28  Andy Wingo  <wingo@pobox.com>
1754
1755         * tests/network-clock-utils.scm (debug, print-event): New utils.
1756
1757         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
1758         (*packet-loss*): Unified loss probability.
1759         (network-time): Report out-of-band events.
1760
1761         * tests/plot-data: Add support for out-of-band events. Hack it
1762         into this script instead of passing it down the pipe; should fix
1763         this later.
1764
1765 2005-06-28  Wim Taymans  <wim@fluendo.com>
1766
1767         * docs/gst/gstreamer.types:
1768         * docs/gst/tmpl/gstbasesrc.sgml:
1769         * docs/gst/tmpl/gstpad.sgml:
1770         Docs fixes.
1771
1772 2005-06-28  Wim Taymans  <wim@fluendo.com>
1773
1774         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1775         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
1776         (gst_proxy_pad_do_fixatecaps):
1777         Correctly proxy the check_pull_range function.
1778
1779 2005-06-28  Andy Wingo  <wingo@pobox.com>
1780
1781         * tests/network-clock.scm: Removed need for slib.
1782         
1783 2005-06-28  Wim Taymans  <wim@fluendo.com>
1784
1785         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
1786         (gst_basesink_preroll_queue_flush):
1787         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
1788         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
1789         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1790         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
1791         (gst_proxy_pad_set_property):
1792         * gst/gstpad.c:
1793         * gst/gstpad.h:
1794         * gst/gstqueue.c: (gst_queue_init):
1795         The deprecated pad loop function is removed now.
1796
1797 2005-06-28  Andy Wingo  <wingo@pobox.com>
1798
1799         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
1800         New parameters, simulate network packet loss.
1801
1802         * tests/network-clock-utils.scm: Initialize the RNG.
1803
1804 2005-06-28  Wim Taymans  <wim@fluendo.com>
1805
1806         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
1807         (gst_basesink_event), (gst_basesink_deactivate):
1808         Flushing the preroll queue always needs to unlock the waiters.
1809
1810 2005-06-28  Edward Hervey  <edward@fluendo.com>
1811
1812         * gst/gstpipeline.c: (gst_pipeline_send_event): 
1813         Wheen a seek was successful on a pipeline, set the stream_time to the
1814         seek offset in order to have a synchronized stream_time.
1815
1816 2005-06-28  Wim Taymans  <wim@fluendo.com>
1817
1818         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1819         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
1820         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
1821         (gst_proxy_pad_do_fixatecaps):
1822         Call wrapper function instead of just calling the function
1823         pointers. This takes care of any locking and whatmore.
1824
1825 2005-06-28  Wim Taymans  <wim@fluendo.com>
1826
1827         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
1828         (gst_pad_pull_range):
1829         * gst/gstpad.h:
1830         CONNECTED -> LINKED.
1831
1832 2005-06-28  Andy Wingo  <wingo@pobox.com>
1833
1834         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
1835         source-munging commit!!!
1836
1837         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
1838         (gst_object_sink): Take gpointer arguments, not GstObject --
1839         avoids casts. Like GLib.
1840
1841         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
1842         activate.
1843
1844 2005-06-27  Andy Wingo  <wingo@pobox.com>
1845
1846         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
1847         remaining buffer.
1848
1849         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
1850         returns a sorted copy of the trace list.
1851         (gst_alloc_trace_print_live): New API, only prints traces with
1852         live objects. Sort the list.
1853         (gst_alloc_trace_print_all): Sort the list.
1854         (gst_alloc_trace_print): Align columns.
1855
1856         * gst/elements/gstttypefindelement.c:
1857         * gst/elements/gsttee.c:
1858         * gst/base/gstbasesrc.c:
1859         * gst/base/gstbasesink.c:
1860         * gst/base/gstbasetransform.c:
1861         * gst/gstqueue.c: Adapt for pad activation changes.
1862
1863         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
1864         sched.
1865         (gst_pipeline_dispose): Drop ref on sched.
1866
1867         * gst/gstpad.c (gst_pad_init): Set the default activate func.
1868         (gst_pad_activate_default): Push mode by default.
1869         (pre_activate_switch, post_activate_switch): New stubs, things to
1870         do before and after switching activation modes on pads.
1871         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
1872         the pad's activate function to choose which mode to activate.
1873         Shortcut on deactivation and call the right function directly.
1874         (gst_pad_activate_pull): New API, (de)activates a pad in pull
1875         mode.
1876         (gst_pad_activate_push): New API, same for push mode.
1877         (gst_pad_set_activate_function) 
1878         (gst_pad_set_activatepull_function) 
1879         (gst_pad_set_activatepush_function): Setters for new API.
1880
1881         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
1882         Trace all miniobjects.
1883         (gst_mini_object_make_writable): Unref the arg if we copy, like
1884         gst_caps_make_writable.
1885
1886         * gst/gstmessage.c (_gst_message_initialize): No trace init.
1887
1888         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
1889         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
1890         Adapt for new pad API.
1891
1892         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
1893
1894         * gst/gstelement.h:
1895         * gst/gstelement.c (gst_element_iterate_src_pads) 
1896         (gst_element_iterate_sink_pads): New API functions.
1897         
1898         * gst/gstelement.c (iterator_fold_with_resync): New utility,
1899         should fold into gstiterator.c in some form.
1900         (gst_element_pads_activate): Simplified via use of fold and
1901         delegation of decisions to gstpad->activate.
1902
1903         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
1904         help in debugging.
1905
1906         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
1907         class once in init, like gstmessage. Didn't run into this issue
1908         but it seems correct. Don't initialize a trace, gstminiobject does
1909         that.
1910
1911         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
1912         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
1913         to the bus.
1914         (assert_live_count): New util function, uses alloc traces to check
1915         cleanup.
1916
1917         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
1918         To be modified when unlink drops the internal pad.
1919
1920 2005-06-27  Wim Taymans  <wim@fluendo.com>
1921
1922         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
1923         (gst_bin_change_state):
1924         Cleanup the get_state() function a little, make sure it
1925         iterates the same set of elements.
1926         Added stub iterate_state_order().
1927
1928 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
1929
1930         * docs/gst/gstreamer-docs.sgml:
1931         * docs/gst/gstreamer-sections.txt:
1932         * docs/gst/gstreamer.types:
1933         * docs/gst/tmpl/gstbasesink.sgml:
1934         * docs/gst/tmpl/gstbasesrc.sgml:
1935         * docs/gst/tmpl/gstbasetransform.sgml:
1936         * docs/gst/tmpl/gstelement.sgml:
1937         * docs/gst/tmpl/gstiterator.sgml:
1938         * gst/base/gstbasesrc.c:
1939         * gst/base/gstbasesrc.h:
1940         * gst/base/gstbasetransform.h:
1941         * gst/gstelement.c:
1942         * gst/gstiterator.h:
1943           adding basetransform and iterator docs
1944
1945 2005-06-27  Andy Wingo  <wingo@pobox.com>
1946
1947         * docs/design/part-activation.txt: Notes on how activation should
1948         work -- not quite implemented yet.
1949
1950 2005-06-25  Wim Taymans  <wim@fluendo.com>
1951
1952         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
1953         At least get the chain function correct, needs more
1954         fixing.
1955
1956 2005-06-25  Wim Taymans  <wim@fluendo.com>
1957
1958         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1959         (gst_basesink_handle_object), (gst_basesink_event),
1960         (gst_basesink_do_sync), (gst_basesink_handle_event),
1961         (gst_basesink_change_state):
1962         * gst/gsttask.h:
1963         Right, two problems here: ghostpads don't take locks and
1964         glib _rec_mutex_lock_full() with depth==0 still locks.
1965         Catch illegal locking and g_warn them.
1966
1967 2005-06-25  Wim Taymans  <wim@fluendo.com>
1968
1969         * check/states/sinks.c: (START_TEST), (gst_object_suite):
1970         Have to check for completion now...
1971
1972 2005-06-25  Wim Taymans  <wim@fluendo.com>
1973
1974         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1975         (gst_basesink_handle_object), (gst_basesink_event),
1976         (gst_basesink_do_sync), (gst_basesink_handle_event),
1977         (gst_basesink_change_state):
1978         * gst/gstpad.h:
1979         Unlock STREAM_LOCK whatever the recursion was.
1980
1981 2005-06-25  Wim Taymans  <wim@fluendo.com>
1982
1983         * gst/base/gstbasesink.c: (gst_basesink_set_property),
1984         (gst_basesink_preroll_queue_empty),
1985         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
1986         (gst_basesink_event), (gst_basesink_do_sync),
1987         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
1988         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
1989         (gst_basesink_change_state):
1990         Reworked the base sink, handle event and buffer serialisation
1991         correctly and removed possible deadlock.
1992         Handle EOS correctly.
1993
1994 2005-06-25  Wim Taymans  <wim@fluendo.com>
1995
1996         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
1997         (gst_pipeline_change_state):
1998         * tools/gst-launch.c: (check_intr), (event_loop), (main):
1999         Allow elements to post EOS in the state change function.
2000         Fix up -launch, make it exit the poll loop when the
2001         pipeline actually changed state.
2002         Fix up warning parsing in -launch.
2003
2004 2005-06-25  Wim Taymans  <wim@fluendo.com>
2005
2006         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
2007         (gst_tee_sink_activate):
2008         Core takes STREAM_LOCK for us now.
2009
2010 2005-06-25  Wim Taymans  <wim@fluendo.com>
2011
2012         * gst/gstelement.c: (gst_element_get_state_func),
2013         (gst_element_set_state):
2014         * gst/gstelement.h:
2015         * gst/gstmessage.c: (gst_message_parse_error),
2016         (gst_message_parse_warning):
2017         Keep track of current target state while performing a state
2018         change so that subclasses can do something interesting.
2019         Fix parsing of warning/error messages when GError is NULL.
2020
2021 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
2022
2023         * docs/gst/Makefile.am:
2024         * docs/gst/gstreamer-docs.sgml:
2025         * docs/gst/gstreamer-sections.txt:
2026         * docs/gst/gstreamer.types:
2027         * docs/gst/tmpl/gstbasesink.sgml:
2028         * docs/gst/tmpl/gstbasesrc.sgml:
2029         * docs/gst/tmpl/gstbin.sgml:
2030         * docs/gst/tmpl/gstcompat.sgml:
2031         * docs/gst/tmpl/gstfakesink.sgml:
2032         * docs/gst/tmpl/gstfakesrc.sgml:
2033         * docs/gst/tmpl/gstfilesink.sgml:
2034         * docs/gst/tmpl/gstfilesrc.sgml:
2035         * docs/gst/tmpl/gstindex.sgml:
2036         * docs/manual/appendix-quotes.xml:
2037         * gst/base/gstbasesrc.h:
2038         * gst/elements/gstfakesrc.h:
2039         * gst/gstmessage.h:
2040           start pulling in base classes and elements in our docs
2041
2042 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
2043
2044         * docs/gst/Makefile.am:
2045         * docs/libs/Makefile.am:
2046           fixed make distcheck with gtk-doc 1.3
2047
2048 2005-06-23  Wim Taymans  <wim@fluendo.com>
2049
2050         * gst/gstelement.c: (gst_element_get_state_func),
2051         (gst_element_set_state), (gst_element_change_state):
2052         When the state did not change, also report NO_PREROLL
2053         when it matters.
2054
2055 2005-06-23  Wim Taymans  <wim@fluendo.com>
2056
2057         * gst/gstpad.c: (gst_pad_event_default):
2058         * gst/gstqueue.c: (gst_queue_loop):
2059         No unsafe task pausing please.
2060
2061 2005-06-23  Wim Taymans  <wim@fluendo.com>
2062
2063         * gst/schedulers/threadscheduler.c:
2064         (gst_thread_scheduler_task_start),
2065         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
2066         Ref the task before pushing it on the threadpool. This
2067         makes sure that we have a ref when the threadfunction is
2068         actually called.
2069
2070 2005-06-23  Andy Wingo  <wingo@pobox.com>
2071
2072         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
2073         offset is greater than the file's size.
2074
2075         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
2076         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
2077         * gst/gstobject.c (gst_object_class_init): Make the class lock
2078         recursive. Wim won't let me drop deep_notify. Decodebin works
2079         again, whoopdy doo.
2080
2081         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
2082         internal pad, and hacks accordingly. Doesn't do it on the target
2083         pad because we change its caps. Probably catches all cases of
2084         interest tho.
2085         (gst_ghost_pad_set_property): Connect to notify::caps as
2086         appropritate.
2087
2088         * tests/network-clock.scm (plot-simulation): Pipe data to the
2089         elite python skript.
2090
2091         * tests/network-clock-utils.scm (define-parameter): New macro,
2092         defines a parameter that can be set via the command line.
2093         (set-parameter!, parse-parameter-arguments): Command line args
2094         parser.
2095
2096         * tests/plot-data: Simple matplotlib-based plotter, takes input on
2097         stdin.
2098
2099 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
2100
2101         * gst/elements/gsttypefindelement.c:
2102         (gst_type_find_element_handle_event):
2103           Don't restart typefinding on a discont.
2104         * gst/gstelement.c: (gst_element_set_state):
2105           Debug spelling fix.
2106         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
2107           Allow changing mode of an active pad.
2108           Debug output fixes.
2109         * gst/registries/gstlibxmlregistry.c: (load_feature):
2110           Don't cast a static pad template to a normal pad template.
2111
2112 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
2113
2114         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2115         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2116           remove gst_strtoll completely, since it didn't actually do
2117           anything more than what g_ascii_strtoull already does.
2118           check for range errors when deserializing
2119           do a cast for the unsigned cases; but further fixing needs
2120           a decision on what the interpretation of "(int)" and
2121           deserialization should be for values that fall outside the
2122           type's boundaries (ie, refuse, or interpret as casting)
2123
2124 2005-06-23  Wim Taymans  <wim@fluendo.com>
2125
2126         * check/Makefile.am:
2127         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
2128         * docs/design/part-live-source.txt:
2129         * docs/design/part-states.txt:
2130         * gst/base/gstbasesrc.c: (gst_basesrc_init),
2131         (gst_basesrc_set_live), (gst_basesrc_is_live),
2132         (gst_basesrc_get_range), (gst_basesrc_activate),
2133         (gst_basesrc_change_state):
2134         * gst/base/gstbasesrc.h:
2135         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2136         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
2137         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
2138         * gst/gstelement.c: (gst_element_get_state_func),
2139         (gst_element_set_state):
2140         * gst/gstelement.h:
2141         * gst/gsttypes.h:
2142         * tools/gst-launch.c: (event_loop), (main):
2143         Added support for live sources and other elements that
2144         cannot do preroll.
2145         Updated design docs, added live-source design doc.
2146         Implemented live source functionality in basesrc
2147         Fix error condition in _bin_get_state()
2148         Implement live source handling in -launch.
2149         Added check for live sources.
2150         Fixed case in GstBin where elements were changed state
2151         multiple times.
2152
2153
2154 2005-06-23  Andy Wingo  <wingo@pobox.com>
2155
2156         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
2157         borken refcounting.
2158
2159         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
2160         gst_caps_replace takes care of this for us.
2161
2162         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
2163         gst_pad_set_caps on the target, not just its setcaps() function.
2164
2165         * tests/network-clock.scm: 
2166         * tests/network-clock-utils.scm: A network clock simulator.
2167         Something of an algorithmic testbed before doing something in C.
2168
2169 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2170
2171         * check/Makefile.am:
2172         * check/gst/capslist.h:
2173           copy over from 0.8, and add two with bitmasks specified with
2174           (int) 0xFF...
2175         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2176           add test to parse everything from capslist.h
2177         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
2178         (main):
2179           add test for structure deserialization
2180         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2181           add tests for deserialization of strings to int types
2182         * gst/gststructure.c: (gst_structure_nth_field_name):
2183         * gst/gststructure.h:
2184           add a way to get the name of a field referenced by index
2185         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2186           instead of checking if the resulting long long lies between
2187           min and max, we check if the long long would fit into
2188           a number of bytes for the final type.
2189           This fixes cases where a string represents 2^32 - 1, which
2190           when cast to int would be the (valid) -1, but is bigger than
2191           G_MAXINT
2192
2193 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2194
2195         * gst/parse/grammar.y:
2196           add a log line for type deserialization
2197
2198 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2199
2200         * check/gst/gstvalue.c: (START_TEST):
2201         * gst/gstvalue.c: (gst_value_deserialize):
2202           return long long, not int, so gint64 deserialization actually
2203           works.  Is there any flag that makes the compiler check this ?
2204           Fixes #308559
2205
2206 2005-06-22  Wim Taymans  <wim@fluendo.com>
2207
2208         * gst/gstbuffer.h:
2209         Added convenience macros for setting buffers in GValue.
2210
2211 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2212
2213         * check/gst/.cvsignore:
2214         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2215           add a test deserializing int64, and comment part out because
2216           it fails, yay !
2217
2218 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2219
2220         * check/Makefile.am:
2221         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
2222         * testsuite/Makefile.am:
2223         * testsuite/caps/Makefile.am:
2224         * testsuite/caps/value_serialize.c:
2225         * testsuite/test_gst_init.c:
2226           move a value_serialize test over
2227
2228 2005-06-20  Wim Taymans  <wim@fluendo.com>
2229
2230         * gst/gstpad.c:
2231         Small doc updates.
2232         
2233         * gst/gstvalue.c: (gst_value_compare_buffer),
2234         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
2235         (gst_value_compare_flags), (gst_value_serialize_flags),
2236         (gst_value_deserialize_flags), (_gst_value_initialize):
2237         Fix serialisation of buffers, they are not boxed types anymore
2238
2239 2005-06-20  Wim Taymans  <wim@fluendo.com>
2240
2241         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2242         Testcase to show error in buffer-on-caps serialisation.
2243
2244 2005-06-20  Andy Wingo  <wingo@pobox.com>
2245
2246         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
2247         will be adding to later.
2248
2249         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
2250         if its socks fill with rocks.
2251         (gst_system_clock_obtain): Set the name on object construction.
2252         Avoid double-checked locking.
2253
2254 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
2255
2256         * gst/gsturi.c: (gst_element_make_from_uri):
2257           Fix potential endless loop.
2258
2259 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2260
2261         * check/Makefile.am:
2262           add gsttag
2263         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
2264         (main):
2265           move over from testsuite dir and clean up
2266         * configure.ac:
2267         * gst/gsttag.c:
2268         * testsuite/Makefile.am:
2269         * testsuite/tags/.cvsignore:
2270         * testsuite/tags/Makefile.am:
2271         * testsuite/tags/merge.c:
2272           remove testsuite/tags
2273
2274 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2275
2276         * docs/gst/gstreamer-sections.txt:
2277         * docs/gst/tmpl/gstenumtypes.sgml:
2278         * win32/gstenumtypes.c:
2279           clean up documentation build a little
2280
2281 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2282
2283         * check/gstcheck.h:
2284           add macros for checking refcounts on objects and caps
2285         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
2286           add some more unit tests
2287         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
2288         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
2289           fix leaked refcounts (I hope :)) so unittest works
2290         * gst/gstpad.h:
2291           whitespace removal
2292
2293 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2294
2295         * configure.ac: back to HEAD
2296
2297 === release 0.9.1 ===
2298
2299 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2300
2301         * NEWS:
2302         * RELEASE:
2303           updated
2304
2305 2005-06-17  Andy Wingo  <wingo@pobox.com>
2306
2307         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
2308         assert; it's always possible that the pad gets deactivated in
2309         between the checks in gstpad.c and the implementation. Rely on
2310         finish_preroll() to return a FLUSHING or similar instead of on the
2311         assert.
2312         
2313         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
2314         clock and post an EOS message if we come out of finish_preroll in
2315         the playing state.
2316
2317 2005-06-16  David Schleef  <ds@schleef.org>
2318
2319         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
2320         (gst_capsfilter_set_property): Allow NULL as possible value
2321         for filter_caps property, indicating GST_CAPS_ANY.
2322
2323 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2324
2325         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
2326           fix debug output
2327         * gst/schedulers/Makefile.am:
2328           use libgst prefix
2329         * gstreamer.spec.in:
2330           fix spec for it
2331
2332 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2333
2334         * gstreamer.spec.in:
2335           clean up
2336
2337 2005-06-08  Andy Wingo  <wingo@pobox.com>
2338
2339         * gst/gstutils.c: RPAD fixes all around.
2340         (gst_element_link_pads): Refcounting fixes.
2341
2342         * tools/gst-inspect.c:
2343         * tools/gst-xmlinspect.c:
2344         * parse/grammar.y:
2345         * gst/base/gsttypefindhelper.c:
2346         * gst/base/gstbasesink.c:
2347         * gst/gstqueue.c: RPAD fixes.
2348
2349         * gst/gstghostpad.h:
2350         * gst/gstghostpad.c: New ghost pad implementation as full proxy
2351         pads. The tricky thing is they provide both source and sink
2352         interfaces, since they proxy the internal pad for the external
2353         pad, and vice versa. Implement with lower-level ProxyPad objects,
2354         with the interior proxy pad as a child of the exterior ghost pad.
2355         Should write a doc on this.
2356         
2357         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
2358         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
2359         gst_object API.
2360         
2361         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
2362         pads are real pads. No ghost pads in this file. Not documenting
2363         the myriad s/RPAD/PAD/ and REALIZE fixes.
2364         (gst_pad_class_init): Add properties for "direction" and
2365         "template". Both are construct-only, so they can't change during
2366         the life of the pad. Fixes properly deriving from GstPad.
2367         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
2368         derived objects, just set properties when creating the objects via
2369         g_object_new.
2370         (gst_pad_get_parent): Implement as a function, return NULL if the
2371         parent is not an element.
2372         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
2373         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
2374         
2375         * gst/gstobject.c (gst_object_class_init): Make name a construct
2376         property. Don't set it in the object init.
2377
2378         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
2379         with UNKNOWN direction.
2380         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
2381         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
2382         (gst_element_remove_pad): Remove ghost-pad special cases.
2383         (gst_element_pads_activate): Remove rpad cruft.
2384
2385         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
2386         catch the pad's-parent-not-an-element case.
2387
2388         * gst/gst.h: Include gstghostpad.h.
2389
2390         * gst/gst.c (init_post): No more real, ghost pads.
2391
2392         * gst/Makefile.am: Add gstghostpad.[ch].
2393
2394         * check/Makefile.am:
2395         * check/gst/gstbin.c:
2396         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
2397         into a bin creates ghost pads, and that the refcounts are right.
2398         Partly moved from gstbin.c.
2399
2400 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2401
2402         * check/gst-libs/.cvsignore:
2403         * check/gst/.cvsignore:
2404         * check/pipelines/.cvsignore:
2405           ignore more
2406         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
2407         (START_TEST), (cleanup_suite), (main):
2408           add some tests related to cleanup after running pipelines
2409
2410 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2411
2412         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
2413           add a testsuite for GstBuffer
2414
2415 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2416
2417         * gst/gstminiobject.h:
2418           add defines for accessing the refcount
2419
2420 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
2421
2422         * Makefile.am: added support for html unit test coverage reports
2423
2424 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
2425
2426         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
2427           Free existing caps if the capsfilter changes. Add a FIXME about
2428           setting those caps on the pads.
2429
2430         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
2431           Before adding a ghost pad to a parent bin, check that there isn't
2432           already one for the element on the bin. Prevents infinite recursion
2433           when using decodebin in parse pipelines. Andy says he'll rewrite the
2434           way this works anyway, so ignore the hack.
2435
2436 2005-06-02  Andy Wingo  <wingo@pobox.com>
2437
2438         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
2439         file size, pass it on to the type find helper.
2440
2441         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
2442         segment_start and segment_end properly according to the seek
2443         method. Segment_end is still a bit flaky because offset can be
2444         negative for CUR and END cases, but it takes -1 as an "unset"
2445         value.
2446
2447 2005-06-02  Wim Taymans  <wim@fluendo.com>
2448
2449         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
2450         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
2451         (gst_basesink_activate):
2452         * gst/base/gstbasesink.h:
2453         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2454         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2455         (gst_pad_query), (gst_pad_start_task):
2456         * gst/gstpad.h:
2457         * gst/gstqueue.c: (gst_queue_bufferalloc),
2458         (gst_queue_handle_sink_event), (gst_queue_chain):
2459         Bufferalloc: return GstFlowReturn to more accuratly report
2460         why allocation failed.
2461
2462 2005-06-02  Wim Taymans  <wim@fluendo.com>
2463
2464         * gst/gstpipeline.c: (gst_pipeline_send_event):
2465         Take snapshot of state without blocking.
2466
2467 2005-06-02  Wim Taymans  <wim@fluendo.com>
2468
2469         * docs/design/part-TODO.txt:
2470         * docs/design/part-caps.txt:
2471         * docs/design/part-clocks.txt:
2472         * docs/design/part-negotiation.txt:
2473         * docs/design/part-preroll.txt:
2474         Small doc updates 
2475
2476 2005-05-30  Wim Taymans  <wim@fluendo.com>
2477
2478         * gst/elements/gstidentity.c: (gst_identity_event),
2479         (gst_identity_transform), (gst_identity_get_property):
2480         Protect last_message property as it is accessed from
2481         multiple threads.
2482
2483 2005-05-30  Wim Taymans  <wim@fluendo.com>
2484
2485         * gst/gstelement.c: (gst_element_init),
2486         (gst_element_pads_activate), (gst_element_change_state):
2487         Slicker pad activation code.
2488
2489 2005-05-30  Wim Taymans  <wim@fluendo.com>
2490
2491         * gst/Makefile.am:
2492         * gst/gstelement.h:
2493         * gst/gstelementfactory.h:
2494         * gst/gsttypes.h:
2495         Move elementfactory methods to separate .h file.
2496
2497 2005-05-30  Wim Taymans  <wim@fluendo.com>
2498
2499         * docs/design/part-overview.txt:
2500         * gst/gstsystemclock.h:
2501         Small typo fixes, doc updates.
2502
2503 2005-05-30  Wim Taymans  <wim@fluendo.com>
2504
2505         * gst/gst.c: (gst_init_get_popt_table), (init_post),
2506         (init_popt_callback):
2507         Remove cpu-opt flag.
2508
2509 2005-05-30  Wim Taymans  <wim@fluendo.com>
2510
2511         * gst/gstbuffer.c: (gst_subbuffer_finalize),
2512         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
2513         * gst/gstbuffer.h:
2514         Avoid typechecking in places where not needed.
2515         Added accessor for malloc_data.
2516
2517 2005-05-30  Wim Taymans  <wim@fluendo.com>
2518
2519         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
2520         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
2521         (gst_pad_configure_sink), (gst_pad_configure_src),
2522         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
2523         (gst_pad_start_task):
2524         Propagate errors from _set_caps() in configure_src/sink
2525         functions instead of returning TRUE.
2526         FLUSH events can travel up and downstream
2527
2528
2529 2005-05-30  Wim Taymans  <wim@fluendo.com>
2530
2531         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2532         (gst_basesink_activate):
2533         Handle EOS in preroll.
2534
2535 2005-05-30  Wim Taymans  <wim@fluendo.com>
2536
2537         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2538         (gst_queue_loop), (gst_queue_handle_src_event):
2539         Remove old pieces of code
2540         Flushing the queue in an upstream event is a very bad idea.
2541
2542 2005-05-26  Andy Wingo  <wingo@pobox.com>
2543
2544         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
2545         gst_value_set_mini_object so as to add a ref on the object (which
2546         will be removed when the value is unset).
2547
2548         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
2549         arg type in ::handoff.
2550
2551         * gst/gstelement.c (gst_element_change_state): Also deactivate
2552         pads in READY->NULL, just in case the element didn't make it to
2553         PAUSED. Wingo tested, Wim approved.
2554
2555 2005-05-26  Wim Taymans  <wim@fluendo.com>
2556
2557         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2558         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2559         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
2560         A flushing pad cannot be used to alloc_buffer from.
2561
2562 2005-05-26  Wim Taymans  <wim@fluendo.com>
2563
2564         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
2565         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
2566         (gst_bus_source_dispatch), (gst_bus_source_finalize),
2567         (gst_bus_create_watch), (gst_bus_add_watch_full):
2568         * gst/gstbus.h:
2569         Implement a real GSource and use g_main_context_wakeup() to
2570         signal new messages instead of the socketpair.
2571
2572 2005-05-25  Wim Taymans  <wim@fluendo.com>
2573
2574         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
2575         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
2576         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2577         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2578         (gst_pad_send_event), (gst_pad_start_task):
2579         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
2580         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
2581         (gst_queue_sink_activate), (gst_queue_src_activate),
2582         (gst_queue_change_state):
2583         * gst/gstqueue.h:
2584         Fix state changes for non sinks. We now change sinks, then elements
2585         with unconnected srcpads, then the rest.
2586         More efficient queue unlocking in flush and state changes.
2587         Set the pad activate mode even if it does not have an activate
2588         function.
2589
2590 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2591
2592         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
2593           Don't go in pull mode for non-seekable sources.
2594         * gst/elements/gsttypefindelement.h:
2595         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
2596         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
2597         (free_entry), (stop_typefinding),
2598         (gst_type_find_element_handle_event), (find_peek),
2599         (gst_type_find_element_chain), (do_pull_typefind),
2600         (gst_type_find_element_change_state):
2601           Allow typefinding (w/o seeking) in push-mode, simplified version
2602           of what was in 0.8.
2603         * gst/gstutils.c: (gst_buffer_join):
2604         * gst/gstutils.h:
2605           gst_buffer_join() from 0.8.
2606
2607 2005-05-25  Wim Taymans  <wim@fluendo.com>
2608
2609         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2610         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2611         (gst_pad_send_event), (gst_pad_start_task):
2612         Disable attempt at mode switching until it is figured out.
2613
2614 2005-05-25  Wim Taymans  <wim@fluendo.com>
2615
2616         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
2617         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2618         (gst_basesink_finish_preroll), (gst_basesink_chain),
2619         (gst_basesink_loop), (gst_basesink_activate),
2620         (gst_basesink_change_state):
2621         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
2622         (gst_basesrc_get_range), (gst_basesrc_loop),
2623         (gst_basesrc_activate):
2624         * gst/elements/gsttee.c: (gst_tee_sink_activate):
2625         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
2626         (gst_real_pad_init), (gst_real_pad_set_property),
2627         (gst_real_pad_get_property), (gst_pad_set_active),
2628         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
2629         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
2630         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
2631         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
2632         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2633         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
2634         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
2635         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
2636         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
2637         (gst_pad_stop_task):
2638         * gst/gstpad.h:
2639         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2640         (gst_queue_loop), (gst_queue_src_activate):
2641         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
2642         (gst_task_get_state):
2643         * gst/gsttask.h:
2644         * gst/schedulers/threadscheduler.c:
2645         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
2646         Implement gst_pad_pause/start/stop_task(), take STREAM lock
2647         in task function.
2648         Remove ACTIVE pad flag, use FLUSHING everywhere
2649         Added _pad_chain(), _pad_get_range() to call chain/getrange 
2650         functions.
2651         Add locks around IS_FLUSHING when reading.
2652         Take STREAM lock in chain(), get_range() functions so plugins
2653         don't need to take it anymore.
2654         
2655
2656
2657 2005-05-25  Wim Taymans  <wim@fluendo.com>
2658
2659         * tools/gst-launch.c: (event_loop):
2660         Unref message after using its contents instead of
2661         before.
2662
2663 2005-05-24  Wim Taymans  <wim@fluendo.com>
2664
2665         * docs/design/draft-ghostpads.txt:
2666         * docs/design/draft-push-pull.txt:
2667         * docs/design/draft-query.txt:
2668         * docs/design/part-overview.txt:
2669         Docs updates, added general overview doc.
2670
2671 2005-05-21  David Schleef  <ds@schleef.org>
2672
2673         * docs/gst/tmpl/old/GstBin.sgml:
2674         * docs/gst/tmpl/old/GstBuffer.sgml:
2675         * docs/gst/tmpl/old/GstCaps.sgml:
2676         * docs/gst/tmpl/old/GstClock.sgml:
2677         * docs/gst/tmpl/old/GstCompat.sgml:
2678         * docs/gst/tmpl/old/GstData.sgml:
2679         * docs/gst/tmpl/old/GstElement.sgml:
2680         * docs/gst/tmpl/old/GstEvent.sgml:
2681         * docs/gst/tmpl/old/GstIndex.sgml:
2682         * docs/gst/tmpl/old/GstStructure.sgml:
2683         * docs/gst/tmpl/old/GstTag.sgml:
2684         * docs/gst/tmpl/old/cothreads.sgml:
2685         * docs/gst/tmpl/old/cothreads_compat.sgml:
2686         * docs/gst/tmpl/old/gettext.sgml:
2687         * docs/gst/tmpl/old/gobject2gtk.sgml:
2688         * docs/gst/tmpl/old/grammar.tab.sgml:
2689         * docs/gst/tmpl/old/gst-i18n-app.sgml:
2690         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
2691         * docs/gst/tmpl/old/gst_private.sgml:
2692         * docs/gst/tmpl/old/gstaggregator.sgml:
2693         * docs/gst/tmpl/old/gstarch.sgml:
2694         * docs/gst/tmpl/old/gstatomic_impl.sgml:
2695         * docs/gst/tmpl/old/gstbufferstore.sgml:
2696         * docs/gst/tmpl/old/gstdata_private.sgml:
2697         * docs/gst/tmpl/old/gstdisksink.sgml:
2698         * docs/gst/tmpl/old/gstdisksrc.sgml:
2699         * docs/gst/tmpl/old/gstelementfactory.sgml:
2700         * docs/gst/tmpl/old/gstextratypes.sgml:
2701         * docs/gst/tmpl/old/gstfakesink.sgml:
2702         * docs/gst/tmpl/old/gstfakesrc.sgml:
2703         * docs/gst/tmpl/old/gstfdsink.sgml:
2704         * docs/gst/tmpl/old/gstfdsrc.sgml:
2705         * docs/gst/tmpl/old/gstfilesink.sgml:
2706         * docs/gst/tmpl/old/gstfilesrc.sgml:
2707         * docs/gst/tmpl/old/gsthttpsrc.sgml:
2708         * docs/gst/tmpl/old/gstidentity.sgml:
2709         * docs/gst/tmpl/old/gstindexfactory.sgml:
2710         * docs/gst/tmpl/old/gstmarshal.sgml:
2711         * docs/gst/tmpl/old/gstmd5sink.sgml:
2712         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
2713         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
2714         * docs/gst/tmpl/old/gstpadtemplate.sgml:
2715         * docs/gst/tmpl/old/gstpipefilter.sgml:
2716         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
2717         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
2718         * docs/gst/tmpl/old/gstshaper.sgml:
2719         * docs/gst/tmpl/old/gstspider.sgml:
2720         * docs/gst/tmpl/old/gstspideridentity.sgml:
2721         * docs/gst/tmpl/old/gststatistics.sgml:
2722         * docs/gst/tmpl/old/gsttee.sgml:
2723         * docs/gst/tmpl/old/gsttimecache.sgml:
2724         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
2725         * docs/gst/tmpl/old/gstxmlregistry.sgml:
2726         * docs/gst/tmpl/old/gthread-cothreads.sgml:
2727         * docs/gst/tmpl/old/types.sgml:
2728           I didn't intend to add these or check them in.
2729
2730 2005-05-19  David Schleef  <ds@schleef.org>
2731
2732         * configure.ac: Use -no-common everywhere.  In a sane world, it
2733           would be the default in libtool, because without it, you can't
2734           build DLLs on Windows.
2735         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
2736         * docs/gst/gstreamer-sections.txt:
2737         * docs/gst/tmpl/gstcpu.sgml:
2738         * docs/gst/tmpl/gstdata.sgml:
2739         * docs/gst/tmpl/gstthread.sgml:
2740
2741 2005-05-19  David Schleef  <ds@schleef.org>
2742
2743         * gst/gstminiobject.c: (gst_value_set_mini_object),
2744         (gst_value_take_mini_object), (gst_value_get_mini_object):
2745         * gst/gstminiobject.h: Add GValue set/get functions.
2746
2747 2005-05-19  Wim Taymans  <wim@fluendo.com>
2748
2749         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
2750         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
2751         (gst_subbuffer_init), (gst_buffer_is_span_fast):
2752         * gst/gstbuffer.h:
2753         * gst/gstbus.c: (gst_bus_post):
2754         * gst/gstelement.c: (gst_element_get_random_pad):
2755         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
2756         Make subbufer unref the parent in finalize.
2757         some more debugging info.
2758
2759
2760 2005-05-19  Wim Taymans  <wim@fluendo.com>
2761
2762         * gst/base/gstbasesink.c: (gst_basesink_class_init),
2763         (gst_basesink_init), (gst_basesink_finalize),
2764         (gst_basesink_activate), (gst_basesink_change_state):
2765         Don't free preroll queue too early.
2766
2767 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2768
2769         * gst/Makefile.am:
2770         * gst/ROADMAP:
2771           Hi, I'm outdated. Please shoot me.
2772
2773 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2774
2775         * gst/gstpipeline.c: (gst_pipeline_send_event):
2776           Do not access variables after they have been deleted.
2777
2778 2005-05-19  Wim Taymans  <wim@fluendo.com>
2779
2780         * tools/gst-inspect.c: (print_plugin_features):
2781         A plugin feature does unfortunatly not use the
2782         object name yet...
2783
2784 2005-05-18  Wim Taymans  <wim@fluendo.com>
2785
2786         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
2787         Port _span() functions to new subbuffers.
2788
2789 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2790
2791         * gst/gstbin.c: (gst_bin_add_func):
2792           Fix clock settery in bins when adding kids after the clock has
2793           been selected.
2794
2795 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2796
2797         * gst/elements/gstidentity.c: (gst_identity_class_init):
2798           Workaround until signals support GstMiniObject.
2799
2800 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
2801
2802         * gst/gstbuffer.c:
2803         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
2804
2805 2005-05-18  Wim Taymans  <wim@fluendo.com>
2806
2807         * gst/base/Makefile.am:
2808         * gst/base/gstadapter.c: (gst_adapter_base_init),
2809         (gst_adapter_class_init), (gst_adapter_init),
2810         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
2811         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
2812         (gst_adapter_flush), (gst_adapter_available),
2813         (gst_adapter_available_fast):
2814         * gst/base/gstadapter.h:
2815         Ported and added adapter to the base classes.
2816
2817 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
2818
2819         * gst/gst.c:
2820         * gst/gstmessage.c:
2821           Make sure the class is reffed/unreffed once before threads can be
2822           used.  Fixes #304551.
2823
2824 2005-05-17  Wim Taymans  <wim@fluendo.com>
2825
2826         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
2827         (gst_basesink_chain_unlocked), (gst_basesink_activate):
2828         * gst/gstminiobject.c: (gst_mini_object_get_type),
2829         (gst_mini_object_free):
2830         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
2831         (gst_pad_push), (gst_pad_push_event):
2832         * gst/gstqueue.c: (gst_queue_change_state):
2833         Don't queue buffers in basesink when we are flushing.
2834         Unref buffer when flushing in basesink.
2835         Flush queue when going to READY
2836         Unref buffer when _push() returns an error.
2837         Don't free MiniObject instance when refcount is incremented
2838         in _finalize() so that we can recover objects.
2839
2840 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2841
2842         * docs/manual/advanced-schedulers.xml:
2843         * docs/manual/appendix-checklist.xml:
2844         * docs/pwg/advanced-clock.xml:
2845         * docs/pwg/advanced-interfaces.xml:
2846         * docs/pwg/advanced-request.xml:
2847         * docs/pwg/advanced-types.xml:
2848         * docs/pwg/intro-preface.xml:
2849         * examples/plugins/example.c: (gst_example_get_type),
2850         (gst_example_class_init), (gst_example_chain),
2851         (gst_example_set_property), (gst_example_get_property),
2852         (gst_example_change_state), (plugin_init):
2853         * examples/plugins/example.h:
2854           small doc fixes
2855
2856 2005-05-17  Wim Taymans  <wim@fluendo.com>
2857
2858         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
2859         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
2860         * gst/gstqueue.c: (gst_queue_change_state):
2861         Clear queue when going to READY.
2862         Remove IN_SETCAPS flag too.
2863
2864 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
2865
2866         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
2867           Remove implicit cast from gboolean to GstElementStateReturn;
2868           make sure we still return failure in paused => ready case if
2869           the parent class fails to change state and our own stop 
2870           vfunc succeeds.
2871
2872 2005-05-17  Wim Taymans  <wim@fluendo.com>
2873
2874         * tools/gst-launch.c: (event_loop):
2875         Message was unreffed too soon.
2876
2877 2005-05-16  Andy Wingo  <wingo@pobox.com>
2878
2879         * gst/gstbin.c (sink_iterator_filter): Err... um...
2880
2881         * check/gst/gstbin.c (test_ghost_pads): New test for the
2882         ghosting-if-elements-not-in-same-bin behavior.
2883
2884 2005-05-16  David Schleef  <ds@schleef.org>
2885
2886         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
2887         accessing refcount directly.
2888
2889 2005-05-15  David Schleef  <ds@schleef.org>
2890
2891         * check/Makefile.am: remove GstData checks
2892         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
2893         * gst/Makefile.am: add miniobject, remove data
2894         * gst/gst.h: add miniobject, remove data
2895         * gst/gstdata.c: remove
2896         * gst/gstdata.h: remove
2897         * gst/gstdata_private.h: remove
2898         * gst/gsttypes.h: remove GstEvent and GstMessage
2899         * gst/gstelement.c: (gst_element_post_message): fix for API changes
2900         * gst/gstmarshal.list: change BOXED -> OBJECT
2901
2902         Implement GstMiniObject.
2903         * gst/gstminiobject.c:
2904         * gst/gstminiobject.h:
2905
2906         Modify to be subclasses of GstMiniObject.
2907         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
2908         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
2909         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
2910         (gst_subbuffer_get_type), (gst_subbuffer_init),
2911         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
2912         (gst_buffer_span):
2913         * gst/gstbuffer.h:
2914         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
2915         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
2916         (_gst_event_copy), (gst_event_new):
2917         * gst/gstevent.h:
2918         * gst/gstmessage.c: (_gst_message_initialize),
2919         (gst_message_get_type), (gst_message_class_init),
2920         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
2921         (gst_message_new), (gst_message_new_error),
2922         (gst_message_new_warning), (gst_message_new_tag),
2923         (gst_message_new_state_changed), (gst_message_new_application):
2924         * gst/gstmessage.h:
2925         * gst/gstprobe.c: (gst_probe_perform),
2926         (gst_probe_dispatcher_dispatch):
2927         * gst/gstprobe.h:
2928         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
2929         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
2930         (_gst_query_copy), (gst_query_new):
2931
2932         Update elements for GstData -> GstMiniObject changes
2933         * gst/gstquery.h:
2934         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
2935         (gst_queue_chain), (gst_queue_loop):
2936         * gst/elements/gstbufferstore.c:
2937         (gst_buffer_store_add_buffer_func),
2938         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
2939         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
2940         (gst_fakesink_render):
2941         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
2942         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
2943         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
2944         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
2945         (gst_filesrc_create_read):
2946         * gst/elements/gstidentity.c: (gst_identity_class_init):
2947         * gst/elements/gsttypefindelement.c:
2948         (gst_type_find_element_src_event), (free_entry_buffers),
2949         (gst_type_find_element_handle_event):
2950         * libs/gst/dataprotocol/dataprotocol.c:
2951         (gst_dp_header_from_buffer):
2952         * libs/gst/dataprotocol/dataprotocol.h:
2953         * libs/gst/dataprotocol/dp-private.h:
2954
2955 2005-05-15  David Schleef  <ds@schleef.org>
2956
2957         * gst/elements/gstelements.c: Don't include headers that were
2958         just removed.
2959
2960 2005-05-15  David Schleef  <ds@schleef.org>
2961
2962         * gst/elements/Makefile.am: Remove some elements that don't
2963         need to be in the core (or even exist at all).
2964         * gst/elements/gstaggregator.c:
2965         * gst/elements/gstaggregator.h:
2966         * gst/elements/gstmd5sink.c:
2967         * gst/elements/gstmd5sink.h:
2968         * gst/elements/gstmultifilesrc.c:
2969         * gst/elements/gstmultifilesrc.h:
2970         * gst/elements/gstpipefilter.c:
2971         * gst/elements/gstpipefilter.h:
2972         * gst/elements/gstshaper.c:
2973         * gst/elements/gstshaper.h:
2974         * gst/elements/gststatistics.c:
2975         * gst/elements/gststatistics.h:
2976         * po/POTFILES.in: Remove above files.
2977
2978 2005-05-14  Andy Wingo  <wingo@pobox.com>
2979
2980         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
2981         so as to get the refs right.
2982         (sink_iterator_filter): New function, wraps bin_element_is_sink,
2983         unreffing objects that don't pass the filter.
2984
2985         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
2986         gst_element_set_bus.
2987         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
2988         normal cases, this will destroy the bus.
2989
2990         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
2991         object.
2992
2993         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
2994         has no sinks.
2995
2996 2005-05-13  Andy Wingo  <wingo@pobox.com>
2997
2998         * gst/gstutils.c (gst_element_link_pads): Instead of calling
2999         gst_pad_link, call pad_link_maybe_ghosting,
3000         (pad_link_maybe_ghosting): Links pads, making sure that the
3001         elements being linked are in the same bin.
3002         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
3003         Helpers for pad_link_maybe_ghosting.
3004
3005 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3006
3007         * configure.ac:
3008           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
3009
3010 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3011
3012         * docs/design/part-element-source.txt:
3013           Mention GstPushSrc
3014
3015 2005-05-12  Wim Taymans  <wim@fluendo.com>
3016
3017         * gst/base/gstbasesink.c: (gst_basesink_init),
3018         (gst_basesink_activate):
3019         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
3020         (gst_basesrc_is_seekable):
3021         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
3022         (bin_element_is_sink), (gst_bin_change_state):
3023         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3024         * gst/gstelement.h:
3025         Identify sinks by their flag to avoid overly complicated
3026         checks (fow now).
3027         Do state changes even for elements not reachable from the
3028         sinks.
3029         BaseSink is a sink now :)
3030         Some more debugging info in the basesrc.
3031
3032
3033 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3034
3035         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
3036           Implement _query on a bin, similar to _send_event.
3037
3038 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
3039
3040         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
3041           Discont event offset format should be GST_FORMAT_BYTES,
3042           not GST_FORMAT_TIME.
3043
3044 2005-05-12  Wim Taymans  <wim@fluendo.com>
3045
3046         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
3047         Same fix as Ronald's but without the signal. 
3048
3049 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3050
3051         * gst/gstutils.c: (gst_element_query_position):
3052           No, an element is not a pad.
3053
3054 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3055
3056         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
3057         (gst_bin_get_state):
3058           If a child is removed from a bin while we remove the child from
3059           the bin and while we're retrieving its state, signal this to the
3060           get_state function so we abort the wait (instead of waiting for
3061           a timeout) and can immediately re-iterate over all other elements.
3062
3063 2005-05-12  Wim Taymans  <wim@fluendo.com>
3064
3065         * gst/base/Makefile.am:
3066         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
3067         (gst_basesrc_start):
3068         * gst/base/gstbasesrc.h:
3069         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
3070         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
3071         (gst_pushsrc_init), (gst_pushsrc_create):
3072         * gst/base/gstpushsrc.h:
3073         Added is_seekable to BaseSrc
3074         Added simple PushSrc.
3075
3076 2005-05-11  Wim Taymans  <wim@fluendo.com>
3077
3078         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3079         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3080         (gst_element_link_pads), (gst_element_query_position),
3081         (gst_element_query_convert), (intersect_caps_func),
3082         (gst_pad_query_position), (gst_pad_query_convert):
3083         Fix refcounting in utils function.
3084         No point in trying to activate a pad when it's added, it could
3085         be added from the state change function and then we deadlock, the
3086         element has to decide what to do.
3087
3088 2005-05-10  Andy Wingo  <wingo@pobox.com>
3089
3090         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
3091         *all* the arguments.
3092
3093         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
3094         stream lock if it's a FLUSH_DONE; normal flushes don't get the
3095         lock (according to the docs -- if this is wrong change the docs).
3096
3097         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
3098         flush messages in the NULL state.
3099
3100         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
3101         message immediately and return.
3102         (gst_bus_set_flushing): New function. If a bus is flushing, it
3103         flushes out any queued messages and immediately unrefs new
3104         messages. This is so when an element goes to NULL, all of the
3105         unhandled messages coming from it can be freed, and their
3106         references to the element dropped. In other words: message source
3107         ref considered harmful :P
3108
3109         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
3110         we're finished with it.
3111
3112         * gst/gstmessage.c (gst_message_new_state_changed): 
3113
3114 2005-05-10  Wim Taymans  <wim@fluendo.com>
3115
3116         * gst/gstvalue.c: (gst_value_compare_flags),
3117         (gst_value_serialize_flags), (gst_value_deserialize_flags),
3118         (_gst_value_initialize):
3119         Added flags serialize/deserialize/compare code.
3120
3121 2005-05-09  Andy Wingo  <wingo@pobox.com>
3122
3123         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
3124         Intersect the peer's caps with our caps.
3125
3126 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3127
3128         * gst/base/gsttypefindhelper.c: (helper_find_peek):
3129         * gst/elements/gsttypefindelement.c: (find_peek):
3130           Handle negative offsets better. Fixes decodebin.
3131
3132 2005-05-09  Wim Taymans  <wim@fluendo.com>
3133
3134         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
3135         (gst_base_transform_event):
3136         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
3137         Implement accept_caps.
3138         Fix silly lock/unlock mismatch in base class.
3139
3140 2005-05-09  Wim Taymans  <wim@fluendo.com>
3141
3142         * docs/design/draft-push-pull.txt:
3143         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
3144         * gst/elements/gstfilesink.c: (gst_filesink_init),
3145         (gst_filesink_query):
3146         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3147         (gst_type_find_handle_src_query), (find_element_get_length):
3148         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
3149         * gst/gstelement.h:
3150         * gst/gstmessage.c:
3151         * gst/gstmessage.h:
3152         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
3153         (gst_real_pad_get_caps_unlocked),
3154         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
3155         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3156         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
3157         (gst_real_pad_dispose), (gst_real_pad_finalize),
3158         (gst_pad_load_and_link), (gst_pad_save_thyself),
3159         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
3160         (gst_pad_check_pull_range), (gst_pad_pull_range),
3161         (gst_pad_template_get_type), (gst_pad_template_class_init),
3162         (gst_pad_template_init), (gst_pad_template_dispose),
3163         (name_is_valid), (gst_static_pad_template_get),
3164         (gst_pad_template_new), (gst_static_pad_template_get_caps),
3165         (gst_pad_template_get_caps), (gst_pad_set_element_private),
3166         (gst_pad_get_element_private), (gst_pad_start_task),
3167         (gst_pad_pause_task), (gst_pad_stop_task),
3168         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
3169         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
3170         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
3171         (gst_ghost_pad_new):
3172         * gst/gstpad.h:
3173         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
3174         (gst_query_new_position), (gst_query_set_position),
3175         (gst_query_parse_position), (gst_query_new_convert),
3176         (gst_query_set_convert), (gst_query_parse_convert):
3177         * gst/gstquery.h:
3178         * gst/gstqueryutils.c:
3179         * gst/gstqueryutils.h:
3180         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3181         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3182         (gst_queue_handle_src_query):
3183         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3184         (gst_element_query_position), (gst_element_query_convert),
3185         (intersect_caps_func), (gst_pad_query_position),
3186         (gst_pad_query_convert):
3187         * gst/gstutils.h:
3188         * tools/gst-inspect.c: (print_pad_info):
3189         * tools/gst-xmlinspect.c: (print_element_info):
3190         Remove old query functions. Ported old code.
3191         Added position/convert helper functions to gstutils.
3192         Reordered gstpad.c code, grouping relevant things.
3193         Remove gst_message_new(), always need to speficy a specific
3194         message.
3195
3196
3197 2005-05-09  Andy Wingo  <wingo@pobox.com>
3198
3199         * gst/gstiterator.h: Add some includes.
3200
3201         * gst/gstqueryutils.h: Include more headers.
3202
3203         * gst/gstpad.h:
3204         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
3205         some uses of gst_pad_query.
3206
3207         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
3208         NULL out parameters.
3209         (gst_query_new_position): New proc, allocates a new position
3210         query.
3211
3212         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
3213         gstqueryutils.c to the build.
3214
3215         * gst/gststructure.c (gst_structure_set_valist): Implement with
3216         the generic G_VALUE_COLLECT.
3217         
3218 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
3219
3220         * gst/Makefile.am: (gst_headers):
3221         Added gstqueryutils.h to the list of headers to install, that was
3222         a 'nachty' move wingo :)
3223
3224 2005-05-06  Andy Wingo  <wingo@pobox.com>
3225
3226         * gst/gstquery.h
3227         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
3228         GstData, init a memchunk.
3229         (standard_definitions): Add a few query types, deprecate a few.
3230         (gst_query_get_type): New proc.
3231         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
3232         implementation.
3233         (gst_query_new_application, gst_query_get_structure): New public
3234         procs.
3235
3236         * docs/design/draft-query.txt: Removed LINKS from the query types,
3237         because all the rest can be dispatched to other pads -- seemed
3238         ugly to have a query that couldn't be dispatched. internal_links
3239         is fine as a pad method.
3240
3241         * gst/gstpad.h: Add query2 as a pad method, add the new functions
3242         in gstpad.c, but maintain binary compatibility for the moment.
3243         Will fix before 0.9 is out.
3244
3245         * gst/gstqueryutils.c: 
3246         * gst/gstqueryutils.h: New files, implement 3 methods for each
3247         query type: parse_query, parse_response, and set. Probably need an
3248         allocator as well.
3249
3250         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
3251
3252         * gst/elements/gstfilesink.c (gst_filesink_query2):
3253         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
3254         query_types, and formats methods.
3255
3256         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
3257         (gst_pad_set_query2_function): New functions.
3258         (gst_real_pad_init): Set query2_default as the default query2
3259         function. Basically just dispatches to internally linked pads.
3260
3261         Needs review!
3262         
3263         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
3264         without using the atomic operations. Only one thread can possibly
3265         be accessing the data at this point. Changed so as to avoid
3266         gst_atomic operations.
3267
3268 2005-05-06  Wim Taymans  <wim@fluendo.com>
3269
3270         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
3271         Also set caps if we use the fallback buffer alloc.
3272
3273 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
3274
3275         * docs/gst/Makefile.am:
3276         * docs/gst/gstreamer-docs.sgml:
3277         * docs/gst/gstreamer-sections.txt:
3278         * docs/gst/tmpl/gstatomic.sgml:
3279         * docs/gst/tmpl/gstmemchunk.sgml:
3280         * testsuite/elements/struct_i386.h:
3281         * win32/GStreamer.vcproj:
3282         * win32/Makefile:
3283           Purge GstAtomic stuff from docs and win32 makefiles as well
3284
3285 2005-05-06  Wim Taymans  <wim@fluendo.com>
3286
3287         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
3288         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
3289         * gst/gstpad.c: (gst_pad_peer_get_caps):
3290         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3291         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3292         (gst_queue_src_activate), (gst_queue_change_state):
3293         * gst/gstqueue.h:
3294         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3295         (intersect_caps_func):
3296         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
3297         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
3298         Some fixes for the peer_get_caps() change.
3299
3300 2005-05-06  Wim Taymans  <wim@fluendo.com>
3301
3302         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
3303         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
3304         (gst_basesink_activate):
3305         Actually do something with error codes returned from the push
3306         functions.
3307
3308 2005-05-06  Wim Taymans  <wim@fluendo.com>
3309
3310         * docs/design/part-element-sink.txt:
3311         * docs/design/part-element-source.txt:
3312         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3313         (gst_basesink_event), (gst_basesink_activate):
3314         * gst/base/gstbasesink.h:
3315         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
3316         (gst_basesrc_activate):
3317         * gst/base/gstbasesrc.h:
3318         * gst/gstelement.c: (gst_element_pads_activate):
3319         Some more documentation.
3320         Fixed scheduling decision in _pads_activate().
3321
3322 2005-05-05  Andy Wingo  <wingo@pobox.com>
3323
3324         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
3325         the test suite.
3326
3327 2005-05-05  Wim Taymans  <wim@fluendo.com>
3328
3329         * gst/base/Makefile.am:
3330         * gst/base/gstbasesink.h:
3331         * gst/base/gstbasesrc.c: (gst_basesrc_init),
3332         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
3333         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
3334         (gst_collectpads_class_init), (gst_collectpads_init),
3335         (gst_collectpads_finalize), (gst_collectpads_new),
3336         (gst_collectpads_set_function), (gst_collectpads_add_pad),
3337         (find_pad), (gst_collectpads_remove_pad),
3338         (gst_collectpads_is_active), (gst_collectpads_collect),
3339         (gst_collectpads_collect_range), (gst_collectpads_start),
3340         (gst_collectpads_stop), (gst_collectpads_peek),
3341         (gst_collectpads_pop), (gst_collectpads_available),
3342         (gst_collectpads_read), (gst_collectpads_flush),
3343         (gst_collectpads_chain):
3344         * gst/base/gstcollectpads.h:
3345         * gst/elements/Makefile.am:
3346         * gst/elements/gstelements.c:
3347         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3348         (gst_fakesink_get_times), (gst_fakesink_event),
3349         (gst_fakesink_preroll), (gst_fakesink_render):
3350         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
3351         (gst_filesink_init), (gst_filesink_set_location),
3352         (gst_filesink_open_file), (gst_filesink_close_file),
3353         (gst_filesink_pad_query), (gst_filesink_event),
3354         (gst_filesink_render), (gst_filesink_change_state):
3355         * gst/elements/gstfilesink.h:
3356         Added object to help in making collect pad based elements.
3357         Ported filesink.
3358         Make event function in sink baseclass return gboolean.
3359
3360 2005-05-05  Wim Taymans  <wim@fluendo.com>
3361
3362         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
3363         (gst_bin_get_by_name):
3364         * gst/gstbuffer.h:
3365         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
3366         (gst_clock_finalize):
3367         * gst/gstdata.c: (gst_data_replace):
3368         * gst/gstdata.h:
3369         * gst/gstelement.c: (gst_element_request_pad),
3370         (gst_element_pads_activate):
3371         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
3372         (gst_object_unref):
3373         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3374         (gst_pad_set_checkgetrange_function),
3375         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
3376         (gst_pad_check_pull_range), (gst_pad_pull_range),
3377         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3378         (gst_pad_pause_task), (gst_pad_stop_task):
3379         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3380         (gst_element_request_pad), (gst_pad_proxy_getcaps):
3381         Fix name lookup in GstBin.
3382         Added _data_replace() function and _buffer_replace()
3383         Use finalize method to clean up clock.
3384         Fix refcounting on request pads.
3385         Fix pad schedule mode error.
3386         Some more object refcounting debug info,
3387
3388
3389 2005-05-04  Andy Wingo <wingo@pobox.com>
3390
3391         * check/Makefile.am:
3392         * docs/gst/tmpl/gstatomic.sgml:
3393         * docs/gst/tmpl/gstplugin.sgml:
3394         * gst/base/gstbasesink.c: (gst_basesink_activate):
3395         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
3396         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
3397         (gst_basesrc_query), (gst_basesrc_set_property),
3398         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
3399         (gst_basesrc_activate):
3400         * gst/base/gstbasesrc.h:
3401         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
3402         (gst_base_transform_src_activate):
3403         * gst/elements/gstelements.c:
3404         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3405         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
3406         * gst/elements/gsttee.c: (gst_tee_sink_activate):
3407         * gst/elements/gsttypefindelement.c: (find_element_get_length),
3408         (gst_type_find_element_checkgetrange),
3409         (gst_type_find_element_activate):
3410         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
3411         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
3412         (gst_caps_load_thyself):
3413         * gst/gstelement.c: (gst_element_pads_activate),
3414         (gst_element_save_thyself), (gst_element_restore_thyself):
3415         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
3416         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
3417         * gst/gstpad.h:
3418         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
3419         (gst_xml_parse_file), (gst_xml_parse_memory),
3420         (gst_xml_get_element), (gst_xml_make_element):
3421         * gst/indexers/gstfileindex.c: (gst_file_index_load),
3422         (_file_index_id_save_xml), (gst_file_index_commit):
3423         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
3424         (read_enum), (load_pad_template), (load_feature), (load_plugin),
3425         (load_paths):
3426         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
3427         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
3428         * tools/gst-complete.c: (main):
3429         * tools/gst-compprep.c: (main):
3430         * tools/gst-inspect.c: (print_element_properties_info):
3431         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
3432         * tools/gst-xmlinspect.c: (print_element_properties):
3433         GCC 4 fixen.
3434         
3435 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
3436
3437         * gst/gstplugin.c: (gst_plugin_check_module),
3438         (gst_plugin_check_file), (gst_plugin_load_file):
3439             apply patch from #172526 to make register work on MacOSX
3440
3441 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3442
3443         * docs/gst/tmpl/gstconfig.sgml:
3444         * gst/gstconfig.h.in:
3445           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
3446         * testsuite/debug/printf_extension.c: (main):
3447           Do not use GST_PTR_FORMAT on pointers to types with
3448           sizeof < sizeof(gpointer).  Fixes test on 64-bit
3449         * testsuite/elements/property.h:
3450           use correct printf format
3451
3452 2005-05-02  Wim Taymans  <wim@fluendo.com>
3453
3454         * docs/design/draft-push-pull.txt:
3455         * docs/design/draft-query.txt:
3456         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
3457         (gst_basesrc_start):
3458         Added draft for new query API.
3459         Added draft for better selecting scheduling methods.
3460         Make basesrc ignore length if the subclass does not support
3461         it.
3462
3463 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3464
3465         * gst/Makefile.am:
3466           possible fixes for automake-1.5 - _LIBADD is reserved
3467
3468 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3469
3470         * docs/faq/Makefile.am:
3471         * docs/manual/Makefile.am:
3472         * docs/manuals.mak:
3473         * docs/pwg/Makefile.am:
3474         * gst/Makefile.am:
3475           possible fixes for automake-1.5
3476
3477 2005-04-28  Wim Taymans  <wim@fluendo.com>
3478
3479         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3480         (gst_basesink_pad_getcaps), (gst_basesink_init),
3481         (gst_basesink_do_sync):
3482         * gst/gstclock.c: (gst_clock_entry_new):
3483         * gst/gstevent.c: (gst_event_discont_get_value):
3484         * gst/gstpipeline.c: (pipeline_bus_handler),
3485         (gst_pipeline_change_state):
3486         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
3487         Better debugging of clocking info.
3488         Allow NULL values when getting discont values.
3489
3490 2005-04-27  Wim Taymans  <wim@fluendo.com>
3491
3492         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
3493         * check/gst/gstpad.c: (gst_pad_suite):
3494         Increase timeout for checks.
3495
3496 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3497
3498         * check/Makefile.am:
3499           fix the broken rule for cleanup.  Apparently this rule is
3500           only needed on FC2, so maybe this warrants further autotool
3501           inspection.
3502
3503 2005-04-26  Wim Taymans  <wim@fluendo.com>
3504
3505         * gst/gsttrashstack.h:
3506         Ooohh. a nasty one! After having a failed pop() from the stack,
3507         it's possible that the stack is empty. In that case, don't
3508         follow the NULL pointer.
3509
3510 2005-04-25  Wim Taymans  <wim@fluendo.com>
3511
3512         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3513         (gst_pad_set_checkgetrange_function),
3514         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
3515         (gst_pad_check_pull_range), (gst_pad_pull_range),
3516         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3517         (gst_pad_pause_task), (gst_pad_stop_task):
3518         * gst/gstplugin.c: (gst_plugin_load):
3519         * gst/gstplugin.h:
3520         Remove gst_library_load as it does more harm than good with
3521         the new g_module flags.
3522         Revert bogus caps template check in pad linking, pad caps
3523         are important when linking not the template, which is more
3524         general than the current caps.
3525
3526 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3527
3528         * gst/autoplug/.cvsignore:
3529         * gst/autoplug/Makefile.am:
3530         * gst/autoplug/gstsearchfuncs.c:
3531         * gst/autoplug/gstsearchfuncs.h:
3532         * gst/autoplug/gstspider.c:
3533         * gst/autoplug/gstspider.h:
3534         * gst/autoplug/gstspideridentity.c:
3535         * gst/autoplug/gstspideridentity.h:
3536         * gst/autoplug/spidertest.c:
3537           Die, spider, die.
3538
3539 2005-04-25  Wim Taymans  <wim@fluendo.com>
3540
3541         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3542         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3543         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
3544         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
3545         * gst/gstpad.h:
3546         Added stubs for unimplemented functions. 
3547
3548 2005-04-24  David Schleef  <ds@schleef.org>
3549
3550         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
3551         please fix.
3552
3553 2005-04-24  David Schleef  <ds@schleef.org>
3554
3555         Convert everything from GstAtomicInt to g_atomic_int_*, and
3556         remove gstatomic.
3557         * gst/Makefile.am:
3558         * gst/gstatomic.c:
3559         * gst/gstatomic.h:
3560         * gst/gstatomic_impl.h:
3561         * gst/gstbuffer.c:
3562         * gst/gstcaps.c:
3563         * gst/gstcaps.h:
3564         * gst/gstclock.c:
3565         * gst/gstclock.h:
3566         * gst/gstdata.c:
3567         * gst/gstdata.h:
3568         * gst/gstdata_private.h:
3569         * gst/gstevent.c:
3570         * gst/gstinfo.c:
3571         * gst/gstinfo.h:
3572         * gst/gstmessage.c:
3573         * gst/gstobject.c:
3574         * gst/gstobject.h:
3575         * gst/gststructure.c:
3576         * gst/gststructure.h:
3577         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
3578         * gst/gstutils.h:
3579
3580 2005-04-24  David Schleef  <ds@schleef.org>
3581
3582         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
3583         make the regressions tests work.  Remove some code that is no
3584         longer true.
3585         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
3586         Disable warning for pads without templates.
3587
3588 2005-04-24  David Schleef  <ds@schleef.org>
3589
3590         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
3591         functions that handle filtered links.
3592         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
3593         removed functions.
3594         * gst/gstutils.c: Fix/remove utility functions that handle
3595         filtered caps.
3596         * gst/gstutils.h:
3597         * gst/gstvalue.c: Add serialization/deserialization of caps
3598         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
3599         requires fixing so that the filter caps notation creates
3600         a capsfilter element and sets the filter_caps property.  I
3601         think everyone probably wants to keep the shorthand notation.
3602         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
3603         * docs/gst/tmpl/gstpad.sgml:
3604
3605         * gst/elements/gstelements.c: Register capsfilter element.
3606         * gst/Makefile.am: fix spacing
3607         * docs/random/ds/0.9-suggested-changes: random
3608
3609 2005-04-23  David Schleef  <ds@schleef.org>
3610
3611         * gst/elements/Makefile.am:
3612         * gst/elements/gstcapsfilter.c: New element that acts like an
3613         identity, but filters caps.  Will eventually replace filtered
3614         caps in pad linking.
3615         * gst/gstutils.c: (gst_element_create_all_pads): New function
3616         to create all the ALWAYS pads that are registered with an
3617         element class.  This functionality should eventually be
3618         merged in with GstElement initialization.
3619         * gst/gstutils.h:
3620         * testsuite/trigger/README: part of trigger test code that should
3621         have been checked in a long time ago.
3622
3623 2005-04-23  David Schleef  <ds@schleef.org>
3624
3625         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
3626         needed with new versions of libtool (nobody will confirm this),
3627         and hard to carry around.
3628         * gst/autoplug/Makefile.am:
3629         * gst/base/Makefile.am:
3630         * gst/elements/Makefile.am:
3631         * gst/indexers/Makefile.am:
3632         * gst/schedulers/Makefile.am:
3633         * libs/gst/bytestream/Makefile.am:
3634         * libs/gst/control/Makefile.am:
3635         * libs/gst/dataprotocol/Makefile.am:
3636         * libs/gst/getbits/Makefile.am:
3637
3638 2005-04-21  Wim Taymans  <wim@fluendo.com>
3639
3640         * docs/design/draft-push-pull.txt:
3641         * docs/design/part-MT-refcounting.txt:
3642         * docs/design/part-TODO.txt:
3643         * docs/design/part-caps.txt:
3644         * docs/design/part-events.txt:
3645         * docs/design/part-gstbus.txt:
3646         * docs/design/part-gstpipeline.txt:
3647         * docs/design/part-messages.txt:
3648         * docs/design/part-push-pull.txt:
3649         * docs/design/part-query.txt:
3650         Some more docs.
3651
3652 2005-04-21  Wim Taymans  <wim@fluendo.com>
3653
3654         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
3655         (gst_message_new), (gst_message_new_error),
3656         (gst_message_new_warning), (gst_message_new_tag),
3657         (gst_message_new_state_changed), (gst_message_new_application),
3658         (gst_message_get_structure):
3659         * gst/gstmessage.h:
3660         * gst/gststructure.c: (gst_structure_set_parent_refcount),
3661         (gst_structure_copy_conditional):
3662         Use parent refcount in GstMessage to ensure GstStructure
3663         consistency.
3664         Cleaned up headers a bit.
3665         
3666
3667 2005-04-20  Wim Taymans  <wim@fluendo.com>
3668
3669         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3670         (gst_basesink_pad_getcaps), (gst_basesink_init),
3671         (gst_basesink_chain_unlocked):
3672         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
3673         (gst_type_find_helper):
3674         * gst/elements/gsttypefindelement.c:
3675         (gst_type_find_element_have_type), (gst_type_find_element_init),
3676         (stop_typefinding), (gst_type_find_element_handle_event),
3677         (find_suggest), (gst_type_find_element_chain),
3678         (gst_type_find_element_checkgetrange),
3679         (gst_type_find_element_getrange), (do_typefind),
3680         (gst_type_find_element_activate):
3681         * gst/gstbuffer.c: (_gst_buffer_sub_free),
3682         (gst_buffer_default_free), (gst_buffer_default_copy),
3683         (gst_buffer_set_caps):
3684         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
3685         (gst_caps_replace):
3686         * gst/gstmessage.c: (gst_message_new),
3687         (gst_message_new_state_changed):
3688         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3689         (gst_pad_set_checkgetrange_function),
3690         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
3691         (gst_pad_set_caps), (gst_pad_check_pull_range),
3692         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
3693         * gst/gstpad.h:
3694         * gst/gsttypefind.c: (gst_type_find_register):
3695         Make gst_caps_replace() work like other _replace() functions.
3696         Use _caps_replace() where possible.
3697         Make sure _message_new() initialises its field.
3698         Add gst_static_pad_template_get_caps()
3699
3700
3701 2005-04-18  Andy Wingo  <wingo@pobox.com>
3702
3703         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
3704         on the peer, not the pad. I think that was a typo. Pass an extra
3705         arg to see if random access is possible. Activate the pads as
3706         PULL_RANGE if possible.
3707
3708         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
3709
3710         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
3711         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
3712         to PROP_....
3713
3714 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3715
3716         * docs/faq/using.xml:
3717           Add note on gstreamer-properties (#154996).
3718
3719 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3720
3721         * docs/random/bbb/optional-properties:
3722           Some analysis on optional properties.
3723
3724 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3725
3726         * docs/gst/tmpl/gstelementfactory.sgml:
3727         * gst/gstelement.h:
3728         * gst/gstelementfactory.c: (gst_element_factory_init),
3729         (gst_element_factory_cleanup), (gst_element_register),
3730         (__gst_element_factory_add_static_pad_template),
3731         (gst_element_factory_get_static_pad_templates),
3732         (gst_element_factory_can_src_caps),
3733         (gst_element_factory_can_sink_caps):
3734         * gst/registries/Makefile.am:
3735         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
3736         (gst_xml_registry_class_init), (gst_xml_registry_init),
3737         (gst_xml_registry_new), (gst_xml_registry_set_property),
3738         (gst_xml_registry_get_property), (get_time), (make_dir),
3739         (gst_xml_registry_get_perms_func),
3740         (plugin_times_older_than_recurse), (plugin_times_older_than),
3741         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
3742         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
3743         (add_to_char_array), (read_string), (read_uint), (read_enum),
3744         (load_pad_template), (load_feature), (load_plugin), (load_paths),
3745         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
3746         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
3747         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
3748         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
3749         (gst_xml_registry_rebuild):
3750         * gst/registries/gstlibxmlregistry.h:
3751         * tools/gst-compprep.c: (main):
3752         * tools/gst-inspect.c: (print_pad_templates_info):
3753         * tools/gst-xmlinspect.c: (print_element_info):
3754           Use libxml2 for registry parsing, use staticpadtemplates in
3755           elementfactories. Makes gst_init() +/- 10x faster.
3756
3757 2005-04-12  Wim Taymans  <wim@fluendo.com>
3758
3759         * gst/base/Makefile.am:
3760         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3761         (gst_basesink_pad_getcaps), (gst_basesink_init),
3762         (gst_basesink_event), (gst_basesink_change_state):
3763         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3764         (gst_basesrc_init), (gst_basesrc_query),
3765         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3766         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3767         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3768         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3769         (gst_basesrc_stop), (gst_basesrc_activate),
3770         (gst_basesrc_change_state):
3771         * gst/base/gsttypefindhelper.c: (helper_find_peek),
3772         (helper_find_suggest), (gst_type_find_helper):
3773         * gst/base/gsttypefindhelper.h:
3774         * gst/elements/Makefile.am:
3775         * gst/elements/gstelements.c:
3776         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3777         (gst_fakesink_get_times), (gst_fakesink_event),
3778         (gst_fakesink_preroll), (gst_fakesink_render):
3779         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3780         (gst_fakesrc_init), (gst_fakesrc_event_handler),
3781         (gst_fakesrc_get_property), (gst_fakesrc_create),
3782         (gst_fakesrc_start), (gst_fakesrc_stop):
3783         * gst/elements/gstfakesrc.h:
3784         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
3785         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3786         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3787         (gst_filesrc_create_read), (gst_filesrc_create),
3788         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
3789         (gst_filesrc_start):
3790         * gst/elements/gsttypefindelement.c:
3791         (gst_type_find_element_have_type), (gst_type_find_element_init),
3792         (start_typefinding), (stop_typefinding), (push_buffer_store),
3793         (gst_type_find_element_handle_event),
3794         (gst_type_find_element_chain),
3795         (gst_type_find_element_checkgetrange),
3796         (gst_type_find_element_getrange), (do_typefind),
3797         (gst_type_find_element_activate),
3798         (gst_type_find_element_change_state):
3799         * gst/elements/gsttypefindelement.h:
3800         * gst/gstpipeline.c: (pipeline_bus_handler):
3801         Added typefind helper.
3802         Small preroll fix in the base sink.
3803         Disable typefind code in basesrc.
3804         Crude port of typefindelement.
3805         Fakesrc cleanups.
3806
3807
3808 2005-04-11  Wim Taymans  <wim@fluendo.com>
3809
3810         * check/gst/gstbus.c: (gstbus_suite):
3811         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
3812         * check/gstcheck.h:
3813           Fix up the timeout so that the test does not fail.
3814
3815 2005-04-06  Wim Taymans  <wim@fluendo.com>
3816
3817         * gst/base/README:
3818         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3819         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
3820         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3821         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3822         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3823         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3824         (gst_basesrc_stop), (gst_basesrc_activate),
3825         (gst_basesrc_change_state), (basesrc_find_peek),
3826         (basesrc_find_suggest), (gst_basesrc_type_find):
3827         * gst/base/gstbasesrc.h:
3828         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
3829         (gst_filesrc_class_init), (gst_filesrc_init),
3830         (gst_filesrc_finalize), (gst_filesrc_set_location),
3831         (gst_filesrc_set_property), (gst_filesrc_get_property),
3832         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3833         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3834         (gst_filesrc_create_read), (gst_filesrc_create),
3835         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
3836         * gst/elements/gstfilesrc.h:
3837         * gst/gstelement.c: (gst_element_get_state_func),
3838         (gst_element_lost_state), (gst_element_pads_activate):
3839         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3840         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3841         (gst_pad_pull_range):
3842         * gst/gstpad.h:
3843         More work on the generic source base class, implement seeking,
3844         query.
3845         Make filesrc extend the base source class.
3846         Added gst_pad_set_checkgetrange_function to GstPad.
3847
3848 2005-04-06  Andy Wingo  <wingo@pobox.com>
3849
3850         * pkgconfig/gstreamer-base.pc.in:
3851         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
3852
3853         * pkgconfig/Makefile.am:
3854         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
3855
3856 2005-04-04  Wim Taymans  <wim@fluendo.com>
3857
3858         * gst/base/Makefile.am:
3859         * gst/base/README:
3860         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3861         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
3862         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
3863         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
3864         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3865         (gst_basesrc_base_init), (gst_basesrc_class_init),
3866         (gst_basesrc_init), (gst_basesrc_get_formats),
3867         (gst_basesrc_get_query_types), (gst_basesrc_query),
3868         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
3869         (gst_basesrc_set_property), (gst_basesrc_get_property),
3870         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
3871         (gst_basesrc_loop), (gst_basesrc_activate),
3872         (gst_basesrc_change_state):
3873         * gst/base/gstbasesrc.h:
3874         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
3875         (gst_fakesrc_class_init), (gst_fakesrc_init),
3876         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
3877         (gst_fakesrc_get_property), (gst_fakesrc_create):
3878         * gst/elements/gstfakesrc.h:
3879         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
3880         (gst_filesrc_open_file), (gst_filesrc_loop),
3881         (gst_filesrc_activate), (filesrc_find_peek),
3882         (gst_filesrc_type_find):
3883         Made base source class, make fakesrc extend it.
3884         Add comments to basesink class.
3885         Some filesrc cleanup.
3886
3887 2005-03-31  David Schleef  <ds@schleef.org>
3888
3889         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
3890         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
3891         expected to link against libgstreamer.
3892         * gst/base/Makefile.am: link against libgstreamer
3893         * gst/elements/Makefile.am: same
3894
3895 2005-03-31  Andy Wingo  <wingo@pobox.com>
3896
3897         * tests/instantiate/Makefile.am:
3898         * tests/instantiate/caps.c: Add test to test speed of caps copy
3899         and free.
3900
3901         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
3902         GMemChunk to be fair.
3903
3904         * gst/gsttrashstack.h: Remove warning about using the fallback
3905         trash stack implementation, it's still faster than malloc.
3906
3907 2005-03-30  Andy Wingo  <wingo@pobox.com>
3908
3909         * tests/complexity.c: Add a copyright.
3910
3911 2005-03-31  Wim Taymans  <wim@fluendo.com>
3912
3913         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
3914         (gst_base_transform_class_init), (gst_base_transform_init),
3915         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
3916         (gst_base_transform_get_property),
3917         (gst_base_transform_sink_activate),
3918         (gst_base_transform_src_activate),
3919         (gst_base_transform_change_state):
3920         * gst/base/gstbasetransform.h:
3921         * gst/elements/gstidentity.c: (gst_identity_class_init),
3922         (gst_identity_event), (gst_identity_check_perfect),
3923         (gst_identity_transform), (gst_identity_start),
3924         (gst_identity_stop):
3925         Added start/stop methods to transform base class so subclasses 
3926         don't need to deal with state changes even.
3927
3928 2005-03-31  Wim Taymans  <wim@fluendo.com>
3929
3930         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
3931         (gst_event_new_discontinuous), (gst_event_discont_get_value):
3932         * gst/gstevent.h:
3933         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3934         (gst_pad_pull_range):
3935         Added rate to the discont event to prepare for variable speed
3936         and reverse playback.
3937
3938 2005-03-29  David Schleef  <ds@schleef.org>
3939
3940         * configure.ac:
3941         * testsuite/trigger/Makefile.am:
3942         * testsuite/trigger/trigger.c: A little example program to show
3943         how trigger-based elements can work.
3944
3945 2005-03-29  Wim Taymans  <wim@fluendo.com>
3946
3947         * gst/base/Makefile.am:
3948         * gst/base/README:
3949         * gst/base/gstbasesink.c: (gst_basesink_get_type),
3950         (gst_basesink_base_init), (gst_basesink_class_init),
3951         (gst_basesink_pad_getcaps), (gst_basesink_init),
3952         (gst_basesink_activate), (gst_basesink_change_state):
3953         * gst/base/gstbasesink.h:
3954         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
3955         (gst_base_transform_base_init), (gst_base_transform_finalize),
3956         (gst_base_transform_class_init), (gst_base_transform_init),
3957         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
3958         (gst_base_transform_event), (gst_base_transform_getrange),
3959         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
3960         (gst_base_transform_set_property),
3961         (gst_base_transform_get_property),
3962         (gst_base_transform_sink_activate),
3963         (gst_base_transform_src_activate),
3964         (gst_base_transform_change_state):
3965         * gst/base/gstbasetransform.h:
3966         * gst/elements/gstidentity.c: (gst_identity_finalize),
3967         (gst_identity_class_init), (gst_identity_init),
3968         (gst_identity_event), (gst_identity_check_perfect),
3969         (gst_identity_transform), (gst_identity_set_property),
3970         (gst_identity_get_property), (gst_identity_change_state):
3971         * gst/elements/gstidentity.h:
3972         * gst/gstelement.c: (gst_element_get_state_func),
3973         (gst_element_lost_state), (gst_element_pads_activate):
3974         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3975         (gst_pad_check_pull_range), (gst_pad_pull_range):
3976         * gst/gstpad.h:
3977         Simplify pad activation.
3978         Added function to check if pull_range can be performed.
3979         Error out when pulling inactive or flushing pads.
3980         Removed const from refcounted types as it does not make sense.
3981         Simplify pad templates in basesink
3982         Added base class for simple 1-to-1 transforms.
3983         Make identity subclass the base transform.
3984
3985 2005-03-29  Andy Wingo  <wingo@pobox.com>
3986
3987         * docs/libs/gstreamer-libs-overrides.txt: 
3988         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
3989         really don't understand what's going on, but like whatever. I want
3990         green buildbot!
3991
3992         * docs/gst/Makefile.am:
3993         * docs/libs/Makefile.am: Dist the overrides files.
3994
3995         * check/Makefile.am (clean-local): Remove .libs directories.
3996
3997         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
3998         elements to EXTRA_DIST, so po/ files are happy.
3999
4000         * po/POTFILES.in: Er, remove it here.
4001
4002         * po/POTFILES: Remove gstspider.c.
4003
4004         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
4005
4006         * docs/libs/gstreamer-libs-docs.sgml: 
4007         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
4008         bytestream.
4009
4010         * tests/complexity.c (main): Set the length of the preroll queue
4011         on the sinks to prevent a lockup.
4012
4013         * libs/gst/dataprotocol/Makefile.am: 
4014         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
4015         the same as the one in check/gst-libs/gdp.c.
4016
4017         * po/, docs/gst/: Commit automatic changes to docs and po files.
4018
4019         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
4020         the versioned libgstbase.
4021
4022         * check/Makefile.am: Depend on an unversioned gst-register, seems
4023         to make autoconf happier.
4024
4025         * gst/base/Makefile.am: Make libgstbase a versioned lib.
4026
4027 2005-03-28  Wim Taymans  <wim@fluendo.com>
4028
4029         * configure.ac:
4030         * docs/design/part-gstelement.txt:
4031         * docs/design/part-negotiation.txt:
4032         * docs/design/part-preroll.txt:
4033         * docs/design/part-scheduling.txt:
4034         * docs/design/part-states.txt:
4035         * gst/Makefile.am:
4036         * gst/base/Makefile.am:
4037         * gst/base/README:
4038         * gst/base/gstbasesink.c: (gst_basesink_get_template),
4039         (gst_basesink_base_init), (gst_basesink_class_init),
4040         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4041         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4042         (gst_basesink_set_pad_functions),
4043         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
4044         (gst_basesink_set_property), (gst_basesink_get_property),
4045         (gst_base_sink_get_template), (gst_base_sink_get_caps),
4046         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
4047         (gst_basesink_preroll_queue_push),
4048         (gst_basesink_preroll_queue_empty),
4049         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
4050         (gst_basesink_event), (gst_basesink_get_times),
4051         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
4052         (gst_basesink_chain_unlocked), (gst_basesink_chain),
4053         (gst_basesink_loop), (gst_basesink_activate),
4054         (gst_basesink_change_state):
4055         * gst/base/gstbasesink.h:
4056         * gst/elements/Makefile.am:
4057         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
4058         (gst_fakesink_class_init), (gst_fakesink_init),
4059         (gst_fakesink_set_property), (gst_fakesink_get_property),
4060         (gst_fakesink_get_times), (gst_fakesink_event),
4061         (gst_fakesink_preroll), (gst_fakesink_render),
4062         (gst_fakesink_change_state):
4063         * gst/elements/gstfakesink.h:
4064         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4065         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
4066         * gst/gstelement.c: (gst_element_add_pad),
4067         (gst_element_get_state_func), (gst_element_abort_state),
4068         (gst_element_commit_state), (gst_element_lost_state),
4069         (gst_element_set_state), (gst_element_pads_activate):
4070         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
4071         * gst/gstpipeline.c: (gst_pipeline_send_event),
4072         (gst_pipeline_change_state):
4073         Added state change code.
4074         Added/updated docs.
4075         Added sink base class, make fakesink extend the base class.
4076         Small cleanups in GstPipeline.
4077
4078 2005-03-26  David Schleef  <ds@schleef.org>
4079
4080         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
4081         is broken and should be implemented in a different library.
4082         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
4083         * gst/gst.h: remove gstcpu.h
4084         * gst/gstcpu.c: remove
4085         * gst/gstcpu.h: remove
4086         * gst/Makefile.am.future: Remove this file.  It's ancient.
4087
4088 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4089
4090         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4091         (gst_bin_send_event):
4092           Add default event/set_manager handlers. The set_manager handler
4093           takes care that the manager is distributed over kids that were
4094           already in the bin before the manager was set. The event handler
4095           is a utility virtual function that sends the event over all sinks,
4096           so that gst_element_send_event (bin, event); has the expected
4097           behaviour.
4098         * gst/gstpad.c: (gst_pad_event_default):
4099           Re-install default event handling for discontinuities, so that
4100           seeking works without requiring hacks in applications or extra
4101           code in sinks.
4102         * gst/gstpipeline.c: (gst_pipeline_class_init),
4103         (gst_pipeline_send_event):
4104           Half hack, half utility: set a pipeline to PAUSED for seek events,
4105           since that is the only way we can guarantee a/v sync. Means that
4106           you can do gst_element_seek (pipeline, method, pos); on a pipeline
4107           and it "just works".
4108
4109 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4110
4111         * gst/gstpipeline.c: (gst_pipeline_use_clock):
4112           Lock/unlock mismatch.
4113
4114 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
4115
4116         * docs/faq/gst-uninstalled:
4117           add gst-plugins-base
4118         * docs/gst/Makefile.am:
4119           don't error out until docs are fixed
4120         * docs/gst/gstreamer.types:
4121           remove thread
4122
4123 2005-03-22  Wim Taymans  <wim@fluendo.com>
4124
4125         * check/Makefile.am:
4126         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
4127         * gst/gststructure.c: (gst_structure_set_valist),
4128         (gst_structure_copy_conditional):
4129         Activated more tests.
4130         Added message test.
4131         Added G_TYPE_POINTER to GstStructure.
4132         
4133
4134 2005-03-22  Wim Taymans  <wim@fluendo.com>
4135
4136         * docs/design/part-TODO.txt:
4137         * docs/design/part-events.txt:
4138         * docs/design/part-gstbin.txt:
4139         * docs/design/part-gstbus.txt:
4140         * docs/design/part-gstpipeline.txt:
4141         * docs/design/part-messages.txt:
4142         * gst/gstbus.c:
4143         * gst/gstmessage.c:
4144         Docs updates
4145
4146 2005-03-21  Wim Taymans  <wim@fluendo.com>
4147
4148         * gst/gstbus.c: (gst_bus_post):
4149         Fix copy-and-paste error.
4150
4151 2005-03-21  Wim Taymans  <wim@fluendo.com>
4152
4153         * check/Makefile.am:
4154         * gst/Makefile.am:
4155         * gst/elements/Makefile.am:
4156         * gst/elements/gstelements.c:
4157         * gst/elements/gstfakesink.c: (gst_fakesink_init),
4158         (gst_fakesink_event), (gst_fakesink_chain):
4159         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4160         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
4161         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
4162         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
4163         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
4164         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
4165         (gst_fakesrc_loop), (gst_fakesrc_activate),
4166         (gst_fakesrc_change_state):
4167         * gst/elements/gstfakesrc.h:
4168         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
4169         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
4170         (gst_filesrc_open_file), (gst_filesrc_loop),
4171         (gst_filesrc_activate), (gst_filesrc_change_state),
4172         (filesrc_find_peek), (filesrc_find_suggest),
4173         (gst_filesrc_type_find):
4174         * gst/elements/gstidentity.c: (gst_identity_finalize),
4175         (gst_identity_class_init), (gst_identity_init),
4176         (gst_identity_proxy_getcaps), (identity_queue_push),
4177         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
4178         (gst_identity_getrange), (gst_identity_chain),
4179         (gst_identity_sink_loop), (gst_identity_src_loop),
4180         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
4181         (gst_identity_set_property), (gst_identity_get_property),
4182         (gst_identity_change_state):
4183         * gst/elements/gstidentity.h:
4184         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
4185         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
4186         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
4187         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
4188         (gst_tee_sink_activate):
4189         * gst/elements/gsttee.h:
4190         * gst/gst.c: (gst_register_core_elements), (init_post):
4191         * gst/gst.h:
4192         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
4193         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
4194         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
4195         (gst_bin_change_state):
4196         * gst/gstbin.h:
4197         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
4198         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
4199         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
4200         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
4201         (gst_bus_set_sync_handler), (gst_bus_create_watch),
4202         (bus_watch_callback), (bus_watch_destroy),
4203         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
4204         (poll_timeout), (gst_bus_poll):
4205         * gst/gstbus.h:
4206         * gst/gstcaps.h:
4207         * gst/gstdata.h:
4208         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4209         (gst_element_post_message), (gst_element_message_full),
4210         (gst_element_get_state_func), (gst_element_get_state),
4211         (gst_element_abort_state), (gst_element_commit_state),
4212         (gst_element_lost_state), (gst_element_set_state),
4213         (gst_element_pads_activate), (gst_element_change_state),
4214         (gst_element_dispose), (gst_element_set_manager_func),
4215         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
4216         (gst_element_set_manager), (gst_element_get_manager),
4217         (gst_element_set_bus), (gst_element_get_bus),
4218         (gst_element_set_scheduler), (gst_element_get_scheduler):
4219         * gst/gstelement.h:
4220         * gst/gstevent.c: (gst_event_new_segment_seek),
4221         (gst_event_new_flush):
4222         * gst/gstevent.h:
4223         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
4224         (_gst_message_free), (gst_message_get_type), (gst_message_new),
4225         (gst_message_new_eos), (gst_message_new_error),
4226         (gst_message_new_warning), (gst_message_new_tag),
4227         (gst_message_new_state_changed), (gst_message_new_application),
4228         (gst_message_get_structure), (gst_message_parse_tag),
4229         (gst_message_parse_state_changed), (gst_message_parse_error),
4230         (gst_message_parse_warning):
4231         * gst/gstmessage.h:
4232         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
4233         (gst_real_pad_set_property), (gst_pad_set_active),
4234         (gst_pad_is_active), (gst_pad_set_blocked_async),
4235         (gst_pad_set_blocked), (gst_pad_is_blocked),
4236         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
4237         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
4238         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
4239         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
4240         (gst_pad_link_filtered), (gst_pad_relink_filtered),
4241         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
4242         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
4243         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
4244         (gst_pad_set_caps), (gst_pad_configure_sink),
4245         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
4246         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
4247         (gst_real_pad_dispose), (gst_real_pad_finalize),
4248         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
4249         (gst_pad_event_default_dispatch), (gst_pad_event_default),
4250         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
4251         * gst/gstpad.h:
4252         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
4253         (pipeline_bus_handler), (gst_pipeline_change_state),
4254         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
4255         * gst/gstpipeline.h:
4256         * gst/gstprobe.h:
4257         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
4258         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
4259         (gst_queue_link_src), (gst_queue_bufferalloc),
4260         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
4261         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
4262         (gst_queue_loop), (gst_queue_handle_src_event),
4263         (gst_queue_handle_src_query), (gst_queue_src_activate),
4264         (gst_queue_change_state):
4265         * gst/gstqueue.h:
4266         * gst/gstscheduler.c: (gst_scheduler_init),
4267         (gst_scheduler_dispose), (gst_scheduler_create_task),
4268         (gst_scheduler_factory_create):
4269         * gst/gstscheduler.h:
4270         * gst/gststructure.c: (gst_structure_get_type),
4271         (gst_structure_copy_conditional):
4272         * gst/gststructure.h:
4273         * gst/gsttaginterface.h:
4274         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
4275         (gst_task_init), (gst_task_dispose), (gst_task_create),
4276         (gst_task_get_state), (gst_task_start), (gst_task_stop),
4277         (gst_task_pause):
4278         * gst/gsttask.h:
4279         * gst/gstthread.c:
4280         * gst/gstthread.h:
4281         * gst/gsttypes.h:
4282         * gst/schedulers/Makefile.am:
4283         * gst/schedulers/cothreads_compat.h:
4284         * gst/schedulers/entryscheduler.c:
4285         * gst/schedulers/faircothreads.c:
4286         * gst/schedulers/faircothreads.h:
4287         * gst/schedulers/fairscheduler.c:
4288         * gst/schedulers/gstbasicscheduler.c:
4289         * gst/schedulers/gstoptimalscheduler.c:
4290         * gst/schedulers/gthread-cothreads.h:
4291         * gst/schedulers/threadscheduler.c:
4292         (gst_thread_scheduler_task_get_type),
4293         (gst_thread_scheduler_task_class_init),
4294         (gst_thread_scheduler_task_init),
4295         (gst_thread_scheduler_task_start),
4296         (gst_thread_scheduler_task_stop),
4297         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
4298         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
4299         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
4300         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
4301         (plugin_init):
4302         * libs/gst/Makefile.am:
4303         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
4304         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
4305         (gst_file_pad_parent_set):
4306         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
4307         (gst_dp_event_from_packet):
4308         * tests/complexity.c: (main):
4309         * tests/mass_elements.c: (main):
4310         * testsuite/states/locked.c: (message_received), (main):
4311         * testsuite/states/parent.c: (main):
4312         * tools/gst-inspect.c: (print_element_flag_info),
4313         (print_implementation_info), (print_pad_info):
4314         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
4315         (main):
4316         * tools/gst-md5sum.c: (event_loop), (main):
4317         * tools/gst-typefind.c: (main):
4318         * tools/gst-xmlinspect.c: (print_element_info):
4319         Next big merge.
4320         Added GstBus for mainloop integration.
4321         Added GstMessage for sending notifications on the bus.
4322         Added GstTask as an abstraction for pipeline entry points.
4323         Removed GstThread.
4324         Removed Schedulers.
4325         Simplified GstQueue for multithreaded core.
4326         Made _link threadsafe, removed old capsnego.
4327         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
4328         Added pad blocking functions.
4329         Reworked scheduling functions in GstPad to prepare for
4330         scheduling updates soon.
4331         Moved events out of data stream.
4332         Simplified GstEvent types.
4333         Added return values to push/pull.
4334         Removed clocking from GstElement.
4335         Added prototypes for state change function for next merge.
4336         Removed iterate from bins and state change management.
4337         Fixed some elements, disabled others for now.
4338         Fixed -inspect and -launch.
4339         Added check for GstBus.
4340
4341 2005-03-10  Wim Taymans  <wim@fluendo.com>
4342
4343         * docs/design/part-MT-refcounting.txt:
4344         * docs/design/part-clocks.txt:
4345         * docs/design/part-gstelement.txt:
4346         * docs/design/part-gstobject.txt:
4347         * docs/design/part-standards.txt:
4348         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4349         (gst_bin_remove_func), (gst_bin_remove):
4350         * gst/gstbin.h:
4351         * gst/gstbuffer.c:
4352         * gst/gstcaps.h:
4353         * testsuite/clock/clock1.c: (main):
4354         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
4355         (main):
4356         * testsuite/dlopen/loadgst.c: (do_test):
4357         * testsuite/refcounting/bin.c: (add_remove_test1),
4358         (add_remove_test2), (main):
4359         * testsuite/refcounting/element.c: (main):
4360         * testsuite/refcounting/element_pad.c: (main):
4361         * testsuite/refcounting/pad.c: (main):
4362         * tools/gst-launch.c: (sigint_handler_sighandler):
4363         * tools/gst-typefind.c: (main):
4364         Doc updates.
4365         Added doc about clock.
4366         removed gst_bin_iterate_recurse_up(), marked methods
4367         for removal.
4368         Fix more testsuites.
4369
4370 2005-03-09  Wim Taymans  <wim@fluendo.com>
4371
4372         * gst/gstpad.c: (gst_pad_get_direction),
4373         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
4374         (gst_pad_collect_valist):
4375         * testsuite/bins/interface.c: (main):
4376         * testsuite/caps/audioscale.c: (test_caps):
4377         * testsuite/caps/caps.c: (test1), (test2), (test3):
4378         * testsuite/caps/deserialize.c: (main):
4379         * testsuite/caps/enumcaps.c: (main):
4380         * testsuite/caps/filtercaps.c: (main):
4381         * testsuite/caps/intersect2.c: (main):
4382         * testsuite/caps/random.c: (main):
4383         * testsuite/caps/renegotiate.c: (my_fixate), (main):
4384         * testsuite/caps/sets.c: (check_caps):
4385         * testsuite/caps/simplify.c: (check_caps), (main):
4386         * testsuite/caps/subtract.c: (check_caps):
4387         Fix _pad_get_direction wrt ghostpads.
4388         Fix caps testsuite.
4389
4390 2005-03-09  Wim Taymans  <wim@fluendo.com>
4391
4392         * check/Makefile.am:
4393         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
4394         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
4395         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
4396         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
4397         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
4398         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
4399         (gst_bin_remove), (gst_bin_iterate_recurse_up),
4400         (bin_element_is_sink), (gst_bin_iterate_sinks),
4401         (gst_bin_iterate_all_by_interface):
4402         * gst/gstbin.h:
4403         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
4404         (gst_element_change_state), (gst_element_dispose),
4405         (gst_element_finalize), (gst_element_set_loop_function):
4406         * gst/gstelement.h:
4407         * gst/gstiterator.c: (find_custom_fold_func):
4408         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4409         (gst_pad_collectv), (gst_pad_collect_valist),
4410         (gst_pad_template_new):
4411         * gst/gstpipeline.c: (gst_pipeline_class_init),
4412         (gst_pipeline_dispose), (gst_pipeline_set_property),
4413         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
4414         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
4415         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
4416         * gst/gstutils.h:
4417         * gst/schedulers/entryscheduler.c:
4418         * gst/schedulers/gstbasicscheduler.c:
4419         (gst_basic_scheduler_cothreaded_chain),
4420         (gst_basic_scheduler_chain_add_element):
4421         * testsuite/bins/interface.c: (main):
4422         Added GstBin test.
4423         Added GstSystemClock test.
4424         Implemented clock distribution code in GstBin.
4425         Implemented iterate sinks method for future use.
4426         Rearranged gstelement.h
4427         Fix GstIterator comparison bug.
4428         Moved some code to GstPipeline, mostly clocking related.
4429
4430 2005-03-09  Wim Taymans  <wim@fluendo.com>
4431
4432         * configure.ac:
4433         * gst/gst_private.h:
4434         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4435         (gst_bin_remove_func), (gst_bin_remove),
4436         (gst_bin_get_by_name_recurse_up):
4437         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
4438         (gst_clock_id_compare_func), (gst_clock_id_wait),
4439         (gst_clock_id_wait_async), (gst_clock_init),
4440         (gst_clock_adjust_unlocked), (gst_clock_get_time):
4441         * gst/gstelement.h:
4442         * gst/gstinfo.c: (_gst_debug_init):
4443         * gst/gstobject.h:
4444         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4445         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
4446         * gst/gstpad.h:
4447         Bump version number, we're now 0.9.0
4448         Add future debugging category.
4449         Fix NULL _unref() in _get_by_name_recurse_up
4450         Rearrange gstpad.h.
4451         Update some docs.
4452
4453 2005-03-08  Wim Taymans  <wim@fluendo.com>
4454
4455         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
4456         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4457         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
4458         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
4459         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
4460         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
4461         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
4462         * gst/elements/gstidentity.c: (gst_identity_class_init):
4463         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
4464         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
4465         * gst/elements/gstshaper.c: (gst_shaper_class_init):
4466         * gst/elements/gststatistics.c: (gst_statistics_class_init):
4467         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
4468         (gst_tee_link):
4469         * gst/gstelement.c: (gst_element_class_init),
4470         (gst_element_base_class_init), (gst_element_init),
4471         (gst_element_get_random_pad), (gst_element_wait_state_change),
4472         (gst_element_change_state), (gst_element_dispose),
4473         (gst_element_finalize), (gst_element_set_loop_function):
4474         * gst/gstelement.h:
4475         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
4476         * gst/gstthread.c: (gst_thread_class_init),
4477         (gst_thread_release_children_locks), (gst_thread_change_state):
4478         * gst/schedulers/gstbasicscheduler.c:
4479         (gst_basic_scheduler_loopfunc_wrapper),
4480         (gst_basic_scheduler_chain_wrapper),
4481         (gst_basic_scheduler_src_wrapper),
4482         (gst_basic_scheduler_remove_element):
4483         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4484         Remove threadsafe properties. Fix elements because GObject
4485         complains when installing a property before declaring a
4486         set/get_property handler.
4487         Rearrange gstelement.h file, use STATE macros for state locks.
4488         Free mutexes in the finalize method instead of dispose.
4489
4490 2005-03-08  Wim Taymans  <wim@fluendo.com>
4491
4492         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
4493         * gst/gstthread.c: (gst_thread_release_children_locks):
4494         Added parentage check.
4495         Fix build og GstThread again.
4496
4497 2005-03-08  Wim Taymans  <wim@fluendo.com>
4498
4499         * docs/design/part-MT-refcounting.txt:
4500         * docs/design/part-conventions.txt:
4501         * docs/design/part-gstobject.txt:
4502         * docs/design/part-relations.txt:
4503         * docs/design/part-standards.txt:
4504         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4505         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
4506         (gst_bin_get_by_name), (gst_bin_get_by_interface),
4507         (gst_bin_iterate_all_by_interface):
4508         * gst/gstbuffer.h:
4509         * gst/gstclock.h:
4510         * gst/gstelement.c: (gst_element_class_init),
4511         (gst_element_change_state), (gst_element_set_loop_function):
4512         * gst/gstelement.h:
4513         * gst/gstiterator.c:
4514         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
4515         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
4516         (gst_object_dispatch_properties_changed), (gst_object_set_name),
4517         (gst_object_set_parent), (gst_object_unparent),
4518         (gst_object_check_uniqueness):
4519         * gst/gstobject.h:
4520         Docs updates, clean up some headers.
4521
4522 2005-03-07  Wim Taymans  <wim@fluendo.com>
4523
4524         * check/.cvsignore:
4525         * check/Makefile.am:
4526         * check/gst-libs/.cvsignore:
4527         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
4528         * check/gst/.cvsignore:
4529         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
4530         (START_TEST), (gstbus_suite), (main):
4531         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
4532         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
4533         (gst_data_suite), (main):
4534         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
4535         (add_fold_func), (gstiterator_suite), (main):
4536         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
4537         (thread_name_object), (thread_name_object_default),
4538         (gst_object_name_compare), (gst_object_suite), (main):
4539         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
4540         (gst_pad_suite), (main):
4541         * check/gstcheck.c: (gst_check_log_message_func),
4542         (gst_check_log_critical_func), (gst_check_init):
4543         * check/gstcheck.h:
4544         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
4545         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
4546         Added checks.
4547
4548 2005-03-07  Wim Taymans  <wim@fluendo.com>
4549
4550         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
4551         (gst_list_iterator_next), (gst_list_iterator_resync),
4552         (gst_list_iterator_free), (gst_iterator_new_list),
4553         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
4554         (gst_iterator_free), (gst_iterator_push), (filter_next),
4555         (filter_resync), (filter_uninit), (filter_free),
4556         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
4557         (gst_iterator_foreach), (find_custom_fold_func),
4558         (gst_iterator_find_custom):
4559         * gst/gstiterator.h:
4560         Added missing files.
4561
4562 2005-03-07  Wim Taymans  <wim@fluendo.com>
4563
4564         * Makefile.am:
4565         * configure.ac:
4566         * docs/design/part-MT-refcounting.txt:
4567         * docs/design/part-conventions.txt:
4568         * docs/design/part-gstobject.txt:
4569         * docs/design/part-relations.txt:
4570         * examples/mixer/mixer.c: (main):
4571         * examples/thread/thread.c: (eos), (main):
4572         * gst/Makefile.am:
4573         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
4574         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
4575         (gst_spider_plug_from_srcpad):
4576         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
4577         (gst_spider_identity_change_state),
4578         (gst_spider_identity_sink_loop_type_finding):
4579         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
4580         * gst/elements/gstidentity.c: (gst_identity_init):
4581         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
4582         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
4583         * gst/elements/gsttypefindelement.c: (free_entry):
4584         * gst/gst.c:
4585         * gst/gst.h:
4586         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
4587         (gst_bin_set_clock_func), (gst_bin_auto_clock),
4588         (gst_bin_set_index), (gst_bin_set_element_sched),
4589         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
4590         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
4591         (gst_bin_iterate_elements), (iterate_child_recurse),
4592         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
4593         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
4594         (compare_interface), (gst_bin_get_by_interface),
4595         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
4596         * gst/gstbin.h:
4597         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
4598         (gst_buffer_default_free), (gst_buffer_default_copy),
4599         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
4600         (gst_buffer_create_sub):
4601         * gst/gstbuffer.h:
4602         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
4603         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
4604         (gst_caps_unref), (gst_static_caps_get),
4605         (gst_caps_remove_and_get_structure), (gst_caps_append),
4606         (gst_caps_append_structure), (gst_caps_remove_structure),
4607         (gst_caps_copy_nth), (gst_caps_set_simple),
4608         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
4609         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
4610         (gst_caps_structure_intersect_field), (gst_caps_intersect),
4611         (gst_caps_structure_subtract_field), (gst_caps_subtract),
4612         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
4613         (gst_caps_structure_figure_out_union),
4614         (gst_caps_switch_structures), (gst_caps_do_simplify),
4615         (gst_caps_replace), (gst_caps_from_string),
4616         (gst_caps_copy_conditional):
4617         * gst/gstcaps.h:
4618         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
4619         (_gst_clock_id_free), (gst_clock_id_unref),
4620         (gst_clock_id_compare_func), (gst_clock_id_wait),
4621         (gst_clock_id_wait_async), (gst_clock_class_init),
4622         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
4623         (gst_clock_get_time), (gst_clock_set_time_adjust),
4624         (gst_clock_set_property), (gst_clock_get_property):
4625         * gst/gstclock.h:
4626         * gst/gstcompat.h:
4627         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
4628         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
4629         * gst/gstdata.h:
4630         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4631         (gst_element_requires_clock), (gst_element_provides_clock),
4632         (gst_element_set_clock), (gst_element_clock_wait),
4633         (gst_element_wait), (gst_element_set_time_delay),
4634         (gst_element_is_indexable), (gst_element_add_pad),
4635         (gst_element_add_ghost_pad), (gst_element_remove_pad),
4636         (pad_compare_name), (gst_element_get_static_pad),
4637         (gst_element_request_pad), (gst_element_get_request_pad),
4638         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
4639         (gst_element_class_get_pad_template_list),
4640         (gst_element_class_get_pad_template), (gst_element_error_func),
4641         (gst_element_get_random_pad), (gst_element_get_event_masks),
4642         (gst_element_send_event), (gst_element_seek),
4643         (gst_element_get_query_types), (gst_element_query),
4644         (gst_element_get_formats), (gst_element_convert),
4645         (gst_element_is_locked_state), (gst_element_set_locked_state),
4646         (gst_element_sync_state_with_parent), (gst_element_change_state),
4647         (gst_element_finalize), (gst_element_yield),
4648         (gst_element_interrupt), (gst_element_set_scheduler),
4649         (gst_element_get_scheduler), (gst_element_set_loop_function):
4650         * gst/gstelement.h:
4651         * gst/gstevent.h:
4652         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
4653         (gst_format_get_by_nick), (gst_format_get_details),
4654         (gst_format_iterate_definitions):
4655         * gst/gstformat.h:
4656         * gst/gstindex.c: (gst_index_gtype_resolver):
4657         * gst/gstinfo.c:
4658         * gst/gstinfo.h:
4659         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
4660         (gst_mem_chunk_free):
4661         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
4662         (gst_object_ref), (gst_object_unref), (gst_object_sink),
4663         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
4664         (gst_object_dispatch_properties_changed),
4665         (gst_object_set_name_default), (gst_object_set_name),
4666         (gst_object_get_name), (gst_object_set_name_prefix),
4667         (gst_object_get_name_prefix), (gst_object_set_parent),
4668         (gst_object_get_parent), (gst_object_unparent),
4669         (gst_object_check_uniqueness), (gst_object_save_thyself),
4670         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
4671         (gst_object_set_property), (gst_object_get_property),
4672         (gst_object_get_path_string):
4673         * gst/gstobject.h:
4674         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
4675         (gst_real_pad_init), (gst_real_pad_get_property),
4676         (gst_pad_custom_new), (gst_pad_get_direction),
4677         (gst_pad_set_active), (gst_pad_is_active),
4678         (gst_pad_set_event_function), (gst_pad_is_linked),
4679         (gst_pad_link_free), (gst_pad_link_intersect),
4680         (gst_pad_link_fixate), (gst_pad_set_caps),
4681         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
4682         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
4683         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
4684         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
4685         (gst_pad_get_caps), (gst_pad_peer_get_caps),
4686         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
4687         (gst_pad_realize), (gst_pad_get_allowed_caps),
4688         (gst_real_pad_dispose), (gst_real_pad_finalize),
4689         (gst_pad_collectv), (gst_pad_collect_valist),
4690         (gst_pad_template_dispose), (gst_pad_template_new),
4691         (gst_pad_get_internal_links):
4692         * gst/gstpad.h:
4693         * gst/gstpipeline.c: (gst_pipeline_dispose),
4694         (gst_pipeline_change_state):
4695         * gst/gstpipeline.h:
4696         * gst/gstplugin.c:
4697         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
4698         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
4699         * gst/gstpluginfeature.h:
4700         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4701         * gst/gstquery.c: (_gst_query_type_initialize),
4702         (gst_query_type_register), (gst_query_type_get_by_nick),
4703         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
4704         * gst/gstquery.h:
4705         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
4706         * gst/gstscheduler.c: (gst_scheduler_add_element),
4707         (gst_scheduler_factory_create):
4708         * gst/gststructure.c: (gst_structure_set_parent_refcount),
4709         (gst_structure_free), (gst_structure_set_name),
4710         (gst_structure_id_set_value), (gst_structure_set_value),
4711         (gst_structure_set_valist), (gst_structure_remove_field),
4712         (gst_structure_remove_fields),
4713         (gst_structure_remove_fields_valist),
4714         (gst_structure_remove_all_fields), (gst_structure_foreach),
4715         (gst_structure_map_in_place),
4716         (gst_caps_structure_fixate_field_nearest_int),
4717         (gst_caps_structure_fixate_field_nearest_double):
4718         * gst/gststructure.h:
4719         * gst/gstsystemclock.c: (gst_system_clock_class_init),
4720         (gst_system_clock_init), (gst_system_clock_dispose),
4721         (gst_system_clock_async_thread),
4722         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
4723         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
4724         * gst/gstsystemclock.h:
4725         * gst/gsttag.c: (gst_tag_list_add_value_internal),
4726         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
4727         * gst/gsttaginterface.c:
4728         * gst/gstthread.c: (gst_thread_dispose),
4729         (gst_thread_release_children_locks), (gst_thread_change_state),
4730         (gst_thread_main_loop):
4731         * gst/gsttrashstack.h:
4732         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
4733         * gst/gsttypes.h:
4734         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
4735         (gst_element_request_pad), (gst_element_get_pad_from_template),
4736         (gst_element_request_compatible_pad),
4737         (gst_element_get_compatible_pad_filtered),
4738         (gst_element_get_compatible_pad), (gst_element_state_get_name),
4739         (gst_element_link_pads_filtered), (gst_element_link_filtered),
4740         (gst_element_link_many), (gst_element_link),
4741         (gst_element_link_pads), (gst_element_unlink_pads),
4742         (gst_element_unlink_many), (gst_element_unlink),
4743         (gst_pad_can_link_filtered), (gst_pad_can_link),
4744         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
4745         (gst_object_default_error), (gst_bin_add_many),
4746         (gst_bin_remove_many), (gst_element_populate_std_props),
4747         (gst_element_class_install_std_props), (gst_buffer_merge),
4748         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
4749         (link_fold_func), (gst_pad_proxy_setcaps):
4750         * gst/gstutils.h:
4751         * gst/gstvalue.c: (gst_value_deserialize_string):
4752         * gst/parse/grammar.y:
4753         * gst/schedulers/gstbasicscheduler.c:
4754         (gst_basic_scheduler_cothreaded_chain),
4755         (gst_basic_scheduler_chain_recursive_add),
4756         (gst_basic_scheduler_pad_link):
4757         * gst/schedulers/gstoptimalscheduler.c:
4758         (get_group_schedule_function),
4759         (gst_opt_scheduler_state_transition),
4760         (gst_opt_scheduler_add_element), (element_get_reachables_func):
4761         * libs/gst/bytestream/bytestream.c:
4762         * libs/gst/dataprotocol/dataprotocol.c:
4763         (gst_dp_header_from_buffer):
4764         * po/nb.po:
4765         * po/ru.po:
4766         * tests/threadstate/threadstate2.c: (eos):
4767         * tools/gst-compprep.c: (main):
4768         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
4769         (print_pad_info), (print_children_info):
4770         * tools/gst-launch.c: (idle_func), (main):
4771         * tools/gst-md5sum.c: (idle_func), (main):
4772         * tools/gst-xmlinspect.c: (print_element_info):
4773         First THREADED backport attempt, focusing on adding locks and
4774         making sure the API is threadsafe. Needs more work. More docs
4775         follow this week.
4776
4777 2005-02-24  Andy Wingo  <wingo@pobox.com>
4778
4779         * tests/bench-complexity.scm:
4780         * tests/complexity.gnuplot: New files, good for running complexity
4781         benchmarks.
4782
4783         * tests/Makefile.am:
4784         * tests/complexity.c: New test, sets up N elements, at each level
4785         teeing into M streams per element. Eeeenteresting.
4786
4787         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
4788         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
4789         running bench-mass_elements.scm.
4790
4791         * tests/bench-mass_elements.scm: New script, runs mass_elements
4792         for various numbers of identities, outputting the results to a
4793         file. Requires guile 1.6. Just for testing.
4794
4795 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
4796
4797         * gst/schedulers/fairscheduler.c:
4798           compile with debug disabled
4799
4800 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
4801
4802         * configure.ac:
4803           hunting season on 0.9 is now OPEN
4804
4805 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
4806
4807         * docs/libs/tmpl/gstcontrol.sgml:
4808         * docs/libs/tmpl/gstdparam.sgml:
4809         * docs/libs/tmpl/gstdplinint.sgml:
4810         * docs/libs/tmpl/gstdpman.sgml:
4811         * docs/libs/tmpl/gstdpsmooth.sgml:
4812         * docs/libs/tmpl/gstunitconvert.sgml:
4813           more docs for the state of dparams
4814
4815 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4816
4817         * gst/gstelementfactory.c: (gst_element_factory_create):
4818         * gst/gstobject.c: (gst_object_init),
4819         (gst_object_set_name_default), (gst_object_set_name):
4820           name objects by default, not in gst_element_factory_create. Allows
4821           using elements created with g_object_new. (fixes #167283)
4822
4823 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4824
4825         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
4826           make the time that debugging functions print relative to when
4827           gst_init was called
4828
4829 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
4830
4831         * gst/gsttaginterface.c:
4832           Fix inline docs: tag setter vararg functions are NULL-terminated,
4833           GST_TAG_INVALID doesn't exist any more.
4834
4835 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4836
4837         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
4838         Allocate the 1 byte more memory that was forgotten!!!!!
4839         fixes memory corruption on 64bit platforms
4840
4841 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
4842
4843         * docs/pwg/building-pads.xml:
4844         * docs/pwg/intro-basics.xml:
4845           fixed a few typos, relabeled introductionary list of types
4846         * docs/random/ensonic/dparams.txt:
4847           more notes abut dparam changes
4848         * libs/gst/control/dparam.c: (gst_dparam_attach):
4849         * libs/gst/control/dparammanager.c:
4850         * libs/gst/control/dparammanager.h:
4851           - many comments and notes on dparam implementation
4852           - new dparams are were not initialized to the default value
4853             from param spec
4854
4855 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
4856
4857         submitted by: Peter Astakhov
4858
4859         * po/LINGUAS:
4860         * po/ru.po:
4861           adding Russian translation
4862
4863 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
4864
4865         * configure.ac:
4866         * docs/gst/Makefile.am:
4867         * docs/libs/Makefile.am:
4868           make sure popt is added to gtk-doc flags.  Fixes #147782.
4869
4870 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
4871
4872         * docs/faq/using.xml:
4873           Fix typo in FAQ (artssink => artsdsink)
4874
4875 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4876
4877         * tools/gst-launch.1.in:
4878           Fix typo (#166699).
4879
4880 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
4881
4882         * docs/faq/using.xml:
4883           Add -v argument to fakesrc/fakesink gst-launch line,
4884           so that the promised output will actually show up.
4885
4886 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4887
4888         * gst/gstthread.c: (gst_thread_change_state):
4889           Implement state-change error handling (#166073).
4890
4891 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4892
4893         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
4894           Release interrupt after handling (#166250).
4895
4896 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4897
4898         * configure.ac:
4899           back to HEAD
4900
4901 === release 0.8.9 ===
4902
4903 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4904
4905         * NEWS:
4906         * RELEASE:
4907         * configure.ac:
4908           releasing 0.8.9, "Like Eating Glass"
4909
4910 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4911
4912         submitted by: Clytie Siddall
4913
4914         * po/vi.po: Added Vietnamese translation
4915
4916 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
4917
4918         patch by: Tim Philipp-Müller
4919
4920         * configure.ac:
4921         * gst/gstpad.c:
4922           unref data when probe function returns FALSE.  Fixes #166362
4923
4924 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4925
4926         * gst/gst.c: (gst_init_get_popt_table):
4927           Fix typo (#166269).
4928
4929 2005-02-04  Andy Wingo  <wingo@pobox.com>
4930
4931         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
4932         the debugging on whether the caps are compatible.
4933
4934 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4935
4936         * docs/manual/basics-elements.xml:
4937           Fix two typos.
4938
4939 2005-02-02  Wim Taymans  <wim@fluendo.com>
4940
4941         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
4942         (schedule_chain), (get_invalid_call), (chain_invalid_call),
4943         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
4944         Remove some FIXMEs after analysing and commenting why they
4945         are not issues.
4946
4947 2005-02-02  Wim Taymans  <wim@fluendo.com>
4948
4949         * gst/schedulers/gstoptimalscheduler.c:
4950         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
4951         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
4952         (get_invalid_call), (chain_invalid_call),
4953         (get_group_schedule_function), (loop_group_schedule_function),
4954         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
4955         (gst_opt_scheduler_state_transition),
4956         (gst_opt_scheduler_add_element),
4957         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
4958         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
4959         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
4960         (gst_opt_scheduler_show):
4961         Added lock to protect scheduler data structures.
4962
4963 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4964
4965         * testsuite/threads/threadi.c: (cb_data):
4966           Fix buglet in test.
4967
4968 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4969
4970         * testsuite/threads/Makefile.am:
4971         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
4972           On Wim's request, split the test in three separately-compiled
4973           tests that each test a very specific bug. Two of them still fail,
4974           will create bugs for those. threadi.c indicates why they fail.
4975
4976 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4977
4978         * gst/schedulers/gstoptimalscheduler.c:
4979         (get_group_schedule_function):
4980           Try to work with the threading mess that queue_link is.
4981
4982 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4983
4984         * gst/gstbin.c: (gst_bin_remove_func):
4985           Explicitely make an element release locks in a group when being
4986           remove from a bin.
4987         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
4988           If there's no scheduler, always return immediately (similar to
4989           gst_element_interrupt).
4990
4991 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4992
4993         * gst/gstbin.c: (gst_bin_child_state_change_func):
4994           Remove a piece of code that could never be reached.
4995         * docs/gst/gstreamer-sections.txt:
4996         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
4997         (gst_pad_call_get_function):
4998         * gst/gstpad.h:
4999         * testsuite/pad/Makefile.am:
5000           Fix #150546, enable tests.
5001
5002 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5003
5004         * docs/pwg/advanced-types.xml:
5005           Fix description for buffer-frames=0.
5006         * docs/gst/tmpl/gstbin.sgml:
5007         * gst/gstbin.c: (gst_bin_child_state_change_func),
5008         (gst_bin_change_state), (gst_bin_change_state_norecurse):
5009         * gst/gstbin.h:
5010         * testsuite/threads/Makefile.am:
5011         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
5012         (cb_state), (cb_play), (main):
5013           Fix non-recursive state changes to *really* change the state
5014           of the object, and not just call parent_class->state_change.
5015           Fix a lot of lockups caused by this. Fixes #132775. Add test
5016           for the problem. Also enable test to show #142588 (fixed).
5017         * gst/gstthread.c: (gst_thread_change_state),
5018         (gst_thread_child_state_change):
5019           Don't exit the thread if we go to NULL and are inside thread
5020           context. Instead, return control to the main thread context
5021           and exit from there.
5022         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
5023           Don't unset virtual functions, since those may still be used.
5024           That's not necessarily correct, but suffices for now.
5025         * configure.ac:
5026         * testsuite/Makefile.am:
5027         * testsuite/pad/Makefile.am:
5028         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
5029         (gst_test_sink_base_init), (gst_test_sink_chain),
5030         (gst_test_sink_init), (main):
5031         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
5032         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
5033         (main):
5034         * testsuite/pad/link.c: (gst_test_element_class_init),
5035         (gst_test_element_base_init), (gst_test_src_get),
5036         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
5037         (gst_test_filter_loop), (gst_test_filter_init),
5038         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
5039         (cb_error), (main):
5040           Add tests to show #150546. Pass, but should fail (currently
5041           disabled from the testsuite).
5042         * gst/gstscheduler.c: (gst_scheduler_dispose):
5043           Dereference child schedulers on dispose (#94464).
5044         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
5045           Fix typo.
5046         * testsuite/threads/thread.c: (main):
5047           Add more debug.
5048
5049 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5050
5051         * gst/gstpad.c: (gst_pad_push):
5052           Oops, revert previous commit, broke testsuite...
5053
5054 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5055
5056         * gst/gstpad.c: (gst_pad_push):
5057           Add check that the pad on which the push is performed is not a
5058           get-based pad (#150546).
5059
5060 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5061
5062         * gst/elements/gsttypefindelement.c:
5063         (gst_type_find_element_handle_event):
5064           Fix buffer pushing if stream EOSes during typefinding.
5065
5066 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
5067
5068         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5069
5070         * gst/gstvalue.c: (gst_string_wrap):
5071           Allow NULL-strings as argument (#165365).
5072
5073 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
5074
5075         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5076
5077         * gst/schedulers/faircothreads.c:
5078         (gst_fair_scheduler_cothread_queue_show):
5079           Fix build without debug enabled.
5080
5081 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
5082
5083         * docs/gst/gstreamer-sections.txt:
5084         * docs/libs/gstreamer-libs-docs.sgml:
5085         * docs/libs/gstreamer-libs-sections.txt:
5086         * docs/libs/tmpl/gstcontrol.sgml:
5087         * docs/libs/tmpl/gstdparam.sgml:
5088         * docs/libs/tmpl/gstdplinint.sgml:
5089         * docs/libs/tmpl/gstdpman.sgml:
5090         * docs/libs/tmpl/gstdpsmooth.sgml:
5091         * docs/libs/tmpl/gstputbits.sgml:
5092         * docs/libs/tmpl/gstunitconvert.sgml:
5093         * libs/gst/control/dparam.c:
5094         * libs/gst/control/dparam.h:
5095         * libs/gst/control/dparammanager.c:
5096         (gst_dpman_add_required_dparam_callback),
5097         (gst_dpman_add_required_dparam_direct),
5098         (gst_dpman_add_required_dparam_array),
5099         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
5100         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
5101         (gst_dpman_get_manager)
5102           restructured DParam docs
5103
5104 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
5105
5106         * gst-element-check.m4:
5107           Only check for gst-inspect if we haven't already
5108           found it in previous element check runs
5109
5110 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
5111
5112         * docs/gst/Makefile.am:
5113         * docs/libs/Makefile.am:
5114           fixed install rules to treat style.css as optional
5115
5116 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
5117
5118         * docs/gst/Makefile.am:
5119         * docs/libs/Makefile.am:
5120           install style.css along with docs
5121         * docs/gst/tmpl/gstbin.sgml:
5122         * docs/gst/tmpl/gstclock.sgml:
5123         * docs/gst/tmpl/gstdata.sgml:
5124         * docs/gst/tmpl/gstelement.sgml:
5125         * gst/gstbin.h:
5126         * gst/gstelement.c: (gst_element_class_init):
5127         * gst/gstelement.h:
5128           fixing incomplete docs
5129
5130 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
5131
5132         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5133           Don't unref seek event twice when fflush() fails
5134           
5135 2005-01-22  David Schleef  <ds@schleef.org>
5136
5137         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
5138
5139 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
5140
5141         * docs/gst/Makefile.am:
5142         * docs/libs/Makefile.am:
5143           added params for deprecation guards
5144         * gst/gst.c:
5145         * gst/gst.h:
5146         * gst/gsterror.c: (_gst_resource_errors_init),
5147         (_gst_stream_errors_init):
5148         * gst/gsterror.h:
5149           documented some more enums
5150
5151 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
5152         * gst/autoplug/gstspideridentity.c:
5153         Cosmetic fix - spider_find_peek should be static
5154         * gst/parse/parse.l:
5155         Applying fix for #164261
5156
5157 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
5158
5159         * docs/gst/gstreamer-sections.txt:
5160         * docs/gst/tmpl/gstplugin.sgml:
5161         * docs/libs/gstreamer-libs-sections.txt:
5162         * docs/libs/tmpl/gstcontrol.sgml:
5163         * gst/gstbuffer.h:
5164         * gst/gsttag.h:
5165         * gst/gstvalue.c:
5166           added docs for the TAG defines
5167
5168 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5169
5170         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
5171           Only unref entry if there is an entry.
5172
5173 2005-01-17  Wim Taymans  <wim@fluendo.com>
5174
5175         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5176         (remove_from_group), (schedule_group), (normalize_group),
5177         (gst_opt_scheduler_iterate):
5178         Also ref/unref decoupled elements before iterating the
5179         group since they are not added to the list of elements.
5180
5181 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5182
5183         * docs/manual/highlevel-components.xml:
5184           Add subtitle/streamselection as new features to playbin.
5185
5186 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5187
5188         * docs/manual/manual.xml:
5189           Re-enable dataaccess docs (oops).
5190
5191 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5192
5193         * docs/pwg/advanced-types.xml:
5194         * docs/random/mimetypes:
5195           Add documentation on libsndfile types (#163309), by Steve Baker
5196           <steve@stevebaker.org>.
5197         * gst/gstelement.c: (gst_element_release_request_pad):
5198           If an element has no explicit function, just remove the pad.
5199
5200 2005-01-17  Luca Ognibene  <luogni@tin.it>
5201
5202         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5203
5204         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
5205           Fix memleak (#163801).
5206
5207 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5208
5209         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
5210           I think this is actually more correct...
5211
5212 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5213
5214         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5215           Another workaround for memory access while destroyed in callback.
5216           Please, someone with refcount knowledge, have a look at this.
5217
5218 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5219
5220         * docs/faq/faq.xml:
5221         * docs/faq/legal.xml:
5222           move the legal Q&A here
5223
5224 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5225
5226         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
5227         (gst_tee_request_new_pad):
5228           Fix negotiation.
5229
5230 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5231
5232         * docs/random/omega/caps2:
5233         * testsuite/caps/caps_strings:
5234           replace framerate aproximations by their real value
5235           (24000/1001, 30000/1001, 60000/1001)
5236           Partially fixes bug #164049
5237
5238 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5239
5240         * docs/gst/Makefile.am:
5241           don't fail on the stupid GstPoptOption
5242
5243 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5244
5245         * gst/gstpad.h:
5246         * gst/gstprobe.c:
5247           allow probes to work on ghost pads by realizing the pad
5248           probe debugging
5249
5250 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5251
5252         * docs/gst/gstreamer-sections.txt:
5253         * docs/gst/tmpl/gstpad.sgml:
5254         * gst/gstpad.c: (gst_pad_set_active_recursive):
5255         * gst/gstpad.h:
5256           Add gst_pad_set_active_recursive().
5257
5258 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5259
5260         * docs/random/release:
5261           updates
5262         * gst/gst_private.h:
5263         * gst/gstinfo.c:
5264         * gst/gstobject.c:
5265           move deep_notify logging to a new category
5266         * gst/gstprobe.c:
5267         * gst/gstprobe.h:
5268           add stuff so bindings can wrap probes
5269
5270 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5271
5272         * gst/gstplugin.c: (gst_plugin_load):
5273           Fix plugin loading if plugin/lib was already loaded. Fixes
5274           #163383
5275
5276 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
5277
5278         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5279
5280         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
5281           Protect plugin loading by a mutex so it's threadsafe. Fixes
5282           #163234.
5283
5284 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5285
5286         * gst/gstevent.c: (_gst_event_copy):
5287           Reference source object when copying events, since it'll be
5288           dereferenced on event dereferencing as well.
5289
5290 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5291
5292         * docs/gst/gstreamer-sections.txt:
5293         * docs/gst/tmpl/gstevent.sgml:
5294         * gst/gstevent.c: (gst_event_new_filler_stamped),
5295         (gst_event_filler_get_duration):
5296         * gst/gstevent.h:
5297           Add two new functions for filler events (which are used to
5298           synchronize streams if one of them is not having any data
5299           for a while) without interrupting the actual data-stream.
5300           Basically a no-op.
5301         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5302         (gst_queue_link_sink), (gst_queue_link_src),
5303         (gst_queue_change_state):
5304           Allow for renegotiation while filled. Required for stream
5305           switching while playing.
5306
5307 2005-01-08  Benjamin Otte  <otte@gnome.org>
5308
5309         * gst/gstelement.c: (gst_element_link_many):
5310           fix up g_return_if_fail's
5311         * po/LINGUAS:
5312         * po/de.po:
5313           add German translation, that was somehow not included
5314
5315 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5316
5317         * docs/random/mimetypes:
5318           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
5319           do not add them to riff-lib as they are not common
5320
5321 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5322
5323         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5324           Check for existence of probe after performing the probe before
5325           re-accessing it to prevent segfaults caused by removal of the
5326           probe in the callback.
5327
5328 2005-01-05  David Schleef  <ds@schleef.org>
5329
5330         * testsuite/registry/Makefile.am:
5331         * testsuite/registry/gst-print-formats.c:
5332         (print_pad_templates_info), (print_element_list),
5333         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
5334         (g_list_uniqify), (get_pad_templates_info),
5335         (get_element_mime_list), (print_mime_list), (main): A little
5336         program that looks through the registry to find elements of
5337         a given type.  Not particularly interesting as a test, except
5338         that there's no other test covering the same area.
5339
5340 2005-01-05  David Schleef  <ds@schleef.org>
5341
5342         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
5343         (fault_handler_sigaction), (fault_spin),
5344         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
5345         in signal.h-type signal handlers by not calling forbidden functions,
5346         including gst_element_set_state().
5347
5348 2005-01-05  David Schleef  <ds@schleef.org>
5349
5350         * gst/gstvalue.h: Mark _gst_reserved[] as private
5351
5352 2005-01-05  David Schleef  <ds@schleef.org>
5353
5354         * gst/gstvalue.c: Fix doc build problem.
5355
5356 2005-01-05  David Schleef  <ds@schleef.org>
5357
5358         * gst/gstvalue.c: Add some documentation
5359
5360 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
5361
5362         * docs/README:
5363           another shell oneliner for empty return value docs
5364         * gst/gstcaps.c:
5365         * gst/gstvalue.c:
5366         * libs/gst/control/dparam.c:
5367           more doc fixes (parameters and return values)
5368
5369 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
5370
5371         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5372
5373         * gst/gstregistry.h:
5374         * gst/registries/gstxmlregistry.c:
5375           Fix macro's for Mingw (fixes #162276).
5376
5377 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
5378
5379         * docs/README:
5380           quick shell oneliner to find undocumented members
5381         * docs/gst/tmpl/gstplugin.sgml:
5382         * docs/gst/tmpl/gstscheduler.sgml:
5383         * docs/gst/tmpl/gstthread.sgml:
5384           more enumtypes cleanup
5385         * gst/gsterror.h:
5386           activated documentation comments, now someone needs to document
5387           the enums :(
5388
5389 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5390
5391         * docs/manual/manual.xml:
5392           Add dataaccess part (doh!).
5393
5394 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5395
5396         * docs/manual/advanced-autoplugging.xml:
5397           Fix typo (intiate -> initiate).
5398
5399 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5400
5401         * docs/random/bbb/streamselection:
5402           Add some notes on how to handle multi-subtitle/-audio streams.
5403
5404 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
5405
5406         * docs/gst/gstreamer-docs.sgml:
5407         * docs/gst/gstreamer-sections.txt:
5408         * docs/gst/tmpl/gstenumtypes.sgml:
5409         * docs/gst/tmpl/gsterror.sgml:
5410         * docs/gst/tmpl/gstevent.sgml:
5411         * docs/gst/tmpl/gstpad.sgml:
5412         * docs/gst/tmpl/gstpadtemplate.sgml:
5413         * docs/gst/tmpl/gstthread.sgml:
5414           removed gstenumtypes section from docs and put all the enums into
5415           their sections
5416
5417 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5418
5419         * gst/gstplugin.c:
5420           document gst_library_load a bit more (riff special case + return
5421           value if already loaded)
5422         * testsuite/bytestream/filepadsink.c:
5423           plugin name is 'gstbytestream', not 'bytestream'
5424
5425 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5426
5427         * docs/random/bbb/subtitles:
5428           Add some first mind rumblings on proper subtitle support.
5429
5430 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
5431
5432         * po/ca.po:
5433         * po/sv.po:
5434           updated translations
5435
5436 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5437
5438         * docs/manual/advanced-dataaccess.xml:
5439           Add section on how to use fakesrc/fakesink/identity in your
5440           application, plus section on how to embed plugins. Also mention
5441           probes.
5442         * docs/manual/appendix-checklist.xml:
5443         * docs/manual/appendix-debugging.xml:
5444         * docs/manual/appendix-gnome.xml:
5445         * docs/manual/appendix-integration.xml:
5446           Debug -> checklist, GNOME -> integration, add sections on Linux,
5447           KDE integration and add other things useful for application
5448           development.
5449         * docs/manual/manual.xml:
5450           Remove some fixmes, update some file pointers.
5451         * docs/pwg/appendix-checklist.xml:
5452           Fix typo.
5453         * docs/pwg/building-boiler.xml:
5454           Remove ugly header and add commented fixme.
5455         * docs/pwg/pwg.xml:
5456           Add fixme.
5457         * examples/manual/Makefile.am:
5458           Add example for added docs.
5459
5460 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5461
5462         * configure.ac:
5463           back to HEAD
5464
5465 === release 0.8.8 ===
5466
5467 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5468
5469         * NEWS:
5470         * RELEASE:
5471         * configure.ac:
5472           Releasing 0.8.8, "I'll Take Care Of You"
5473
5474 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5475
5476         * configure.ac:
5477           second prerelease
5478
5479 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5480
5481         patch by: Wim Taymans
5482
5483         * gst/gstbin.c:
5484           Fix for #159852 - make iterate emission threadsafe
5485
5486 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5487
5488         * docs/faq/cvs.xml:
5489           notes about new fdo account request
5490
5491 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
5492
5493         * docs/gst/gstreamer-docs.sgml:
5494         * docs/gst/tmpl/gstenumtypes.sgml:
5495         * docs/gst/tmpl/gstplugin.sgml:
5496         * docs/libs/gstreamer-libs-docs.sgml:
5497           Added missing short docs. Added ids for navigation.
5498
5499 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5500
5501         * docs/manual/advanced-autoplugging.xml:
5502         * docs/manual/advanced-schedulers.xml:
5503         * docs/manual/advanced-threads.xml:
5504           Rewrites. Remove cothreads, go a bit into opt specifically,
5505           document threads and their gotchas, and do some technical stuff
5506           on autoplugging plus add some working examples. Fixes #157395.
5507         * examples/manual/Makefile.am:
5508           Add typefind/autoplugger example (one that actually works).
5509           Remove queue example since it's a duplicate of the thread one.
5510
5511 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5512
5513         * gst/gstvalue.c: (gst_value_deserialize_string):
5514           use deprecated g_value_set_string_take_ownership to keep compatible
5515           with glib 2.2
5516
5517 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5518
5519         * gst/gstvalue.c: (gst_value_deserialize_string):
5520           revert last patch, only dom a g_utf8_validate now before accepting
5521           the string - caps parsing strips " from strings so we can't rely on
5522           them
5523         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5524           disable a test that tested the above and comment it
5525
5526 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
5527
5528         Patch reviewed by David Schleef  <ds@schleef.org>
5529
5530         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
5531         bug #153882)
5532         * win32/gstenumtypes.h: same
5533
5534 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5535
5536         * gst/gstpad.c: (gst_pad_query):
5537           Do query on realized pad, similar to how convert/send_event handle
5538           this. Also makes sense, since this pad belongs to the function to
5539           which this query will be sent. Fixes #158163.
5540
5541 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
5542
5543         * docs/manual/appendix-programs.xml: fix pipeline to actually work
5544
5545 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5546
5547         * docs/faq/general.xml: fix pipeline to actually work
5548
5549 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5550
5551         * gst/gstvalue.c: (gst_value_deserialize_string):
5552           check that a simple string that gets deserialized does not contain
5553           invalid characters
5554         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5555           remove a test that tested a wring behaviour
5556
5557 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
5558
5559         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5560
5561         * docs/manual/intro-motivation.xml:
5562           Fix typos.
5563
5564 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
5565
5566         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5567
5568         * docs/gst/tmpl/gstprobe.sgml:
5569           Fix documentation of probe callback - it is supposed to return
5570           FALSE, not TRUE, to remove data from the stream (#159087).
5571
5572 2004-12-16  Daniel Gazard  <dany42@free.fr>
5573
5574         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5575
5576         * gst/gstelementfactory.c: (gst_element_factory_create):
5577           Fix compile failure if compiling without libxml2 support (#149936).
5578
5579 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5580
5581         * docs/manual/advanced-autoplugging.xml:
5582         * docs/manual/highlevel-components.xml:
5583           Move spider from autoplugging to components. Autoplugging is for
5584           internals, not for solutions. ;-).
5585
5586 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5587
5588         * docs/random/ds/0.9-suggested-changes:
5589           Make note on device/location/uri property names.
5590
5591 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5592
5593         * docs/manual/advanced-autoplugging.xml:
5594         * docs/manual/advanced-clocks.xml:
5595         * docs/manual/advanced-interfaces.xml:
5596         * docs/manual/advanced-metadata.xml:
5597         * docs/manual/advanced-position.xml:
5598         * docs/manual/advanced-schedulers.xml:
5599         * docs/manual/advanced-threads.xml:
5600         * docs/manual/appendix-gnome.xml:
5601         * docs/manual/appendix-programs.xml:
5602         * docs/manual/appendix-quotes.xml:
5603         * docs/manual/autoplugging.xml:
5604         * docs/manual/basics-bins.xml:
5605         * docs/manual/basics-data.xml:
5606         * docs/manual/basics-elements.xml:
5607         * docs/manual/basics-helloworld.xml:
5608         * docs/manual/basics-init.xml:
5609         * docs/manual/basics-pads.xml:
5610         * docs/manual/basics-plugins.xml:
5611         * docs/manual/bins-api.xml:
5612         * docs/manual/bins.xml:
5613         * docs/manual/buffers-api.xml:
5614         * docs/manual/buffers.xml:
5615         * docs/manual/clocks.xml:
5616         * docs/manual/components.xml:
5617         * docs/manual/cothreads.xml:
5618         * docs/manual/debugging.xml:
5619         * docs/manual/dparams-app.xml:
5620         * docs/manual/dynamic.xml:
5621         * docs/manual/elements-api.xml:
5622         * docs/manual/elements.xml:
5623         * docs/manual/factories.xml:
5624         * docs/manual/gnome.xml:
5625         * docs/manual/goals.xml:
5626         * docs/manual/helloworld.xml:
5627         * docs/manual/helloworld2.xml:
5628         * docs/manual/highlevel-components.xml:
5629         * docs/manual/highlevel-xml.xml:
5630         * docs/manual/init-api.xml:
5631         * docs/manual/intro-basics.xml:
5632         * docs/manual/intro-motivation.xml:
5633         * docs/manual/intro-preface.xml:
5634         * docs/manual/intro.xml:
5635         * docs/manual/links-api.xml:
5636         * docs/manual/links.xml:
5637         * docs/manual/manual.xml:
5638         * docs/manual/motivation.xml:
5639         * docs/manual/pads-api.xml:
5640         * docs/manual/pads.xml:
5641         * docs/manual/plugins-api.xml:
5642         * docs/manual/plugins.xml:
5643         * docs/manual/programs.xml:
5644         * docs/manual/queues.xml:
5645         * docs/manual/quotes.xml:
5646         * docs/manual/schedulers.xml:
5647         * docs/manual/states-api.xml:
5648         * docs/manual/states.xml:
5649         * docs/manual/threads.xml:
5650         * docs/manual/typedetection.xml:
5651         * docs/manual/win32.xml:
5652         * docs/manual/xml.xml:
5653           Try 2. This time, include a short preface as a "general
5654           introduction", also add code blocks around all code samples
5655           so they get compiled. We still need a way to tell readers
5656           the filename of the code sample. In some cases, don't show
5657           all code in the documentation, but do include it in the generated
5658           code. This allows for focussing on specific bits in the docs,
5659           while still having a full test application available.
5660         * examples/manual/Makefile.am:
5661           Fix up examples for new ADM. Add several of the new examples that
5662           were either added or were missing from the build system.
5663         * examples/manual/extract.pl:
5664           Allow nameless blocks.
5665
5666 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5667
5668         * docs/manual/elements-api.xml:
5669         * docs/manual/helloworld.xml:
5670         * examples/manual/extract.pl:
5671           fix last example.  Add example of adding code blocks that are not
5672           shown in docbook output.
5673
5674 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5675
5676         * docs/manual/dynamic.xml:
5677         * docs/manual/elements-api.xml:
5678         * docs/manual/gnome.xml:
5679         * docs/manual/helloworld2.xml:
5680         * docs/manual/init-api.xml:
5681         * docs/manual/queues.xml:
5682         * docs/manual/threads.xml:
5683         * docs/manual/xml.xml:
5684         * examples/manual/extract.pl:
5685           Make it possible to extract example code from separate blocks.
5686           Should make Ronald happy.
5687
5688 2004-12-15  Wim Taymans  <wim@fluendo.com>
5689
5690         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5691         (remove_from_group), (group_elements_set_visited),
5692         (normalize_group), (gst_opt_scheduler_iterate):
5693         Fix bug where a flag was not updated on a decoupled entry point 
5694         because we were just checking the group element list and decoupled
5695         elements are not in that list..
5696
5697 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5698
5699         * docs/manual/advanced-autoplugging.xml:
5700         * docs/manual/advanced-clocks.xml:
5701         * docs/manual/advanced-dparams.xml:
5702         * docs/manual/advanced-interfaces.xml:
5703         * docs/manual/advanced-metadata.xml:
5704         * docs/manual/advanced-position.xml:
5705         * docs/manual/advanced-schedulers.xml:
5706         * docs/manual/advanced-threads.xml:
5707         * docs/manual/appendix-debugging.xml:
5708         * docs/manual/appendix-gnome.xml:
5709         * docs/manual/appendix-programs.xml:
5710         * docs/manual/appendix-quotes.xml:
5711         * docs/manual/appendix-win32.xml:
5712         * docs/manual/autoplugging.xml:
5713         * docs/manual/basics-bins.xml:
5714         * docs/manual/basics-data.xml:
5715         * docs/manual/basics-elements.xml:
5716         * docs/manual/basics-helloworld.xml:
5717         * docs/manual/basics-init.xml:
5718         * docs/manual/basics-pads.xml:
5719         * docs/manual/basics-plugins.xml:
5720         * docs/manual/bins-api.xml:
5721         * docs/manual/bins.xml:
5722         * docs/manual/buffers-api.xml:
5723         * docs/manual/buffers.xml:
5724         * docs/manual/clocks.xml:
5725         * docs/manual/components.xml:
5726         * docs/manual/cothreads.xml:
5727         * docs/manual/debugging.xml:
5728         * docs/manual/dparams-app.xml:
5729         * docs/manual/dynamic.xml:
5730         * docs/manual/elements-api.xml:
5731         * docs/manual/elements.xml:
5732         * docs/manual/factories.xml:
5733         * docs/manual/gnome.xml:
5734         * docs/manual/goals.xml:
5735         * docs/manual/helloworld.xml:
5736         * docs/manual/helloworld2.xml:
5737         * docs/manual/highlevel-components.xml:
5738         * docs/manual/highlevel-xml.xml:
5739         * docs/manual/init-api.xml:
5740         * docs/manual/intro-motivation.xml:
5741         * docs/manual/intro-preface.xml:
5742         * docs/manual/intro.xml:
5743         * docs/manual/links-api.xml:
5744         * docs/manual/links.xml:
5745         * docs/manual/manual.xml:
5746         * docs/manual/motivation.xml:
5747         * docs/manual/pads-api.xml:
5748         * docs/manual/pads.xml:
5749         * docs/manual/plugins-api.xml:
5750         * docs/manual/plugins.xml:
5751         * docs/manual/programs.xml:
5752         * docs/manual/queues.xml:
5753         * docs/manual/quotes.xml:
5754         * docs/manual/schedulers.xml:
5755         * docs/manual/states-api.xml:
5756         * docs/manual/states.xml:
5757         * docs/manual/threads.xml:
5758         * docs/manual/typedetection.xml:
5759         * docs/manual/win32.xml:
5760         * docs/manual/xml.xml:
5761           First try at rewriting the ADM. Needs lotsamore work, but some
5762           parts might already be somewhat useful.
5763         * docs/pwg/advanced-interfaces.xml:
5764           Remove properties interface, it never actually existed (except for
5765           on my HD...).
5766
5767 2004-12-13  David Schleef  <ds@schleef.org>
5768
5769         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
5770         be NULL (bug #160220).
5771
5772 2004-12-13  David Schleef  <ds@schleef.org>
5773
5774         * configure.ac: remove all mmx stuff, because it's not used.
5775         * docs/random/ds/0.9-suggested-changes: additional notes
5776         * include/Makefile.am: we don't use these anymore
5777         * include/mmx.h: remove
5778         * include/sse.h: remove
5779
5780 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5781
5782         * docs/random/mimetypes:
5783           Add FOURCC code for h264 codec (VSSH)
5784           Add alternate FOURCC codes for h263 related codecs
5785
5786 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
5787
5788         * docs/manual/programs.xml:
5789           Added more gst-launch examples.
5790
5791 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5792
5793         * gst/gstqueue.c: (gst_queue_handle_src_query):
5794           Check for availability again.
5795
5796 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5797
5798         * gst/gstcaps.c: (gst_caps_compare_structures):
5799           Simple caps go first. This has the nice side-effect of fixing an
5800           obscure warning.
5801
5802 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5803
5804         * gst/gstversion.h.in:
5805           Protect header.
5806
5807 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5808
5809         * gst/schedulers/gstoptimalscheduler.c:
5810         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
5811         (gst_opt_scheduler_get_wrapper):
5812           When we're recursing into a chain run, only run the directly
5813           related group, not all queued ones. This will fix a possible
5814           deadlock in chains with more than two groups.
5815
5816 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5817
5818         * autogen.sh:
5819           remove patch if autopoint fails
5820
5821 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5822
5823         * docs/gst/gstreamer-sections.txt:
5824           Document Thomas' addition, fix build, make Luis the sheriff happy.
5825
5826 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5827
5828         * gst/gstplugin.c:
5829         * gst/gstplugin.h:
5830           add accessor for version field
5831
5832 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5833
5834         submitted by: Luca Ferretti <elle.uca@infinito.it>
5835
5836         * po/LINGUAS:
5837         * po/it.po:
5838           New tranlation added: Italian
5839
5840 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5841
5842         * gst/gstpad.c: (gst_pad_is_negotiated),
5843         (gst_pad_get_negotiated_caps):
5844           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
5845           it doesn't actually check the contents), so be sure to hand it
5846           a RealPad else we'll crash.
5847
5848 2004-12-03  Wim Taymans  <wim@fluendo.com>
5849
5850         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5851         (gst_queue_link), (gst_queue_handle_src_query):
5852         Reverted to 1.110 until this makes the testsuite and various
5853         apps work.
5854
5855 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
5856
5857         * docs/upload.mak: fix included CVS conflict strings
5858
5859 2004-12-01  William Jon McCann  <mccann@jhu.edu>
5860
5861         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5862
5863         * gst/gstelement.c: (gst_element_error_full):
5864           Use g_error_new_literal because error text may have
5865           percentage signs in it. Fixes #160019.
5866
5867 2004-12-01  Benjamin Otte  <otte@gnome.org>
5868
5869         * gst/elements/gstbufferstore.c:
5870         (gst_buffer_store_add_buffer_func):
5871           don't try to make subbuffers bigger than they can be. (fixes
5872           #159970)
5873
5874 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5875
5876         * docs/gst/gstreamer-sections.txt:
5877         * docs/gst/tmpl/gstvalue.sgml:
5878           Add new function to docs to fix build.
5879
5880 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5881
5882         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
5883         * gst/gstpad.c: (_gst_pad_default_fixate_value),
5884         (_gst_pad_default_fixate_foreach):
5885         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
5886         * gst/gstvalue.h:
5887           Deprecate _type_is_fixed, use _value_is_fixed instead, since
5888           in some cases (arrays), the fixedness depends on the content.
5889         * gst/gstqueue.c: (gst_queue_handle_src_query):
5890           Check for availability before doing something.
5891
5892 2004-11-29  Wim Taymans  <wim@fluendo.com>
5893
5894         * testsuite/threads/Makefile.am:
5895         * testsuite/threads/signals.c: (gst_test_get_type),
5896         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
5897         (gst_test_set_property), (gst_test_get_property),
5898         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
5899         (gst_test_do_prop), (run_thread), (main):
5900         Added a bunch of testcases that show threadsafety bugs in glib.
5901
5902 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
5903
5904         * docs/manual/programs.xml:
5905           Added a first batch of gst-launch examples, as provided by Ronald
5906           and others from the devel-mlist
5907
5908 2004-11-28  Benjamin Otte  <otte@gnome.org>
5909
5910         * gst/gstelement.c: (gst_element_negotiate_pads):
5911           simplify
5912         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
5913         (gst_value_serialize_string), (gst_value_deserialize_string):
5914           add unwrapping of previously wrapped strings. Fix bug in wrapping
5915           while at it.
5916         * testsuite/caps/value_serialize.c: (test1),
5917         (test_string_serialization), (test_string_deserialization), (main):
5918           add tests for string (de)serialization
5919
5920 2004-11-26  Wim Taymans  <wim@fluendo.com>
5921
5922         * testsuite/threads/159566.c: (object_deep_notify), (main):
5923         * testsuite/threads/Makefile.am:
5924         Added testsuite to show bug #159566
5925
5926 2004-11-25  Wim Taymans  <wim@fluendo.com>
5927
5928         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
5929         (gst_thread_child_state_change), (gst_thread_main_loop):
5930         Ref the thread object in the GThread mainloop. Break out of the
5931         thread mainloop if it holds the last ref. This properly exits
5932         the threads when disposing the thread from its own context. It
5933         also avoids possible deadlocks in the dispose function.
5934
5935 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
5936
5937         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
5938         it is necessary to wait.
5939
5940 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5941
5942         * docs/pwg/building-boiler.xml:
5943           Make description somewhat clearer.
5944
5945 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5946
5947         * docs/upload.mak:
5948           Apparently docs changed location on FDO's server.
5949
5950 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5951
5952         * docs/pwg/appendix-checklist.xml:
5953           Add some random notes on things to check when writing an element.
5954           This list can be extended as people see fit.
5955
5956 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
5957
5958         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
5959         (gst_queue_link_src): Allow for renegotiating the caps of the sink
5960         pad. The queue will now wait until it is empty and forward the new
5961         caps to the source.
5962         * gst/gstbin.c (gst_bin_set_element_sched)
5963         (gst_bin_unset_element_sched): Make sure that all elements and
5964         links are registered and unregistered with the scheduler exactly
5965         once. This elaborates on a fix by Benjamin Otte, but
5966         guarantees that decoupled elements are also registered.
5967
5968 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5969
5970         * docs/manual/quotes.xml:
5971           add a quote
5972         * configure.ac:
5973         * gst/gst.c:
5974         * gst/gstinfo.c:
5975           add LIBDIR and move init message higher up so it's at the start
5976
5977 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5978
5979         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
5980         * gstreamer.spec.in: add fair
5981
5982 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5983
5984         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5985         * gst/elements/gstidentity.c: (gst_identity_class_init):
5986           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
5987           <teuf@gnome.org> (#157263).
5988         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
5989         (gst_type_find_handle_src_query):
5990           Subtract size of internally stored data from position queries.
5991
5992 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
5993
5994         * gst/schedulers/fairscheduler.c:
5995         * gst/schedulers/faircothreads.c:
5996         * gst/schedulers/faircothreads.h:
5997         New cothread based scheduler: Fair scheduler.
5998         * gst/schedulers/gthread-cothreads.h: 
5999         Add the standard #if around the whole file.
6000         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
6001         compilation of the functions defined in this file. This is
6002         necessary to be able to use this file as a normal header.
6003         * gst/schedulers/Makefile.am: Add compiling support for fair
6004         scheduler.
6005         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
6006         scheduler cothreads layer from documentation generation.
6007
6008 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6009
6010         * gst/autoplug/gstspideridentity.c:
6011         (gst_spider_identity_sink_loop_type_finding):
6012           Don't crash if that function is not implemented.
6013
6014 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6015
6016         * docs/pwg/advanced-types.xml:
6017           Another typo.
6018
6019 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6020
6021         * docs/pwg/intro-preface.xml:
6022           Hm, ok, so the brackets weren't really useful...
6023         * docs/pwg/other-ntoone.xml:
6024           Fix embarassing typo.
6025
6026 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6027
6028         * docs/pwg/intro-preface.xml:
6029           Rewrite preface.
6030
6031 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6032
6033         * docs/pwg/advanced-scheduling.xml:
6034         * docs/pwg/advanced-tagging.xml:
6035         * docs/pwg/advanced-types.xml:
6036         * docs/pwg/building-boiler.xml:
6037         * docs/pwg/building-chainfn.xml:
6038         * docs/pwg/building-signals.xml:
6039         * docs/pwg/building-state.xml:
6040         * docs/pwg/building-testapp.xml:
6041         * docs/pwg/intro-basics.xml:
6042         * docs/pwg/other-manager.xml:
6043         * docs/pwg/other-source.xml:
6044           Typo fixes.
6045         * docs/pwg/other-manager.xml:
6046           Add some first content. No example code yet.
6047         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
6048           Remove double newlines.
6049
6050 2004-11-04  Wim Taymans  <wim@fluendo.com>
6051
6052         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6053         (remove_from_group), (normalize_group), (group_migrate_connected),
6054         (gst_opt_scheduler_iterate):
6055         * testsuite/schedulers/.cvsignore:
6056         * testsuite/schedulers/Makefile.am:
6057         * testsuite/schedulers/queue_link.c: (main):
6058         Added testcase for scheduler segfault.
6059         Fix scheduler segfault when removing a decoupled
6060         entry point as the last element from a group.
6061
6062 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6063
6064         * gst/gstmarshal.list: add missing marshaller, fixes build
6065
6066 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6067
6068         * docs/random/signal: added notes about using BOXED for GstBuffer
6069         signal marshallers, not POINTER
6070
6071 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6072
6073         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6074         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
6075         POINTER=>BOXED changes to marshal GstBuffers
6076
6077 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6078
6079         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
6080         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
6081
6082 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
6083
6084         * docs/gst/gstreamer-sections.txt:
6085         * docs/gst/tmpl/gstcaps.sgml:
6086         * docs/gst/tmpl/gsterror.sgml:
6087         * docs/gst/tmpl/gstinfo.sgml:
6088         * docs/gst/tmpl/gstmacros.sgml:
6089         * docs/gst/tmpl/gstutils.sgml:
6090         * docs/random/ensonic/interfaces.txt:
6091         * gst/gstinfo.h:
6092           added some more docs, removed two obsolete defines
6093
6094 2004-11-02  Kjartan Maraas <as at gnome.org>
6095
6096         reviewed by: Wim Taymans, Ronald Bultje.
6097
6098         * gst/cothreads.c: (cothread_create):
6099         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
6100         (gst_bin_child_state_change_func):
6101         * gst/gstbuffer.c: (gst_buffer_span):
6102         * gst/gstelement.c: (gst_element_get_index),
6103         (gst_element_get_event_masks), (gst_element_get_query_types),
6104         (gst_element_get_formats):
6105         * gst/gsterror.c: (_gst_core_errors_init),
6106         (_gst_library_errors_init), (_gst_resource_errors_init),
6107         (_gst_stream_errors_init):
6108         * gst/gstobject.c: (gst_object_default_deep_notify):
6109         * gst/gstpad.c: (gst_pad_get_event_masks),
6110         (gst_pad_get_internal_links_default):
6111         * gst/gstplugin.c: (gst_plugin_register_func),
6112         (gst_plugin_get_module):
6113         * gst/gststructure.c: (gst_structure_get_string),
6114         (gst_structure_get_abbrs), (gst_structure_from_abbr),
6115         (gst_structure_to_abbr):
6116         * gst/gstutils.c: (gst_print_element_args):
6117         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6118         (setup_group_scheduler), (gst_opt_scheduler_iterate):
6119         Aplied part of patch #157127: Cleanup of issues reported by 
6120         sparse.
6121         Also do not try to use cothreads when there is no cothread
6122         context yet.
6123
6124 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
6125
6126         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6127         (gst_opt_scheduler_iterate):
6128         Applied patch #154061. Running a pipeline in which an element 
6129         calls GST_ELEMENT_ERROR in the chain function, the opt 
6130         scheduler doesn't unref the chain so it never gets freed.
6131
6132 2004-11-02  Wim Taymans  <wim@fluendo.com>
6133
6134         * gst/gststructure.c: (gst_structure_get_abbrs),
6135         (gst_structure_from_abbr), (gst_structure_to_abbr):
6136         Remove that ugly if-then thing in the code that converts
6137         between strings and types.
6138
6139 2004-11-02  Wim Taymans  <wim@fluendo.com>
6140
6141         * gst/gstscheduler.c: (gst_scheduler_add_element),
6142         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
6143         Aplied clock distribution patch, this should fix bug
6144         #148787.
6145
6146 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
6147
6148         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
6149
6150         * po/LINGUAS:
6151         * po/nb.po:
6152           Added Norwegian Bokmaal translation
6153
6154 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6155
6156         * tools/gst-inspect.c: (print_signal_info):
6157           print signal arguments as pointers if they are
6158
6159 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
6160
6161         * docs/pwg/building-boiler.xml:
6162           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
6163
6164 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6165
6166         * gst/parse/parse.l:
6167         * testsuite/parse/parse1.c: (main):
6168         Since parse can do 'element name=a:b' make 'a:b.' work as
6169         well. 
6170         Added testcase to verify fix.
6171
6172 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6173
6174         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
6175         Use the realpad when printing the direction.
6176         Add extra \n when printing extensions of typefind factories.
6177
6178 2004-10-13  David Schleef  <ds@schleef.org>
6179
6180         * examples/manual/Makefile.am: $< isn't portable in Makefile
6181         rules.
6182
6183 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
6184
6185         * docs/gst/tmpl/gstobject.sgml:
6186         * docs/gst/tmpl/gstplugin.sgml:
6187         * docs/gst/tmpl/gstpluginfeature.sgml:
6188         * docs/gst/tmpl/gstregistry.sgml:
6189         * docs/gst/tmpl/gstversion.sgml:
6190         * gst/gstbin.c:
6191           more api documentation
6192         * gst/gstplugin.c: (gst_plugin_register_func),
6193         (gst_plugin_check_file), (gst_plugin_load_file):
6194           better error signaling and logging
6195
6196 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6197
6198         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
6199           Subtract current queue contents from position queries.
6200
6201 2004-10-11  Johan Dahlin  <johan@gnome.org>
6202
6203         * gst/gsturi.c (gst_uri_get_location): unescape string
6204         (gst_uri_construct): escape string.
6205
6206 2004-10-11  Benjamin Otte  <otte@gnome.org>
6207
6208         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
6209         (gst_pad_try_set_caps_nonfixed):
6210           allow renegotiation of unconnected pads (as inside spider). Simply
6211           return OK if unconnected - mimic try_set_caps there.
6212
6213 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6214
6215         * gst/gstbin.c: (gst_bin_sync_children_state):
6216           Add missing break.
6217
6218 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6219
6220         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
6221         Set element to EOS before sending EOS event
6222
6223 2004-10-08  Wim Taymans  <wim at fluendo dot com>
6224
6225         * gst/elements/gsttypefindelement.c:
6226         (gst_type_find_element_handle_event):
6227         Handle EOS events when doing the transition from
6228         typefind to data passing. This should fix the
6229         infinite loops in short files.
6230
6231 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6232
6233         * gst/gstthread.c: (gst_thread_change_state),
6234         (gst_thread_child_state_change):
6235         Make sure no iteration happens while performing
6236         the state change as it could mess up the internal
6237         consistency of the thread state.
6238
6239 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6240
6241         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
6242         (gst_thread_change_state), (gst_thread_child_state_change):
6243         Do not try to grab the iterate lock in the state change method
6244         when we are in the same thread as the iterate or else we
6245         could deadlock. Some other cleanups.
6246
6247 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6248
6249         * configure.ac:
6250           bump nano to cvs
6251
6252 === release 0.8.7 ===
6253
6254 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6255
6256         * configure.ac:
6257         * NEWS:
6258         * RELEASE:
6259         * configure.ac:
6260           releasing 0.8.7, "A Cruise"
6261
6262 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6263
6264         * docs/random/mimetypes:
6265         Add an entry for Sony ATRAC3 audio format with mime-type
6266         used by rmdemux et riff-read
6267
6268 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6269
6270         * gst/elements/gsttypefindelement.c: (stop_typefinding):
6271         Push the buffer store instead of clearing it in case that
6272         the stream is not seekable.
6273
6274 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6275
6276         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
6277         (gst_thread_main_loop):
6278         Lock the iteration and the state change so that automatic
6279         negotiation and fixation does not happen at the same time
6280         as the in stream negotiation.
6281
6282 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6283
6284         * configure.ac:
6285           bump nano to cvs
6286
6287 === release 0.8.6 ===
6288
6289 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6290
6291         * configure.ac:
6292         * NEWS:
6293         * RELEASE:
6294         * configure.ac:
6295           releasing 0.8.6, "Narc"
6296
6297 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6298
6299         * configure.ac:
6300           prerel bump
6301
6302 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6303
6304         patch by: Steve Lhomme
6305
6306         * gst/elements/gstfakesrc.c:
6307         * gst/elements/gstidentity.c:
6308         * gst/gstthread.c:
6309           Fix for #153881
6310
6311 2004-10-01  Wim Taymans  <wim at fluendo dot com>
6312
6313         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
6314         Fix threadsafety of the crc checking function.
6315
6316 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6317
6318         patch by: Ronald Bultje
6319
6320         * gst/elements/gsttypefindelement.c: (stop_typefinding),
6321         (gst_type_find_element_handle_event),
6322         (gst_type_find_element_chain):
6323         * gst/elements/gsttypefindelement.h:
6324          #153657.
6325          Filter out discont event from seekable sources when typefind
6326          asks them to seek.  Fixes typefind with demuxers for
6327          avi, asf and matroska.
6328
6329 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6330
6331         * docs/gst/gstreamer-sections.txt:
6332         * gst/gstcaps.c:
6333         * gst/gstcaps.h:
6334         * gst/gstpad.c:
6335           Revert preferred caps: (#147789)
6336
6337 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
6338
6339         * win32/dirent.c:
6340           fix a memory leak
6341
6342 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6343
6344         * configure.ac:
6345           bump for prerelease
6346
6347 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6348
6349         * docs/Makefile.am:
6350         * docs/manual/elements-api.xml:
6351           restructure so that common stuff is shown first
6352         * docs/manual/init-api.xml:
6353           convert to examples
6354         * docs/manual/manual.xml:
6355         * docs/manuals.mak:
6356         * docs/url.entities:
6357           link to API on the website, possibly override later in build
6358         * examples/manual/.cvsignore:
6359           ignore more
6360         * examples/manual/Makefile.am:
6361           add more examples
6362         * examples/manual/extract.pl:
6363           error out on failure
6364
6365 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6366
6367         * docs/gst/tmpl/gstthread.sgml:
6368         * docs/manual/init-api.xml:
6369         * examples/manual/Makefile.am:
6370           convert two code bits to examples
6371
6372 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6373
6374         * gst/gstelement.c: (gst_element_change_state):
6375           Well, actually, I was about to remove this insane assert when
6376           I noticed Wim already did that. A warning is nice so we can
6377           fix actual ugs (using --g-fatal-warnings and backtraces), so
6378           I added that instead.
6379
6380 2004-09-06  Wim Taymans  <wim@fluendo.com>
6381
6382         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
6383         (gst_element_threadsafe_properties_post_run),
6384         (gst_element_set_state), (gst_element_change_state):
6385         Added extra refcounting around various places. 
6386
6387 2004-09-06  Wim Taymans  <wim@fluendo.com>
6388
6389         * gst/gstpad.c: (gst_pad_link_call_link_functions):
6390         Fix debug info.
6391
6392 2004-09-06  Wim Taymans  <wim@fluendo.com>
6393
6394         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6395         (remove_from_group):
6396         Some more debug info.
6397
6398 2004-09-03  Wim Taymans  <wim@fluendo.com>
6399
6400         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
6401         (gst_fakesrc_init), (gst_fakesrc_set_clock),
6402         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
6403         (gst_fakesrc_get), (gst_fakesrc_change_state):
6404         * gst/elements/gstfakesrc.h:
6405         * gst/elements/gstidentity.c: (gst_identity_class_init),
6406         (gst_identity_init), (gst_identity_chain),
6407         (gst_identity_set_property), (gst_identity_get_property),
6408         (gst_identity_change_state):
6409         * gst/elements/gstidentity.h:
6410         Added datarate properties to limit the datarate.
6411
6412 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6413
6414         * gst/autoplug/gstspider.c: (plugin_init):
6415           don't set a rank. We don't want to autoplug by inserting spiders.
6416
6417 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6418
6419         * gst/autoplug/gstspider.c: (gst_spider_class_init),
6420         (gst_spider_identity_plug):
6421           add a template for spider's sink
6422         * gst/gst.c: (gst_register_core_elements):
6423           queue's rank should be NULL, we don't want spider to add it.
6424
6425 2004-08-18  David Schleef  <ds@schleef.org>
6426
6427         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
6428         * docs/libs/Makefile.am: same
6429         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
6430         * docs/random/ds/0.9-planning: random additions
6431         * docs/random/ds/0.9-suggested-changes: same
6432         * gst/gstxml.h: remove vestigal GstXMLNs definition
6433
6434         Preferred caps: (#147789)
6435         * docs/gst/gstreamer-sections.txt: Add symbols
6436         * docs/gst/tmpl/gstcaps.sgml: Add symbols
6437         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
6438         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
6439         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
6440         (gst_caps_get_preferred), (gst_caps_set_preferred),
6441         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
6442         (gst_caps_use_preferred): Handle caps preferences
6443         * gst/gstcaps.h: Add caps preferences
6444         * gst/gstpad.c: (gst_pad_link_get_preferred),
6445         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
6446         (gst_pad_renegotiate), (gst_pad_guess_preferred),
6447         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
6448         negotiation.
6449
6450 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6451
6452         * gst/autoplug/gstspideridentity.c:
6453         (gst_spider_identity_request_new_pad):
6454         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
6455         (gst_aggregator_init):
6456         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
6457         (gst_fakesink_init):
6458         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
6459         (gst_fakesrc_init):
6460         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
6461         (gst_fdsink_init):
6462         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
6463         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
6464         (gst_filesink_init):
6465         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
6466         (gst_filesrc_init):
6467         * gst/elements/gstidentity.c: (gst_identity_base_init),
6468         (gst_identity_init):
6469         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
6470         (gst_multifilesrc_init):
6471         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
6472         (gst_pipefilter_init):
6473         * gst/elements/gststatistics.c: (gst_statistics_base_init),
6474         (gst_statistics_init):
6475         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
6476         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
6477           s/gst_pad_new/&_from_template/
6478           register pad templates in the base_init function
6479           add static pad template definitions
6480
6481 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6482
6483         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
6484         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
6485         * testsuite/refcounting/pad.c: (main):
6486         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
6487           s/gst_pad_new/&_from_template/
6488           prepare deprecation of gst_pad_new
6489
6490 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
6491
6492         patch by: Luca Ognibene <skaboy81@virgilio.it>
6493
6494         * gst/gstcaps.c:
6495         * gst/gstelement.c:
6496         * gst/gstpad.c:
6497         * gst/gstxml.c:
6498           fix memleaks.  Fixes #150001
6499
6500 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6501
6502         * docs/random/ds/0.9-suggested-changes:
6503           add notes - mostly about pad templates
6504
6505 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
6506
6507         * win32/GStreamer.vcproj:
6508           temporary locale files are .gmo not .mo
6509
6510 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6511
6512         * configure.ac: bump nano to cvs
6513
6514 === release 0.8.5 ===
6515
6516 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6517
6518         * configure.ac:
6519           releasing 0.8.5, "Stuttgart"
6520         * NEWS:
6521         * RELEASE:
6522         * configure.ac:
6523         * docs/random/release:
6524           updates for release
6525
6526 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6527
6528         patch by: Wim Taymans (wim@fluendo.com)
6529
6530         * gst/gstbuffer.c:
6531         * gst/gstindex.h:
6532         * libs/gst/dataprotocol/dataprotocol.c:
6533           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
6534
6535 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6536
6537         * Makefile.am:
6538         * win32/MANIFEST:
6539           add win32 dir to the build.  Fixes #149981.
6540
6541 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6542
6543         * configure.ac:
6544           bump libtool versioning
6545         * gst/gststructure.c:
6546           mark function as static
6547         * po/af.po:
6548         * po/az.po:
6549         * po/ca.po:
6550         * po/cs.po:
6551         * po/en_GB.po:
6552         * po/fr.po:
6553         * po/nl.po:
6554         * po/sq.po:
6555         * po/sr.po:
6556         * po/sv.po:
6557         * po/tr.po:
6558         * po/uk.po:
6559           translations update
6560         * win32/README.txt:
6561           trademark protection
6562
6563 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6564
6565         * configure.ac:
6566           fix GST_ORIGIN
6567           set GST_PACKAGE to source, and distinguish between release and other
6568         * tools/gst-inspect.c:
6569           print out plugin an element factory is part of so we see this info
6570
6571 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6572
6573         * docs/gst/gstreamer-sections.txt:
6574         * docs/gst/tmpl/gstbuffer.sgml:
6575         * docs/gst/tmpl/gstschedulerfactory.sgml:
6576           reorder docs a little, make GstBuffer's more sensible.
6577         * gst/gstbuffer.h:
6578           API: added GST_BUFFER_FLAG_DELTA_UNIT
6579         * gst/gstscheduler.c:
6580           comment API addition
6581
6582 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6583
6584         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6585           work with non-regular files that can be mmapped (like /dev/zero)
6586         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
6587           get rid of typefinds that require a seek when we can't seek instead
6588           of trying them over and over again
6589         * tools/gst-launch.c: (idle_func), (error_cb), (main):
6590           return non-zero failure value when the pipeline was interrupted or
6591           an error occurred
6592
6593 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6594
6595         * win32/config.h:
6596         * win32/GStreamer.vcproj:
6597           compile and install the locales
6598
6599 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6600
6601         * gst/gstvalue.c:
6602           fix a possible memory leak under Windows
6603
6604 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6605
6606         * win32/GStreamer.vcproj:
6607           fix a memory leak that occured under Windows
6608         * win32/gstreamer.def:
6609           add gst_scheduler_register
6610
6611 2004-08-11  Benjamin Otte  <otte@gnome.org>
6612
6613         * docs/gst/gstreamer-sections.txt:
6614         * gst/gstscheduler.c: (gst_scheduler_register):
6615         * gst/gstscheduler.h:
6616           API:
6617           add gst_scheduler_register shortcut similar to gst_element_register
6618         * gst/schedulers/entryscheduler.c: (plugin_init):
6619         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
6620         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
6621           use it
6622
6623 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
6624
6625         * gst/gstvalue.h:
6626           fix a memory leak that occured under Windows
6627
6628 2004-08-10  Colin Walters  <walters@redhat.com>
6629
6630         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
6631         Don't use O_EXCL to open temporary registry.  It will prevent
6632         registry creation if a temporary one already exists, which
6633         is unnecessary.
6634
6635 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6636
6637         * docs/gst/gstreamer-sections.txt:
6638         * docs/gst/tmpl/gstvalue.sgml:
6639           remove some valuable stuff from the documentation due to the use of GST_EXPORT
6640
6641 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6642
6643         * win32/gstbytestream.vcproj:
6644         * win32/gstelements.vcproj:
6645         * win32/gstgetbits.vcproj:
6646         * win32/gst-inspect.vcproj:
6647         * win32/gst-launch.vcproj:
6648         * win32/gstoptimalscheduler.vcproj:
6649         * win32/GStreamer.vcproj:
6650         * win32/gst-register.vcproj:
6651         * win32/gstspider.vcproj:
6652           update the include and lib dirs to fit standard libraries as
6653           described in the Win32 manual
6654
6655 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6656
6657         * win32/config.h:
6658         * win32/gstversion.h:
6659           enable NLS again, push the version number for the coming 0.8.5 release
6660
6661 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6662
6663         * gst/gstvalue.h:
6664           export gst_type_XXX for windows DLLs
6665
6666 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6667
6668         * docs/faq/gst-uninstalled:
6669           fix PKG_CONFIG_PATH and PYTHONPATH
6670         * gst/schedulers/Makefile.am:
6671           cleanup
6672         * libs/gst/bytestream/bytestream.c:
6673           remove newline
6674         * po/LINGUAS:
6675         * po/sq.po:
6676           adding Albanian translation (Laurent Dhima)
6677         * po/cs.po:
6678           updated
6679
6680 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6681
6682         * po/ca.po:
6683         * po/sv.po:
6684           updated translations
6685
6686 2004-08-04  Benjamin Otte  <otte@gnome.org>
6687
6688         * tests/mass_elements.c: (main):
6689           allow specifying src and sink element explicitly, so I can test
6690           videotestsrc instead of fakesrc
6691
6692 2004-08-04  Benjamin Otte  <otte@gnome.org>
6693
6694         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
6695         (gst_structure_id_empty_new), (gst_structure_empty_new),
6696         (gst_structure_copy):
6697           add gst_structure_id_empty_new_with_size to allow preallocating
6698           value array sizes. Use this in gst_structure_copy to get rid of
6699           reallocs.
6700           don't do quark=>string=>quark when copying structures
6701
6702 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
6703
6704         * docs/manual/win32.xml:
6705         * win32/README.txt:
6706           update documentation with the clean version of dependencies
6707
6708 2004-08-03  Benjamin Otte  <otte@gnome.org>
6709
6710         * gst/schedulers/entryscheduler.c:
6711         (gst_entry_scheduler_remove_element):
6712           fix for GST_DISABLE_DEBUG
6713         * tools/gst-launch.c: (print_tag):
6714           fixes for G_DISABLE_ASSERT
6715
6716 2004-08-03  Benjamin Otte  <otte@gnome.org>
6717
6718         * gst/gst.c: (gst_register_core_elements):
6719           fix for G_DISABLE_ASSERT
6720         * gst/gstinfo.c: (__gst_in_valgrind):
6721           add for GST_DISABLE_DEBUG
6722
6723 2004-08-03  Benjamin Otte  <otte@gnome.org>
6724
6725         * gst/parse/parse.l:
6726           fix for G_DISABLE_ASSERT
6727
6728 2004-08-03  Wim Taymans  <wim@fluendo.com>
6729
6730         * gst/gstbin.c: (gst_bin_get_type),
6731         (gst_bin_child_state_change_func):
6732         * gst/gstthread.c: (gst_thread_change_state):
6733         Backported some debug logging from a reverted patch
6734         Don't try to destroy the thread twice. Added some more
6735         debugging in GstThread. Unlock and signal even if we
6736         are in the thread context.
6737
6738 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6739
6740         * po/uk.po:
6741           updated translation
6742
6743 2004-07-30  David Schleef  <ds@schleef.org>
6744
6745         * gst/gstatomic_impl.h: Enable atomic code for x86_64
6746
6747 2004-07-29  David Schleef  <ds@schleef.org>
6748
6749         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
6750         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
6751
6752 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
6753
6754         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
6755         (gst_bin_add_func), (gst_bin_remove_func),
6756         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
6757         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
6758         (gst_bin_change_state_norecurse), (gst_bin_dispose),
6759         (gst_bin_sync_children_state):
6760         * gst/gstbin.h:
6761         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
6762         (gst_thread_change_state):
6763         * testsuite/states/Makefile.am:
6764           revert state change patches as agreed so we can rework them
6765           gradually
6766
6767 2004-07-29  Benjamin Otte  <otte@gnome.org>
6768
6769         * libs/gst/control/Makefile.am:
6770           link to libgstreamer (fixes Debian bug 262019, see
6771           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
6772
6773 2004-07-29  Wim Taymans  <wim@fluendo.com>
6774
6775         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6776         (check_from_fraction_convert), (transform_test), (main):
6777         Make the test less pedantic about float roundoff errors.
6778
6779 2004-07-29  Benjamin Otte  <otte@gnome.org>
6780
6781         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
6782         (gst_filesrc_srcpad_event):
6783           make seek events to before start/after end of file not fail, but
6784           seek to start/end instead
6785         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
6786           add more output
6787
6788 2004-07-29  Benjamin Otte  <otte@gnome.org>
6789
6790         * gst/gstpad.c: (gst_pad_set_explicit_caps):
6791           check that caps are fixed
6792         * gst/gstpad.c: (gst_pad_template_new):
6793           don't try to simplify caps, costs too much time on gst_init
6794         * gst/gstplugin.c: (gst_plugin_add_feature):
6795           G_ERROR if features are added twice
6796         * gst/gsttypefind.c: (gst_type_find_register):
6797         * gst/gstelementfactory.c: (gst_element_register):
6798           don't add features twice
6799         * docs/random/ds/0.9-suggested-changes:
6800           add note about possible gst_init optimization
6801
6802 2004-07-28  David Schleef  <ds@schleef.org>
6803
6804         * testsuite/elements/Makefile.am:
6805         * testsuite/elements/struct_i386.h:
6806         * testsuite/elements/struct_size.c: (main):  A little test
6807         to keep distcheck from working if someone changes a structure
6808         size accidentally.
6809
6810 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6811
6812         * docs/libs/Makefile.am:
6813         * docs/libs/gstreamer-libs-docs.sgml:
6814         * docs/libs/gstreamer-libs-sections.txt:
6815         * docs/libs/tmpl/gstbytestream.sgml:
6816         * docs/libs/tmpl/gstcontrol.sgml:
6817         * docs/libs/tmpl/gstdataprotocol.sgml:
6818         * docs/libs/tmpl/gstgetbits.sgml:
6819         * libs/gst/bytestream/Makefile.am:
6820         * libs/gst/bytestream/bytestream.c:
6821         * libs/gst/bytestream/bytestream.h:
6822         * libs/gst/control/Makefile.am:
6823         * libs/gst/dataprotocol/Makefile.am:
6824         * libs/gst/getbits/Makefile.am:
6825         * libs/gst/getbits/getbits.h:
6826           various doc and style fixes, adding bytestream to libs docs.
6827
6828 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6829
6830         * docs/gst/gstreamer-docs.sgml:
6831         * docs/libs/Makefile.am:
6832         * docs/libs/gstreamer-libs-docs.sgml:
6833         * docs/libs/gstreamer-libs-sections.txt:
6834         * libs/gst/control/dparam.c:
6835           more doc fixes.  gst-libs docs now build the same way as gst.
6836
6837 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6838
6839         * configure.ac:
6840         * testsuite/Makefile.am:
6841         * testsuite/bins/Makefile.am:
6842         * testsuite/caps/Makefile.am:
6843         * testsuite/cleanup/Makefile.am:
6844         * testsuite/clock/Makefile.am:
6845         * testsuite/debug/Makefile.am:
6846         * testsuite/dlopen/Makefile.am:
6847         * testsuite/dynparams/Makefile.am:
6848         * testsuite/elements/.cvsignore:
6849         * testsuite/elements/Makefile.am:
6850         * testsuite/enumcaps/Makefile.am:
6851         * testsuite/enumcaps/enumcaps.c:
6852         * testsuite/ghostpads/Makefile.am:
6853         * testsuite/indexers/Makefile.am:
6854         * testsuite/negotiation/Makefile.am:
6855         * testsuite/parse/Makefile.am:
6856         * testsuite/plugin/Makefile.am:
6857         * testsuite/refcounting/Makefile.am:
6858         * testsuite/schedulers/.cvsignore:
6859         * testsuite/states/Makefile.am:
6860         * testsuite/tags/Makefile.am:
6861         * testsuite/threads/Makefile.am:
6862           fold enumcaps into caps dir
6863           clean up Makefile.am's for testsuite
6864
6865 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6866
6867         * docs/gst/Makefile.am:
6868         * docs/libs/Makefile.am:
6869           clean up docs build.  Fixes needless rebuilding of template files.
6870
6871 2004-07-28  Wim Taymans  <wim@fluendo.com>
6872
6873         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
6874         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
6875         Make sure that a bin state change tries to keep the children
6876         in sync. 
6877         Added debug logging to the thread.
6878
6879 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
6880
6881         * win32/GStreamer.vcproj:
6882         * win32/gstreamer.def:
6883           more exports for the plugins
6884
6885 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
6886
6887         * win32/gstgetbits.vcproj:
6888         * win32/gstgetbits.def:
6889         * win32/msvc71.sln:
6890           add support for the getbits plugin
6891
6892 2004-07-27  Wim Taymans  <wim@fluendo.com>
6893
6894         * gst/gstvalue.c: (gst_value_transform_double_fraction),
6895         (gst_value_transform_fraction_double), (_gst_value_initialize):
6896         * testsuite/caps/Makefile.am:
6897         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6898         (check_from_fraction_convert), (transform_test), (main):
6899         Added transform functions between double and fraction.
6900         Added testcase to verify transforms
6901
6902 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6903
6904         * win32/GStreamer.vcproj:
6905           rename GStreamer-0.8.lib to libgstreamer.lib
6906
6907 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6908
6909         * win32/gstelements.vcproj:
6910         * win32/gstoptimalscheduler.vcproj:
6911           fixes for the Release build
6912
6913 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6914
6915         * win32/config.h:
6916           update the version number
6917
6918 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6919
6920         * win32/GStreamer.vcproj:
6921           add gstinterface to the build
6922
6923 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6924
6925         * win32/gstreamer.def:
6926           add many definitions needed by plugins,
6927           GST_CAT_DEFAULT only available in the Debug build ?
6928
6929 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6930
6931         * gst/gstelement.c: (gst_element_set_eos_recursive):
6932           various whitespace fixes.
6933           doc fix, fixes #148497
6934
6935 2004-07-25  Benjamin Otte  <otte@gnome.org>
6936
6937         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
6938           don't delay links on the sink elements, it causes unnegotiated
6939           links.
6940         * gst/elements/gsttypefindelement.c:
6941         (gst_type_find_element_base_init):
6942           add our padtemplates, we indeed do have some.
6943         * gst/elements/gsttypefindelement.c:
6944         (gst_type_find_element_handle_event),
6945         (gst_type_find_element_chain):
6946           don't push data when typefinding failed.
6947         * gst/gstpad.c: (gst_pad_link_fixate):
6948           check that no fixate function returns empty caps.
6949         * gst/gstpad.c: (gst_pad_push):
6950           check that the link is negotiated before data gets pushed.
6951         * tools/gst-register.c: (main):
6952           don't assert (fixes #148283)
6953
6954 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6955
6956         * docs/gst/gstreamer-sections.txt:
6957         * docs/gst/tmpl/gstconfig.sgml:
6958           add GST_PLUGIN_EXPORT definition
6959
6960 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6961
6962         * gst/gstplugin.h:
6963         * gst/gstconfig.h.in:
6964         * win32/gstconfig.h:
6965         * win32/gstelements.def:
6966         * win32/gstelements.vcproj:
6967         * win32/gstoptimalscheduler.def:
6968         * win32/gstoptimalscheduler.vcproj:
6969         * win32/gstspider.def:
6970         * win32/gstspider.vcproj:
6971           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
6972
6973 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
6974
6975         * docs/gst/gstreamer-sections.txt:
6976           remove GST_CAT_DEFAULT because the type has changed
6977
6978 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6979
6980         * win32/gstbytestream.vcproj:
6981         * win32/gstelements.vcproj:
6982         * win32/gst-inspect.vcproj:
6983         * win32/gst-launch.vcproj:
6984         * win32/gstoptimalscheduler.vcproj:
6985         * win32/GStreamer.vcproj:
6986         * win32/gst-register.vcproj:
6987         * win32/gstspider.vcproj:
6988         * win32/msvc71.sln:
6989           Copy the files where needed after building, The testsuite will be
6990           built separately
6991
6992 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6993
6994         * win32/config.h:
6995         * win32/README.txt:
6996         * docs/manual/win32.xml:
6997         Fixed the plugin and GStreamer location
6998
6999 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7000
7001         * win32/gstreamer.def:
7002         More exports for the plugins
7003
7004 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7005
7006         * gst/gstinfo.h:
7007         Marc was right, we need to export literally GST_CAT_DEFAULT
7008
7009 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7010
7011         * win32/config.h:
7012         NLS crashes in gettext, disabled until this is solved
7013
7014 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7015
7016         * win32/gst-inspect.vcproj:
7017         * win32/gst-launch.vcproj:
7018         Should use NLS when available
7019
7020 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7021
7022         * gst/registries/gstxmlregistry.c:
7023         removing the file doesn't seem to be a good idea on Linux
7024
7025 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7026
7027         * gst/registries/gstxmlregistry.c:
7028         Remove the registry before renaming the tempfile (needed for Windows)
7029
7030 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7031
7032         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
7033         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
7034         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
7035         * gst/elements/gstmultifilesrc.h:
7036         Added newmedia property so it generates newmedia events between each
7037         file when property is set, as well as fixed eos handling
7038
7039 2004-07-22  David Schleef  <ds@schleef.org>
7040
7041         * gst/gststructure.c: (gst_structure_id_empty_new),
7042         (gst_structure_empty_new):  Set type field correctly.
7043         * gst/gststructure.h: Check type field correctly.
7044         * testsuite/caps/Makefile.am:
7045         * testsuite/caps/structure.c: (test1), (main): Add a very small
7046         test for structures.
7047
7048 2004-07-22  David Schleef  <ds@schleef.org>
7049
7050         * docs/random/ds/0.9-suggested-changes: more comments
7051         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
7052
7053 2004-07-22  Benjamin Otte  <otte@gnome.org>
7054
7055         * gst/gstelementfactory.c: (gst_element_register):
7056           set the factory in the class struct, so gst_element_get_factory
7057           actually works
7058         * gst/parse/grammar.y:
7059           set element to playing when it gets unlocked as we can't rely on the
7060           bin state - all elements in the bin state might still be locked in
7061           NULL)
7062
7063 2004-07-22  Benjamin Otte  <otte@gnome.org>
7064
7065         * gst/gstelement.c: (gst_element_set_state_func):
7066           make this a static function
7067
7068 2004-07-22  Wim Taymans  <wim@fluendo.com>
7069
7070         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
7071         (gst_opt_scheduler_pad_link):
7072         fix 147894-2 and the group_link problem.
7073
7074 2004-07-22  Wim Taymans  <wim@fluendo.com>
7075
7076         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7077         (handoff_identity), (main):
7078         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7079         (handoff_identity), (main):
7080         * testsuite/schedulers/Makefile.am:
7081         * testsuite/schedulers/group_link.c: (main):
7082         Show bug in scheduler when linking chain and loop based element 
7083         where the chain based element was not yet in a group.
7084
7085 2004-07-21  Benjamin Otte  <otte@gnome.org>
7086
7087         * gst/.cvsignore:
7088         * gst/autoplug/.cvsignore:
7089         * gst/elements/.cvsignore:
7090         * gst/indexers/.cvsignore:
7091         * libs/gst/bytestream/.cvsignore:
7092         * libs/gst/control/.cvsignore:
7093         * libs/gst/getbits/.cvsignore:
7094         * testsuite/states/.cvsignore:
7095         * testsuite/threads/.cvsignore:
7096           keep this up to date, since I seem to be the only one who cares
7097           about not missing files on commits (editor's note: no you don't,
7098           but feel free to change them at the time you add stuff instead
7099           of later on)
7100
7101 2004-07-21  Benjamin Otte  <otte@gnome.org>
7102
7103         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7104         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
7105         (gst_bin_child_state_change_func), (set_kid_state_func),
7106         (gst_bin_set_state), (gst_bin_change_state_norecurse):
7107           make state changes work correctly and reentrant (so removing
7108           elements from bins during state changes of bins doesn't cause
7109           segfaults or even wrong states)
7110           add debugging category and debugging output to print children states
7111         * gst/gstbin.c: (gst_bin_dispose): 
7112           add some assertion checks
7113         * gst/gstbin.h:
7114         * gst/gstbin.c: (gst_bin_sync_children_state):
7115           deprecate this function - it just does gst_bin_set_state (bin,
7116           GST_STATE (bin)) 
7117         * testsuite/threads/queue.c: (main):
7118           don't use gst_bin_sync_children_state anymore
7119         * testsuite/states/Makefile.am:
7120         * testsuite/states/bin.c:
7121           test that the state changes of bins work as expected
7122         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
7123           some adjustments to change states correctly, too
7124         * gst/gstthread.c: (gst_thread_change_state):
7125           don't enable/disable "threadsafe" properties, they're unused and
7126           cause random segfaults
7127         * testsuite/threads/Makefile.am:
7128           the queue check randomly passes now, ignore it
7129
7130 2004-07-21  Benjamin Otte  <otte@gnome.org>
7131
7132         * gst/gstpad.c:
7133           check if data is NULL before outputting debug info. (fixes #145100)
7134
7135 2004-07-21  Benjamin Otte  <otte@gnome.org>
7136
7137         * gst/schedulers/entryscheduler.c:
7138         (gst_entry_scheduler_loop_wrapper),
7139         (gst_entry_scheduler_chain_wrapper),
7140         (gst_entry_scheduler_get_wrapper):
7141           reset the state when the cothread starts, so we don't get assertion
7142           failures on restarting of cothreads
7143
7144 2004-07-20  Benjamin Otte  <otte@gnome.org>
7145
7146         * gst/gstelement.c: (gst_element_link_pads_filtered):
7147           use correct sinkpad, if only sinkpad is specified, but not srcpad
7148           (fixes #147889)
7149         * gst/gstelement.c: (gst_element_set_state_func),
7150         (gst_element_change_state): ref/unref the element, signal handlers
7151         could get rid of the element otherwise
7152
7153 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7154
7155         * docs/random/ds/0.9-suggested-changes:
7156           Make note about renaming fixed-list to array.
7157         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
7158         (_gst_value_initialize):
7159           Add array intersections.
7160         * testsuite/caps/intersect2.c: (main):
7161           Add test for array intersections.
7162
7163 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7164
7165         * configure.ac: back to cvs
7166
7167 === release 0.8.4 ===
7168
7169 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7170
7171         * configure.ac:
7172           releasing 0.8.4, "Paella"
7173           bump libtool versioning
7174
7175 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7176
7177         * po/LINGUAS:
7178         * po/ca.po:
7179           adding Catalan translation (Jordi Mallach)
7180
7181 2004-07-20  Wim Taymans  <wim@fluendo.com>
7182
7183         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7184         (handoff_identity), (main):
7185         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7186         (handoff_identity), (main):
7187         * testsuite/schedulers/Makefile.am:
7188         Added failing testcase for variant of #147894
7189
7190 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7191
7192         patch by: David Moore
7193
7194         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7195         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
7196         (group_migrate_connected):
7197         * testsuite/schedulers/Makefile.am:
7198           fix for #142813 (Deadlock in optimal scheduler)
7199
7200 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7201
7202         patch by: Wim Taymans
7203
7204         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7205         (gst_opt_scheduler_schedule_run_queue),
7206         (gst_opt_scheduler_get_wrapper), (get_group),
7207         (group_migrate_connected):
7208         * testsuite/schedulers/Makefile.am:
7209           fix for #147819 (Add some checks in the opt scheduler)
7210
7211 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7212
7213         patch by: Benjamin Otte
7214
7215         * gst/gstelementfactory.c: (__gst_element_details_set):
7216           fix for #147929: running gst-register in non-utf8 locale can cause
7217           invalid registry
7218
7219 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7220
7221         patch by: Wim Taymans
7222
7223         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
7224         (group_has_element), (element_get_reachables_func),
7225         (group_migrate_connected):
7226           fix for #147894 (opt scheduler decoupled elements mismanagement)
7227         * testsuite/schedulers/Makefile.am:
7228           testsuite app now passes
7229
7230 2004-07-19  Wim Taymans  <wim@fluendo.com>
7231
7232         * testsuite/schedulers/147819.c: (handoff_identity1),
7233         (handoff_identity2), (main):
7234         * testsuite/schedulers/Makefile.am:
7235         Added testcase for bug 147819
7236
7237 2004-07-19  Wim Taymans  <wim@fluendo.com>
7238
7239         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7240         (handoff_identity), (main):
7241         * testsuite/schedulers/Makefile.am:
7242         Added testcase for bug 147894
7243
7244 2004-07-16  Wim Taymans  <wim@fluendo.com>
7245
7246         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
7247         * testsuite/schedulers/142183.c: (handoff_identity), (main):
7248         * testsuite/schedulers/Makefile.am:
7249         Added testsuite for bug 142183 in its two incarnations. Refcount
7250         is not increased for scheduled elements and threadsafe properties
7251         mutexes are not properly unlocked.
7252
7253 2004-07-16  Wim Taymans  <wim@fluendo.com>
7254
7255         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
7256         (create_chain), (destroy_chain), (create_group), (destroy_group),
7257         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
7258         (group_dec_link), (gst_opt_scheduler_pad_link),
7259         (group_inc_links_for_element), (group_migrate_connected):
7260         Call group_inc_link with the proper src->sink ordering -- 
7261         break this, and we break sort_chain. patch from wingo for bug
7262         147713.
7263         Partially revert patch 1.89. When adding a loop based element to 
7264         the scheduler, the links to other groups are automatically followed
7265         and incremented. This should not happen because the bin will call
7266         pad_link explicitly for those connection, resulting in them counted 
7267         twice. Results in assertion failure on pipeline cleanup.
7268
7269 2004-07-16  Wim Taymans  <wim@fluendo.com>
7270
7271         * testsuite/schedulers/143777-2.c: (main):
7272         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
7273         (main):
7274         * testsuite/schedulers/Makefile.am:
7275         Added cleanup code to testcase 143777-2.
7276         Added testcase to show bug 147713, does not really show the
7277         deadlock as I can't figure out how to trigger it, but it does
7278         demonstrate bad ordering in the scheduler.
7279
7280 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7281
7282         * gst/gstvalue.c: (gst_value_deserialize_fraction):
7283           change strndup to g_strndup.  Fixes #147707
7284
7285 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7286
7287         * po/af.po:
7288         * po/az.po:
7289         * po/cs.po:
7290         * po/en_GB.po:
7291         * po/fr.po:
7292         * po/nl.po:
7293         * po/sr.po:
7294         * po/sv.po:
7295         * po/tr.po:
7296         * po/uk.po:
7297           updated translations
7298
7299 2004-07-16  Benjamin Otte  <otte@gnome.org>
7300
7301         * gst/gstvalue.c: (gst_greatest_common_divisor):
7302           use ints and return ints, fractions only use ints, too, so this
7303           avoids accidently casting multiplications to unsigned
7304         (gst_value_lcopy_fraction): it's ints, not uint32
7305         (gst_value_set_fraction): disallow minint, multiplying and negation
7306           are broken with it
7307         (gst_value_fraction_multiply): fix to make large numbers work and get
7308         rid of the assumption that the multiplication of two ints fits an
7309         int64 - dunno if that's true for all systems
7310         * testsuite/caps/Makefile.am:
7311         * testsuite/caps/fraction-multiply-and-zero.c:
7312         (check_multiplication), (check_equal), (zero_test), (main):
7313           add tests for all the stuff above
7314         * testsuite/caps/value_compare.c: (test1):
7315           fix comment
7316         * tests/.cvsignore:
7317         * testsuite/caps/.cvsignore:
7318         * testsuite/debug/.cvsignore:
7319         * testsuite/dlopen/.cvsignore:
7320         * testsuite/states/.cvsignore:
7321           get up to date
7322
7323 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7324
7325         * docs/manual/bins-api.xml:
7326         * docs/manual/factories.xml:
7327         * docs/manual/helloworld.xml:
7328         * docs/manual/links-api.xml: 
7329           fixes for out of date info, incorrect info and grammar
7330
7331 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7332
7333         * docs/manual/pads.xml:
7334         * docs/manual/pads-api.xml: grammar fix
7335
7336 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7337
7338         * docs/manual/pads-api.xml: typo + grammar fix
7339
7340 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7341
7342         * docs/gst/gstreamer-sections.txt:
7343           add new symbols
7344         * docs/gst/tmpl/gstelement.sgml:
7345         * docs/gst/tmpl/gstpad.sgml:
7346         * docs/gst/tmpl/gsttypes.sgml:
7347         * docs/gst/tmpl/gstvalue.sgml:
7348           update docs
7349         * gst/gststructure.c: (gst_structure_set_valist),
7350         (gst_structure_from_abbr), (gst_structure_to_abbr):
7351         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
7352         (gst_greatest_common_divisor), (gst_value_init_fraction),
7353         (gst_value_copy_fraction), (gst_value_collect_fraction),
7354         (gst_value_lcopy_fraction), (gst_value_set_fraction),
7355         (gst_value_get_fraction_numerator),
7356         (gst_value_get_fraction_denominator),
7357         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
7358         (gst_value_deserialize_fraction),
7359         (gst_value_transform_fraction_string),
7360         (gst_value_transform_string_fraction),
7361         (gst_value_compare_fraction), (_gst_value_initialize):
7362         * gst/gstvalue.h:
7363           adding GstFraction GValue type, get/set, and multiply
7364         * testsuite/caps/Makefile.am:
7365         * testsuite/caps/fraction.c: (test), (main):
7366         * testsuite/caps/string-conversions.c: (main):
7367         * testsuite/caps/value_compare.c: (test1), (main):
7368           add regression tests for GstFraction
7369
7370 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7371         
7372         * docs/manual/init-api.xml: Grammar fix
7373
7374 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7375
7376         * docs/manual/states.xml: Fix inconsistent information
7377
7378 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7379
7380         * gst/gstelement.c: (gst_element_set_state):
7381         * gst/gstpad.c: (gst_pad_try_set_caps):
7382         * gst/gststructure.c:
7383         * gst/gstthread.c: (gst_thread_child_state_change):
7384         * gst/gstvalue.c: (gst_value_compare_double):
7385         * gst/gstvalue.h:
7386         * testsuite/parse/parse1.c: (main):
7387           debugging additions and style cleanups
7388
7389 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7390
7391         * docs/manual/states.xml: Grammar fix
7392
7393 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7394
7395         * docs/manual/pads.xml: Grammar fix
7396
7397 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7398
7399         * docs/manual/elements.xml: Fixed image reference
7400
7401 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7402
7403         * docs/manual/goals.xml: Grammar fix
7404
7405 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7406
7407         * docs/manual/motivation.xml:
7408         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
7409
7410 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7411
7412         * docs/manual/motivation.xml: Fix spelling
7413
7414 2004-07-15  Benjamin Otte  <otte@gnome.org>
7415
7416         * gst/gstelement.h: 
7417           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
7418           strings.
7419         * gst/gstelement.c (gst_element_class_init):
7420           GError's are boxed, not objects
7421         * gst/gstmarshal.list:
7422           update list for the fixed error signal
7423
7424 2004-07-14  Andy Wingo  <wingo@pobox.com>
7425
7426         * gst/gsttag.c: Add a tag merge func for pointers. The header was
7427         there all along, but the function wasn't. (guile-gstreamer's build
7428         system uses the address of the function -- I wasn't actually
7429         trying to use this.)
7430
7431 2004-07-14  Andy Wingo  <wingo@pobox.com>
7432
7433         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
7434         as gst_pad_proxy_pad_link) just link to every other pad when they
7435         are called. In the case where the graph has cycles, this will mean
7436         that a call to try_set_caps will recurse. Allow this recursion
7437         and return OK, while we wait for the first try_set_caps to give a
7438         proper return value.
7439         (gst_pad_link_call_link_functions): Since this function is the
7440         only one to set the NEGOTIATING flag on a pad, if the flag is set
7441         it means that the link functions have indirectly recursed. If this
7442         happens, error out to avoid infinite recursion and an eventual
7443         SEGV.
7444         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
7445         (gst_pad_proxy_getcaps): Intersect the result with the template
7446         caps to ensure that the return value is valid.
7447
7448 2004-07-14  Andy Wingo  <wingo@pobox.com>
7449
7450         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
7451         one refcount, the calling function is the owner of the buffer.
7452
7453 2004-07-14  Wim Taymans  <wim@fluendo.com>
7454
7455         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7456         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7457         Fix stupid warning when an element is to be migrated but
7458         is already migrated.
7459
7460 2004-07-14  Wim Taymans  <wim@fluendo.com>
7461
7462         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7463         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7464         Make sure that a single non-loop-based element does not 
7465         end up in a group. This fixes the testsuite again.
7466
7467 2004-07-14  Wim Taymans  <wim@fluendo.com>
7468
7469         * gst/schedulers/gstoptimalscheduler.c: (create_group),
7470         (add_to_group), (merge_groups), (schedule_group),
7471         (gst_opt_scheduler_get_wrapper), (group_elements),
7472         (group_dec_link), (gst_opt_scheduler_pad_link),
7473         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
7474         (gst_opt_scheduler_iterate):
7475         move isolated groups to a new chain.
7476         Emit a warning instead of segfaulting in some error cases.
7477         Fix a bug where the link count between groups was not calculated 
7478         correctly. Fixes #144510.
7479
7480 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
7481         * gst/elements/gstfilesrc.c:
7482           Binary files support under Windows now OK
7483       
7484 2004-07-13  Benjamin Otte  <otte@gnome.org>
7485
7486           compatibility fixes for Solaris 8/gcc 2.95
7487         * configure.ac:
7488           include libintl libs in LDFLAGS
7489         * gstvalue.c (gst_value_deserialize_buffer):
7490           cast isxdigit stuff to int to silence compiler warning
7491
7492 2004-07-12  Benjamin Otte  <otte@gnome.org>
7493
7494         * gst/gsttypes.h:
7495           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
7496           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
7497           just causes support madness
7498         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7499           make it work without this
7500         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
7501         (gst_file_index_commit):
7502           glib IO channels don't want binary mode
7503         * testsuite/bytestream/filepadsink.c: (main):
7504         * testsuite/bytestream/test1.c: (read_param_file):
7505           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
7506
7507 2004-07-12  Benjamin Otte  <otte@gnome.org>
7508
7509         * gst/gstelement.c: (gst_element_class_init),
7510         (gst_element_set_state), (gst_element_set_state_func):
7511           virutalize gst_element_set_state, use set_state member in class
7512           struct that was already added in 0.7 for this.
7513         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
7514         (gst_bin_change_state):
7515           make gst_bin_foreach works similar to other foreach functions, plug
7516           memleaks in it. Make functions using it work with the new approach.
7517           Document gst_bin_foreach, so it can be exported if we want to
7518         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
7519           use virtualized set_state to make set_state on bins set the state of
7520           all its children.
7521
7522 2004-07-12  Benjamin Otte  <otte@gnome.org>
7523
7524         * configure.ac:
7525           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
7526           http://bugs.gentoo.org/show_bug.cgi?id=53967)
7527         * gst/gstpad.c: (gst_pad_alloc_buffer):
7528           allow buffer_alloc functions to return NULL and allocate a normal
7529           buffer in that case
7530
7531 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7532         * gst/elements/gstfilesink.c:
7533         * gst/elements/gstfilesrc.c:
7534         * gst/indexers/gstfileindex.c:
7535         * gst/gsttypes.h:
7536         * testsuite/bytestream/filepadsink.c:
7537         * testsuite/bytestream/test1.c:
7538           Handle binary files under Windows
7539
7540 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7541         * docs/manual/win32.xml:
7542         * win32/config.h:
7543         * win32/gst-register.vcproj:
7544         * win32/gstreamer.def:
7545           Update to another gettext public build
7546
7547 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7548         * gst/gstplugin.c:
7549           Fix an impossible C syntax
7550         * win32/config.h:
7551           Disable i18n under Windows for the moment
7552         * win32/gst-register.vcproj:
7553           Use this configuration
7554
7555 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
7556         * docs/manual/quotes.xml:
7557           Keep the quotes file alive
7558         * docs/random/ds/0.9-suggested-changes:
7559           Add the suggestion of including a 'rowstride' as part of video
7560           format caps
7561
7562 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7563
7564         * gst/gstelement.c: (gst_element_set_state),
7565         (gst_element_change_state):
7566           d'oh.  Set PENDING state correctly before forcing bin to change.
7567         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7568         (gst_structure_parse_fixed_list):
7569         * gst/schedulers/gstoptimalscheduler.c:
7570         (gst_opt_scheduler_state_transition):
7571         * testsuite/states/parent.c: (main):
7572           remove comment now that it's fixed.
7573
7574 2004-07-11  Benjamin Otte  <otte@gnome.org>
7575
7576         * gst/gstclock.h:
7577           GST_SECOND shouldn't cause a conversion to unsigned.
7578         * testsuite/clock/.cvsignore:
7579         * testsuite/clock/Makefile.am:
7580         * testsuite/clock/signedness.c: (main):
7581           make sure it never will again
7582
7583 2004-07-11  Andy Wingo  <wingo@pobox.com>
7584
7585         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
7586         whose state is higher than the bin state, raise the bin state to
7587         ensure that bin state := highest child state.
7588         
7589 2004-07-11  Andy Wingo  <wingo@pobox.com>
7590
7591         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
7592         procedure on the children of a bin. Assumes that the procedure can
7593         change the set of children.
7594         (set_kid_state_func): New static function.
7595         (gst_bin_change_state): Use gst_bin_foreach to call
7596         set_kid_state_func. Fixes a bug: if a child had a state-change
7597         handler that removes it from the bin, there would be a segfault.
7598         Hopefully it should also work in the case where the state-change
7599         handler on one child adds or removes other children. In any case,
7600         fixes should go to gst_bin_foreach.
7601
7602 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
7603
7604         * gst/gstelement.c: (gst_element_set_state):
7605           compatibility fix for latest plugins release.  Change loop back
7606           to while {}
7607
7608 2004-07-09  Wim Taymans  <wim@fluendo.com>
7609
7610         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
7611         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
7612         (gst_thread_main_loop):
7613         Since remove is virtual in GstBin we must not assume the 
7614         elements GList to have anothing useful.
7615         Add some more logging to GstThread and be a bit more paranoid
7616         when resetting the scheduler.
7617         Set the state of the bin to NULL before removing the children.
7618
7619 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7620
7621         * testsuite/threads/Makefile.am:
7622         * testsuite/threads/threadg.c:
7623           added test to check if problem when removing all elements from a
7624           GstThread before setting GstThread state to NULL
7625
7626 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7627
7628         * docs/gst/tmpl/gstelement.sgml:
7629         * docs/gst/tmpl/gsttypes.sgml:
7630         * gst/gstbin.c: (gst_bin_change_state):
7631         * gst/gstelement.c: (gst_element_set_state),
7632         (gst_element_change_state):
7633           rework so that for bins we try to set the state on all children
7634           as well even if the bin is in the correct state already.
7635           change while to do so at least one iteration is done.
7636           For regular elements, we fall back to the previous behaviour for
7637           now since we first need a new plugins release.
7638         * testsuite/states/parent.c: (main):
7639           test for this case
7640           Fixes #123774
7641
7642 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7643
7644         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
7645         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
7646         (gst_queue_release_locks), (gst_queue_change_state),
7647         (gst_queue_set_property):
7648           add proper lock debugging.  Change dispose to finalize, since
7649           we're freeing mutexes and other stuff which should happen only once.
7650
7651 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7652
7653         * docs/gst/tmpl/gstelement.sgml:
7654         * docs/gst/tmpl/gstplugin.sgml:
7655         * docs/gst/tmpl/gsttypes.sgml:
7656         * docs/pwg/building-state.xml:
7657         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
7658         * gst/gstelement.c: (gst_element_change_state):
7659         * gst/gstthread.c: (gst_thread_change_state):
7660           catch wrong state changes in element base class.
7661
7662 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7663
7664         * gst/gstinfo.h:
7665           clean up layout a little.
7666
7667 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7668
7669         * configure.ac:
7670         * testsuite/Makefile.am:
7671         * testsuite/states/Makefile.am:
7672         * testsuite/states/parent.c: (main):
7673           re-enable states testsuite dir.  Add test for state changes and
7674           parent behaviour
7675
7676 2004-07-09  Wim Taymans  <wim@fluendo.com>
7677
7678         * gst/schedulers/gstoptimalscheduler.c:
7679         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
7680         (element_get_reachables_func), (element_get_reachables),
7681         (debug_element), (rechain_group), (group_migrate_connected),
7682         (gst_opt_scheduler_pad_unlink):
7683         Do not try to migrate decoupled elements to a new group since
7684         they are not added to groups.
7685
7686 2004-07-08  Benjamin Otte  <otte@gnome.org>
7687
7688         * gst/gstelement.c: (gst_element_error_func):
7689           make reentrant (= allow removing elements in error handler)
7690
7691 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7692
7693         * gst/gstpad.c: (gst_pad_event_default_dispatch),
7694         (gst_pad_send_event), (gst_pad_call_chain_function):
7695           events sent to elements below PAUSED cannot be handled, so
7696           don't try to
7697
7698 2004-07-08  Wim Taymans  <wim@fluendo.com>
7699
7700         * gst/schedulers/gstoptimalscheduler.c:
7701         (chain_recursively_migrate_group), (create_group),
7702         (schedule_group), (gst_opt_scheduler_pad_link),
7703         (group_elements_set_visited), (element_get_reachables_func),
7704         (element_get_reachables), (group_can_reach_group), (debug_element),
7705         (rechain_group), (group_migrate_connected),
7706         (gst_opt_scheduler_pad_unlink):
7707         * testsuite/schedulers/Makefile.am:
7708         Implemented group splitting and rechaining.
7709         Fixes 143777 and 143777-2 in the testsuite.
7710
7711 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7712
7713         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7714           extra debugging
7715         * gst/gstevent.h:
7716         * gst/gstinfo.c: (gst_debug_log_default):
7717           print time nicely.  add thread pointer until someone figures out
7718           a completely portable way of getting at thread id's.
7719         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
7720         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
7721         (gst_pad_call_chain_function):
7722           extra debugging
7723         * gst/schedulers/gstoptimalscheduler.c:
7724         (get_group_schedule_function), (loop_group_schedule_function),
7725         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
7726         (pad_clear_queued), (gst_opt_scheduler_iterate):
7727           rename BUFPEN and friends to DATAPEN since that's what they are.
7728
7729 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7730
7731         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7732         * gst/gstbuffer.h:
7733         * gst/gstpad.c:
7734           cleanups and debugging
7735
7736 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7737
7738         * configure.ac:
7739         * gst/gstvalue.c: (gst_value_compare_enum),
7740         (gst_value_serialize_enum), (gst_value_deserialize_enum),
7741         (gst_value_can_compare), (gst_value_compare):
7742         * testsuite/Makefile.am:
7743         * testsuite/enumcaps/Makefile.am:
7744         * testsuite/enumcaps/enumcaps.c:
7745           Fix enum serialization, deserialization, comparison in caps, add
7746           a test to ensure that this continues working in the future.
7747
7748 2004-07-06  David Schleef  <ds@schleef.org>
7749
7750         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7751         Fix memleak.
7752
7753 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7754
7755         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
7756         * gst/gstplugin.h:
7757         * gst/registries/gstxmlregistry.c:
7758         (plugin_times_older_than_recurse), (plugin_times_older_than),
7759         (gst_xml_registry_parse_padtemplate):
7760           only rebuild registry when actual plugins have a newer time than
7761           the registry.  Fixes #145520
7762
7763 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7764
7765         * docs/manual/manual.xml:
7766         * docs/manual/win32.xml:
7767           add chapter on win32 building.  fixes #142422
7768
7769 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7770
7771         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
7772
7773         * gst/autoplug/gstspider.c: (gst_spider_init),
7774         (gst_spider_dispose):
7775           fix spider memleaks.  fixes #137863
7776
7777 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7778
7779         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
7780
7781         * gst/schedulers/gstoptimalscheduler.c:
7782         (gst_opt_scheduler_pad_unlink):
7783           fix SIGBUS error, fixes #145338
7784
7785 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7786
7787         * gst/gstobject.c: (gst_object_replace):
7788         * gst/gstscheduler.c: (gst_scheduler_get_clock):
7789         * gst/gstsystemclock.c: (gst_system_clock_obtain):
7790           clean up clock lifecycle.  Fixes #109831
7791
7792 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7793
7794         * po/LINGUAS:
7795         * po/cs.po:
7796           added Czech translation (Miloslav Trmac)
7797
7798 2004-07-04  David Schleef  <ds@schleef.org>
7799
7800         * tools/Makefile.am:
7801         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
7802
7803 2004-07-04  David Schleef  <ds@schleef.org>
7804
7805         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
7806
7807 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
7808
7809         * gst/gstbin.c: (gst_bin_restore_thyself):
7810           chain to parent restore so the bins get restored correctly
7811           in the editor
7812
7813 2004-07-03  David Schleef  <ds@schleef.org>
7814
7815         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7816         Actually do something in these functions, like before the big
7817         caps change.  (bug #145137)
7818
7819 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7820
7821         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
7822         (gst_element_get_compatible_pad_filtered):
7823         * gst/gstthread.c: (gst_thread_main_loop):
7824           more debugging
7825
7826 2004-07-02  David Schleef  <ds@schleef.org>
7827
7828         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
7829         * gst/gstobject.h:
7830         * gst/gstparse.h:
7831         * gst/gsttrace.h:
7832         * gst/gstxml.h:
7833
7834 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7835
7836         * gst/gstpad.c: (gst_pad_check_schedulers),
7837         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
7838         (gst_pad_link_prepare):
7839           revert until testsuite is fixed
7840
7841 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7842
7843         * testsuite/Makefile.am:
7844         * testsuite/caps/filtercaps.c: (main):
7845         * testsuite/clock/clock1.c: (main):
7846         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
7847           fix some more tests
7848
7849 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7850
7851         * testsuite/cleanup/cleanup1.c: (create_pipeline):
7852         * testsuite/cleanup/cleanup2.c: (create_pipeline):
7853         * testsuite/cleanup/cleanup4.c: (main):
7854           fix testsuite
7855
7856 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7857
7858         * libs/gst/control/control.c:
7859         * libs/gst/control/dparam.c:
7860         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
7861         * libs/gst/control/dparammanager.c:
7862         * libs/gst/control/dparammanager.h:
7863         * testsuite/dynparams/Makefile.am:
7864         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
7865         (gst_dptest_change_state), (gst_dptest_chain), (main):
7866           fix testcase for dparams
7867           add debugging category
7868
7869 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7870
7871         * testsuite/Rules:
7872           change path
7873
7874 2004-07-02  Benjamin Otte  <otte@gnome.org>
7875
7876         * tests/.cvsignore:
7877         * tests/Makefile.am:
7878         * tests/mass_elements.c: (gst_get_current_time), (main):
7879           add simple benchmark to test various speeds of fakesrc ! identity !
7880           identity ! ... ! fakesink.
7881           Usage: mass_elements [num_identities] [num_buffers]
7882           If not specified they default to 1000.
7883
7884 2004-07-02  Benjamin Otte  <otte@gnome.org>
7885
7886         * gst/gstpad.c: (gst_pad_check_schedulers),
7887         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
7888         (gst_pad_link_prepare):
7889           check that pads that get linked belong to the same manager. The old
7890           code allowed linking elements before putting them into bins, so it
7891           worked to link them and then put them in different threads, which
7892           lead to weird behaviour.
7893           Since this effectively disallows linking elements before putting
7894           them in a bin, some applications might not work after this and error
7895           out. If these applications are too critical, we might need to revert
7896           that patch. Please test this before the next release...
7897
7898 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7899
7900         * gst/gstpad.c: (gst_pad_get_caps):
7901           throw an error if the getcaps function does not return a subset of
7902           the template caps.
7903         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
7904           make disconts without position info an error in debugging
7905         * tests/spidey_bench.c: (handoff), (main):
7906           don't count first try when averaging
7907
7908 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7909
7910         * gst/gstplugin.c: (gst_plugin_load_file):
7911           figure out problem with dynamic test
7912
7913 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7914
7915         * docs/gst/Makefile.am:
7916           fix docs build
7917
7918 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7919
7920         * po/POTFILES.in:
7921         * po/af.po:
7922         * po/az.po:
7923         * po/en_GB.po:
7924         * po/fr.po:
7925         * po/nl.po:
7926         * po/sr.po:
7927         * po/sv.po:
7928         * po/tr.po:
7929         * po/uk.po:
7930         * tools/gst-register.c: (plugin_added_func), (main):
7931           i18n-ize -register, fix plural
7932
7933 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7934
7935         * gst/elements/gstidentity.c: (gst_identity_class_init),
7936         (gst_identity_init), (gst_identity_chain),
7937         (gst_identity_set_property), (gst_identity_get_property):
7938         * gst/elements/gstidentity.h:
7939           check for perfect stream
7940
7941 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7942
7943         * gst/elements/gstidentity.c: (gst_identity_chain):
7944           print offset_end
7945
7946 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7947
7948         * docs/gst/Makefile.am:
7949         * docs/gst/gstreamer-docs.sgml:
7950           doc fixes
7951
7952 2004-06-24  David Schleef  <ds@schleef.org>
7953
7954         * autogen.sh:  Remove call to env, since the buildbot isn't
7955         broken anymore.
7956
7957 2004-06-24  Wim Taymans  <wim@fluendo.com>
7958
7959         * gst/elements/Makefile.am:
7960         * gst/elements/gstelements.c:
7961         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
7962         (gst_multifdsink_class_init), (gst_multifdsink_init),
7963         (gst_multifdsink_add), (gst_multifdsink_remove),
7964         (gst_multifdsink_clear), (gst_multifdsink_chain),
7965         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
7966         * gst/elements/gstmultifdsink.h:
7967         Added an element that writes to multiple filedescriptors at once.
7968
7969 2004-06-24  Benjamin Otte  <otte@gnome.org>
7970
7971         * gst/parse/grammar.y:
7972           don't try to link elements before they have been added to bins
7973
7974 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7975
7976         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
7977         (gst_file_pad_get_length):
7978         * libs/gst/bytestream/filepad.h:
7979           add 2 new functions
7980
7981 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7982
7983         * docs/gst/gstreamer-sections.txt:
7984         remove from docs, the define that Benjamin removed from gstelement.h
7985
7986 2004-06-22  Benjamin Otte  <otte@gnome.org>
7987
7988         * gst/gstelement.h:
7989           remove define that referenced a nonexisting GstElement struct member
7990
7991 2004-06-20  Benjamin Otte  <otte@gnome.org>
7992
7993         * gst/gstdata.c: (gst_data_is_writable):
7994           whoops, return values were wrong, so writable data was marked as
7995           non-writable and vice versa. (fixes #143953, spotted by Francis
7996           Labonte)
7997           Shows how rarely we need to copy data ;)
7998
7999 2004-06-20  Benjamin Otte  <otte@gnome.org>
8000
8001         * testsuite/schedulers/.cvsignore:
8002         * testsuite/schedulers/Makefile.am:
8003         * testsuite/schedulers/143777-2.c: (main):
8004           add test for opt breakage in bug #143777
8005
8006 2004-06-20  Benjamin Otte  <otte@gnome.org>
8007
8008         * gst/gstpad.c: (gst_pad_call_chain_function):
8009           check for if we were unlinked while inside the chainfunction (fixes
8010           entrygthread having issues with #143777)
8011         * testsuite/schedulers/143777.c: (main):
8012         * testsuite/schedulers/Makefile.am:
8013           add a test for that fix
8014
8015 2004-06-20  Benjamin Otte  <otte@gnome.org>
8016
8017         * gst/gstvalue.c: (gst_value_set_int_range):
8018           test that start is smaller then end
8019         * libs/gst/bytestream/Makefile.am:
8020         * libs/gst/bytestream/filepad.c: 
8021         * libs/gst/bytestream/filepad.h:
8022           add GstFilePad - a pad that behaves like a FILE*
8023         * testsuite/bytestream/.cvsignore:
8024         * testsuite/bytestream/Makefile.am:
8025         * testsuite/bytestream/filepadsink.c: 
8026           test for the GstFilePad
8027
8028 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8029
8030         * gst/elements/gstidentity.c: (gst_identity_class_init),
8031         (gst_identity_init), (gst_identity_set_clock),
8032         (gst_identity_chain), (gst_identity_set_property),
8033         (gst_identity_get_property):
8034         * gst/elements/gstidentity.h:
8035         * gst/gstclock.c: (gst_clock_id_wait):
8036           add a "sync" property to sync to the clock
8037
8038 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8039
8040         * gst/gstelementfactory.c: (gst_element_factory_create):
8041           make the freakin "elementfactory bla has no type" message more
8042           useful. So we actually can do something when someone shows up
8043           complaining about it.
8044
8045 2004-06-15  Johan Dahlin  <johan@gnome.org>
8046
8047         * tools/gst-inspect.c (main): Fallback to plugin if no element is
8048         found. This matches the old behavior better. Thanks to Thomas for
8049         pointing out.
8050
8051 2004-06-14  David Schleef  <ds@schleef.org>
8052
8053         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
8054         -fomit-frame-pointer.  Appears to generate correct code in
8055         other cases as well.
8056
8057 2004-06-14  Johan Dahlin  <johan@gnome.org>
8058
8059         * tools/gst-inspect.c (main): Add two new command line options: -a
8060         to print all elements and -n to print the name on each line. Also
8061         fix some error reporting.
8062         (main): Simplify, remove -n and always print names if -a is specified
8063
8064 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
8065
8066         * win32/gstconfig.h:
8067         * win32/GSTreamer.vcproj:
8068         * win32/Makefile:
8069         * gst/gstconfig.h.in:
8070         * gst/gst.h:
8071         * gst/gstbin.h:
8072         * gst/gstelement.h:
8073         * gst/gstevent.h:
8074         * gst/gstobject.h:
8075         * gst/gstpad.h:
8076         * docs/gst/gstreamer-sections.txt:
8077         * docs/gst/tmpl/gstconfig.sgml:
8078           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
8079
8080 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8081         * docs/gst/gstreamer-sections.txt:
8082         * docs/gst/tmpl/gstconfig.sgml:
8083         Add the GSTREAMER_EXPORT macro to the docs
8084
8085 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8086
8087         * tools/gst-compprep.c: (handle_xmlerror), (main):
8088         Add a check for the version that introduced SetStructuredError to fix
8089         the build on FC1
8090
8091 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8092
8093         * win32/msvc71.sln:
8094         * win32/testsuite/:
8095           prepare to compile the testsuite with MSVC
8096
8097 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8098
8099         * docs/manual/win32.xml:
8100           attempt to transform the Win32 README into an XML doc
8101
8102 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8103
8104         * gst/gst.c:
8105         * gst/gstbin.*:
8106         * gst/config.h.in:
8107         * gst/gstelement.*:
8108         * gst/gstevent.h:
8109         * gst/gstobject.*:
8110         * gst/gstpad.h:
8111         * tools/gst-register.c:
8112         * win32/gstreamer.def:
8113           extern symbols are now exported for the Windows DLL
8114
8115 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8116
8117         * gst/gstinfo.h:
8118           fix a problem to enable/disable DEBUG under MSVC
8119
8120 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8121
8122         * win32/:
8123           enable more debug code in DEBUG build
8124
8125 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8126
8127         * win32/config.h:
8128         * gst/gst-i18n-app.h:
8129           enable NLS under Windows
8130
8131 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
8132         * tools/gst-compprep.c: (handle_xmlerror), (main):
8133           Make an error that baffled me a bit clearer
8134
8135 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8136
8137         * gst/gstqueue.c:
8138           don't use g_queue_get_length () because it's 2.4, use ->length
8139
8140 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
8141
8142         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
8143
8144         * tools/gst-inspect.c: (print_signal_info):
8145           don't free random data twice. (fixes #144185)
8146
8147 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
8148
8149         * gst/gstqueue.c:
8150         * gst/gstqueue.h:
8151           fix removing from the wrong queue on event timeout
8152           fix disposing of the event queue by casting correctly
8153           add mutexes for handling the event queue
8154           someone was sleeping when fixing queue last time around :)
8155
8156 2004-06-10  Johan Dahlin  <johan@gnome.org>
8157
8158         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
8159         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
8160
8161 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8162
8163         * docs/random/gdp:
8164         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
8165         * libs/gst/dataprotocol/dataprotocol.c:
8166         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8167         (gst_dp_buffer_from_header):
8168         * libs/gst/dataprotocol/dataprotocol.h:
8169         * libs/gst/dataprotocol/dp-private.h:
8170           rev version to 0.1, add buffer flags and copy them
8171
8172 2004-06-09  Johan Dahlin  <johan@gnome.org>
8173
8174         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
8175         the flags from the buffer we're copying.
8176
8177 2004-06-09  Wim Taymans  <wim@fluendo.com>
8178
8179         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
8180         * gst/elements/gstidentity.c: (gst_identity_init),
8181         (gst_identity_chain):
8182         Print more buffer info in fakesink.
8183         Make identity output similar to fakesink.
8184
8185 2004-06-07  Daniel Gazard  <dany42@free.fr>
8186
8187         reviewed by Benjamin Otte  <otte@gnome.org>
8188
8189         * configure.ac:
8190           fix cross compiling not working. (fixes #143741)
8191
8192 2004-06-07  Benjamin Otte  <otte@gnome.org>
8193
8194         * gst/gstelement.c: (gst_element_set_time_delay):
8195           add failure check
8196         * gst/gstinfo.h:
8197           put brackets around macro arguments of GST_TIME_ARGS, add note to
8198           move it to correct header in 0.9
8199
8200 2004-06-07  Benjamin Otte  <otte@gnome.org>
8201
8202         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
8203         (gst_file_index_load), (_file_index_id_save_entries),
8204         (gst_file_index_commit), (gst_file_index_add_association),
8205         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
8206         (gst_file_index_plugin_init):
8207           make debugging use a default category
8208
8209 2004-06-06  David Moore  <dcm@acm.org>
8210
8211         reviewed by Benjamin Otte  <otte@gnome.org>
8212
8213         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
8214         (gst_fdsrc_change_state):
8215           reset offset counter when going READY => PAUSED. (fixes #142903)
8216
8217 2004-06-06  ed@catmur.co.uk
8218
8219         reviewed by Benjamin Otte  <otte@gnome.org>
8220
8221         * gst/registries/gstxmlregistry.c:
8222         (gst_xml_registry_rebuild_recurse):
8223           don't rely on g_dir_open to figure out if a file is a directory, use
8224           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
8225           directories. (fixes #142850)
8226
8227 2004-06-06  Benjamin Otte  <otte@gnome.org>
8228
8229         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
8230           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
8231         * libs/gst/bytestream/adapter.c:
8232         * libs/gst/bytestream/adapter.h:
8233           fix copyright in header and typo in debugging category name
8234
8235 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8236
8237         * configure.ac:
8238           bump nano to cvs
8239
8240 === release 0.8.3 ===
8241
8242 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8243
8244         * configure.ac:
8245           update libtool versioning
8246           do a new release
8247         * docs/gst/tmpl/gstelement.sgml:
8248         * docs/gst/tmpl/gsttypes.sgml:
8249         * gst/gstinfo.c: (_gst_debug_init):
8250           put back GST_CAT_DATAFLOW to fix API breakage
8251
8252 2004-06-04  David Schleef  <ds@schleef.org>
8253
8254         * autogen.sh: Add a temporary 'env' to test buildbot problems.
8255
8256 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8257
8258         * configure.ac:
8259           bump nano to cvs
8260
8261 === release 0.8.2 ===
8262
8263 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8264
8265         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
8266           check GST_DEBUG environment variable which is parsed the same way
8267           as --gst-debug=
8268
8269 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8270
8271         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
8272                             gstmd5sink.c gstshaper.c gsttee.c
8273                             gsttypefindelement.c
8274         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
8275
8276           - removing trailing commas at end of enums
8277             it is correct C99 code but C90 compilers would complain
8278             (AIX, Forte, ...)
8279             ('should' fix #143290, at least partially)
8280
8281 2004-05-27  Wim Taymans  <wim@fluendo.com>
8282
8283         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
8284         (chain_group_set_enabled), (create_group), (add_to_group),
8285         (merge_groups), (setup_group_scheduler), (group_elements),
8286         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
8287         Don't try to follow the pad connections with other groups
8288         when a loop based element is added to the scheduler because
8289         the bin will inform the scheduler about the pad links a little
8290         later.
8291
8292 2004-05-27  Wim Taymans  <wim@fluendo.com>
8293
8294         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8295         (remove_from_chain), (chain_group_set_enabled),
8296         (setup_group_scheduler), (group_element_set_enabled),
8297         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
8298         (gst_opt_scheduler_show):
8299         Elements without a group can do a state change as well, just wait
8300         with the setup of the scheduling function when it is added to a
8301         chain.
8302
8303 2004-05-27  Wim Taymans  <wim@fluendo.com>
8304
8305         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8306         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
8307         (merge_groups), (setup_group_scheduler),
8308         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
8309         (gst_opt_scheduler_show):
8310         Fixes to maintain internal consistency of the scheduler data
8311         structures. 
8312          - adding an enabled group to a chain should increment the
8313            number of enabled elements in that chain.
8314          - removing an enabled group from a chain could disable the
8315            chain.
8316          - removing a disabled group from a chain could enable the
8317            chain.
8318          - add g_assert when internal inconsistency is detected.
8319          - adding an element to a group could increase the number of
8320            links this group has with other groups.
8321          - merging two groups also merges the chains.
8322          - also show group links in the _show method.
8323            
8324
8325 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8326
8327         * gst/gstcaps.c: (gst_caps_structure_simplify):
8328           don't print error messages when there is no error
8329         * gst/gstvalue.c: (gst_value_compare_int_range):
8330           compare the second value, too
8331         * testsuite/caps/Makefile.am:
8332         * testsuite/caps/random.c: (assert_on_error), (main):
8333           add tests to make sure the two things above are checked for
8334
8335 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8336
8337         * configure.ac:
8338         * libs/gst/dataprotocol/Makefile.am:
8339         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
8340         * libs/gst/dataprotocol/dataprotocol.h:
8341           wrap header in GST_ENABLE_NEW.  make code use it
8342
8343 2004-05-23  Johan Dahlin  <johan@gnome.org>
8344
8345         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
8346         so verbose and print GstElement signal names all the time.
8347
8348 2004-05-22  David Schleef  <ds@schleef.org>
8349
8350         * gst/registries/gstxmlregistry.c:
8351         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
8352         (bug #142957)
8353
8354 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
8355
8356         * configure.ac:
8357           scrub cflags for glib2 so gcc doesn't complain when glib is in
8358           /usr/local
8359
8360 2004-05-21  Johan Dahlin  <johan@gnome.org>
8361
8362         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
8363         __GNUC__, patch from Brian Cameron, fixes bug #142804
8364
8365 2004-05-20  David Schleef  <ds@schleef.org>
8366
8367         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
8368         comparison code.  (bug #142819)
8369
8370 2004-05-20  Wim Taymans  <wim@fluendo.com>
8371
8372         * gst/gstbuffer.c: (gst_buffer_default_copy):
8373         * gst/gstbuffer.h:
8374         Added Comment to a flag.
8375         copy relevant flags in _buffer_copy.
8376
8377 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8378
8379         reviewed by: Wim Taymans <wim at fluendo dot com>
8380
8381         * gst/gstbuffer.h:
8382           add GST_BUFFER_IN_CAPS buffer flag
8383         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8384         (gst_structure_parse_any_list), (gst_structure_parse_list),
8385         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
8386         * gst/gstvalue.c: (gst_value_serialize_any_list),
8387         (gst_value_transform_any_list_string),
8388         (gst_value_list_prepend_value), (gst_value_list_append_value),
8389         (gst_value_list_get_size), (gst_value_list_get_value),
8390         (gst_value_transform_list_string),
8391         (gst_value_transform_fixed_list_string),
8392         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
8393         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
8394         (_gst_value_initialize):
8395         * gst/gstvalue.h:
8396           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
8397           < , > as a format.
8398         * testsuite/caps/string-conversions.c: (main):
8399           add regression tests for < >
8400
8401 2004-05-20  Johan Dahlin  <johan@gnome.org>
8402
8403         * docs/gst/Makefile.am (all-local): Re-add
8404
8405 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8406
8407         * docs/gst/Makefile.am:
8408         * docs/gst/gstreamer-docs.sgml:
8409         * docs/libs/Makefile.am:
8410         * docs/libs/gstreamer-libs-docs.sgml:
8411           fix distcheck issues
8412
8413 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8414
8415         * libs/gst/dataprotocol/Makefile.am:
8416           add to autotest
8417
8418 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8419
8420         * libs/gst/dataprotocol/Makefile.am:
8421         * libs/gst/dataprotocol/dataprotocol.c:
8422         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8423         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
8424         * libs/gst/dataprotocol/dp-private.h:
8425           use GST macros to read/write fixed length ints
8426           add some more asserts
8427
8428 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8429
8430         * docs/libs/gstreamer-libs-docs.sgml:
8431         * docs/libs/gstreamer-libs-sections.txt:
8432           remove idct and putbits
8433         * configure.ac:
8434         * docs/libs/tmpl/gstdataprotocol.sgml:
8435         * libs/gst/Makefile.am:
8436         * libs/gst/dataprotocol/Makefile.am:
8437         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
8438         (buffer_test), (caps_test), (event_test), (main):
8439         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
8440         (gst_dp_dump_byte_array), (gst_dp_init),
8441         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
8442         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8443         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
8444         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
8445         (gst_dp_validate_header), (gst_dp_validate_payload),
8446         (gst_dp_validate_packet), (plugin_init):
8447         * libs/gst/dataprotocol/dataprotocol.h:
8448         * libs/gst/dataprotocol/dp-private.h:
8449           add dataprotocol
8450
8451 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8452
8453         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
8454           fix int variable deserialization and add a helper so we can actually
8455           debug this.
8456
8457 2004-05-18  David Schleef  <ds@schleef.org>
8458
8459         * testsuite/debug/commandline.c: (main): Call ./commandline, not
8460           argv[0].  Calling yourself is probably not the best way to
8461           construct a test like this, btw.
8462
8463 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8464
8465         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
8466           don't claim to be more intelligent than a scheduler when the
8467           scheduler claims the pipeline is stopped
8468         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
8469         (safe_cothread_destroy),
8470         (gst_entry_scheduler_remove_all_cothreads),
8471         (gst_entry_scheduler_reset), (_remove_cothread),
8472         (gst_entry_scheduler_state_transition):
8473           hold off cothread destruction if we're not in main cothread
8474         * configure.ac:
8475         * testsuite/Makefile.am:
8476           add new test dir
8477         * testsuite/schedulers/.cvsignore:
8478         * testsuite/schedulers/Makefile.am:
8479           add tests
8480         * testsuite/schedulers/relink.c: (cb_handoff), (main):
8481           check relinking and adding/removing elements from a running pipeline
8482         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
8483           check unlinking in a running pipeline
8484         * testsuite/schedulers/unref.c: (cb_handoff), (main):
8485           check unreffing a running pipeline
8486         * testsuite/schedulers/useless_iteration.c: (main):
8487           check iterating a pipeline that contains running threads works
8488
8489 2004-05-18  David Schleef  <ds@schleef.org>
8490
8491         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
8492           is false.
8493
8494 2004-05-18  Wim Taymans  <wim@fluendo.com>
8495
8496         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8497         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
8498         Fixed an error introduced with patch for 1.63. When setting
8499         a get based element as the entry point in a group, make sure
8500         to mark the group as GET based.
8501
8502 2004-05-18  Wim Taymans  <wim@fluendo.com>
8503
8504         * gst/schedulers/gstoptimalscheduler.c: (create_group),
8505         (setup_group_scheduler), (loop_group_schedule_function),
8506         (gst_opt_scheduler_pad_link):
8507         Added some more debug info and fixed a bug where the group
8508         type was set to LOOP but it was in fact unknown.
8509
8510 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8511
8512         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
8513           make resetting scheduler work twice in a row
8514
8515 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8516
8517         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
8518         (CREATE_USERIALIZATION), (_gst_value_initialize),
8519         (gst_value_compare_float), (gst_value_serialize_float),
8520         (gst_value_deserialize_float), (gst_value_compare_enum),
8521         (gst_value_serialize_enum), (gst_value_deserialize_enum):
8522           add serialization and comparison functions for long, int64, enum and
8523           float values
8524         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
8525           use best serialization function in type hierarchy instead of only a
8526           matching one. This is required for enums to work.
8527         * gst/parse/grammar.y:
8528           use gst_caps_deserialize
8529         * testsuite/parse/Makefile.am:
8530           parse1 now works
8531         * testsuite/parse/parse1.c: (main):
8532           remove aggregator check, aggregator is broken, this test works now
8533           but fails because of bug #138012
8534         * testsuite/parse/parse2.c: (main):
8535           s/xvideosink/xvimagesink - this test looks a lot like we should
8536           disable it
8537
8538 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8539
8540         * gst/gstelement.c: (gst_element_class_init):
8541           whoops, store the signal id correctly
8542         * gst/schedulers/gstbasicscheduler.c:
8543         (gst_basic_scheduler_chain_wrapper):
8544           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
8545           chain function isn't linked
8546
8547 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
8548         * configure.ac:
8549         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
8550         support until we decide where the flags should be used
8551         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
8552         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
8553         * gst/gstpad.c: (gst_pad_link_call_link_functions):
8554         Output refused caps in the debug info
8555
8556 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8557
8558         * gst/elements/gstidentity.c: (gst_identity_chain):
8559           add duration debug
8560         * gst/gstinfo.c: (gst_debug_log_default):
8561           add timestamp
8562
8563 2004-05-13  Benjamin Otte  <otte@gnome.org>
8564
8565         * gst/gstpipeline.c: (gst_pipeline_dispose),
8566         (gst_pipeline_change_state):
8567           call gst_scheduler_reset on dispose (fixes #141416)
8568
8569 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8570
8571         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8572           compute mapsize correctly
8573         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8574           use correct datatypes when calling a varargs function
8575         * gst/elements/gsttypefindelement.c: (stop_typefinding):
8576           push a DISCONT event as first thing
8577         * gst/gst_private.h:
8578         * gst/gstinfo.c: (_gst_debug_init):
8579           remove GST_DATAFLOW debugging category
8580         * gst/gstbin.c: (gst_bin_iterate):
8581           use GST_SCHEDULING category
8582         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
8583         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
8584         (gst_pad_call_get_function):
8585           add GST_DATAFLOW to easily track flow of buffers or events.
8586         * gst/gstqueue.c: (gst_queue_get_type),
8587         (gst_queue_handle_pending_events), (gst_queue_chain),
8588         (gst_queue_get), (gst_queue_handle_src_event):
8589           use own static debugging category GST_DATAFLOW for dataflow,
8590           use DEBUG category for showing which path events go, use LOG
8591           category for buffers.
8592
8593 2004-05-10  David Schleef  <ds@schleef.org>
8594
8595         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
8596
8597 2004-05-10  David Schleef  <ds@schleef.org>
8598
8599         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
8600         symbols, because otherwise we don't know what they are.  Thanks,
8601         the GStreamer team.
8602         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
8603
8604 2004-05-10  David Schleef  <ds@schleef.org>
8605
8606         (from Steve Lhomme)
8607         * win32/Makefile: When using make clean the MS Visual Studio makefiles
8608         are deleted.  Fix.
8609         * win32/Makefile.inspect:
8610         * win32/Makefile.launch:
8611         * win32/Makefile.register:
8612
8613 2004-05-10  David Schleef  <ds@schleef.org>
8614
8615         * gst/gstinfo.h: Add missing inline function.
8616         * gst/gsttrace.c: add include
8617         * gst/parse/grammar.y: remove unused code
8618         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
8619         more portable.
8620         * tools/gst-register.c: wrap unistd.h
8621         
8622         More additions/fixes from Steve for the MSVC build.
8623         * win32/GStreamer.vcproj:
8624         * win32/Makefile:
8625         * win32/Makefile.inspect:
8626         * win32/Makefile.launch:
8627         * win32/Makefile.register:
8628         * win32/README.txt:
8629         * win32/gst-inspect.vcproj:
8630         * win32/gst-launch.vcproj:
8631         * win32/gst-register.vcproj:
8632         * win32/gstbytestream.def:
8633         * win32/gstbytestream.vcproj:
8634         * win32/gstconfig.h:
8635         * win32/gstelements.def:
8636         * win32/gstelements.vcproj:
8637         * win32/gstenumtypes.c:
8638         * win32/gstenumtypes.h:
8639         * win32/gstoptimalscheduler.def:
8640         * win32/gstoptimalscheduler.vcproj:
8641         * win32/gstreamer.def:
8642         * win32/gstspider.def:
8643         * win32/gstspider.vcproj:
8644         * win32/gstversion.h:
8645         * win32/msvc71.sln:
8646
8647 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8648
8649         * gst/gstelement.c: (gst_element_class_init),
8650         (gst_element_no_more_pads):
8651         * gst/gstelement.h:
8652           add gst_element_no_more_pads and the "no-more-pads" signal
8653
8654 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8655
8656         * gst/gstregistry.c: (gst_registry_add_plugin):
8657           refuse to add plugins when a plugin with same name is already
8658           registered. Fixes a bunch of "How to remove plugins?" issues.
8659           May lead to other problems though, let's test
8660
8661 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8662
8663         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
8664         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
8665         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
8666
8667 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8668
8669         * tests/Makefile.am: fix am16 issue
8670
8671 2004-05-09  Benjamin Otte  <otte@gnome.org>
8672
8673         * libs/gst/bytestream/Makefile.am:
8674           we should indeed add .c files to makefiles or they won't be built
8675           (d'oh)
8676
8677 2004-05-08  Benjamin Otte  <otte@gnome.org>
8678
8679         * gst/gstpad.c: (gst_pad_proxy_fixate):
8680           really reduce the set of caps
8681
8682 2004-05-08  Benjamin Otte  <otte@gnome.org>
8683
8684         * tests/Makefile.am:
8685         * tests/spidey_bench.c: (handoff), (main):
8686           add benchmark to test how long spider needs to create a pipeline
8687
8688 2004-05-08  Benjamin Otte  <otte@gnome.org>
8689
8690         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
8691           mark links as unengaged when unnegotiating instead of deactivating.
8692           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
8693
8694 2004-05-08  Benjamin Otte  <otte@gnome.org>
8695
8696         * docs/manual/helloworld.xml:
8697           s/audiosink/osssink (patch by Patrick Guimond)
8698
8699 2004-05-07  David Schleef  <ds@schleef.org>
8700
8701         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
8702         since it contains important stuff.
8703
8704 2004-05-07  David Schleef  <ds@schleef.org>
8705
8706         * testsuite/caps/caps.c: (test3), (main): A check for appending
8707         ANY caps.
8708
8709 2004-05-07  David Schleef  <ds@schleef.org>
8710
8711         * common/m4/as-compiler-flag.m4: Properly quote arguments,
8712         which may contain commas.  Fixes detection of -Wa,-mregnames
8713
8714 2004-05-06  David Schleef  <ds@schleef.org>
8715
8716         Changes to handle compilers that don't have variadic macro
8717         support.  In particular, glib headers define some inlines
8718         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
8719         builds.
8720         * gst/Makefile.am:
8721         * gst/cothreads.c:
8722         * gst/elements/gstfdsink.c:
8723         * gst/elements/gstfdsrc.c:
8724         * gst/elements/gstfilesink.c:
8725         * gst/elements/gstfilesrc.c:
8726         * gst/gst_private.h:
8727         * gst/gstatomic.c:
8728         * gst/gstcaps.c: (gst_caps_append):
8729         * gst/gstcpu.c: (gst_cpuid_i386):
8730         * gst/gstelement.c:
8731         * gst/gsterror.c:
8732         * gst/gstfilter.c:
8733         * gst/gstinfo.h:
8734         * gst/gstprobe.c:
8735         * gst/gstquery.c:
8736         * gst/gstregistry.c:
8737         * gst/gststructure.c:
8738         * gst/gsttaginterface.c:
8739         * gst/gsttrace.c: (gst_trace_new):
8740         * gst/gsttrashstack.c:
8741         * gst/gsturi.c:
8742         * gst/gstvalue.c:
8743         * gst/parse/grammar.y:
8744         * gst/parse/parse.l:
8745         * tools/gst-inspect.c: (main):
8746         * tools/gst-launch.c: (main):
8747         * tools/gst-xmlinspect.c: (PUT_STRING):
8748
8749 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8750
8751         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
8752         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
8753         * gst/elements/gstfilesrc.h:
8754           send NEW_MEDIA events correctly
8755         * gst/elements/gsttypefindelement.c: (start_typefinding),
8756         (gst_type_find_element_handle_event):
8757           restart typefinding when we get a NEW_MEDIA event
8758         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
8759         (gst_bin_dispose):
8760           don't die when someone removes elements in callbacks
8761         * gst/gstelement.c: (gst_element_change_state):
8762           improve debugging
8763         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
8764           we need a NEW_MEDIA event to engage a link
8765         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
8766           don't g_print debugging stuff
8767         * testsuite/caps/simplify.c: (check_caps):
8768
8769 2004-05-04  Benjamin Otte  <otte@gnome.org>
8770
8771         * gst/parse/grammar.y:
8772           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
8773
8774 2004-05-04  Benjamin Otte  <otte@gnome.org>
8775
8776         * testsuite/caps/renegotiate.c: (main):
8777           improve output in error case
8778
8779 2004-05-04  Benjamin Otte  <otte@gnome.org>
8780
8781         * gst/parse/grammar.y:
8782           fix assert to not trigger when there's no error argument
8783         * gst/parse/parse.l:
8784           fix definition of caps to allow more than two structures
8785         * testsuite/caps/Makefile.am:
8786         * testsuite/caps/renegotiate.c: (main):
8787           it's sinesrc and works in that case
8788
8789 2004-05-04  Wim Taymans  <wim@fluendo.com>
8790
8791         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8792         (group_dec_link), (gst_opt_scheduler_pad_unlink):
8793         when removing an element from a group, we always need to
8794         decrement the link count that this group had with other 
8795         groups through the element.
8796         added an extra assert to catch inconsistencies when decrementing
8797         the link count.
8798
8799 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8800
8801         * configure.ac:
8802         * docs/gst/Makefile.am:
8803         * docs/gst/gstreamer-sections.txt:
8804         * docs/gst/tmpl/gstcompat.sgml:
8805         * examples/appreader/Makefile.am:
8806         * examples/cutter/Makefile.am:
8807         * examples/events/Makefile.am:
8808         * examples/helloworld/Makefile.am:
8809         * examples/helloworld2/Makefile.am:
8810         * examples/launch/Makefile.am:
8811         * examples/manual/Makefile.am:
8812         * examples/mixer/Makefile.am:
8813         * examples/pingpong/Makefile.am:
8814         * examples/plugins/Makefile.am:
8815         * examples/queue/Makefile.am:
8816         * examples/queue2/Makefile.am:
8817         * examples/queue3/Makefile.am:
8818         * examples/queue4/Makefile.am:
8819         * examples/retag/Makefile.am:
8820         * examples/thread/Makefile.am:
8821         * examples/typefind/Makefile.am:
8822         * examples/xml/Makefile.am:
8823         * gst/Makefile.am:
8824         * gst/autoplug/Makefile.am:
8825         * gst/elements/Makefile.am:
8826         * gst/gstcompat.h:
8827         * gst/indexers/Makefile.am:
8828         * gst/parse/Makefile.am:
8829         * gst/registries/Makefile.am:
8830         * gst/schedulers/Makefile.am:
8831         * libs/gst/bytestream/Makefile.am:
8832         * libs/gst/control/Makefile.am:
8833         * libs/gst/getbits/Makefile.am:
8834         * po/af.po:
8835         * po/az.po:
8836         * po/en_GB.po:
8837         * po/fr.po:
8838         * po/nl.po:
8839         * po/sr.po:
8840         * po/sv.po:
8841         * po/tr.po:
8842         * po/uk.po:
8843         * tests/Makefile.am:
8844         * tests/bufspeed/Makefile.am:
8845         * tests/instantiate/Makefile.am:
8846         * tests/memchunk/Makefile.am:
8847         * tests/muxing/Makefile.am:
8848         * tests/negotiation/Makefile.am:
8849         * tests/probes/Makefile.am:
8850         * tests/sched/Makefile.am:
8851         * tests/seeking/Makefile.am:
8852         * tests/threadstate/Makefile.am:
8853         * testsuite/caps/Makefile.am:
8854         * testsuite/cleanup/Makefile.am:
8855         * testsuite/dlopen/Makefile.am:
8856         * testsuite/dynparams/Makefile.am:
8857         * testsuite/plugin/Makefile.am:
8858         * testsuite/states/Makefile.am:
8859         * tools/Makefile.am:
8860           reorganize compile/link flags to be consistent
8861           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
8862
8863 2004-05-04  David Schleef  <ds@schleef.org>
8864
8865         The "once more, with feeling" check-in.
8866         * testsuite/caps/Makefile.am: dist caps_strings
8867         * testsuite/caps/renegotiate.c: (main): This test triggers a
8868           segfault in the core.  Marking as failing.
8869
8870 2004-05-03  David Schleef  <ds@schleef.org>
8871
8872         * testsuite/caps/deserialize.c: (main): Fix problems noticed
8873           by the build bots.
8874         * testsuite/caps/renegotiate.c: (main): Same.
8875
8876 2004-05-03  David Schleef  <ds@schleef.org>
8877
8878         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
8879
8880 2004-05-03  David Schleef  <ds@schleef.org>
8881
8882         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
8883           variable to find our source file.
8884
8885 2004-05-03  David Schleef  <ds@schleef.org>
8886
8887         * configure.ac:  Link plugins with libgstreamer and dependent
8888           libraries
8889         * testsuite/caps/Makefile.am:
8890         * testsuite/caps/caps_strings:
8891         * testsuite/caps/deserialize.c: (main): Add a little test to slog
8892           through a file of caps strings and test each one
8893
8894 2004-05-04  Benjamin Otte  <otte@gnome.org>
8895
8896         * libs/gst/bytestream/Makefile.am:
8897         * libs/gst/bytestream/adapter.c: 
8898         * libs/gst/bytestream/adapter.h:
8899           add GstAdapter, similar to bytestream, but doesn't require ugly event
8900           handling or uglier loopbased elements
8901
8902 2004-05-03  David Schleef  <ds@schleef.org>
8903
8904         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
8905         * testsuite/caps/erathostenes.c:
8906         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
8907
8908 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8909
8910         * docs/pwg/pwg.xml:
8911           remove hardcoded stylesheet path (duh)
8912         * docs/random/release:
8913         * docs/gst/gstreamer-sections.txt:
8914         * gst/Makefile.am:
8915         * gst/gst.h:
8916         * gst/gst_private.h:
8917         * gst/gstcaps.c:
8918         * gst/gstevent.c:
8919         * gst/gstformat.c:
8920         * gst/gstinfo.c:
8921         * gst/gstinfo.h:
8922         * gst/gstinterface.c:
8923         * gst/gstmemchunk.c:
8924         * gst/gstprobe.c:
8925         * gst/gstquery.c:
8926         * gst/gstregistry.c:
8927         * gst/gstregistrypool.c:
8928         * gst/gststructure.c:
8929         * gst/gsttaginterface.c:
8930         * gst/gstthread.c:
8931         * gst/gsttrace.c:
8932         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
8933         * gst/gsturi.c:
8934         * gst/gstvalue.c:
8935           deprecate gst_info; remove gstlog.h
8936    
8937
8938 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8939
8940         * Makefile.am:
8941         * po/en_GB.po:
8942         * po/sv.po:
8943         * po/uk.po:
8944           updated translations
8945
8946 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8947
8948         * gst/gstbin.c: (gst_bin_dispose):
8949           better debugging
8950
8951 2004-05-03  Johan Dahlin  <johan@gnome.org>
8952
8953         * gst/schedulers/gstoptimalscheduler.c
8954         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
8955         really is a GstElement. Avoids critical when running gst-launch -v
8956         and a oggdemux/decoding pipeline.
8957
8958 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8959
8960         * docs/gst/tmpl/gstpipeline.sgml :
8961         * docs/manual/elements-api.xml :
8962                 doc fix by Patrick Guimond (Protector) from devel ML
8963                 reviewed by ronald
8964
8965 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8966
8967         * docs/gst/Makefile.am :
8968         * docs/libs/Makefile.am :
8969                 apply a patch from Arwed v. Merkatz so that gtk-doc
8970                 generated docs install (same for .devhelp file)
8971                 (fixes part 1 of #138836)
8972
8973 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8974
8975         * docs/faq/dependencies.xml: typo
8976         * docs/faq/getting.xml :
8977             - fix download URL for new gstreamer site
8978             - hide sf.net download page as latest version aren't there
8979             - fix apt URLs
8980             - fill "get via CVS" paragraph (link to dev page on the site)
8981         * docs/faq/general.xml:
8982             hide status tables as they no more exists
8983             change case on plugins license file to reflect reality
8984         * docs/faq/troubleshooting.xml:
8985             remove the wiki question/answer as there is no more wiki
8986
8987 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8988
8989         * gst/gsterror.h:
8990           include the headers needed for declarations used in this header
8991
8992 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8993
8994         * docs/random/uraeus/gstreamer_and_midi.txt :
8995           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
8996           (fixes #132288)
8997
8998 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
8999
9000         reviewed by Benjamin Otte  <otte@gnome.org>
9001
9002         * gst/schedulers/gthread-cothreads.h:
9003           free allocated data for main cothread, too when destroying context
9004           (fixes #141417)
9005
9006 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9007
9008         * docs/manual/goals.xml : remove duplicated paragraph at end 
9009         of doc page (fixes #141448)
9010
9011 2004-04-29  David Schleef  <ds@schleef.org>
9012
9013         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
9014         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
9015
9016 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9017
9018         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
9019           fix property
9020         * gst/gstcaps.c:
9021           fix doc string
9022         * po/POTFILES.in:
9023           rename typefind source file
9024
9025 2004-04-28  David Schleef  <ds@schleef.org>
9026
9027         Several new files from Steve Lhomme's MSVC patch (bug #141317):
9028         * win32/GStreamer.vcproj:
9029         * win32/Makefile:
9030         * win32/config.h:
9031         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
9032         (_trewinddir), (_ttelldir), (_tseekdir):
9033         * win32/dirent.h:
9034         * win32/gst-inspect.vcproj:
9035         * win32/gst-launch.vcproj:
9036         * win32/gst-register.vcproj:
9037         * win32/gstbytestream.vcproj:
9038         * win32/gstelements.vcproj:
9039         * win32/gstoptimalscheduler.vcproj:
9040         * win32/gstspider.vcproj:
9041         * win32/gtchar.h:
9042         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
9043         * win32/mman.h:
9044         * win32/mman.inl:
9045         * win32/msvc71.sln:
9046
9047 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9048
9049         * gst/gst.c: (init_post):
9050         * gst/gstinfo.c:
9051           remove useless _gst_progname stuff
9052         * tools/gst-inspect.c: (print_field), (print_caps):
9053           improve caps output
9054
9055 2004-04-28  David Schleef  <ds@schleef.org>
9056
9057         Disable parsing of a lot of files that aren't part of the
9058         exported API.  Move corresponding template files to old/,
9059         waiting for removal when they don't contain anything
9060         interesting.
9061         * docs/gst/Makefile.am:
9062         * docs/gst/gstreamer-sections.txt:
9063         * docs/gst/tmpl/cothreads.sgml:
9064         * docs/gst/tmpl/cothreads_compat.sgml:
9065         * docs/gst/tmpl/gettext.sgml:
9066         * docs/gst/tmpl/gobject2gtk.sgml:
9067         * docs/gst/tmpl/grammar.tab.sgml:
9068         * docs/gst/tmpl/gst-i18n-app.sgml:
9069         * docs/gst/tmpl/gst-i18n-lib.sgml:
9070         * docs/gst/tmpl/gst_private.sgml:
9071         * docs/gst/tmpl/gstaggregator.sgml:
9072         * docs/gst/tmpl/gstarch.sgml:
9073         * docs/gst/tmpl/gstatomic_impl.sgml:
9074         * docs/gst/tmpl/gstbufferstore.sgml:
9075         * docs/gst/tmpl/gstdata_private.sgml:
9076         * docs/gst/tmpl/gstdisksink.sgml:
9077         * docs/gst/tmpl/gstdisksrc.sgml:
9078         * docs/gst/tmpl/gstelementfactory.sgml:
9079         * docs/gst/tmpl/gstextratypes.sgml:
9080         * docs/gst/tmpl/gstfakesink.sgml:
9081         * docs/gst/tmpl/gstfakesrc.sgml:
9082         * docs/gst/tmpl/gstfdsink.sgml:
9083         * docs/gst/tmpl/gstfdsrc.sgml:
9084         * docs/gst/tmpl/gstfilesink.sgml:
9085         * docs/gst/tmpl/gstfilesrc.sgml:
9086         * docs/gst/tmpl/gsthttpsrc.sgml:
9087         * docs/gst/tmpl/gstidentity.sgml:
9088         * docs/gst/tmpl/gstindexfactory.sgml:
9089         * docs/gst/tmpl/gstmarshal.sgml:
9090         * docs/gst/tmpl/gstmd5sink.sgml:
9091         * docs/gst/tmpl/gstmultidisksrc.sgml:
9092         * docs/gst/tmpl/gstmultifilesrc.sgml:
9093         * docs/gst/tmpl/gstpadtemplate.sgml:
9094         * docs/gst/tmpl/gstpipefilter.sgml:
9095         * docs/gst/tmpl/gstschedulerfactory.sgml:
9096         * docs/gst/tmpl/gstsearchfuncs.sgml:
9097         * docs/gst/tmpl/gstshaper.sgml:
9098         * docs/gst/tmpl/gstspider.sgml:
9099         * docs/gst/tmpl/gstspideridentity.sgml:
9100         * docs/gst/tmpl/gststatistics.sgml:
9101         * docs/gst/tmpl/gsttee.sgml:
9102         * docs/gst/tmpl/gsttimecache.sgml:
9103         * docs/gst/tmpl/gsttypefind.sgml:
9104         * docs/gst/tmpl/gsttypefindfactory.sgml:
9105         * docs/gst/tmpl/gstxmlregistry.sgml:
9106         * docs/gst/tmpl/gthread-cothreads.sgml:
9107         * docs/gst/tmpl/old/cothreads.sgml:
9108         * docs/gst/tmpl/old/cothreads_compat.sgml:
9109         * docs/gst/tmpl/old/gettext.sgml:
9110         * docs/gst/tmpl/old/gobject2gtk.sgml:
9111         * docs/gst/tmpl/old/grammar.tab.sgml:
9112         * docs/gst/tmpl/old/gst-i18n-app.sgml:
9113         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
9114         * docs/gst/tmpl/old/gst_private.sgml:
9115         * docs/gst/tmpl/old/gstaggregator.sgml:
9116         * docs/gst/tmpl/old/gstarch.sgml:
9117         * docs/gst/tmpl/old/gstatomic_impl.sgml:
9118         * docs/gst/tmpl/old/gstbufferstore.sgml:
9119         * docs/gst/tmpl/old/gstdata_private.sgml:
9120         * docs/gst/tmpl/old/gstdisksink.sgml:
9121         * docs/gst/tmpl/old/gstdisksrc.sgml:
9122         * docs/gst/tmpl/old/gstelementfactory.sgml:
9123         * docs/gst/tmpl/old/gstextratypes.sgml:
9124         * docs/gst/tmpl/old/gstfakesink.sgml:
9125         * docs/gst/tmpl/old/gstfakesrc.sgml:
9126         * docs/gst/tmpl/old/gstfdsink.sgml:
9127         * docs/gst/tmpl/old/gstfdsrc.sgml:
9128         * docs/gst/tmpl/old/gstfilesink.sgml:
9129         * docs/gst/tmpl/old/gstfilesrc.sgml:
9130         * docs/gst/tmpl/old/gsthttpsrc.sgml:
9131         * docs/gst/tmpl/old/gstidentity.sgml:
9132         * docs/gst/tmpl/old/gstindexfactory.sgml:
9133         * docs/gst/tmpl/old/gstmarshal.sgml:
9134         * docs/gst/tmpl/old/gstmd5sink.sgml:
9135         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
9136         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
9137         * docs/gst/tmpl/old/gstpadtemplate.sgml:
9138         * docs/gst/tmpl/old/gstpipefilter.sgml:
9139         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
9140         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
9141         * docs/gst/tmpl/old/gstshaper.sgml:
9142         * docs/gst/tmpl/old/gstspider.sgml:
9143         * docs/gst/tmpl/old/gstspideridentity.sgml:
9144         * docs/gst/tmpl/old/gststatistics.sgml:
9145         * docs/gst/tmpl/old/gsttee.sgml:
9146         * docs/gst/tmpl/old/gsttimecache.sgml:
9147         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
9148         * docs/gst/tmpl/old/gstxmlregistry.sgml:
9149         * docs/gst/tmpl/old/gthread-cothreads.sgml:
9150         * docs/gst/tmpl/old/types.sgml:
9151         * docs/gst/tmpl/types.sgml:
9152
9153         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
9154         gtkdoc-scan doesn't like files with the same name in different
9155         directories.
9156         * gst/elements/Makefile.am:
9157         * gst/elements/gstelements.c:
9158         * gst/elements/gsttypefind.c: 
9159         * gst/elements/gsttypefind.h:
9160         * gst/elements/gsttypefindelement.c:
9161         * gst/elements/gsttypefindelement.h:
9162
9163 2004-04-28  David Schleef  <ds@schleef.org>
9164
9165         A bunch of portability fixes, derived from Steve Lhomme's MSVC
9166         patch (bug #141317):
9167         * gst/gst-i18n-lib.h: Allow disabling gettext.
9168         * gst/gstatomic_impl.h: disable warning when it's dumb.
9169         * gst/gstclock.c: fix include
9170         * gst/gstcompat.h: fix variadic macro
9171         * gst/gstinfo.c: fix include
9172         * gst/gstmacros.h: add defines for inlines on MSVC
9173         * gst/gstplugin.c: fix includes
9174         * gst/gstregistry.c: fix includes
9175         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
9176         * gst/gstsystemclock.c: fix include
9177         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
9178         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
9179         * gst/registries/gstxmlregistry.c:
9180         (gst_xml_registry_parse_element_factory): fix use of non-portable
9181         functions
9182         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
9183         * libs/gst/control/dparammanager.h: same
9184
9185 2004-04-28  David Schleef  <ds@schleef.org>
9186
9187         Move a bunch of unused files to old/ with names that are
9188         not case-insensitive-unique.  These files still contain some
9189         useful information that needs to be merged into gstbin.sgml,
9190         etc., so they shouldn't be deleted yet.
9191         * docs/gst/tmpl/GstBin.sgml:
9192         * docs/gst/tmpl/GstBuffer.sgml:
9193         * docs/gst/tmpl/GstCaps.sgml:
9194         * docs/gst/tmpl/GstClock.sgml:
9195         * docs/gst/tmpl/GstCompat.sgml:
9196         * docs/gst/tmpl/GstData.sgml:
9197         * docs/gst/tmpl/GstElement.sgml:
9198         * docs/gst/tmpl/GstEvent.sgml:
9199         * docs/gst/tmpl/GstIndex.sgml:
9200         * docs/gst/tmpl/GstStructure.sgml:
9201         * docs/gst/tmpl/GstTag.sgml:
9202         * docs/gst/tmpl/old/GstBin.sgml:
9203         * docs/gst/tmpl/old/GstBuffer.sgml:
9204         * docs/gst/tmpl/old/GstCaps.sgml:
9205         * docs/gst/tmpl/old/GstClock.sgml:
9206         * docs/gst/tmpl/old/GstCompat.sgml:
9207         * docs/gst/tmpl/old/GstData.sgml:
9208         * docs/gst/tmpl/old/GstElement.sgml:
9209         * docs/gst/tmpl/old/GstEvent.sgml:
9210         * docs/gst/tmpl/old/GstIndex.sgml:
9211         * docs/gst/tmpl/old/GstStructure.sgml:
9212         * docs/gst/tmpl/old/GstTag.sgml:
9213
9214 2004-04-28  David Schleef  <ds@schleef.org>
9215
9216         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
9217         (gst_caps_append), (gst_caps_append_structure),
9218         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
9219         (gst_caps_set_simple), (gst_caps_set_simple_valist),
9220         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
9221         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
9222         (gst_caps_intersect), (gst_caps_normalize),
9223         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
9224         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
9225         * gst/gstcaps.h: use GST_IS_CAPS().
9226
9227 2004-04-26  David Schleef  <ds@schleef.org>
9228
9229         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
9230         assembly.  gcc doesn't handle it correctly. (bug #141083)
9231         * gst/gsttrashstack.h: same
9232
9233 2004-04-25  Benjamin Otte  <otte@gnome.org>
9234
9235         * gst/gstelement.c: (gst_element_change_state):
9236           fix assertion to do an int comparison
9237
9238 2004-04-25  Benjamin Otte  <otte@gnome.org>
9239
9240         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9241           better debugging output on error
9242
9243 2004-04-25  Benjamin Otte  <otte@gnome.org>
9244
9245         * gst/gstcaps.c: (gst_caps_subtract):
9246           fix memleak
9247
9248 2004-04-23  Benjamin Otte  <otte@gnome.org>
9249
9250         * gst/gstvalue.c: (gst_value_compare_buffer),
9251         (_gst_value_initialize):
9252           add comparison function for buffers
9253
9254 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9255
9256         * docs/pwg/pwg.xml:
9257           Just found out that this so-called "ima-wav" format is really
9258           just "dvi adpcm" (according to the MS WAV documentation). So
9259           renaming it. We didn't use it yet anyway.
9260
9261 2004-04-23  Benjamin Otte  <otte@gnome.org>
9262
9263         * gst/gstcaps.c: (gst_caps_is_always_compatible):
9264           call gst_caps_is_subset
9265
9266 2004-04-23  Benjamin Otte  <otte@gnome.org>
9267
9268         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
9269         (gst_caps_is_subset):
9270           add documentation
9271
9272 2004-04-23  Benjamin Otte  <otte@gnome.org>
9273           
9274         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
9275         (gst_caps_structure_subtract), (gst_caps_subtract),
9276         (gst_caps_structure_figure_out_union),
9277         (gst_caps_structure_simplify), (gst_caps_do_simplify):
9278           fix simplifying and subtracting not working correctly with optional
9279           properties
9280           solve assorted problems that make it now simplify ebven more
9281         * docs/gst/tmpl/gstcaps.sgml:
9282         * gst/gstcaps.h:
9283           make gst_caps_do_simplify return a bool to indicate if it simplified
9284         * testsuite/caps/simplify.c: (main):
9285           add more checks. The tests is quite a bit useless right now because
9286           the core is heavily simplifying itself.
9287         * testsuite/caps/caps.h:
9288           fix caps to contain all optional properties
9289
9290 2004-04-22  Benjamin Otte  <otte@gnome.org>
9291
9292         * docs/gst/tmpl/gstcaps.sgml:
9293         * docs/gst/tmpl/gstfilesrc.sgml:
9294         * docs/gst/tmpl/gststructure.sgml:
9295         * docs/gst/tmpl/gstvalue.sgml:
9296           update for recent API changes
9297         * gst/gstcaps.c: (gst_caps_do_simplify):
9298           fix to stop trying with a freed structure
9299         * gst/gstpad.c: (gst_pad_link_fixate):
9300           simplify caps
9301         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
9302           remove C++ comment
9303         * gst/gstpad.h:
9304           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
9305         * gst/gststructure.c: (gst_structure_value_get_generic_type),
9306         (gst_structure_to_string):
9307           keep the correct type when using lists of ranges
9308         * gst/gstvalue.c: (gst_value_list_prepend_value),
9309         (gst_value_list_append_value):
9310           copy the value before adding to the list (d'oh)
9311         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
9312         (gst_value_subtract_int_range_int_range):
9313           handle overflows correctly
9314         * gst/gstvalue.c: (gst_value_subtract_from_list):
9315           fix memleak
9316         * testsuite/caps/caps.h:
9317           add a caps that caused segfaults
9318
9319 2004-04-22  Benjamin Otte  <otte@gnome.org>
9320
9321         * testsuite/refcounting/pad.c: (main):
9322           fix test
9323
9324 2004-04-22  Benjamin Otte  <otte@gnome.org>
9325
9326         * gst/gstcaps.c: (gst_caps_subtract):
9327           allow subtracting ANY and EMPTY from ANY caps
9328
9329 2004-04-22  Benjamin Otte  <otte@gnome.org>
9330
9331         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
9332         (gst_caps_union):
9333           only simplify in functions that create new caps. Simplifying in
9334           gst_caps_append breaks tests.
9335
9336 2004-04-22  Benjamin Otte  <otte@gnome.org>
9337
9338         * gst/gstcaps.c: (gst_caps_structure_simplify):
9339           unset GValue after use
9340         * gst/gstcaps.c: (gst_caps_append), 
9341         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
9342           use gst_caps_simplify (reduces registry size by 30%)
9343         * gst/gstpad.c: (gst_pad_template_new):
9344           don't allow NULL caps
9345
9346 2004-04-22  Benjamin Otte  <otte@gnome.org>
9347
9348         * docs/gst/gstreamer-sections.txt:
9349           add gst_caps_do_simplify
9350         * gst/gstcaps.c:
9351           add documentation for gst_caps_do_simplify
9352         * gst/gstvalue.h:
9353           fix typo in gst_value_register_subtract_func declaration for gst-doc
9354
9355 2004-04-22  Benjamin Otte  <otte@gnome.org>
9356
9357         * gst/gstcaps.c: (gst_caps_from_string_inplace):
9358           fix bug when converting from empty string.
9359         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
9360         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
9361           use gst_caps_new_empty to allocate a new caps. Only that function
9362           allocates memory for caps now.
9363         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
9364         (gst_caps_remove_structure):
9365           add ability to remove one structure (but not to header yet)
9366         * gst/gstcaps.c: (gst_caps_compare_structures),
9367         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
9368         (gst_caps_structure_simplify), (gst_caps_do_simplify),
9369         * gst/gstcaps.h:
9370           add gst_caps_do_simplify that tries to simplify a caps in place.
9371           Deprecate old gst_caps_simplify function.
9372         * testsuite/caps/caps.h:
9373           add caps.h containing a common set of caps to test against.
9374         * testsuite/caps/sets.c: (check_caps), (main):
9375           use it.
9376         * testsuite/caps/.cvsignore:
9377         * testsuite/caps/Makefile.am:
9378         * testsuite/caps/simplify.c: (check_caps), (main):
9379           add test to check correctness and efficency of caps simplification.
9380
9381 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
9382
9383         reviewed by Benjamin Otte  <otte@gnome.org>
9384
9385         * gst/gstparse.c: (_gst_parse_escape):
9386           Free the GString used in _gst_parse_escape()
9387
9388 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9389
9390         * gst/gstpad.c: (gst_pad_link_negotiate):
9391           refuse to link if the link is not possible
9392         * configure.ac:
9393         * testsuite/Makefile.am:
9394         * testsuite/negotiation/.cvsignore:
9395         * testsuite/negotiation/Makefile.am:
9396         * testsuite/negotiation/pad_link.c: (main):
9397           add test that checks the above behaviour
9398
9399 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9400
9401         * docs/gst/gstreamer-sections.txt:
9402           add newly added API
9403
9404 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9405
9406         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9407         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
9408         (gst_filesrc_open_file), (gst_filesrc_close_file),
9409         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
9410         * gst/elements/gstfilesrc.h:
9411           add support for non-regular files (#140734)
9412
9413 2004-04-21  Benjamin Otte  <otte@gnome.org>
9414
9415         * gst/gstpad.c: (gst_pad_link_fixate):
9416           add sophisticated error checking code to see if fixation functions
9417           did their fixation right
9418
9419 2004-04-21  Benjamin Otte  <otte@gnome.org>
9420
9421         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
9422           check for ANY caps before appending/unioning
9423         * gst/gstcaps.c: (gst_caps_is_subset),
9424         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
9425         (gst_caps_structure_subtract), (gst_caps_subtract):
9426         * gst/gstcaps.h:
9427           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
9428           the API. deprecate gst_caps_is_equal_fixed
9429         * gst/gstpad.c: (gst_pad_try_set_caps):
9430         * gst/gstqueue.c: (gst_queue_link):
9431           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
9432         * gst/gststructure.c: (gst_structure_get_name_id):
9433         * gst/gststructure.h:
9434           add function gst_structure_get_name_id
9435         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
9436         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
9437         (gst_value_subtract_int_range_int_range),
9438         (gst_value_subtract_double_double_range),
9439         (gst_value_subtract_double_range_double),
9440         (gst_value_subtract_double_range_double_range),
9441         (gst_value_subtract_from_list), (gst_value_subtract_list),
9442         (gst_value_can_intersect), (gst_value_subtract),
9443         (gst_value_can_subtract), (gst_value_register_subtract_func),
9444         (_gst_value_initialize):
9445         * gst/gstvalue.h:
9446           add support for subtracting values from each other. Note that
9447           subtracting means subtracting as in set theory. Required for caps
9448           stuff above.
9449         * testsuite/caps/.cvsignore:
9450         * testsuite/caps/Makefile.am:
9451         * testsuite/caps/erathostenes.c: (erathostenes), (main):
9452         * testsuite/caps/sets.c: (check_caps), (main):
9453         * testsuite/caps/subtract.c: (check_caps), (main):
9454           add tests for subtraction and equality code.
9455
9456 2004-04-20  David Schleef  <ds@schleef.org>
9457
9458         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
9459         * gst/indexers/Makefile.am:
9460         * gst/schedulers/Makefile.am:
9461         * libs/gst/bytestream/Makefile.am:
9462         * libs/gst/control/Makefile.am:
9463         * libs/gst/getbits/Makefile.am:
9464
9465 2004-04-20  David Schleef  <ds@schleef.org>
9466
9467         * common/as-libtool.mak: Fine-tune DLL building.
9468         * configure.ac: Link plugins against libgstreamer.  Define plugindir
9469         (like gst-plugins)
9470         * examples/plugins/Makefile.am: remove plugindir
9471         * gst/autoplug/Makefile.am: DLL building fixes
9472         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
9473         Windows.
9474         * gst/elements/gstelements.c: Conditionally disable pipefilter.
9475         * gst/indexers/Makefile.am: DLL building fixes
9476         * gst/schedulers/Makefile.am: DLL building fixes.
9477         * libs/gst/bytestream/Makefile.am: DLL building fixes.
9478         * libs/gst/control/Makefile.am: same
9479         * libs/gst/getbits/Makefile.am: same
9480         * testsuite/Makefile.am: New dlopen directory
9481         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
9482         when dlopened.
9483         * testsuite/dlopen/dlopen_gst.c: (main): same
9484         * testsuite/dlopen/loadgst.c: (do_test): same
9485
9486 2004-04-20  David Schleef  <ds@schleef.org>
9487
9488         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
9489         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
9490
9491 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9492
9493         * gst/gstelement.c: (gst_element_wait),
9494         (gst_element_set_time_delay), (gst_element_change_state):
9495           Use GST_TIME_*
9496
9497 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9498
9499         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
9500         (gst_spider_identity_plug):
9501           improve debugging messages
9502         * gst/gstbin.c: (gst_bin_remove_func):
9503           make sure the state_change function is only called with simple state
9504           transitions
9505
9506 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9507
9508         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
9509         (gst_fakesink_set_property), (gst_fakesink_chain):
9510         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
9511         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
9512         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
9513         * gst/elements/gstidentity.c: (gst_identity_chain),
9514         (gst_identity_set_property):
9515         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
9516         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
9517           add warnings to _set_property for unknown arguments
9518           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
9519
9520 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9521
9522         * Makefile.am:
9523         * docs/manuals.mak:
9524           add .po file download snippet
9525           fix a bug in the doc makefile
9526
9527 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9528
9529         * Makefile.am:
9530         * po/LINGUAS:
9531         * po/en_GB.po:
9532           Added en_GB translation (Gareth Owen)
9533
9534 2004-04-20  Johan Dahlin  <johan@gnome.org>
9535
9536         * gst/gstpad.c (_invent_event): Clean up
9537
9538 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9539
9540         * testsuite/caps/filtercaps.c: (main):
9541           fix test to test things correctly (caps are complicated)
9542
9543 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9544
9545         * testsuite/caps/Makefile.am:
9546         * testsuite/caps/filtercaps.c: (main):
9547           add test (that doesn't work right now, but should)
9548
9549 2004-04-19  David Schleef  <ds@schleef.org>
9550
9551         * configure.ac: Add test for allowing unaligned access.  Add define
9552         to put in gstconfig.h.
9553         * docs/gst/gstreamer-sections.txt: New symbols
9554         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
9555         * docs/gst/tmpl/gstfilesrc.sgml:
9556         * docs/gst/tmpl/gstparse.sgml:
9557         * docs/gst/tmpl/gsttypes.sgml:
9558         * docs/gst/tmpl/gstutils.sgml:
9559         * docs/gst/tmpl/gstvalue.sgml:
9560         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
9561         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
9562         on most !i386/!powerpc architectures.  From Daniel Gazard
9563         <daniel.gazard@free.fr>.  (bug #140156)
9564         * po/af.po: Check in changes made by gettext.
9565         * po/az.po:
9566         * po/fr.po:
9567         * po/nl.po:
9568         * po/sr.po:
9569         * po/sv.po:
9570
9571 2004-04-20  Benjamin Otte  <otte@gnome.org>
9572
9573         * gst/schedulers/entryscheduler.c: 
9574         (gst_entry_scheduler_yield):
9575           refuse to yield when decoupled elements insist on doing that.
9576           At least it's better than crashing
9577
9578 2004-04-19  David Schleef  <ds@schleef.org>
9579
9580         * docs/libs/Makefile.am: Change sinclude to include
9581         * docs/gst/Makefile.am: same
9582         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
9583
9584 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9585
9586         * po/LINGUAS:
9587         * po/uk.po:
9588           Added Ukrainian translation (Maxim V. Dziumanenko)
9589
9590 2004-04-19  Johan Dahlin  <johan@gnome.org>
9591
9592         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
9593         checking here, do it before calling the function.
9594         Clean up, use for loops instead of while loops while iterating
9595         over lists.
9596
9597         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
9598         in debug message.
9599         (gst_spider_create_and_plug): Improve debug message.
9600         General: Replace while loops which iterates over GLists with for
9601         loops. Which are much cleaner, improves readability, especially
9602         for gst_spider_identity_plug
9603
9604         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
9605         fixes bug 140477
9606
9607 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9608
9609         * po/LINGUAS:
9610         * po/tr.po:
9611           Added Turkish translation (Baris Cicek)
9612
9613 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9614
9615         * docs/faq/troubleshooting.xml:
9616           Mention gst-register in the FAQ (fixes 139045).
9617
9618 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9619
9620         * docs/gst/gstreamer-sections.txt:
9621
9622 2004-04-17  Benjamin Otte  <otte@gnome.org>
9623
9624         * gst/gstelement.c: (gst_element_dispose):
9625           simplify
9626         * gst/gstpad.c: (gst_pad_call_chain_function):
9627           don't create loads of events due to bad macro usage
9628
9629 2004-04-16  David Schleef  <ds@schleef.org>
9630
9631         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
9632         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
9633         * gst/gstvalue.c: (gst_value_serialize_buffer),
9634         (gst_value_deserialize_buffer), (gst_type_is_fixed),
9635         (_gst_value_initialize): Create a new function gst_type_is_fixed()
9636         to indicate types that are fixed wrt caps or not.  Switching to
9637         this function fixes (bug #140298).
9638         * gst/gstvalue.h:
9639
9640 2004-04-16  David Schleef  <ds@schleef.org>
9641
9642         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
9643         for GST_UNALIGNED_ACESS, since we essentially know which archs
9644         are ok.
9645
9646 2004-04-17  Benjamin Otte  <otte@gnome.org>
9647
9648         * docs/gst/Makefile.am:
9649           ignore gst/parse directory when building docs (fixes #140205)
9650
9651 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9652
9653         * testsuite/refcounting/mem.c: (vmsize):
9654           do error checking
9655
9656 2004-04-16  Johan Dahlin  <johan@gnome.org>
9657
9658         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
9659         and gst_pad_call_get_function.
9660
9661 2004-04-15  David Schleef  <ds@schleef.org>
9662
9663         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
9664         checks if we can access unaligned memory.
9665         * configure.ac: Use it.
9666
9667 2004-04-16  Benjamin Otte  <otte@gnome.org>
9668
9669         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
9670         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9671         * gst/elements/gstfilesrc.h:
9672           s/seek_happened/need_discont/ and require discont before sending any
9673           data
9674
9675 2004-04-15  David Schleef  <ds@schleef.org>
9676
9677         * gst/gstvalue.c: (gst_value_serialize_buffer),
9678         (gst_value_deserialize_buffer), (_gst_value_initialize):
9679         Register these types as fundamental types. (bug #140015)
9680
9681 2004-04-16  Benjamin Otte  <otte@gnome.org>
9682
9683         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
9684         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
9685         (gst_pad_pull):
9686           implement enforcing discont events before buffers are passed. This
9687           allows state changes of only some elements and later correctly going
9688           on where they left off (or in short: you can now set audio sinks to
9689           NULL to release the device when the pipeline is paused)
9690         * gst/gstpad.c: (gst_pad_call_chain_function),
9691         (gst_pad_call_get_function):
9692         * gst/gstpad.h:
9693           add gst_pad_call_chain_function and gst_pad_call_get_function for
9694           scheduler interaction. They are required because of the changes
9695           above.
9696         * gst/schedulers/entryscheduler.c: (get_buffer),
9697         (gst_entry_scheduler_chain_wrapper),
9698         (gst_entry_scheduler_get_wrapper),
9699         (gst_entry_scheduler_state_transition),
9700         (gst_entry_scheduler_pad_link):
9701         * gst/schedulers/gstbasicscheduler.c:
9702         (gst_basic_scheduler_chain_wrapper),
9703         (gst_basic_scheduler_src_wrapper),
9704         (gst_basic_scheduler_chainhandler_proxy),
9705         (gst_basic_scheduler_gethandler_proxy),
9706         (gst_basic_scheduler_cothreaded_chain),
9707         (gst_basic_scheduler_chain_elements):
9708         * gst/schedulers/gstoptimalscheduler.c:
9709         (get_group_schedule_function), (pad_clear_queued),
9710         (gst_opt_scheduler_pad_link):
9711           use the new functions instead of calling get/chain-functions
9712           directly.
9713
9714 2004-04-15  David Schleef  <ds@schleef.org>
9715
9716         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
9717         * docs/gst/tmpl/gstinfo.sgml: same
9718         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
9719         gtk-doc put here.
9720         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
9721         * examples/queue/queue.c: (main):  We iterate pipelines, not
9722         bins.  (bug #139996)
9723
9724 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9725
9726         * docs/pwg/advanced-types.xml:
9727           Add MS RLE support. Also document Qt RLE although I have no sample
9728           files for that yet. And document an extra property for ADPCM.
9729
9730 2004-04-15  David Schleef  <ds@schleef.org>
9731
9732         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
9733         (_gst_plugin_fault_handler_setup):  Disable more stuff on
9734         Windows.
9735
9736 2004-04-15  David Schleef  <ds@schleef.org>
9737
9738         * gst/gstinfo.c: (_gst_debug_init): Change some internal
9739         symbol names to not conflict with new gstinfo.h symbols.
9740         * gst/gstinfo.h: Add inline functions for all those crazy
9741         compilers that don't know how to handle variadic macros (MSVC).
9742
9743 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9744
9745         * configure.ac: bump nano to 1
9746
9747 === release 0.8.1 ===
9748
9749 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9750
9751         * NEWS:
9752         * RELEASE:
9753         * configure.ac:
9754           releasing 0.8.1, "Snow Brigade"
9755
9756 2004-04-14  David Schleef  <ds@schleef.org>
9757
9758         * testsuite/Makefile.am: define tests_ignore
9759         * testsuite/Rules: Added new tests_ignore, which get compiled,
9760         but not run (generally because they're inconsistent or have
9761         heisenbugs).  Now we can ensure all the .c files compile in
9762         testsuite/.
9763         * testsuite/bins/Makefile.am: define tests_ignore
9764         * testsuite/bytestream/Makefile.am:
9765         * testsuite/caps/Makefile.am:
9766         * testsuite/clock/Makefile.am:
9767         * testsuite/debug/Makefile.am:
9768         * testsuite/debug/global.c: (gst_debug_log_one),
9769         (gst_debug_log_two): Fix compilation problem.
9770         * testsuite/dynparams/Makefile.am:
9771         * testsuite/elements/Makefile.am:
9772         * testsuite/ghostpads/Makefile.am:
9773         * testsuite/indexers/Makefile.am:
9774         * testsuite/parse/Makefile.am:
9775         * testsuite/plugin/Makefile.am:
9776         * testsuite/refcounting/Makefile.am:
9777         * testsuite/refcounting/element_pad.c: (main): Don't return leak
9778         results, because it's not calculated correctly.
9779         * testsuite/refcounting/pad.c: (main): same
9780         * testsuite/states/Makefile.am:
9781         * testsuite/tags/Makefile.am:
9782         * testsuite/threads/Makefile.am:
9783
9784 2004-04-14  David Schleef  <ds@schleef.org>
9785
9786         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
9787         generating bad code around the cpu detection asm code.
9788
9789 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
9790
9791         * tools/gst-inspect.c: (print_element_info):
9792           print numeric version of rank as well, since we added some - 1
9793           rank values to elements
9794
9795 2004-04-13  David Schleef  <ds@schleef.org>
9796
9797         * configure.ac:  Disable various code when compiling for MinGW.
9798         * gst/elements/Makefile.am:
9799         * gst/elements/gstelements.c:
9800         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
9801         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
9802         * gst/registries/gstxmlregistry.c: (make_dir):
9803
9804 2004-04-13  David Schleef  <ds@schleef.org>
9805
9806         * gst/Makefile.am:
9807         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
9808         assembly.
9809         * gst/gstcpuid_i386.s: remove
9810
9811 2004-04-13  David Schleef  <ds@schleef.org>
9812
9813         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
9814         seems to think it needs to be done.
9815         * docs/gst/tmpl/gstfakesink.sgml:
9816         * docs/gst/tmpl/gstfakesrc.sgml:
9817         * docs/gst/tmpl/gstfdsink.sgml:
9818         * docs/gst/tmpl/gstfdsrc.sgml:
9819         * docs/gst/tmpl/gstfilesink.sgml:
9820         * docs/gst/tmpl/gstfilesrc.sgml:
9821         * docs/gst/tmpl/gstidentity.sgml:
9822         * docs/gst/tmpl/gstmd5sink.sgml:
9823         * docs/gst/tmpl/gstmultifilesrc.sgml:
9824         * docs/gst/tmpl/gstpipefilter.sgml:
9825         * docs/gst/tmpl/gstshaper.sgml:
9826         * docs/gst/tmpl/gstspider.sgml:
9827         * docs/gst/tmpl/gstspideridentity.sgml:
9828         * docs/gst/tmpl/gststatistics.sgml:
9829         * docs/gst/tmpl/gsttee.sgml:
9830         * docs/gst/tmpl/gsttypefind.sgml:
9831         * docs/gst/tmpl/gstutils.sgml:
9832
9833 2004-04-13  David Schleef  <ds@schleef.org>
9834
9835         * configure.ac: Changes to remove POSIXisms (mmap in this case)
9836         and to build DLLs on Windows.
9837         * gst/Makefile.am:
9838         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9839         (gst_filesrc_open_file):
9840         * gst/schedulers/Makefile.am:
9841
9842 2004-04-13  David Schleef  <ds@schleef.org>
9843
9844         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
9845         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
9846         fixating lists.
9847
9848 2004-04-12  David Schleef  <ds@schleef.org>
9849
9850         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
9851         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
9852         to using it.
9853         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
9854         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
9855         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
9856         * gst/gststructure.c: (gst_structure_set_valist),
9857         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
9858         support for buffers.
9859         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
9860         intended to be const.
9861         * gst/gsttag.h: same
9862         * gst/gstvalue.c: (gst_value_serialize_buffer),
9863         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
9864         to (de)serialize buffers.
9865         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
9866         * testsuite/caps/string-conversions.c: (main):
9867         * testsuite/caps/value_serialize.c: add new test
9868
9869 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9870
9871         * docs/pwg/advanced-types.xml:
9872           Document MS video 1 (video/x-msvideocodec) mimetype/format.
9873
9874 2004-04-11  Benjamin Otte  <otte@gnome.org>
9875
9876         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
9877           rename categories to basic_*
9878         * gst/schedulers/gstbasicscheduler.c: 
9879         (gst_basic_scheduler_chain_wrapper),
9880         (gst_basic_scheduler_chainhandler_proxy),
9881         (gst_basic_scheduler_gethandler_proxy),
9882         (gst_basic_scheduler_eventhandler_proxy):
9883           debugging category fixes - put common stuff in log category
9884         * gst/schedulers/gstbasicscheduler.c: 
9885         (gst_basic_scheduler_chain_elements):
9886           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
9887           active and linking two active chains
9888
9889 2004-04-10  Benjamin Otte  <otte@gnome.org>
9890
9891         * docs/pwg/intro-preface.xml:
9892           fix dead links and remove reference to Wiki
9893
9894 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9895
9896         * gst/schedulers/gstbasicscheduler.c:
9897           make sure we can switch back to the main function if we're still in
9898           the main function (supposed to fix #139617)
9899         * gst/schedulers/gthread-cothreads.h:
9900           don't throw an error when switching to the same cothread
9901
9902 2004-04-09  Benjamin Otte  <otte@gnome.org>
9903
9904         * gst/gstbin.c: (gst_bin_get_type):
9905         * gst/gstclock.c: (gst_clock_get_type):
9906         * gst/gstindex.c: (gst_index_get_type):
9907         * gst/gstobject.c: (gst_object_get_type),
9908         (gst_signal_object_get_type):
9909         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
9910         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
9911         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
9912         * gst/gstqueue.c: (gst_queue_get_type):
9913         * gst/gstregistry.c: (gst_registry_get_type):
9914         * gst/gstsystemclock.c: (gst_system_clock_get_type):
9915         * gst/gstthread.c: (gst_thread_get_type):
9916           don't use memchunks for these objects, use malloc instead
9917
9918 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
9919
9920         * docs/gst/.cvsignore:
9921         * docs/gst/Makefile.am:
9922         * docs/gst/gstreamer-sections.txt:
9923         * docs/gst/tmpl/gstaggregator.sgml:
9924         * docs/gst/tmpl/gstbuffer.sgml:
9925         * docs/gst/tmpl/gstclock.sgml:
9926         * docs/gst/tmpl/gstelement.sgml:
9927         * docs/gst/tmpl/gstfakesink.sgml:
9928         * docs/gst/tmpl/gstfakesrc.sgml:
9929         * docs/gst/tmpl/gstfdsink.sgml:
9930         * docs/gst/tmpl/gstfdsrc.sgml:
9931         * docs/gst/tmpl/gstfilesink.sgml:
9932         * docs/gst/tmpl/gstfilesrc.sgml:
9933         * docs/gst/tmpl/gstidentity.sgml:
9934         * docs/gst/tmpl/gstindex.sgml:
9935         * docs/gst/tmpl/gstinfo.sgml:
9936         * docs/gst/tmpl/gstmd5sink.sgml:
9937         * docs/gst/tmpl/gstmultifilesrc.sgml:
9938         * docs/gst/tmpl/gstpad.sgml:
9939         * docs/gst/tmpl/gstpipefilter.sgml:
9940         * docs/gst/tmpl/gstpipeline.sgml:
9941         * docs/gst/tmpl/gstpluginfeature.sgml:
9942         * docs/gst/tmpl/gstqueue.sgml:
9943         * docs/gst/tmpl/gstregistry.sgml:
9944         * docs/gst/tmpl/gstscheduler.sgml:
9945         * docs/gst/tmpl/gstshaper.sgml:
9946         * docs/gst/tmpl/gstspider.sgml:
9947         * docs/gst/tmpl/gstspideridentity.sgml:
9948         * docs/gst/tmpl/gststatistics.sgml:
9949         * docs/gst/tmpl/gstsystemclock.sgml:
9950         * docs/gst/tmpl/gsttee.sgml:
9951         * docs/gst/tmpl/gstthread.sgml:
9952         * docs/gst/tmpl/gsttypefind.sgml:
9953         * docs/gst/tmpl/gstutils.sgml:
9954           further doc build fixes
9955
9956 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
9957
9958         * docs/gst/Makefile.am:
9959           make docs exit on scanning problems
9960           fix nonsrcdir build issues
9961         * docs/gst/gstreamer-sections.txt:
9962           adding stuff from -unused
9963         * gst/gstqueue.h:
9964           create GstQueueSize
9965         * gst/schedulers/cothreads_compat.h:
9966           fix cothread warnings
9967
9968 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
9969
9970         * docs/gst/gstreamer-sections.txt:
9971           remove defines deprecated by Benjamin
9972
9973 2004-04-07  Benjamin Otte  <otte@gnome.org>
9974
9975         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
9976           when the buffer is complete, don't check if other buffers are needed
9977         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
9978           check that the offset is >0 so we don't try to read before the
9979           beginning of the file
9980         * gst/gstpad.c: (gst_pad_set_pad_template):
9981           sink the template, so we don't end up with 130k pad templates
9982
9983 2004-04-06  Benjamin Otte  <otte@gnome.org>
9984
9985         * gst/autoplug/gstspider.c: (gst_spider_link_add):
9986           don't ref the element, adding already reffed it. And we didn't unref
9987           it later anyway... (huge memleak when you used many spider elements)
9988         * gst/gstelement.c: (gst_element_base_class_finalize):
9989         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
9990         (gst_element_register):
9991         * gst/gsturi.c: (gst_element_make_from_uri):
9992           use gst_object_(un)ref instead of g_object(un)ref
9993
9994 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9995
9996         * gst/gstbuffer.h:
9997           remove macro that wouldn't work anymore because struct member has
9998           been removed.
9999         * gst/schedulers/entryscheduler.c: (schedule_forward):
10000           fix segfault for unconnected pads
10001         
10002 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10003
10004         reviewed by David Schleef <ds@schleef.org>
10005
10006         * gst/gstinfo.h:
10007           *_FORMAT modifiers should require putting a % in front of them for
10008           consistency reasons.
10009
10010 2004-04-05  Colin Walters  <walters@redhat.com>
10011
10012         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
10013         space.
10014
10015 2004-04-05  Benjamin Otte  <otte@gnome.org>
10016
10017         * configure.ac:
10018         * gst/Makefile.am:
10019         * gst/gst_private.h:
10020         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
10021           add support for detecting if GStreamer runs inside valgrind.
10022           requires valgrind (d'oh) and --enable-debug for correct cdetection.
10023           print a big message in valgrind that GStreamer has detected it's
10024           running inside and might now use different code.
10025         * gst/gstmemchunk.c: (populate), (free_area),
10026         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
10027         (gst_mem_chunk_free):
10028           flag memchunks for valgrind, so it can detect leaking of chunks.
10029           This allows detecting leaks of GstBuffer and GstEvent correctly
10030           inside valgrind.
10031
10032 2004-04-05  David Schleef  <ds@schleef.org>
10033
10034         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
10035           jensgr@gmx.net (Jens Granseuer)
10036
10037 2004-04-05  David Schleef  <ds@schleef.org>
10038
10039         * gst/gstbuffer.c: (_gst_buffer_sub_free),
10040         (gst_buffer_default_free), (gst_buffer_default_copy),
10041         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
10042         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
10043         structures in one place.
10044
10045 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10046
10047         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
10048           (GST_TIME_FORMAT, GST_TIME_ARGS)
10049
10050 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10051
10052         * testsuite/elements/Makefile.am:
10053           disable test until it stops breaking make distcheck
10054
10055 2004-04-05  Johan Dahlin  <johan@gnome.org>
10056
10057         * po/sv.po: Updated translation
10058
10059 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10060
10061         * gst/gstplugin.c: (gst_plugin_load_file):
10062           fix segfault for when original plugin was loaded statically
10063
10064 2004-04-05  Benjamin Otte  <otte@gnome.org>
10065
10066         * testsuite/debug/category.c: (main):
10067         * testsuite/debug/commandline.c: (main):
10068         * testsuite/debug/output.c: (main):
10069           fix tests to work again with debugging enabled
10070
10071 2004-04-05  Benjamin Otte  <otte@gnome.org>
10072
10073         * gst/schedulers/gstbasicscheduler.c:
10074         (gst_basic_scheduler_pad_link):
10075           fix to work with recent scheduling changes
10076
10077 2004-04-05  Benjamin Otte  <otte@gnome.org>
10078
10079         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
10080         prepareChangeLog doesn't work when cvs indents):
10081           don't throw an error when no element can be scheduled, there's too
10082           many weird reasons why it doesn't work. Return STOPPED instead.
10083           decoupled elemts' schedulability doesn't depend on bufpens.
10084
10085 2004-04-04  Benjamin Otte  <otte@gnome.org>
10086
10087         * gst/schedulers/gstbasicscheduler.c:
10088         (gst_basic_scheduler_pad_select):
10089           fix uninitialized variable warnings
10090
10091 2004-04-04  Benjamin Otte  <otte@gnome.org>
10092
10093         * gst/gstpad.c: (gst_pad_collect_valist):
10094           fix uninitialized variable warning
10095         * gst/schedulers/entryscheduler.c: (schedule_forward):
10096           fix shadowed variable
10097
10098 2004-04-04  Benjamin Otte  <otte@gnome.org>
10099
10100         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
10101         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
10102         (gst_pad_select):
10103         * gst/gstpad.h:
10104         * gst/gstscheduler.c: (gst_scheduler_pad_select),
10105         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
10106         * gst/gstscheduler.h:
10107           implement gst_pad_collect as replacement for gst_pad_select.
10108           deprecate gst_pad_select and gst_scheduler_(un)lock_element
10109           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
10110           new pad_select, lock and unlock calls.
10111         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
10112         * gst/cothreads.h:
10113         * gst/schedulers/cothreads_compat.h:
10114         * gst/schedulers/gthread-cothreads.h:
10115           remove unused cothread_lock and cothread_unlock calls
10116         * gst/schedulers/entryscheduler.c:
10117         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
10118         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
10119         (gst_entry_scheduler_pad_select):
10120           update to new API
10121         * gst/schedulers/gstbasicscheduler.c:
10122         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
10123         (gst_basic_scheduler_pad_select):
10124           remove useless lock and unlock calls, update pad_select to new API
10125           (untested)
10126         * gst/schedulers/gstoptimalscheduler.c:
10127         (gst_opt_scheduler_class_init):
10128           remove useless select, lock and unlock function calls
10129         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
10130           use gst_pad_collect instead of gst_pad_select
10131
10132 2004-04-04  Benjamin Otte  <otte@gnome.org>
10133
10134         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
10135         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
10136         (schedule_next_element), (print_entry):
10137           add can_schedule_pad to handle element states.
10138           add schedule_forward to select the correct entry to schedule next
10139
10140 2004-04-03  Benjamin Otte  <otte@gnome.org>
10141
10142         * gst/schedulers/entryscheduler.c: 
10143           remove unused variable, fix error inside Rb, fix compile warning in
10144           unreachable code
10145
10146 2004-04-03  Benjamin Otte  <otte@gnome.org>
10147
10148         * gst/schedulers/entryscheduler.c:
10149           completely revamp the inner workings, so it's a lot easier to
10150           understand and extend
10151
10152 2004-04-03  Andy Wingo  <wingo@pobox.com>
10153
10154         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
10155         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
10156         This allows better introspection of pipeline topology.
10157         (add_to_chain): Don't do trickery to put loop elements first;
10158         rather, queue a chain sort by marking the chain as dirty.
10159         (remove_from_chain): Mark the chain dirty.
10160         (sort_chain): New function. Sorts the group list so that terminal
10161         sinks are first. This means elements on the sink side will be
10162         preferentially sscheduled before elements on the src side of the
10163         pipeline.
10164         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
10165         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
10166         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
10167         (group_inc_link): Change argument and variable names to match the
10168         new link structure member names (src and sink).
10169         (group_dec_link): Add some description
10170
10171 2004-04-03  Benjamin Otte  <otte@gnome.org>
10172
10173         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
10174         * gst/gstinfo.h:
10175         * testsuite/debug/category.c: (main):
10176         * testsuite/debug/commandline.c: (main):
10177         * testsuite/debug/output.c: (main):
10178         * testsuite/debug/printf_extension.c: (main):
10179           fix to successfully build and test with --disable-gst-debug
10180           configure switch (fixes #138705)
10181
10182 2004-04-03  Benjamin Otte  <otte@gnome.org>
10183
10184         * docs/pwg/building-boiler.xml:
10185           add cvs login line and s/anonymous/anoncvs/
10186
10187 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
10188
10189         reviewed by Benjamin Otte  <otte@gnome.org>
10190
10191         * gst/gststructure.c: (gst_structure_free):
10192           memleak fix: free fields array (partial fix for #134839)
10193
10194 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10195
10196         * docs/random/ds/0.9-suggested-changes:
10197           Add a note to change handoff use in fakesrc to be usable in
10198           a more generic way (fakesrc should be renamed to appsrc or so).
10199         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
10200           Change signal type to scope, so we can fill the buffer in the
10201           handoff handler (that's the whole use of this signal...).
10202
10203 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10204
10205         * docs/pwg/other-ntoone.xml:
10206           Document muxers and n-to-1 elements.
10207
10208 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
10209
10210         * gst/registries/gstxmlregistry.c
10211         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
10212         determine if a file is a G_MODULE. The old one discards paths
10213         containing "so" somewhere in the middle. My home directory is
10214         called "soto". Go figure...
10215
10216 2004-03-31  David Schleef  <ds@schleef.org>
10217
10218         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
10219         to eventually deprecate gst_buffer_merge().  (bug: #136408)
10220         * gst/gstbuffer.h:
10221
10222 2004-03-31  David Schleef  <ds@schleef.org>
10223
10224         * gst/gstvalue.c: (gst_value_union_int_int_range),
10225         (gst_value_union_int_range_int_range), (gst_value_can_union),
10226         (gst_value_union), (_gst_value_initialize):  Add some union
10227         implementations.  We didn't have any previously.
10228         * testsuite/caps/Makefile.am:
10229         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
10230         (gst_audioscale_getcaps), (test_caps), (main): A little test
10231         that is the same as the caps manipulation in audioscale.
10232
10233 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10234
10235         * docs/faq/general.xml:
10236           add entry about "does gst support format X?"
10237
10238 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10239
10240         * gst/gstthread.c:
10241           fix docs
10242         * gst/gstutils.h:
10243           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
10244
10245 2004-03-30  Benjamin Otte  <otte@gnome.org>
10246
10247         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10248           set the offset of the buffer to the requested offset
10249         * gst/elements/gsttypefind.c: (stop_typefinding):
10250           revert patch 1.18 (which I unfortunately don't know the reason for).
10251           This is needed to allow downstream elements to seek. Otherwise
10252           typefind might overwrite a previous seek by downstream elements.
10253           This lead to errors with id3tag and typefind on some mp3s.
10254         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10255         (gst_entry_scheduler_iterate):
10256           be more verbose when debugging
10257
10258 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10259
10260         * gst/gstcaps.c: (gst_caps_from_string_inplace):
10261           make sure we don't get NULL strings
10262
10263 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10264
10265         * gst/gstcaps.c:
10266         * gst/gstelement.c:
10267         * gst/gstelementfactory.c: (gst_element_factory_get_type):
10268         * gst/gstindex.c: (gst_index_resolver_get_type),
10269         (gst_index_get_type), (gst_index_factory_get_type):
10270         * gst/gstinfo.c:
10271         * gst/gstpad.c:
10272         * gst/gstplugin.c:
10273         * gst/gsturi.c: (gst_uri_handler_get_type):
10274         * gst/gstvalue.c:
10275           first batch of documentation fixes
10276
10277 2004-03-29  David Schleef  <ds@schleef.org>
10278
10279         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
10280         * docs/gst/gstreamer-docs.sgml:  More hacking
10281         * docs/gst/gstreamer-sections.txt:
10282         * docs/gst/tmpl/cothreads_compat.sgml:
10283         * docs/gst/tmpl/gstcaps.sgml:
10284         * docs/gst/tmpl/gstclock.sgml:
10285         * docs/gst/tmpl/gstelement.sgml:
10286         * docs/gst/tmpl/gstevent.sgml:
10287         * docs/gst/tmpl/gstpad.sgml:
10288         * docs/gst/tmpl/gstutils.sgml:
10289         * docs/gst/tmpl/gstxml.sgml:
10290         * docs/gst/tmpl/gthread-cothreads.sgml:
10291         * docs/random/ds/0.9-suggested-changes:
10292         * gst/elements/gstfakesink.h: doc fixes
10293         * gst/elements/gstfakesrc.h: doc fixes
10294         * gst/gstcaps.c: doc fixes
10295         * gst/gstcaps.h: doc fixes
10296         * gst/gstelement.c: doc fixes
10297         * gst/gstelement.h: doc fixes
10298         * gst/gstindex.c: doc fixes
10299         * gst/gstinfo.c: doc fixes
10300         * gst/gstpad.c: doc fixes
10301         * gst/gstpad.h: doc fixes
10302         * gst/gstplugin.c: doc fixes
10303         * gst/gsttypefind.h: doc fixes
10304         * gst/gsturi.c: doc fixes
10305         * gst/gstvalue.c: doc fixes
10306
10307 2004-03-29  Colin Walters  <walters@redhat.com>
10308
10309         * gst/registries/gstxmlregistry.c (get_time)
10310         (plugin_times_older_than_recurse):
10311         Use the result of stat to determine whether a path is a file,
10312         so we don't attempt to opendir() files.
10313
10314 2004-03-29  Benjamin Otte  <otte@gnome.org>
10315
10316         * gst/gstpad.c: (gst_pad_set_explicit_caps):
10317           print caps in debugging output when setting caps failed
10318         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10319         (schedule_next_element), (get_buffer), (run_chainhandler),
10320         (element_may_start), (gst_entry_scheduler_chain_handler),
10321         (gst_entry_scheduler_get_handler),
10322         (gst_entry_scheduler_state_transition),
10323         (gst_entry_scheduler_pad_link):
10324           make this scheduler a testcase for mandatory
10325           discont-before-first-buffer which is needed if we want to allow apps
10326           to release the sound device.
10327           add SCHED_ASSERT macro to print scheduler state before an assertion
10328           triggers.
10329
10330 2004-03-29  Benjamin Otte  <otte@gnome.org>
10331
10332         * COPYING:
10333           replace by LGPL (former COPYING.LIB). The core is completely
10334           licensed LGPL.
10335         * COPYING.LIB:
10336           remove
10337
10338 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10339
10340         * po/af.po:
10341         * po/sv.po:
10342           updated Afrikaans and Swedish
10343
10344 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10345
10346         * po/LINGUAS:
10347         * po/az.po:
10348           adding Azerbaijani (Mətin Əmirov)
10349
10350 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
10351
10352         * gst/gstelement.h: 
10353         * gst/gstelement.c (gst_element_set_time_delay): New function for
10354         setting element time taking into account a hardware buffering
10355         delay.
10356         (gst_element_set_time): Now just an invocation of
10357         gst_element_set_time_delay.
10358         * gst/gstclock.h: 
10359         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
10360         allowing to set event times in the future.
10361         (gst_clock_get_event_time): Now just an invocation of
10362         gst_clock_get_event_time_delay.
10363
10364 2004-03-28  Benjamin Otte  <otte@gnome.org>
10365
10366         * gst/gstbin.c: (gst_bin_set_element_sched),
10367         (gst_bin_unset_element_sched):
10368           don't add decoupled elements to schedulers - otherwise it's
10369           impossible to control if a link to a decoupled element was already
10370           removed from a scheduler or not.
10371         * gst/schedulers/cothreads_compat.h:
10372         * gst/schedulers/gthread-cothreads.h:
10373           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
10374           is no "unused" warning.
10375         * gst/schedulers/Makefile.am:
10376         * gst/schedulers/entryscheduler.c:
10377           add new scheduler, based on ideas from talking to David and Martin.
10378           It's supposed to be small and correct. Currently it's also slow (but
10379           it's not noticable)
10380         * examples/retag/retag.c: (main):
10381         * testsuite/bytestream/test1.c: (main):
10382           fix missing NULLs at end of variadic functions
10383         * testsuite/elements/.cvsignore:
10384           update
10385
10386 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
10387
10388         * gst/gstevent.h:
10389         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
10390
10391 2004-03-25  David Schleef  <ds@schleef.org>
10392
10393         * docs/gst/gstreamer-sections.txt:  More doc hacking.
10394         * docs/gst/tmpl/gstaggregator.sgml:
10395         * docs/gst/tmpl/gstautoplugfactory.sgml:
10396         * docs/gst/tmpl/gstbin.sgml:
10397         * docs/gst/tmpl/gstbuffer.sgml:
10398         * docs/gst/tmpl/gstbufferstore.sgml:
10399         * docs/gst/tmpl/gstfakesink.sgml:
10400         * docs/gst/tmpl/gstfakesrc.sgml:
10401         * docs/gst/tmpl/gstmd5sink.sgml:
10402         * docs/gst/tmpl/gstreamer-unused.sgml:
10403         * docs/gst/tmpl/gstsearchfuncs.sgml:
10404         * docs/gst/tmpl/gstshaper.sgml:
10405         * docs/gst/tmpl/gstspider.sgml:
10406         * docs/gst/tmpl/gsttee.sgml:
10407         * docs/gst/tmpl/gstutils.sgml:
10408         * docs/gst/tmpl/gstvalue.sgml:
10409         * docs/gst/tmpl/gstxml.sgml:
10410         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
10411         and we don't support it.
10412         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
10413         (gst_use_threads), (gst_has_threads): same
10414         * gst/gstthreaddummy.c: same
10415         * gst/autoplug/gstspider.c: Make gst_spider_details static.
10416         * gst/autoplug/gstspider.h: same
10417         * gst/elements/gstaggregator.h: Remove bogus function from header
10418         * gst/elements/gstfakesink.h: same
10419         * gst/elements/gstfakesrc.h: same
10420         * gst/elements/gstmd5sink.h: same
10421         * gst/elements/gstshaper.h: same
10422         * gst/elements/gsttee.h: same
10423         * gst/gstbin.c: doc fixes
10424         * gst/gstbin.h: Remove unused definition.
10425         * gst/gstbuffer.c: doc fixes
10426         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
10427         * gst/gstfilter.c: doc fixes
10428         * gst/gsttag.c: doc fixes
10429         * gst/gstvalue.c: doc fixes
10430
10431 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10432
10433         * docs/pwg/advanced-types.xml:
10434           Document typefinding.
10435         * docs/pwg/other-oneton.xml:
10436           Document one-to-n elements, demuxers and parsers.
10437
10438 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
10439
10440         reviewed by: David Schleef  <ds@schleef.org>
10441
10442         * configure.ac: Check bison version (bug #127838)
10443
10444 2004-03-25  David Schleef  <ds@schleef.org>
10445
10446         * docs/gst/gstreamer-docs.sgml: More fine tuning.
10447         * docs/gst/gstreamer-sections.txt:
10448         * docs/gst/tmpl/gstautoplug.sgml:
10449         * docs/gst/tmpl/gststaticautoplug.sgml:
10450         * docs/gst/tmpl/gststaticautoplugrender.sgml:
10451         * docs/gst/tmpl/gstutils.sgml:
10452         * docs/gst/tmpl/gstxml.sgml:
10453
10454 2004-03-24  David Schleef  <ds@schleef.org>
10455
10456         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
10457         manual being such complete crap, that I decided to do major
10458         hacking of it.  This checkin replaces any fine tuning that
10459         may have been done previously, with the benefit of actually
10460         being complete for much of the API that was changed since
10461         0.6.  Further fine tuning will occur shortly.  (bug #134721)
10462         * docs/gst/gstreamer-sections.txt:
10463         * docs/gst/tmpl/GstBin.sgml:
10464         * docs/gst/tmpl/GstBuffer.sgml:
10465         * docs/gst/tmpl/GstCaps.sgml:
10466         * docs/gst/tmpl/GstClock.sgml:
10467         * docs/gst/tmpl/GstCompat.sgml:
10468         * docs/gst/tmpl/GstData.sgml:
10469         * docs/gst/tmpl/GstElement.sgml:
10470         * docs/gst/tmpl/GstEvent.sgml:
10471         * docs/gst/tmpl/GstIndex.sgml:
10472         * docs/gst/tmpl/GstStructure.sgml:
10473         * docs/gst/tmpl/GstTag.sgml:
10474         * docs/gst/tmpl/cothreads.sgml:
10475         * docs/gst/tmpl/cothreads_compat.sgml:
10476         * docs/gst/tmpl/gettext.sgml:
10477         * docs/gst/tmpl/grammar.tab.sgml:
10478         * docs/gst/tmpl/gst-i18n-app.sgml:
10479         * docs/gst/tmpl/gst-i18n-lib.sgml:
10480         * docs/gst/tmpl/gst.sgml:
10481         * docs/gst/tmpl/gst_private.sgml:
10482         * docs/gst/tmpl/gstaggregator.sgml:
10483         * docs/gst/tmpl/gstarch.sgml:
10484         * docs/gst/tmpl/gstatomic.sgml:
10485         * docs/gst/tmpl/gstatomic_impl.sgml:
10486         * docs/gst/tmpl/gstbin.sgml:
10487         * docs/gst/tmpl/gstbuffer.sgml:
10488         * docs/gst/tmpl/gstbufferstore.sgml:
10489         * docs/gst/tmpl/gstcaps.sgml:
10490         * docs/gst/tmpl/gstclock.sgml:
10491         * docs/gst/tmpl/gstcompat.sgml:
10492         * docs/gst/tmpl/gstconfig.sgml:
10493         * docs/gst/tmpl/gstcpu.sgml:
10494         * docs/gst/tmpl/gstdata.sgml:
10495         * docs/gst/tmpl/gstdata_private.sgml:
10496         * docs/gst/tmpl/gstelement.sgml:
10497         * docs/gst/tmpl/gstenumtypes.sgml:
10498         * docs/gst/tmpl/gsterror.sgml:
10499         * docs/gst/tmpl/gstevent.sgml:
10500         * docs/gst/tmpl/gstfakesink.sgml:
10501         * docs/gst/tmpl/gstfakesrc.sgml:
10502         * docs/gst/tmpl/gstfilesink.sgml:
10503         * docs/gst/tmpl/gstfilter.sgml:
10504         * docs/gst/tmpl/gstindex.sgml:
10505         * docs/gst/tmpl/gstinfo.sgml:
10506         * docs/gst/tmpl/gstinterface.sgml:
10507         * docs/gst/tmpl/gstlog.sgml:
10508         * docs/gst/tmpl/gstmacros.sgml:
10509         * docs/gst/tmpl/gstmarshal.sgml:
10510         * docs/gst/tmpl/gstmd5sink.sgml:
10511         * docs/gst/tmpl/gstmultifilesrc.sgml:
10512         * docs/gst/tmpl/gstobject.sgml:
10513         * docs/gst/tmpl/gstpad.sgml:
10514         * docs/gst/tmpl/gstparse.sgml:
10515         * docs/gst/tmpl/gstpipeline.sgml:
10516         * docs/gst/tmpl/gstplugin.sgml:
10517         * docs/gst/tmpl/gstpluginfeature.sgml:
10518         * docs/gst/tmpl/gstqueue.sgml:
10519         * docs/gst/tmpl/gstreamer-unused.sgml:
10520         * docs/gst/tmpl/gstregistry.sgml:
10521         * docs/gst/tmpl/gstregistrypool.sgml:
10522         * docs/gst/tmpl/gstscheduler.sgml:
10523         * docs/gst/tmpl/gstsearchfuncs.sgml:
10524         * docs/gst/tmpl/gstshaper.sgml:
10525         * docs/gst/tmpl/gstspider.sgml:
10526         * docs/gst/tmpl/gstspideridentity.sgml:
10527         * docs/gst/tmpl/gststructure.sgml:
10528         * docs/gst/tmpl/gstsystemclock.sgml:
10529         * docs/gst/tmpl/gsttag.sgml:
10530         * docs/gst/tmpl/gsttaginterface.sgml:
10531         * docs/gst/tmpl/gsttee.sgml:
10532         * docs/gst/tmpl/gstthread.sgml:
10533         * docs/gst/tmpl/gsttrace.sgml:
10534         * docs/gst/tmpl/gsttrashstack.sgml:
10535         * docs/gst/tmpl/gsttypefind.sgml:
10536         * docs/gst/tmpl/gsttypes.sgml:
10537         * docs/gst/tmpl/gsturi.sgml:
10538         * docs/gst/tmpl/gsturitype.sgml:
10539         * docs/gst/tmpl/gstutils.sgml:
10540         * docs/gst/tmpl/gstvalue.sgml:
10541         * docs/gst/tmpl/gstversion.sgml:
10542         * docs/gst/tmpl/gstxml.sgml:
10543         * docs/gst/tmpl/gstxmlregistry.sgml:
10544         * docs/gst/tmpl/gthread-cothreads.sgml:
10545         * docs/gst/tmpl/types.sgml:
10546
10547 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10548
10549         * docs/pwg/other-sink.xml:
10550         * docs/pwg/other-source.xml:
10551           Documentation on how to write source and sink elements. Other
10552           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
10553           manager, autoplugger) are all still pending.
10554
10555 2004-03-25  Benjamin Otte  <otte@gnome.org>
10556
10557         * testsuite/elements/Makefile.am:
10558         * testsuite/elements/gst-compprep-check:
10559           add check to make sure gst-compprep works
10560         * testsuite/elements/gst-inspect-check.in:
10561           improve initialization output
10562         * testsuite/Makefile.am:
10563         * testsuite/gst-inspect-check:
10564           remove old file
10565
10566 2004-03-24  David Schleef  <ds@schleef.org>
10567
10568         * testsuite/elements/Makefile.am:
10569         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
10570         to the testsuite.
10571
10572 2004-03-24  Benjamin Otte  <otte@gnome.org>
10573
10574         * libs/gst/control/dparam.c: (gst_dparam_attach),
10575         (gst_dparam_detach):
10576         * libs/gst/control/dparammanager.c: (gst_dpman_init):
10577           fix lvalue casts for real
10578
10579 2004-03-24  Benjamin Otte  <otte@gnome.org>
10580
10581         * gst/schedulers/gstbasicscheduler.c:
10582         (gst_basic_scheduler_src_wrapper):
10583         * gst/schedulers/gstoptimalscheduler.c:
10584         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
10585         (pad_clear_queued), (gst_opt_scheduler_add_element),
10586         (gst_opt_scheduler_remove_element):
10587           fix GStreamer to not have issues with lvalue casts anymore (fixes
10588           #136841)
10589
10590 2004-03-24  Benjamin Otte  <otte@gnome.org>
10591
10592         * gst/gstelement.c:
10593           add documentation about a gobject quirk where the object hasn't the
10594           correct class pointer set on initialization
10595         * gst/schedulers/gstbasicscheduler.c:
10596         (gst_basic_scheduler_src_wrapper):
10597           make sure to not run into an infinite loop
10598
10599 2004-03-22  Benjamin Otte  <otte@gnome.org>
10600
10601         * gst/gstutils.c: (gst_util_dump_mem):
10602         * gst/gstutils.h:
10603           first argument of gst_util_dump_mem should be const
10604
10605 2004-03-22  Johan Dahlin  <johan@gnome.org>
10606
10607         * gst/gstvalue.h: Clean up a little bit.
10608
10609 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
10610
10611         reviewed by Benjamin Otte  <otte@gnome.org>
10612
10613         * gst/autoplug/gstspider.c: (gst_spider_dispose):
10614         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
10615         (gst_aggregator_class_init), (gst_aggregator_init):
10616         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10617         (gst_filesrc_dispose), (gst_filesrc_set_location):
10618         * gst/elements/gstidentity.c: (gst_identity_finalize),
10619         (gst_identity_class_init), (gst_identity_chain):
10620         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
10621         * gst/elements/gststatistics.c: (gst_statistics_finalize),
10622         (gst_statistics_class_init):
10623         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
10624         (gst_tee_get_property):
10625           clean up used memory in this elements correctly on teardown (closes
10626           #137279)
10627
10628 2004-03-20  Colin Walters  <walters@redhat.com>
10629
10630         * gst/registries/gstxmlregistry.c:
10631         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
10632         registry saving atomic.
10633
10634 2004-03-20  Colin Walters  <walters@redhat.com>
10635
10636         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
10637         Just use
10638         access() instead of actually creating and deleting files.
10639
10640 2004-03-18  David Schleef  <ds@schleef.org>
10641
10642         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
10643         (bug #137625)
10644
10645 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10646
10647         * po/sv.po: updated translation (Christian Rose)
10648
10649 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10650
10651         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
10652         (gst_filesink_get_query_types), (_do_init),
10653         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
10654           return FALSE silently
10655         * po/af.po: updated translation (Petri Jooste)
10656
10657 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10658
10659         * Makefile.am:
10660         * configure.ac:
10661           dist common properly
10662         * po/af.po:
10663         * po/fr.po:
10664         * po/nl.po:
10665         * po/sr.po:
10666         * po/sv.po:
10667           refreshing translations
10668
10669 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10670
10671         * po/LINGUAS:
10672         * po/sv.po:
10673         * po/af.po:
10674           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
10675
10676 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10677
10678         * Makefile.am: use common/release.mak
10679
10680 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10681
10682         * docs/faq/gst-uninstalled:
10683           adding gst-monkeysaudio to the list of possible plugin dirs
10684
10685 2004-03-16  David Schleef  <ds@schleef.org>
10686
10687         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
10688         (gst_init_check_with_popt_table):  Fix some gettext strings to
10689         make them easier to translate.  Required making the strings
10690         non-const.
10691
10692 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10693
10694         * configure.ac: bump nano to 1
10695
10696 === release 0.8.0 ===
10697
10698 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10699
10700         * configure.ac: release 0.8.0, "Executive Slacks"
10701
10702 2004-03-16  Johan Dahlin  <johan@gnome.org>
10703
10704         * gst/schedulers/gstoptimalscheduler.c
10705         (gst_opt_scheduler_pad_unlink): Remove double ;,
10706         spotted by Scott Wheeler
10707
10708 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10709
10710         * configure.ac: bump libtool version
10711
10712 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10713
10714         * gst/gstcaps.h:
10715         * gst/gststructure.h:
10716           add reserved padding
10717
10718 2004-03-15  Benjamin Otte  <otte@gnome.org>
10719
10720         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10721           set the first parameter for select call correctly.
10722           (fixes #137230)
10723
10724 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10725
10726         * *.c,*.h: don't mix tabs and spaces
10727
10728 2004-03-15  Johan Dahlin  <johan@gnome.org>
10729
10730         * gst/schedulers/gstoptimalscheduler.c
10731         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
10732         crash on MPEG playback. My boolean arithmetic is a bit rusty.
10733
10734         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
10735         
10736 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10737
10738         * testsuite/Rules:
10739           fix gst-register rules
10740
10741 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10742
10743         * testsuite/Rules:
10744           use versioned gst-register
10745
10746 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10747
10748         * docs/libs/gstreamer-libs-sections.txt:
10749           remove </SUBSECTION>
10750         * gst/gstplugin.c:
10751         * gst/gstregistry.c: (gst_registry_add_plugin):
10752         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
10753         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
10754           add debugging and fix some comment blocks
10755
10756 2004-03-15  Johan Dahlin  <johan@gnome.org>
10757
10758         * *.h: Revert indent changes.
10759         
10760 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10761
10762         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
10763           g_error_free the g_error
10764         * tools/gst-feedback-m.m:
10765           check for other versions of gstreamer
10766         * tools/gst-indent:
10767           use sh, not bash
10768
10769 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10770
10771         * tools/gst-register.c: do not spill paths when registries are not
10772           writable, until we fix the "user running gst-register" case.
10773
10774 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10775
10776         * *.c, *.h: commit of gst-indent run on core
10777
10778 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10779
10780         * tools/gst-indent:
10781         * tools/Makefile.am:
10782           add our indentation style as a script
10783
10784 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10785
10786         * po/sr.po:
10787         * po/LINGUAS:
10788           added Serbian translation
10789
10790 2004-03-13  Benjamin Otte  <otte@gnome.org>
10791
10792         * gst/gstelement.c:
10793           add documentation note about gst_element_found_tags_for_pad not
10794           being usable in getfunctions. (see #137042)
10795
10796 2004-03-12  David Schleef  <ds@schleef.org>
10797
10798         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
10799         change API right now!  Readd gst_caps_is_simple() macro.
10800         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
10801         uninitialized variable.  I'd bet this caused crashes.
10802         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
10803
10804 2004-03-12  Johan Dahlin  <johan@gnome.org>
10805
10806         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
10807         * gst/gstcaps.h: Clean up
10808
10809         * gst/gst.c (init_post): call gst_caps_get_type() instead of
10810         _gst_caps_initalize()
10811
10812         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
10813         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
10814
10815         * gst/gststructure.c (gst_structure_get_type): Ditto
10816
10817         * gst/gststructure.h: Ditto
10818         
10819 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10820
10821         * gst/gstqueue.c: (gst_queue_init):
10822           Reset default max. values in queues. Reason is simply to avoid
10823           braindead use. If you want wider values, use the properties. The
10824           default is supposed to always work. Wider values would make this
10825           beast a memory hog by default (250 full-PAL RGB32 video frames?
10826           That's 440 MB! No thank you).
10827
10828 2004-03-10  David Schleef  <ds@schleef.org>
10829
10830         * tools/gst-run.c: (main):  Fix crash when no relevant tools
10831         were found.  (bug #136793)
10832
10833 2004-03-10  Johan Dahlin  <johan@gnome.org>
10834
10835         * gst/schedulers/gstoptimalscheduler.c
10836         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
10837         links to elements within the same group, so we can finally remove
10838         that annoying warning. Refactor the code a little bit
10839         (group_dec_links_for_element): Split out
10840
10841 2004-03-09  David Schleef  <ds@schleef.org>
10842
10843         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
10844         (bug #134863)
10845
10846 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10847
10848         * configure.ac: first bug fix due to major/minor bump
10849
10850 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10851
10852         * configure.ac: bump nano to 1
10853
10854 === release 0.7.6 ===
10855
10856 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10857
10858         * NEWS:
10859         * RELEASE:
10860         * configure.ac:
10861           releasing 0.7.6, "Almost"
10862         * po/fr.po:
10863         * po/nl.po:
10864         * tools/Makefile.am:
10865         * tools/gst-feedback-m.m:
10866           unversioned source
10867
10868 2004-03-09  Johan Dahlin  <johan@gnome.org>
10869
10870         Reviewed by: Thomas Vander Stichele
10871
10872         * gst/gstelement.c (gst_element_class_init): register second
10873         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
10874         language bindings can (de)marshall correctly.
10875
10876         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
10877
10878         * gst/gsterror.c (gst_g_error_get_type): New function
10879
10880         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
10881         with VOID:OBJECT,OBJECT,STRING 
10882
10883 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
10884
10885         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
10886         Free a leaked g_timer on early returns.
10887
10888 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10889
10890         * docs/pwg/advanced-types.xml:
10891           Add cinepak description.
10892
10893 2004-03-07  David Schleef  <ds@schleef.org>
10894
10895         * docs/random/mimetypes:  Added cinepak description
10896
10897 2004-03-07  Andy Wingo  <wingo@pobox.com>
10898
10899         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
10900
10901         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
10902         there are no links to other groups when a group is destroyed.
10903         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
10904         removed from a group, make sure the link count to elements linked
10905         to other pads is appropriately decremented. This really fixes
10906         #135672.
10907
10908         The 1.60->1.61 patch has been reapplied in light of this fix.
10909
10910         * gst/gstelement.c (gst_element_dispose): Really protect against
10911         multiple invocations this time.
10912
10913 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10914
10915         * docs/gst/gstreamer-sections.txt:
10916         * docs/gst/tmpl/gsttag.sgml:
10917           remove some deprecated functions, document some existing ones
10918         * gst/gsttag.c: (gst_tag_get_flag):
10919         * gst/gsttag.h:
10920           add accessor function
10921
10922 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10923
10924         * docs/gst/gstreamer-sections.txt:
10925         * docs/gst/tmpl/gsttag.sgml:
10926         * docs/gst/tmpl/gstxml.sgml:
10927         * gst/gsttag.c: (gst_tag_get_flag):
10928         * gst/gsttag.h:
10929
10930 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
10931
10932         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
10933         leak
10934
10935 2004-03-05  David Schleef  <ds@schleef.org>
10936
10937         * REQUIREMENTS: Add bison and flex.
10938         * configure.ac: Fix comment about bison.
10939         * docs/random/ds/0.9-suggested-changes: yer ma
10940         * tools/gst-inspect.c: (print_element_info):  Fix warning.
10941
10942 2004-03-05  Benjamin Otte  <otte@gnome.org>
10943
10944         * gst/gstelement.c: (gst_element_error_full):
10945           revert recent recursive state changing commit - messing with other
10946           elements' states is evil and should be done by apps only.
10947
10948 2004-03-05  Benjamin Otte  <otte@gnome.org>
10949
10950         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
10951           check for empty intersection instead of NULL caps
10952         (gst_element_get_compatible_pad_filtered):
10953           remove old workaround that is only a bug nowadays
10954
10955 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10956
10957         * gst/gstelement.c: (gst_element_error_full):
10958           make elements try to recursively change state to PAUSED on all
10959           parents after an error to suppress ensuing warnings
10960         * gst/parse/grammar.y:
10961           make it check if it was able to sync the state, and throw an error
10962           if not, so stuff like
10963           oggdemux ! vorbisdec ! osssink gets caught
10964
10965 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10966
10967         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
10968           it contains lib64; use AS_AC_EXPAND to handle it properly
10969
10970 2004-03-05  David Schleef  <ds@schleef.org>
10971
10972         * gst/gstcpuid_i386.s:  Remove unused code
10973         * libs/gst/getbits/getbits.c: (gst_getbits_init),
10974         (gst_getbits_newbuf): Remove MMX code
10975         * libs/gst/getbits/getbits.h: Remove MMX code
10976
10977 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
10978
10979         * debian/.cvsignore:
10980         * debian/README.Debian:
10981         * debian/changelog:
10982         * debian/control:
10983         * debian/control.in:
10984         * debian/copyright:
10985         * debian/gstreamer-core-libs-dev.files:
10986         * debian/gstreamer-core-libs.files:
10987         * debian/gstreamer-core.files:
10988         * debian/gstreamer-core.postinst:
10989         * debian/gstreamer-core.postrm:
10990         * debian/gstreamer-doc.files:
10991         * debian/gstreamer-doc.links:
10992         * debian/gstreamer-doc.lintian:
10993         * debian/gstreamer-runtime.files:
10994         * debian/gstreamer-runtime.manpages:
10995         * debian/gstreamer-runtime.postinst:
10996         * debian/gstreamer-runtime.postrm:
10997         * debian/gstreamer-tools.files:
10998         * debian/gstreamer-tools.manpages:
10999         * debian/libgstreamer-dev.files:
11000         * debian/libgstreamer0.4.1.files:
11001         * debian/libgstreamerVERSION.files:
11002         * debian/rules:
11003         Debian package info not maintained here.
11004
11005 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11006
11007         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11008         * gst/gstbin.c: (gst_bin_class_init):
11009         * gst/gstelement.c: (gst_element_class_init):
11010         * gst/gstindex.c: (gst_index_class_init):
11011         * gst/gstobject.c: (gst_object_class_init),
11012         (gst_signal_object_class_init):
11013         * gst/gstpad.c: (gst_pad_template_class_init):
11014         * gst/gstregistry.c: (gst_registry_class_init):
11015         * gst/gsturi.c: (gst_uri_handler_base_init):
11016         * gst/gstxml.c: (gst_xml_class_init):
11017         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11018         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
11019           make all signal names use dashes instead of underscore
11020
11021 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11022
11023         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
11024
11025 2004-03-03  Benjamin Otte  <otte@gnome.org>
11026
11027         * gst/schedulers/gstoptimalscheduler.c:
11028           revert last commit by Andy Wingo. It causes segfaults on unreffing
11029           in Rhythmbox. (see bug #135672)
11030
11031 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11032
11033         * po/fr.po: fix typo
11034
11035 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11036
11037         * tools/gst-inspect.c: (main): 
11038         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
11039
11040 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11041
11042         * configure.ac:
11043           get GLIB_ONLY and POPT flags for the nonversioned binaries
11044         * tools/Makefile.am:
11045           use them
11046
11047 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11048
11049         * gst/gst.c: (init_post):
11050           change so that GST_REGISTRY now is where the global registry gets
11051           saved, since that is where plugins now get attached to first, and
11052           spilled over to the user registry.  Note that in the case of using
11053           GST_REGISTRY env var, we don't want to affect any real registries
11054           beyond the one given by this var, and thus we don't set a user
11055           registry to spill to.  So make sure GST_REGISTRY is writable.
11056
11057 2004-03-01  David Schleef  <ds@schleef.org>
11058
11059         * AUTHORS:  Added some names.  Add yourself if you're missing.
11060
11061 2004-03-01  David Schleef  <ds@schleef.org>
11062
11063         * MAINTAINERS: Add
11064
11065 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
11066
11067         * configure.ac:
11068           remove whitespace
11069         * docs/gst/tmpl/gstbuffer.sgml:
11070         * docs/gst/tmpl/gstdata.sgml:
11071         * docs/gst/tmpl/gstreamer-unused.sgml:
11072         * docs/gst/tmpl/gstxml.sgml:
11073           doc update
11074         * docs/manuals.mak:
11075           add a FIXME
11076         * docs/pwg/intro-preface.xml:
11077         * docs/pwg/pwg.xml:
11078           remove GNOME
11079         * gst/gst.c: (init_post):
11080           try GST_PLUGIN_PATH paths for the _global_registry first
11081         * gst/gstelement.h:
11082           add the error message as well, otherwise (null) debug info doesn't
11083           make much sense
11084         * tools/gst-register.c: (main):
11085           spill paths to next registry if this registry is not writable
11086         * po/fr.po:
11087         * po/nl.po:
11088           translation updates
11089
11090 2004-03-01  Johan Dahlin  <johan@gnome.org>
11091
11092         * gst/gstbuffer.c (_gst_buffer_initialize): 
11093         * gst/gstdata.c (gst_data_get_type): 
11094         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
11095         instead of ref, since some applications that uses GBoxed
11096         routines depends on a function that actually returns a copy.
11097
11098 2004-02-27  Benjamin Otte  <otte@gnome.org>
11099
11100         * gst/gstbuffer.h:
11101           remove gst_buffer_free, use gst_data_unref
11102         * gst/gstdata.c: (gst_data_get_type):
11103           use refcounting in GstData GBoxed registration
11104         * gst/gstdata.h:
11105           remove gst_data_free, use gst_data_unref
11106
11107 2004-02-27  Johan Dahlin  <johan@gnome.org>
11108
11109         * gst/gstdata.c (gst_data_get_type): New function, register
11110         GstData as a GBoxed type.
11111
11112         * gst/gstdata.h (GST_TYPE_DATA): New macro
11113
11114 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
11115
11116         * Makefile.am:
11117         * gstreamer.spec.in:
11118           put back RELEASE
11119         * gst/Makefile.am:
11120           clean up non-disting of built files
11121         * testsuite/debug/commandline.c:
11122           test fix for option rename
11123
11124 2004-02-26  David Schleef  <ds@schleef.org>
11125
11126         * configure.ac:  We don't really need glib-2.3.  Also remove
11127         some unneeded checks for library functions.
11128         * gst/Makefile.am:  Instead, we need to not dist files created
11129         by glib-genmarshal.
11130
11131 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11132
11133         * configure.ac:
11134           bump glib required version to 2.3.0 for g_value_takes_boxed
11135
11136  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
11137
11138         * common/m4/gst-docs.m4
11139         change flavour text from enable to disable as enable is our default
11140         closes bug Bug 135304
11141
11142 === release 0.7.5 ===
11143  
11144  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11145  
11146         * NEWS:
11147           instate NEWS file
11148         * Makefile.am:
11149         * gstreamer.spec.in:
11150         * RELEASE:
11151           put back release
11152         * configure.ac:
11153         * docs/random/release:
11154           more updates
11155
11156 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11157
11158         * gst/gsttag.c: (_gst_tag_initialize):
11159         * po/fr.po:
11160         * po/nl.po:
11161           remove hyphen from codec tags
11162
11163 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11164
11165         * gst/parse/Makefile.am:
11166           fix dependency so that a make from a clean build works the first
11167           time
11168
11169 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11170
11171         * docs/random/release:
11172           update release strategy
11173         * po/fr.po:
11174           auto-update po file
11175         * po/nl.po:
11176           update dutch translation
11177
11178 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11179
11180         * docs/manual/debugging.xml:
11181         fix manual for new debugging system
11182
11183 2004-02-25  Andy Wingo  <wingo@pobox.com>
11184
11185         * gst/gstpad.c (gst_pad_link_prepare): Re-add
11186         gst_pad_link_prepare. Please email the list with specific reasons
11187         for reverting.
11188
11189 2004-02-24  Andy Wingo  <wingo@pobox.com>
11190
11191         * gst/gstelement.c (gst_element_dispose): Protect against multiple
11192         invocations.
11193
11194         * gst/schedulers/gstoptimalscheduler.c:
11195         I added a mess of prototypes at the top of the file by way of
11196         documentation. Some of the operations on chains and groups were
11197         re-organized.
11198
11199         (create_group): Added a type argument so if the group is enabled,
11200         the setup_group_scheduler knows what to do.
11201         (group_elements): Added a type argument here, too, to be passed on
11202         to create_group.
11203         (group_element_set_enabled): If an unlinked PLAYING element is
11204         added to a bin, we have to create a new group to hold the element,
11205         and this function will be called before the group is added to the
11206         chain. Thus we have a valid case for group->chain==NULL. Instead
11207         of calling chain_group_set_enabled, just set the flag on the group
11208         (the chain's status will be set when the group is added to it).
11209         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
11210         Setup the group scheduler when the group is enabled, not
11211         specifically when an element goes PAUSED->PLAYING. This means
11212         PLAYING elements can be added, linked, and scheduled into a
11213         PLAYING pipeline, as was intended.
11214         (add_to_group): Don't ref the group twice. I don't know when this
11215         double-ref got in here. Removing it has the potential to cause
11216         segfaults if other parts of the scheduler are buggy. If you find
11217         that the scheduler is segfaulting for you, put in an extra ref
11218         here and see if that hacks over the underlying issue. Of course,
11219         then find out what code is unreffing a group it doesn't own...
11220         (create_group): Make the extra refcount floating, and remove it
11221         after adding the element. This means that...
11222         (unref_group): Destroy when the refcount reaches 0, not 1, like
11223         every other refcounted object in the known universe.
11224         (remove_from_group): When a group becomes empty, set it to be not
11225         active, and remove it from its chain. Don't unref it again,
11226         there's no floating reference any more.
11227         (destroy_group): We have to remove the group from the chain in
11228         remove_from_group (rather than here) to break refcounting cycles
11229         (the chain always has a ref on the group). So assert that
11230         group->chain==NULL.
11231         (ref_group_by_count): Removed, it was commented out anyway.
11232         (merge_chains): Use the remove_from_chain and add_to_chain
11233         primitives to do the reparenting, instead of rolling our own
11234         implementation.
11235         (add_to_chain): The first non-disabled group in the chain's group
11236         list will be the entry point for the chain. Because buffers can
11237         accumulate in loop elements' peer bufpens, we preferentially
11238         schedule loop groups before get groups to avoid unnecessary
11239         execution of get-based groups when the bufpens are already full.
11240         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
11241         (get_group_schedule_function): Ditto.
11242         (loop_group_schedule_function): Ditto.
11243         (gst_opt_scheduler_loop_wrapper): Ditto.
11244         (gst_opt_scheduler_iterate): Ditto.
11245
11246         I understand the opt scheduler now, yippee!
11247
11248         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
11249         (gst_pad_get_name, gst_pad_set_chain_function) 
11250         (gst_pad_set_get_function, gst_pad_set_event_function) 
11251         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
11252         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
11253         (gst_pad_set_query_function, gst_pad_get_query_types) 
11254         (gst_pad_get_query_types_default) 
11255         (gst_pad_set_internal_link_function) 
11256         (gst_pad_set_formats_function, gst_pad_set_link_function) 
11257         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
11258         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
11259         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
11260         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
11261         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
11262         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
11263         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
11264         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
11265         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
11266         (gst_pad_event_default_dispatch, gst_pad_event_default) 
11267         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
11268         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
11269         (gst_pad_get_formats_default, gst_pad_get_formats): Better
11270         argument checks, and some doc fixes.
11271
11272         (gst_pad_custom_new_from_template): Um, does anyone
11273         use these functions? Actually make a custom pad instead of a
11274         normal one.
11275         (gst_pad_try_set_caps): Transpose some checks.
11276         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
11277         the pad is in negotiation.
11278         (gst_pad_try_relink_filtered): Use pad_link_prepare.
11279         
11280         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
11281
11282         * gst/gstelement.h: 
11283         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
11284         on the list.
11285
11286 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11287
11288         * gst/gstbin.c: (gst_bin_add):
11289           add error for not being able to add elements
11290
11291 2004-02-22  Julien MOUTTE <julien@moutte.net>
11292
11293         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
11294         audio-codec and video-codec.
11295
11296 2004-02-22  Benjamin Otte  <otte@gnome.org>
11297
11298         reported by: Padraig O'Briain <padraig.obriain@sun.com>
11299
11300         * autogen.sh:
11301           replace test -e with test -x for mkinstalldirs to be more portable.
11302           (fixes #134816)
11303
11304 2004-02-22  Benjamin Otte  <otte@gnome.org>
11305
11306         * gst/gstpad.c:
11307           revert last patch from Andy, it makes gst_pad_can_link_filtered much
11308           too noisy
11309         * gst/gsttag.c: (_gst_tag_initialize):
11310         * gst/gsttag.h:
11311           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
11312         * libs/gst/control/dparam.c: (gst_dparam_attach):
11313         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
11314           check that types for attached dparams match
11315
11316 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11317
11318         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
11319         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11320         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11321           fix errors
11322
11323 2004-02-20  Andy Wingo  <wingo@pobox.com>
11324
11325         * gst/gstbin.c:
11326         * gst/gstbuffer.c:
11327         * gst/gstplugin.c:
11328         * gst/registries/gstxmlregistry.c: 
11329         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
11330
11331         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
11332         (gst_element_add_pad): DEBUG->INFO, some fixes.
11333         (gst_element_get_compatible_pad_template): Just see if the
11334         templates' caps intersect, not if one is a strict subset of the
11335         other. This conforms more to what gst_pad_link_intersect() does.
11336         (gst_element_class_add_pad_template): Don't memcpy the pad
11337         template, just ref it.
11338         (gst_element_get_compatible_pad_filtered): Clean up debug messages
11339
11340         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
11341         (gst_pad_link_filtered): Debug changes.
11342         (gst_pad_link_prepare): New function, consolidated from
11343         can_link_filtered and link_filtered.
11344
11345         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
11346         look more like that of the functions in gstelement.c
11347
11348         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
11349         object, and return the empty string if object is NULL.
11350
11351         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
11352         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
11353         LOG, not DEBUG. We still get flex info on debug.
11354
11355         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
11356         debug string more verbose.
11357         (plugin_times_older_than): DEBUG->LOG.
11358
11359 2004-02-20  Julien MOUTTE <julien@moutte.net>
11360
11361         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
11362         will emit found_tag for each stream they demux with the codec.
11363
11364 2004-02-20  Benjamin Otte  <otte@gnome.org>
11365
11366         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
11367           copy navigation event correctly. Check freeing tag lists. 
11368         * gst/gstthread.c: (gst_thread_change_state):
11369           don't abort() on state changing mess - it might happen because of
11370           bugs.
11371         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
11372           use boxed functions
11373         * gst/gstvalue.h:
11374           fix GST_VALUE_HOLDS_CAPS
11375
11376 2004-02-19  David Schleef  <ds@schleef.org>
11377
11378         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
11379         and use it for GST_FUNCTION.  (bug #134750)
11380
11381 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11382
11383         * po/fr.po:
11384         * po/nl.po:
11385           updating translations
11386
11387 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11388
11389         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
11390
11391 2004-02-18  kost@imn.htwk-leipzig.de
11392
11393         reviewed by: David Schleef  <ds@schleef.org>
11394
11395         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
11396         for libgstcontrol.
11397
11398 2004-02-18  David Schleef  <ds@schleef.org>
11399
11400         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11401         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11402         (gst_dpsmooth_new): Additional fixes to get double dparams working.
11403         * tools/gst-inspect.c: (print_element_info): Support dumping of
11404         double dparam information.
11405
11406 2004-02-17  David Schleef  <ds@schleef.org>
11407
11408         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11409         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
11410         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
11411         Use GST_TYPE_CAPS in signal prototype.
11412         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
11413         Convert GST_TYPE_CAPS to boxed.
11414         * gst/gstelement.c: (gst_element_class_init):
11415         Use GST_TYPE_TAG_LIST in signal prototype.
11416         * gst/gstindex.c: (gst_index_class_init):
11417         * gst/gstindex.h:
11418         Add GST_TYPE_INDEX_ENTRY type.
11419         * gst/gstmarshal.list:
11420         Add necessary marshal types.
11421         * gst/gstpad.c: (gst_real_pad_class_init),
11422         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
11423         (gst_pad_recover_caps_error):
11424         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
11425         * gst/gststructure.c: (_gst_structure_initialize),
11426         (gst_structure_copy), (_gst_structure_copy_conditional):
11427         * gst/gststructure.h:
11428         Convert GST_TYPE_STRUCTURE to boxed.
11429         * gst/gsttag.c: (gst_tag_list_get_type):
11430         * gst/gsttag.h:
11431         Add GST_TYPE_TAG_LIST type.
11432
11433 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11434
11435         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
11436         to what we agreed with david.
11437         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
11438
11439 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11440
11441         * po/nl.po: update translation
11442
11443 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11444
11445         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
11446           throw an error if spider is trying to play a mime type there is
11447           no decoder for
11448         * po/POTFILES.in:
11449           add gst/autoplug/gstspider.c for translation
11450
11451 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11452
11453         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
11454         silently when the pad is negotiating.
11455
11456 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11457
11458         * docs/faq/Makefile.am:
11459           add script to run gstreamer uninstalled 
11460         * docs/faq/faq.xml:
11461         * docs/faq/developing.xml:
11462         * docs/faq/gst-uninstalled:
11463           extract script to run gstreamer uninstalled
11464         * docs/manuals.mak:
11465           add EXTRA_SOURCES variable for Makefile.am's to set to
11466           use additional SOURCE files for the doc build
11467
11468 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11469
11470         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
11471
11472 2004-02-15  Julien MOUTTE  <julien@moutte.net>
11473
11474         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
11475         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
11476         an error was thrown by osssink. Basically a state change failure for
11477         an element in a different scheduling group was considered as
11478         successful, which means that caps nego was going on and weird stuff
11479         happened. Like I wrote in the comment there, if someone wants to
11480         revert that please drop me a mail explaining why because I really see
11481         no point in keeping that broken behaviour there.
11482         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
11483         be empty, we then return NULL which will trigger a nice error when 
11484         pulling from the pad.
11485
11486 2004-02-13  David Schleef  <ds@schleef.org>
11487
11488         * libs/gst/control/dparam.c: (gst_dparam_class_init),
11489         (gst_dparam_get_property), (gst_dparam_set_property),
11490         (gst_dparam_do_update_default):
11491         * libs/gst/control/dparam.h:
11492         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11493         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
11494         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
11495         (gst_dpsmooth_do_update_double):
11496         * libs/gst/control/dparam_smooth.h:
11497         * libs/gst/control/dparammanager.c:
11498         (gst_dpman_inline_direct_update):
11499         Add support for double dparams.
11500
11501 2004-02-13  David Schleef  <ds@schleef.org>
11502
11503         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
11504         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
11505
11506 2004-02-13  Mattias Wadman  <mattias@sudac.org>
11507
11508         reviewed by: David Schleef  <ds@schleef.org>
11509
11510         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
11511         (gst_fdsrc_init), (gst_fdsrc_set_property),
11512         (gst_fdsrc_get_property), (gst_fdsrc_get):
11513         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
11514         and sends an EOS event if file descriptor reading times out.
11515
11516 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11517
11518         * configure.ac:
11519           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
11520
11521 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11522
11523         * configure.ac: pass required libxml version as argument
11524         (bug reported by Christophe Fergeau)
11525
11526 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11527   
11528         * docs/gst/gstreamer-docs.sgml:
11529         * docs/gst/tmpl/gstxml.sgml:
11530         * docs/libs/gstreamer-libs-docs.sgml:
11531           version API docs
11532
11533 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11534
11535         * gst/gstinfo.c:
11536         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
11537         (gst_registry_pool_feature_filter):
11538         * gst/gstthread.c: (gst_thread_class_init):
11539         * gst/gstvalue.c:
11540           add includes exposed by building without libxml
11541         * gst/indexers/Makefile.am:
11542           do not build fileindex when LOADSAVE disabled; we should have
11543           a better libxml check later since fileindex depends on xml, not
11544           LOADSAVE or REGISTRY
11545         * libs/gst/control/Makefile.am:
11546           link with m
11547         * tools/Makefile.am:
11548           fix wrong source code for gst-xmlinspect
11549
11550 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11551
11552         * configure.ac:
11553           fix gcov help output
11554           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
11555         * docs/random/release:
11556           some updated releasing notes
11557         * gstreamer.spec.in:
11558           more updates
11559
11560 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11561
11562         * docs/faq/faq.xml:
11563         * docs/manual/manual.xml:
11564         * docs/pwg/pwg.xml:
11565         * docs/pwg/titlepage.xml:
11566           put version in documentation
11567
11568 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11569
11570         * tools/Makefile.am: fix man page installation
11571
11572 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11573
11574         * configure.ac:
11575           don't check for libxml when load/save and registry disabled (#105844)
11576         * gstreamer.spec.in:
11577           sync with fedora candidate spec
11578
11579 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11580
11581         * po/fr.po:
11582         * po/nl.po:
11583           replace multidisksrc with multifilesrc
11584
11585 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11586
11587         * po/POTFILES.in:
11588           update to multidisksrc => multifilesrc file renaming (#134145)
11589
11590 2004-02-11  David Schleef  <ds@schleef.org>
11591
11592         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
11593         * docs/gst/tmpl/gstpadtemplate.sgml: same
11594         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
11595         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
11596         fixing dance.
11597         * gst/gstutils.c: Remove disabled code that uses GstProps.
11598         * gst/registries/gstxmlregistry.h: same
11599         * docs/random/ds/0.9-suggested-changes: random notes
11600
11601 2004-02-11  kost@imn.htwk-leipzig.de
11602
11603         reviewed by: David Schleef  <ds@schleef.org>
11604
11605         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
11606         initialisation of clock (bug #134128)
11607
11608 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11609
11610         * configure.ac:
11611         * gst/elements/Makefile.am:
11612         * gst/elements/gstelements.c:
11613         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
11614         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
11615         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
11616         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
11617         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
11618         * gst/elements/gstmultifilesrc.h:
11619           rename multidisksrc to multifilesrc (part of #122200)
11620
11621 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11622
11623         * docs/manuals.mak:
11624           fix automake complaints
11625         * gst-element-check.m4:
11626           fix unquotedness
11627
11628 2004-02-11  David Schleef  <ds@schleef.org>
11629
11630         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
11631         * gst/gstatomic_impl.h: Disable sparc implementation.
11632
11633 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11634
11635         * gst-element-check.m4:
11636           fix underquoted macros as reported by automake 1.8.x (#133800)
11637         * configure.ac:
11638           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
11639           by autopoint (fixes #132996)
11640
11641 2004-02-10  Andy Wingo  <wingo@pobox.com>
11642
11643         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
11644         way to do inheritance.
11645         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
11646         (gst_pad_get_query_types, gst_pad_get_query_types_default):
11647         Routine docs.
11648         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
11649         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
11650         doc.
11651         (gst_pad_unlink, gst_pad_is_linked): Docs.
11652         (gst_pad_renegotiate): A brief description of capsnego.
11653         (gst_pad_try_set_caps): Document.
11654         (gst_pad_try_set_caps_nonfixed): Document.
11655         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
11656         (gst_pad_set_parent): Deprecated (although not out of the API).
11657         (gst_pad_get_parent): Deprecated, although many plugins use this.
11658         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
11659         are private and will go away in 0.9.
11660         (gst_pad_perform_negotiate): Doc.
11661         (gst_pad_link_unnegotiate): I think this is meant to be static.
11662         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
11663         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
11664         (gst_pad_get_peer): Doc updates.
11665         (gst_pad_caps_change_notify): Doc.
11666         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
11667         (gst_ghost_pad_new): Doc fixes.
11668
11669         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
11670         (gst_object_check_uniqueness): 
11671
11672         * gst/gstelement.c (gst_element_add_pad) 
11673         (gst_element_add_ghost_pad, gst_element_remove_pad) 
11674         (gst_element_remove_ghost_pad, gst_element_get_pad) 
11675         (gst_element_get_static_pad, gst_element_get_pad_list) 
11676         (gst_element_class_get_pad_template_list) 
11677         (gst_element_class_get_pad_template): Work on the docs.
11678         (gst_element_get_pad_template_list): Uses the class method.
11679         (gst_element_get_compatible_pad_template): Docs, and consolidate
11680         some test conditions. 
11681         (gst_element_get_pad_from_template): New static function.
11682         (gst_element_request_compatible_pad): Docs, and work with
11683         non-request compatible templates. 
11684         (gst_element_get_compatible_pad_filtered): Docs and remove
11685         redundant checks.
11686         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
11687         (gst_element_link_filtered, gst_element_link_many) 
11688         (gst_element_link, gst_element_link_pads) 
11689         (gst_element_unlink_many): Docs.
11690
11691 2004-02-05  Andy Wingo  <wingo@pobox.com>
11692
11693         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
11694         s/pointer/boxed/.
11695
11696         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
11697
11698         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
11699         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
11700         with the type=GST_TYPE_CAPS. This allows language bindings to know
11701         what kind of data they're dealing with.
11702
11703         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
11704         to NULL when g_value_init is called. GstCaps, which rolls its own
11705         type implementation, now does the same instead of allocating empty
11706         caps.
11707         (_gst_caps_initialize, _gst_caps_collect_value,
11708         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
11709         table methods. This allows G_VALUE_COLLECT to work.
11710
11711 2004-02-05  Andy Wingo  <wingo@pobox.com>
11712
11713         * configure.ac:
11714         * testsuite/Makefile.am (SUBDIRS): 
11715         * testsuite/ghostpads/Makefile.am: 
11716         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
11717
11718         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
11719         These two routines are the only ones that set
11720         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
11721         pad template. They should be made static, depending on ABI needs.
11722         (gst_real_pad_dispose): Handle the case of ghost pads without a
11723         parent. Assert after dealing with ghost pads that the ghost pad
11724         list is empty.
11725         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
11726         set after creation.
11727         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
11728         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
11729         functions. set_property will call add_ghost_pad/remove_ghost_pad
11730         as appropriate.
11731         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
11732
11733         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
11734         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
11735         (gst_element_remove_pad): Handle ghost pads as well.
11736         (gst_element_remove_ghost_pad): Deprecated (could be removed,
11737         depending on API-stability needs).
11738
11739 2004-02-05  Andy Wingo  <wingo@pobox.com>
11740
11741         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
11742         of course they're const
11743
11744 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11745
11746         * tools/Makefile.am:
11747         * tools/gst-feedback:
11748         * tools/gst-feedback-0.7:
11749           make gst-feedback versioned too for consistency
11750
11751 2004-02-11  David Schleef  <ds@schleef.org>
11752
11753         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11754         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
11755
11756 2004-02-10  Julien MOUTTE <julien@moutte.net>
11757
11758         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
11759         the structure does not contain a valid tag list. Adding a safety check
11760         to remove a noisy warning in that case.
11761
11762 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
11763
11764         * gst/gst.c: fix name to be in line with others
11765
11766 2004-02-09  Julien MOUTTE <julien@moutte.net>
11767
11768         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
11769         not shout that loud when len is 0. Just return 0 silently.
11770
11771 2004-02-09  Julien MOUTTE  <julien@moutte.net>
11772
11773         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
11774         because data_unref has one and I prefer the debug to be symetric.
11775         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
11776         were refed when added to the queue and unrefed only once when the queue
11777         was flushed. Now the flush handler unref the buffers two times : first
11778         unref for the ref added when pushing in the queue's tail and second
11779         unref to destroy the flushed buffer.
11780
11781 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
11782
11783         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
11784
11785 2004-02-06  David Schleef  <ds@schleef.org>
11786
11787         * docs/random/ds/0.9-suggested-changes: Random ramblings
11788         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
11789         to int before printing.
11790         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
11791         * gst/parse/parse.l: same.  See bug #129600
11792
11793 2004-02-06  David Schleef  <ds@schleef.org>
11794
11795         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
11796         (gst_index_add_entry), (gst_index_add_associationv),
11797         (gst_index_add_association): Add gst_index_add_associationv()
11798         and clean up gst_index_add_association(). #127133
11799
11800 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11801
11802         * autogen.sh: check out common with right tag if CVS/Tag exists
11803
11804 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11805
11806         * testsuite/ghostpads/ghostpads.c: (main):
11807           fix testsuite from segfaulting
11808
11809 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11810
11811         * Makefile.am: add release target
11812         * configure.ac: bump nano to 1
11813         * docs/random/release:
11814
11815 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11816
11817         * gst/gstcaps.h:
11818         * gst/gstelement.c: (gst_element_base_class_init),
11819         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11820         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11821         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11822         (gst_real_pad_dispose):
11823         * gst/gststructure.c: (gst_structure_free),
11824         (gst_structure_from_string):
11825           put reverted patch back in
11826         * gst/gstelement.c: (gst_element_remove_pad):
11827           free explicit caps if they're set
11828         * gst/gstpad.c: (_gst_pad_default_fixate_func):
11829           copy the structure when fixating
11830
11831 2004-02-05  David Schleef  <ds@schleef.org>
11832
11833         * gst/gstmarshal.list:
11834         * gst/gstpad.c: (gst_real_pad_class_init),
11835         (_gst_real_pad_fixate_accumulator):
11836         Revert POINTER->BOXED change in signal marshaller.
11837
11838 === release 0.7.4 ===
11839                                                                                 
11840 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11841                                                                                 
11842         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
11843         * configure.ac: changed for release
11844
11845 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
11846
11847         * gstreamer.spec.in:
11848           bump required version of gtk-doc
11849
11850 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11851
11852         * gst/gstcaps.h:
11853         * gst/gstelement.c: (gst_element_base_class_init),
11854         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11855         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11856         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11857         (gst_real_pad_dispose):
11858         * gst/gststructure.c: (gst_structure_free),
11859         (gst_structure_from_string):
11860           revert patch that breaks applications, reapply after release
11861           to get this fixed properly
11862
11863 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11864
11865         * gst/gsttag.c: (_gst_tag_initialize):
11866         * gst/gsttag.h:
11867           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
11868
11869 2004-02-04  David Schleef  <ds@schleef.org>
11870
11871         Fix some memleaks:
11872         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
11873         (gst_spider_plug_from_srcpad):
11874         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
11875
11876 2004-02-04  David Schleef  <ds@schleef.org>
11877
11878         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
11879         a GstRealPad before accessing its structure members.
11880
11881 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11882
11883         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
11884         (gst_clock_get_speed):
11885         * gst/gstclock.h:
11886           reset padding, remove unused fields
11887
11888 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11889
11890         * gst/autoplug/gstspideridentity.c:
11891         (gst_spider_identity_sink_loop_type_finding):
11892           use get_allowed_caps, not get_caps (fixes #132519)
11893         * gst/elements/gsttypefind.c: (stop_typefinding):
11894           use correct order when sending buffers and seeking
11895
11896 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11897
11898         * configure.ac:
11899         * gst/gstelement.h:
11900         * gst/gstpad.h:
11901         * gst/gstqueue.h:
11902           upgrade libtool CURRENT, reset padding
11903
11904 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11905
11906         * configure.ac:
11907           bump to prerelease
11908           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
11909
11910 2004-02-04  David Schleef  <ds@schleef.org>
11911
11912         * docs/random/ds/0.9-suggested-changes: random notes
11913         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
11914         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
11915         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
11916         expansion.
11917         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
11918         (gst_filesink_get_query_types): same
11919         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
11920         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
11921         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
11922         to use new GST_PTR_FORMAT.
11923         * gst/gstelement.h: deprecate function factory macros
11924         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
11925         These are our last variadic macros that can't be replaced with
11926         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
11927         attempting to deprecate gst_element_clock_wait().
11928         * gst/gstevent.h: same
11929         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11930         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
11931         * gst/gstpad.h: deprecate function factory macros similar to above.
11932
11933 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11934
11935         * configure.ac:
11936         * tools/Makefile.am:
11937         * tools/gst-run.c: (popt_callback), (hash_print_key),
11938         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
11939         (get_candidates), (main):
11940           add new source file to generate non-versioned wrapper binaries
11941           for our tools.
11942
11943 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11944
11945         * gst/gstevent.c: (_gst_event_free):
11946           actually break; inside the switch statement
11947         * gst/parse/grammar.y:
11948           fix memleak where GValues weren't unset
11949
11950 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11951
11952         * gst/gststructure.c: (gst_structure_from_string):
11953           fix huge memleak
11954         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
11955         (new_entry), (gst_type_find_element_chain):
11956         * gst/gstelement.c: (gst_element_base_class_init),
11957         (gst_element_class_set_details):
11958         * gst/gstpad.c: (gst_pad_can_link_filtered):
11959           fix smaller memleaks
11960         * gst/gstpad.c: (gst_real_pad_dispose):
11961           check that explicit caps are gone
11962         * gst/gststructure.c: (gst_structure_free):
11963           actually free the structure
11964         * gst/gstelement.c: (gst_element_clear_pad_caps):
11965           unset explicit caps
11966
11967 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11968
11969         * tools/Makefile.am:
11970           use AM_CFLAGS since all the CFLAGS are the same
11971           use AM_LDFAGS
11972
11973 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11974
11975         * docs/manual/gnome.xml:
11976           expand example a little
11977         * gst/gst.c: (gst_init_with_popt_table),
11978         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
11979           make sure popt option displays are done with right textdomain
11980           use GstPoptOption type
11981         * gst/gst.h:
11982           create GstPoptOption type
11983
11984 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11985
11986         * gst/gsterror.c: (_gst_stream_errors_init):
11987         * gst/gsterror.h:
11988           adding error type for no codec
11989         * po/POTFILES.in:
11990           add gst-inspect
11991         * po/nl.po:
11992           update dutch translation
11993         * tools/gst-inspect.c: (print_element_list), (main):
11994           do proper internationalization
11995         * tools/gst-launch.c: (idle_func):
11996           remove commented out function call
11997
11998 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11999
12000         * docs/README:
12001           add some error fixing notes
12002         * docs/gst/gstreamer-sections.txt:
12003           remove double entries
12004         * docs/gst/tmpl/gstbin.sgml:
12005         * docs/gst/tmpl/gstclock.sgml:
12006           remove override
12007         * docs/gst/tmpl/gstelement.sgml:
12008         * docs/gst/tmpl/gstindex.sgml:
12009         * docs/gst/tmpl/gstobject.sgml:
12010         * docs/gst/tmpl/gstpadtemplate.sgml:
12011         * docs/gst/tmpl/gstreamer-unused.sgml:
12012         * docs/gst/tmpl/gsttag.sgml:
12013         * docs/gst/tmpl/gstthread.sgml:
12014         * docs/gst/tmpl/gstxml.sgml:
12015         * gst/gsttag.h:
12016           sync header prototypes with c decls
12017         * gst/gsttaginterface.c:
12018           fix doc headers
12019
12020 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12021
12022         * gst/parse/Makefile.am:
12023         * gst/gstobject.h:
12024           get rid of gstmarshal.h dependency. It's not needed.
12025         * gst/gst.h:
12026         * gst/elements/gstfakesink.c:
12027         * gst/elements/gstfakesrc.c:
12028         * gst/elements/gstidentity.c:
12029         * gst/gstbin.c:
12030         * gst/gstelement.c:
12031         * gst/gstindex.c:
12032         * gst/gstobject.c:
12033         * gst/gstpad.c:
12034         * gst/gstthread.c:
12035         * gst/gstxml.c:
12036         * libs/gst/control/dparam.c:
12037         * libs/gst/control/dparammanager.c:
12038           include gstmarshal.h.
12039         Fixes #132045
12040
12041 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12042
12043         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
12044         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
12045         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
12046         * gst/elements/gstfilesrc.h:
12047           don't ref the filesrc when creating mmaped buffers. Don't keep a
12048           list of not-yet-destroyed buffers.
12049         * gst/gstbuffer.h:
12050           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
12051
12052 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12053
12054         * gst/gst.c: (init_pre):
12055           remove textdomain
12056
12057 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12058
12059         * docs/pwg/advanced-events.xml:
12060         * docs/pwg/advanced-scheduling.xml:
12061         * docs/pwg/intro-basics.xml:
12062         * docs/pwg/other-manager.xml:
12063         * docs/pwg/other-nton.xml:
12064         * docs/pwg/other-ntoone.xml:
12065         * docs/pwg/other-oneton.xml:
12066         * docs/pwg/pwg.xml:
12067           All sort of documentation... Forgot what. Point is that I want this
12068           in before I leave. The 'other-*' will be the last section and will
12069           explain issues specific to these type of elements.
12070
12071 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12072
12073         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12074         (gst_filesrc_get_read):
12075           set all the values on buffers that we can
12076
12077 2004-02-02  David Schleef  <ds@schleef.org>
12078
12079         Change usage of isblah() to g_ascii_isblah() to be more locale
12080         independent.  (#133076)
12081         * gst/gsturi.c: (gst_uri_protocol_check_internal):
12082         * gst/gstutils.c:
12083         * gst/parse/parse.l:
12084
12085 2004-02-02  Jon Trowbridge  <trow@gnu.org>
12086
12087         reviewed by: David Schleef  <ds@schleef.org>
12088
12089         Fix memory leaks:
12090         * gst/gstcaps.c: (gst_caps_to_string):
12091         * gst/registries/gstxmlregistry.c:
12092         (gst_xml_registry_add_path_list_func),
12093         (gst_xml_registry_parse_padtemplate):
12094
12095 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12096
12097         * gst/gstelement.c: (gst_element_default_error):
12098           suffix error messages with period
12099
12100 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12101
12102         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12103         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12104         * gst/gsterror.c: (gst_error_get_message):
12105           Suffix with dots
12106         * po/fr.po:
12107         * po/nl.po:
12108           Update translation files
12109
12110 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12111
12112         * gst/autoplug/gstspideridentity.c:
12113         (gst_spider_identity_sink_loop_type_finding):
12114         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12115         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12116         (gst_filesink_close_file), (gst_filesink_handle_event),
12117         (gst_filesink_chain):
12118         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12119         (gst_filesrc_get_read), (gst_filesrc_open_file):
12120         * gst/elements/gstidentity.c: (gst_identity_chain):
12121         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12122         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12123         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12124         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12125         * gst/gsterror.c: (_gst_core_errors_init),
12126         (_gst_library_errors_init), (_gst_resource_errors_init),
12127         (_gst_stream_errors_init), (gst_error_get_message):
12128         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12129         (gst_pad_recover_caps_error), (gst_pad_pull):
12130         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12131         * gst/schedulers/gstbasicscheduler.c:
12132         (gst_basic_scheduler_chainhandler_proxy),
12133         (gst_basic_scheduler_gethandler_proxy),
12134         (gst_basic_scheduler_cothreaded_chain):
12135           Suffix error messages with period.
12136           Use (NULL) instead of NULL
12137
12138 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12139
12140         * docs/gst/tmpl/gstelement.sgml:
12141         * docs/gst/tmpl/gstxml.sgml:
12142         * gst/gstelement.c: (gst_element_error_full):
12143           add element path to error
12144
12145 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12146
12147         * docs/random/mimetypes:
12148           update raw int/float info
12149         * gst/gsttag.c: (_gst_tag_initialize):
12150         * gst/gsttag.h:
12151           add GST_TAG_ENCODER
12152
12153 2004-01-30  David Schleef  <ds@schleef.org>
12154
12155         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
12156           missing (#132991)
12157
12158 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
12159
12160         reviewed by Benjamin Otte 
12161           parts of the patch submitted in bug #113913
12162
12163         * configure.ac:
12164           use AC_C_INLINE. Use = instead of == with test
12165         * examples/plugins/example.c:
12166         * gst/autoplug/gstspideridentity.c:
12167         * gst/elements/gstfdsrc.c:
12168         * gst/elements/gstfilesrc.c:
12169         * gst/elements/gstidentity.c:
12170         * gst/elements/gstmultidisksrc.c:
12171         * gst/elements/gststatistics.c:
12172         * gst/gstelement.c:
12173         * gst/gstobject.c:
12174         * gst/gstpad.c:
12175         * gst/gstpipeline.c:
12176         * gst/gstthread.c:
12177           don't end enums with a comma
12178         * gst/gstindex.c: (gst_index_compare_func):
12179           do explicit casting to gint
12180         * gst/gsttrace.c: (gst_trace_text_flush):
12181           #define strsize as a macro
12182
12183 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
12184
12185         * docs/README:
12186         * docs/gst/gstreamer-docs.sgml:
12187         * docs/gst/gstreamer-sections.txt:
12188         * docs/gst/tmpl/gstelement.sgml:
12189         * docs/gst/tmpl/gsterror.sgml:
12190         * docs/gst/tmpl/gstinterface.sgml:
12191         * docs/gst/tmpl/gstreamer-unused.sgml:
12192         * docs/gst/tmpl/gststructure.sgml:
12193         * docs/gst/tmpl/gsttag.sgml:
12194         * docs/gst/tmpl/gsttaginterface.sgml:
12195         * docs/gst/tmpl/gstvalue.sgml:
12196         make sure all API ends up in the built docs
12197         * gst/gstinterface.c:
12198         * gst/gststructure.c: (gst_structure_id_set_value),
12199         (gst_structure_set_value), (gst_structure_id_get_value):
12200         * gst/gststructure.h:
12201         * gst/gstvalue.h:
12202         sync .h with .c declarations
12203
12204 2004-01-30  Julien Moutte  <julien@moutte.net>
12205
12206         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
12207         Ronald will fix riffread.
12208
12209 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12210
12211         * docs/pwg/advanced-interfaces.xml:
12212           Added tuner interface docs.
12213
12214 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12215
12216         * docs/random/mimetypes:
12217           correct Theora information
12218         * gst/gstelement.h:
12219           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
12220
12221 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12222
12223         * gst/gstelement.c: (gst_element_error_full):
12224         * gst/gstelement.h:
12225           GST_ELEMENT_ERROR in enum -> _IN_ERROR
12226
12227 2004-01-29  Julien MOUTTE  <julien@moutte.net>
12228
12229         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
12230         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
12231         again and even before DISCONT.
12232         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
12233         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
12234         bytestream so that it's not stopping to fill the bytestream if events
12235         different than EOS or DISCONT are received. Instead it process them so
12236         that they go downstream.
12237
12238 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12239
12240         * docs/gst/tmpl/gstelement.sgml:
12241         * docs/gst/tmpl/gstreamer-unused.sgml:
12242         * docs/gst/tmpl/gstxml.sgml:
12243         * gst/autoplug/gstspideridentity.c:
12244         (gst_spider_identity_sink_loop_type_finding):
12245         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12246         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12247         (gst_filesink_close_file), (gst_filesink_handle_event),
12248         (gst_filesink_chain):
12249         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12250         (gst_filesrc_get_read), (gst_filesrc_open_file):
12251         * gst/elements/gstidentity.c: (gst_identity_chain):
12252         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12253         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12254         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12255         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12256         * gst/gstelement.h:
12257         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12258         (gst_pad_recover_caps_error), (gst_pad_pull):
12259         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12260         * gst/schedulers/gstbasicscheduler.c:
12261         (gst_basic_scheduler_chainhandler_proxy),
12262         (gst_basic_scheduler_gethandler_proxy),
12263         (gst_basic_scheduler_cothreaded_chain):
12264           gst_element_error -> GST_ELEMENT_ERROR
12265
12266 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12267
12268         * docs/Makefile.am:
12269         * docs/gst/tmpl/gstelement.sgml:
12270         * docs/gst/tmpl/gstxml.sgml:
12271         * docs/manuals.mak:
12272         * docs/pwg/advanced-request.xml:
12273         * docs/pwg/advanced-scheduling.xml:
12274         * docs/pwg/advanced-tagging.xml:
12275           fix non-validating docbook using CDATA
12276           make sure make check-local gets run first to check if it validates
12277
12278 2004-01-29  Julien MOUTTE <julien@moutte.net>
12279
12280         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
12281         handling (up and downstream).
12282         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
12283         my_filter thing.
12284
12285 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12286
12287         * docs/pwg/advanced-tagging.xml:
12288           Add docs about tag writing.
12289
12290 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12291
12292         * docs/pwg/advanced-tagging.xml:
12293           Add a part about tag reading and application signalling... Tag
12294           writing still needs to be documented.
12295         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12296           We can set file locations in READY, too.
12297
12298 2004-01-29  Julien MOUTTE <julien@moutte.net>
12299
12300         * docs/random/ds/element-checklist: Adding some notes about src
12301         events.
12302
12303 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12304
12305         * docs/random/mimetypes:
12306           Update docs to point to correct elements for various mimetypes, and
12307           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
12308           <stephane.loeuillet@tiscali.fr>.
12309
12310 2004-01-28  David Schleef  <ds@schleef.org>
12311
12312         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
12313
12314 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12315
12316         * docs/random/mimetypes:
12317           update docs for audio/x-raw-float. Add "buffer-frames=0 means
12318           undefined"
12319         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12320           make it only work in NULL.
12321         * gst/gstcaps.c:
12322           don't posion NULL caps
12323         * gst/gstelement.c: (gst_element_set_time):
12324           add debugging statement
12325         * gst/gstelement.c: (gst_element_emit_found_tag),
12326         (gst_element_found_tag_func), (gst_element_found_tags):
12327         * gst/gstelement.h:
12328           These functions take const taglists
12329         * gst/gstpad.c: (gst_pad_proxy_getcaps):
12330           fix memleak
12331         * gst/gstpad.c: (gst_pad_event_default):
12332           make more effort on handling discont and clocks, g_warn if everything
12333           fails
12334         * gst/gststructure.c: (gst_structure_remove_fields),
12335         (gst_structure_remove_fields_valist):
12336         * gst/gststructure.h:
12337           add gst_structure_remove_fields(_valist)
12338         * gst/gsttag.c:
12339           fix doc glitch
12340
12341 2004-01-28  David Schleef  <ds@schleef.org>
12342
12343         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
12344         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
12345         Fix memory leakage of gst_caps_to_string().
12346
12347         Use GST_PTR_FORMAT instead of gst_caps_to_string():
12348         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
12349         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
12350         (gst_spider_identity_sink_loop_type_finding):
12351         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12352         (find_suggest):
12353         * gst/gstpad.c: (gst_pad_try_relink_filtered),
12354         (gst_pad_set_explicit_caps):
12355         * gst/parse/grammar.y:
12356
12357 2004-01-28  David Schleef  <ds@schleef.org>
12358
12359         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
12360         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
12361         * docs/random/ds/0.9-suggested-changes: Notes from Company.
12362         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
12363         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
12364         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
12365         (gst_debug_log_default), (_gst_info_printf_extension),
12366         (_gst_info_printf_extension_arginfo):  Add printf extension.
12367         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
12368         * gst/gststructure.c: (gst_structure_to_string),
12369         (_gst_structure_parse_value): Use gst_value_deserialize() and
12370         remove old code.
12371         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
12372         (gst_value_deserialize_boolean), (gst_strtoi),
12373         (gst_value_deserialize_int), (gst_value_deserialize_double),
12374         (gst_value_deserialize_string), (gst_value_deserialize): Implement
12375         a bunch of deserialize functions and gst_value_deserialize.
12376         * gst/gstvalue.h: er, _de_serialize, not unserialize
12377         * testsuite/caps/string-conversions.c: (main): We don't currently
12378         handle (float) in caps, so convert these to (double).
12379         * testsuite/debug/Makefile.am: Add new test for the printf extension
12380         * testsuite/debug/printf_extension.c: (main): same
12381
12382 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12383
12384         * docs/random/company/time:
12385           Add some docs about clocking and time
12386
12387 2004-01-28  Julien MOUTTE <julien@moutte.net>
12388
12389         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
12390
12391 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12392
12393         * docs/pwg/advanced-clock.xml:
12394         * docs/pwg/advanced-dparams.xml:
12395         * docs/pwg/advanced-events.xml:
12396         * docs/pwg/advanced-interfaces.xml:
12397         * docs/pwg/advanced-midi.xml:
12398         * docs/pwg/advanced-request.xml:
12399         * docs/pwg/advanced-scheduling.xml:
12400         * docs/pwg/advanced-tagging.xml:
12401         * docs/pwg/advanced-types.xml:
12402         * docs/pwg/appendix-checklist.xml:
12403         * docs/pwg/building-boiler.xml:
12404         * docs/pwg/building-chainfn.xml:
12405         * docs/pwg/building-filterfactory.xml:
12406         * docs/pwg/building-pads.xml:
12407         * docs/pwg/building-props.xml:
12408         * docs/pwg/building-signals.xml:
12409         * docs/pwg/building-state.xml:
12410         * docs/pwg/building-testapp.xml:
12411         * docs/pwg/intro-basics.xml:
12412         * docs/pwg/intro-preface.xml:
12413         * docs/pwg/other-autoplugger.xml:
12414         * docs/pwg/other-sink.xml:
12415         * docs/pwg/other-source.xml:
12416         * docs/pwg/titlepage.xml:
12417           fix up id's
12418
12419 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12420
12421         * docs/95NonPath:
12422         * docs/HACKING:
12423         * docs/README:
12424         * docs/building-the-docs-on-debian:
12425           collect relevant bits of doc info
12426
12427 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12428
12429         * docs/pwg/advanced_tagging.xml:
12430           Half-assed commit so Thomas can re-arrange document IDs here to be
12431           consistent, too.
12432
12433 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12434
12435         * docs/manual/autoplugging.xml:
12436         * docs/manual/bins-api.xml:
12437         * docs/manual/bins.xml:
12438         * docs/manual/buffers-api.xml:
12439         * docs/manual/buffers.xml:
12440         * docs/manual/clocks.xml:
12441         * docs/manual/components.xml:
12442         * docs/manual/cothreads.xml:
12443         * docs/manual/debugging.xml:
12444         * docs/manual/dparams-app.xml:
12445         * docs/manual/dynamic.xml:
12446         * docs/manual/elements-api.xml:
12447         * docs/manual/elements.xml:
12448         * docs/manual/factories.xml:
12449         * docs/manual/gnome.xml:
12450         * docs/manual/goals.xml:
12451         * docs/manual/helloworld.xml:
12452         * docs/manual/helloworld2.xml:
12453         * docs/manual/init-api.xml:
12454         * docs/manual/intro.xml:
12455         * docs/manual/links-api.xml:
12456         * docs/manual/links.xml:
12457         * docs/manual/manual.xml:
12458         * docs/manual/motivation.xml:
12459         * docs/manual/pads-api.xml:
12460         * docs/manual/pads.xml:
12461         * docs/manual/plugins-api.xml:
12462         * docs/manual/plugins.xml:
12463         * docs/manual/programs.xml:
12464         * docs/manual/queues.xml:
12465         * docs/manual/quotes.xml:
12466         * docs/manual/schedulers.xml:
12467         * docs/manual/states-api.xml:
12468         * docs/manual/states.xml:
12469         * docs/manual/threads.xml:
12470         * docs/manual/typedetection.xml:
12471         * docs/manual/xml.xml:
12472           use chapter, part, section or misc as id starts for all bits
12473
12474 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12475
12476         * docs/gst/gstreamer-sections.txt:
12477           Fix up TITLE of the sections
12478
12479 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12480
12481         * docs/pwg/advanced_interfaces.xml:
12482           Add documentation on propertyprobing.
12483         * docs/pwg/advanced_events.xml:
12484         * docs/pwg/advanced_tagging.xml:
12485         * docs/pwg/building_boiler.xml:
12486         * docs/pwg/building_filterfactory.xml:
12487         * docs/pwg/pwg.xml:
12488           Move filterfactory and tagging into their own chapter, add a chapter
12489           on events. all these are empty placeholders that will be filled in
12490           some day.
12491
12492 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12493
12494         * docs/pwg/advanced_interfaces.xml:
12495           Docs for mixer interface. Also a check for website uploading.
12496
12497 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12498
12499         * docs/HACKING:
12500         * docs/Makefile.am:
12501         * docs/faq/Makefile.am:
12502         * docs/gst/Makefile.am:
12503         * docs/gst/tmpl/gstelement.sgml:
12504         * docs/gst/tmpl/gstplugin.sgml:
12505         * docs/gst/tmpl/gstreamer-unused.sgml:
12506         * docs/libs/Makefile.am:
12507         * docs/manual/Makefile.am:
12508         * docs/manuals.mak:
12509         * docs/pwg/Makefile.am:
12510         * docs/upload.mak:
12511           Separate out upload target and make it similar for
12512           both docbook and gtk-doc docs
12513
12514 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12515
12516         * docs/manuals.mak:
12517           Fix upload target to work with freedesktop
12518
12519 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12520
12521         * docs/pwg/advanced_types.xml:
12522           Add notes on creating your own types.
12523         * docs/pwg/building_boiler.xml:
12524         * docs/pwg/building_pads.xml:
12525         * docs/pwg/building_state.xml:
12526           Add some stuff about how to retrieve values from structures, how
12527           that relates to types and change layout slightly again to be almost
12528           perfect.
12529
12530 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12531
12532         * docs/pwg/advanced_dparams.xml:
12533         * docs/pwg/advanced_scheduling.xml:
12534           Change index layout slightly.
12535
12536 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12537
12538         * docs/pwg/advanced_clock.xml:
12539         * docs/pwg/advanced_interfaces.xml:
12540         * docs/pwg/advanced_midi.xml:
12541           General placeholders for now.
12542         * docs/pwg/advanced_request.xml:
12543           Explanation about sometimes and request pads.
12544         * docs/pwg/advanced_scheduling.xml:
12545           Concept of bytestream, loopfunctions and schedulers.
12546         * docs/pwg/building_boiler.xml:
12547           Add something about plugin-init.
12548
12549 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12550
12551         * docs/pwg/building_pads.xml:
12552           Fix broken docbook
12553
12554 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12555
12556         * docs/pwg/advanced_interfaces.xml:
12557         * docs/pwg/pwg.xml:
12558           Add as a placeholder for future filling-in.
12559         * docs/pwg/basics_autoplugging.xml:
12560         * docs/pwg/basics_buffers.xml:
12561         * docs/pwg/basics_elements.xml:
12562         * docs/pwg/basics_events.xml:
12563         * docs/pwg/basics_plugins.xml:
12564         * docs/pwg/basics_types.xml:
12565           Remove, because unused (this is all in intro_basics.xml).
12566         * docs/pwg/building_signals.xml:
12567           Short intro to signals + reference to GObject docs - we really
12568           shouldn't go into these sort of things to deply because we don't
12569           use them that extensively anyway.
12570         * docs/pwg/building_state.xml:
12571           Explanation of states. Benjamin, please check.
12572         * docs/pwg/building_testapp.xml:
12573           Put everything in one page - putting only a few lines of content
12574           per page doesn't really make sense.
12575
12576           Time to get into the advanced topics. ;).
12577
12578 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12579
12580         * docs/pwg/advanced_types.xml:
12581           Finish documenting the current state of mimetypes.
12582         * docs/pwg/building_boiler.xml:
12583         * docs/pwg/building_chainfn.xml:
12584         * docs/pwg/building_pads.xml:
12585         * docs/pwg/building_props.xml:
12586         * docs/pwg/building_testapp.xml:
12587           Start documenting the "how to build a simple audio filter" part
12588           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
12589           states and (maybe?) a short introduction to capsnego in the chapter
12590           on pads (building_pads.xml). Capsnego should probably be explained
12591           fully in advanced_capsnego.xml or so.
12592
12593 2004-01-26  David Schleef  <ds@schleef.org>
12594
12595         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
12596         * gst/gstpad.h: Add new function to allow element to (somewhat)
12597         specify non-fixed caps on a pad.
12598         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
12599         that I added a few weeks ago.
12600
12601 2004-01-26  David Schleef  <ds@schleef.org>
12602
12603         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
12604           making try_set_caps() work with non-fixed caps.
12605
12606 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12607
12608         * docs/pwg/advanced_types.xml:
12609         * docs/pwg/intro_basics.xml:
12610         * docs/pwg/intro_preface.xml:
12611         * docs/pwg/pwg.xml:
12612         * docs/pwg/titlepage.xml:
12613           First try to resurrect the PWG. I'm halfway integrating the mimetypes
12614           in here (docs/random/mimetypes), and will from there on work on both
12615           updating outdated parts and adding missing parts.
12616           That doesn't mean I'll fix it completely, but I'll try at least. ;).
12617
12618 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12619
12620         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
12621           policy is set
12622
12623 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12624
12625         * gst/gstelement.h:
12626           remove gst_element_factory_get_version. It doesn't exist anymore.
12627         * gst/gstplugin.c:
12628         * gst/gstplugin.h:
12629           remove gst_plugin_set_name and change gst_plugin_get_longname to
12630           gst_plugin_get_description to match code.
12631         * gst/gsterror.h:
12632           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
12633         * gst/gstpad.c: (gst_pad_try_set_caps):
12634           make it work with nonfixed caps.
12635           Note that even in the nonfixed case the link function of the pad
12636           that tries to set caps isn't called.
12637
12638 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12639
12640         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
12641           fix bug where buffer was not assembled correctly
12642         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
12643           silence by default
12644         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12645           only seek if there's no more buffers that could work without seeking
12646
12647 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12648
12649         * gst/gsttag.c: (_gst_tag_initialize):
12650         * gst/gsttag.h:
12651           Add application tag (for encoding/muxing app).
12652
12653 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
12654
12655         * autogen.sh:
12656           make autopoint force, and libtoolize not copy
12657         * common/m4/as-docbook.m4:
12658           added docbook xml catalog setup check
12659         * common/m4/gst-doc.m4:
12660           use docbook check
12661
12662 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
12663
12664         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
12665         * gst/gsttag.h:
12666           add GstTagFlag
12667
12668 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12669
12670         * docs/gst/gstreamer-sections.txt:
12671         * docs/gst/tmpl/gst.sgml:
12672         * docs/gst/tmpl/gstbuffer.sgml:
12673         * docs/gst/tmpl/gstclock.sgml:
12674         * docs/gst/tmpl/gstelement.sgml:
12675         * docs/gst/tmpl/gstreamer-unused.sgml:
12676         * docs/gst/tmpl/gstxml.sgml:
12677           sync latest API changes to docs
12678
12679 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12680
12681         * gst/gstpluginfeature.c:
12682           fix doc snippet
12683         * tools/gst-inspect.c: (print_element_list):
12684           fix output of typefind
12685           add GPL header
12686         * tools/gst-launch.c:
12687           add GPL header
12688
12689 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12690
12691         * gst/elements/Makefile.am:
12692         * gst/elements/gstelements.c:
12693         * gst/elements/gsttypefindelement.c:
12694         * gst/elements/gsttypefindelement.h:
12695         * po/POTFILES.in:
12696         * po/fr.po:
12697         * po/nl.po:
12698           renamed gsttypefindelement to gsttypefind, conserving CVS history
12699
12700 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12701
12702         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
12703         * gst/gsttag.h:
12704           add some tags used in ogg as well
12705           fix _ in replaygain tags
12706
12707 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12708
12709         * gst/gsterror.h:
12710           fix wrong GST_LIBRARY_ERROR_ENCODE addition
12711
12712 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12713
12714         * gst/gstelement.c: (gst_element_error_full):
12715         * gst/gstelement.h:
12716           change _extended to _full
12717
12718 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12719
12720         reviewed by: <delete if not using a buddy>
12721
12722         * docs/gst/tmpl/gst.sgml:
12723         * docs/gst/tmpl/gstbuffer.sgml:
12724         * docs/gst/tmpl/gstclock.sgml:
12725         * docs/gst/tmpl/gstelement.sgml:
12726         * docs/gst/tmpl/gstreamer-unused.sgml:
12727         * docs/gst/tmpl/gstxml.sgml:
12728         * gst/gstelement.c: (gst_element_error_full):
12729         * gst/gstelement.h:
12730
12731 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12732
12733         * gst/gstelement.h: fix _gst_element_error_printf prototype
12734
12735 2004-01-20  David Schleef  <ds@schleef.org>
12736
12737         * gst/gststructure.c: (gst_structure_to_string):
12738         Convert function to use gst_value_serialize().
12739         * gst/gstvalue.c: (gst_value_serialize_list),
12740         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
12741         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
12742         (gst_value_serialize_int), (gst_value_serialize_double),
12743         (gst_string_wrap), (gst_value_serialize_string),
12744         (gst_value_serialize), (gst_value_deserialize):
12745         * gst/gstvalue.h:
12746         Add implementations for serialize.
12747
12748 2004-01-20  Julien MOUTTE  <julien@moutte.net>
12749
12750         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
12751         we want to keep that one in the future or change xvidenc.c to use 
12752         another error.
12753
12754 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12755
12756         * gst/gstelement.c: (_gst_element_error_printf):
12757         * gst/gstelement.h:
12758           privatise function
12759
12760 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12761
12762         * docs/random/error:
12763           doc explaining error system
12764         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12765           cleanup
12766
12767 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12768
12769         * gst/gst-i18n-app.h:
12770         * gst/gst-i18n-lib.h:
12771           remove inclusion of config.h
12772         * po/POTFILES.in:
12773         * po/nl.po:
12774           add gst/gstelement.c
12775
12776 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12777
12778         * po/nl.po: updated Dutch translation
12779
12780 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12781
12782         * gst/gsterror.c: (_gst_core_errors_init),
12783         (_gst_library_errors_init), (_gst_resource_errors_init),
12784         (_gst_stream_errors_init):
12785         remove ending punctuation dots
12786
12787 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12788
12789         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
12790         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
12791         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12792         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12793         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12794         use GST_ERROR_SYSTEM
12795
12796 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12797
12798         * gst/gstelement.c: (gst_element_error_printf),
12799         (gst_element_error_extended):
12800         * gst/gstelement.h:
12801           add a helper printf function so we can have NULL values passed.
12802
12803 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12804
12805         * gst/gstelement.h:
12806           add G_STMT macros to gst_element_error, which isn't strictly
12807           necessary but people tell me to anyway.
12808
12809 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
12810
12811         * gst/Makefile.am:
12812         * gst/autoplug/gstspideridentity.c:
12813         (gst_spider_identity_sink_loop_type_finding):
12814         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12815         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12816         (gst_filesink_close_file), (gst_filesink_handle_event),
12817         (gst_filesink_chain):
12818         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
12819         (gst_filesrc_map_region), (gst_filesrc_get_read),
12820         (gst_filesrc_open_file):
12821         * gst/elements/gstidentity.c: (gst_identity_chain):
12822         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12823         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12824         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12825         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
12826         * gst/gst.h:
12827         * gst/gst_private.h:
12828         * gst/gstelement.c: (gst_element_class_init),
12829         (gst_element_default_error), (gst_element_error_func),
12830         (gst_element_error_extended):
12831         * gst/gstelement.h:
12832         * gst/gsterror.c: (_gst_core_errors_init),
12833         (_gst_library_errors_init), (_gst_resource_errors_init),
12834         (_gst_stream_errors_init), (gst_error_get_message):
12835         * gst/gsterror.h:
12836         * gst/gstinfo.c: (_gst_debug_init):
12837         * gst/gstmarshal.list:
12838         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12839         (gst_pad_recover_caps_error), (gst_pad_pull):
12840         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12841         * gst/schedulers/gstbasicscheduler.c:
12842         (gst_basic_scheduler_chainhandler_proxy),
12843         (gst_basic_scheduler_gethandler_proxy),
12844         (gst_basic_scheduler_cothreaded_chain):
12845         * po/POTFILES.in:
12846         * po/fr.po:
12847         * po/nl.po:
12848           change error signal
12849           add error categories
12850
12851 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
12852
12853         * gst/gsttag.c: (_gst_tag_initialize):
12854         * gst/gsttag.h:
12855         Add replaygain tag
12856
12857 2004-01-18  Colin Walters  <walters@verbum.org>
12858
12859         * examples/retag/retag.c: Call gst_init before processing
12860         program args.  Add g_assert to _link_many call.
12861
12862 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12863
12864         * gst/gstpad.c: (gst_pad_alloc_buffer):
12865           Return a newly allocated buffer when the pad has no peer.
12866
12867 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12868
12869         * gst/gstclock.c: (gst_clock_get_time):
12870           make it compile with gcc 2.95 again.
12871           Patch by Scott Wheeler
12872
12873 2004-01-15  David Schleef  <ds@schleef.org>
12874
12875         * gst/gstcaps.h:
12876         Added gst_caps_is_simple() macro.
12877         * testsuite/caps/caps.c: (test1):
12878         * testsuite/caps/intersect2.c: (main):
12879         * testsuite/caps/intersection.c: (main):
12880         Fixes to make 'make check' work again after removing
12881         gst_caps_is_chained().
12882
12883 2004-01-15  Leif Johnson <leif@ambient.2y.net>
12884
12885         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
12886         and additions to the MIDI document.
12887
12888 2004-01-15  David Schleef  <ds@schleef.org>
12889
12890         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
12891         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
12892         of GST_RPAD_, since we don't know if it's a real or ghost pad.
12893
12894 2004-01-15  David Schleef  <ds@schleef.org>
12895
12896         * gst/gstqueue.c:
12897         * gst/gstqueue.h:
12898         Fix the spelling of "treshold" and make min_threshold actually
12899         affect the queue.
12900
12901 2004-01-15  David Schleef  <ds@schleef.org>
12902
12903         * gst/gstcaps.c:
12904         Add lots of documentation.
12905         * gst/gstcaps.h:
12906         Deprecate a few functions.
12907         * gst/gstpad.c:
12908         Removed use of deprecated functions.
12909
12910 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12911
12912         * gst/gstpad.c: (gst_pad_is_linked):
12913         * gst/gstpad.h:
12914           implement gst_pad_is_linked
12915         * gst/gstelement.h:
12916           reserve space for initiate_state_change
12917
12918 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12919
12920         * gst/autoplug/gstspideridentity.c:
12921         (gst_spider_identity_sink_loop_type_finding):
12922           break infinite loop by just returning instead of looping
12923         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
12924           set event time difference correctly. Set it to 1 second instead
12925           of 100ms to be more tolerant
12926         * gst/gstelement.c: (gst_element_set_time):
12927           add debugging output
12928
12929 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12930
12931         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
12932           query if buffers are inside the pool, ignore events
12933
12934 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12935
12936         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
12937         (gst_clock_set_speed), (gst_clock_set_active),
12938         (gst_clock_is_active), (gst_clock_reset),
12939         (gst_clock_handle_discont):
12940         * gst/gstclock.h:
12941           deprecate old interface and disable functions that aren't in use
12942           anymore.
12943         * gst/gstelement.h:
12944         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
12945         (gst_element_set_time), (gst_element_adjust_time):
12946           add concept of "element time" and functions to get/set this time.
12947         * gst/gstelement.c: (gst_element_change_state):
12948           update element time correctly.
12949         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
12950           This is a debug message, not a g_critical.
12951         * gst/gstpad.c: (gst_pad_event_default):
12952           handle discontinuous events right with element time.
12953         * gst/gstscheduler.c: (gst_scheduler_state_transition):
12954           update to clocking fixes.
12955           set clocks on elements in READY=>PAUSED. The old behaviour caused
12956           a wrong element time on the first element that started playing.
12957         * gst/schedulers/gstbasicscheduler.c:
12958         (gst_basic_scheduler_class_init):
12959         * gst/schedulers/gstoptimalscheduler.c:
12960         (gst_opt_scheduler_class_init):
12961           remove code that just implements the default behaviour.
12962         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
12963           update to use new clocking functions
12964         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
12965         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
12966           update to test new element time.
12967         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
12968           use _get_allowed_caps instead of _get_caps. This catches filtered
12969           caps correctly.
12970         * testsuite/debug/commandline.c:
12971           update for new GST_DEBUG syntax.
12972         * testsuite/threads/Makefile.am:
12973           disable a test that only works sometimes.
12974
12975 2004-01-13  Julien MOUTTE <julien@moutte.net>
12976
12977         * po/LINGUAS: Adding fr.
12978         * po/fr.po: Adding french translation.
12979
12980 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12981
12982         * gst/parse/grammar.y:
12983         * po/POTFILES.in:
12984         * po/nl.po:
12985         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
12986           translate parsing error messages
12987
12988 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12989
12990         * po/POTFILES.in: adding gst-launch
12991         * po/nl.po: updated translation, all 99 strings translated
12992         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
12993         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
12994           fix strings for translation
12995
12996 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12997
12998         * gst/gst.c:
12999           - capitalize beginnings of popt options
13000           - fix strings for translation
13001           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
13002
13003 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13004
13005         * po/README: add some notes on how to update translations
13006
13007 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13008
13009         * ABOUT-NLS: removed, is autogenerated from autopoint
13010         * autogen.sh: add autopoint stuff
13011         * configure.ac: fix up gettext stuff
13012         * gst/Makefile.am: add i18n headers to noinst_HEADERS
13013         * gst/elements/gsttypefindelement.c: add header include
13014         * gst/gettext.h: add header, copy from system-installed header
13015         * gst/gst-i18n-app.h: to be included by each app having translations
13016         * gst/gst-i18n-lib.h: to be included by each lib having translations
13017         * gst/gst.c: (init_pre): fix up gettext calls
13018         * gst/gst_private.h: remove i18n stuff, moving to separate headers
13019         * po/LINGUAS: the new way to specify translations present
13020         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
13021         * po/Makevars: the variables filled in for GStreamer
13022         * po/POTFILES.in: added new files with translations
13023         * po/de.po: has new strings
13024         * po/nl.po: readded, has new strings
13025
13026 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13027
13028         * gst/gsttag.c: fix some strings marked for translation
13029
13030 2004-01-13  Iain <iain@prettypeople.org>
13031
13032         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
13033         group when we add an element to it, cos we unref it when we remove one
13034
13035 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
13036
13037         * testsuite/debug/commandline.c: (debug_not_reached):
13038         * testsuite/debug/output.c: (check_message):
13039           fix testsuite
13040
13041 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13042
13043         * examples/cutter/.cvsignore:
13044         * examples/helloworld/.cvsignore:
13045         * examples/launch/.cvsignore:
13046         * examples/manual/.cvsignore:
13047         * examples/mixer/.cvsignore:
13048         * examples/pingpong/.cvsignore:
13049         * examples/plugins/.cvsignore:
13050         * examples/queue/.cvsignore:
13051         * examples/queue2/.cvsignore:
13052         * examples/queue3/.cvsignore:
13053         * examples/queue4/.cvsignore:
13054         * examples/retag/.cvsignore:
13055         * examples/thread/.cvsignore:
13056         * examples/typefind/.cvsignore:
13057         * examples/xml/.cvsignore:
13058         * gst/.cvsignore:
13059         * gst/autoplug/.cvsignore:
13060         * gst/elements/.cvsignore:
13061         * gst/indexers/.cvsignore:
13062         * gst/parse/.cvsignore:
13063         * gst/registries/.cvsignore:
13064         * gst/schedulers/.cvsignore:
13065         * libs/gst/bytestream/.cvsignore:
13066         * libs/gst/control/.cvsignore:
13067         * libs/gst/getbits/.cvsignore:
13068         * tests/.cvsignore:
13069         * tests/bufspeed/.cvsignore:
13070         * tests/instantiate/.cvsignore:
13071         * tests/memchunk/.cvsignore:
13072         * tests/muxing/.cvsignore:
13073         * tests/sched/.cvsignore:
13074         * tests/seeking/.cvsignore:
13075         * tests/threadstate/.cvsignore:
13076         * testsuite/.cvsignore:
13077         * testsuite/caps/.cvsignore:
13078         * testsuite/cleanup/.cvsignore:
13079         * testsuite/dynparams/.cvsignore:
13080         * testsuite/plugin/.cvsignore:
13081         * tools/.cvsignore:
13082           update - this is huge, because it includes *.bb, *.bbg and *.da files
13083           which are generated for gcov.
13084
13085 2004-01-11  David Schleef  <ds@schleef.org>
13086
13087         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
13088         a function to parse integers in ways that strto[u]l() does not.
13089
13090 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13091
13092         * tools/gst-inspect.c: (print_caps):
13093           improve output of caps a bit
13094
13095 2004-01-11  David Schleef  <ds@schleef.org>
13096
13097         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
13098         inherit correct flags (READONLY and DONTKEEP).
13099
13100 2004-01-11  David Schleef  <ds@schleef.org>
13101
13102         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
13103         (gst_filesrc_map_region):
13104         * gst/gstbuffer.c: (_gst_buffer_initialize),
13105         (_gst_buffer_sub_free), (gst_buffer_default_copy),
13106         (gst_buffer_new), (gst_buffer_create_sub),
13107         (gst_buffer_is_span_fast), (gst_buffer_span):
13108         * gst/gstbuffer.h:
13109         Change GstBuffer private structure element names. (all files)
13110         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
13111         (gst_queue_link):
13112         * gst/gstqueue.h:
13113         Implement getcaps/pad_link functions that handle the case where
13114         there are data in the queue.
13115
13116 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13117
13118         * gst/elements/gstbufferstore.c:
13119           initialize debugging structure correctly
13120         * gst/elements/gsttee.c: (gst_tee_set_property):
13121           g_object_notify when property was changed
13122         * gst/elements/gsttypefindelement.c:
13123         (gst_type_find_element_change_state):
13124           clear caps correctly
13125
13126 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13127
13128         * gst/gstqueue.c: (gst_queue_init):
13129           Use better defaults for when a queue should block. This
13130           gets rid of jerky playback for quite a few files.
13131           It takes more memory.
13132
13133 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
13134
13135         (gst_xml_registry_parse_padtemplate):
13136           make critical message slightly more useful
13137
13138 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13139
13140         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
13141         (gst_debug_message_get), (gst_debug_log_default):
13142         * gst/gstinfo.h:
13143           Change gst_debug_log(_valist) to take a const format string.
13144           Change prototype of log function and functions using those to 
13145           take a GstDebugMessage instead of a string that requires using
13146           gst_debug_message_get.
13147
13148 2004-01-08  David Schleef  <ds@schleef.org>
13149
13150         * Makefile.am:
13151         * configure.ac:
13152         Add option --enable-gcov to build GStreamer with -fprofile-arcs
13153         and -ftest-coverage, which allows gcov to show information about
13154         testsuite coverage.
13155
13156 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13157
13158         * gst/gstutils.h:
13159           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
13160           GST_PARENT_CALL_WITH_DEFAULT
13161         * gst/elements/gstaggregator.c: 
13162         * gst/elements/gstbufferstore.c: 
13163         * gst/elements/gstfakesink.c: 
13164         * gst/elements/gstfakesrc.c: 
13165         * gst/elements/gstfdsink.c: 
13166         * gst/elements/gstfdsrc.c: 
13167         * gst/elements/gstfilesink.c: 
13168         * gst/elements/gstfilesrc.c: 
13169         * gst/elements/gstidentity.c: 
13170         * gst/elements/gstmd5sink.c: 
13171         * gst/elements/gstmultidisksrc.c:
13172         * gst/elements/gstpipefilter.c: 
13173         * gst/elements/gstshaper.c:
13174         * gst/elements/gststatistics.c:
13175         * gst/elements/gsttee.c:
13176         * gst/elements/gsttypefindelement.c:
13177           use them.
13178
13179 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
13180
13181         * docs/gst/gstreamer-docs.sgml: remove props
13182         * docs/gst/gstreamer-sections.txt: remove props
13183         * docs/gst/tmpl/gst.sgml:
13184         * docs/gst/tmpl/gstbin.sgml:
13185         * docs/gst/tmpl/gstbuffer.sgml:
13186         * docs/gst/tmpl/gstcaps.sgml:
13187         * docs/gst/tmpl/gstclock.sgml:
13188         * docs/gst/tmpl/gstelement.sgml:
13189         * docs/gst/tmpl/gstindex.sgml:
13190         * docs/gst/tmpl/gstobject.sgml:
13191         * docs/gst/tmpl/gstpad.sgml:
13192         * docs/gst/tmpl/gstpadtemplate.sgml:
13193         * docs/gst/tmpl/gstreamer-unused.sgml:
13194         * docs/gst/tmpl/gstthread.sgml:
13195         * docs/gst/tmpl/gstxml.sgml:
13196           sync with code reorganization
13197
13198 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
13199
13200         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13201         Make the 'Could not find compatible pad' message more informative.
13202
13203 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13204                                                                                 
13205         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
13206           Fix for if we pass NULL as property to location.
13207         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
13208         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
13209           Fix for instantiate-test (see below).
13210         * gst/gststructure.c: (_gst_structure_parse_value):
13211           Fix compile error on gcc-2.96.
13212         * configure.ac:
13213         * tests/Makefile.am:
13214         * tests/instantiate/Makefile.am:
13215         * tests/instantiate/create.c: (create_all_elements), (main):
13216           Add a test that instantiates all elements. This makes it easy to
13217           track dead code for old API/design (like setting event functions
13218           on sink pads and so on).
13219
13220 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
13221
13222         * gst/gstcaps.c: (gst_caps_append_structure):
13223           Move the poisoning to allow a NULL structure
13224         * gst/gstevent.c: (_gst_event_free):
13225           When freeing a navigation event, free the structure
13226           also
13227
13228 2004-01-04  David Schleef  <ds@schleef.org>
13229
13230         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13231         Remove usage of gst_pad_proxy_fixate.
13232         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
13233         (gst_caps_split_one), (gst_caps_replace):
13234         Add poisoning code.
13235         * gst/gstmarshal.list:
13236         Add pointer__pointer for fixate signal
13237         * gst/gstpad.c: (gst_real_pad_class_init),
13238         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
13239         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
13240         (gst_pad_set_explicit_caps), (gst_pad_template_new):
13241         Add poisoning code. Add fixate signal on RealPad. Change
13242         set_explicit_caps() to take const GstCaps, like try_set_caps().
13243         * gst/gstpad.h:
13244         * testsuite/caps/Makefile.am:
13245         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
13246
13247 2004-01-03  David Schleef  <ds@schleef.org>
13248
13249         * gst/elements/gsttypefindelement.c:
13250         (gst_type_find_element_have_type), (gst_type_find_element_init):
13251         Use gst_pad_use_explicit_caps for src pad.
13252         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
13253         before using it.
13254
13255 2004-01-03  David Schleef  <ds@schleef.org>
13256
13257         * gst/gstelement.c: (gst_element_link_pads_filtered),
13258         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
13259         that linking was successful.
13260         * gst/gstpad.c: (gst_pad_link_free),
13261         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
13262         (gst_pad_link_try), (gst_pad_link_unnegotiate),
13263         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
13264         GstPadLinkReturn correctly between functions, and don't fail
13265         when DELAYED is used (DELAYED is very important).  Better
13266         cleanup on unlinking and unnegotiation.  Should fix some spider
13267         bugs.
13268
13269 2004-01-02  David Schleef  <ds@schleef.org>
13270
13271         * gst/gstelement.c: (gst_element_class_init),
13272         (gst_element_base_class_init): ->padtemplates should be cleared
13273         in base_init, since we need to have a fresh list for every
13274         class.  (Alternately, we chould copy the list and share the
13275         actual pad templates (not the list), but that would require
13276         changing every plugin to move pad template registration from
13277         base_init to class_init.)
13278
13279 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13280
13281         * gst/gstelement.c: (gst_element_class_add_pad_template):
13282           Refuse registering a pad template if another pad template
13283           with the same name already exists (#114715).
13284
13285 2004-01-02  David Schleef  <ds@schleef.org>
13286
13287         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
13288         (gst_caps_is_equal_fixed): Add new function.
13289         * gst/gstcaps.h: ditto.
13290         * gst/gstpad.c: (gst_real_pad_class_init),
13291         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
13292         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
13293         check new caps against existing caps -- if they're the same, return
13294         OK without renegotiating.  caps-nego-failed signal fixed so that
13295         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
13296         to save an extra caps copy.  Don't complete negotiation if a pad
13297         link function returns DELAYED.
13298
13299 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13300
13301         * gst/gstpad.c: (gst_pad_try_relink_filtered):
13302           Fix wrong g_return_if_fail
13303
13304 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
13305
13306         * gst/gstbin.c: (gst_bin_class_init):
13307         Change the marshalling of element_added/element_removed
13308         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
13309         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
13310
13311 2004-01-01  David Schleef  <ds@schleef.org>
13312
13313         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13314         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
13315         (gst_pad_use_explicit_caps):
13316         * gst/gstpad.h:
13317         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
13318         to use an internal getcaps and link fuction so that negotiation
13319         always results in the explicitly set caps.
13320         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
13321         are particularly useful for decoders.
13322
13323 2003-12-31  David Schleef  <ds@schleef.org>
13324
13325         * gst/elements/gstidentity.c: (gst_identity_class_init),
13326         (gst_identity_init), (gst_identity_chain),
13327         (gst_identity_set_property), (gst_identity_get_property):
13328         * gst/elements/gstidentity.h:
13329         * gst/gstqueue.c: (gst_queue_init):
13330           Negotiation fixes.
13331
13332 2003-12-31  David Schleef  <ds@schleef.org>
13333
13334         * gst/gstcaps.c: (gst_caps_intersect),
13335         (_gst_caps_normalize_foreach), (gst_caps_normalize):
13336           Implement gst_caps_normalize().
13337         * testsuite/caps/normalisation.c: (main):
13338           Add an additional test
13339
13340 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13341
13342         * gst/gstqueue.c: (gst_queue_init):
13343           use gst_pad_proxy_getcaps()
13344
13345 2003-12-31  David Schleef  <ds@schleef.org>
13346
13347         * gst/elements/gstshaper.c: (gst_shaper_link):
13348         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13349         * gst/gstqueue.c: (gst_queue_link):
13350           Negotiation fixes.
13351
13352 2003-12-31  David Schleef  <ds@schleef.org>
13353
13354         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
13355         * gst/gstpad.h: Add functions that are useful as default pad
13356         link and fixate functions for elements.
13357
13358 2003-12-30  David Schleef  <ds@schleef.org>
13359
13360         * gst/gstpad.c: (gst_pad_link_try):
13361           Fix segfault when attempting to return to old caps
13362
13363 2003-12-29  David Schleef  <ds@schleef.org>
13364
13365         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
13366         (gst_caps_structure_simplify), (gst_caps_simplify):
13367         * gst/gstcaps.h:
13368           Add simplify function
13369         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
13370         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
13371         * gst/gstpad.h:
13372           Copy over srcnotify, sinknotify when calling old pad_link
13373           functions.  Add new is_negotiated() function.
13374         * gst/gststructure.c: (gst_structure_copy):
13375           Fix an incredibly stupid bug that should have been noticed
13376           weeks ago.  _copy() returned the argument, not the new copy.
13377
13378 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13379
13380         * gst/gstcaps.c: (gst_caps_append):
13381           add sanity checks
13382         * gst/gstcaps.h: (gst_caps_debug):
13383           remove, it doesn't exist anymore.
13384         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
13385         (gst_element_threadsafe_properties_post_run):
13386           make debugging messages not clutter up THREAD debug category
13387         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
13388         (gst_element_change_state):
13389           update to new caps API
13390         * gst/gstinterface.c: (gst_implements_interface_cast):
13391           don't put vital code in g_return_if_fail
13392         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
13393         (gst_pad_link_filtered):
13394           add pst_pad_try_link and use it.
13395         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
13396           implement correctly, deprecate first one.
13397         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
13398           add and implement.
13399         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
13400           implement.
13401         (gst_pad_get_negotiated_caps):
13402           add and implement. Make GST_PAD_CAPS call this function.
13403         (gst_pad_get_caps):
13404           remove unneeded check..
13405         (gst_pad_recover_caps_error):
13406           disable, always return FALSE.
13407         (gst_real_pad_dispose):
13408           don't free caps and appfilter anymore, they're unused.
13409         * gst/gstpad.h:
13410           Reflect changes mentioned above.
13411         * gst/gstsystemclock.c: (gst_system_clock_wait):
13412           Make 'clock is way behind' a debugging message.
13413         * gst/gstthread.c: (gst_thread_change_state):
13414           Fix debugging message
13415
13416 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
13417
13418         * gst/gstinfo.h:
13419           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
13420         * docs/gst/tmpl/gstreamer-unused.sgml:
13421           removed all traces of cvs conflicts
13422
13423 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13424
13425         * configure.ac:
13426         * gst/schedulers/cothreads_compat.h:
13427         * libs/Makefile.am:
13428           remove last instances of wingo cothread usage
13429
13430 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13431
13432         * gst/gstplugin.c:
13433         * gst/gstversion.h.in:
13434         * gst/parse/grammar.y:
13435           change comment block from /** to /* when not gtk-doc comments
13436
13437 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13438
13439         * gst/gst.c: whitespace and doc style fixes
13440
13441 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13442
13443         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
13444
13445 2003-12-24  Colin Walters  <walters@verbum.org>
13446
13447         * gst/elements/gsttypefindelement.c:
13448           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
13449           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
13450           Don't double-free caps.
13451
13452 2003-12-23  David Schleef  <ds@schleef.org>
13453
13454         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
13455           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
13456           Many little fixes and additions of debug statements to
13457           get rhythmbox working.
13458
13459 2003-12-23  Colin Walters  <walters@verbum.org>
13460
13461         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
13462         Use GST_PAD_LINK_SUCCESSFUL.
13463
13464 2003-12-23  David Schleef  <ds@schleef.org>
13465
13466         * gst/elements/gstaggregator.c:
13467         * gst/elements/gsttee.c:
13468           Use gst_pad_proxy_getcaps().
13469         * gst/gstpad.c:
13470         * gst/gstpad.h:
13471           Add gst_pad_proxy_getcaps(), which filter elements can use
13472           as a generic getcaps implementation.
13473           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
13474           was advertised.
13475
13476 2003-12-23  David Schleef  <ds@schleef.org>
13477
13478         * gst/gstpad.c:
13479           Rearrange/rewrite much of the pad negotiation code, since it
13480           resembled pasta.  This actually changes the way some
13481           negotiation works, since the previous code was inconsistent
13482           depending on how it was invoked.  Add (internal) structure
13483           GstPadLink, which is used to hold some information (more in
13484           the future) about the link between two pads.  Fixes a number
13485           of bugs, including random lossage of filter caps when the
13486           initial negotiation is delayed.  A few functions are still
13487           unimplemented.
13488         * gst/gstpad.h:
13489           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
13490           these when testing GstPadLinkReturn values instead of comparing
13491           directly.
13492
13493 2003-12-23  David Schleef  <ds@schleef.org>
13494
13495         * gst/gstvalue.c: 
13496         * gst/gstvalue.h:
13497           Rearrange lots of code.  Change registration of compare function
13498           into registration of compare/serialize/deserialize functions.
13499           Doesn't include implementation of gst_value_[de]serialize(),
13500           but that should be easy.
13501
13502 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13503
13504         * docs/gst/gstreamer-sections.txt:
13505         * docs/gst/tmpl/gstprops.sgml: removed
13506         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
13507           David removed props and caps code, so let's remove their docs as well.
13508           Removed all no longer existing symbols from gstreamer-sections.txt
13509           
13510 2003-12-22  Colin Walters  <walters@verbum.org>
13511
13512         * gst/gsttaginterface.c, gst/gsttaginterface.h,
13513           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
13514           of tags directly.
13515
13516 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13517
13518         * gst/elements/gstelements.c:
13519           Set ranks of elements to NONE, so the autoplugger doesn't use them.
13520         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
13521           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
13522           gst_caps (peer).
13523
13524 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13525
13526         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
13527         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
13528         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
13529         (gst_spider_identity_sink_loop_type_finding):
13530         * gst/autoplug/gstspideridentity.h:
13531           Fix autoplugging in spider element, so it works with new caps.
13532           This was mainly caused by identifying empty caps incorrectly.
13533
13534 2003-12-22  David Schleef  <ds@schleef.org>
13535
13536         * gststructure.c, gstvalue.c, gstvalue.h: Add
13537           gst_value_init_and_copy() and use it, to avoid silly mistakes in
13538           using g_value_copy()
13539
13540 2003-12-21  David Schleef  <ds@schleef.org>
13541
13542         * many, many files: Merge CAPS branch.  This includes:
13543           - implemention of GstValue and several GstValue types
13544           - implemention of GstStructure
13545           - entire rewrite of GstCaps
13546           - removal of GstProps
13547           - many changes to GstPad to compensate for new caps paradigm
13548           - removal of GstBufferpool
13549         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
13550         gstvalue.h, gst/gstcaps[2]*.[ch]:
13551           - rename gstcaps2.[ch] to gstcaps.[ch]
13552
13553 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13554
13555         * gst/gstqueue.c: (gst_queue_handle_pending_events),
13556         (gst_queue_chain), (gst_queue_handle_src_event):
13557           implement timeout for sending events. Workaround for if the
13558           pipeline on this queue is not passing any data.
13559
13560 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
13561                                                                                 
13562         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
13563         * moved CVS to freedesktop.org
13564