deactivate and remove dparams (libgstcontrol)
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-08-01  Stefan Kost  <ensonic@users.sf.net>
2
3         * configure.ac:
4         * docs/gst/tmpl/gstbasesrc.sgml:
5         * docs/gst/tmpl/gstelement.sgml:
6         * docs/gst/tmpl/gstevent.sgml:
7         * docs/gst/tmpl/gstfakesrc.sgml:
8         * docs/gst/tmpl/gstformat.sgml:
9         * docs/gst/tmpl/gstghostpad.sgml:
10         * docs/gst/tmpl/gstpad.sgml:
11         * docs/gst/tmpl/gstquery.sgml:
12         * docs/gst/tmpl/gststructure.sgml:
13         * docs/gst/tmpl/gsttaglist.sgml:
14         * docs/gst/tmpl/gstvalue.sgml:
15         * docs/libs/gstreamer-libs-docs.sgml:
16         * docs/libs/gstreamer-libs-sections.txt:
17         * docs/libs/gstreamer-libs.types:
18         * libs/gst/Makefile.am:
19         * libs/gst/control/.cvsignore:
20         * libs/gst/control/Makefile.am:
21         * libs/gst/control/control.c:
22         * libs/gst/control/control.h:
23         * libs/gst/control/dparam.c:
24         * libs/gst/control/dparam.h:
25         * libs/gst/control/dparam_smooth.c:
26         * libs/gst/control/dparam_smooth.h:
27         * libs/gst/control/dparamcommon.h:
28         * libs/gst/control/dparammanager.c:
29         * libs/gst/control/dparammanager.h:
30         * libs/gst/control/dplinearinterp.c:
31         * libs/gst/control/dplinearinterp.h:
32         * libs/gst/control/unitconvert.c:
33         * libs/gst/control/unitconvert.h:
34         * testsuite/Makefile.am:
35         * testsuite/dynparams/.cvsignore:
36         * testsuite/dynparams/Makefile.am:
37         * testsuite/dynparams/dparamstest.c:
38         * tools/Makefile.am:
39         * tools/gst-inspect.c: (print_element_info), (main):
40         * tools/gst-xmlinspect.c: (print_element_info), (main):
41           deactivate and remove dparams (libgstcontrol)
42
43 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
44
45         * gst/elements/gsttypefindelement.c:
46         (gst_type_find_element_have_type), (gst_type_find_element_init),
47         (stop_typefinding), (gst_type_find_element_handle_event),
48         (gst_type_find_element_chain), (gst_type_find_element_getrange):
49         * gst/elements/gsttypefindelement.h:
50           Set caps on all outgoing buffers, not just the first one.
51
52 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
53
54         * gst/elements/gsttypefindelement.c:
55         (gst_type_find_element_have_type),
56         (gst_type_find_element_check_set_buffer_caps),
57         (gst_type_find_element_init), (stop_typefinding),
58         (gst_type_find_element_handle_event),
59         (gst_type_find_element_chain), (gst_type_find_element_getrange):
60         * gst/elements/gsttypefindelement.h:
61           Set caps on first outgoing buffer when we've found the type.
62
63 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
64
65         * docs/gst/gstreamer-docs.sgml:
66         * docs/gst/gstreamer-sections.txt:
67         * docs/gst/tmpl/gstscheduler.sgml:
68         * docs/gst/tmpl/gstschedulerfactory.sgml:
69           Remove some old cruft from docs.
70
71 2005-07-31  Tim-Philipp Müller  <tim at centricular dot net>
72
73         * gst/gstpad.h:
74           Fix inline docs for GstPadLinkReturn.
75           
76         * gst/gststructure.c: (gst_structure_has_name):
77         * gst/gststructure.h:
78         * docs/gst/gstreamer-sections.txt:
79           New API: gst_structure_has_name().
80
81 2005-07-30  Tim-Philipp Müller  <tim at centricular dot net>
82
83         * configure.ac:
84           Use AC_SYS_LARGEFILE, which will set _FILE_OFFSET_BITS=64
85           and _LARGEFILE_SOURCE in config.h as required. Do not 
86           export those flags in our .pc files any longer (#142209).
87
88           Remove unused GST_DISABLE_OMEGA_COTHREADS stuff.
89
90         * gst/elements/gstfilesink.c: (gst_file_sink_class_init),
91         (gst_file_sink_do_seek), (gst_file_sink_event),
92         (gst_file_sink_get_current_offset), (gst_file_sink_render):
93           Redo seek/tell calls with large file support in mind; add some
94           debugging messages; add log message that tells us when large
95           file support is unavailable or not enabled for some reason.
96
97         * gst/elements/gstfilesrc.c: (gst_file_src_class_init):
98           Add log message that tells us when large file support 
99           is unavailable or not enabled for some reason.
100
101 2005-07-29  Wim Taymans  <wim@fluendo.com>
102
103         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
104         Added test for removing an element with ghostpad from a bin.
105         Fixed test as current implementation does the right thing.
106
107         * gst/gstghostpad.c: (gst_proxy_pad_class_init),
108         (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
109         (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
110         (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
111         (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
112         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
113         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
114         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
115         (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
116         (gst_proxy_pad_get_target), (gst_proxy_pad_init),
117         (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
118         (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
119         (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
120         (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
121         (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
122         (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
123         * gst/gstghostpad.h:
124         Clean up ghostpads, remove properties for internal stuff.
125         Make threadsafe.
126         Fix refcounting.
127         Prepare for switching targets, not all use cases work yet.
128
129 2005-07-29  Wim Taymans  <wim@fluendo.com>
130
131         * docs/design/part-gstghostpad.txt:
132         Small update.
133
134         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
135         (gst_bin_remove_func):
136         Unlinking pads while holding the bin LOCK is not a good
137         idea.
138
139         * gst/gstpad.c: (gst_pad_class_init),
140         (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
141         (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
142         No prob setting template after creating the pad.
143
144 2005-07-29  Jan Schmidt  <thaytan@mad.scientist.com>
145
146         * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
147         (gst_bus_peek), (gst_bus_source_dispatch),
148         (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
149         (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
150           gst_bus_poll may be called from other threads. Handle
151           this nicely by not making poll_data disappear off the
152           stack once gst_bus_poll returns.
153           gst_bus_peek now increments the refcount on the returned
154           message.
155
156 2005-07-29  Wim Taymans  <wim@fluendo.com>
157
158         * docs/design/part-gstghostpad.txt:
159         Overview of current GhostPad datastructures and use
160         cases for changing the target.
161
162 2005-07-28  Wim Taymans  <wim@fluendo.com>
163
164         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
165         Added checks for hierarchy consistency whan adding linked
166         elements to bins.
167
168         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
169         Added check to test element scheduling without bin/pipeline.
170
171         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
172         First add elements to bin, then link.
173         
174         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
175         (gst_bin_remove_func):
176         Unlink pads from elements added/removed from bin to maintain
177         hierarchy consistency.
178
179 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
180
181         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
182         (gst_base_transform_handle_buffer):
183         * gst/base/gstbasetransform.h:
184           Remove broken delay_configure (fixes renegotiation of software
185           scaling pipelines); remove some leftover printf()s.
186
187 2005-07-28  Wim Taymans  <wim@fluendo.com>
188
189         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
190         Added some more tests for wrong hierarchy
191
192         * docs/design/part-overview.txt:
193         Some updates.
194
195         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
196         Cleanups.
197
198         * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
199         (gst_element_dispose):
200         Some more cleanups.
201
202         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
203         (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
204         (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
205         (gst_pad_set_caps), (gst_pad_send_event):
206         Check for correct hierarchy when linking pads. Moving to
207         strict requirement for ghostpads when linking elements in
208         different bins.
209
210         * gst/gstpad.h:
211         Clean ups. Added WRONG_HIERARCHY return value.
212
213 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
214
215         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
216           Better debug if no transform is possible.
217
218 2005-07-27  Wim Taymans  <wim@fluendo.com>
219
220         * docs/random/wtay/network-transp:
221         Some old doc I had.
222
223 2005-07-27  Wim Taymans  <wim@fluendo.com>
224
225         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
226         (gst_dp_event_from_packet):
227         Fix serialization of seek events.
228
229 2005-07-27  Wim Taymans  <wim@fluendo.com>
230
231         * check/gst-libs/gdp.c: (GST_START_TEST):
232         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
233         Fix compilation and fix event serialization.
234
235 2005-07-27  Wim Taymans  <wim@fluendo.com>
236
237         * CHANGES-0.9:
238         * docs/design/part-TODO.txt:
239         * docs/design/part-events.txt:
240         Some docs updates
241
242         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
243         (gst_base_sink_event), (gst_base_sink_do_sync),
244         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
245         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
246         (gst_base_src_do_seek), (gst_base_src_event_handler),
247         (gst_base_src_loop):
248         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
249         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
250         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
251         (gst_base_transform_event), (gst_base_transform_handle_buffer),
252         (gst_base_transform_set_passthrough),
253         (gst_base_transform_is_passthrough):
254         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
255         * gst/elements/gstfilesink.c: (gst_file_sink_event):
256         Event updates.
257
258         * gst/gstbuffer.h:
259         Use faster casts.
260
261         * gst/gstelement.c: (gst_element_seek):
262         * gst/gstelement.h:
263         Update gst_element_seek.
264
265         * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
266         (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
267         (gst_event_new_flush_start), (gst_event_new_flush_stop),
268         (gst_event_new_eos), (gst_event_new_newsegment),
269         (gst_event_parse_newsegment), (gst_event_new_tag),
270         (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
271         (gst_event_parse_qos), (gst_event_new_seek),
272         (gst_event_parse_seek), (gst_event_new_navigation):
273         * gst/gstevent.h:
274         Make GstEvent use GstStructure. Add parsing code, make sure the
275         API is sufficiently generic.
276         Mark possible directions of events and serialization.
277
278         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
279         (_gst_message_copy), (gst_message_new_segment_start),
280         (gst_message_new_segment_done), (gst_message_new_custom),
281         (gst_message_parse_segment_start),
282         (gst_message_parse_segment_done):
283         Small cleanups.
284
285         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
286         (gst_pad_set_caps), (gst_pad_send_event):
287         Update for new events. 
288         Catch events sent in wrong directions.
289
290         * gst/gstqueue.c: (gst_queue_link_src),
291         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
292         (gst_queue_handle_src_query):
293         Event updates.
294
295         * gst/gsttag.c:
296         * gst/gsttag.h:
297         Remove event code from this file.
298
299         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
300         (gst_dp_event_from_packet):
301         Event updates.
302
303 2005-07-27  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
304
305         * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
306         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
307         (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
308           Make debugging actually useful.
309
310 2005-07-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
311
312         * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
313         (gst_pad_fixate_caps):
314           Implement default fixation once again, so that gst_pad_fixate()
315           actually does anything at all. This probably needs to be some
316           sort of a last resort, and use profile-based fixation first, but
317           since that doesn't exist yet, this is the best we have. Fixes
318           visualization in Totem.
319
320 2005-07-22  Wim Taymans  <wim@fluendo.com>
321
322         * docs/design/part-events.txt:
323         Small update.
324
325         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
326         (gst_base_sink_do_sync), (gst_base_sink_activate_push),
327         (gst_base_sink_activate_pull):
328         Some more comments.
329
330         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
331         (gst_fake_src_create):
332         Fix handoff marshall.
333
334         * gst/elements/gstidentity.c: (gst_identity_class_init),
335         (gst_identity_transform_ip):
336         We're a real inplace element.
337
338         * gst/gstbus.c: (gst_bus_post):
339         Added some comments.
340
341         * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
342         * tests/muxing/case1.c: (main):
343         * tests/sched/dynamic-pipeline.c: (main):
344         * tests/sched/interrupt1.c: (main):
345         * tests/sched/interrupt2.c: (main):
346         * tests/sched/interrupt3.c: (main):
347         * tests/sched/runxml.c: (main):
348         * tests/sched/sched-stress.c: (main):
349         * tests/seeking/seeking1.c: (event_received), (main):
350         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
351         (main):
352         * tests/threadstate/threadstate3.c: (main):
353         * tests/threadstate/threadstate4.c: (main):
354         * tests/threadstate/threadstate5.c: (main):
355         Fix the tests.
356
357 2005-07-21  Wim Taymans  <wim@fluendo.com>
358
359         * docs/design/part-seeking.txt:
360         Some small additions.
361
362         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
363         (gst_base_sink_get_times), (gst_base_sink_do_sync),
364         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
365         * gst/base/gstbasesink.h:
366         discont values are gint64, handle the math correctly.
367
368         * gst/base/gstbasesrc.c: (gst_base_src_loop):
369         Make the basesrc report error if the source pad is not linked.
370
371         * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
372         (gst_queue_loop), (gst_queue_handle_src_query),
373         (gst_queue_src_activate_push):
374         Make queue collect data even if the srcpad is not linked.
375         Start pushing out data as soon as it is linked.
376
377         * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
378         * gst/gstutils.h:
379         Added gst_flow_get_name() to ease error reporting.
380
381 2005-07-20  Wim Taymans  <wim@fluendo.com>
382
383         * gst/gstmessage.c: (gst_message_new_segment_start),
384         (gst_message_new_segment_done), (gst_message_parse_segment_start),
385         (gst_message_parse_segment_done):
386         * gst/gstmessage.h:
387         Added a bunch of messages for advanced seeking.
388
389         * gst/parse/grammar.y:
390         * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
391         (gst_dpman_state_changed):
392         Fix some new-pad -> pad-added signals
393
394 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
395
396         * docs/manual/appendix-porting.xml:
397         * docs/pwg/appendix-porting.xml:
398           Document new-pad/state-change signal renames and the FixedList
399           type rename.
400
401 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
402
403         * docs/manual/advanced-autoplugging.xml:
404         * docs/manual/basics-helloworld.xml:
405         * docs/manual/basics-pads.xml:
406         * docs/random/ds/0.9-suggested-changes:
407         * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
408         * gst/gstelement.h:
409         * gst/gstevent.h:
410         * gst/gstformat.h:
411         * gst/gstquery.h:
412         * gst/gststructure.c: (gst_structure_value_get_generic_type),
413         (gst_structure_parse_array), (gst_structure_parse_value):
414         * gst/gstvalue.c: (gst_type_is_fixed),
415         (gst_value_list_prepend_value), (gst_value_list_append_value),
416         (gst_value_list_get_size), (gst_value_list_get_value),
417         (gst_value_transform_array_string), (gst_value_serialize_array),
418         (gst_value_deserialize_array), (gst_value_intersect_array),
419         (gst_value_is_fixed), (_gst_value_initialize):
420         * gst/gstvalue.h:
421           GstElement::new-pad -> pad-added, GstElement::state-change ->
422           state-changed, GstValueFixedList -> GstValueArray, add format and
423           flags as their own arguments in gst_element_seek() (should improve
424           "bindeability"), remove function generators since they don't work
425           under a whole bunch of compilers (they were deprecated already
426           anyway).
427
428 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
429
430         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
431         (_gst_debug_register_funcptr):
432         * gst/gstinfo.h:
433           Fix illegal cast on some platforms (#309253).
434
435 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
436
437         * gst/gstmessage.c: (gst_message_new_custom):
438         * gst/gstmessage.h:
439           Add _new_custom, make _new_application a macro to _new_custom.
440
441 2005-07-20  Wim Taymans  <wim@fluendo.com>
442
443         * gst/base/gstbasesrc.c: (gst_base_src_init),
444         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
445         * gst/base/gstbasesrc.h:
446         Add a gboolean to decide when to push out a discont.
447
448         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
449         (gst_queue_loop), (gst_queue_handle_src_query),
450         (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
451         (gst_queue_set_property), (gst_queue_get_property):
452         Some cleanups.
453
454         * tests/threadstate/threadstate1.c: (main):
455         Make a thread test compile and run... very silly..
456
457
458 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
459
460         * docs/manual/appendix-porting.xml:
461           Mention removal of libgstgconf-0.9.la and existence of gconf
462           elements.
463
464 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
465
466         * docs/pwg/advanced-clock.xml:
467         * docs/pwg/appendix-porting.xml:
468         * docs/pwg/intro-preface.xml:
469         * docs/pwg/other-base.xml:
470         * docs/pwg/other-manager.xml:
471         * docs/pwg/other-nton.xml:
472         * docs/pwg/other-ntoone.xml:
473         * docs/pwg/other-oneton.xml:
474         * docs/pwg/pwg.xml:
475           Document base classes, update sections of n-to-1 and 1-to-n (muxer,
476           demuxer), remove n-to-n (was never written), fix some code examples
477           and links and update the porting section to include all this.
478
479 2005-07-19  Wim Taymans  <wim@fluendo.com>
480
481         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
482         (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
483         (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
484         (gst_queue_src_activate_push), (gst_queue_change_state),
485         (gst_queue_get_property):
486         * gst/gstqueue.h:
487         Propagate GstFlowReturn more intelligently upstream and output
488         an ERROR/EOS when streaming stopped due to fatal error.
489
490 2005-07-19  Wim Taymans  <wim@fluendo.com>
491
492         * tools/gst-launch.c: (check_intr), (event_loop), (main):
493         Don't block forever for the state change to complete, the
494         pipeline already did with a sensible timeout.
495
496 2005-07-19  Wim Taymans  <wim@fluendo.com>
497
498         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
499         Make sure we never call the create function is we
500         got deactivated.
501
502 2005-07-19  Andy Wingo  <wingo@pobox.com>
503
504         * gst/parse/parse.l: Attempt to solve bug #172815.
505
506 2005-07-19  Wim Taymans  <wim@fluendo.com>
507
508         * docs/design/part-clocks.txt:
509         * docs/design/part-events.txt:
510         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
511         Small docs updates.
512         Only update the seeking values when we are not
513         busy streaming.
514
515 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
516
517         * gst/base/gstbasesrc.c: (gst_base_src_loop):
518           Oops, ignore the result of gst_pad_push_event here.
519
520 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
521
522         * gst/base/gstbasesrc.c: (gst_base_src_loop),
523         (gst_base_src_activate_push):
524           Send discont event from the loop function, as pads
525           aren't activated yet in the activate_push handler.
526
527         * gst/gstbin.c: (bin_bus_handler):
528           Don't leak element name.
529
530 2005-07-18  Andy Wingo  <wingo@pobox.com>
531
532         * configure.ac: Use AS_LIBTOOL_TAGS.
533
534 2005-07-18  Wim Taymans  <wim@fluendo.com>
535
536         * docs/gst/gstreamer.types:
537         Remove deleted types.
538
539 2005-07-18  Wim Taymans  <wim@fluendo.com>
540
541         * check/elements/gstfakesrc.c: (GST_START_TEST):
542         * configure.ac:
543         * gst/Makefile.am:
544         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
545         (init_popt_callback):
546         * gst/gst.h:
547         * gst/gst_private.h:
548         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
549         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
550         * gst/gstbin.h:
551         * gst/gstbus.h:
552         * gst/gstconfig.h.in:
553         * gst/gstelement.c: (gst_element_class_init),
554         (gst_element_set_base_time), (gst_element_get_base_time),
555         (iterator_fold_with_resync), (gst_element_change_state),
556         (gst_element_dispose), (gst_element_get_bus):
557         * gst/gstelement.h:
558         * gst/gstelementfactory.h:
559         * gst/gsterror.c: (_gst_core_errors_init):
560         * gst/gsterror.h:
561         * gst/gstevent.h:
562         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
563         * gst/gstindex.c:
564         * gst/gstinfo.c: (_gst_debug_init):
565         * gst/gstmessage.c: (_gst_message_copy):
566         * gst/gstmessage.h:
567         * gst/gstminiobject.h:
568         * gst/gstobject.c:
569         * gst/gstobject.h:
570         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
571         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
572         * gst/gstpad.h:
573         * gst/gstparse.h:
574         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
575         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
576         (gst_pipeline_get_last_stream_time):
577         * gst/gstpipeline.h:
578         * gst/gstpluginfeature.h:
579         * gst/gstquery.h:
580         * gst/gstscheduler.c:
581         * gst/gstscheduler.h:
582         * gst/gststructure.h:
583         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
584         (gst_task_finalize), (gst_task_func), (gst_task_create),
585         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
586         (gst_task_stop), (gst_task_pause):
587         * gst/gsttask.h:
588         * gst/gsttypefind.h:
589         * gst/gsttypes.h:
590         * gst/registries/gstlibxmlregistry.c: (load_feature),
591         (gst_xml_registry_load), (gst_xml_registry_save_feature):
592         * gst/registries/gstxmlregistry.c:
593         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
594         * gst/schedulers/threadscheduler.c:
595         * libs/gst/control/dparammanager.h:
596         * tools/gst-inspect.c: (print_element_list),
597         (print_plugin_features), (print_element_features):
598         * tools/gst-xmlinspect.c: (print_element_list),
599         (print_plugin_info), (main):
600         Removed plugable schedulers.
601         Removed Scheduler/Manager from elements.
602         Removed gsttypes.h, rearranged includes.
603         Removed dependency pad<->element, element<>pipeline, and
604         various others,  fix includes.
605         implement gst_pad_get_parent() with gst_object_get_parent()
606         Make GstTask sefcontained.
607         Fix _get_state() on GstBin, it did not return ASYNC with a 0
608         timeout.
609         Fix endless loop in iterator_fold_with_resync.
610
611
612 2005-07-18  Wim Taymans  <wim@fluendo.com>
613
614         * gst/Makefile.am:
615         * gst/gstarch.h:
616         Remove old file.
617
618 2005-07-18  Wim Taymans  <wim@fluendo.com>
619
620         * gst/Makefile.am:
621         No more cothreads.h
622
623 2005-07-18  Wim Taymans  <wim@fluendo.com>
624
625         * gst/cothreads.c:
626         * gst/cothreads.h:
627         Let's remove these.
628
629 2005-07-18  Wim Taymans  <wim@fluendo.com>
630
631         * docs/design/part-dynamic.txt:
632         * docs/design/part-events.txt:
633         * docs/design/part-seeking.txt:
634         Some more docs in the works.
635
636         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
637         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
638         (gst_base_transform_setcaps), (gst_base_transform_get_size),
639         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
640         (gst_base_transform_handle_buffer),
641         (gst_base_transform_sink_activate_push),
642         (gst_base_transform_src_activate_pull),
643         (gst_base_transform_set_passthrough),
644         (gst_base_transform_is_passthrough):
645         Refcounting fixes.
646
647         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
648         Cleanups.
649
650         * gst/gstevent.c: (gst_event_finalize):
651         Set SRC to NULL.
652
653         * gst/gstutils.c: (gst_element_unlink),
654         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
655         (gst_pad_proxy_setcaps):
656         * gst/gstutils.h:
657         Add _get_parent_element() to get a pads parent as an element.
658
659 2005-07-18  Wim Taymans  <wim@fluendo.com>
660
661         * check/gst/gstbin.c: (GST_START_TEST):
662         Remove bogus test.
663
664 2005-07-18  Wim Taymans  <wim@fluendo.com>
665
666         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
667         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
668         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
669         (gst_base_sink_event), (gst_base_sink_do_sync),
670         (gst_base_sink_chain), (gst_base_sink_loop),
671         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
672         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
673         Refcounting fixes.
674         Fix logic for returning ASYNC when not prerolled.
675
676 2005-07-18  Wim Taymans  <wim@fluendo.com>
677
678         * gst/gstqueue.c: (gst_queue_handle_sink_event):
679         Fix nasty refcount bug.
680
681 2005-07-16 Philippe Khalaf <burger@speedy.org>
682         * gst/elements/gstfdsrc.c:
683         * gst/elements/gstfdsrc.h:
684         * gst/elements/gstelements.c:
685         * gst/elements/Makefile.am:
686         Ported fdsrc to 0.9.
687
688 2005-07-16  Wim Taymans  <wim@fluendo.com>
689
690         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
691         (gst_base_sink_do_sync):
692         Fix compile error.
693
694 2005-07-16  Wim Taymans  <wim@fluendo.com>
695
696         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
697         (gst_base_sink_event), (gst_base_sink_get_times),
698         (gst_base_sink_do_sync), (gst_base_sink_change_state):
699         * gst/base/gstbasesink.h:
700         Store and use discont values when syncing buffers as described
701         in design docs.
702         
703         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
704         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
705         (gst_base_src_activate_push):
706         Push discont event when starting.
707
708         * gst/elements/gstidentity.c: (gst_identity_transform):
709         Small cleanups.
710
711         * gst/gstbin.c: (gst_bin_change_state):
712         Small cleanups in base_time  distribution.
713
714         * gst/gstelement.c: (gst_element_set_base_time),
715         (gst_element_get_base_time), (gst_element_change_state):
716         * gst/gstelement.h:
717         Added methods for the base_time of the element.
718         Some MT fixes.
719
720         * gst/gstpipeline.c: (gst_pipeline_send_event),
721         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
722         (gst_pipeline_get_last_stream_time):
723         * gst/gstpipeline.h:
724         MT fixes.
725         Handle seeking as described in design doc, remove stream_time
726         hack.
727         Cleanups clock and stream_time selection code. Added accessors
728         for the stream_time.
729         
730
731 2005-07-16  Andy Wingo  <wingo@pobox.com>
732
733         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
734         (#305291).
735
736 2005-07-16  Wim Taymans  <wim@fluendo.com>
737
738         * check/gst/gstbin.c: (GST_START_TEST):
739         Make elements silent as the deep_notify refs the
740         parent, which might make the test fail.
741
742         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
743         Don't hold the lock for too long.
744
745 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
746
747         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
748           Don't unref the caps we passed to gst_caps_make_writable() after
749           passing them. gst_caps_make_writable() will do that for us.
750
751 2005-07-15  Andy Wingo  <wingo@pobox.com>
752
753         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
754         (#157311).
755
756         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
757         own marshalling function for the handoff signal. Properly type the
758         buffer as a buffer. Fixes some warnings. Should do a more general
759         solution.
760         (gst_identity_class_init): Plug into the right marshaller.
761
762 2005-07-15  Wim Taymans  <wim@fluendo.com>
763
764         * docs/design/part-TODO.txt:
765         * docs/design/part-clocks.txt:
766         * docs/design/part-element-sink.txt:
767         * docs/design/part-events.txt:
768         * docs/design/part-gstpipeline.txt:
769         Updated docs, mostly DISCONT related.
770
771 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
772
773         * docs/pwg/building-pads.xml:
774           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
775
776 2005-07-15  Andy Wingo  <wingo@pobox.com>
777
778         * tools/gst-typefind.c: Update, add copyright block.
779
780         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
781         Normalize and truncate caps before fixation.
782
783         * gst/gstcaps.h:
784         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
785         discards all but the first structure from its argument.
786
787 2005-07-15  Wim Taymans  <wim@fluendo.com>
788
789         * gst/base/gstbasetransform.c: (gst_base_transform_init),
790         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
791         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
792         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
793         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
794         (gst_base_transform_chain), (gst_base_transform_change_state),
795         (gst_base_transform_set_passthrough),
796         (gst_base_transform_is_passthrough):
797         * gst/base/gstbasetransform.h:
798         Make passthrough work using the bufferpools.
799         Changed API a bit, subclasses have to write into a buffer
800         provided by the base class.
801         More debug info in nego functions.
802         
803         * gst/elements/gstidentity.c: (gst_identity_init),
804         (gst_identity_transform):
805         Port to new base class.
806
807 2005-07-15  Wim Taymans  <wim@fluendo.com>
808
809         * gst/gstmessage.c: (gst_message_new_state_changed):
810         * tools/gst-launch.c: (event_loop), (main):
811         Totally dump messages in -launch with the -m option.
812         Fix message name for State messages,
813
814 2005-07-14  Wim Taymans  <wim@fluendo.com>
815
816         * gst/base/gstbasesrc.c: (gst_base_src_loop):
817         Post error messages on errors.
818
819 2005-07-14  Wim Taymans  <wim@fluendo.com>
820
821         * gst/gstcaps.c: (gst_caps_do_simplify):
822         Remove debug info.
823
824         * gst/gsterror.h:
825         Define error for stream stopped.
826
827         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
828         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
829         Do proper return values.
830
831         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
832         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
833         (gst_pad_get_range):
834         Better return values.
835
836         * gst/gstpad.h:
837         Reorganise return values, add macro to check for fatal errors.
838
839         * gst/gstqueue.c: (gst_queue_chain):
840         Return proper GstFlowReturn values,
841
842 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
843
844         * docs/gst/gstreamer-sections.txt:
845         * docs/gst/gstreamer.types:
846         * docs/gst/tmpl/gst.sgml:
847         * docs/gst/tmpl/gstbasesink.sgml:
848         * docs/gst/tmpl/gstbasesrc.sgml:
849         * docs/gst/tmpl/gstbasetransform.sgml:
850         * docs/gst/tmpl/gstbin.sgml:
851         * docs/gst/tmpl/gstbuffer.sgml:
852         * docs/gst/tmpl/gstcaps.sgml:
853         * docs/gst/tmpl/gstclock.sgml:
854         * docs/gst/tmpl/gstcompat.sgml:
855         * docs/gst/tmpl/gstconfig.sgml:
856         * docs/gst/tmpl/gstelement.sgml:
857         * docs/gst/tmpl/gstelementdetails.sgml:
858         * docs/gst/tmpl/gstelementfactory.sgml:
859         * docs/gst/tmpl/gstenumtypes.sgml:
860         * docs/gst/tmpl/gsterror.sgml:
861         * docs/gst/tmpl/gstevent.sgml:
862         * docs/gst/tmpl/gstfakesink.sgml:
863         * docs/gst/tmpl/gstfakesrc.sgml:
864         * docs/gst/tmpl/gstfilesink.sgml:
865         * docs/gst/tmpl/gstfilesrc.sgml:
866         * docs/gst/tmpl/gstfilter.sgml:
867         * docs/gst/tmpl/gstformat.sgml:
868         * docs/gst/tmpl/gstghostpad.sgml:
869         * docs/gst/tmpl/gstimplementsinterface.sgml:
870         * docs/gst/tmpl/gstindex.sgml:
871         * docs/gst/tmpl/gstindexfactory.sgml:
872         * docs/gst/tmpl/gstinfo.sgml:
873         * docs/gst/tmpl/gstiterator.sgml:
874         * docs/gst/tmpl/gstmacros.sgml:
875         * docs/gst/tmpl/gstmemchunk.sgml:
876         * docs/gst/tmpl/gstminiobject.sgml:
877         * docs/gst/tmpl/gstobject.sgml:
878         * docs/gst/tmpl/gstpad.sgml:
879         * docs/gst/tmpl/gstpadtemplate.sgml:
880         * docs/gst/tmpl/gstparse.sgml:
881         * docs/gst/tmpl/gstpipeline.sgml:
882         * docs/gst/tmpl/gstplugin.sgml:
883         * docs/gst/tmpl/gstpluginfeature.sgml:
884         * docs/gst/tmpl/gstquery.sgml:
885         * docs/gst/tmpl/gstqueue.sgml:
886         * docs/gst/tmpl/gstregistry.sgml:
887         * docs/gst/tmpl/gstregistrypool.sgml:
888         * docs/gst/tmpl/gstscheduler.sgml:
889         * docs/gst/tmpl/gstschedulerfactory.sgml:
890         * docs/gst/tmpl/gststructure.sgml:
891         * docs/gst/tmpl/gstsystemclock.sgml:
892         * docs/gst/tmpl/gsttaglist.sgml:
893         * docs/gst/tmpl/gsttagsetter.sgml:
894         * docs/gst/tmpl/gsttrace.sgml:
895         * docs/gst/tmpl/gsttrashstack.sgml:
896         * docs/gst/tmpl/gsttypefind.sgml:
897         * docs/gst/tmpl/gsttypefindfactory.sgml:
898         * docs/gst/tmpl/gsttypes.sgml:
899         * docs/gst/tmpl/gsturihandler.sgml:
900         * docs/gst/tmpl/gsturitype.sgml:
901         * docs/gst/tmpl/gstutils.sgml:
902         * docs/gst/tmpl/gstvalue.sgml:
903         * docs/gst/tmpl/gstversion.sgml:
904         * docs/gst/tmpl/gstxml.sgml:
905         * docs/libs/tmpl/gstcontrol.sgml:
906         * docs/libs/tmpl/gstdataprotocol.sgml:
907         * docs/libs/tmpl/gstdparam.sgml:
908         * docs/libs/tmpl/gstdplinint.sgml:
909         * docs/libs/tmpl/gstdpman.sgml:
910         * docs/libs/tmpl/gstdpsmooth.sgml:
911         * docs/libs/tmpl/gstgetbits.sgml:
912         * docs/libs/tmpl/gstunitconvert.sgml:
913         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
914         (gst_push_src_base_init), (gst_push_src_class_init),
915         (gst_push_src_init), (gst_push_src_create):
916         * gst/base/gstpushsrc.h:
917         * gst/elements/gstelements.c:
918         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
919         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
920         (gst_fake_sink_init), (gst_fake_sink_set_property),
921         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
922         (gst_fake_sink_event), (gst_fake_sink_preroll),
923         (gst_fake_sink_render), (gst_fake_sink_change_state):
924         * gst/elements/gstfakesink.h:
925         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
926         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
927         (gst_fake_src_base_init), (gst_fake_src_class_init),
928         (gst_fake_src_init), (gst_fake_src_event_handler),
929         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
930         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
931         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
932         (gst_fake_src_create_buffer), (gst_fake_src_create),
933         (gst_fake_src_start), (gst_fake_src_stop):
934         * gst/elements/gstfakesrc.h:
935         * gst/elements/gstfilesink.c: (_do_init),
936         (gst_file_sink_base_init), (gst_file_sink_class_init),
937         (gst_file_sink_init), (gst_file_sink_dispose),
938         (gst_file_sink_set_location), (gst_file_sink_set_property),
939         (gst_file_sink_get_property), (gst_file_sink_open_file),
940         (gst_file_sink_close_file), (gst_file_sink_query),
941         (gst_file_sink_event), (gst_file_sink_render),
942         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
943         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
944         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
945         * gst/elements/gstfilesink.h:
946         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
947         (gst_file_src_class_init), (gst_file_src_init),
948         (gst_file_src_finalize), (gst_file_src_set_location),
949         (gst_file_src_set_property), (gst_file_src_get_property),
950         (gst_file_src_map_region), (gst_file_src_map_small_region),
951         (gst_file_src_create_mmap), (gst_file_src_create_read),
952         (gst_file_src_create), (gst_file_src_is_seekable),
953         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
954         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
955         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
956         (gst_file_src_uri_handler_init):
957         * gst/elements/gstfilesrc.h:
958           more autistic cleanliness in functions/names/defines
959
960 2005-07-13  Andy Wingo  <wingo@pobox.com>
961
962         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
963         source couldn't negotiate.
964
965         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
966         connections again.
967
968         * gst/gstutils.h:
969         * gst/gstutils.c (gst_element_link_pads_filtered): New old
970         function. I am channeling Hades. Put your boots on suckers!!!
971
972 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
973
974         * testsuite/caps/Makefile.am:
975         * testsuite/caps/value_compare.c:
976         * testsuite/caps/value_intersect.c:
977         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
978           move two testsuite apps over to the check dir
979
980 2005-07-12  Wim Taymans  <wim@fluendo.com>
981
982         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
983         Added more debug info in the negotiate process.
984
985         * gst/gstmessage.h:
986         Prepare for segment playback.
987
988         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
989         Better debugging.
990
991         * gst/gstutils.c:
992         Some more docs.
993
994         * tools/gst-launch.c: (main):
995         NULL pipeline on errors.
996
997 2005-07-12  Andy Wingo  <wingo@pobox.com>
998
999         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
1000         not it comes from a malloc region. Make sure our copy gets freed.
1001
1002 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1003
1004         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
1005         * check/gst/gstmessage.c: (GST_START_TEST):
1006         * check/gst/gststructure.c: (GST_START_TEST),
1007         (gst_structure_suite), (main):
1008           more testing
1009         * gst/gstelement.c: (gst_element_message_full):
1010           clean up GError and debug string now that they get copied
1011         * gst/gstmessage.c: (gst_message_new_error),
1012         (gst_message_new_warning), (gst_message_parse_error),
1013         (gst_message_parse_warning):
1014           use GST_TYPE_G_ERROR for structure_new, and take copies of
1015           arguments, so that we don't mess up refcounting
1016
1017 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1018
1019         * check/Makefile.am:
1020           add per-test valgrind targets
1021         * check/gst-libs/gdp.c: (GST_START_TEST),
1022         (gst_data_protocol_suite), (main):
1023           clean up
1024
1025 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1026
1027         * check/Makefile.am:
1028           instate more valgrindable tests
1029         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1030         (GST_START_TEST), (fakesrc_suite):
1031         * check/gst/gstpad.c: (GST_START_TEST):
1032         * check/gst/gststructure.c: (GST_START_TEST):
1033           fix test leaks
1034         * docs/gst/tmpl/gstminiobject.sgml:
1035         * gst/gstpad.c: (gst_pad_finalize):
1036           fix the static mutex leak
1037
1038 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1039
1040         * check/Makefile.am:
1041           add two more tests for valgrinding
1042         * check/gst/gstvalue.c: (GST_START_TEST):
1043           test refcount of deserialized buffer, found a leak
1044         * docs/gst/gstreamer-docs.sgml:
1045         * docs/gst/gstreamer-sections.txt:
1046         * docs/gst/gstreamer.types:
1047         * docs/gst/tmpl/gstminiobject.sgml:
1048           add miniobject to docs
1049         * gst/gstminiobject.c:
1050           add some docs
1051         * gst/gstvalue.c: (gst_value_deserialize_buffer),
1052         (gst_string_unwrap):
1053           fix a hard-to-find invalid write for one of the tests
1054           fix a leak for deserialized buffers
1055
1056 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1057
1058         * docs/pwg/advanced-events.xml:
1059         * docs/pwg/advanced-request.xml:
1060         * docs/pwg/advanced-scheduling.xml:
1061         * docs/pwg/appendix-porting.xml:
1062         * docs/pwg/building-boiler.xml:
1063         * docs/pwg/intro-preface.xml:
1064         * docs/pwg/other-ntoone.xml:
1065           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
1066           of example code and explanation for pad activation, loop() and
1067           getrange() functions and a bit more. Remove old comments pointing
1068           to loop-functions.
1069         * examples/pwg/Makefile.am:
1070           Add loop/getrange examples.
1071
1072 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1073
1074         * configure.ac:
1075           check for valgrind binary + some fixes
1076         * check/gst.supp:
1077           valgrind suppressions for the tests
1078         * check/Makefile.am:
1079           add a valgrind: target that valgrinds the unit tests
1080         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
1081         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
1082         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1083         * check/gst/gstghostpad.c:
1084           added some cleanup
1085         * check/gst/gstdata.c:
1086           removed
1087         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
1088         (thread_unref), (gst_mini_object_suite), (main):
1089           added
1090         * gst/gst.c: (gst_deinit):
1091         * gst/gst.h:
1092           add a method to clean up.
1093         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1094         (gst_system_clock_obtain):
1095           allow for disposing the system clock.
1096         * tools/gst-launch.c: (main):
1097           deinit
1098
1099 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1100
1101         * docs/gst/tmpl/gstbasesrc.sgml:
1102         * docs/gst/tmpl/gstfakesrc.sgml:
1103         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1104         (gst_base_src_init), (gst_base_src_set_property),
1105         (gst_base_src_get_property), (gst_base_src_get_range),
1106         (gst_base_src_start):
1107         * gst/base/gstbasesrc.h:
1108           add num-buffers property
1109         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1110         (gst_fakesrc_init), (gst_fakesrc_set_property),
1111         (gst_fakesrc_get_property), (gst_fakesrc_create),
1112         (gst_fakesrc_start):
1113           remove num-buffers property
1114
1115 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1116
1117         * docs/gst/gstreamer-sections.txt:
1118         * docs/gst/tmpl/gstbasesink.sgml:
1119         * docs/gst/tmpl/gstbasesrc.sgml:
1120         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
1121         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
1122         (gst_base_sink_finalize), (gst_base_sink_set_clock),
1123         (gst_base_sink_set_property), (gst_base_sink_get_property),
1124         (gst_base_sink_handle_object), (gst_base_sink_event),
1125         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
1126         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
1127         (gst_base_sink_loop), (gst_base_sink_deactivate),
1128         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
1129         (gst_base_sink_change_state):
1130         * gst/base/gstbasesink.h:
1131         * gst/base/gstbasesrc.h:
1132         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
1133         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
1134         (gst_filesink_init):
1135           more macro splitting
1136
1137 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1138
1139         * gst/gstelement.c: (gst_element_get_bus):
1140           add debug
1141         * tools/gst-launch.c: (check_intr), (event_loop):
1142           fix bus leaks
1143
1144 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1145
1146         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
1147           fix a caps leak
1148
1149 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1150
1151         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1152         (gst_base_src_finalize):
1153           add finalize method and clean up properly
1154         * gst/gstpipeline.c: (gst_pipeline_dispose):
1155           add debug
1156
1157 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1158
1159         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
1160         (gst_bin_suite):
1161           add more things to check
1162         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
1163         * gst/gstelement.c:
1164           more debug
1165
1166 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1167
1168         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1169         (GST_START_TEST), (fakesrc_suite):
1170         * check/gst-libs/gdp.c: (GST_START_TEST):
1171         * check/gst/gst.c: (GST_START_TEST):
1172         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
1173         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1174         * check/gst/gstbus.c: (GST_START_TEST):
1175         * check/gst/gstcaps.c: (GST_START_TEST):
1176         * check/gst/gstdata.c: (GST_START_TEST):
1177         * check/gst/gstelement.c: (GST_START_TEST):
1178         * check/gst/gstghostpad.c: (GST_START_TEST):
1179         * check/gst/gstiterator.c: (GST_START_TEST):
1180         * check/gst/gstmessage.c: (GST_START_TEST):
1181         * check/gst/gstobject.c: (GST_START_TEST):
1182         * check/gst/gstpad.c: (GST_START_TEST):
1183         * check/gst/gststructure.c: (GST_START_TEST):
1184         * check/gst/gstsystemclock.c: (GST_START_TEST),
1185         (gst_systemclock_suite):
1186         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
1187         * check/gst/gstvalue.c: (GST_START_TEST):
1188         * check/pipelines/cleanup.c: (GST_START_TEST):
1189         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
1190         * check/states/sinks.c: (GST_START_TEST):
1191         * check/gstcheck.c: (gst_check_init):
1192         * check/gstcheck.h:
1193           add debugging category
1194           use GST_START_TEST now, so we add a debug line
1195
1196 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1197
1198         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
1199           add test for state change message on a bin
1200         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
1201           add another test
1202         * gst/gstbin.c: (gst_bin_init):
1203         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
1204         * gst/gstelement.c: (gst_element_post_message),
1205         (gst_element_set_state):
1206         * gst/gstelementfactory.c: (gst_element_factory_create):
1207         * gst/gstmessage.c: (gst_message_new):
1208         * gst/gstscheduler.c:
1209           various debugging additions and cleanups
1210
1211 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1212
1213         * check/Makefile.am:
1214         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
1215         (main):
1216           adding tests for elements
1217         * gst/gstelement.c: (gst_element_dispose):
1218
1219 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1220
1221         * gst/registries/gstlibxmlregistry.c: (load_feature):
1222           plug more leaks.  A simple gst_init() now is leakfree, yay.
1223
1224 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1225
1226         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
1227         (gst_xml_registry_load):
1228           plug another memleak
1229
1230 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1231
1232         * configure.ac:
1233           use GST_SET_ERROR_CFLAGS
1234         * docs/faq/cvs.xml:
1235           change to ERROR_CFLAGS
1236
1237 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1238
1239         * configure.ac:
1240           make GST_ERROR_CFLAGS overridable and re-enable Werror
1241         * docs/faq/cvs.xml:
1242           add a note about error CFLAGS
1243         * docs/gst/tmpl/gstfakesrc.sgml:
1244         * gst/elements/gstfakesrc.c:
1245           comment out some unused code
1246         * gst/gst.c: (split_and_iterate):
1247         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
1248         (load_feature):
1249           plug some memleaks
1250
1251 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1252
1253         * common/Makefile.am:
1254         * common/gtk-doc.mak:
1255         * docs/gst/Makefile.am:
1256           factor out gtk-doc.mak
1257
1258 2005-07-07  Wim Taymans  <wim@fluendo.com>
1259
1260         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
1261         (gst_thread_scheduler_dispose):
1262         Unlock the STREAM_LOCK completely.
1263
1264 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1265
1266         * check/Makefile.am:
1267         * check/elements/.cvsignore:
1268         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1269         (START_TEST), (fakesrc_suite), (main):
1270         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1271         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
1272         (gst_fakesrc_create), (gst_fakesrc_start):
1273         * gst/elements/gstfakesrc.h:
1274           adding a first element test
1275
1276 2005-07-07  Andy Wingo  <wingo@pobox.com>
1277
1278         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
1279         debug message.
1280
1281 2005-07-07  Wim Taymans  <wim@fluendo.com>
1282
1283         * gst/gstquery.c:
1284         * gst/gstquery.h:
1285         Remove old types
1286
1287 2005-07-07  Wim Taymans  <wim@fluendo.com>
1288
1289         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
1290         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
1291         Allow subclasses to implement their own negotiation.
1292
1293 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1294
1295         * docs/design/part-gstbin.txt:
1296         * docs/design/part-gstpipeline.txt:
1297           Update design notes to reflect the movement of
1298           responsibility for bus handling from GstPipeline to
1299           GstBin
1300
1301 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1302
1303         * configure.ac:
1304           Remove unnecessary queue2/3/4 examples.
1305
1306 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1307
1308         * examples/Makefile.am:
1309         * examples/helloworld/helloworld.c: (event_loop), (main):
1310         * examples/queue/queue.c: (event_loop), (main):
1311         * examples/queue2/queue2.c: (main):
1312           Update a couple of the examples to work again.
1313
1314         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1315         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
1316          Spelling corrections and extra debug.
1317         
1318         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
1319         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
1320         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
1321         * gst/gstbin.h:
1322         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
1323         (gst_pipeline_change_state):
1324         * gst/gstpipeline.h:
1325           Move the bus handler for children to the GstBin, and create a
1326           separate bus for receiving messages from children to the one the
1327           bus sends 'upwards' on.
1328
1329 2005-07-06  Wim Taymans  <wim@fluendo.com>
1330
1331         * gst/base/README:
1332         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1333         (gst_base_sink_handle_object), (gst_base_sink_loop),
1334         (gst_base_sink_change_state):
1335         * gst/base/gstbasesink.h:
1336         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1337         (gst_base_src_init), (gst_base_src_setcaps),
1338         (gst_base_src_getcaps), (gst_base_src_loop),
1339         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
1340         (gst_base_src_start), (gst_base_src_change_state):
1341         * gst/base/gstbasesrc.h:
1342         Make basesrc negotiate.
1343         Handle the case where preroll fails in basesink.
1344         Update README.
1345
1346 2005-07-06  Wim Taymans  <wim@fluendo.com>
1347
1348         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
1349         Implement the fixate function.
1350         Clean up acceptcaps.
1351
1352 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1353
1354         * docs/pwg/building-filterfactory.xml:
1355         * docs/pwg/pwg.xml:
1356           Remove never-written filter-factory chapter; I'll add the various
1357           base classes to part 4 ("other element types") later on.
1358
1359 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1360
1361         * docs/pwg/advanced-negotiation.xml:
1362         * docs/pwg/building-boiler.xml:
1363         * docs/pwg/building-pads.xml:
1364         * docs/pwg/pwg.xml:
1365         * examples/pwg/Makefile.am:
1366           Add a chapter on caps negotiation, simplify the original code
1367           samples a bit w.r.t. caps negotiation, add link to the advanced
1368           section. Add a bunch of examples showing different use cases of
1369           different types of caps negotiation. Upstream renegotiation isn't
1370           fully documented yet since nobody knows how that works.
1371
1372 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
1373
1374         * check/gst/gstpad.c:
1375         * check/gstcheck.c:
1376         * gst/gstpad.c: (gst_pad_get_internal_links_default):
1377           if pad has no parent, return NULL as list of internal links
1378
1379 2005-07-05  Andy Wingo  <wingo@pobox.com>
1380
1381         * gst/elements/gstfilesrc.c:
1382         * gst/elements/gstfakesrc.c: 
1383         * gst/base/gstpushsrc.c:
1384         * gst/base/gstbasesrc.h: 
1385         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
1386         
1387 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
1388
1389         * Makefile.am:
1390           better report generation target (lcov needs a patch)
1391
1392 2005-07-05  Andy Wingo  <wingo@pobox.com>
1393
1394         * gst/elements, testsuite: Null if we got it...
1395
1396 2005-07-05  Wim Taymans  <wim@fluendo.com>
1397
1398         * configure.ac:
1399         * libs/gst/dataprotocol/Makefile.am:
1400         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
1401         * libs/gst/dataprotocol/dataprotocol.h:
1402         * pkgconfig/Makefile.am:
1403         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
1404         * pkgconfig/gstreamer-dataprotocol.pc.in:
1405         Ported dataprotol to 0.9. 
1406         Added pkgconfig files.
1407
1408 2005-07-05  Andy Wingo  <wingo@pobox.com>
1409
1410         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
1411         Default to returning TRUE for the case when tranform_caps returns
1412         a fixed caps, like for identity or volume.
1413
1414         * check/gst/gstbus.c (pound_bus_with_messages): 
1415         * check/gst/gstmessage.c (START_TEST): 
1416         * check/pipelines/simple_launch_lines.c (got_handoff): Application
1417         message API change.
1418
1419         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
1420         logic weaks here: always run transform_caps, trying passthrough
1421         operation only if the original caps intersects with the transform.
1422
1423         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
1424         source and sink caps.
1425
1426         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
1427         Intersect the peer caps with the pad template before going into
1428         transform_caps.
1429         (gst_base_transform_transform_caps): More debugging.
1430
1431         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
1432         src argument.
1433
1434 2005-07-04  Edward Hervey  <edward@fluendo.com>
1435
1436         * gst/gstutils.c:
1437         * gst/gstutils.h:
1438         (gst_pad_add_*_probe): now returns the signal id for better wrapping
1439         in bindings.
1440
1441 2005-07-04  Andy Wingo  <wingo@pobox.com>
1442
1443         * check/gst/gstpad.c: Only set explicit caps on pads.
1444
1445 2005-07-01  Andy Wingo  <wingo@pobox.com>
1446
1447         * tests/network-clock.scm: Commentary update.
1448
1449         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
1450         Didn't really make sense, not implementable with basetransform,
1451         etc.
1452         (gst_identity_transform): Unref inbuf via make_writable. Feeble
1453         attempt at implementing the sync property, needs an unlock method.
1454
1455         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
1456         New func, by default returns the same caps (the identity
1457         transformation).
1458         (gst_base_transform_getcaps): Uses transform_caps to return
1459         something sensible.
1460         (gst_base_transform_setcaps): Complicated logic to get caps on
1461         both pads, even if they are different, and to call set_caps once
1462         for every time both pads get their caps set.
1463         (gst_base_transform_handle_buffer): Give the ref to the transform
1464         function. Allows in-place modification of the buffer.
1465
1466         * gst/base/gstbasetransform.h (transform_caps): New class method.
1467         Given caps on one side, what can I do on the other.
1468         (set_caps): Take two caps, one for each side of the element.
1469
1470         * gst/gstpad.h:
1471         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
1472         caps in place. This is safe because we can check the mutability of
1473         the caps, and a good idea because fixate functions are just called
1474         as a matter of last resort. (Not actually implemented.)
1475         (gst_pad_set_caps): If the caps we're setting is actually the same
1476         as the existing pad caps, just update the pointer without calling
1477         setcaps. Assert that caps is either NULL or fixed, as per the
1478         docs.
1479
1480         * gst/gstghostpad.c: Update for fixate changes.
1481
1482 2005-07-02  Andy Wingo  <wingo@pobox.com>
1483
1484         * gst/gstcaps.c:
1485         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
1486         two refcounts makes it immutable, which is enough. Doc more.
1487
1488 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
1489
1490         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
1491           Put the mini_object into GValue as a mini_object,
1492           not a gpointer, since that's how we declared
1493           the signal.
1494
1495 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1496
1497         * examples/pwg/Makefile.am:
1498           Fix buildbot again.
1499
1500 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1501
1502         * docs/pwg/building-testapp.xml:
1503           Add extra check.
1504         * examples/pwg/Makefile.am:
1505           Fix buildbot.
1506
1507 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1508
1509         * configure.ac:
1510         * examples/Makefile.am:
1511         * examples/pwg/Makefile.am:
1512         * examples/pwg/extract.pl:
1513           Enable building the PWG examples.
1514         * docs/pwg/advanced-interfaces.xml:
1515           Add URI interface stub.
1516         * docs/pwg/advanced-types.xml:
1517         * docs/pwg/other-autoplugger.xml:
1518         * docs/pwg/appendix-porting.xml:
1519         * docs/pwg/pwg.xml:
1520           Add porting guide (mostly stubs), remove autoplugging (see ADM).
1521         * docs/pwg/building-boiler.xml:
1522         * docs/pwg/building-chainfn.xml:
1523         * docs/pwg/building-pads.xml:
1524         * docs/pwg/building-props.xml:
1525         * docs/pwg/building-state.xml:
1526         * docs/pwg/building-testapp.xml:
1527           Update the building-*.xml parts for 0.9 changes. All examples
1528           code blocks compile in examples/pwg/*.
1529
1530 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1531
1532         * docs/manual/advanced-autoplugging.xml:
1533         * docs/manual/appendix-checklist.xml:
1534         * docs/manual/appendix-integration.xml:
1535         * docs/manual/highlevel-components.xml:
1536           Fix playbin/decodebin examples, update docs a bit, mention bus
1537           instead of signals in various places, mention kmplayer and
1538           kaffeine since they have a working GStreamer backend in the KDE
1539           section.
1540
1541 2005-06-30  Wim Taymans  <wim@fluendo.com>
1542
1543         * CHANGES-0.9:
1544         * docs/design/draft-ghostpads.txt:
1545         * docs/design/draft-push-pull.txt:
1546         * docs/design/draft-query.txt:
1547         * docs/design/part-TODO.txt:
1548         * docs/design/part-query.txt:
1549         Added CHANGES-0.9 doc, updated status of other docs.
1550         
1551         * gst/gstquery.h:
1552         Remove "hmm" macro
1553
1554 2005-06-30  Wim Taymans  <wim@fluendo.com>
1555
1556         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1557         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
1558         (gst_base_sink_change_state):
1559         * gst/base/gstbasesink.h:
1560         Some tweaks, only EOS and a buffer complete a preroll.
1561
1562 2005-06-30  Andy Wingo  <wingo@pobox.com>
1563
1564         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
1565         activate_push down to the internal pad as well.
1566
1567 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
1568
1569         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1570
1571         * gst/gsttaginterface.c:
1572           Some documentation fixes (#307394 and #307397).
1573
1574 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
1575
1576         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1577
1578         * gst/gstvalue.c: (gst_value_intersect_list):
1579           Fix memleak (#309125).
1580
1581 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1582
1583         * docs/manual/advanced-dataaccess.xml:
1584           Fix fakesrc example to compile; doesn't work, bug somewhere...?
1585         * docs/manual/basics-pads.xml:
1586           Add reference for filtered caps to above chapter.
1587
1588 2005-06-30  Wim Taymans  <wim@fluendo.com>
1589
1590         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
1591         (gst_bin_change_state):
1592         Probes are gone.
1593         Lame attempt at making the state change function a bit
1594         more readable.
1595
1596 2005-06-30  Wim Taymans  <wim@fluendo.com>
1597
1598         * docs/design/part-clocks.txt:
1599         * docs/design/part-element-sink.txt:
1600         * docs/design/part-events.txt:
1601         * docs/design/part-preroll.txt:
1602         * docs/design/part-states.txt:
1603         Some more tweeks and additions to the docs.
1604
1605 2005-06-30  Wim Taymans  <wim@fluendo.com>
1606
1607         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1608         (default_have_data), (gst_pad_class_init), (gst_pad_init),
1609         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1610         (gst_pad_check_pull_range), (gst_pad_get_range),
1611         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
1612         * gst/gstpad.h:
1613         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
1614         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1615         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1616         (gst_pad_remove_buffer_probe):
1617         Removed atomic operations, use existing LOCK.
1618         Move exception handling out of main code path.
1619
1620 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1621
1622         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1623         (silly_return_true_function), (gst_pad_class_init),
1624         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1625         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
1626         (gst_pad_send_event):
1627           Fix accumulator, add default value by using _emitv() instead
1628           of _emit() for signal emission.
1629
1630 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1631
1632         * docs/manual/advanced-dataaccess.xml:
1633         * examples/manual/Makefile.am:
1634           Add probe example.
1635         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
1636           Make work (??).
1637
1638 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
1639
1640         * gst/elements/gstfilesink.c: (gst_filesink_render):
1641           Simplify code so that we don't have to handle short
1642           writes and return GST_FLOW_ERROR if an error occured.
1643
1644 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1645
1646         * docs/gst/gstreamer-docs.sgml:
1647           Remove probes more.
1648
1649 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1650
1651         * docs/gst/gstreamer-sections.txt:
1652         * docs/gst/tmpl/gstpad.sgml:
1653         * docs/gst/tmpl/gstprobe.sgml:
1654         * gst/Makefile.am:
1655         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1656         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
1657         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
1658         (gst_pad_push_event), (gst_pad_send_event):
1659         * gst/gstpad.h:
1660         * gst/gstutils.c: (gst_pad_add_data_probe),
1661         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1662         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1663         (gst_pad_remove_buffer_probe):
1664         * gst/gstutils.h:
1665           Remove old probes, add new g-signal-based probes and some utility
1666           functions.
1667
1668 2005-06-29  Edward Hervey  <edward@fluendo.com>
1669
1670         * gst/gstelementfactory.c:
1671         * gst/gstutils.h:
1672         * gst/gstutils.c:
1673         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
1674         the definition to the header file.
1675
1676 2005-06-29  Andy Wingo  <wingo@pobox.com>
1677
1678         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
1679         plugins from the source directory.
1680
1681 2005-06-29  Wim Taymans  <wim@fluendo.com>
1682
1683         * docs/gst/tmpl/gstbuffer.sgml:
1684         * docs/gst/tmpl/gstclock.sgml:
1685         Some fixings for blantently wrong text.
1686
1687 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1688
1689         * check/Makefile.am:
1690         * gst/gst.c: (add_path_func), (init_pre):
1691         * gst/gstregistry.c: (gst_registry_add_path):
1692           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
1693           only scan the GST_PLUGIN_PATH locations, and not add
1694           system locations
1695
1696 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1697
1698         * docs/gst/gstreamer-sections.txt:
1699         * docs/gst/tmpl/gstbasesrc.sgml:
1700         * gst/gstelement.c:
1701         * gst/gstelement.h:
1702         * gst/gstevent.c:
1703         * gst/gstutils.c:
1704           doc fixes
1705
1706 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1707
1708         * docs/manual/advanced-autoplugging.xml:
1709           Fix autoplugging example.
1710
1711 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1712
1713         * docs/manual/advanced-autoplugging.xml:
1714         * docs/manual/mime-world.fig:
1715           Try to get autoplugging working, fix type detection. Fix text
1716           in hello-world image.
1717
1718 2005-06-29  Wim Taymans  <wim@fluendo.com>
1719
1720         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1721         (gst_base_sink_change_state):
1722         Small debug line.
1723
1724         * gst/gstclock.h:
1725         map SIGNAL and BROADCAST to the right function.
1726
1727         * gst/gstobject.h:
1728         Remove redundant braces.
1729
1730         * gst/gstpad.c: (gst_pad_set_caps):
1731         Don't call setcaps function when reseting caps to NULL.
1732
1733         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1734         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
1735         (gst_system_clock_id_unschedule):
1736         Use BROADCAST as this is what we do.
1737
1738 2005-06-29  Wim Taymans  <wim@fluendo.com>
1739
1740         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
1741         We are actually prerolling before commiting the state
1742         change. 
1743
1744 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1745
1746         * docs/manual/advanced-clocks.xml:
1747         * docs/manual/advanced-interfaces.xml:
1748         * docs/manual/advanced-metadata.xml:
1749         * docs/manual/advanced-position.xml:
1750         * docs/manual/advanced-schedulers.xml:
1751         * docs/manual/advanced-threads.xml:
1752         * docs/manual/appendix-porting.xml:
1753         * docs/manual/basics-bins.xml:
1754         * docs/manual/basics-bus.xml:
1755         * docs/manual/basics-elements.xml:
1756         * docs/manual/basics-helloworld.xml:
1757         * docs/manual/basics-pads.xml:
1758         * docs/manual/highlevel-components.xml:
1759         * docs/manual/manual.xml:
1760         * docs/manual/thread.fig:
1761           Update (until threads/scheduling) Application Development Manual;
1762           remove GstThread, add GstBus, add simple porting checklist, add
1763           documentation for tag writing, clocks, make all examples until this
1764           part compile and run.
1765         * examples/manual/Makefile.am:
1766           Update from changes to Application Development Manual; add bus
1767           example, remove thread example.
1768
1769 2005-06-28  Wim Taymans  <wim@fluendo.com>
1770
1771         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
1772         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
1773         (gst_bus_source_dispatch):
1774         Add debugging messages.
1775         Make internal methods static.
1776         Handle the case where the bus is flushed in the handler.
1777         
1778         * gst/gstelement.c: (gst_element_get_bus):
1779         Fix refcount in _get_bus();
1780
1781         * gst/gstpipeline.c: (gst_pipeline_change_state),
1782         (gst_pipeline_get_clock_func):
1783         Clock refcounting fixes.
1784         Handle the case where preroll timed out more gracefully.
1785         
1786         * gst/gstsystemclock.c: (gst_system_clock_dispose):
1787         Clean up the internal thread in dispose. This is needed
1788         for subclasses that actually get disposed.
1789         
1790         * gst/schedulers/threadscheduler.c:
1791         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
1792         (gst_thread_scheduler_dispose):
1793         Free thread pool in dispose.
1794
1795 2005-06-28  Andy Wingo  <wingo@pobox.com>
1796
1797         * tests/network-clock-utils.scm (debug, print-event): New utils.
1798
1799         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
1800         (*packet-loss*): Unified loss probability.
1801         (network-time): Report out-of-band events.
1802
1803         * tests/plot-data: Add support for out-of-band events. Hack it
1804         into this script instead of passing it down the pipe; should fix
1805         this later.
1806
1807 2005-06-28  Wim Taymans  <wim@fluendo.com>
1808
1809         * docs/gst/gstreamer.types:
1810         * docs/gst/tmpl/gstbasesrc.sgml:
1811         * docs/gst/tmpl/gstpad.sgml:
1812         Docs fixes.
1813
1814 2005-06-28  Wim Taymans  <wim@fluendo.com>
1815
1816         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1817         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
1818         (gst_proxy_pad_do_fixatecaps):
1819         Correctly proxy the check_pull_range function.
1820
1821 2005-06-28  Andy Wingo  <wingo@pobox.com>
1822
1823         * tests/network-clock.scm: Removed need for slib.
1824         
1825 2005-06-28  Wim Taymans  <wim@fluendo.com>
1826
1827         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
1828         (gst_basesink_preroll_queue_flush):
1829         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
1830         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
1831         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1832         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
1833         (gst_proxy_pad_set_property):
1834         * gst/gstpad.c:
1835         * gst/gstpad.h:
1836         * gst/gstqueue.c: (gst_queue_init):
1837         The deprecated pad loop function is removed now.
1838
1839 2005-06-28  Andy Wingo  <wingo@pobox.com>
1840
1841         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
1842         New parameters, simulate network packet loss.
1843
1844         * tests/network-clock-utils.scm: Initialize the RNG.
1845
1846 2005-06-28  Wim Taymans  <wim@fluendo.com>
1847
1848         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
1849         (gst_basesink_event), (gst_basesink_deactivate):
1850         Flushing the preroll queue always needs to unlock the waiters.
1851
1852 2005-06-28  Edward Hervey  <edward@fluendo.com>
1853
1854         * gst/gstpipeline.c: (gst_pipeline_send_event): 
1855         Wheen a seek was successful on a pipeline, set the stream_time to the
1856         seek offset in order to have a synchronized stream_time.
1857
1858 2005-06-28  Wim Taymans  <wim@fluendo.com>
1859
1860         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1861         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
1862         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
1863         (gst_proxy_pad_do_fixatecaps):
1864         Call wrapper function instead of just calling the function
1865         pointers. This takes care of any locking and whatmore.
1866
1867 2005-06-28  Wim Taymans  <wim@fluendo.com>
1868
1869         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
1870         (gst_pad_pull_range):
1871         * gst/gstpad.h:
1872         CONNECTED -> LINKED.
1873
1874 2005-06-28  Andy Wingo  <wingo@pobox.com>
1875
1876         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
1877         source-munging commit!!!
1878
1879         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
1880         (gst_object_sink): Take gpointer arguments, not GstObject --
1881         avoids casts. Like GLib.
1882
1883         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
1884         activate.
1885
1886 2005-06-27  Andy Wingo  <wingo@pobox.com>
1887
1888         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
1889         remaining buffer.
1890
1891         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
1892         returns a sorted copy of the trace list.
1893         (gst_alloc_trace_print_live): New API, only prints traces with
1894         live objects. Sort the list.
1895         (gst_alloc_trace_print_all): Sort the list.
1896         (gst_alloc_trace_print): Align columns.
1897
1898         * gst/elements/gstttypefindelement.c:
1899         * gst/elements/gsttee.c:
1900         * gst/base/gstbasesrc.c:
1901         * gst/base/gstbasesink.c:
1902         * gst/base/gstbasetransform.c:
1903         * gst/gstqueue.c: Adapt for pad activation changes.
1904
1905         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
1906         sched.
1907         (gst_pipeline_dispose): Drop ref on sched.
1908
1909         * gst/gstpad.c (gst_pad_init): Set the default activate func.
1910         (gst_pad_activate_default): Push mode by default.
1911         (pre_activate_switch, post_activate_switch): New stubs, things to
1912         do before and after switching activation modes on pads.
1913         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
1914         the pad's activate function to choose which mode to activate.
1915         Shortcut on deactivation and call the right function directly.
1916         (gst_pad_activate_pull): New API, (de)activates a pad in pull
1917         mode.
1918         (gst_pad_activate_push): New API, same for push mode.
1919         (gst_pad_set_activate_function) 
1920         (gst_pad_set_activatepull_function) 
1921         (gst_pad_set_activatepush_function): Setters for new API.
1922
1923         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
1924         Trace all miniobjects.
1925         (gst_mini_object_make_writable): Unref the arg if we copy, like
1926         gst_caps_make_writable.
1927
1928         * gst/gstmessage.c (_gst_message_initialize): No trace init.
1929
1930         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
1931         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
1932         Adapt for new pad API.
1933
1934         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
1935
1936         * gst/gstelement.h:
1937         * gst/gstelement.c (gst_element_iterate_src_pads) 
1938         (gst_element_iterate_sink_pads): New API functions.
1939         
1940         * gst/gstelement.c (iterator_fold_with_resync): New utility,
1941         should fold into gstiterator.c in some form.
1942         (gst_element_pads_activate): Simplified via use of fold and
1943         delegation of decisions to gstpad->activate.
1944
1945         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
1946         help in debugging.
1947
1948         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
1949         class once in init, like gstmessage. Didn't run into this issue
1950         but it seems correct. Don't initialize a trace, gstminiobject does
1951         that.
1952
1953         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
1954         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
1955         to the bus.
1956         (assert_live_count): New util function, uses alloc traces to check
1957         cleanup.
1958
1959         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
1960         To be modified when unlink drops the internal pad.
1961
1962 2005-06-27  Wim Taymans  <wim@fluendo.com>
1963
1964         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
1965         (gst_bin_change_state):
1966         Cleanup the get_state() function a little, make sure it
1967         iterates the same set of elements.
1968         Added stub iterate_state_order().
1969
1970 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
1971
1972         * docs/gst/gstreamer-docs.sgml:
1973         * docs/gst/gstreamer-sections.txt:
1974         * docs/gst/gstreamer.types:
1975         * docs/gst/tmpl/gstbasesink.sgml:
1976         * docs/gst/tmpl/gstbasesrc.sgml:
1977         * docs/gst/tmpl/gstbasetransform.sgml:
1978         * docs/gst/tmpl/gstelement.sgml:
1979         * docs/gst/tmpl/gstiterator.sgml:
1980         * gst/base/gstbasesrc.c:
1981         * gst/base/gstbasesrc.h:
1982         * gst/base/gstbasetransform.h:
1983         * gst/gstelement.c:
1984         * gst/gstiterator.h:
1985           adding basetransform and iterator docs
1986
1987 2005-06-27  Andy Wingo  <wingo@pobox.com>
1988
1989         * docs/design/part-activation.txt: Notes on how activation should
1990         work -- not quite implemented yet.
1991
1992 2005-06-25  Wim Taymans  <wim@fluendo.com>
1993
1994         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
1995         At least get the chain function correct, needs more
1996         fixing.
1997
1998 2005-06-25  Wim Taymans  <wim@fluendo.com>
1999
2000         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2001         (gst_basesink_handle_object), (gst_basesink_event),
2002         (gst_basesink_do_sync), (gst_basesink_handle_event),
2003         (gst_basesink_change_state):
2004         * gst/gsttask.h:
2005         Right, two problems here: ghostpads don't take locks and
2006         glib _rec_mutex_lock_full() with depth==0 still locks.
2007         Catch illegal locking and g_warn them.
2008
2009 2005-06-25  Wim Taymans  <wim@fluendo.com>
2010
2011         * check/states/sinks.c: (START_TEST), (gst_object_suite):
2012         Have to check for completion now...
2013
2014 2005-06-25  Wim Taymans  <wim@fluendo.com>
2015
2016         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2017         (gst_basesink_handle_object), (gst_basesink_event),
2018         (gst_basesink_do_sync), (gst_basesink_handle_event),
2019         (gst_basesink_change_state):
2020         * gst/gstpad.h:
2021         Unlock STREAM_LOCK whatever the recursion was.
2022
2023 2005-06-25  Wim Taymans  <wim@fluendo.com>
2024
2025         * gst/base/gstbasesink.c: (gst_basesink_set_property),
2026         (gst_basesink_preroll_queue_empty),
2027         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
2028         (gst_basesink_event), (gst_basesink_do_sync),
2029         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
2030         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
2031         (gst_basesink_change_state):
2032         Reworked the base sink, handle event and buffer serialisation
2033         correctly and removed possible deadlock.
2034         Handle EOS correctly.
2035
2036 2005-06-25  Wim Taymans  <wim@fluendo.com>
2037
2038         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
2039         (gst_pipeline_change_state):
2040         * tools/gst-launch.c: (check_intr), (event_loop), (main):
2041         Allow elements to post EOS in the state change function.
2042         Fix up -launch, make it exit the poll loop when the
2043         pipeline actually changed state.
2044         Fix up warning parsing in -launch.
2045
2046 2005-06-25  Wim Taymans  <wim@fluendo.com>
2047
2048         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
2049         (gst_tee_sink_activate):
2050         Core takes STREAM_LOCK for us now.
2051
2052 2005-06-25  Wim Taymans  <wim@fluendo.com>
2053
2054         * gst/gstelement.c: (gst_element_get_state_func),
2055         (gst_element_set_state):
2056         * gst/gstelement.h:
2057         * gst/gstmessage.c: (gst_message_parse_error),
2058         (gst_message_parse_warning):
2059         Keep track of current target state while performing a state
2060         change so that subclasses can do something interesting.
2061         Fix parsing of warning/error messages when GError is NULL.
2062
2063 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
2064
2065         * docs/gst/Makefile.am:
2066         * docs/gst/gstreamer-docs.sgml:
2067         * docs/gst/gstreamer-sections.txt:
2068         * docs/gst/gstreamer.types:
2069         * docs/gst/tmpl/gstbasesink.sgml:
2070         * docs/gst/tmpl/gstbasesrc.sgml:
2071         * docs/gst/tmpl/gstbin.sgml:
2072         * docs/gst/tmpl/gstcompat.sgml:
2073         * docs/gst/tmpl/gstfakesink.sgml:
2074         * docs/gst/tmpl/gstfakesrc.sgml:
2075         * docs/gst/tmpl/gstfilesink.sgml:
2076         * docs/gst/tmpl/gstfilesrc.sgml:
2077         * docs/gst/tmpl/gstindex.sgml:
2078         * docs/manual/appendix-quotes.xml:
2079         * gst/base/gstbasesrc.h:
2080         * gst/elements/gstfakesrc.h:
2081         * gst/gstmessage.h:
2082           start pulling in base classes and elements in our docs
2083
2084 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
2085
2086         * docs/gst/Makefile.am:
2087         * docs/libs/Makefile.am:
2088           fixed make distcheck with gtk-doc 1.3
2089
2090 2005-06-23  Wim Taymans  <wim@fluendo.com>
2091
2092         * gst/gstelement.c: (gst_element_get_state_func),
2093         (gst_element_set_state), (gst_element_change_state):
2094         When the state did not change, also report NO_PREROLL
2095         when it matters.
2096
2097 2005-06-23  Wim Taymans  <wim@fluendo.com>
2098
2099         * gst/gstpad.c: (gst_pad_event_default):
2100         * gst/gstqueue.c: (gst_queue_loop):
2101         No unsafe task pausing please.
2102
2103 2005-06-23  Wim Taymans  <wim@fluendo.com>
2104
2105         * gst/schedulers/threadscheduler.c:
2106         (gst_thread_scheduler_task_start),
2107         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
2108         Ref the task before pushing it on the threadpool. This
2109         makes sure that we have a ref when the threadfunction is
2110         actually called.
2111
2112 2005-06-23  Andy Wingo  <wingo@pobox.com>
2113
2114         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
2115         offset is greater than the file's size.
2116
2117         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
2118         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
2119         * gst/gstobject.c (gst_object_class_init): Make the class lock
2120         recursive. Wim won't let me drop deep_notify. Decodebin works
2121         again, whoopdy doo.
2122
2123         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
2124         internal pad, and hacks accordingly. Doesn't do it on the target
2125         pad because we change its caps. Probably catches all cases of
2126         interest tho.
2127         (gst_ghost_pad_set_property): Connect to notify::caps as
2128         appropritate.
2129
2130         * tests/network-clock.scm (plot-simulation): Pipe data to the
2131         elite python skript.
2132
2133         * tests/network-clock-utils.scm (define-parameter): New macro,
2134         defines a parameter that can be set via the command line.
2135         (set-parameter!, parse-parameter-arguments): Command line args
2136         parser.
2137
2138         * tests/plot-data: Simple matplotlib-based plotter, takes input on
2139         stdin.
2140
2141 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
2142
2143         * gst/elements/gsttypefindelement.c:
2144         (gst_type_find_element_handle_event):
2145           Don't restart typefinding on a discont.
2146         * gst/gstelement.c: (gst_element_set_state):
2147           Debug spelling fix.
2148         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
2149           Allow changing mode of an active pad.
2150           Debug output fixes.
2151         * gst/registries/gstlibxmlregistry.c: (load_feature):
2152           Don't cast a static pad template to a normal pad template.
2153
2154 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
2155
2156         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2157         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2158           remove gst_strtoll completely, since it didn't actually do
2159           anything more than what g_ascii_strtoull already does.
2160           check for range errors when deserializing
2161           do a cast for the unsigned cases; but further fixing needs
2162           a decision on what the interpretation of "(int)" and
2163           deserialization should be for values that fall outside the
2164           type's boundaries (ie, refuse, or interpret as casting)
2165
2166 2005-06-23  Wim Taymans  <wim@fluendo.com>
2167
2168         * check/Makefile.am:
2169         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
2170         * docs/design/part-live-source.txt:
2171         * docs/design/part-states.txt:
2172         * gst/base/gstbasesrc.c: (gst_basesrc_init),
2173         (gst_basesrc_set_live), (gst_basesrc_is_live),
2174         (gst_basesrc_get_range), (gst_basesrc_activate),
2175         (gst_basesrc_change_state):
2176         * gst/base/gstbasesrc.h:
2177         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2178         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
2179         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
2180         * gst/gstelement.c: (gst_element_get_state_func),
2181         (gst_element_set_state):
2182         * gst/gstelement.h:
2183         * gst/gsttypes.h:
2184         * tools/gst-launch.c: (event_loop), (main):
2185         Added support for live sources and other elements that
2186         cannot do preroll.
2187         Updated design docs, added live-source design doc.
2188         Implemented live source functionality in basesrc
2189         Fix error condition in _bin_get_state()
2190         Implement live source handling in -launch.
2191         Added check for live sources.
2192         Fixed case in GstBin where elements were changed state
2193         multiple times.
2194
2195
2196 2005-06-23  Andy Wingo  <wingo@pobox.com>
2197
2198         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
2199         borken refcounting.
2200
2201         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
2202         gst_caps_replace takes care of this for us.
2203
2204         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
2205         gst_pad_set_caps on the target, not just its setcaps() function.
2206
2207         * tests/network-clock.scm: 
2208         * tests/network-clock-utils.scm: A network clock simulator.
2209         Something of an algorithmic testbed before doing something in C.
2210
2211 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2212
2213         * check/Makefile.am:
2214         * check/gst/capslist.h:
2215           copy over from 0.8, and add two with bitmasks specified with
2216           (int) 0xFF...
2217         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2218           add test to parse everything from capslist.h
2219         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
2220         (main):
2221           add test for structure deserialization
2222         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2223           add tests for deserialization of strings to int types
2224         * gst/gststructure.c: (gst_structure_nth_field_name):
2225         * gst/gststructure.h:
2226           add a way to get the name of a field referenced by index
2227         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2228           instead of checking if the resulting long long lies between
2229           min and max, we check if the long long would fit into
2230           a number of bytes for the final type.
2231           This fixes cases where a string represents 2^32 - 1, which
2232           when cast to int would be the (valid) -1, but is bigger than
2233           G_MAXINT
2234
2235 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2236
2237         * gst/parse/grammar.y:
2238           add a log line for type deserialization
2239
2240 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2241
2242         * check/gst/gstvalue.c: (START_TEST):
2243         * gst/gstvalue.c: (gst_value_deserialize):
2244           return long long, not int, so gint64 deserialization actually
2245           works.  Is there any flag that makes the compiler check this ?
2246           Fixes #308559
2247
2248 2005-06-22  Wim Taymans  <wim@fluendo.com>
2249
2250         * gst/gstbuffer.h:
2251         Added convenience macros for setting buffers in GValue.
2252
2253 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2254
2255         * check/gst/.cvsignore:
2256         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2257           add a test deserializing int64, and comment part out because
2258           it fails, yay !
2259
2260 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2261
2262         * check/Makefile.am:
2263         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
2264         * testsuite/Makefile.am:
2265         * testsuite/caps/Makefile.am:
2266         * testsuite/caps/value_serialize.c:
2267         * testsuite/test_gst_init.c:
2268           move a value_serialize test over
2269
2270 2005-06-20  Wim Taymans  <wim@fluendo.com>
2271
2272         * gst/gstpad.c:
2273         Small doc updates.
2274         
2275         * gst/gstvalue.c: (gst_value_compare_buffer),
2276         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
2277         (gst_value_compare_flags), (gst_value_serialize_flags),
2278         (gst_value_deserialize_flags), (_gst_value_initialize):
2279         Fix serialisation of buffers, they are not boxed types anymore
2280
2281 2005-06-20  Wim Taymans  <wim@fluendo.com>
2282
2283         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2284         Testcase to show error in buffer-on-caps serialisation.
2285
2286 2005-06-20  Andy Wingo  <wingo@pobox.com>
2287
2288         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
2289         will be adding to later.
2290
2291         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
2292         if its socks fill with rocks.
2293         (gst_system_clock_obtain): Set the name on object construction.
2294         Avoid double-checked locking.
2295
2296 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
2297
2298         * gst/gsturi.c: (gst_element_make_from_uri):
2299           Fix potential endless loop.
2300
2301 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2302
2303         * check/Makefile.am:
2304           add gsttag
2305         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
2306         (main):
2307           move over from testsuite dir and clean up
2308         * configure.ac:
2309         * gst/gsttag.c:
2310         * testsuite/Makefile.am:
2311         * testsuite/tags/.cvsignore:
2312         * testsuite/tags/Makefile.am:
2313         * testsuite/tags/merge.c:
2314           remove testsuite/tags
2315
2316 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2317
2318         * docs/gst/gstreamer-sections.txt:
2319         * docs/gst/tmpl/gstenumtypes.sgml:
2320         * win32/gstenumtypes.c:
2321           clean up documentation build a little
2322
2323 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2324
2325         * check/gstcheck.h:
2326           add macros for checking refcounts on objects and caps
2327         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
2328           add some more unit tests
2329         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
2330         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
2331           fix leaked refcounts (I hope :)) so unittest works
2332         * gst/gstpad.h:
2333           whitespace removal
2334
2335 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2336
2337         * configure.ac: back to HEAD
2338
2339 === release 0.9.1 ===
2340
2341 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2342
2343         * NEWS:
2344         * RELEASE:
2345           updated
2346
2347 2005-06-17  Andy Wingo  <wingo@pobox.com>
2348
2349         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
2350         assert; it's always possible that the pad gets deactivated in
2351         between the checks in gstpad.c and the implementation. Rely on
2352         finish_preroll() to return a FLUSHING or similar instead of on the
2353         assert.
2354         
2355         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
2356         clock and post an EOS message if we come out of finish_preroll in
2357         the playing state.
2358
2359 2005-06-16  David Schleef  <ds@schleef.org>
2360
2361         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
2362         (gst_capsfilter_set_property): Allow NULL as possible value
2363         for filter_caps property, indicating GST_CAPS_ANY.
2364
2365 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2366
2367         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
2368           fix debug output
2369         * gst/schedulers/Makefile.am:
2370           use libgst prefix
2371         * gstreamer.spec.in:
2372           fix spec for it
2373
2374 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2375
2376         * gstreamer.spec.in:
2377           clean up
2378
2379 2005-06-08  Andy Wingo  <wingo@pobox.com>
2380
2381         * gst/gstutils.c: RPAD fixes all around.
2382         (gst_element_link_pads): Refcounting fixes.
2383
2384         * tools/gst-inspect.c:
2385         * tools/gst-xmlinspect.c:
2386         * parse/grammar.y:
2387         * gst/base/gsttypefindhelper.c:
2388         * gst/base/gstbasesink.c:
2389         * gst/gstqueue.c: RPAD fixes.
2390
2391         * gst/gstghostpad.h:
2392         * gst/gstghostpad.c: New ghost pad implementation as full proxy
2393         pads. The tricky thing is they provide both source and sink
2394         interfaces, since they proxy the internal pad for the external
2395         pad, and vice versa. Implement with lower-level ProxyPad objects,
2396         with the interior proxy pad as a child of the exterior ghost pad.
2397         Should write a doc on this.
2398         
2399         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
2400         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
2401         gst_object API.
2402         
2403         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
2404         pads are real pads. No ghost pads in this file. Not documenting
2405         the myriad s/RPAD/PAD/ and REALIZE fixes.
2406         (gst_pad_class_init): Add properties for "direction" and
2407         "template". Both are construct-only, so they can't change during
2408         the life of the pad. Fixes properly deriving from GstPad.
2409         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
2410         derived objects, just set properties when creating the objects via
2411         g_object_new.
2412         (gst_pad_get_parent): Implement as a function, return NULL if the
2413         parent is not an element.
2414         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
2415         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
2416         
2417         * gst/gstobject.c (gst_object_class_init): Make name a construct
2418         property. Don't set it in the object init.
2419
2420         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
2421         with UNKNOWN direction.
2422         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
2423         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
2424         (gst_element_remove_pad): Remove ghost-pad special cases.
2425         (gst_element_pads_activate): Remove rpad cruft.
2426
2427         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
2428         catch the pad's-parent-not-an-element case.
2429
2430         * gst/gst.h: Include gstghostpad.h.
2431
2432         * gst/gst.c (init_post): No more real, ghost pads.
2433
2434         * gst/Makefile.am: Add gstghostpad.[ch].
2435
2436         * check/Makefile.am:
2437         * check/gst/gstbin.c:
2438         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
2439         into a bin creates ghost pads, and that the refcounts are right.
2440         Partly moved from gstbin.c.
2441
2442 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2443
2444         * check/gst-libs/.cvsignore:
2445         * check/gst/.cvsignore:
2446         * check/pipelines/.cvsignore:
2447           ignore more
2448         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
2449         (START_TEST), (cleanup_suite), (main):
2450           add some tests related to cleanup after running pipelines
2451
2452 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2453
2454         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
2455           add a testsuite for GstBuffer
2456
2457 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2458
2459         * gst/gstminiobject.h:
2460           add defines for accessing the refcount
2461
2462 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
2463
2464         * Makefile.am: added support for html unit test coverage reports
2465
2466 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
2467
2468         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
2469           Free existing caps if the capsfilter changes. Add a FIXME about
2470           setting those caps on the pads.
2471
2472         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
2473           Before adding a ghost pad to a parent bin, check that there isn't
2474           already one for the element on the bin. Prevents infinite recursion
2475           when using decodebin in parse pipelines. Andy says he'll rewrite the
2476           way this works anyway, so ignore the hack.
2477
2478 2005-06-02  Andy Wingo  <wingo@pobox.com>
2479
2480         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
2481         file size, pass it on to the type find helper.
2482
2483         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
2484         segment_start and segment_end properly according to the seek
2485         method. Segment_end is still a bit flaky because offset can be
2486         negative for CUR and END cases, but it takes -1 as an "unset"
2487         value.
2488
2489 2005-06-02  Wim Taymans  <wim@fluendo.com>
2490
2491         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
2492         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
2493         (gst_basesink_activate):
2494         * gst/base/gstbasesink.h:
2495         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2496         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2497         (gst_pad_query), (gst_pad_start_task):
2498         * gst/gstpad.h:
2499         * gst/gstqueue.c: (gst_queue_bufferalloc),
2500         (gst_queue_handle_sink_event), (gst_queue_chain):
2501         Bufferalloc: return GstFlowReturn to more accuratly report
2502         why allocation failed.
2503
2504 2005-06-02  Wim Taymans  <wim@fluendo.com>
2505
2506         * gst/gstpipeline.c: (gst_pipeline_send_event):
2507         Take snapshot of state without blocking.
2508
2509 2005-06-02  Wim Taymans  <wim@fluendo.com>
2510
2511         * docs/design/part-TODO.txt:
2512         * docs/design/part-caps.txt:
2513         * docs/design/part-clocks.txt:
2514         * docs/design/part-negotiation.txt:
2515         * docs/design/part-preroll.txt:
2516         Small doc updates 
2517
2518 2005-05-30  Wim Taymans  <wim@fluendo.com>
2519
2520         * gst/elements/gstidentity.c: (gst_identity_event),
2521         (gst_identity_transform), (gst_identity_get_property):
2522         Protect last_message property as it is accessed from
2523         multiple threads.
2524
2525 2005-05-30  Wim Taymans  <wim@fluendo.com>
2526
2527         * gst/gstelement.c: (gst_element_init),
2528         (gst_element_pads_activate), (gst_element_change_state):
2529         Slicker pad activation code.
2530
2531 2005-05-30  Wim Taymans  <wim@fluendo.com>
2532
2533         * gst/Makefile.am:
2534         * gst/gstelement.h:
2535         * gst/gstelementfactory.h:
2536         * gst/gsttypes.h:
2537         Move elementfactory methods to separate .h file.
2538
2539 2005-05-30  Wim Taymans  <wim@fluendo.com>
2540
2541         * docs/design/part-overview.txt:
2542         * gst/gstsystemclock.h:
2543         Small typo fixes, doc updates.
2544
2545 2005-05-30  Wim Taymans  <wim@fluendo.com>
2546
2547         * gst/gst.c: (gst_init_get_popt_table), (init_post),
2548         (init_popt_callback):
2549         Remove cpu-opt flag.
2550
2551 2005-05-30  Wim Taymans  <wim@fluendo.com>
2552
2553         * gst/gstbuffer.c: (gst_subbuffer_finalize),
2554         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
2555         * gst/gstbuffer.h:
2556         Avoid typechecking in places where not needed.
2557         Added accessor for malloc_data.
2558
2559 2005-05-30  Wim Taymans  <wim@fluendo.com>
2560
2561         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
2562         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
2563         (gst_pad_configure_sink), (gst_pad_configure_src),
2564         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
2565         (gst_pad_start_task):
2566         Propagate errors from _set_caps() in configure_src/sink
2567         functions instead of returning TRUE.
2568         FLUSH events can travel up and downstream
2569
2570
2571 2005-05-30  Wim Taymans  <wim@fluendo.com>
2572
2573         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2574         (gst_basesink_activate):
2575         Handle EOS in preroll.
2576
2577 2005-05-30  Wim Taymans  <wim@fluendo.com>
2578
2579         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2580         (gst_queue_loop), (gst_queue_handle_src_event):
2581         Remove old pieces of code
2582         Flushing the queue in an upstream event is a very bad idea.
2583
2584 2005-05-26  Andy Wingo  <wingo@pobox.com>
2585
2586         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
2587         gst_value_set_mini_object so as to add a ref on the object (which
2588         will be removed when the value is unset).
2589
2590         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
2591         arg type in ::handoff.
2592
2593         * gst/gstelement.c (gst_element_change_state): Also deactivate
2594         pads in READY->NULL, just in case the element didn't make it to
2595         PAUSED. Wingo tested, Wim approved.
2596
2597 2005-05-26  Wim Taymans  <wim@fluendo.com>
2598
2599         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2600         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2601         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
2602         A flushing pad cannot be used to alloc_buffer from.
2603
2604 2005-05-26  Wim Taymans  <wim@fluendo.com>
2605
2606         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
2607         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
2608         (gst_bus_source_dispatch), (gst_bus_source_finalize),
2609         (gst_bus_create_watch), (gst_bus_add_watch_full):
2610         * gst/gstbus.h:
2611         Implement a real GSource and use g_main_context_wakeup() to
2612         signal new messages instead of the socketpair.
2613
2614 2005-05-25  Wim Taymans  <wim@fluendo.com>
2615
2616         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
2617         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
2618         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2619         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2620         (gst_pad_send_event), (gst_pad_start_task):
2621         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
2622         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
2623         (gst_queue_sink_activate), (gst_queue_src_activate),
2624         (gst_queue_change_state):
2625         * gst/gstqueue.h:
2626         Fix state changes for non sinks. We now change sinks, then elements
2627         with unconnected srcpads, then the rest.
2628         More efficient queue unlocking in flush and state changes.
2629         Set the pad activate mode even if it does not have an activate
2630         function.
2631
2632 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2633
2634         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
2635           Don't go in pull mode for non-seekable sources.
2636         * gst/elements/gsttypefindelement.h:
2637         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
2638         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
2639         (free_entry), (stop_typefinding),
2640         (gst_type_find_element_handle_event), (find_peek),
2641         (gst_type_find_element_chain), (do_pull_typefind),
2642         (gst_type_find_element_change_state):
2643           Allow typefinding (w/o seeking) in push-mode, simplified version
2644           of what was in 0.8.
2645         * gst/gstutils.c: (gst_buffer_join):
2646         * gst/gstutils.h:
2647           gst_buffer_join() from 0.8.
2648
2649 2005-05-25  Wim Taymans  <wim@fluendo.com>
2650
2651         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2652         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2653         (gst_pad_send_event), (gst_pad_start_task):
2654         Disable attempt at mode switching until it is figured out.
2655
2656 2005-05-25  Wim Taymans  <wim@fluendo.com>
2657
2658         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
2659         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2660         (gst_basesink_finish_preroll), (gst_basesink_chain),
2661         (gst_basesink_loop), (gst_basesink_activate),
2662         (gst_basesink_change_state):
2663         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
2664         (gst_basesrc_get_range), (gst_basesrc_loop),
2665         (gst_basesrc_activate):
2666         * gst/elements/gsttee.c: (gst_tee_sink_activate):
2667         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
2668         (gst_real_pad_init), (gst_real_pad_set_property),
2669         (gst_real_pad_get_property), (gst_pad_set_active),
2670         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
2671         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
2672         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
2673         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
2674         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2675         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
2676         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
2677         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
2678         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
2679         (gst_pad_stop_task):
2680         * gst/gstpad.h:
2681         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2682         (gst_queue_loop), (gst_queue_src_activate):
2683         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
2684         (gst_task_get_state):
2685         * gst/gsttask.h:
2686         * gst/schedulers/threadscheduler.c:
2687         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
2688         Implement gst_pad_pause/start/stop_task(), take STREAM lock
2689         in task function.
2690         Remove ACTIVE pad flag, use FLUSHING everywhere
2691         Added _pad_chain(), _pad_get_range() to call chain/getrange 
2692         functions.
2693         Add locks around IS_FLUSHING when reading.
2694         Take STREAM lock in chain(), get_range() functions so plugins
2695         don't need to take it anymore.
2696         
2697
2698
2699 2005-05-25  Wim Taymans  <wim@fluendo.com>
2700
2701         * tools/gst-launch.c: (event_loop):
2702         Unref message after using its contents instead of
2703         before.
2704
2705 2005-05-24  Wim Taymans  <wim@fluendo.com>
2706
2707         * docs/design/draft-ghostpads.txt:
2708         * docs/design/draft-push-pull.txt:
2709         * docs/design/draft-query.txt:
2710         * docs/design/part-overview.txt:
2711         Docs updates, added general overview doc.
2712
2713 2005-05-21  David Schleef  <ds@schleef.org>
2714
2715         * docs/gst/tmpl/old/GstBin.sgml:
2716         * docs/gst/tmpl/old/GstBuffer.sgml:
2717         * docs/gst/tmpl/old/GstCaps.sgml:
2718         * docs/gst/tmpl/old/GstClock.sgml:
2719         * docs/gst/tmpl/old/GstCompat.sgml:
2720         * docs/gst/tmpl/old/GstData.sgml:
2721         * docs/gst/tmpl/old/GstElement.sgml:
2722         * docs/gst/tmpl/old/GstEvent.sgml:
2723         * docs/gst/tmpl/old/GstIndex.sgml:
2724         * docs/gst/tmpl/old/GstStructure.sgml:
2725         * docs/gst/tmpl/old/GstTag.sgml:
2726         * docs/gst/tmpl/old/cothreads.sgml:
2727         * docs/gst/tmpl/old/cothreads_compat.sgml:
2728         * docs/gst/tmpl/old/gettext.sgml:
2729         * docs/gst/tmpl/old/gobject2gtk.sgml:
2730         * docs/gst/tmpl/old/grammar.tab.sgml:
2731         * docs/gst/tmpl/old/gst-i18n-app.sgml:
2732         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
2733         * docs/gst/tmpl/old/gst_private.sgml:
2734         * docs/gst/tmpl/old/gstaggregator.sgml:
2735         * docs/gst/tmpl/old/gstarch.sgml:
2736         * docs/gst/tmpl/old/gstatomic_impl.sgml:
2737         * docs/gst/tmpl/old/gstbufferstore.sgml:
2738         * docs/gst/tmpl/old/gstdata_private.sgml:
2739         * docs/gst/tmpl/old/gstdisksink.sgml:
2740         * docs/gst/tmpl/old/gstdisksrc.sgml:
2741         * docs/gst/tmpl/old/gstelementfactory.sgml:
2742         * docs/gst/tmpl/old/gstextratypes.sgml:
2743         * docs/gst/tmpl/old/gstfakesink.sgml:
2744         * docs/gst/tmpl/old/gstfakesrc.sgml:
2745         * docs/gst/tmpl/old/gstfdsink.sgml:
2746         * docs/gst/tmpl/old/gstfdsrc.sgml:
2747         * docs/gst/tmpl/old/gstfilesink.sgml:
2748         * docs/gst/tmpl/old/gstfilesrc.sgml:
2749         * docs/gst/tmpl/old/gsthttpsrc.sgml:
2750         * docs/gst/tmpl/old/gstidentity.sgml:
2751         * docs/gst/tmpl/old/gstindexfactory.sgml:
2752         * docs/gst/tmpl/old/gstmarshal.sgml:
2753         * docs/gst/tmpl/old/gstmd5sink.sgml:
2754         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
2755         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
2756         * docs/gst/tmpl/old/gstpadtemplate.sgml:
2757         * docs/gst/tmpl/old/gstpipefilter.sgml:
2758         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
2759         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
2760         * docs/gst/tmpl/old/gstshaper.sgml:
2761         * docs/gst/tmpl/old/gstspider.sgml:
2762         * docs/gst/tmpl/old/gstspideridentity.sgml:
2763         * docs/gst/tmpl/old/gststatistics.sgml:
2764         * docs/gst/tmpl/old/gsttee.sgml:
2765         * docs/gst/tmpl/old/gsttimecache.sgml:
2766         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
2767         * docs/gst/tmpl/old/gstxmlregistry.sgml:
2768         * docs/gst/tmpl/old/gthread-cothreads.sgml:
2769         * docs/gst/tmpl/old/types.sgml:
2770           I didn't intend to add these or check them in.
2771
2772 2005-05-19  David Schleef  <ds@schleef.org>
2773
2774         * configure.ac: Use -no-common everywhere.  In a sane world, it
2775           would be the default in libtool, because without it, you can't
2776           build DLLs on Windows.
2777         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
2778         * docs/gst/gstreamer-sections.txt:
2779         * docs/gst/tmpl/gstcpu.sgml:
2780         * docs/gst/tmpl/gstdata.sgml:
2781         * docs/gst/tmpl/gstthread.sgml:
2782
2783 2005-05-19  David Schleef  <ds@schleef.org>
2784
2785         * gst/gstminiobject.c: (gst_value_set_mini_object),
2786         (gst_value_take_mini_object), (gst_value_get_mini_object):
2787         * gst/gstminiobject.h: Add GValue set/get functions.
2788
2789 2005-05-19  Wim Taymans  <wim@fluendo.com>
2790
2791         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
2792         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
2793         (gst_subbuffer_init), (gst_buffer_is_span_fast):
2794         * gst/gstbuffer.h:
2795         * gst/gstbus.c: (gst_bus_post):
2796         * gst/gstelement.c: (gst_element_get_random_pad):
2797         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
2798         Make subbufer unref the parent in finalize.
2799         some more debugging info.
2800
2801
2802 2005-05-19  Wim Taymans  <wim@fluendo.com>
2803
2804         * gst/base/gstbasesink.c: (gst_basesink_class_init),
2805         (gst_basesink_init), (gst_basesink_finalize),
2806         (gst_basesink_activate), (gst_basesink_change_state):
2807         Don't free preroll queue too early.
2808
2809 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2810
2811         * gst/Makefile.am:
2812         * gst/ROADMAP:
2813           Hi, I'm outdated. Please shoot me.
2814
2815 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2816
2817         * gst/gstpipeline.c: (gst_pipeline_send_event):
2818           Do not access variables after they have been deleted.
2819
2820 2005-05-19  Wim Taymans  <wim@fluendo.com>
2821
2822         * tools/gst-inspect.c: (print_plugin_features):
2823         A plugin feature does unfortunatly not use the
2824         object name yet...
2825
2826 2005-05-18  Wim Taymans  <wim@fluendo.com>
2827
2828         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
2829         Port _span() functions to new subbuffers.
2830
2831 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2832
2833         * gst/gstbin.c: (gst_bin_add_func):
2834           Fix clock settery in bins when adding kids after the clock has
2835           been selected.
2836
2837 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2838
2839         * gst/elements/gstidentity.c: (gst_identity_class_init):
2840           Workaround until signals support GstMiniObject.
2841
2842 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
2843
2844         * gst/gstbuffer.c:
2845         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
2846
2847 2005-05-18  Wim Taymans  <wim@fluendo.com>
2848
2849         * gst/base/Makefile.am:
2850         * gst/base/gstadapter.c: (gst_adapter_base_init),
2851         (gst_adapter_class_init), (gst_adapter_init),
2852         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
2853         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
2854         (gst_adapter_flush), (gst_adapter_available),
2855         (gst_adapter_available_fast):
2856         * gst/base/gstadapter.h:
2857         Ported and added adapter to the base classes.
2858
2859 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
2860
2861         * gst/gst.c:
2862         * gst/gstmessage.c:
2863           Make sure the class is reffed/unreffed once before threads can be
2864           used.  Fixes #304551.
2865
2866 2005-05-17  Wim Taymans  <wim@fluendo.com>
2867
2868         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
2869         (gst_basesink_chain_unlocked), (gst_basesink_activate):
2870         * gst/gstminiobject.c: (gst_mini_object_get_type),
2871         (gst_mini_object_free):
2872         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
2873         (gst_pad_push), (gst_pad_push_event):
2874         * gst/gstqueue.c: (gst_queue_change_state):
2875         Don't queue buffers in basesink when we are flushing.
2876         Unref buffer when flushing in basesink.
2877         Flush queue when going to READY
2878         Unref buffer when _push() returns an error.
2879         Don't free MiniObject instance when refcount is incremented
2880         in _finalize() so that we can recover objects.
2881
2882 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2883
2884         * docs/manual/advanced-schedulers.xml:
2885         * docs/manual/appendix-checklist.xml:
2886         * docs/pwg/advanced-clock.xml:
2887         * docs/pwg/advanced-interfaces.xml:
2888         * docs/pwg/advanced-request.xml:
2889         * docs/pwg/advanced-types.xml:
2890         * docs/pwg/intro-preface.xml:
2891         * examples/plugins/example.c: (gst_example_get_type),
2892         (gst_example_class_init), (gst_example_chain),
2893         (gst_example_set_property), (gst_example_get_property),
2894         (gst_example_change_state), (plugin_init):
2895         * examples/plugins/example.h:
2896           small doc fixes
2897
2898 2005-05-17  Wim Taymans  <wim@fluendo.com>
2899
2900         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
2901         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
2902         * gst/gstqueue.c: (gst_queue_change_state):
2903         Clear queue when going to READY.
2904         Remove IN_SETCAPS flag too.
2905
2906 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
2907
2908         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
2909           Remove implicit cast from gboolean to GstElementStateReturn;
2910           make sure we still return failure in paused => ready case if
2911           the parent class fails to change state and our own stop 
2912           vfunc succeeds.
2913
2914 2005-05-17  Wim Taymans  <wim@fluendo.com>
2915
2916         * tools/gst-launch.c: (event_loop):
2917         Message was unreffed too soon.
2918
2919 2005-05-16  Andy Wingo  <wingo@pobox.com>
2920
2921         * gst/gstbin.c (sink_iterator_filter): Err... um...
2922
2923         * check/gst/gstbin.c (test_ghost_pads): New test for the
2924         ghosting-if-elements-not-in-same-bin behavior.
2925
2926 2005-05-16  David Schleef  <ds@schleef.org>
2927
2928         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
2929         accessing refcount directly.
2930
2931 2005-05-15  David Schleef  <ds@schleef.org>
2932
2933         * check/Makefile.am: remove GstData checks
2934         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
2935         * gst/Makefile.am: add miniobject, remove data
2936         * gst/gst.h: add miniobject, remove data
2937         * gst/gstdata.c: remove
2938         * gst/gstdata.h: remove
2939         * gst/gstdata_private.h: remove
2940         * gst/gsttypes.h: remove GstEvent and GstMessage
2941         * gst/gstelement.c: (gst_element_post_message): fix for API changes
2942         * gst/gstmarshal.list: change BOXED -> OBJECT
2943
2944         Implement GstMiniObject.
2945         * gst/gstminiobject.c:
2946         * gst/gstminiobject.h:
2947
2948         Modify to be subclasses of GstMiniObject.
2949         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
2950         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
2951         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
2952         (gst_subbuffer_get_type), (gst_subbuffer_init),
2953         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
2954         (gst_buffer_span):
2955         * gst/gstbuffer.h:
2956         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
2957         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
2958         (_gst_event_copy), (gst_event_new):
2959         * gst/gstevent.h:
2960         * gst/gstmessage.c: (_gst_message_initialize),
2961         (gst_message_get_type), (gst_message_class_init),
2962         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
2963         (gst_message_new), (gst_message_new_error),
2964         (gst_message_new_warning), (gst_message_new_tag),
2965         (gst_message_new_state_changed), (gst_message_new_application):
2966         * gst/gstmessage.h:
2967         * gst/gstprobe.c: (gst_probe_perform),
2968         (gst_probe_dispatcher_dispatch):
2969         * gst/gstprobe.h:
2970         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
2971         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
2972         (_gst_query_copy), (gst_query_new):
2973
2974         Update elements for GstData -> GstMiniObject changes
2975         * gst/gstquery.h:
2976         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
2977         (gst_queue_chain), (gst_queue_loop):
2978         * gst/elements/gstbufferstore.c:
2979         (gst_buffer_store_add_buffer_func),
2980         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
2981         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
2982         (gst_fakesink_render):
2983         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
2984         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
2985         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
2986         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
2987         (gst_filesrc_create_read):
2988         * gst/elements/gstidentity.c: (gst_identity_class_init):
2989         * gst/elements/gsttypefindelement.c:
2990         (gst_type_find_element_src_event), (free_entry_buffers),
2991         (gst_type_find_element_handle_event):
2992         * libs/gst/dataprotocol/dataprotocol.c:
2993         (gst_dp_header_from_buffer):
2994         * libs/gst/dataprotocol/dataprotocol.h:
2995         * libs/gst/dataprotocol/dp-private.h:
2996
2997 2005-05-15  David Schleef  <ds@schleef.org>
2998
2999         * gst/elements/gstelements.c: Don't include headers that were
3000         just removed.
3001
3002 2005-05-15  David Schleef  <ds@schleef.org>
3003
3004         * gst/elements/Makefile.am: Remove some elements that don't
3005         need to be in the core (or even exist at all).
3006         * gst/elements/gstaggregator.c:
3007         * gst/elements/gstaggregator.h:
3008         * gst/elements/gstmd5sink.c:
3009         * gst/elements/gstmd5sink.h:
3010         * gst/elements/gstmultifilesrc.c:
3011         * gst/elements/gstmultifilesrc.h:
3012         * gst/elements/gstpipefilter.c:
3013         * gst/elements/gstpipefilter.h:
3014         * gst/elements/gstshaper.c:
3015         * gst/elements/gstshaper.h:
3016         * gst/elements/gststatistics.c:
3017         * gst/elements/gststatistics.h:
3018         * po/POTFILES.in: Remove above files.
3019
3020 2005-05-14  Andy Wingo  <wingo@pobox.com>
3021
3022         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
3023         so as to get the refs right.
3024         (sink_iterator_filter): New function, wraps bin_element_is_sink,
3025         unreffing objects that don't pass the filter.
3026
3027         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
3028         gst_element_set_bus.
3029         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
3030         normal cases, this will destroy the bus.
3031
3032         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
3033         object.
3034
3035         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
3036         has no sinks.
3037
3038 2005-05-13  Andy Wingo  <wingo@pobox.com>
3039
3040         * gst/gstutils.c (gst_element_link_pads): Instead of calling
3041         gst_pad_link, call pad_link_maybe_ghosting,
3042         (pad_link_maybe_ghosting): Links pads, making sure that the
3043         elements being linked are in the same bin.
3044         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
3045         Helpers for pad_link_maybe_ghosting.
3046
3047 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3048
3049         * configure.ac:
3050           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
3051
3052 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3053
3054         * docs/design/part-element-source.txt:
3055           Mention GstPushSrc
3056
3057 2005-05-12  Wim Taymans  <wim@fluendo.com>
3058
3059         * gst/base/gstbasesink.c: (gst_basesink_init),
3060         (gst_basesink_activate):
3061         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
3062         (gst_basesrc_is_seekable):
3063         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
3064         (bin_element_is_sink), (gst_bin_change_state):
3065         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3066         * gst/gstelement.h:
3067         Identify sinks by their flag to avoid overly complicated
3068         checks (fow now).
3069         Do state changes even for elements not reachable from the
3070         sinks.
3071         BaseSink is a sink now :)
3072         Some more debugging info in the basesrc.
3073
3074
3075 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3076
3077         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
3078           Implement _query on a bin, similar to _send_event.
3079
3080 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
3081
3082         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
3083           Discont event offset format should be GST_FORMAT_BYTES,
3084           not GST_FORMAT_TIME.
3085
3086 2005-05-12  Wim Taymans  <wim@fluendo.com>
3087
3088         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
3089         Same fix as Ronald's but without the signal. 
3090
3091 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3092
3093         * gst/gstutils.c: (gst_element_query_position):
3094           No, an element is not a pad.
3095
3096 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3097
3098         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
3099         (gst_bin_get_state):
3100           If a child is removed from a bin while we remove the child from
3101           the bin and while we're retrieving its state, signal this to the
3102           get_state function so we abort the wait (instead of waiting for
3103           a timeout) and can immediately re-iterate over all other elements.
3104
3105 2005-05-12  Wim Taymans  <wim@fluendo.com>
3106
3107         * gst/base/Makefile.am:
3108         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
3109         (gst_basesrc_start):
3110         * gst/base/gstbasesrc.h:
3111         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
3112         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
3113         (gst_pushsrc_init), (gst_pushsrc_create):
3114         * gst/base/gstpushsrc.h:
3115         Added is_seekable to BaseSrc
3116         Added simple PushSrc.
3117
3118 2005-05-11  Wim Taymans  <wim@fluendo.com>
3119
3120         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3121         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3122         (gst_element_link_pads), (gst_element_query_position),
3123         (gst_element_query_convert), (intersect_caps_func),
3124         (gst_pad_query_position), (gst_pad_query_convert):
3125         Fix refcounting in utils function.
3126         No point in trying to activate a pad when it's added, it could
3127         be added from the state change function and then we deadlock, the
3128         element has to decide what to do.
3129
3130 2005-05-10  Andy Wingo  <wingo@pobox.com>
3131
3132         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
3133         *all* the arguments.
3134
3135         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
3136         stream lock if it's a FLUSH_DONE; normal flushes don't get the
3137         lock (according to the docs -- if this is wrong change the docs).
3138
3139         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
3140         flush messages in the NULL state.
3141
3142         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
3143         message immediately and return.
3144         (gst_bus_set_flushing): New function. If a bus is flushing, it
3145         flushes out any queued messages and immediately unrefs new
3146         messages. This is so when an element goes to NULL, all of the
3147         unhandled messages coming from it can be freed, and their
3148         references to the element dropped. In other words: message source
3149         ref considered harmful :P
3150
3151         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
3152         we're finished with it.
3153
3154         * gst/gstmessage.c (gst_message_new_state_changed): 
3155
3156 2005-05-10  Wim Taymans  <wim@fluendo.com>
3157
3158         * gst/gstvalue.c: (gst_value_compare_flags),
3159         (gst_value_serialize_flags), (gst_value_deserialize_flags),
3160         (_gst_value_initialize):
3161         Added flags serialize/deserialize/compare code.
3162
3163 2005-05-09  Andy Wingo  <wingo@pobox.com>
3164
3165         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
3166         Intersect the peer's caps with our caps.
3167
3168 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3169
3170         * gst/base/gsttypefindhelper.c: (helper_find_peek):
3171         * gst/elements/gsttypefindelement.c: (find_peek):
3172           Handle negative offsets better. Fixes decodebin.
3173
3174 2005-05-09  Wim Taymans  <wim@fluendo.com>
3175
3176         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
3177         (gst_base_transform_event):
3178         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
3179         Implement accept_caps.
3180         Fix silly lock/unlock mismatch in base class.
3181
3182 2005-05-09  Wim Taymans  <wim@fluendo.com>
3183
3184         * docs/design/draft-push-pull.txt:
3185         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
3186         * gst/elements/gstfilesink.c: (gst_filesink_init),
3187         (gst_filesink_query):
3188         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3189         (gst_type_find_handle_src_query), (find_element_get_length):
3190         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
3191         * gst/gstelement.h:
3192         * gst/gstmessage.c:
3193         * gst/gstmessage.h:
3194         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
3195         (gst_real_pad_get_caps_unlocked),
3196         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
3197         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3198         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
3199         (gst_real_pad_dispose), (gst_real_pad_finalize),
3200         (gst_pad_load_and_link), (gst_pad_save_thyself),
3201         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
3202         (gst_pad_check_pull_range), (gst_pad_pull_range),
3203         (gst_pad_template_get_type), (gst_pad_template_class_init),
3204         (gst_pad_template_init), (gst_pad_template_dispose),
3205         (name_is_valid), (gst_static_pad_template_get),
3206         (gst_pad_template_new), (gst_static_pad_template_get_caps),
3207         (gst_pad_template_get_caps), (gst_pad_set_element_private),
3208         (gst_pad_get_element_private), (gst_pad_start_task),
3209         (gst_pad_pause_task), (gst_pad_stop_task),
3210         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
3211         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
3212         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
3213         (gst_ghost_pad_new):
3214         * gst/gstpad.h:
3215         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
3216         (gst_query_new_position), (gst_query_set_position),
3217         (gst_query_parse_position), (gst_query_new_convert),
3218         (gst_query_set_convert), (gst_query_parse_convert):
3219         * gst/gstquery.h:
3220         * gst/gstqueryutils.c:
3221         * gst/gstqueryutils.h:
3222         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3223         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3224         (gst_queue_handle_src_query):
3225         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3226         (gst_element_query_position), (gst_element_query_convert),
3227         (intersect_caps_func), (gst_pad_query_position),
3228         (gst_pad_query_convert):
3229         * gst/gstutils.h:
3230         * tools/gst-inspect.c: (print_pad_info):
3231         * tools/gst-xmlinspect.c: (print_element_info):
3232         Remove old query functions. Ported old code.
3233         Added position/convert helper functions to gstutils.
3234         Reordered gstpad.c code, grouping relevant things.
3235         Remove gst_message_new(), always need to speficy a specific
3236         message.
3237
3238
3239 2005-05-09  Andy Wingo  <wingo@pobox.com>
3240
3241         * gst/gstiterator.h: Add some includes.
3242
3243         * gst/gstqueryutils.h: Include more headers.
3244
3245         * gst/gstpad.h:
3246         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
3247         some uses of gst_pad_query.
3248
3249         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
3250         NULL out parameters.
3251         (gst_query_new_position): New proc, allocates a new position
3252         query.
3253
3254         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
3255         gstqueryutils.c to the build.
3256
3257         * gst/gststructure.c (gst_structure_set_valist): Implement with
3258         the generic G_VALUE_COLLECT.
3259         
3260 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
3261
3262         * gst/Makefile.am: (gst_headers):
3263         Added gstqueryutils.h to the list of headers to install, that was
3264         a 'nachty' move wingo :)
3265
3266 2005-05-06  Andy Wingo  <wingo@pobox.com>
3267
3268         * gst/gstquery.h
3269         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
3270         GstData, init a memchunk.
3271         (standard_definitions): Add a few query types, deprecate a few.
3272         (gst_query_get_type): New proc.
3273         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
3274         implementation.
3275         (gst_query_new_application, gst_query_get_structure): New public
3276         procs.
3277
3278         * docs/design/draft-query.txt: Removed LINKS from the query types,
3279         because all the rest can be dispatched to other pads -- seemed
3280         ugly to have a query that couldn't be dispatched. internal_links
3281         is fine as a pad method.
3282
3283         * gst/gstpad.h: Add query2 as a pad method, add the new functions
3284         in gstpad.c, but maintain binary compatibility for the moment.
3285         Will fix before 0.9 is out.
3286
3287         * gst/gstqueryutils.c: 
3288         * gst/gstqueryutils.h: New files, implement 3 methods for each
3289         query type: parse_query, parse_response, and set. Probably need an
3290         allocator as well.
3291
3292         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
3293
3294         * gst/elements/gstfilesink.c (gst_filesink_query2):
3295         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
3296         query_types, and formats methods.
3297
3298         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
3299         (gst_pad_set_query2_function): New functions.
3300         (gst_real_pad_init): Set query2_default as the default query2
3301         function. Basically just dispatches to internally linked pads.
3302
3303         Needs review!
3304         
3305         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
3306         without using the atomic operations. Only one thread can possibly
3307         be accessing the data at this point. Changed so as to avoid
3308         gst_atomic operations.
3309
3310 2005-05-06  Wim Taymans  <wim@fluendo.com>
3311
3312         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
3313         Also set caps if we use the fallback buffer alloc.
3314
3315 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
3316
3317         * docs/gst/Makefile.am:
3318         * docs/gst/gstreamer-docs.sgml:
3319         * docs/gst/gstreamer-sections.txt:
3320         * docs/gst/tmpl/gstatomic.sgml:
3321         * docs/gst/tmpl/gstmemchunk.sgml:
3322         * testsuite/elements/struct_i386.h:
3323         * win32/GStreamer.vcproj:
3324         * win32/Makefile:
3325           Purge GstAtomic stuff from docs and win32 makefiles as well
3326
3327 2005-05-06  Wim Taymans  <wim@fluendo.com>
3328
3329         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
3330         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
3331         * gst/gstpad.c: (gst_pad_peer_get_caps):
3332         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3333         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3334         (gst_queue_src_activate), (gst_queue_change_state):
3335         * gst/gstqueue.h:
3336         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3337         (intersect_caps_func):
3338         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
3339         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
3340         Some fixes for the peer_get_caps() change.
3341
3342 2005-05-06  Wim Taymans  <wim@fluendo.com>
3343
3344         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
3345         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
3346         (gst_basesink_activate):
3347         Actually do something with error codes returned from the push
3348         functions.
3349
3350 2005-05-06  Wim Taymans  <wim@fluendo.com>
3351
3352         * docs/design/part-element-sink.txt:
3353         * docs/design/part-element-source.txt:
3354         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3355         (gst_basesink_event), (gst_basesink_activate):
3356         * gst/base/gstbasesink.h:
3357         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
3358         (gst_basesrc_activate):
3359         * gst/base/gstbasesrc.h:
3360         * gst/gstelement.c: (gst_element_pads_activate):
3361         Some more documentation.
3362         Fixed scheduling decision in _pads_activate().
3363
3364 2005-05-05  Andy Wingo  <wingo@pobox.com>
3365
3366         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
3367         the test suite.
3368
3369 2005-05-05  Wim Taymans  <wim@fluendo.com>
3370
3371         * gst/base/Makefile.am:
3372         * gst/base/gstbasesink.h:
3373         * gst/base/gstbasesrc.c: (gst_basesrc_init),
3374         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
3375         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
3376         (gst_collectpads_class_init), (gst_collectpads_init),
3377         (gst_collectpads_finalize), (gst_collectpads_new),
3378         (gst_collectpads_set_function), (gst_collectpads_add_pad),
3379         (find_pad), (gst_collectpads_remove_pad),
3380         (gst_collectpads_is_active), (gst_collectpads_collect),
3381         (gst_collectpads_collect_range), (gst_collectpads_start),
3382         (gst_collectpads_stop), (gst_collectpads_peek),
3383         (gst_collectpads_pop), (gst_collectpads_available),
3384         (gst_collectpads_read), (gst_collectpads_flush),
3385         (gst_collectpads_chain):
3386         * gst/base/gstcollectpads.h:
3387         * gst/elements/Makefile.am:
3388         * gst/elements/gstelements.c:
3389         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3390         (gst_fakesink_get_times), (gst_fakesink_event),
3391         (gst_fakesink_preroll), (gst_fakesink_render):
3392         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
3393         (gst_filesink_init), (gst_filesink_set_location),
3394         (gst_filesink_open_file), (gst_filesink_close_file),
3395         (gst_filesink_pad_query), (gst_filesink_event),
3396         (gst_filesink_render), (gst_filesink_change_state):
3397         * gst/elements/gstfilesink.h:
3398         Added object to help in making collect pad based elements.
3399         Ported filesink.
3400         Make event function in sink baseclass return gboolean.
3401
3402 2005-05-05  Wim Taymans  <wim@fluendo.com>
3403
3404         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
3405         (gst_bin_get_by_name):
3406         * gst/gstbuffer.h:
3407         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
3408         (gst_clock_finalize):
3409         * gst/gstdata.c: (gst_data_replace):
3410         * gst/gstdata.h:
3411         * gst/gstelement.c: (gst_element_request_pad),
3412         (gst_element_pads_activate):
3413         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
3414         (gst_object_unref):
3415         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3416         (gst_pad_set_checkgetrange_function),
3417         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
3418         (gst_pad_check_pull_range), (gst_pad_pull_range),
3419         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3420         (gst_pad_pause_task), (gst_pad_stop_task):
3421         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3422         (gst_element_request_pad), (gst_pad_proxy_getcaps):
3423         Fix name lookup in GstBin.
3424         Added _data_replace() function and _buffer_replace()
3425         Use finalize method to clean up clock.
3426         Fix refcounting on request pads.
3427         Fix pad schedule mode error.
3428         Some more object refcounting debug info,
3429
3430
3431 2005-05-04  Andy Wingo <wingo@pobox.com>
3432
3433         * check/Makefile.am:
3434         * docs/gst/tmpl/gstatomic.sgml:
3435         * docs/gst/tmpl/gstplugin.sgml:
3436         * gst/base/gstbasesink.c: (gst_basesink_activate):
3437         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
3438         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
3439         (gst_basesrc_query), (gst_basesrc_set_property),
3440         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
3441         (gst_basesrc_activate):
3442         * gst/base/gstbasesrc.h:
3443         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
3444         (gst_base_transform_src_activate):
3445         * gst/elements/gstelements.c:
3446         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3447         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
3448         * gst/elements/gsttee.c: (gst_tee_sink_activate):
3449         * gst/elements/gsttypefindelement.c: (find_element_get_length),
3450         (gst_type_find_element_checkgetrange),
3451         (gst_type_find_element_activate):
3452         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
3453         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
3454         (gst_caps_load_thyself):
3455         * gst/gstelement.c: (gst_element_pads_activate),
3456         (gst_element_save_thyself), (gst_element_restore_thyself):
3457         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
3458         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
3459         * gst/gstpad.h:
3460         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
3461         (gst_xml_parse_file), (gst_xml_parse_memory),
3462         (gst_xml_get_element), (gst_xml_make_element):
3463         * gst/indexers/gstfileindex.c: (gst_file_index_load),
3464         (_file_index_id_save_xml), (gst_file_index_commit):
3465         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
3466         (read_enum), (load_pad_template), (load_feature), (load_plugin),
3467         (load_paths):
3468         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
3469         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
3470         * tools/gst-complete.c: (main):
3471         * tools/gst-compprep.c: (main):
3472         * tools/gst-inspect.c: (print_element_properties_info):
3473         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
3474         * tools/gst-xmlinspect.c: (print_element_properties):
3475         GCC 4 fixen.
3476         
3477 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
3478
3479         * gst/gstplugin.c: (gst_plugin_check_module),
3480         (gst_plugin_check_file), (gst_plugin_load_file):
3481             apply patch from #172526 to make register work on MacOSX
3482
3483 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3484
3485         * docs/gst/tmpl/gstconfig.sgml:
3486         * gst/gstconfig.h.in:
3487           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
3488         * testsuite/debug/printf_extension.c: (main):
3489           Do not use GST_PTR_FORMAT on pointers to types with
3490           sizeof < sizeof(gpointer).  Fixes test on 64-bit
3491         * testsuite/elements/property.h:
3492           use correct printf format
3493
3494 2005-05-02  Wim Taymans  <wim@fluendo.com>
3495
3496         * docs/design/draft-push-pull.txt:
3497         * docs/design/draft-query.txt:
3498         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
3499         (gst_basesrc_start):
3500         Added draft for new query API.
3501         Added draft for better selecting scheduling methods.
3502         Make basesrc ignore length if the subclass does not support
3503         it.
3504
3505 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3506
3507         * gst/Makefile.am:
3508           possible fixes for automake-1.5 - _LIBADD is reserved
3509
3510 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3511
3512         * docs/faq/Makefile.am:
3513         * docs/manual/Makefile.am:
3514         * docs/manuals.mak:
3515         * docs/pwg/Makefile.am:
3516         * gst/Makefile.am:
3517           possible fixes for automake-1.5
3518
3519 2005-04-28  Wim Taymans  <wim@fluendo.com>
3520
3521         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3522         (gst_basesink_pad_getcaps), (gst_basesink_init),
3523         (gst_basesink_do_sync):
3524         * gst/gstclock.c: (gst_clock_entry_new):
3525         * gst/gstevent.c: (gst_event_discont_get_value):
3526         * gst/gstpipeline.c: (pipeline_bus_handler),
3527         (gst_pipeline_change_state):
3528         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
3529         Better debugging of clocking info.
3530         Allow NULL values when getting discont values.
3531
3532 2005-04-27  Wim Taymans  <wim@fluendo.com>
3533
3534         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
3535         * check/gst/gstpad.c: (gst_pad_suite):
3536         Increase timeout for checks.
3537
3538 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3539
3540         * check/Makefile.am:
3541           fix the broken rule for cleanup.  Apparently this rule is
3542           only needed on FC2, so maybe this warrants further autotool
3543           inspection.
3544
3545 2005-04-26  Wim Taymans  <wim@fluendo.com>
3546
3547         * gst/gsttrashstack.h:
3548         Ooohh. a nasty one! After having a failed pop() from the stack,
3549         it's possible that the stack is empty. In that case, don't
3550         follow the NULL pointer.
3551
3552 2005-04-25  Wim Taymans  <wim@fluendo.com>
3553
3554         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3555         (gst_pad_set_checkgetrange_function),
3556         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
3557         (gst_pad_check_pull_range), (gst_pad_pull_range),
3558         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3559         (gst_pad_pause_task), (gst_pad_stop_task):
3560         * gst/gstplugin.c: (gst_plugin_load):
3561         * gst/gstplugin.h:
3562         Remove gst_library_load as it does more harm than good with
3563         the new g_module flags.
3564         Revert bogus caps template check in pad linking, pad caps
3565         are important when linking not the template, which is more
3566         general than the current caps.
3567
3568 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3569
3570         * gst/autoplug/.cvsignore:
3571         * gst/autoplug/Makefile.am:
3572         * gst/autoplug/gstsearchfuncs.c:
3573         * gst/autoplug/gstsearchfuncs.h:
3574         * gst/autoplug/gstspider.c:
3575         * gst/autoplug/gstspider.h:
3576         * gst/autoplug/gstspideridentity.c:
3577         * gst/autoplug/gstspideridentity.h:
3578         * gst/autoplug/spidertest.c:
3579           Die, spider, die.
3580
3581 2005-04-25  Wim Taymans  <wim@fluendo.com>
3582
3583         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3584         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3585         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
3586         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
3587         * gst/gstpad.h:
3588         Added stubs for unimplemented functions. 
3589
3590 2005-04-24  David Schleef  <ds@schleef.org>
3591
3592         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
3593         please fix.
3594
3595 2005-04-24  David Schleef  <ds@schleef.org>
3596
3597         Convert everything from GstAtomicInt to g_atomic_int_*, and
3598         remove gstatomic.
3599         * gst/Makefile.am:
3600         * gst/gstatomic.c:
3601         * gst/gstatomic.h:
3602         * gst/gstatomic_impl.h:
3603         * gst/gstbuffer.c:
3604         * gst/gstcaps.c:
3605         * gst/gstcaps.h:
3606         * gst/gstclock.c:
3607         * gst/gstclock.h:
3608         * gst/gstdata.c:
3609         * gst/gstdata.h:
3610         * gst/gstdata_private.h:
3611         * gst/gstevent.c:
3612         * gst/gstinfo.c:
3613         * gst/gstinfo.h:
3614         * gst/gstmessage.c:
3615         * gst/gstobject.c:
3616         * gst/gstobject.h:
3617         * gst/gststructure.c:
3618         * gst/gststructure.h:
3619         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
3620         * gst/gstutils.h:
3621
3622 2005-04-24  David Schleef  <ds@schleef.org>
3623
3624         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
3625         make the regressions tests work.  Remove some code that is no
3626         longer true.
3627         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
3628         Disable warning for pads without templates.
3629
3630 2005-04-24  David Schleef  <ds@schleef.org>
3631
3632         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
3633         functions that handle filtered links.
3634         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
3635         removed functions.
3636         * gst/gstutils.c: Fix/remove utility functions that handle
3637         filtered caps.
3638         * gst/gstutils.h:
3639         * gst/gstvalue.c: Add serialization/deserialization of caps
3640         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
3641         requires fixing so that the filter caps notation creates
3642         a capsfilter element and sets the filter_caps property.  I
3643         think everyone probably wants to keep the shorthand notation.
3644         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
3645         * docs/gst/tmpl/gstpad.sgml:
3646
3647         * gst/elements/gstelements.c: Register capsfilter element.
3648         * gst/Makefile.am: fix spacing
3649         * docs/random/ds/0.9-suggested-changes: random
3650
3651 2005-04-23  David Schleef  <ds@schleef.org>
3652
3653         * gst/elements/Makefile.am:
3654         * gst/elements/gstcapsfilter.c: New element that acts like an
3655         identity, but filters caps.  Will eventually replace filtered
3656         caps in pad linking.
3657         * gst/gstutils.c: (gst_element_create_all_pads): New function
3658         to create all the ALWAYS pads that are registered with an
3659         element class.  This functionality should eventually be
3660         merged in with GstElement initialization.
3661         * gst/gstutils.h:
3662         * testsuite/trigger/README: part of trigger test code that should
3663         have been checked in a long time ago.
3664
3665 2005-04-23  David Schleef  <ds@schleef.org>
3666
3667         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
3668         needed with new versions of libtool (nobody will confirm this),
3669         and hard to carry around.
3670         * gst/autoplug/Makefile.am:
3671         * gst/base/Makefile.am:
3672         * gst/elements/Makefile.am:
3673         * gst/indexers/Makefile.am:
3674         * gst/schedulers/Makefile.am:
3675         * libs/gst/bytestream/Makefile.am:
3676         * libs/gst/control/Makefile.am:
3677         * libs/gst/dataprotocol/Makefile.am:
3678         * libs/gst/getbits/Makefile.am:
3679
3680 2005-04-21  Wim Taymans  <wim@fluendo.com>
3681
3682         * docs/design/draft-push-pull.txt:
3683         * docs/design/part-MT-refcounting.txt:
3684         * docs/design/part-TODO.txt:
3685         * docs/design/part-caps.txt:
3686         * docs/design/part-events.txt:
3687         * docs/design/part-gstbus.txt:
3688         * docs/design/part-gstpipeline.txt:
3689         * docs/design/part-messages.txt:
3690         * docs/design/part-push-pull.txt:
3691         * docs/design/part-query.txt:
3692         Some more docs.
3693
3694 2005-04-21  Wim Taymans  <wim@fluendo.com>
3695
3696         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
3697         (gst_message_new), (gst_message_new_error),
3698         (gst_message_new_warning), (gst_message_new_tag),
3699         (gst_message_new_state_changed), (gst_message_new_application),
3700         (gst_message_get_structure):
3701         * gst/gstmessage.h:
3702         * gst/gststructure.c: (gst_structure_set_parent_refcount),
3703         (gst_structure_copy_conditional):
3704         Use parent refcount in GstMessage to ensure GstStructure
3705         consistency.
3706         Cleaned up headers a bit.
3707         
3708
3709 2005-04-20  Wim Taymans  <wim@fluendo.com>
3710
3711         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3712         (gst_basesink_pad_getcaps), (gst_basesink_init),
3713         (gst_basesink_chain_unlocked):
3714         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
3715         (gst_type_find_helper):
3716         * gst/elements/gsttypefindelement.c:
3717         (gst_type_find_element_have_type), (gst_type_find_element_init),
3718         (stop_typefinding), (gst_type_find_element_handle_event),
3719         (find_suggest), (gst_type_find_element_chain),
3720         (gst_type_find_element_checkgetrange),
3721         (gst_type_find_element_getrange), (do_typefind),
3722         (gst_type_find_element_activate):
3723         * gst/gstbuffer.c: (_gst_buffer_sub_free),
3724         (gst_buffer_default_free), (gst_buffer_default_copy),
3725         (gst_buffer_set_caps):
3726         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
3727         (gst_caps_replace):
3728         * gst/gstmessage.c: (gst_message_new),
3729         (gst_message_new_state_changed):
3730         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3731         (gst_pad_set_checkgetrange_function),
3732         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
3733         (gst_pad_set_caps), (gst_pad_check_pull_range),
3734         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
3735         * gst/gstpad.h:
3736         * gst/gsttypefind.c: (gst_type_find_register):
3737         Make gst_caps_replace() work like other _replace() functions.
3738         Use _caps_replace() where possible.
3739         Make sure _message_new() initialises its field.
3740         Add gst_static_pad_template_get_caps()
3741
3742
3743 2005-04-18  Andy Wingo  <wingo@pobox.com>
3744
3745         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
3746         on the peer, not the pad. I think that was a typo. Pass an extra
3747         arg to see if random access is possible. Activate the pads as
3748         PULL_RANGE if possible.
3749
3750         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
3751
3752         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
3753         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
3754         to PROP_....
3755
3756 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3757
3758         * docs/faq/using.xml:
3759           Add note on gstreamer-properties (#154996).
3760
3761 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3762
3763         * docs/random/bbb/optional-properties:
3764           Some analysis on optional properties.
3765
3766 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3767
3768         * docs/gst/tmpl/gstelementfactory.sgml:
3769         * gst/gstelement.h:
3770         * gst/gstelementfactory.c: (gst_element_factory_init),
3771         (gst_element_factory_cleanup), (gst_element_register),
3772         (__gst_element_factory_add_static_pad_template),
3773         (gst_element_factory_get_static_pad_templates),
3774         (gst_element_factory_can_src_caps),
3775         (gst_element_factory_can_sink_caps):
3776         * gst/registries/Makefile.am:
3777         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
3778         (gst_xml_registry_class_init), (gst_xml_registry_init),
3779         (gst_xml_registry_new), (gst_xml_registry_set_property),
3780         (gst_xml_registry_get_property), (get_time), (make_dir),
3781         (gst_xml_registry_get_perms_func),
3782         (plugin_times_older_than_recurse), (plugin_times_older_than),
3783         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
3784         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
3785         (add_to_char_array), (read_string), (read_uint), (read_enum),
3786         (load_pad_template), (load_feature), (load_plugin), (load_paths),
3787         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
3788         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
3789         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
3790         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
3791         (gst_xml_registry_rebuild):
3792         * gst/registries/gstlibxmlregistry.h:
3793         * tools/gst-compprep.c: (main):
3794         * tools/gst-inspect.c: (print_pad_templates_info):
3795         * tools/gst-xmlinspect.c: (print_element_info):
3796           Use libxml2 for registry parsing, use staticpadtemplates in
3797           elementfactories. Makes gst_init() +/- 10x faster.
3798
3799 2005-04-12  Wim Taymans  <wim@fluendo.com>
3800
3801         * gst/base/Makefile.am:
3802         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3803         (gst_basesink_pad_getcaps), (gst_basesink_init),
3804         (gst_basesink_event), (gst_basesink_change_state):
3805         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3806         (gst_basesrc_init), (gst_basesrc_query),
3807         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3808         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3809         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3810         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3811         (gst_basesrc_stop), (gst_basesrc_activate),
3812         (gst_basesrc_change_state):
3813         * gst/base/gsttypefindhelper.c: (helper_find_peek),
3814         (helper_find_suggest), (gst_type_find_helper):
3815         * gst/base/gsttypefindhelper.h:
3816         * gst/elements/Makefile.am:
3817         * gst/elements/gstelements.c:
3818         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3819         (gst_fakesink_get_times), (gst_fakesink_event),
3820         (gst_fakesink_preroll), (gst_fakesink_render):
3821         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3822         (gst_fakesrc_init), (gst_fakesrc_event_handler),
3823         (gst_fakesrc_get_property), (gst_fakesrc_create),
3824         (gst_fakesrc_start), (gst_fakesrc_stop):
3825         * gst/elements/gstfakesrc.h:
3826         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
3827         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3828         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3829         (gst_filesrc_create_read), (gst_filesrc_create),
3830         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
3831         (gst_filesrc_start):
3832         * gst/elements/gsttypefindelement.c:
3833         (gst_type_find_element_have_type), (gst_type_find_element_init),
3834         (start_typefinding), (stop_typefinding), (push_buffer_store),
3835         (gst_type_find_element_handle_event),
3836         (gst_type_find_element_chain),
3837         (gst_type_find_element_checkgetrange),
3838         (gst_type_find_element_getrange), (do_typefind),
3839         (gst_type_find_element_activate),
3840         (gst_type_find_element_change_state):
3841         * gst/elements/gsttypefindelement.h:
3842         * gst/gstpipeline.c: (pipeline_bus_handler):
3843         Added typefind helper.
3844         Small preroll fix in the base sink.
3845         Disable typefind code in basesrc.
3846         Crude port of typefindelement.
3847         Fakesrc cleanups.
3848
3849
3850 2005-04-11  Wim Taymans  <wim@fluendo.com>
3851
3852         * check/gst/gstbus.c: (gstbus_suite):
3853         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
3854         * check/gstcheck.h:
3855           Fix up the timeout so that the test does not fail.
3856
3857 2005-04-06  Wim Taymans  <wim@fluendo.com>
3858
3859         * gst/base/README:
3860         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3861         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
3862         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3863         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3864         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3865         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3866         (gst_basesrc_stop), (gst_basesrc_activate),
3867         (gst_basesrc_change_state), (basesrc_find_peek),
3868         (basesrc_find_suggest), (gst_basesrc_type_find):
3869         * gst/base/gstbasesrc.h:
3870         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
3871         (gst_filesrc_class_init), (gst_filesrc_init),
3872         (gst_filesrc_finalize), (gst_filesrc_set_location),
3873         (gst_filesrc_set_property), (gst_filesrc_get_property),
3874         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3875         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3876         (gst_filesrc_create_read), (gst_filesrc_create),
3877         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
3878         * gst/elements/gstfilesrc.h:
3879         * gst/gstelement.c: (gst_element_get_state_func),
3880         (gst_element_lost_state), (gst_element_pads_activate):
3881         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3882         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3883         (gst_pad_pull_range):
3884         * gst/gstpad.h:
3885         More work on the generic source base class, implement seeking,
3886         query.
3887         Make filesrc extend the base source class.
3888         Added gst_pad_set_checkgetrange_function to GstPad.
3889
3890 2005-04-06  Andy Wingo  <wingo@pobox.com>
3891
3892         * pkgconfig/gstreamer-base.pc.in:
3893         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
3894
3895         * pkgconfig/Makefile.am:
3896         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
3897
3898 2005-04-04  Wim Taymans  <wim@fluendo.com>
3899
3900         * gst/base/Makefile.am:
3901         * gst/base/README:
3902         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3903         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
3904         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
3905         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
3906         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3907         (gst_basesrc_base_init), (gst_basesrc_class_init),
3908         (gst_basesrc_init), (gst_basesrc_get_formats),
3909         (gst_basesrc_get_query_types), (gst_basesrc_query),
3910         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
3911         (gst_basesrc_set_property), (gst_basesrc_get_property),
3912         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
3913         (gst_basesrc_loop), (gst_basesrc_activate),
3914         (gst_basesrc_change_state):
3915         * gst/base/gstbasesrc.h:
3916         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
3917         (gst_fakesrc_class_init), (gst_fakesrc_init),
3918         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
3919         (gst_fakesrc_get_property), (gst_fakesrc_create):
3920         * gst/elements/gstfakesrc.h:
3921         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
3922         (gst_filesrc_open_file), (gst_filesrc_loop),
3923         (gst_filesrc_activate), (filesrc_find_peek),
3924         (gst_filesrc_type_find):
3925         Made base source class, make fakesrc extend it.
3926         Add comments to basesink class.
3927         Some filesrc cleanup.
3928
3929 2005-03-31  David Schleef  <ds@schleef.org>
3930
3931         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
3932         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
3933         expected to link against libgstreamer.
3934         * gst/base/Makefile.am: link against libgstreamer
3935         * gst/elements/Makefile.am: same
3936
3937 2005-03-31  Andy Wingo  <wingo@pobox.com>
3938
3939         * tests/instantiate/Makefile.am:
3940         * tests/instantiate/caps.c: Add test to test speed of caps copy
3941         and free.
3942
3943         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
3944         GMemChunk to be fair.
3945
3946         * gst/gsttrashstack.h: Remove warning about using the fallback
3947         trash stack implementation, it's still faster than malloc.
3948
3949 2005-03-30  Andy Wingo  <wingo@pobox.com>
3950
3951         * tests/complexity.c: Add a copyright.
3952
3953 2005-03-31  Wim Taymans  <wim@fluendo.com>
3954
3955         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
3956         (gst_base_transform_class_init), (gst_base_transform_init),
3957         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
3958         (gst_base_transform_get_property),
3959         (gst_base_transform_sink_activate),
3960         (gst_base_transform_src_activate),
3961         (gst_base_transform_change_state):
3962         * gst/base/gstbasetransform.h:
3963         * gst/elements/gstidentity.c: (gst_identity_class_init),
3964         (gst_identity_event), (gst_identity_check_perfect),
3965         (gst_identity_transform), (gst_identity_start),
3966         (gst_identity_stop):
3967         Added start/stop methods to transform base class so subclasses 
3968         don't need to deal with state changes even.
3969
3970 2005-03-31  Wim Taymans  <wim@fluendo.com>
3971
3972         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
3973         (gst_event_new_discontinuous), (gst_event_discont_get_value):
3974         * gst/gstevent.h:
3975         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3976         (gst_pad_pull_range):
3977         Added rate to the discont event to prepare for variable speed
3978         and reverse playback.
3979
3980 2005-03-29  David Schleef  <ds@schleef.org>
3981
3982         * configure.ac:
3983         * testsuite/trigger/Makefile.am:
3984         * testsuite/trigger/trigger.c: A little example program to show
3985         how trigger-based elements can work.
3986
3987 2005-03-29  Wim Taymans  <wim@fluendo.com>
3988
3989         * gst/base/Makefile.am:
3990         * gst/base/README:
3991         * gst/base/gstbasesink.c: (gst_basesink_get_type),
3992         (gst_basesink_base_init), (gst_basesink_class_init),
3993         (gst_basesink_pad_getcaps), (gst_basesink_init),
3994         (gst_basesink_activate), (gst_basesink_change_state):
3995         * gst/base/gstbasesink.h:
3996         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
3997         (gst_base_transform_base_init), (gst_base_transform_finalize),
3998         (gst_base_transform_class_init), (gst_base_transform_init),
3999         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
4000         (gst_base_transform_event), (gst_base_transform_getrange),
4001         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
4002         (gst_base_transform_set_property),
4003         (gst_base_transform_get_property),
4004         (gst_base_transform_sink_activate),
4005         (gst_base_transform_src_activate),
4006         (gst_base_transform_change_state):
4007         * gst/base/gstbasetransform.h:
4008         * gst/elements/gstidentity.c: (gst_identity_finalize),
4009         (gst_identity_class_init), (gst_identity_init),
4010         (gst_identity_event), (gst_identity_check_perfect),
4011         (gst_identity_transform), (gst_identity_set_property),
4012         (gst_identity_get_property), (gst_identity_change_state):
4013         * gst/elements/gstidentity.h:
4014         * gst/gstelement.c: (gst_element_get_state_func),
4015         (gst_element_lost_state), (gst_element_pads_activate):
4016         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4017         (gst_pad_check_pull_range), (gst_pad_pull_range):
4018         * gst/gstpad.h:
4019         Simplify pad activation.
4020         Added function to check if pull_range can be performed.
4021         Error out when pulling inactive or flushing pads.
4022         Removed const from refcounted types as it does not make sense.
4023         Simplify pad templates in basesink
4024         Added base class for simple 1-to-1 transforms.
4025         Make identity subclass the base transform.
4026
4027 2005-03-29  Andy Wingo  <wingo@pobox.com>
4028
4029         * docs/libs/gstreamer-libs-overrides.txt: 
4030         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
4031         really don't understand what's going on, but like whatever. I want
4032         green buildbot!
4033
4034         * docs/gst/Makefile.am:
4035         * docs/libs/Makefile.am: Dist the overrides files.
4036
4037         * check/Makefile.am (clean-local): Remove .libs directories.
4038
4039         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
4040         elements to EXTRA_DIST, so po/ files are happy.
4041
4042         * po/POTFILES.in: Er, remove it here.
4043
4044         * po/POTFILES: Remove gstspider.c.
4045
4046         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
4047
4048         * docs/libs/gstreamer-libs-docs.sgml: 
4049         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
4050         bytestream.
4051
4052         * tests/complexity.c (main): Set the length of the preroll queue
4053         on the sinks to prevent a lockup.
4054
4055         * libs/gst/dataprotocol/Makefile.am: 
4056         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
4057         the same as the one in check/gst-libs/gdp.c.
4058
4059         * po/, docs/gst/: Commit automatic changes to docs and po files.
4060
4061         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
4062         the versioned libgstbase.
4063
4064         * check/Makefile.am: Depend on an unversioned gst-register, seems
4065         to make autoconf happier.
4066
4067         * gst/base/Makefile.am: Make libgstbase a versioned lib.
4068
4069 2005-03-28  Wim Taymans  <wim@fluendo.com>
4070
4071         * configure.ac:
4072         * docs/design/part-gstelement.txt:
4073         * docs/design/part-negotiation.txt:
4074         * docs/design/part-preroll.txt:
4075         * docs/design/part-scheduling.txt:
4076         * docs/design/part-states.txt:
4077         * gst/Makefile.am:
4078         * gst/base/Makefile.am:
4079         * gst/base/README:
4080         * gst/base/gstbasesink.c: (gst_basesink_get_template),
4081         (gst_basesink_base_init), (gst_basesink_class_init),
4082         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4083         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4084         (gst_basesink_set_pad_functions),
4085         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
4086         (gst_basesink_set_property), (gst_basesink_get_property),
4087         (gst_base_sink_get_template), (gst_base_sink_get_caps),
4088         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
4089         (gst_basesink_preroll_queue_push),
4090         (gst_basesink_preroll_queue_empty),
4091         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
4092         (gst_basesink_event), (gst_basesink_get_times),
4093         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
4094         (gst_basesink_chain_unlocked), (gst_basesink_chain),
4095         (gst_basesink_loop), (gst_basesink_activate),
4096         (gst_basesink_change_state):
4097         * gst/base/gstbasesink.h:
4098         * gst/elements/Makefile.am:
4099         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
4100         (gst_fakesink_class_init), (gst_fakesink_init),
4101         (gst_fakesink_set_property), (gst_fakesink_get_property),
4102         (gst_fakesink_get_times), (gst_fakesink_event),
4103         (gst_fakesink_preroll), (gst_fakesink_render),
4104         (gst_fakesink_change_state):
4105         * gst/elements/gstfakesink.h:
4106         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4107         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
4108         * gst/gstelement.c: (gst_element_add_pad),
4109         (gst_element_get_state_func), (gst_element_abort_state),
4110         (gst_element_commit_state), (gst_element_lost_state),
4111         (gst_element_set_state), (gst_element_pads_activate):
4112         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
4113         * gst/gstpipeline.c: (gst_pipeline_send_event),
4114         (gst_pipeline_change_state):
4115         Added state change code.
4116         Added/updated docs.
4117         Added sink base class, make fakesink extend the base class.
4118         Small cleanups in GstPipeline.
4119
4120 2005-03-26  David Schleef  <ds@schleef.org>
4121
4122         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
4123         is broken and should be implemented in a different library.
4124         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
4125         * gst/gst.h: remove gstcpu.h
4126         * gst/gstcpu.c: remove
4127         * gst/gstcpu.h: remove
4128         * gst/Makefile.am.future: Remove this file.  It's ancient.
4129
4130 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4131
4132         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4133         (gst_bin_send_event):
4134           Add default event/set_manager handlers. The set_manager handler
4135           takes care that the manager is distributed over kids that were
4136           already in the bin before the manager was set. The event handler
4137           is a utility virtual function that sends the event over all sinks,
4138           so that gst_element_send_event (bin, event); has the expected
4139           behaviour.
4140         * gst/gstpad.c: (gst_pad_event_default):
4141           Re-install default event handling for discontinuities, so that
4142           seeking works without requiring hacks in applications or extra
4143           code in sinks.
4144         * gst/gstpipeline.c: (gst_pipeline_class_init),
4145         (gst_pipeline_send_event):
4146           Half hack, half utility: set a pipeline to PAUSED for seek events,
4147           since that is the only way we can guarantee a/v sync. Means that
4148           you can do gst_element_seek (pipeline, method, pos); on a pipeline
4149           and it "just works".
4150
4151 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4152
4153         * gst/gstpipeline.c: (gst_pipeline_use_clock):
4154           Lock/unlock mismatch.
4155
4156 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
4157
4158         * docs/faq/gst-uninstalled:
4159           add gst-plugins-base
4160         * docs/gst/Makefile.am:
4161           don't error out until docs are fixed
4162         * docs/gst/gstreamer.types:
4163           remove thread
4164
4165 2005-03-22  Wim Taymans  <wim@fluendo.com>
4166
4167         * check/Makefile.am:
4168         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
4169         * gst/gststructure.c: (gst_structure_set_valist),
4170         (gst_structure_copy_conditional):
4171         Activated more tests.
4172         Added message test.
4173         Added G_TYPE_POINTER to GstStructure.
4174         
4175
4176 2005-03-22  Wim Taymans  <wim@fluendo.com>
4177
4178         * docs/design/part-TODO.txt:
4179         * docs/design/part-events.txt:
4180         * docs/design/part-gstbin.txt:
4181         * docs/design/part-gstbus.txt:
4182         * docs/design/part-gstpipeline.txt:
4183         * docs/design/part-messages.txt:
4184         * gst/gstbus.c:
4185         * gst/gstmessage.c:
4186         Docs updates
4187
4188 2005-03-21  Wim Taymans  <wim@fluendo.com>
4189
4190         * gst/gstbus.c: (gst_bus_post):
4191         Fix copy-and-paste error.
4192
4193 2005-03-21  Wim Taymans  <wim@fluendo.com>
4194
4195         * check/Makefile.am:
4196         * gst/Makefile.am:
4197         * gst/elements/Makefile.am:
4198         * gst/elements/gstelements.c:
4199         * gst/elements/gstfakesink.c: (gst_fakesink_init),
4200         (gst_fakesink_event), (gst_fakesink_chain):
4201         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4202         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
4203         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
4204         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
4205         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
4206         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
4207         (gst_fakesrc_loop), (gst_fakesrc_activate),
4208         (gst_fakesrc_change_state):
4209         * gst/elements/gstfakesrc.h:
4210         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
4211         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
4212         (gst_filesrc_open_file), (gst_filesrc_loop),
4213         (gst_filesrc_activate), (gst_filesrc_change_state),
4214         (filesrc_find_peek), (filesrc_find_suggest),
4215         (gst_filesrc_type_find):
4216         * gst/elements/gstidentity.c: (gst_identity_finalize),
4217         (gst_identity_class_init), (gst_identity_init),
4218         (gst_identity_proxy_getcaps), (identity_queue_push),
4219         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
4220         (gst_identity_getrange), (gst_identity_chain),
4221         (gst_identity_sink_loop), (gst_identity_src_loop),
4222         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
4223         (gst_identity_set_property), (gst_identity_get_property),
4224         (gst_identity_change_state):
4225         * gst/elements/gstidentity.h:
4226         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
4227         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
4228         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
4229         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
4230         (gst_tee_sink_activate):
4231         * gst/elements/gsttee.h:
4232         * gst/gst.c: (gst_register_core_elements), (init_post):
4233         * gst/gst.h:
4234         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
4235         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
4236         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
4237         (gst_bin_change_state):
4238         * gst/gstbin.h:
4239         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
4240         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
4241         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
4242         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
4243         (gst_bus_set_sync_handler), (gst_bus_create_watch),
4244         (bus_watch_callback), (bus_watch_destroy),
4245         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
4246         (poll_timeout), (gst_bus_poll):
4247         * gst/gstbus.h:
4248         * gst/gstcaps.h:
4249         * gst/gstdata.h:
4250         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4251         (gst_element_post_message), (gst_element_message_full),
4252         (gst_element_get_state_func), (gst_element_get_state),
4253         (gst_element_abort_state), (gst_element_commit_state),
4254         (gst_element_lost_state), (gst_element_set_state),
4255         (gst_element_pads_activate), (gst_element_change_state),
4256         (gst_element_dispose), (gst_element_set_manager_func),
4257         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
4258         (gst_element_set_manager), (gst_element_get_manager),
4259         (gst_element_set_bus), (gst_element_get_bus),
4260         (gst_element_set_scheduler), (gst_element_get_scheduler):
4261         * gst/gstelement.h:
4262         * gst/gstevent.c: (gst_event_new_segment_seek),
4263         (gst_event_new_flush):
4264         * gst/gstevent.h:
4265         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
4266         (_gst_message_free), (gst_message_get_type), (gst_message_new),
4267         (gst_message_new_eos), (gst_message_new_error),
4268         (gst_message_new_warning), (gst_message_new_tag),
4269         (gst_message_new_state_changed), (gst_message_new_application),
4270         (gst_message_get_structure), (gst_message_parse_tag),
4271         (gst_message_parse_state_changed), (gst_message_parse_error),
4272         (gst_message_parse_warning):
4273         * gst/gstmessage.h:
4274         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
4275         (gst_real_pad_set_property), (gst_pad_set_active),
4276         (gst_pad_is_active), (gst_pad_set_blocked_async),
4277         (gst_pad_set_blocked), (gst_pad_is_blocked),
4278         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
4279         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
4280         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
4281         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
4282         (gst_pad_link_filtered), (gst_pad_relink_filtered),
4283         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
4284         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
4285         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
4286         (gst_pad_set_caps), (gst_pad_configure_sink),
4287         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
4288         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
4289         (gst_real_pad_dispose), (gst_real_pad_finalize),
4290         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
4291         (gst_pad_event_default_dispatch), (gst_pad_event_default),
4292         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
4293         * gst/gstpad.h:
4294         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
4295         (pipeline_bus_handler), (gst_pipeline_change_state),
4296         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
4297         * gst/gstpipeline.h:
4298         * gst/gstprobe.h:
4299         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
4300         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
4301         (gst_queue_link_src), (gst_queue_bufferalloc),
4302         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
4303         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
4304         (gst_queue_loop), (gst_queue_handle_src_event),
4305         (gst_queue_handle_src_query), (gst_queue_src_activate),
4306         (gst_queue_change_state):
4307         * gst/gstqueue.h:
4308         * gst/gstscheduler.c: (gst_scheduler_init),
4309         (gst_scheduler_dispose), (gst_scheduler_create_task),
4310         (gst_scheduler_factory_create):
4311         * gst/gstscheduler.h:
4312         * gst/gststructure.c: (gst_structure_get_type),
4313         (gst_structure_copy_conditional):
4314         * gst/gststructure.h:
4315         * gst/gsttaginterface.h:
4316         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
4317         (gst_task_init), (gst_task_dispose), (gst_task_create),
4318         (gst_task_get_state), (gst_task_start), (gst_task_stop),
4319         (gst_task_pause):
4320         * gst/gsttask.h:
4321         * gst/gstthread.c:
4322         * gst/gstthread.h:
4323         * gst/gsttypes.h:
4324         * gst/schedulers/Makefile.am:
4325         * gst/schedulers/cothreads_compat.h:
4326         * gst/schedulers/entryscheduler.c:
4327         * gst/schedulers/faircothreads.c:
4328         * gst/schedulers/faircothreads.h:
4329         * gst/schedulers/fairscheduler.c:
4330         * gst/schedulers/gstbasicscheduler.c:
4331         * gst/schedulers/gstoptimalscheduler.c:
4332         * gst/schedulers/gthread-cothreads.h:
4333         * gst/schedulers/threadscheduler.c:
4334         (gst_thread_scheduler_task_get_type),
4335         (gst_thread_scheduler_task_class_init),
4336         (gst_thread_scheduler_task_init),
4337         (gst_thread_scheduler_task_start),
4338         (gst_thread_scheduler_task_stop),
4339         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
4340         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
4341         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
4342         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
4343         (plugin_init):
4344         * libs/gst/Makefile.am:
4345         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
4346         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
4347         (gst_file_pad_parent_set):
4348         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
4349         (gst_dp_event_from_packet):
4350         * tests/complexity.c: (main):
4351         * tests/mass_elements.c: (main):
4352         * testsuite/states/locked.c: (message_received), (main):
4353         * testsuite/states/parent.c: (main):
4354         * tools/gst-inspect.c: (print_element_flag_info),
4355         (print_implementation_info), (print_pad_info):
4356         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
4357         (main):
4358         * tools/gst-md5sum.c: (event_loop), (main):
4359         * tools/gst-typefind.c: (main):
4360         * tools/gst-xmlinspect.c: (print_element_info):
4361         Next big merge.
4362         Added GstBus for mainloop integration.
4363         Added GstMessage for sending notifications on the bus.
4364         Added GstTask as an abstraction for pipeline entry points.
4365         Removed GstThread.
4366         Removed Schedulers.
4367         Simplified GstQueue for multithreaded core.
4368         Made _link threadsafe, removed old capsnego.
4369         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
4370         Added pad blocking functions.
4371         Reworked scheduling functions in GstPad to prepare for
4372         scheduling updates soon.
4373         Moved events out of data stream.
4374         Simplified GstEvent types.
4375         Added return values to push/pull.
4376         Removed clocking from GstElement.
4377         Added prototypes for state change function for next merge.
4378         Removed iterate from bins and state change management.
4379         Fixed some elements, disabled others for now.
4380         Fixed -inspect and -launch.
4381         Added check for GstBus.
4382
4383 2005-03-10  Wim Taymans  <wim@fluendo.com>
4384
4385         * docs/design/part-MT-refcounting.txt:
4386         * docs/design/part-clocks.txt:
4387         * docs/design/part-gstelement.txt:
4388         * docs/design/part-gstobject.txt:
4389         * docs/design/part-standards.txt:
4390         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4391         (gst_bin_remove_func), (gst_bin_remove):
4392         * gst/gstbin.h:
4393         * gst/gstbuffer.c:
4394         * gst/gstcaps.h:
4395         * testsuite/clock/clock1.c: (main):
4396         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
4397         (main):
4398         * testsuite/dlopen/loadgst.c: (do_test):
4399         * testsuite/refcounting/bin.c: (add_remove_test1),
4400         (add_remove_test2), (main):
4401         * testsuite/refcounting/element.c: (main):
4402         * testsuite/refcounting/element_pad.c: (main):
4403         * testsuite/refcounting/pad.c: (main):
4404         * tools/gst-launch.c: (sigint_handler_sighandler):
4405         * tools/gst-typefind.c: (main):
4406         Doc updates.
4407         Added doc about clock.
4408         removed gst_bin_iterate_recurse_up(), marked methods
4409         for removal.
4410         Fix more testsuites.
4411
4412 2005-03-09  Wim Taymans  <wim@fluendo.com>
4413
4414         * gst/gstpad.c: (gst_pad_get_direction),
4415         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
4416         (gst_pad_collect_valist):
4417         * testsuite/bins/interface.c: (main):
4418         * testsuite/caps/audioscale.c: (test_caps):
4419         * testsuite/caps/caps.c: (test1), (test2), (test3):
4420         * testsuite/caps/deserialize.c: (main):
4421         * testsuite/caps/enumcaps.c: (main):
4422         * testsuite/caps/filtercaps.c: (main):
4423         * testsuite/caps/intersect2.c: (main):
4424         * testsuite/caps/random.c: (main):
4425         * testsuite/caps/renegotiate.c: (my_fixate), (main):
4426         * testsuite/caps/sets.c: (check_caps):
4427         * testsuite/caps/simplify.c: (check_caps), (main):
4428         * testsuite/caps/subtract.c: (check_caps):
4429         Fix _pad_get_direction wrt ghostpads.
4430         Fix caps testsuite.
4431
4432 2005-03-09  Wim Taymans  <wim@fluendo.com>
4433
4434         * check/Makefile.am:
4435         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
4436         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
4437         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
4438         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
4439         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
4440         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
4441         (gst_bin_remove), (gst_bin_iterate_recurse_up),
4442         (bin_element_is_sink), (gst_bin_iterate_sinks),
4443         (gst_bin_iterate_all_by_interface):
4444         * gst/gstbin.h:
4445         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
4446         (gst_element_change_state), (gst_element_dispose),
4447         (gst_element_finalize), (gst_element_set_loop_function):
4448         * gst/gstelement.h:
4449         * gst/gstiterator.c: (find_custom_fold_func):
4450         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4451         (gst_pad_collectv), (gst_pad_collect_valist),
4452         (gst_pad_template_new):
4453         * gst/gstpipeline.c: (gst_pipeline_class_init),
4454         (gst_pipeline_dispose), (gst_pipeline_set_property),
4455         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
4456         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
4457         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
4458         * gst/gstutils.h:
4459         * gst/schedulers/entryscheduler.c:
4460         * gst/schedulers/gstbasicscheduler.c:
4461         (gst_basic_scheduler_cothreaded_chain),
4462         (gst_basic_scheduler_chain_add_element):
4463         * testsuite/bins/interface.c: (main):
4464         Added GstBin test.
4465         Added GstSystemClock test.
4466         Implemented clock distribution code in GstBin.
4467         Implemented iterate sinks method for future use.
4468         Rearranged gstelement.h
4469         Fix GstIterator comparison bug.
4470         Moved some code to GstPipeline, mostly clocking related.
4471
4472 2005-03-09  Wim Taymans  <wim@fluendo.com>
4473
4474         * configure.ac:
4475         * gst/gst_private.h:
4476         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4477         (gst_bin_remove_func), (gst_bin_remove),
4478         (gst_bin_get_by_name_recurse_up):
4479         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
4480         (gst_clock_id_compare_func), (gst_clock_id_wait),
4481         (gst_clock_id_wait_async), (gst_clock_init),
4482         (gst_clock_adjust_unlocked), (gst_clock_get_time):
4483         * gst/gstelement.h:
4484         * gst/gstinfo.c: (_gst_debug_init):
4485         * gst/gstobject.h:
4486         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4487         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
4488         * gst/gstpad.h:
4489         Bump version number, we're now 0.9.0
4490         Add future debugging category.
4491         Fix NULL _unref() in _get_by_name_recurse_up
4492         Rearrange gstpad.h.
4493         Update some docs.
4494
4495 2005-03-08  Wim Taymans  <wim@fluendo.com>
4496
4497         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
4498         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4499         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
4500         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
4501         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
4502         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
4503         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
4504         * gst/elements/gstidentity.c: (gst_identity_class_init):
4505         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
4506         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
4507         * gst/elements/gstshaper.c: (gst_shaper_class_init):
4508         * gst/elements/gststatistics.c: (gst_statistics_class_init):
4509         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
4510         (gst_tee_link):
4511         * gst/gstelement.c: (gst_element_class_init),
4512         (gst_element_base_class_init), (gst_element_init),
4513         (gst_element_get_random_pad), (gst_element_wait_state_change),
4514         (gst_element_change_state), (gst_element_dispose),
4515         (gst_element_finalize), (gst_element_set_loop_function):
4516         * gst/gstelement.h:
4517         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
4518         * gst/gstthread.c: (gst_thread_class_init),
4519         (gst_thread_release_children_locks), (gst_thread_change_state):
4520         * gst/schedulers/gstbasicscheduler.c:
4521         (gst_basic_scheduler_loopfunc_wrapper),
4522         (gst_basic_scheduler_chain_wrapper),
4523         (gst_basic_scheduler_src_wrapper),
4524         (gst_basic_scheduler_remove_element):
4525         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4526         Remove threadsafe properties. Fix elements because GObject
4527         complains when installing a property before declaring a
4528         set/get_property handler.
4529         Rearrange gstelement.h file, use STATE macros for state locks.
4530         Free mutexes in the finalize method instead of dispose.
4531
4532 2005-03-08  Wim Taymans  <wim@fluendo.com>
4533
4534         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
4535         * gst/gstthread.c: (gst_thread_release_children_locks):
4536         Added parentage check.
4537         Fix build og GstThread again.
4538
4539 2005-03-08  Wim Taymans  <wim@fluendo.com>
4540
4541         * docs/design/part-MT-refcounting.txt:
4542         * docs/design/part-conventions.txt:
4543         * docs/design/part-gstobject.txt:
4544         * docs/design/part-relations.txt:
4545         * docs/design/part-standards.txt:
4546         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4547         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
4548         (gst_bin_get_by_name), (gst_bin_get_by_interface),
4549         (gst_bin_iterate_all_by_interface):
4550         * gst/gstbuffer.h:
4551         * gst/gstclock.h:
4552         * gst/gstelement.c: (gst_element_class_init),
4553         (gst_element_change_state), (gst_element_set_loop_function):
4554         * gst/gstelement.h:
4555         * gst/gstiterator.c:
4556         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
4557         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
4558         (gst_object_dispatch_properties_changed), (gst_object_set_name),
4559         (gst_object_set_parent), (gst_object_unparent),
4560         (gst_object_check_uniqueness):
4561         * gst/gstobject.h:
4562         Docs updates, clean up some headers.
4563
4564 2005-03-07  Wim Taymans  <wim@fluendo.com>
4565
4566         * check/.cvsignore:
4567         * check/Makefile.am:
4568         * check/gst-libs/.cvsignore:
4569         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
4570         * check/gst/.cvsignore:
4571         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
4572         (START_TEST), (gstbus_suite), (main):
4573         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
4574         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
4575         (gst_data_suite), (main):
4576         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
4577         (add_fold_func), (gstiterator_suite), (main):
4578         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
4579         (thread_name_object), (thread_name_object_default),
4580         (gst_object_name_compare), (gst_object_suite), (main):
4581         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
4582         (gst_pad_suite), (main):
4583         * check/gstcheck.c: (gst_check_log_message_func),
4584         (gst_check_log_critical_func), (gst_check_init):
4585         * check/gstcheck.h:
4586         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
4587         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
4588         Added checks.
4589
4590 2005-03-07  Wim Taymans  <wim@fluendo.com>
4591
4592         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
4593         (gst_list_iterator_next), (gst_list_iterator_resync),
4594         (gst_list_iterator_free), (gst_iterator_new_list),
4595         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
4596         (gst_iterator_free), (gst_iterator_push), (filter_next),
4597         (filter_resync), (filter_uninit), (filter_free),
4598         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
4599         (gst_iterator_foreach), (find_custom_fold_func),
4600         (gst_iterator_find_custom):
4601         * gst/gstiterator.h:
4602         Added missing files.
4603
4604 2005-03-07  Wim Taymans  <wim@fluendo.com>
4605
4606         * Makefile.am:
4607         * configure.ac:
4608         * docs/design/part-MT-refcounting.txt:
4609         * docs/design/part-conventions.txt:
4610         * docs/design/part-gstobject.txt:
4611         * docs/design/part-relations.txt:
4612         * examples/mixer/mixer.c: (main):
4613         * examples/thread/thread.c: (eos), (main):
4614         * gst/Makefile.am:
4615         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
4616         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
4617         (gst_spider_plug_from_srcpad):
4618         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
4619         (gst_spider_identity_change_state),
4620         (gst_spider_identity_sink_loop_type_finding):
4621         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
4622         * gst/elements/gstidentity.c: (gst_identity_init):
4623         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
4624         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
4625         * gst/elements/gsttypefindelement.c: (free_entry):
4626         * gst/gst.c:
4627         * gst/gst.h:
4628         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
4629         (gst_bin_set_clock_func), (gst_bin_auto_clock),
4630         (gst_bin_set_index), (gst_bin_set_element_sched),
4631         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
4632         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
4633         (gst_bin_iterate_elements), (iterate_child_recurse),
4634         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
4635         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
4636         (compare_interface), (gst_bin_get_by_interface),
4637         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
4638         * gst/gstbin.h:
4639         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
4640         (gst_buffer_default_free), (gst_buffer_default_copy),
4641         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
4642         (gst_buffer_create_sub):
4643         * gst/gstbuffer.h:
4644         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
4645         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
4646         (gst_caps_unref), (gst_static_caps_get),
4647         (gst_caps_remove_and_get_structure), (gst_caps_append),
4648         (gst_caps_append_structure), (gst_caps_remove_structure),
4649         (gst_caps_copy_nth), (gst_caps_set_simple),
4650         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
4651         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
4652         (gst_caps_structure_intersect_field), (gst_caps_intersect),
4653         (gst_caps_structure_subtract_field), (gst_caps_subtract),
4654         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
4655         (gst_caps_structure_figure_out_union),
4656         (gst_caps_switch_structures), (gst_caps_do_simplify),
4657         (gst_caps_replace), (gst_caps_from_string),
4658         (gst_caps_copy_conditional):
4659         * gst/gstcaps.h:
4660         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
4661         (_gst_clock_id_free), (gst_clock_id_unref),
4662         (gst_clock_id_compare_func), (gst_clock_id_wait),
4663         (gst_clock_id_wait_async), (gst_clock_class_init),
4664         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
4665         (gst_clock_get_time), (gst_clock_set_time_adjust),
4666         (gst_clock_set_property), (gst_clock_get_property):
4667         * gst/gstclock.h:
4668         * gst/gstcompat.h:
4669         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
4670         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
4671         * gst/gstdata.h:
4672         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4673         (gst_element_requires_clock), (gst_element_provides_clock),
4674         (gst_element_set_clock), (gst_element_clock_wait),
4675         (gst_element_wait), (gst_element_set_time_delay),
4676         (gst_element_is_indexable), (gst_element_add_pad),
4677         (gst_element_add_ghost_pad), (gst_element_remove_pad),
4678         (pad_compare_name), (gst_element_get_static_pad),
4679         (gst_element_request_pad), (gst_element_get_request_pad),
4680         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
4681         (gst_element_class_get_pad_template_list),
4682         (gst_element_class_get_pad_template), (gst_element_error_func),
4683         (gst_element_get_random_pad), (gst_element_get_event_masks),
4684         (gst_element_send_event), (gst_element_seek),
4685         (gst_element_get_query_types), (gst_element_query),
4686         (gst_element_get_formats), (gst_element_convert),
4687         (gst_element_is_locked_state), (gst_element_set_locked_state),
4688         (gst_element_sync_state_with_parent), (gst_element_change_state),
4689         (gst_element_finalize), (gst_element_yield),
4690         (gst_element_interrupt), (gst_element_set_scheduler),
4691         (gst_element_get_scheduler), (gst_element_set_loop_function):
4692         * gst/gstelement.h:
4693         * gst/gstevent.h:
4694         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
4695         (gst_format_get_by_nick), (gst_format_get_details),
4696         (gst_format_iterate_definitions):
4697         * gst/gstformat.h:
4698         * gst/gstindex.c: (gst_index_gtype_resolver):
4699         * gst/gstinfo.c:
4700         * gst/gstinfo.h:
4701         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
4702         (gst_mem_chunk_free):
4703         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
4704         (gst_object_ref), (gst_object_unref), (gst_object_sink),
4705         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
4706         (gst_object_dispatch_properties_changed),
4707         (gst_object_set_name_default), (gst_object_set_name),
4708         (gst_object_get_name), (gst_object_set_name_prefix),
4709         (gst_object_get_name_prefix), (gst_object_set_parent),
4710         (gst_object_get_parent), (gst_object_unparent),
4711         (gst_object_check_uniqueness), (gst_object_save_thyself),
4712         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
4713         (gst_object_set_property), (gst_object_get_property),
4714         (gst_object_get_path_string):
4715         * gst/gstobject.h:
4716         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
4717         (gst_real_pad_init), (gst_real_pad_get_property),
4718         (gst_pad_custom_new), (gst_pad_get_direction),
4719         (gst_pad_set_active), (gst_pad_is_active),
4720         (gst_pad_set_event_function), (gst_pad_is_linked),
4721         (gst_pad_link_free), (gst_pad_link_intersect),
4722         (gst_pad_link_fixate), (gst_pad_set_caps),
4723         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
4724         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
4725         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
4726         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
4727         (gst_pad_get_caps), (gst_pad_peer_get_caps),
4728         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
4729         (gst_pad_realize), (gst_pad_get_allowed_caps),
4730         (gst_real_pad_dispose), (gst_real_pad_finalize),
4731         (gst_pad_collectv), (gst_pad_collect_valist),
4732         (gst_pad_template_dispose), (gst_pad_template_new),
4733         (gst_pad_get_internal_links):
4734         * gst/gstpad.h:
4735         * gst/gstpipeline.c: (gst_pipeline_dispose),
4736         (gst_pipeline_change_state):
4737         * gst/gstpipeline.h:
4738         * gst/gstplugin.c:
4739         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
4740         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
4741         * gst/gstpluginfeature.h:
4742         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4743         * gst/gstquery.c: (_gst_query_type_initialize),
4744         (gst_query_type_register), (gst_query_type_get_by_nick),
4745         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
4746         * gst/gstquery.h:
4747         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
4748         * gst/gstscheduler.c: (gst_scheduler_add_element),
4749         (gst_scheduler_factory_create):
4750         * gst/gststructure.c: (gst_structure_set_parent_refcount),
4751         (gst_structure_free), (gst_structure_set_name),
4752         (gst_structure_id_set_value), (gst_structure_set_value),
4753         (gst_structure_set_valist), (gst_structure_remove_field),
4754         (gst_structure_remove_fields),
4755         (gst_structure_remove_fields_valist),
4756         (gst_structure_remove_all_fields), (gst_structure_foreach),
4757         (gst_structure_map_in_place),
4758         (gst_caps_structure_fixate_field_nearest_int),
4759         (gst_caps_structure_fixate_field_nearest_double):
4760         * gst/gststructure.h:
4761         * gst/gstsystemclock.c: (gst_system_clock_class_init),
4762         (gst_system_clock_init), (gst_system_clock_dispose),
4763         (gst_system_clock_async_thread),
4764         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
4765         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
4766         * gst/gstsystemclock.h:
4767         * gst/gsttag.c: (gst_tag_list_add_value_internal),
4768         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
4769         * gst/gsttaginterface.c:
4770         * gst/gstthread.c: (gst_thread_dispose),
4771         (gst_thread_release_children_locks), (gst_thread_change_state),
4772         (gst_thread_main_loop):
4773         * gst/gsttrashstack.h:
4774         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
4775         * gst/gsttypes.h:
4776         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
4777         (gst_element_request_pad), (gst_element_get_pad_from_template),
4778         (gst_element_request_compatible_pad),
4779         (gst_element_get_compatible_pad_filtered),
4780         (gst_element_get_compatible_pad), (gst_element_state_get_name),
4781         (gst_element_link_pads_filtered), (gst_element_link_filtered),
4782         (gst_element_link_many), (gst_element_link),
4783         (gst_element_link_pads), (gst_element_unlink_pads),
4784         (gst_element_unlink_many), (gst_element_unlink),
4785         (gst_pad_can_link_filtered), (gst_pad_can_link),
4786         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
4787         (gst_object_default_error), (gst_bin_add_many),
4788         (gst_bin_remove_many), (gst_element_populate_std_props),
4789         (gst_element_class_install_std_props), (gst_buffer_merge),
4790         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
4791         (link_fold_func), (gst_pad_proxy_setcaps):
4792         * gst/gstutils.h:
4793         * gst/gstvalue.c: (gst_value_deserialize_string):
4794         * gst/parse/grammar.y:
4795         * gst/schedulers/gstbasicscheduler.c:
4796         (gst_basic_scheduler_cothreaded_chain),
4797         (gst_basic_scheduler_chain_recursive_add),
4798         (gst_basic_scheduler_pad_link):
4799         * gst/schedulers/gstoptimalscheduler.c:
4800         (get_group_schedule_function),
4801         (gst_opt_scheduler_state_transition),
4802         (gst_opt_scheduler_add_element), (element_get_reachables_func):
4803         * libs/gst/bytestream/bytestream.c:
4804         * libs/gst/dataprotocol/dataprotocol.c:
4805         (gst_dp_header_from_buffer):
4806         * po/nb.po:
4807         * po/ru.po:
4808         * tests/threadstate/threadstate2.c: (eos):
4809         * tools/gst-compprep.c: (main):
4810         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
4811         (print_pad_info), (print_children_info):
4812         * tools/gst-launch.c: (idle_func), (main):
4813         * tools/gst-md5sum.c: (idle_func), (main):
4814         * tools/gst-xmlinspect.c: (print_element_info):
4815         First THREADED backport attempt, focusing on adding locks and
4816         making sure the API is threadsafe. Needs more work. More docs
4817         follow this week.
4818
4819 2005-02-24  Andy Wingo  <wingo@pobox.com>
4820
4821         * tests/bench-complexity.scm:
4822         * tests/complexity.gnuplot: New files, good for running complexity
4823         benchmarks.
4824
4825         * tests/Makefile.am:
4826         * tests/complexity.c: New test, sets up N elements, at each level
4827         teeing into M streams per element. Eeeenteresting.
4828
4829         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
4830         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
4831         running bench-mass_elements.scm.
4832
4833         * tests/bench-mass_elements.scm: New script, runs mass_elements
4834         for various numbers of identities, outputting the results to a
4835         file. Requires guile 1.6. Just for testing.
4836
4837 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
4838
4839         * gst/schedulers/fairscheduler.c:
4840           compile with debug disabled
4841
4842 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
4843
4844         * configure.ac:
4845           hunting season on 0.9 is now OPEN
4846
4847 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
4848
4849         * docs/libs/tmpl/gstcontrol.sgml:
4850         * docs/libs/tmpl/gstdparam.sgml:
4851         * docs/libs/tmpl/gstdplinint.sgml:
4852         * docs/libs/tmpl/gstdpman.sgml:
4853         * docs/libs/tmpl/gstdpsmooth.sgml:
4854         * docs/libs/tmpl/gstunitconvert.sgml:
4855           more docs for the state of dparams
4856
4857 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4858
4859         * gst/gstelementfactory.c: (gst_element_factory_create):
4860         * gst/gstobject.c: (gst_object_init),
4861         (gst_object_set_name_default), (gst_object_set_name):
4862           name objects by default, not in gst_element_factory_create. Allows
4863           using elements created with g_object_new. (fixes #167283)
4864
4865 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4866
4867         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
4868           make the time that debugging functions print relative to when
4869           gst_init was called
4870
4871 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
4872
4873         * gst/gsttaginterface.c:
4874           Fix inline docs: tag setter vararg functions are NULL-terminated,
4875           GST_TAG_INVALID doesn't exist any more.
4876
4877 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4878
4879         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
4880         Allocate the 1 byte more memory that was forgotten!!!!!
4881         fixes memory corruption on 64bit platforms
4882
4883 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
4884
4885         * docs/pwg/building-pads.xml:
4886         * docs/pwg/intro-basics.xml:
4887           fixed a few typos, relabeled introductionary list of types
4888         * docs/random/ensonic/dparams.txt:
4889           more notes abut dparam changes
4890         * libs/gst/control/dparam.c: (gst_dparam_attach):
4891         * libs/gst/control/dparammanager.c:
4892         * libs/gst/control/dparammanager.h:
4893           - many comments and notes on dparam implementation
4894           - new dparams are were not initialized to the default value
4895             from param spec
4896
4897 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
4898
4899         submitted by: Peter Astakhov
4900
4901         * po/LINGUAS:
4902         * po/ru.po:
4903           adding Russian translation
4904
4905 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
4906
4907         * configure.ac:
4908         * docs/gst/Makefile.am:
4909         * docs/libs/Makefile.am:
4910           make sure popt is added to gtk-doc flags.  Fixes #147782.
4911
4912 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
4913
4914         * docs/faq/using.xml:
4915           Fix typo in FAQ (artssink => artsdsink)
4916
4917 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4918
4919         * tools/gst-launch.1.in:
4920           Fix typo (#166699).
4921
4922 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
4923
4924         * docs/faq/using.xml:
4925           Add -v argument to fakesrc/fakesink gst-launch line,
4926           so that the promised output will actually show up.
4927
4928 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4929
4930         * gst/gstthread.c: (gst_thread_change_state):
4931           Implement state-change error handling (#166073).
4932
4933 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4934
4935         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
4936           Release interrupt after handling (#166250).
4937
4938 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4939
4940         * configure.ac:
4941           back to HEAD
4942
4943 === release 0.8.9 ===
4944
4945 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4946
4947         * NEWS:
4948         * RELEASE:
4949         * configure.ac:
4950           releasing 0.8.9, "Like Eating Glass"
4951
4952 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4953
4954         submitted by: Clytie Siddall
4955
4956         * po/vi.po: Added Vietnamese translation
4957
4958 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
4959
4960         patch by: Tim Philipp-Müller
4961
4962         * configure.ac:
4963         * gst/gstpad.c:
4964           unref data when probe function returns FALSE.  Fixes #166362
4965
4966 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4967
4968         * gst/gst.c: (gst_init_get_popt_table):
4969           Fix typo (#166269).
4970
4971 2005-02-04  Andy Wingo  <wingo@pobox.com>
4972
4973         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
4974         the debugging on whether the caps are compatible.
4975
4976 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4977
4978         * docs/manual/basics-elements.xml:
4979           Fix two typos.
4980
4981 2005-02-02  Wim Taymans  <wim@fluendo.com>
4982
4983         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
4984         (schedule_chain), (get_invalid_call), (chain_invalid_call),
4985         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
4986         Remove some FIXMEs after analysing and commenting why they
4987         are not issues.
4988
4989 2005-02-02  Wim Taymans  <wim@fluendo.com>
4990
4991         * gst/schedulers/gstoptimalscheduler.c:
4992         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
4993         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
4994         (get_invalid_call), (chain_invalid_call),
4995         (get_group_schedule_function), (loop_group_schedule_function),
4996         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
4997         (gst_opt_scheduler_state_transition),
4998         (gst_opt_scheduler_add_element),
4999         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
5000         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
5001         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
5002         (gst_opt_scheduler_show):
5003         Added lock to protect scheduler data structures.
5004
5005 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5006
5007         * testsuite/threads/threadi.c: (cb_data):
5008           Fix buglet in test.
5009
5010 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5011
5012         * testsuite/threads/Makefile.am:
5013         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
5014           On Wim's request, split the test in three separately-compiled
5015           tests that each test a very specific bug. Two of them still fail,
5016           will create bugs for those. threadi.c indicates why they fail.
5017
5018 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5019
5020         * gst/schedulers/gstoptimalscheduler.c:
5021         (get_group_schedule_function):
5022           Try to work with the threading mess that queue_link is.
5023
5024 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5025
5026         * gst/gstbin.c: (gst_bin_remove_func):
5027           Explicitely make an element release locks in a group when being
5028           remove from a bin.
5029         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
5030           If there's no scheduler, always return immediately (similar to
5031           gst_element_interrupt).
5032
5033 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5034
5035         * gst/gstbin.c: (gst_bin_child_state_change_func):
5036           Remove a piece of code that could never be reached.
5037         * docs/gst/gstreamer-sections.txt:
5038         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
5039         (gst_pad_call_get_function):
5040         * gst/gstpad.h:
5041         * testsuite/pad/Makefile.am:
5042           Fix #150546, enable tests.
5043
5044 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5045
5046         * docs/pwg/advanced-types.xml:
5047           Fix description for buffer-frames=0.
5048         * docs/gst/tmpl/gstbin.sgml:
5049         * gst/gstbin.c: (gst_bin_child_state_change_func),
5050         (gst_bin_change_state), (gst_bin_change_state_norecurse):
5051         * gst/gstbin.h:
5052         * testsuite/threads/Makefile.am:
5053         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
5054         (cb_state), (cb_play), (main):
5055           Fix non-recursive state changes to *really* change the state
5056           of the object, and not just call parent_class->state_change.
5057           Fix a lot of lockups caused by this. Fixes #132775. Add test
5058           for the problem. Also enable test to show #142588 (fixed).
5059         * gst/gstthread.c: (gst_thread_change_state),
5060         (gst_thread_child_state_change):
5061           Don't exit the thread if we go to NULL and are inside thread
5062           context. Instead, return control to the main thread context
5063           and exit from there.
5064         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
5065           Don't unset virtual functions, since those may still be used.
5066           That's not necessarily correct, but suffices for now.
5067         * configure.ac:
5068         * testsuite/Makefile.am:
5069         * testsuite/pad/Makefile.am:
5070         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
5071         (gst_test_sink_base_init), (gst_test_sink_chain),
5072         (gst_test_sink_init), (main):
5073         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
5074         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
5075         (main):
5076         * testsuite/pad/link.c: (gst_test_element_class_init),
5077         (gst_test_element_base_init), (gst_test_src_get),
5078         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
5079         (gst_test_filter_loop), (gst_test_filter_init),
5080         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
5081         (cb_error), (main):
5082           Add tests to show #150546. Pass, but should fail (currently
5083           disabled from the testsuite).
5084         * gst/gstscheduler.c: (gst_scheduler_dispose):
5085           Dereference child schedulers on dispose (#94464).
5086         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
5087           Fix typo.
5088         * testsuite/threads/thread.c: (main):
5089           Add more debug.
5090
5091 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5092
5093         * gst/gstpad.c: (gst_pad_push):
5094           Oops, revert previous commit, broke testsuite...
5095
5096 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5097
5098         * gst/gstpad.c: (gst_pad_push):
5099           Add check that the pad on which the push is performed is not a
5100           get-based pad (#150546).
5101
5102 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5103
5104         * gst/elements/gsttypefindelement.c:
5105         (gst_type_find_element_handle_event):
5106           Fix buffer pushing if stream EOSes during typefinding.
5107
5108 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
5109
5110         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5111
5112         * gst/gstvalue.c: (gst_string_wrap):
5113           Allow NULL-strings as argument (#165365).
5114
5115 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
5116
5117         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5118
5119         * gst/schedulers/faircothreads.c:
5120         (gst_fair_scheduler_cothread_queue_show):
5121           Fix build without debug enabled.
5122
5123 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
5124
5125         * docs/gst/gstreamer-sections.txt:
5126         * docs/libs/gstreamer-libs-docs.sgml:
5127         * docs/libs/gstreamer-libs-sections.txt:
5128         * docs/libs/tmpl/gstcontrol.sgml:
5129         * docs/libs/tmpl/gstdparam.sgml:
5130         * docs/libs/tmpl/gstdplinint.sgml:
5131         * docs/libs/tmpl/gstdpman.sgml:
5132         * docs/libs/tmpl/gstdpsmooth.sgml:
5133         * docs/libs/tmpl/gstputbits.sgml:
5134         * docs/libs/tmpl/gstunitconvert.sgml:
5135         * libs/gst/control/dparam.c:
5136         * libs/gst/control/dparam.h:
5137         * libs/gst/control/dparammanager.c:
5138         (gst_dpman_add_required_dparam_callback),
5139         (gst_dpman_add_required_dparam_direct),
5140         (gst_dpman_add_required_dparam_array),
5141         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
5142         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
5143         (gst_dpman_get_manager)
5144           restructured DParam docs
5145
5146 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
5147
5148         * gst-element-check.m4:
5149           Only check for gst-inspect if we haven't already
5150           found it in previous element check runs
5151
5152 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
5153
5154         * docs/gst/Makefile.am:
5155         * docs/libs/Makefile.am:
5156           fixed install rules to treat style.css as optional
5157
5158 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
5159
5160         * docs/gst/Makefile.am:
5161         * docs/libs/Makefile.am:
5162           install style.css along with docs
5163         * docs/gst/tmpl/gstbin.sgml:
5164         * docs/gst/tmpl/gstclock.sgml:
5165         * docs/gst/tmpl/gstdata.sgml:
5166         * docs/gst/tmpl/gstelement.sgml:
5167         * gst/gstbin.h:
5168         * gst/gstelement.c: (gst_element_class_init):
5169         * gst/gstelement.h:
5170           fixing incomplete docs
5171
5172 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
5173
5174         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5175           Don't unref seek event twice when fflush() fails
5176           
5177 2005-01-22  David Schleef  <ds@schleef.org>
5178
5179         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
5180
5181 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
5182
5183         * docs/gst/Makefile.am:
5184         * docs/libs/Makefile.am:
5185           added params for deprecation guards
5186         * gst/gst.c:
5187         * gst/gst.h:
5188         * gst/gsterror.c: (_gst_resource_errors_init),
5189         (_gst_stream_errors_init):
5190         * gst/gsterror.h:
5191           documented some more enums
5192
5193 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
5194         * gst/autoplug/gstspideridentity.c:
5195         Cosmetic fix - spider_find_peek should be static
5196         * gst/parse/parse.l:
5197         Applying fix for #164261
5198
5199 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
5200
5201         * docs/gst/gstreamer-sections.txt:
5202         * docs/gst/tmpl/gstplugin.sgml:
5203         * docs/libs/gstreamer-libs-sections.txt:
5204         * docs/libs/tmpl/gstcontrol.sgml:
5205         * gst/gstbuffer.h:
5206         * gst/gsttag.h:
5207         * gst/gstvalue.c:
5208           added docs for the TAG defines
5209
5210 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5211
5212         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
5213           Only unref entry if there is an entry.
5214
5215 2005-01-17  Wim Taymans  <wim@fluendo.com>
5216
5217         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5218         (remove_from_group), (schedule_group), (normalize_group),
5219         (gst_opt_scheduler_iterate):
5220         Also ref/unref decoupled elements before iterating the
5221         group since they are not added to the list of elements.
5222
5223 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5224
5225         * docs/manual/highlevel-components.xml:
5226           Add subtitle/streamselection as new features to playbin.
5227
5228 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5229
5230         * docs/manual/manual.xml:
5231           Re-enable dataaccess docs (oops).
5232
5233 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5234
5235         * docs/pwg/advanced-types.xml:
5236         * docs/random/mimetypes:
5237           Add documentation on libsndfile types (#163309), by Steve Baker
5238           <steve@stevebaker.org>.
5239         * gst/gstelement.c: (gst_element_release_request_pad):
5240           If an element has no explicit function, just remove the pad.
5241
5242 2005-01-17  Luca Ognibene  <luogni@tin.it>
5243
5244         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5245
5246         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
5247           Fix memleak (#163801).
5248
5249 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5250
5251         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
5252           I think this is actually more correct...
5253
5254 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5255
5256         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5257           Another workaround for memory access while destroyed in callback.
5258           Please, someone with refcount knowledge, have a look at this.
5259
5260 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5261
5262         * docs/faq/faq.xml:
5263         * docs/faq/legal.xml:
5264           move the legal Q&A here
5265
5266 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5267
5268         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
5269         (gst_tee_request_new_pad):
5270           Fix negotiation.
5271
5272 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5273
5274         * docs/random/omega/caps2:
5275         * testsuite/caps/caps_strings:
5276           replace framerate aproximations by their real value
5277           (24000/1001, 30000/1001, 60000/1001)
5278           Partially fixes bug #164049
5279
5280 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5281
5282         * docs/gst/Makefile.am:
5283           don't fail on the stupid GstPoptOption
5284
5285 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5286
5287         * gst/gstpad.h:
5288         * gst/gstprobe.c:
5289           allow probes to work on ghost pads by realizing the pad
5290           probe debugging
5291
5292 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5293
5294         * docs/gst/gstreamer-sections.txt:
5295         * docs/gst/tmpl/gstpad.sgml:
5296         * gst/gstpad.c: (gst_pad_set_active_recursive):
5297         * gst/gstpad.h:
5298           Add gst_pad_set_active_recursive().
5299
5300 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5301
5302         * docs/random/release:
5303           updates
5304         * gst/gst_private.h:
5305         * gst/gstinfo.c:
5306         * gst/gstobject.c:
5307           move deep_notify logging to a new category
5308         * gst/gstprobe.c:
5309         * gst/gstprobe.h:
5310           add stuff so bindings can wrap probes
5311
5312 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5313
5314         * gst/gstplugin.c: (gst_plugin_load):
5315           Fix plugin loading if plugin/lib was already loaded. Fixes
5316           #163383
5317
5318 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
5319
5320         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5321
5322         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
5323           Protect plugin loading by a mutex so it's threadsafe. Fixes
5324           #163234.
5325
5326 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5327
5328         * gst/gstevent.c: (_gst_event_copy):
5329           Reference source object when copying events, since it'll be
5330           dereferenced on event dereferencing as well.
5331
5332 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5333
5334         * docs/gst/gstreamer-sections.txt:
5335         * docs/gst/tmpl/gstevent.sgml:
5336         * gst/gstevent.c: (gst_event_new_filler_stamped),
5337         (gst_event_filler_get_duration):
5338         * gst/gstevent.h:
5339           Add two new functions for filler events (which are used to
5340           synchronize streams if one of them is not having any data
5341           for a while) without interrupting the actual data-stream.
5342           Basically a no-op.
5343         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5344         (gst_queue_link_sink), (gst_queue_link_src),
5345         (gst_queue_change_state):
5346           Allow for renegotiation while filled. Required for stream
5347           switching while playing.
5348
5349 2005-01-08  Benjamin Otte  <otte@gnome.org>
5350
5351         * gst/gstelement.c: (gst_element_link_many):
5352           fix up g_return_if_fail's
5353         * po/LINGUAS:
5354         * po/de.po:
5355           add German translation, that was somehow not included
5356
5357 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5358
5359         * docs/random/mimetypes:
5360           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
5361           do not add them to riff-lib as they are not common
5362
5363 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5364
5365         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5366           Check for existence of probe after performing the probe before
5367           re-accessing it to prevent segfaults caused by removal of the
5368           probe in the callback.
5369
5370 2005-01-05  David Schleef  <ds@schleef.org>
5371
5372         * testsuite/registry/Makefile.am:
5373         * testsuite/registry/gst-print-formats.c:
5374         (print_pad_templates_info), (print_element_list),
5375         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
5376         (g_list_uniqify), (get_pad_templates_info),
5377         (get_element_mime_list), (print_mime_list), (main): A little
5378         program that looks through the registry to find elements of
5379         a given type.  Not particularly interesting as a test, except
5380         that there's no other test covering the same area.
5381
5382 2005-01-05  David Schleef  <ds@schleef.org>
5383
5384         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
5385         (fault_handler_sigaction), (fault_spin),
5386         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
5387         in signal.h-type signal handlers by not calling forbidden functions,
5388         including gst_element_set_state().
5389
5390 2005-01-05  David Schleef  <ds@schleef.org>
5391
5392         * gst/gstvalue.h: Mark _gst_reserved[] as private
5393
5394 2005-01-05  David Schleef  <ds@schleef.org>
5395
5396         * gst/gstvalue.c: Fix doc build problem.
5397
5398 2005-01-05  David Schleef  <ds@schleef.org>
5399
5400         * gst/gstvalue.c: Add some documentation
5401
5402 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
5403
5404         * docs/README:
5405           another shell oneliner for empty return value docs
5406         * gst/gstcaps.c:
5407         * gst/gstvalue.c:
5408         * libs/gst/control/dparam.c:
5409           more doc fixes (parameters and return values)
5410
5411 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
5412
5413         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5414
5415         * gst/gstregistry.h:
5416         * gst/registries/gstxmlregistry.c:
5417           Fix macro's for Mingw (fixes #162276).
5418
5419 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
5420
5421         * docs/README:
5422           quick shell oneliner to find undocumented members
5423         * docs/gst/tmpl/gstplugin.sgml:
5424         * docs/gst/tmpl/gstscheduler.sgml:
5425         * docs/gst/tmpl/gstthread.sgml:
5426           more enumtypes cleanup
5427         * gst/gsterror.h:
5428           activated documentation comments, now someone needs to document
5429           the enums :(
5430
5431 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5432
5433         * docs/manual/manual.xml:
5434           Add dataaccess part (doh!).
5435
5436 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5437
5438         * docs/manual/advanced-autoplugging.xml:
5439           Fix typo (intiate -> initiate).
5440
5441 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5442
5443         * docs/random/bbb/streamselection:
5444           Add some notes on how to handle multi-subtitle/-audio streams.
5445
5446 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
5447
5448         * docs/gst/gstreamer-docs.sgml:
5449         * docs/gst/gstreamer-sections.txt:
5450         * docs/gst/tmpl/gstenumtypes.sgml:
5451         * docs/gst/tmpl/gsterror.sgml:
5452         * docs/gst/tmpl/gstevent.sgml:
5453         * docs/gst/tmpl/gstpad.sgml:
5454         * docs/gst/tmpl/gstpadtemplate.sgml:
5455         * docs/gst/tmpl/gstthread.sgml:
5456           removed gstenumtypes section from docs and put all the enums into
5457           their sections
5458
5459 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5460
5461         * gst/gstplugin.c:
5462           document gst_library_load a bit more (riff special case + return
5463           value if already loaded)
5464         * testsuite/bytestream/filepadsink.c:
5465           plugin name is 'gstbytestream', not 'bytestream'
5466
5467 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5468
5469         * docs/random/bbb/subtitles:
5470           Add some first mind rumblings on proper subtitle support.
5471
5472 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
5473
5474         * po/ca.po:
5475         * po/sv.po:
5476           updated translations
5477
5478 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5479
5480         * docs/manual/advanced-dataaccess.xml:
5481           Add section on how to use fakesrc/fakesink/identity in your
5482           application, plus section on how to embed plugins. Also mention
5483           probes.
5484         * docs/manual/appendix-checklist.xml:
5485         * docs/manual/appendix-debugging.xml:
5486         * docs/manual/appendix-gnome.xml:
5487         * docs/manual/appendix-integration.xml:
5488           Debug -> checklist, GNOME -> integration, add sections on Linux,
5489           KDE integration and add other things useful for application
5490           development.
5491         * docs/manual/manual.xml:
5492           Remove some fixmes, update some file pointers.
5493         * docs/pwg/appendix-checklist.xml:
5494           Fix typo.
5495         * docs/pwg/building-boiler.xml:
5496           Remove ugly header and add commented fixme.
5497         * docs/pwg/pwg.xml:
5498           Add fixme.
5499         * examples/manual/Makefile.am:
5500           Add example for added docs.
5501
5502 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5503
5504         * configure.ac:
5505           back to HEAD
5506
5507 === release 0.8.8 ===
5508
5509 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5510
5511         * NEWS:
5512         * RELEASE:
5513         * configure.ac:
5514           Releasing 0.8.8, "I'll Take Care Of You"
5515
5516 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5517
5518         * configure.ac:
5519           second prerelease
5520
5521 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5522
5523         patch by: Wim Taymans
5524
5525         * gst/gstbin.c:
5526           Fix for #159852 - make iterate emission threadsafe
5527
5528 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5529
5530         * docs/faq/cvs.xml:
5531           notes about new fdo account request
5532
5533 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
5534
5535         * docs/gst/gstreamer-docs.sgml:
5536         * docs/gst/tmpl/gstenumtypes.sgml:
5537         * docs/gst/tmpl/gstplugin.sgml:
5538         * docs/libs/gstreamer-libs-docs.sgml:
5539           Added missing short docs. Added ids for navigation.
5540
5541 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5542
5543         * docs/manual/advanced-autoplugging.xml:
5544         * docs/manual/advanced-schedulers.xml:
5545         * docs/manual/advanced-threads.xml:
5546           Rewrites. Remove cothreads, go a bit into opt specifically,
5547           document threads and their gotchas, and do some technical stuff
5548           on autoplugging plus add some working examples. Fixes #157395.
5549         * examples/manual/Makefile.am:
5550           Add typefind/autoplugger example (one that actually works).
5551           Remove queue example since it's a duplicate of the thread one.
5552
5553 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5554
5555         * gst/gstvalue.c: (gst_value_deserialize_string):
5556           use deprecated g_value_set_string_take_ownership to keep compatible
5557           with glib 2.2
5558
5559 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5560
5561         * gst/gstvalue.c: (gst_value_deserialize_string):
5562           revert last patch, only dom a g_utf8_validate now before accepting
5563           the string - caps parsing strips " from strings so we can't rely on
5564           them
5565         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5566           disable a test that tested the above and comment it
5567
5568 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
5569
5570         Patch reviewed by David Schleef  <ds@schleef.org>
5571
5572         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
5573         bug #153882)
5574         * win32/gstenumtypes.h: same
5575
5576 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5577
5578         * gst/gstpad.c: (gst_pad_query):
5579           Do query on realized pad, similar to how convert/send_event handle
5580           this. Also makes sense, since this pad belongs to the function to
5581           which this query will be sent. Fixes #158163.
5582
5583 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
5584
5585         * docs/manual/appendix-programs.xml: fix pipeline to actually work
5586
5587 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5588
5589         * docs/faq/general.xml: fix pipeline to actually work
5590
5591 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5592
5593         * gst/gstvalue.c: (gst_value_deserialize_string):
5594           check that a simple string that gets deserialized does not contain
5595           invalid characters
5596         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5597           remove a test that tested a wring behaviour
5598
5599 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
5600
5601         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5602
5603         * docs/manual/intro-motivation.xml:
5604           Fix typos.
5605
5606 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
5607
5608         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5609
5610         * docs/gst/tmpl/gstprobe.sgml:
5611           Fix documentation of probe callback - it is supposed to return
5612           FALSE, not TRUE, to remove data from the stream (#159087).
5613
5614 2004-12-16  Daniel Gazard  <dany42@free.fr>
5615
5616         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5617
5618         * gst/gstelementfactory.c: (gst_element_factory_create):
5619           Fix compile failure if compiling without libxml2 support (#149936).
5620
5621 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5622
5623         * docs/manual/advanced-autoplugging.xml:
5624         * docs/manual/highlevel-components.xml:
5625           Move spider from autoplugging to components. Autoplugging is for
5626           internals, not for solutions. ;-).
5627
5628 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5629
5630         * docs/random/ds/0.9-suggested-changes:
5631           Make note on device/location/uri property names.
5632
5633 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5634
5635         * docs/manual/advanced-autoplugging.xml:
5636         * docs/manual/advanced-clocks.xml:
5637         * docs/manual/advanced-interfaces.xml:
5638         * docs/manual/advanced-metadata.xml:
5639         * docs/manual/advanced-position.xml:
5640         * docs/manual/advanced-schedulers.xml:
5641         * docs/manual/advanced-threads.xml:
5642         * docs/manual/appendix-gnome.xml:
5643         * docs/manual/appendix-programs.xml:
5644         * docs/manual/appendix-quotes.xml:
5645         * docs/manual/autoplugging.xml:
5646         * docs/manual/basics-bins.xml:
5647         * docs/manual/basics-data.xml:
5648         * docs/manual/basics-elements.xml:
5649         * docs/manual/basics-helloworld.xml:
5650         * docs/manual/basics-init.xml:
5651         * docs/manual/basics-pads.xml:
5652         * docs/manual/basics-plugins.xml:
5653         * docs/manual/bins-api.xml:
5654         * docs/manual/bins.xml:
5655         * docs/manual/buffers-api.xml:
5656         * docs/manual/buffers.xml:
5657         * docs/manual/clocks.xml:
5658         * docs/manual/components.xml:
5659         * docs/manual/cothreads.xml:
5660         * docs/manual/debugging.xml:
5661         * docs/manual/dparams-app.xml:
5662         * docs/manual/dynamic.xml:
5663         * docs/manual/elements-api.xml:
5664         * docs/manual/elements.xml:
5665         * docs/manual/factories.xml:
5666         * docs/manual/gnome.xml:
5667         * docs/manual/goals.xml:
5668         * docs/manual/helloworld.xml:
5669         * docs/manual/helloworld2.xml:
5670         * docs/manual/highlevel-components.xml:
5671         * docs/manual/highlevel-xml.xml:
5672         * docs/manual/init-api.xml:
5673         * docs/manual/intro-basics.xml:
5674         * docs/manual/intro-motivation.xml:
5675         * docs/manual/intro-preface.xml:
5676         * docs/manual/intro.xml:
5677         * docs/manual/links-api.xml:
5678         * docs/manual/links.xml:
5679         * docs/manual/manual.xml:
5680         * docs/manual/motivation.xml:
5681         * docs/manual/pads-api.xml:
5682         * docs/manual/pads.xml:
5683         * docs/manual/plugins-api.xml:
5684         * docs/manual/plugins.xml:
5685         * docs/manual/programs.xml:
5686         * docs/manual/queues.xml:
5687         * docs/manual/quotes.xml:
5688         * docs/manual/schedulers.xml:
5689         * docs/manual/states-api.xml:
5690         * docs/manual/states.xml:
5691         * docs/manual/threads.xml:
5692         * docs/manual/typedetection.xml:
5693         * docs/manual/win32.xml:
5694         * docs/manual/xml.xml:
5695           Try 2. This time, include a short preface as a "general
5696           introduction", also add code blocks around all code samples
5697           so they get compiled. We still need a way to tell readers
5698           the filename of the code sample. In some cases, don't show
5699           all code in the documentation, but do include it in the generated
5700           code. This allows for focussing on specific bits in the docs,
5701           while still having a full test application available.
5702         * examples/manual/Makefile.am:
5703           Fix up examples for new ADM. Add several of the new examples that
5704           were either added or were missing from the build system.
5705         * examples/manual/extract.pl:
5706           Allow nameless blocks.
5707
5708 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5709
5710         * docs/manual/elements-api.xml:
5711         * docs/manual/helloworld.xml:
5712         * examples/manual/extract.pl:
5713           fix last example.  Add example of adding code blocks that are not
5714           shown in docbook output.
5715
5716 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5717
5718         * docs/manual/dynamic.xml:
5719         * docs/manual/elements-api.xml:
5720         * docs/manual/gnome.xml:
5721         * docs/manual/helloworld2.xml:
5722         * docs/manual/init-api.xml:
5723         * docs/manual/queues.xml:
5724         * docs/manual/threads.xml:
5725         * docs/manual/xml.xml:
5726         * examples/manual/extract.pl:
5727           Make it possible to extract example code from separate blocks.
5728           Should make Ronald happy.
5729
5730 2004-12-15  Wim Taymans  <wim@fluendo.com>
5731
5732         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5733         (remove_from_group), (group_elements_set_visited),
5734         (normalize_group), (gst_opt_scheduler_iterate):
5735         Fix bug where a flag was not updated on a decoupled entry point 
5736         because we were just checking the group element list and decoupled
5737         elements are not in that list..
5738
5739 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5740
5741         * docs/manual/advanced-autoplugging.xml:
5742         * docs/manual/advanced-clocks.xml:
5743         * docs/manual/advanced-dparams.xml:
5744         * docs/manual/advanced-interfaces.xml:
5745         * docs/manual/advanced-metadata.xml:
5746         * docs/manual/advanced-position.xml:
5747         * docs/manual/advanced-schedulers.xml:
5748         * docs/manual/advanced-threads.xml:
5749         * docs/manual/appendix-debugging.xml:
5750         * docs/manual/appendix-gnome.xml:
5751         * docs/manual/appendix-programs.xml:
5752         * docs/manual/appendix-quotes.xml:
5753         * docs/manual/appendix-win32.xml:
5754         * docs/manual/autoplugging.xml:
5755         * docs/manual/basics-bins.xml:
5756         * docs/manual/basics-data.xml:
5757         * docs/manual/basics-elements.xml:
5758         * docs/manual/basics-helloworld.xml:
5759         * docs/manual/basics-init.xml:
5760         * docs/manual/basics-pads.xml:
5761         * docs/manual/basics-plugins.xml:
5762         * docs/manual/bins-api.xml:
5763         * docs/manual/bins.xml:
5764         * docs/manual/buffers-api.xml:
5765         * docs/manual/buffers.xml:
5766         * docs/manual/clocks.xml:
5767         * docs/manual/components.xml:
5768         * docs/manual/cothreads.xml:
5769         * docs/manual/debugging.xml:
5770         * docs/manual/dparams-app.xml:
5771         * docs/manual/dynamic.xml:
5772         * docs/manual/elements-api.xml:
5773         * docs/manual/elements.xml:
5774         * docs/manual/factories.xml:
5775         * docs/manual/gnome.xml:
5776         * docs/manual/goals.xml:
5777         * docs/manual/helloworld.xml:
5778         * docs/manual/helloworld2.xml:
5779         * docs/manual/highlevel-components.xml:
5780         * docs/manual/highlevel-xml.xml:
5781         * docs/manual/init-api.xml:
5782         * docs/manual/intro-motivation.xml:
5783         * docs/manual/intro-preface.xml:
5784         * docs/manual/intro.xml:
5785         * docs/manual/links-api.xml:
5786         * docs/manual/links.xml:
5787         * docs/manual/manual.xml:
5788         * docs/manual/motivation.xml:
5789         * docs/manual/pads-api.xml:
5790         * docs/manual/pads.xml:
5791         * docs/manual/plugins-api.xml:
5792         * docs/manual/plugins.xml:
5793         * docs/manual/programs.xml:
5794         * docs/manual/queues.xml:
5795         * docs/manual/quotes.xml:
5796         * docs/manual/schedulers.xml:
5797         * docs/manual/states-api.xml:
5798         * docs/manual/states.xml:
5799         * docs/manual/threads.xml:
5800         * docs/manual/typedetection.xml:
5801         * docs/manual/win32.xml:
5802         * docs/manual/xml.xml:
5803           First try at rewriting the ADM. Needs lotsamore work, but some
5804           parts might already be somewhat useful.
5805         * docs/pwg/advanced-interfaces.xml:
5806           Remove properties interface, it never actually existed (except for
5807           on my HD...).
5808
5809 2004-12-13  David Schleef  <ds@schleef.org>
5810
5811         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
5812         be NULL (bug #160220).
5813
5814 2004-12-13  David Schleef  <ds@schleef.org>
5815
5816         * configure.ac: remove all mmx stuff, because it's not used.
5817         * docs/random/ds/0.9-suggested-changes: additional notes
5818         * include/Makefile.am: we don't use these anymore
5819         * include/mmx.h: remove
5820         * include/sse.h: remove
5821
5822 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5823
5824         * docs/random/mimetypes:
5825           Add FOURCC code for h264 codec (VSSH)
5826           Add alternate FOURCC codes for h263 related codecs
5827
5828 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
5829
5830         * docs/manual/programs.xml:
5831           Added more gst-launch examples.
5832
5833 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5834
5835         * gst/gstqueue.c: (gst_queue_handle_src_query):
5836           Check for availability again.
5837
5838 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5839
5840         * gst/gstcaps.c: (gst_caps_compare_structures):
5841           Simple caps go first. This has the nice side-effect of fixing an
5842           obscure warning.
5843
5844 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5845
5846         * gst/gstversion.h.in:
5847           Protect header.
5848
5849 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5850
5851         * gst/schedulers/gstoptimalscheduler.c:
5852         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
5853         (gst_opt_scheduler_get_wrapper):
5854           When we're recursing into a chain run, only run the directly
5855           related group, not all queued ones. This will fix a possible
5856           deadlock in chains with more than two groups.
5857
5858 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5859
5860         * autogen.sh:
5861           remove patch if autopoint fails
5862
5863 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5864
5865         * docs/gst/gstreamer-sections.txt:
5866           Document Thomas' addition, fix build, make Luis the sheriff happy.
5867
5868 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5869
5870         * gst/gstplugin.c:
5871         * gst/gstplugin.h:
5872           add accessor for version field
5873
5874 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5875
5876         submitted by: Luca Ferretti <elle.uca@infinito.it>
5877
5878         * po/LINGUAS:
5879         * po/it.po:
5880           New tranlation added: Italian
5881
5882 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5883
5884         * gst/gstpad.c: (gst_pad_is_negotiated),
5885         (gst_pad_get_negotiated_caps):
5886           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
5887           it doesn't actually check the contents), so be sure to hand it
5888           a RealPad else we'll crash.
5889
5890 2004-12-03  Wim Taymans  <wim@fluendo.com>
5891
5892         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5893         (gst_queue_link), (gst_queue_handle_src_query):
5894         Reverted to 1.110 until this makes the testsuite and various
5895         apps work.
5896
5897 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
5898
5899         * docs/upload.mak: fix included CVS conflict strings
5900
5901 2004-12-01  William Jon McCann  <mccann@jhu.edu>
5902
5903         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5904
5905         * gst/gstelement.c: (gst_element_error_full):
5906           Use g_error_new_literal because error text may have
5907           percentage signs in it. Fixes #160019.
5908
5909 2004-12-01  Benjamin Otte  <otte@gnome.org>
5910
5911         * gst/elements/gstbufferstore.c:
5912         (gst_buffer_store_add_buffer_func):
5913           don't try to make subbuffers bigger than they can be. (fixes
5914           #159970)
5915
5916 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5917
5918         * docs/gst/gstreamer-sections.txt:
5919         * docs/gst/tmpl/gstvalue.sgml:
5920           Add new function to docs to fix build.
5921
5922 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5923
5924         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
5925         * gst/gstpad.c: (_gst_pad_default_fixate_value),
5926         (_gst_pad_default_fixate_foreach):
5927         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
5928         * gst/gstvalue.h:
5929           Deprecate _type_is_fixed, use _value_is_fixed instead, since
5930           in some cases (arrays), the fixedness depends on the content.
5931         * gst/gstqueue.c: (gst_queue_handle_src_query):
5932           Check for availability before doing something.
5933
5934 2004-11-29  Wim Taymans  <wim@fluendo.com>
5935
5936         * testsuite/threads/Makefile.am:
5937         * testsuite/threads/signals.c: (gst_test_get_type),
5938         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
5939         (gst_test_set_property), (gst_test_get_property),
5940         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
5941         (gst_test_do_prop), (run_thread), (main):
5942         Added a bunch of testcases that show threadsafety bugs in glib.
5943
5944 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
5945
5946         * docs/manual/programs.xml:
5947           Added a first batch of gst-launch examples, as provided by Ronald
5948           and others from the devel-mlist
5949
5950 2004-11-28  Benjamin Otte  <otte@gnome.org>
5951
5952         * gst/gstelement.c: (gst_element_negotiate_pads):
5953           simplify
5954         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
5955         (gst_value_serialize_string), (gst_value_deserialize_string):
5956           add unwrapping of previously wrapped strings. Fix bug in wrapping
5957           while at it.
5958         * testsuite/caps/value_serialize.c: (test1),
5959         (test_string_serialization), (test_string_deserialization), (main):
5960           add tests for string (de)serialization
5961
5962 2004-11-26  Wim Taymans  <wim@fluendo.com>
5963
5964         * testsuite/threads/159566.c: (object_deep_notify), (main):
5965         * testsuite/threads/Makefile.am:
5966         Added testsuite to show bug #159566
5967
5968 2004-11-25  Wim Taymans  <wim@fluendo.com>
5969
5970         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
5971         (gst_thread_child_state_change), (gst_thread_main_loop):
5972         Ref the thread object in the GThread mainloop. Break out of the
5973         thread mainloop if it holds the last ref. This properly exits
5974         the threads when disposing the thread from its own context. It
5975         also avoids possible deadlocks in the dispose function.
5976
5977 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
5978
5979         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
5980         it is necessary to wait.
5981
5982 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5983
5984         * docs/pwg/building-boiler.xml:
5985           Make description somewhat clearer.
5986
5987 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5988
5989         * docs/upload.mak:
5990           Apparently docs changed location on FDO's server.
5991
5992 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5993
5994         * docs/pwg/appendix-checklist.xml:
5995           Add some random notes on things to check when writing an element.
5996           This list can be extended as people see fit.
5997
5998 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
5999
6000         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
6001         (gst_queue_link_src): Allow for renegotiating the caps of the sink
6002         pad. The queue will now wait until it is empty and forward the new
6003         caps to the source.
6004         * gst/gstbin.c (gst_bin_set_element_sched)
6005         (gst_bin_unset_element_sched): Make sure that all elements and
6006         links are registered and unregistered with the scheduler exactly
6007         once. This elaborates on a fix by Benjamin Otte, but
6008         guarantees that decoupled elements are also registered.
6009
6010 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
6011
6012         * docs/manual/quotes.xml:
6013           add a quote
6014         * configure.ac:
6015         * gst/gst.c:
6016         * gst/gstinfo.c:
6017           add LIBDIR and move init message higher up so it's at the start
6018
6019 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
6020
6021         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
6022         * gstreamer.spec.in: add fair
6023
6024 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6025
6026         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6027         * gst/elements/gstidentity.c: (gst_identity_class_init):
6028           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
6029           <teuf@gnome.org> (#157263).
6030         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
6031         (gst_type_find_handle_src_query):
6032           Subtract size of internally stored data from position queries.
6033
6034 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
6035
6036         * gst/schedulers/fairscheduler.c:
6037         * gst/schedulers/faircothreads.c:
6038         * gst/schedulers/faircothreads.h:
6039         New cothread based scheduler: Fair scheduler.
6040         * gst/schedulers/gthread-cothreads.h: 
6041         Add the standard #if around the whole file.
6042         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
6043         compilation of the functions defined in this file. This is
6044         necessary to be able to use this file as a normal header.
6045         * gst/schedulers/Makefile.am: Add compiling support for fair
6046         scheduler.
6047         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
6048         scheduler cothreads layer from documentation generation.
6049
6050 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6051
6052         * gst/autoplug/gstspideridentity.c:
6053         (gst_spider_identity_sink_loop_type_finding):
6054           Don't crash if that function is not implemented.
6055
6056 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6057
6058         * docs/pwg/advanced-types.xml:
6059           Another typo.
6060
6061 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6062
6063         * docs/pwg/intro-preface.xml:
6064           Hm, ok, so the brackets weren't really useful...
6065         * docs/pwg/other-ntoone.xml:
6066           Fix embarassing typo.
6067
6068 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6069
6070         * docs/pwg/intro-preface.xml:
6071           Rewrite preface.
6072
6073 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6074
6075         * docs/pwg/advanced-scheduling.xml:
6076         * docs/pwg/advanced-tagging.xml:
6077         * docs/pwg/advanced-types.xml:
6078         * docs/pwg/building-boiler.xml:
6079         * docs/pwg/building-chainfn.xml:
6080         * docs/pwg/building-signals.xml:
6081         * docs/pwg/building-state.xml:
6082         * docs/pwg/building-testapp.xml:
6083         * docs/pwg/intro-basics.xml:
6084         * docs/pwg/other-manager.xml:
6085         * docs/pwg/other-source.xml:
6086           Typo fixes.
6087         * docs/pwg/other-manager.xml:
6088           Add some first content. No example code yet.
6089         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
6090           Remove double newlines.
6091
6092 2004-11-04  Wim Taymans  <wim@fluendo.com>
6093
6094         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6095         (remove_from_group), (normalize_group), (group_migrate_connected),
6096         (gst_opt_scheduler_iterate):
6097         * testsuite/schedulers/.cvsignore:
6098         * testsuite/schedulers/Makefile.am:
6099         * testsuite/schedulers/queue_link.c: (main):
6100         Added testcase for scheduler segfault.
6101         Fix scheduler segfault when removing a decoupled
6102         entry point as the last element from a group.
6103
6104 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6105
6106         * gst/gstmarshal.list: add missing marshaller, fixes build
6107
6108 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6109
6110         * docs/random/signal: added notes about using BOXED for GstBuffer
6111         signal marshallers, not POINTER
6112
6113 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6114
6115         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6116         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
6117         POINTER=>BOXED changes to marshal GstBuffers
6118
6119 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6120
6121         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
6122         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
6123
6124 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
6125
6126         * docs/gst/gstreamer-sections.txt:
6127         * docs/gst/tmpl/gstcaps.sgml:
6128         * docs/gst/tmpl/gsterror.sgml:
6129         * docs/gst/tmpl/gstinfo.sgml:
6130         * docs/gst/tmpl/gstmacros.sgml:
6131         * docs/gst/tmpl/gstutils.sgml:
6132         * docs/random/ensonic/interfaces.txt:
6133         * gst/gstinfo.h:
6134           added some more docs, removed two obsolete defines
6135
6136 2004-11-02  Kjartan Maraas <as at gnome.org>
6137
6138         reviewed by: Wim Taymans, Ronald Bultje.
6139
6140         * gst/cothreads.c: (cothread_create):
6141         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
6142         (gst_bin_child_state_change_func):
6143         * gst/gstbuffer.c: (gst_buffer_span):
6144         * gst/gstelement.c: (gst_element_get_index),
6145         (gst_element_get_event_masks), (gst_element_get_query_types),
6146         (gst_element_get_formats):
6147         * gst/gsterror.c: (_gst_core_errors_init),
6148         (_gst_library_errors_init), (_gst_resource_errors_init),
6149         (_gst_stream_errors_init):
6150         * gst/gstobject.c: (gst_object_default_deep_notify):
6151         * gst/gstpad.c: (gst_pad_get_event_masks),
6152         (gst_pad_get_internal_links_default):
6153         * gst/gstplugin.c: (gst_plugin_register_func),
6154         (gst_plugin_get_module):
6155         * gst/gststructure.c: (gst_structure_get_string),
6156         (gst_structure_get_abbrs), (gst_structure_from_abbr),
6157         (gst_structure_to_abbr):
6158         * gst/gstutils.c: (gst_print_element_args):
6159         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6160         (setup_group_scheduler), (gst_opt_scheduler_iterate):
6161         Aplied part of patch #157127: Cleanup of issues reported by 
6162         sparse.
6163         Also do not try to use cothreads when there is no cothread
6164         context yet.
6165
6166 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
6167
6168         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6169         (gst_opt_scheduler_iterate):
6170         Applied patch #154061. Running a pipeline in which an element 
6171         calls GST_ELEMENT_ERROR in the chain function, the opt 
6172         scheduler doesn't unref the chain so it never gets freed.
6173
6174 2004-11-02  Wim Taymans  <wim@fluendo.com>
6175
6176         * gst/gststructure.c: (gst_structure_get_abbrs),
6177         (gst_structure_from_abbr), (gst_structure_to_abbr):
6178         Remove that ugly if-then thing in the code that converts
6179         between strings and types.
6180
6181 2004-11-02  Wim Taymans  <wim@fluendo.com>
6182
6183         * gst/gstscheduler.c: (gst_scheduler_add_element),
6184         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
6185         Aplied clock distribution patch, this should fix bug
6186         #148787.
6187
6188 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
6189
6190         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
6191
6192         * po/LINGUAS:
6193         * po/nb.po:
6194           Added Norwegian Bokmaal translation
6195
6196 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6197
6198         * tools/gst-inspect.c: (print_signal_info):
6199           print signal arguments as pointers if they are
6200
6201 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
6202
6203         * docs/pwg/building-boiler.xml:
6204           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
6205
6206 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6207
6208         * gst/parse/parse.l:
6209         * testsuite/parse/parse1.c: (main):
6210         Since parse can do 'element name=a:b' make 'a:b.' work as
6211         well. 
6212         Added testcase to verify fix.
6213
6214 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6215
6216         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
6217         Use the realpad when printing the direction.
6218         Add extra \n when printing extensions of typefind factories.
6219
6220 2004-10-13  David Schleef  <ds@schleef.org>
6221
6222         * examples/manual/Makefile.am: $< isn't portable in Makefile
6223         rules.
6224
6225 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
6226
6227         * docs/gst/tmpl/gstobject.sgml:
6228         * docs/gst/tmpl/gstplugin.sgml:
6229         * docs/gst/tmpl/gstpluginfeature.sgml:
6230         * docs/gst/tmpl/gstregistry.sgml:
6231         * docs/gst/tmpl/gstversion.sgml:
6232         * gst/gstbin.c:
6233           more api documentation
6234         * gst/gstplugin.c: (gst_plugin_register_func),
6235         (gst_plugin_check_file), (gst_plugin_load_file):
6236           better error signaling and logging
6237
6238 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6239
6240         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
6241           Subtract current queue contents from position queries.
6242
6243 2004-10-11  Johan Dahlin  <johan@gnome.org>
6244
6245         * gst/gsturi.c (gst_uri_get_location): unescape string
6246         (gst_uri_construct): escape string.
6247
6248 2004-10-11  Benjamin Otte  <otte@gnome.org>
6249
6250         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
6251         (gst_pad_try_set_caps_nonfixed):
6252           allow renegotiation of unconnected pads (as inside spider). Simply
6253           return OK if unconnected - mimic try_set_caps there.
6254
6255 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6256
6257         * gst/gstbin.c: (gst_bin_sync_children_state):
6258           Add missing break.
6259
6260 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6261
6262         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
6263         Set element to EOS before sending EOS event
6264
6265 2004-10-08  Wim Taymans  <wim at fluendo dot com>
6266
6267         * gst/elements/gsttypefindelement.c:
6268         (gst_type_find_element_handle_event):
6269         Handle EOS events when doing the transition from
6270         typefind to data passing. This should fix the
6271         infinite loops in short files.
6272
6273 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6274
6275         * gst/gstthread.c: (gst_thread_change_state),
6276         (gst_thread_child_state_change):
6277         Make sure no iteration happens while performing
6278         the state change as it could mess up the internal
6279         consistency of the thread state.
6280
6281 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6282
6283         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
6284         (gst_thread_change_state), (gst_thread_child_state_change):
6285         Do not try to grab the iterate lock in the state change method
6286         when we are in the same thread as the iterate or else we
6287         could deadlock. Some other cleanups.
6288
6289 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6290
6291         * configure.ac:
6292           bump nano to cvs
6293
6294 === release 0.8.7 ===
6295
6296 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6297
6298         * configure.ac:
6299         * NEWS:
6300         * RELEASE:
6301         * configure.ac:
6302           releasing 0.8.7, "A Cruise"
6303
6304 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6305
6306         * docs/random/mimetypes:
6307         Add an entry for Sony ATRAC3 audio format with mime-type
6308         used by rmdemux et riff-read
6309
6310 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6311
6312         * gst/elements/gsttypefindelement.c: (stop_typefinding):
6313         Push the buffer store instead of clearing it in case that
6314         the stream is not seekable.
6315
6316 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6317
6318         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
6319         (gst_thread_main_loop):
6320         Lock the iteration and the state change so that automatic
6321         negotiation and fixation does not happen at the same time
6322         as the in stream negotiation.
6323
6324 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6325
6326         * configure.ac:
6327           bump nano to cvs
6328
6329 === release 0.8.6 ===
6330
6331 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6332
6333         * configure.ac:
6334         * NEWS:
6335         * RELEASE:
6336         * configure.ac:
6337           releasing 0.8.6, "Narc"
6338
6339 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6340
6341         * configure.ac:
6342           prerel bump
6343
6344 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6345
6346         patch by: Steve Lhomme
6347
6348         * gst/elements/gstfakesrc.c:
6349         * gst/elements/gstidentity.c:
6350         * gst/gstthread.c:
6351           Fix for #153881
6352
6353 2004-10-01  Wim Taymans  <wim at fluendo dot com>
6354
6355         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
6356         Fix threadsafety of the crc checking function.
6357
6358 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6359
6360         patch by: Ronald Bultje
6361
6362         * gst/elements/gsttypefindelement.c: (stop_typefinding),
6363         (gst_type_find_element_handle_event),
6364         (gst_type_find_element_chain):
6365         * gst/elements/gsttypefindelement.h:
6366          #153657.
6367          Filter out discont event from seekable sources when typefind
6368          asks them to seek.  Fixes typefind with demuxers for
6369          avi, asf and matroska.
6370
6371 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6372
6373         * docs/gst/gstreamer-sections.txt:
6374         * gst/gstcaps.c:
6375         * gst/gstcaps.h:
6376         * gst/gstpad.c:
6377           Revert preferred caps: (#147789)
6378
6379 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
6380
6381         * win32/dirent.c:
6382           fix a memory leak
6383
6384 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6385
6386         * configure.ac:
6387           bump for prerelease
6388
6389 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6390
6391         * docs/Makefile.am:
6392         * docs/manual/elements-api.xml:
6393           restructure so that common stuff is shown first
6394         * docs/manual/init-api.xml:
6395           convert to examples
6396         * docs/manual/manual.xml:
6397         * docs/manuals.mak:
6398         * docs/url.entities:
6399           link to API on the website, possibly override later in build
6400         * examples/manual/.cvsignore:
6401           ignore more
6402         * examples/manual/Makefile.am:
6403           add more examples
6404         * examples/manual/extract.pl:
6405           error out on failure
6406
6407 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6408
6409         * docs/gst/tmpl/gstthread.sgml:
6410         * docs/manual/init-api.xml:
6411         * examples/manual/Makefile.am:
6412           convert two code bits to examples
6413
6414 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6415
6416         * gst/gstelement.c: (gst_element_change_state):
6417           Well, actually, I was about to remove this insane assert when
6418           I noticed Wim already did that. A warning is nice so we can
6419           fix actual ugs (using --g-fatal-warnings and backtraces), so
6420           I added that instead.
6421
6422 2004-09-06  Wim Taymans  <wim@fluendo.com>
6423
6424         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
6425         (gst_element_threadsafe_properties_post_run),
6426         (gst_element_set_state), (gst_element_change_state):
6427         Added extra refcounting around various places. 
6428
6429 2004-09-06  Wim Taymans  <wim@fluendo.com>
6430
6431         * gst/gstpad.c: (gst_pad_link_call_link_functions):
6432         Fix debug info.
6433
6434 2004-09-06  Wim Taymans  <wim@fluendo.com>
6435
6436         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6437         (remove_from_group):
6438         Some more debug info.
6439
6440 2004-09-03  Wim Taymans  <wim@fluendo.com>
6441
6442         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
6443         (gst_fakesrc_init), (gst_fakesrc_set_clock),
6444         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
6445         (gst_fakesrc_get), (gst_fakesrc_change_state):
6446         * gst/elements/gstfakesrc.h:
6447         * gst/elements/gstidentity.c: (gst_identity_class_init),
6448         (gst_identity_init), (gst_identity_chain),
6449         (gst_identity_set_property), (gst_identity_get_property),
6450         (gst_identity_change_state):
6451         * gst/elements/gstidentity.h:
6452         Added datarate properties to limit the datarate.
6453
6454 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6455
6456         * gst/autoplug/gstspider.c: (plugin_init):
6457           don't set a rank. We don't want to autoplug by inserting spiders.
6458
6459 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6460
6461         * gst/autoplug/gstspider.c: (gst_spider_class_init),
6462         (gst_spider_identity_plug):
6463           add a template for spider's sink
6464         * gst/gst.c: (gst_register_core_elements):
6465           queue's rank should be NULL, we don't want spider to add it.
6466
6467 2004-08-18  David Schleef  <ds@schleef.org>
6468
6469         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
6470         * docs/libs/Makefile.am: same
6471         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
6472         * docs/random/ds/0.9-planning: random additions
6473         * docs/random/ds/0.9-suggested-changes: same
6474         * gst/gstxml.h: remove vestigal GstXMLNs definition
6475
6476         Preferred caps: (#147789)
6477         * docs/gst/gstreamer-sections.txt: Add symbols
6478         * docs/gst/tmpl/gstcaps.sgml: Add symbols
6479         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
6480         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
6481         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
6482         (gst_caps_get_preferred), (gst_caps_set_preferred),
6483         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
6484         (gst_caps_use_preferred): Handle caps preferences
6485         * gst/gstcaps.h: Add caps preferences
6486         * gst/gstpad.c: (gst_pad_link_get_preferred),
6487         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
6488         (gst_pad_renegotiate), (gst_pad_guess_preferred),
6489         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
6490         negotiation.
6491
6492 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6493
6494         * gst/autoplug/gstspideridentity.c:
6495         (gst_spider_identity_request_new_pad):
6496         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
6497         (gst_aggregator_init):
6498         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
6499         (gst_fakesink_init):
6500         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
6501         (gst_fakesrc_init):
6502         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
6503         (gst_fdsink_init):
6504         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
6505         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
6506         (gst_filesink_init):
6507         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
6508         (gst_filesrc_init):
6509         * gst/elements/gstidentity.c: (gst_identity_base_init),
6510         (gst_identity_init):
6511         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
6512         (gst_multifilesrc_init):
6513         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
6514         (gst_pipefilter_init):
6515         * gst/elements/gststatistics.c: (gst_statistics_base_init),
6516         (gst_statistics_init):
6517         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
6518         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
6519           s/gst_pad_new/&_from_template/
6520           register pad templates in the base_init function
6521           add static pad template definitions
6522
6523 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6524
6525         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
6526         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
6527         * testsuite/refcounting/pad.c: (main):
6528         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
6529           s/gst_pad_new/&_from_template/
6530           prepare deprecation of gst_pad_new
6531
6532 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
6533
6534         patch by: Luca Ognibene <skaboy81@virgilio.it>
6535
6536         * gst/gstcaps.c:
6537         * gst/gstelement.c:
6538         * gst/gstpad.c:
6539         * gst/gstxml.c:
6540           fix memleaks.  Fixes #150001
6541
6542 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6543
6544         * docs/random/ds/0.9-suggested-changes:
6545           add notes - mostly about pad templates
6546
6547 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
6548
6549         * win32/GStreamer.vcproj:
6550           temporary locale files are .gmo not .mo
6551
6552 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6553
6554         * configure.ac: bump nano to cvs
6555
6556 === release 0.8.5 ===
6557
6558 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6559
6560         * configure.ac:
6561           releasing 0.8.5, "Stuttgart"
6562         * NEWS:
6563         * RELEASE:
6564         * configure.ac:
6565         * docs/random/release:
6566           updates for release
6567
6568 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6569
6570         patch by: Wim Taymans (wim@fluendo.com)
6571
6572         * gst/gstbuffer.c:
6573         * gst/gstindex.h:
6574         * libs/gst/dataprotocol/dataprotocol.c:
6575           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
6576
6577 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6578
6579         * Makefile.am:
6580         * win32/MANIFEST:
6581           add win32 dir to the build.  Fixes #149981.
6582
6583 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6584
6585         * configure.ac:
6586           bump libtool versioning
6587         * gst/gststructure.c:
6588           mark function as static
6589         * po/af.po:
6590         * po/az.po:
6591         * po/ca.po:
6592         * po/cs.po:
6593         * po/en_GB.po:
6594         * po/fr.po:
6595         * po/nl.po:
6596         * po/sq.po:
6597         * po/sr.po:
6598         * po/sv.po:
6599         * po/tr.po:
6600         * po/uk.po:
6601           translations update
6602         * win32/README.txt:
6603           trademark protection
6604
6605 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6606
6607         * configure.ac:
6608           fix GST_ORIGIN
6609           set GST_PACKAGE to source, and distinguish between release and other
6610         * tools/gst-inspect.c:
6611           print out plugin an element factory is part of so we see this info
6612
6613 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6614
6615         * docs/gst/gstreamer-sections.txt:
6616         * docs/gst/tmpl/gstbuffer.sgml:
6617         * docs/gst/tmpl/gstschedulerfactory.sgml:
6618           reorder docs a little, make GstBuffer's more sensible.
6619         * gst/gstbuffer.h:
6620           API: added GST_BUFFER_FLAG_DELTA_UNIT
6621         * gst/gstscheduler.c:
6622           comment API addition
6623
6624 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6625
6626         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6627           work with non-regular files that can be mmapped (like /dev/zero)
6628         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
6629           get rid of typefinds that require a seek when we can't seek instead
6630           of trying them over and over again
6631         * tools/gst-launch.c: (idle_func), (error_cb), (main):
6632           return non-zero failure value when the pipeline was interrupted or
6633           an error occurred
6634
6635 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6636
6637         * win32/config.h:
6638         * win32/GStreamer.vcproj:
6639           compile and install the locales
6640
6641 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6642
6643         * gst/gstvalue.c:
6644           fix a possible memory leak under Windows
6645
6646 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6647
6648         * win32/GStreamer.vcproj:
6649           fix a memory leak that occured under Windows
6650         * win32/gstreamer.def:
6651           add gst_scheduler_register
6652
6653 2004-08-11  Benjamin Otte  <otte@gnome.org>
6654
6655         * docs/gst/gstreamer-sections.txt:
6656         * gst/gstscheduler.c: (gst_scheduler_register):
6657         * gst/gstscheduler.h:
6658           API:
6659           add gst_scheduler_register shortcut similar to gst_element_register
6660         * gst/schedulers/entryscheduler.c: (plugin_init):
6661         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
6662         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
6663           use it
6664
6665 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
6666
6667         * gst/gstvalue.h:
6668           fix a memory leak that occured under Windows
6669
6670 2004-08-10  Colin Walters  <walters@redhat.com>
6671
6672         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
6673         Don't use O_EXCL to open temporary registry.  It will prevent
6674         registry creation if a temporary one already exists, which
6675         is unnecessary.
6676
6677 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6678
6679         * docs/gst/gstreamer-sections.txt:
6680         * docs/gst/tmpl/gstvalue.sgml:
6681           remove some valuable stuff from the documentation due to the use of GST_EXPORT
6682
6683 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6684
6685         * win32/gstbytestream.vcproj:
6686         * win32/gstelements.vcproj:
6687         * win32/gstgetbits.vcproj:
6688         * win32/gst-inspect.vcproj:
6689         * win32/gst-launch.vcproj:
6690         * win32/gstoptimalscheduler.vcproj:
6691         * win32/GStreamer.vcproj:
6692         * win32/gst-register.vcproj:
6693         * win32/gstspider.vcproj:
6694           update the include and lib dirs to fit standard libraries as
6695           described in the Win32 manual
6696
6697 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6698
6699         * win32/config.h:
6700         * win32/gstversion.h:
6701           enable NLS again, push the version number for the coming 0.8.5 release
6702
6703 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6704
6705         * gst/gstvalue.h:
6706           export gst_type_XXX for windows DLLs
6707
6708 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6709
6710         * docs/faq/gst-uninstalled:
6711           fix PKG_CONFIG_PATH and PYTHONPATH
6712         * gst/schedulers/Makefile.am:
6713           cleanup
6714         * libs/gst/bytestream/bytestream.c:
6715           remove newline
6716         * po/LINGUAS:
6717         * po/sq.po:
6718           adding Albanian translation (Laurent Dhima)
6719         * po/cs.po:
6720           updated
6721
6722 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6723
6724         * po/ca.po:
6725         * po/sv.po:
6726           updated translations
6727
6728 2004-08-04  Benjamin Otte  <otte@gnome.org>
6729
6730         * tests/mass_elements.c: (main):
6731           allow specifying src and sink element explicitly, so I can test
6732           videotestsrc instead of fakesrc
6733
6734 2004-08-04  Benjamin Otte  <otte@gnome.org>
6735
6736         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
6737         (gst_structure_id_empty_new), (gst_structure_empty_new),
6738         (gst_structure_copy):
6739           add gst_structure_id_empty_new_with_size to allow preallocating
6740           value array sizes. Use this in gst_structure_copy to get rid of
6741           reallocs.
6742           don't do quark=>string=>quark when copying structures
6743
6744 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
6745
6746         * docs/manual/win32.xml:
6747         * win32/README.txt:
6748           update documentation with the clean version of dependencies
6749
6750 2004-08-03  Benjamin Otte  <otte@gnome.org>
6751
6752         * gst/schedulers/entryscheduler.c:
6753         (gst_entry_scheduler_remove_element):
6754           fix for GST_DISABLE_DEBUG
6755         * tools/gst-launch.c: (print_tag):
6756           fixes for G_DISABLE_ASSERT
6757
6758 2004-08-03  Benjamin Otte  <otte@gnome.org>
6759
6760         * gst/gst.c: (gst_register_core_elements):
6761           fix for G_DISABLE_ASSERT
6762         * gst/gstinfo.c: (__gst_in_valgrind):
6763           add for GST_DISABLE_DEBUG
6764
6765 2004-08-03  Benjamin Otte  <otte@gnome.org>
6766
6767         * gst/parse/parse.l:
6768           fix for G_DISABLE_ASSERT
6769
6770 2004-08-03  Wim Taymans  <wim@fluendo.com>
6771
6772         * gst/gstbin.c: (gst_bin_get_type),
6773         (gst_bin_child_state_change_func):
6774         * gst/gstthread.c: (gst_thread_change_state):
6775         Backported some debug logging from a reverted patch
6776         Don't try to destroy the thread twice. Added some more
6777         debugging in GstThread. Unlock and signal even if we
6778         are in the thread context.
6779
6780 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6781
6782         * po/uk.po:
6783           updated translation
6784
6785 2004-07-30  David Schleef  <ds@schleef.org>
6786
6787         * gst/gstatomic_impl.h: Enable atomic code for x86_64
6788
6789 2004-07-29  David Schleef  <ds@schleef.org>
6790
6791         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
6792         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
6793
6794 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
6795
6796         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
6797         (gst_bin_add_func), (gst_bin_remove_func),
6798         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
6799         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
6800         (gst_bin_change_state_norecurse), (gst_bin_dispose),
6801         (gst_bin_sync_children_state):
6802         * gst/gstbin.h:
6803         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
6804         (gst_thread_change_state):
6805         * testsuite/states/Makefile.am:
6806           revert state change patches as agreed so we can rework them
6807           gradually
6808
6809 2004-07-29  Benjamin Otte  <otte@gnome.org>
6810
6811         * libs/gst/control/Makefile.am:
6812           link to libgstreamer (fixes Debian bug 262019, see
6813           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
6814
6815 2004-07-29  Wim Taymans  <wim@fluendo.com>
6816
6817         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6818         (check_from_fraction_convert), (transform_test), (main):
6819         Make the test less pedantic about float roundoff errors.
6820
6821 2004-07-29  Benjamin Otte  <otte@gnome.org>
6822
6823         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
6824         (gst_filesrc_srcpad_event):
6825           make seek events to before start/after end of file not fail, but
6826           seek to start/end instead
6827         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
6828           add more output
6829
6830 2004-07-29  Benjamin Otte  <otte@gnome.org>
6831
6832         * gst/gstpad.c: (gst_pad_set_explicit_caps):
6833           check that caps are fixed
6834         * gst/gstpad.c: (gst_pad_template_new):
6835           don't try to simplify caps, costs too much time on gst_init
6836         * gst/gstplugin.c: (gst_plugin_add_feature):
6837           G_ERROR if features are added twice
6838         * gst/gsttypefind.c: (gst_type_find_register):
6839         * gst/gstelementfactory.c: (gst_element_register):
6840           don't add features twice
6841         * docs/random/ds/0.9-suggested-changes:
6842           add note about possible gst_init optimization
6843
6844 2004-07-28  David Schleef  <ds@schleef.org>
6845
6846         * testsuite/elements/Makefile.am:
6847         * testsuite/elements/struct_i386.h:
6848         * testsuite/elements/struct_size.c: (main):  A little test
6849         to keep distcheck from working if someone changes a structure
6850         size accidentally.
6851
6852 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6853
6854         * docs/libs/Makefile.am:
6855         * docs/libs/gstreamer-libs-docs.sgml:
6856         * docs/libs/gstreamer-libs-sections.txt:
6857         * docs/libs/tmpl/gstbytestream.sgml:
6858         * docs/libs/tmpl/gstcontrol.sgml:
6859         * docs/libs/tmpl/gstdataprotocol.sgml:
6860         * docs/libs/tmpl/gstgetbits.sgml:
6861         * libs/gst/bytestream/Makefile.am:
6862         * libs/gst/bytestream/bytestream.c:
6863         * libs/gst/bytestream/bytestream.h:
6864         * libs/gst/control/Makefile.am:
6865         * libs/gst/dataprotocol/Makefile.am:
6866         * libs/gst/getbits/Makefile.am:
6867         * libs/gst/getbits/getbits.h:
6868           various doc and style fixes, adding bytestream to libs docs.
6869
6870 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6871
6872         * docs/gst/gstreamer-docs.sgml:
6873         * docs/libs/Makefile.am:
6874         * docs/libs/gstreamer-libs-docs.sgml:
6875         * docs/libs/gstreamer-libs-sections.txt:
6876         * libs/gst/control/dparam.c:
6877           more doc fixes.  gst-libs docs now build the same way as gst.
6878
6879 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6880
6881         * configure.ac:
6882         * testsuite/Makefile.am:
6883         * testsuite/bins/Makefile.am:
6884         * testsuite/caps/Makefile.am:
6885         * testsuite/cleanup/Makefile.am:
6886         * testsuite/clock/Makefile.am:
6887         * testsuite/debug/Makefile.am:
6888         * testsuite/dlopen/Makefile.am:
6889         * testsuite/dynparams/Makefile.am:
6890         * testsuite/elements/.cvsignore:
6891         * testsuite/elements/Makefile.am:
6892         * testsuite/enumcaps/Makefile.am:
6893         * testsuite/enumcaps/enumcaps.c:
6894         * testsuite/ghostpads/Makefile.am:
6895         * testsuite/indexers/Makefile.am:
6896         * testsuite/negotiation/Makefile.am:
6897         * testsuite/parse/Makefile.am:
6898         * testsuite/plugin/Makefile.am:
6899         * testsuite/refcounting/Makefile.am:
6900         * testsuite/schedulers/.cvsignore:
6901         * testsuite/states/Makefile.am:
6902         * testsuite/tags/Makefile.am:
6903         * testsuite/threads/Makefile.am:
6904           fold enumcaps into caps dir
6905           clean up Makefile.am's for testsuite
6906
6907 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6908
6909         * docs/gst/Makefile.am:
6910         * docs/libs/Makefile.am:
6911           clean up docs build.  Fixes needless rebuilding of template files.
6912
6913 2004-07-28  Wim Taymans  <wim@fluendo.com>
6914
6915         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
6916         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
6917         Make sure that a bin state change tries to keep the children
6918         in sync. 
6919         Added debug logging to the thread.
6920
6921 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
6922
6923         * win32/GStreamer.vcproj:
6924         * win32/gstreamer.def:
6925           more exports for the plugins
6926
6927 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
6928
6929         * win32/gstgetbits.vcproj:
6930         * win32/gstgetbits.def:
6931         * win32/msvc71.sln:
6932           add support for the getbits plugin
6933
6934 2004-07-27  Wim Taymans  <wim@fluendo.com>
6935
6936         * gst/gstvalue.c: (gst_value_transform_double_fraction),
6937         (gst_value_transform_fraction_double), (_gst_value_initialize):
6938         * testsuite/caps/Makefile.am:
6939         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6940         (check_from_fraction_convert), (transform_test), (main):
6941         Added transform functions between double and fraction.
6942         Added testcase to verify transforms
6943
6944 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6945
6946         * win32/GStreamer.vcproj:
6947           rename GStreamer-0.8.lib to libgstreamer.lib
6948
6949 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6950
6951         * win32/gstelements.vcproj:
6952         * win32/gstoptimalscheduler.vcproj:
6953           fixes for the Release build
6954
6955 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6956
6957         * win32/config.h:
6958           update the version number
6959
6960 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6961
6962         * win32/GStreamer.vcproj:
6963           add gstinterface to the build
6964
6965 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6966
6967         * win32/gstreamer.def:
6968           add many definitions needed by plugins,
6969           GST_CAT_DEFAULT only available in the Debug build ?
6970
6971 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6972
6973         * gst/gstelement.c: (gst_element_set_eos_recursive):
6974           various whitespace fixes.
6975           doc fix, fixes #148497
6976
6977 2004-07-25  Benjamin Otte  <otte@gnome.org>
6978
6979         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
6980           don't delay links on the sink elements, it causes unnegotiated
6981           links.
6982         * gst/elements/gsttypefindelement.c:
6983         (gst_type_find_element_base_init):
6984           add our padtemplates, we indeed do have some.
6985         * gst/elements/gsttypefindelement.c:
6986         (gst_type_find_element_handle_event),
6987         (gst_type_find_element_chain):
6988           don't push data when typefinding failed.
6989         * gst/gstpad.c: (gst_pad_link_fixate):
6990           check that no fixate function returns empty caps.
6991         * gst/gstpad.c: (gst_pad_push):
6992           check that the link is negotiated before data gets pushed.
6993         * tools/gst-register.c: (main):
6994           don't assert (fixes #148283)
6995
6996 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6997
6998         * docs/gst/gstreamer-sections.txt:
6999         * docs/gst/tmpl/gstconfig.sgml:
7000           add GST_PLUGIN_EXPORT definition
7001
7002 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7003
7004         * gst/gstplugin.h:
7005         * gst/gstconfig.h.in:
7006         * win32/gstconfig.h:
7007         * win32/gstelements.def:
7008         * win32/gstelements.vcproj:
7009         * win32/gstoptimalscheduler.def:
7010         * win32/gstoptimalscheduler.vcproj:
7011         * win32/gstspider.def:
7012         * win32/gstspider.vcproj:
7013           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
7014
7015 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7016
7017         * docs/gst/gstreamer-sections.txt:
7018           remove GST_CAT_DEFAULT because the type has changed
7019
7020 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7021
7022         * win32/gstbytestream.vcproj:
7023         * win32/gstelements.vcproj:
7024         * win32/gst-inspect.vcproj:
7025         * win32/gst-launch.vcproj:
7026         * win32/gstoptimalscheduler.vcproj:
7027         * win32/GStreamer.vcproj:
7028         * win32/gst-register.vcproj:
7029         * win32/gstspider.vcproj:
7030         * win32/msvc71.sln:
7031           Copy the files where needed after building, The testsuite will be
7032           built separately
7033
7034 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7035
7036         * win32/config.h:
7037         * win32/README.txt:
7038         * docs/manual/win32.xml:
7039         Fixed the plugin and GStreamer location
7040
7041 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7042
7043         * win32/gstreamer.def:
7044         More exports for the plugins
7045
7046 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7047
7048         * gst/gstinfo.h:
7049         Marc was right, we need to export literally GST_CAT_DEFAULT
7050
7051 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7052
7053         * win32/config.h:
7054         NLS crashes in gettext, disabled until this is solved
7055
7056 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7057
7058         * win32/gst-inspect.vcproj:
7059         * win32/gst-launch.vcproj:
7060         Should use NLS when available
7061
7062 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7063
7064         * gst/registries/gstxmlregistry.c:
7065         removing the file doesn't seem to be a good idea on Linux
7066
7067 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7068
7069         * gst/registries/gstxmlregistry.c:
7070         Remove the registry before renaming the tempfile (needed for Windows)
7071
7072 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7073
7074         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
7075         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
7076         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
7077         * gst/elements/gstmultifilesrc.h:
7078         Added newmedia property so it generates newmedia events between each
7079         file when property is set, as well as fixed eos handling
7080
7081 2004-07-22  David Schleef  <ds@schleef.org>
7082
7083         * gst/gststructure.c: (gst_structure_id_empty_new),
7084         (gst_structure_empty_new):  Set type field correctly.
7085         * gst/gststructure.h: Check type field correctly.
7086         * testsuite/caps/Makefile.am:
7087         * testsuite/caps/structure.c: (test1), (main): Add a very small
7088         test for structures.
7089
7090 2004-07-22  David Schleef  <ds@schleef.org>
7091
7092         * docs/random/ds/0.9-suggested-changes: more comments
7093         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
7094
7095 2004-07-22  Benjamin Otte  <otte@gnome.org>
7096
7097         * gst/gstelementfactory.c: (gst_element_register):
7098           set the factory in the class struct, so gst_element_get_factory
7099           actually works
7100         * gst/parse/grammar.y:
7101           set element to playing when it gets unlocked as we can't rely on the
7102           bin state - all elements in the bin state might still be locked in
7103           NULL)
7104
7105 2004-07-22  Benjamin Otte  <otte@gnome.org>
7106
7107         * gst/gstelement.c: (gst_element_set_state_func):
7108           make this a static function
7109
7110 2004-07-22  Wim Taymans  <wim@fluendo.com>
7111
7112         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
7113         (gst_opt_scheduler_pad_link):
7114         fix 147894-2 and the group_link problem.
7115
7116 2004-07-22  Wim Taymans  <wim@fluendo.com>
7117
7118         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7119         (handoff_identity), (main):
7120         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7121         (handoff_identity), (main):
7122         * testsuite/schedulers/Makefile.am:
7123         * testsuite/schedulers/group_link.c: (main):
7124         Show bug in scheduler when linking chain and loop based element 
7125         where the chain based element was not yet in a group.
7126
7127 2004-07-21  Benjamin Otte  <otte@gnome.org>
7128
7129         * gst/.cvsignore:
7130         * gst/autoplug/.cvsignore:
7131         * gst/elements/.cvsignore:
7132         * gst/indexers/.cvsignore:
7133         * libs/gst/bytestream/.cvsignore:
7134         * libs/gst/control/.cvsignore:
7135         * libs/gst/getbits/.cvsignore:
7136         * testsuite/states/.cvsignore:
7137         * testsuite/threads/.cvsignore:
7138           keep this up to date, since I seem to be the only one who cares
7139           about not missing files on commits (editor's note: no you don't,
7140           but feel free to change them at the time you add stuff instead
7141           of later on)
7142
7143 2004-07-21  Benjamin Otte  <otte@gnome.org>
7144
7145         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7146         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
7147         (gst_bin_child_state_change_func), (set_kid_state_func),
7148         (gst_bin_set_state), (gst_bin_change_state_norecurse):
7149           make state changes work correctly and reentrant (so removing
7150           elements from bins during state changes of bins doesn't cause
7151           segfaults or even wrong states)
7152           add debugging category and debugging output to print children states
7153         * gst/gstbin.c: (gst_bin_dispose): 
7154           add some assertion checks
7155         * gst/gstbin.h:
7156         * gst/gstbin.c: (gst_bin_sync_children_state):
7157           deprecate this function - it just does gst_bin_set_state (bin,
7158           GST_STATE (bin)) 
7159         * testsuite/threads/queue.c: (main):
7160           don't use gst_bin_sync_children_state anymore
7161         * testsuite/states/Makefile.am:
7162         * testsuite/states/bin.c:
7163           test that the state changes of bins work as expected
7164         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
7165           some adjustments to change states correctly, too
7166         * gst/gstthread.c: (gst_thread_change_state):
7167           don't enable/disable "threadsafe" properties, they're unused and
7168           cause random segfaults
7169         * testsuite/threads/Makefile.am:
7170           the queue check randomly passes now, ignore it
7171
7172 2004-07-21  Benjamin Otte  <otte@gnome.org>
7173
7174         * gst/gstpad.c:
7175           check if data is NULL before outputting debug info. (fixes #145100)
7176
7177 2004-07-21  Benjamin Otte  <otte@gnome.org>
7178
7179         * gst/schedulers/entryscheduler.c:
7180         (gst_entry_scheduler_loop_wrapper),
7181         (gst_entry_scheduler_chain_wrapper),
7182         (gst_entry_scheduler_get_wrapper):
7183           reset the state when the cothread starts, so we don't get assertion
7184           failures on restarting of cothreads
7185
7186 2004-07-20  Benjamin Otte  <otte@gnome.org>
7187
7188         * gst/gstelement.c: (gst_element_link_pads_filtered):
7189           use correct sinkpad, if only sinkpad is specified, but not srcpad
7190           (fixes #147889)
7191         * gst/gstelement.c: (gst_element_set_state_func),
7192         (gst_element_change_state): ref/unref the element, signal handlers
7193         could get rid of the element otherwise
7194
7195 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7196
7197         * docs/random/ds/0.9-suggested-changes:
7198           Make note about renaming fixed-list to array.
7199         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
7200         (_gst_value_initialize):
7201           Add array intersections.
7202         * testsuite/caps/intersect2.c: (main):
7203           Add test for array intersections.
7204
7205 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7206
7207         * configure.ac: back to cvs
7208
7209 === release 0.8.4 ===
7210
7211 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7212
7213         * configure.ac:
7214           releasing 0.8.4, "Paella"
7215           bump libtool versioning
7216
7217 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7218
7219         * po/LINGUAS:
7220         * po/ca.po:
7221           adding Catalan translation (Jordi Mallach)
7222
7223 2004-07-20  Wim Taymans  <wim@fluendo.com>
7224
7225         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7226         (handoff_identity), (main):
7227         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7228         (handoff_identity), (main):
7229         * testsuite/schedulers/Makefile.am:
7230         Added failing testcase for variant of #147894
7231
7232 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7233
7234         patch by: David Moore
7235
7236         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7237         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
7238         (group_migrate_connected):
7239         * testsuite/schedulers/Makefile.am:
7240           fix for #142813 (Deadlock in optimal scheduler)
7241
7242 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7243
7244         patch by: Wim Taymans
7245
7246         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7247         (gst_opt_scheduler_schedule_run_queue),
7248         (gst_opt_scheduler_get_wrapper), (get_group),
7249         (group_migrate_connected):
7250         * testsuite/schedulers/Makefile.am:
7251           fix for #147819 (Add some checks in the opt scheduler)
7252
7253 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7254
7255         patch by: Benjamin Otte
7256
7257         * gst/gstelementfactory.c: (__gst_element_details_set):
7258           fix for #147929: running gst-register in non-utf8 locale can cause
7259           invalid registry
7260
7261 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7262
7263         patch by: Wim Taymans
7264
7265         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
7266         (group_has_element), (element_get_reachables_func),
7267         (group_migrate_connected):
7268           fix for #147894 (opt scheduler decoupled elements mismanagement)
7269         * testsuite/schedulers/Makefile.am:
7270           testsuite app now passes
7271
7272 2004-07-19  Wim Taymans  <wim@fluendo.com>
7273
7274         * testsuite/schedulers/147819.c: (handoff_identity1),
7275         (handoff_identity2), (main):
7276         * testsuite/schedulers/Makefile.am:
7277         Added testcase for bug 147819
7278
7279 2004-07-19  Wim Taymans  <wim@fluendo.com>
7280
7281         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7282         (handoff_identity), (main):
7283         * testsuite/schedulers/Makefile.am:
7284         Added testcase for bug 147894
7285
7286 2004-07-16  Wim Taymans  <wim@fluendo.com>
7287
7288         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
7289         * testsuite/schedulers/142183.c: (handoff_identity), (main):
7290         * testsuite/schedulers/Makefile.am:
7291         Added testsuite for bug 142183 in its two incarnations. Refcount
7292         is not increased for scheduled elements and threadsafe properties
7293         mutexes are not properly unlocked.
7294
7295 2004-07-16  Wim Taymans  <wim@fluendo.com>
7296
7297         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
7298         (create_chain), (destroy_chain), (create_group), (destroy_group),
7299         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
7300         (group_dec_link), (gst_opt_scheduler_pad_link),
7301         (group_inc_links_for_element), (group_migrate_connected):
7302         Call group_inc_link with the proper src->sink ordering -- 
7303         break this, and we break sort_chain. patch from wingo for bug
7304         147713.
7305         Partially revert patch 1.89. When adding a loop based element to 
7306         the scheduler, the links to other groups are automatically followed
7307         and incremented. This should not happen because the bin will call
7308         pad_link explicitly for those connection, resulting in them counted 
7309         twice. Results in assertion failure on pipeline cleanup.
7310
7311 2004-07-16  Wim Taymans  <wim@fluendo.com>
7312
7313         * testsuite/schedulers/143777-2.c: (main):
7314         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
7315         (main):
7316         * testsuite/schedulers/Makefile.am:
7317         Added cleanup code to testcase 143777-2.
7318         Added testcase to show bug 147713, does not really show the
7319         deadlock as I can't figure out how to trigger it, but it does
7320         demonstrate bad ordering in the scheduler.
7321
7322 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7323
7324         * gst/gstvalue.c: (gst_value_deserialize_fraction):
7325           change strndup to g_strndup.  Fixes #147707
7326
7327 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7328
7329         * po/af.po:
7330         * po/az.po:
7331         * po/cs.po:
7332         * po/en_GB.po:
7333         * po/fr.po:
7334         * po/nl.po:
7335         * po/sr.po:
7336         * po/sv.po:
7337         * po/tr.po:
7338         * po/uk.po:
7339           updated translations
7340
7341 2004-07-16  Benjamin Otte  <otte@gnome.org>
7342
7343         * gst/gstvalue.c: (gst_greatest_common_divisor):
7344           use ints and return ints, fractions only use ints, too, so this
7345           avoids accidently casting multiplications to unsigned
7346         (gst_value_lcopy_fraction): it's ints, not uint32
7347         (gst_value_set_fraction): disallow minint, multiplying and negation
7348           are broken with it
7349         (gst_value_fraction_multiply): fix to make large numbers work and get
7350         rid of the assumption that the multiplication of two ints fits an
7351         int64 - dunno if that's true for all systems
7352         * testsuite/caps/Makefile.am:
7353         * testsuite/caps/fraction-multiply-and-zero.c:
7354         (check_multiplication), (check_equal), (zero_test), (main):
7355           add tests for all the stuff above
7356         * testsuite/caps/value_compare.c: (test1):
7357           fix comment
7358         * tests/.cvsignore:
7359         * testsuite/caps/.cvsignore:
7360         * testsuite/debug/.cvsignore:
7361         * testsuite/dlopen/.cvsignore:
7362         * testsuite/states/.cvsignore:
7363           get up to date
7364
7365 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7366
7367         * docs/manual/bins-api.xml:
7368         * docs/manual/factories.xml:
7369         * docs/manual/helloworld.xml:
7370         * docs/manual/links-api.xml: 
7371           fixes for out of date info, incorrect info and grammar
7372
7373 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7374
7375         * docs/manual/pads.xml:
7376         * docs/manual/pads-api.xml: grammar fix
7377
7378 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7379
7380         * docs/manual/pads-api.xml: typo + grammar fix
7381
7382 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7383
7384         * docs/gst/gstreamer-sections.txt:
7385           add new symbols
7386         * docs/gst/tmpl/gstelement.sgml:
7387         * docs/gst/tmpl/gstpad.sgml:
7388         * docs/gst/tmpl/gsttypes.sgml:
7389         * docs/gst/tmpl/gstvalue.sgml:
7390           update docs
7391         * gst/gststructure.c: (gst_structure_set_valist),
7392         (gst_structure_from_abbr), (gst_structure_to_abbr):
7393         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
7394         (gst_greatest_common_divisor), (gst_value_init_fraction),
7395         (gst_value_copy_fraction), (gst_value_collect_fraction),
7396         (gst_value_lcopy_fraction), (gst_value_set_fraction),
7397         (gst_value_get_fraction_numerator),
7398         (gst_value_get_fraction_denominator),
7399         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
7400         (gst_value_deserialize_fraction),
7401         (gst_value_transform_fraction_string),
7402         (gst_value_transform_string_fraction),
7403         (gst_value_compare_fraction), (_gst_value_initialize):
7404         * gst/gstvalue.h:
7405           adding GstFraction GValue type, get/set, and multiply
7406         * testsuite/caps/Makefile.am:
7407         * testsuite/caps/fraction.c: (test), (main):
7408         * testsuite/caps/string-conversions.c: (main):
7409         * testsuite/caps/value_compare.c: (test1), (main):
7410           add regression tests for GstFraction
7411
7412 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7413         
7414         * docs/manual/init-api.xml: Grammar fix
7415
7416 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7417
7418         * docs/manual/states.xml: Fix inconsistent information
7419
7420 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7421
7422         * gst/gstelement.c: (gst_element_set_state):
7423         * gst/gstpad.c: (gst_pad_try_set_caps):
7424         * gst/gststructure.c:
7425         * gst/gstthread.c: (gst_thread_child_state_change):
7426         * gst/gstvalue.c: (gst_value_compare_double):
7427         * gst/gstvalue.h:
7428         * testsuite/parse/parse1.c: (main):
7429           debugging additions and style cleanups
7430
7431 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7432
7433         * docs/manual/states.xml: Grammar fix
7434
7435 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7436
7437         * docs/manual/pads.xml: Grammar fix
7438
7439 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7440
7441         * docs/manual/elements.xml: Fixed image reference
7442
7443 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7444
7445         * docs/manual/goals.xml: Grammar fix
7446
7447 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7448
7449         * docs/manual/motivation.xml:
7450         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
7451
7452 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7453
7454         * docs/manual/motivation.xml: Fix spelling
7455
7456 2004-07-15  Benjamin Otte  <otte@gnome.org>
7457
7458         * gst/gstelement.h: 
7459           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
7460           strings.
7461         * gst/gstelement.c (gst_element_class_init):
7462           GError's are boxed, not objects
7463         * gst/gstmarshal.list:
7464           update list for the fixed error signal
7465
7466 2004-07-14  Andy Wingo  <wingo@pobox.com>
7467
7468         * gst/gsttag.c: Add a tag merge func for pointers. The header was
7469         there all along, but the function wasn't. (guile-gstreamer's build
7470         system uses the address of the function -- I wasn't actually
7471         trying to use this.)
7472
7473 2004-07-14  Andy Wingo  <wingo@pobox.com>
7474
7475         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
7476         as gst_pad_proxy_pad_link) just link to every other pad when they
7477         are called. In the case where the graph has cycles, this will mean
7478         that a call to try_set_caps will recurse. Allow this recursion
7479         and return OK, while we wait for the first try_set_caps to give a
7480         proper return value.
7481         (gst_pad_link_call_link_functions): Since this function is the
7482         only one to set the NEGOTIATING flag on a pad, if the flag is set
7483         it means that the link functions have indirectly recursed. If this
7484         happens, error out to avoid infinite recursion and an eventual
7485         SEGV.
7486         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
7487         (gst_pad_proxy_getcaps): Intersect the result with the template
7488         caps to ensure that the return value is valid.
7489
7490 2004-07-14  Andy Wingo  <wingo@pobox.com>
7491
7492         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
7493         one refcount, the calling function is the owner of the buffer.
7494
7495 2004-07-14  Wim Taymans  <wim@fluendo.com>
7496
7497         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7498         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7499         Fix stupid warning when an element is to be migrated but
7500         is already migrated.
7501
7502 2004-07-14  Wim Taymans  <wim@fluendo.com>
7503
7504         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7505         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7506         Make sure that a single non-loop-based element does not 
7507         end up in a group. This fixes the testsuite again.
7508
7509 2004-07-14  Wim Taymans  <wim@fluendo.com>
7510
7511         * gst/schedulers/gstoptimalscheduler.c: (create_group),
7512         (add_to_group), (merge_groups), (schedule_group),
7513         (gst_opt_scheduler_get_wrapper), (group_elements),
7514         (group_dec_link), (gst_opt_scheduler_pad_link),
7515         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
7516         (gst_opt_scheduler_iterate):
7517         move isolated groups to a new chain.
7518         Emit a warning instead of segfaulting in some error cases.
7519         Fix a bug where the link count between groups was not calculated 
7520         correctly. Fixes #144510.
7521
7522 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
7523         * gst/elements/gstfilesrc.c:
7524           Binary files support under Windows now OK
7525       
7526 2004-07-13  Benjamin Otte  <otte@gnome.org>
7527
7528           compatibility fixes for Solaris 8/gcc 2.95
7529         * configure.ac:
7530           include libintl libs in LDFLAGS
7531         * gstvalue.c (gst_value_deserialize_buffer):
7532           cast isxdigit stuff to int to silence compiler warning
7533
7534 2004-07-12  Benjamin Otte  <otte@gnome.org>
7535
7536         * gst/gsttypes.h:
7537           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
7538           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
7539           just causes support madness
7540         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7541           make it work without this
7542         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
7543         (gst_file_index_commit):
7544           glib IO channels don't want binary mode
7545         * testsuite/bytestream/filepadsink.c: (main):
7546         * testsuite/bytestream/test1.c: (read_param_file):
7547           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
7548
7549 2004-07-12  Benjamin Otte  <otte@gnome.org>
7550
7551         * gst/gstelement.c: (gst_element_class_init),
7552         (gst_element_set_state), (gst_element_set_state_func):
7553           virutalize gst_element_set_state, use set_state member in class
7554           struct that was already added in 0.7 for this.
7555         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
7556         (gst_bin_change_state):
7557           make gst_bin_foreach works similar to other foreach functions, plug
7558           memleaks in it. Make functions using it work with the new approach.
7559           Document gst_bin_foreach, so it can be exported if we want to
7560         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
7561           use virtualized set_state to make set_state on bins set the state of
7562           all its children.
7563
7564 2004-07-12  Benjamin Otte  <otte@gnome.org>
7565
7566         * configure.ac:
7567           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
7568           http://bugs.gentoo.org/show_bug.cgi?id=53967)
7569         * gst/gstpad.c: (gst_pad_alloc_buffer):
7570           allow buffer_alloc functions to return NULL and allocate a normal
7571           buffer in that case
7572
7573 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7574         * gst/elements/gstfilesink.c:
7575         * gst/elements/gstfilesrc.c:
7576         * gst/indexers/gstfileindex.c:
7577         * gst/gsttypes.h:
7578         * testsuite/bytestream/filepadsink.c:
7579         * testsuite/bytestream/test1.c:
7580           Handle binary files under Windows
7581
7582 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7583         * docs/manual/win32.xml:
7584         * win32/config.h:
7585         * win32/gst-register.vcproj:
7586         * win32/gstreamer.def:
7587           Update to another gettext public build
7588
7589 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7590         * gst/gstplugin.c:
7591           Fix an impossible C syntax
7592         * win32/config.h:
7593           Disable i18n under Windows for the moment
7594         * win32/gst-register.vcproj:
7595           Use this configuration
7596
7597 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
7598         * docs/manual/quotes.xml:
7599           Keep the quotes file alive
7600         * docs/random/ds/0.9-suggested-changes:
7601           Add the suggestion of including a 'rowstride' as part of video
7602           format caps
7603
7604 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7605
7606         * gst/gstelement.c: (gst_element_set_state),
7607         (gst_element_change_state):
7608           d'oh.  Set PENDING state correctly before forcing bin to change.
7609         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7610         (gst_structure_parse_fixed_list):
7611         * gst/schedulers/gstoptimalscheduler.c:
7612         (gst_opt_scheduler_state_transition):
7613         * testsuite/states/parent.c: (main):
7614           remove comment now that it's fixed.
7615
7616 2004-07-11  Benjamin Otte  <otte@gnome.org>
7617
7618         * gst/gstclock.h:
7619           GST_SECOND shouldn't cause a conversion to unsigned.
7620         * testsuite/clock/.cvsignore:
7621         * testsuite/clock/Makefile.am:
7622         * testsuite/clock/signedness.c: (main):
7623           make sure it never will again
7624
7625 2004-07-11  Andy Wingo  <wingo@pobox.com>
7626
7627         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
7628         whose state is higher than the bin state, raise the bin state to
7629         ensure that bin state := highest child state.
7630         
7631 2004-07-11  Andy Wingo  <wingo@pobox.com>
7632
7633         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
7634         procedure on the children of a bin. Assumes that the procedure can
7635         change the set of children.
7636         (set_kid_state_func): New static function.
7637         (gst_bin_change_state): Use gst_bin_foreach to call
7638         set_kid_state_func. Fixes a bug: if a child had a state-change
7639         handler that removes it from the bin, there would be a segfault.
7640         Hopefully it should also work in the case where the state-change
7641         handler on one child adds or removes other children. In any case,
7642         fixes should go to gst_bin_foreach.
7643
7644 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
7645
7646         * gst/gstelement.c: (gst_element_set_state):
7647           compatibility fix for latest plugins release.  Change loop back
7648           to while {}
7649
7650 2004-07-09  Wim Taymans  <wim@fluendo.com>
7651
7652         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
7653         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
7654         (gst_thread_main_loop):
7655         Since remove is virtual in GstBin we must not assume the 
7656         elements GList to have anothing useful.
7657         Add some more logging to GstThread and be a bit more paranoid
7658         when resetting the scheduler.
7659         Set the state of the bin to NULL before removing the children.
7660
7661 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7662
7663         * testsuite/threads/Makefile.am:
7664         * testsuite/threads/threadg.c:
7665           added test to check if problem when removing all elements from a
7666           GstThread before setting GstThread state to NULL
7667
7668 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7669
7670         * docs/gst/tmpl/gstelement.sgml:
7671         * docs/gst/tmpl/gsttypes.sgml:
7672         * gst/gstbin.c: (gst_bin_change_state):
7673         * gst/gstelement.c: (gst_element_set_state),
7674         (gst_element_change_state):
7675           rework so that for bins we try to set the state on all children
7676           as well even if the bin is in the correct state already.
7677           change while to do so at least one iteration is done.
7678           For regular elements, we fall back to the previous behaviour for
7679           now since we first need a new plugins release.
7680         * testsuite/states/parent.c: (main):
7681           test for this case
7682           Fixes #123774
7683
7684 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7685
7686         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
7687         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
7688         (gst_queue_release_locks), (gst_queue_change_state),
7689         (gst_queue_set_property):
7690           add proper lock debugging.  Change dispose to finalize, since
7691           we're freeing mutexes and other stuff which should happen only once.
7692
7693 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7694
7695         * docs/gst/tmpl/gstelement.sgml:
7696         * docs/gst/tmpl/gstplugin.sgml:
7697         * docs/gst/tmpl/gsttypes.sgml:
7698         * docs/pwg/building-state.xml:
7699         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
7700         * gst/gstelement.c: (gst_element_change_state):
7701         * gst/gstthread.c: (gst_thread_change_state):
7702           catch wrong state changes in element base class.
7703
7704 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7705
7706         * gst/gstinfo.h:
7707           clean up layout a little.
7708
7709 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7710
7711         * configure.ac:
7712         * testsuite/Makefile.am:
7713         * testsuite/states/Makefile.am:
7714         * testsuite/states/parent.c: (main):
7715           re-enable states testsuite dir.  Add test for state changes and
7716           parent behaviour
7717
7718 2004-07-09  Wim Taymans  <wim@fluendo.com>
7719
7720         * gst/schedulers/gstoptimalscheduler.c:
7721         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
7722         (element_get_reachables_func), (element_get_reachables),
7723         (debug_element), (rechain_group), (group_migrate_connected),
7724         (gst_opt_scheduler_pad_unlink):
7725         Do not try to migrate decoupled elements to a new group since
7726         they are not added to groups.
7727
7728 2004-07-08  Benjamin Otte  <otte@gnome.org>
7729
7730         * gst/gstelement.c: (gst_element_error_func):
7731           make reentrant (= allow removing elements in error handler)
7732
7733 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7734
7735         * gst/gstpad.c: (gst_pad_event_default_dispatch),
7736         (gst_pad_send_event), (gst_pad_call_chain_function):
7737           events sent to elements below PAUSED cannot be handled, so
7738           don't try to
7739
7740 2004-07-08  Wim Taymans  <wim@fluendo.com>
7741
7742         * gst/schedulers/gstoptimalscheduler.c:
7743         (chain_recursively_migrate_group), (create_group),
7744         (schedule_group), (gst_opt_scheduler_pad_link),
7745         (group_elements_set_visited), (element_get_reachables_func),
7746         (element_get_reachables), (group_can_reach_group), (debug_element),
7747         (rechain_group), (group_migrate_connected),
7748         (gst_opt_scheduler_pad_unlink):
7749         * testsuite/schedulers/Makefile.am:
7750         Implemented group splitting and rechaining.
7751         Fixes 143777 and 143777-2 in the testsuite.
7752
7753 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7754
7755         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7756           extra debugging
7757         * gst/gstevent.h:
7758         * gst/gstinfo.c: (gst_debug_log_default):
7759           print time nicely.  add thread pointer until someone figures out
7760           a completely portable way of getting at thread id's.
7761         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
7762         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
7763         (gst_pad_call_chain_function):
7764           extra debugging
7765         * gst/schedulers/gstoptimalscheduler.c:
7766         (get_group_schedule_function), (loop_group_schedule_function),
7767         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
7768         (pad_clear_queued), (gst_opt_scheduler_iterate):
7769           rename BUFPEN and friends to DATAPEN since that's what they are.
7770
7771 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7772
7773         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7774         * gst/gstbuffer.h:
7775         * gst/gstpad.c:
7776           cleanups and debugging
7777
7778 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7779
7780         * configure.ac:
7781         * gst/gstvalue.c: (gst_value_compare_enum),
7782         (gst_value_serialize_enum), (gst_value_deserialize_enum),
7783         (gst_value_can_compare), (gst_value_compare):
7784         * testsuite/Makefile.am:
7785         * testsuite/enumcaps/Makefile.am:
7786         * testsuite/enumcaps/enumcaps.c:
7787           Fix enum serialization, deserialization, comparison in caps, add
7788           a test to ensure that this continues working in the future.
7789
7790 2004-07-06  David Schleef  <ds@schleef.org>
7791
7792         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7793         Fix memleak.
7794
7795 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7796
7797         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
7798         * gst/gstplugin.h:
7799         * gst/registries/gstxmlregistry.c:
7800         (plugin_times_older_than_recurse), (plugin_times_older_than),
7801         (gst_xml_registry_parse_padtemplate):
7802           only rebuild registry when actual plugins have a newer time than
7803           the registry.  Fixes #145520
7804
7805 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7806
7807         * docs/manual/manual.xml:
7808         * docs/manual/win32.xml:
7809           add chapter on win32 building.  fixes #142422
7810
7811 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7812
7813         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
7814
7815         * gst/autoplug/gstspider.c: (gst_spider_init),
7816         (gst_spider_dispose):
7817           fix spider memleaks.  fixes #137863
7818
7819 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7820
7821         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
7822
7823         * gst/schedulers/gstoptimalscheduler.c:
7824         (gst_opt_scheduler_pad_unlink):
7825           fix SIGBUS error, fixes #145338
7826
7827 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7828
7829         * gst/gstobject.c: (gst_object_replace):
7830         * gst/gstscheduler.c: (gst_scheduler_get_clock):
7831         * gst/gstsystemclock.c: (gst_system_clock_obtain):
7832           clean up clock lifecycle.  Fixes #109831
7833
7834 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7835
7836         * po/LINGUAS:
7837         * po/cs.po:
7838           added Czech translation (Miloslav Trmac)
7839
7840 2004-07-04  David Schleef  <ds@schleef.org>
7841
7842         * tools/Makefile.am:
7843         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
7844
7845 2004-07-04  David Schleef  <ds@schleef.org>
7846
7847         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
7848
7849 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
7850
7851         * gst/gstbin.c: (gst_bin_restore_thyself):
7852           chain to parent restore so the bins get restored correctly
7853           in the editor
7854
7855 2004-07-03  David Schleef  <ds@schleef.org>
7856
7857         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7858         Actually do something in these functions, like before the big
7859         caps change.  (bug #145137)
7860
7861 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7862
7863         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
7864         (gst_element_get_compatible_pad_filtered):
7865         * gst/gstthread.c: (gst_thread_main_loop):
7866           more debugging
7867
7868 2004-07-02  David Schleef  <ds@schleef.org>
7869
7870         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
7871         * gst/gstobject.h:
7872         * gst/gstparse.h:
7873         * gst/gsttrace.h:
7874         * gst/gstxml.h:
7875
7876 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7877
7878         * gst/gstpad.c: (gst_pad_check_schedulers),
7879         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
7880         (gst_pad_link_prepare):
7881           revert until testsuite is fixed
7882
7883 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7884
7885         * testsuite/Makefile.am:
7886         * testsuite/caps/filtercaps.c: (main):
7887         * testsuite/clock/clock1.c: (main):
7888         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
7889           fix some more tests
7890
7891 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7892
7893         * testsuite/cleanup/cleanup1.c: (create_pipeline):
7894         * testsuite/cleanup/cleanup2.c: (create_pipeline):
7895         * testsuite/cleanup/cleanup4.c: (main):
7896           fix testsuite
7897
7898 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7899
7900         * libs/gst/control/control.c:
7901         * libs/gst/control/dparam.c:
7902         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
7903         * libs/gst/control/dparammanager.c:
7904         * libs/gst/control/dparammanager.h:
7905         * testsuite/dynparams/Makefile.am:
7906         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
7907         (gst_dptest_change_state), (gst_dptest_chain), (main):
7908           fix testcase for dparams
7909           add debugging category
7910
7911 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7912
7913         * testsuite/Rules:
7914           change path
7915
7916 2004-07-02  Benjamin Otte  <otte@gnome.org>
7917
7918         * tests/.cvsignore:
7919         * tests/Makefile.am:
7920         * tests/mass_elements.c: (gst_get_current_time), (main):
7921           add simple benchmark to test various speeds of fakesrc ! identity !
7922           identity ! ... ! fakesink.
7923           Usage: mass_elements [num_identities] [num_buffers]
7924           If not specified they default to 1000.
7925
7926 2004-07-02  Benjamin Otte  <otte@gnome.org>
7927
7928         * gst/gstpad.c: (gst_pad_check_schedulers),
7929         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
7930         (gst_pad_link_prepare):
7931           check that pads that get linked belong to the same manager. The old
7932           code allowed linking elements before putting them into bins, so it
7933           worked to link them and then put them in different threads, which
7934           lead to weird behaviour.
7935           Since this effectively disallows linking elements before putting
7936           them in a bin, some applications might not work after this and error
7937           out. If these applications are too critical, we might need to revert
7938           that patch. Please test this before the next release...
7939
7940 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7941
7942         * gst/gstpad.c: (gst_pad_get_caps):
7943           throw an error if the getcaps function does not return a subset of
7944           the template caps.
7945         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
7946           make disconts without position info an error in debugging
7947         * tests/spidey_bench.c: (handoff), (main):
7948           don't count first try when averaging
7949
7950 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7951
7952         * gst/gstplugin.c: (gst_plugin_load_file):
7953           figure out problem with dynamic test
7954
7955 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7956
7957         * docs/gst/Makefile.am:
7958           fix docs build
7959
7960 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7961
7962         * po/POTFILES.in:
7963         * po/af.po:
7964         * po/az.po:
7965         * po/en_GB.po:
7966         * po/fr.po:
7967         * po/nl.po:
7968         * po/sr.po:
7969         * po/sv.po:
7970         * po/tr.po:
7971         * po/uk.po:
7972         * tools/gst-register.c: (plugin_added_func), (main):
7973           i18n-ize -register, fix plural
7974
7975 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7976
7977         * gst/elements/gstidentity.c: (gst_identity_class_init),
7978         (gst_identity_init), (gst_identity_chain),
7979         (gst_identity_set_property), (gst_identity_get_property):
7980         * gst/elements/gstidentity.h:
7981           check for perfect stream
7982
7983 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7984
7985         * gst/elements/gstidentity.c: (gst_identity_chain):
7986           print offset_end
7987
7988 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7989
7990         * docs/gst/Makefile.am:
7991         * docs/gst/gstreamer-docs.sgml:
7992           doc fixes
7993
7994 2004-06-24  David Schleef  <ds@schleef.org>
7995
7996         * autogen.sh:  Remove call to env, since the buildbot isn't
7997         broken anymore.
7998
7999 2004-06-24  Wim Taymans  <wim@fluendo.com>
8000
8001         * gst/elements/Makefile.am:
8002         * gst/elements/gstelements.c:
8003         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
8004         (gst_multifdsink_class_init), (gst_multifdsink_init),
8005         (gst_multifdsink_add), (gst_multifdsink_remove),
8006         (gst_multifdsink_clear), (gst_multifdsink_chain),
8007         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
8008         * gst/elements/gstmultifdsink.h:
8009         Added an element that writes to multiple filedescriptors at once.
8010
8011 2004-06-24  Benjamin Otte  <otte@gnome.org>
8012
8013         * gst/parse/grammar.y:
8014           don't try to link elements before they have been added to bins
8015
8016 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8017
8018         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
8019         (gst_file_pad_get_length):
8020         * libs/gst/bytestream/filepad.h:
8021           add 2 new functions
8022
8023 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8024
8025         * docs/gst/gstreamer-sections.txt:
8026         remove from docs, the define that Benjamin removed from gstelement.h
8027
8028 2004-06-22  Benjamin Otte  <otte@gnome.org>
8029
8030         * gst/gstelement.h:
8031           remove define that referenced a nonexisting GstElement struct member
8032
8033 2004-06-20  Benjamin Otte  <otte@gnome.org>
8034
8035         * gst/gstdata.c: (gst_data_is_writable):
8036           whoops, return values were wrong, so writable data was marked as
8037           non-writable and vice versa. (fixes #143953, spotted by Francis
8038           Labonte)
8039           Shows how rarely we need to copy data ;)
8040
8041 2004-06-20  Benjamin Otte  <otte@gnome.org>
8042
8043         * testsuite/schedulers/.cvsignore:
8044         * testsuite/schedulers/Makefile.am:
8045         * testsuite/schedulers/143777-2.c: (main):
8046           add test for opt breakage in bug #143777
8047
8048 2004-06-20  Benjamin Otte  <otte@gnome.org>
8049
8050         * gst/gstpad.c: (gst_pad_call_chain_function):
8051           check for if we were unlinked while inside the chainfunction (fixes
8052           entrygthread having issues with #143777)
8053         * testsuite/schedulers/143777.c: (main):
8054         * testsuite/schedulers/Makefile.am:
8055           add a test for that fix
8056
8057 2004-06-20  Benjamin Otte  <otte@gnome.org>
8058
8059         * gst/gstvalue.c: (gst_value_set_int_range):
8060           test that start is smaller then end
8061         * libs/gst/bytestream/Makefile.am:
8062         * libs/gst/bytestream/filepad.c: 
8063         * libs/gst/bytestream/filepad.h:
8064           add GstFilePad - a pad that behaves like a FILE*
8065         * testsuite/bytestream/.cvsignore:
8066         * testsuite/bytestream/Makefile.am:
8067         * testsuite/bytestream/filepadsink.c: 
8068           test for the GstFilePad
8069
8070 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8071
8072         * gst/elements/gstidentity.c: (gst_identity_class_init),
8073         (gst_identity_init), (gst_identity_set_clock),
8074         (gst_identity_chain), (gst_identity_set_property),
8075         (gst_identity_get_property):
8076         * gst/elements/gstidentity.h:
8077         * gst/gstclock.c: (gst_clock_id_wait):
8078           add a "sync" property to sync to the clock
8079
8080 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8081
8082         * gst/gstelementfactory.c: (gst_element_factory_create):
8083           make the freakin "elementfactory bla has no type" message more
8084           useful. So we actually can do something when someone shows up
8085           complaining about it.
8086
8087 2004-06-15  Johan Dahlin  <johan@gnome.org>
8088
8089         * tools/gst-inspect.c (main): Fallback to plugin if no element is
8090         found. This matches the old behavior better. Thanks to Thomas for
8091         pointing out.
8092
8093 2004-06-14  David Schleef  <ds@schleef.org>
8094
8095         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
8096         -fomit-frame-pointer.  Appears to generate correct code in
8097         other cases as well.
8098
8099 2004-06-14  Johan Dahlin  <johan@gnome.org>
8100
8101         * tools/gst-inspect.c (main): Add two new command line options: -a
8102         to print all elements and -n to print the name on each line. Also
8103         fix some error reporting.
8104         (main): Simplify, remove -n and always print names if -a is specified
8105
8106 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
8107
8108         * win32/gstconfig.h:
8109         * win32/GSTreamer.vcproj:
8110         * win32/Makefile:
8111         * gst/gstconfig.h.in:
8112         * gst/gst.h:
8113         * gst/gstbin.h:
8114         * gst/gstelement.h:
8115         * gst/gstevent.h:
8116         * gst/gstobject.h:
8117         * gst/gstpad.h:
8118         * docs/gst/gstreamer-sections.txt:
8119         * docs/gst/tmpl/gstconfig.sgml:
8120           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
8121
8122 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8123         * docs/gst/gstreamer-sections.txt:
8124         * docs/gst/tmpl/gstconfig.sgml:
8125         Add the GSTREAMER_EXPORT macro to the docs
8126
8127 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8128
8129         * tools/gst-compprep.c: (handle_xmlerror), (main):
8130         Add a check for the version that introduced SetStructuredError to fix
8131         the build on FC1
8132
8133 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8134
8135         * win32/msvc71.sln:
8136         * win32/testsuite/:
8137           prepare to compile the testsuite with MSVC
8138
8139 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8140
8141         * docs/manual/win32.xml:
8142           attempt to transform the Win32 README into an XML doc
8143
8144 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8145
8146         * gst/gst.c:
8147         * gst/gstbin.*:
8148         * gst/config.h.in:
8149         * gst/gstelement.*:
8150         * gst/gstevent.h:
8151         * gst/gstobject.*:
8152         * gst/gstpad.h:
8153         * tools/gst-register.c:
8154         * win32/gstreamer.def:
8155           extern symbols are now exported for the Windows DLL
8156
8157 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8158
8159         * gst/gstinfo.h:
8160           fix a problem to enable/disable DEBUG under MSVC
8161
8162 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8163
8164         * win32/:
8165           enable more debug code in DEBUG build
8166
8167 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8168
8169         * win32/config.h:
8170         * gst/gst-i18n-app.h:
8171           enable NLS under Windows
8172
8173 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
8174         * tools/gst-compprep.c: (handle_xmlerror), (main):
8175           Make an error that baffled me a bit clearer
8176
8177 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8178
8179         * gst/gstqueue.c:
8180           don't use g_queue_get_length () because it's 2.4, use ->length
8181
8182 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
8183
8184         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
8185
8186         * tools/gst-inspect.c: (print_signal_info):
8187           don't free random data twice. (fixes #144185)
8188
8189 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
8190
8191         * gst/gstqueue.c:
8192         * gst/gstqueue.h:
8193           fix removing from the wrong queue on event timeout
8194           fix disposing of the event queue by casting correctly
8195           add mutexes for handling the event queue
8196           someone was sleeping when fixing queue last time around :)
8197
8198 2004-06-10  Johan Dahlin  <johan@gnome.org>
8199
8200         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
8201         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
8202
8203 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8204
8205         * docs/random/gdp:
8206         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
8207         * libs/gst/dataprotocol/dataprotocol.c:
8208         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8209         (gst_dp_buffer_from_header):
8210         * libs/gst/dataprotocol/dataprotocol.h:
8211         * libs/gst/dataprotocol/dp-private.h:
8212           rev version to 0.1, add buffer flags and copy them
8213
8214 2004-06-09  Johan Dahlin  <johan@gnome.org>
8215
8216         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
8217         the flags from the buffer we're copying.
8218
8219 2004-06-09  Wim Taymans  <wim@fluendo.com>
8220
8221         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
8222         * gst/elements/gstidentity.c: (gst_identity_init),
8223         (gst_identity_chain):
8224         Print more buffer info in fakesink.
8225         Make identity output similar to fakesink.
8226
8227 2004-06-07  Daniel Gazard  <dany42@free.fr>
8228
8229         reviewed by Benjamin Otte  <otte@gnome.org>
8230
8231         * configure.ac:
8232           fix cross compiling not working. (fixes #143741)
8233
8234 2004-06-07  Benjamin Otte  <otte@gnome.org>
8235
8236         * gst/gstelement.c: (gst_element_set_time_delay):
8237           add failure check
8238         * gst/gstinfo.h:
8239           put brackets around macro arguments of GST_TIME_ARGS, add note to
8240           move it to correct header in 0.9
8241
8242 2004-06-07  Benjamin Otte  <otte@gnome.org>
8243
8244         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
8245         (gst_file_index_load), (_file_index_id_save_entries),
8246         (gst_file_index_commit), (gst_file_index_add_association),
8247         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
8248         (gst_file_index_plugin_init):
8249           make debugging use a default category
8250
8251 2004-06-06  David Moore  <dcm@acm.org>
8252
8253         reviewed by Benjamin Otte  <otte@gnome.org>
8254
8255         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
8256         (gst_fdsrc_change_state):
8257           reset offset counter when going READY => PAUSED. (fixes #142903)
8258
8259 2004-06-06  ed@catmur.co.uk
8260
8261         reviewed by Benjamin Otte  <otte@gnome.org>
8262
8263         * gst/registries/gstxmlregistry.c:
8264         (gst_xml_registry_rebuild_recurse):
8265           don't rely on g_dir_open to figure out if a file is a directory, use
8266           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
8267           directories. (fixes #142850)
8268
8269 2004-06-06  Benjamin Otte  <otte@gnome.org>
8270
8271         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
8272           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
8273         * libs/gst/bytestream/adapter.c:
8274         * libs/gst/bytestream/adapter.h:
8275           fix copyright in header and typo in debugging category name
8276
8277 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8278
8279         * configure.ac:
8280           bump nano to cvs
8281
8282 === release 0.8.3 ===
8283
8284 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8285
8286         * configure.ac:
8287           update libtool versioning
8288           do a new release
8289         * docs/gst/tmpl/gstelement.sgml:
8290         * docs/gst/tmpl/gsttypes.sgml:
8291         * gst/gstinfo.c: (_gst_debug_init):
8292           put back GST_CAT_DATAFLOW to fix API breakage
8293
8294 2004-06-04  David Schleef  <ds@schleef.org>
8295
8296         * autogen.sh: Add a temporary 'env' to test buildbot problems.
8297
8298 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8299
8300         * configure.ac:
8301           bump nano to cvs
8302
8303 === release 0.8.2 ===
8304
8305 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8306
8307         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
8308           check GST_DEBUG environment variable which is parsed the same way
8309           as --gst-debug=
8310
8311 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8312
8313         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
8314                             gstmd5sink.c gstshaper.c gsttee.c
8315                             gsttypefindelement.c
8316         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
8317
8318           - removing trailing commas at end of enums
8319             it is correct C99 code but C90 compilers would complain
8320             (AIX, Forte, ...)
8321             ('should' fix #143290, at least partially)
8322
8323 2004-05-27  Wim Taymans  <wim@fluendo.com>
8324
8325         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
8326         (chain_group_set_enabled), (create_group), (add_to_group),
8327         (merge_groups), (setup_group_scheduler), (group_elements),
8328         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
8329         Don't try to follow the pad connections with other groups
8330         when a loop based element is added to the scheduler because
8331         the bin will inform the scheduler about the pad links a little
8332         later.
8333
8334 2004-05-27  Wim Taymans  <wim@fluendo.com>
8335
8336         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8337         (remove_from_chain), (chain_group_set_enabled),
8338         (setup_group_scheduler), (group_element_set_enabled),
8339         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
8340         (gst_opt_scheduler_show):
8341         Elements without a group can do a state change as well, just wait
8342         with the setup of the scheduling function when it is added to a
8343         chain.
8344
8345 2004-05-27  Wim Taymans  <wim@fluendo.com>
8346
8347         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8348         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
8349         (merge_groups), (setup_group_scheduler),
8350         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
8351         (gst_opt_scheduler_show):
8352         Fixes to maintain internal consistency of the scheduler data
8353         structures. 
8354          - adding an enabled group to a chain should increment the
8355            number of enabled elements in that chain.
8356          - removing an enabled group from a chain could disable the
8357            chain.
8358          - removing a disabled group from a chain could enable the
8359            chain.
8360          - add g_assert when internal inconsistency is detected.
8361          - adding an element to a group could increase the number of
8362            links this group has with other groups.
8363          - merging two groups also merges the chains.
8364          - also show group links in the _show method.
8365            
8366
8367 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8368
8369         * gst/gstcaps.c: (gst_caps_structure_simplify):
8370           don't print error messages when there is no error
8371         * gst/gstvalue.c: (gst_value_compare_int_range):
8372           compare the second value, too
8373         * testsuite/caps/Makefile.am:
8374         * testsuite/caps/random.c: (assert_on_error), (main):
8375           add tests to make sure the two things above are checked for
8376
8377 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8378
8379         * configure.ac:
8380         * libs/gst/dataprotocol/Makefile.am:
8381         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
8382         * libs/gst/dataprotocol/dataprotocol.h:
8383           wrap header in GST_ENABLE_NEW.  make code use it
8384
8385 2004-05-23  Johan Dahlin  <johan@gnome.org>
8386
8387         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
8388         so verbose and print GstElement signal names all the time.
8389
8390 2004-05-22  David Schleef  <ds@schleef.org>
8391
8392         * gst/registries/gstxmlregistry.c:
8393         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
8394         (bug #142957)
8395
8396 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
8397
8398         * configure.ac:
8399           scrub cflags for glib2 so gcc doesn't complain when glib is in
8400           /usr/local
8401
8402 2004-05-21  Johan Dahlin  <johan@gnome.org>
8403
8404         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
8405         __GNUC__, patch from Brian Cameron, fixes bug #142804
8406
8407 2004-05-20  David Schleef  <ds@schleef.org>
8408
8409         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
8410         comparison code.  (bug #142819)
8411
8412 2004-05-20  Wim Taymans  <wim@fluendo.com>
8413
8414         * gst/gstbuffer.c: (gst_buffer_default_copy):
8415         * gst/gstbuffer.h:
8416         Added Comment to a flag.
8417         copy relevant flags in _buffer_copy.
8418
8419 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8420
8421         reviewed by: Wim Taymans <wim at fluendo dot com>
8422
8423         * gst/gstbuffer.h:
8424           add GST_BUFFER_IN_CAPS buffer flag
8425         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8426         (gst_structure_parse_any_list), (gst_structure_parse_list),
8427         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
8428         * gst/gstvalue.c: (gst_value_serialize_any_list),
8429         (gst_value_transform_any_list_string),
8430         (gst_value_list_prepend_value), (gst_value_list_append_value),
8431         (gst_value_list_get_size), (gst_value_list_get_value),
8432         (gst_value_transform_list_string),
8433         (gst_value_transform_fixed_list_string),
8434         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
8435         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
8436         (_gst_value_initialize):
8437         * gst/gstvalue.h:
8438           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
8439           < , > as a format.
8440         * testsuite/caps/string-conversions.c: (main):
8441           add regression tests for < >
8442
8443 2004-05-20  Johan Dahlin  <johan@gnome.org>
8444
8445         * docs/gst/Makefile.am (all-local): Re-add
8446
8447 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8448
8449         * docs/gst/Makefile.am:
8450         * docs/gst/gstreamer-docs.sgml:
8451         * docs/libs/Makefile.am:
8452         * docs/libs/gstreamer-libs-docs.sgml:
8453           fix distcheck issues
8454
8455 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8456
8457         * libs/gst/dataprotocol/Makefile.am:
8458           add to autotest
8459
8460 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8461
8462         * libs/gst/dataprotocol/Makefile.am:
8463         * libs/gst/dataprotocol/dataprotocol.c:
8464         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8465         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
8466         * libs/gst/dataprotocol/dp-private.h:
8467           use GST macros to read/write fixed length ints
8468           add some more asserts
8469
8470 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8471
8472         * docs/libs/gstreamer-libs-docs.sgml:
8473         * docs/libs/gstreamer-libs-sections.txt:
8474           remove idct and putbits
8475         * configure.ac:
8476         * docs/libs/tmpl/gstdataprotocol.sgml:
8477         * libs/gst/Makefile.am:
8478         * libs/gst/dataprotocol/Makefile.am:
8479         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
8480         (buffer_test), (caps_test), (event_test), (main):
8481         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
8482         (gst_dp_dump_byte_array), (gst_dp_init),
8483         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
8484         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8485         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
8486         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
8487         (gst_dp_validate_header), (gst_dp_validate_payload),
8488         (gst_dp_validate_packet), (plugin_init):
8489         * libs/gst/dataprotocol/dataprotocol.h:
8490         * libs/gst/dataprotocol/dp-private.h:
8491           add dataprotocol
8492
8493 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8494
8495         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
8496           fix int variable deserialization and add a helper so we can actually
8497           debug this.
8498
8499 2004-05-18  David Schleef  <ds@schleef.org>
8500
8501         * testsuite/debug/commandline.c: (main): Call ./commandline, not
8502           argv[0].  Calling yourself is probably not the best way to
8503           construct a test like this, btw.
8504
8505 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8506
8507         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
8508           don't claim to be more intelligent than a scheduler when the
8509           scheduler claims the pipeline is stopped
8510         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
8511         (safe_cothread_destroy),
8512         (gst_entry_scheduler_remove_all_cothreads),
8513         (gst_entry_scheduler_reset), (_remove_cothread),
8514         (gst_entry_scheduler_state_transition):
8515           hold off cothread destruction if we're not in main cothread
8516         * configure.ac:
8517         * testsuite/Makefile.am:
8518           add new test dir
8519         * testsuite/schedulers/.cvsignore:
8520         * testsuite/schedulers/Makefile.am:
8521           add tests
8522         * testsuite/schedulers/relink.c: (cb_handoff), (main):
8523           check relinking and adding/removing elements from a running pipeline
8524         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
8525           check unlinking in a running pipeline
8526         * testsuite/schedulers/unref.c: (cb_handoff), (main):
8527           check unreffing a running pipeline
8528         * testsuite/schedulers/useless_iteration.c: (main):
8529           check iterating a pipeline that contains running threads works
8530
8531 2004-05-18  David Schleef  <ds@schleef.org>
8532
8533         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
8534           is false.
8535
8536 2004-05-18  Wim Taymans  <wim@fluendo.com>
8537
8538         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8539         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
8540         Fixed an error introduced with patch for 1.63. When setting
8541         a get based element as the entry point in a group, make sure
8542         to mark the group as GET based.
8543
8544 2004-05-18  Wim Taymans  <wim@fluendo.com>
8545
8546         * gst/schedulers/gstoptimalscheduler.c: (create_group),
8547         (setup_group_scheduler), (loop_group_schedule_function),
8548         (gst_opt_scheduler_pad_link):
8549         Added some more debug info and fixed a bug where the group
8550         type was set to LOOP but it was in fact unknown.
8551
8552 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8553
8554         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
8555           make resetting scheduler work twice in a row
8556
8557 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8558
8559         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
8560         (CREATE_USERIALIZATION), (_gst_value_initialize),
8561         (gst_value_compare_float), (gst_value_serialize_float),
8562         (gst_value_deserialize_float), (gst_value_compare_enum),
8563         (gst_value_serialize_enum), (gst_value_deserialize_enum):
8564           add serialization and comparison functions for long, int64, enum and
8565           float values
8566         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
8567           use best serialization function in type hierarchy instead of only a
8568           matching one. This is required for enums to work.
8569         * gst/parse/grammar.y:
8570           use gst_caps_deserialize
8571         * testsuite/parse/Makefile.am:
8572           parse1 now works
8573         * testsuite/parse/parse1.c: (main):
8574           remove aggregator check, aggregator is broken, this test works now
8575           but fails because of bug #138012
8576         * testsuite/parse/parse2.c: (main):
8577           s/xvideosink/xvimagesink - this test looks a lot like we should
8578           disable it
8579
8580 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8581
8582         * gst/gstelement.c: (gst_element_class_init):
8583           whoops, store the signal id correctly
8584         * gst/schedulers/gstbasicscheduler.c:
8585         (gst_basic_scheduler_chain_wrapper):
8586           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
8587           chain function isn't linked
8588
8589 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
8590         * configure.ac:
8591         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
8592         support until we decide where the flags should be used
8593         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
8594         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
8595         * gst/gstpad.c: (gst_pad_link_call_link_functions):
8596         Output refused caps in the debug info
8597
8598 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8599
8600         * gst/elements/gstidentity.c: (gst_identity_chain):
8601           add duration debug
8602         * gst/gstinfo.c: (gst_debug_log_default):
8603           add timestamp
8604
8605 2004-05-13  Benjamin Otte  <otte@gnome.org>
8606
8607         * gst/gstpipeline.c: (gst_pipeline_dispose),
8608         (gst_pipeline_change_state):
8609           call gst_scheduler_reset on dispose (fixes #141416)
8610
8611 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8612
8613         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8614           compute mapsize correctly
8615         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8616           use correct datatypes when calling a varargs function
8617         * gst/elements/gsttypefindelement.c: (stop_typefinding):
8618           push a DISCONT event as first thing
8619         * gst/gst_private.h:
8620         * gst/gstinfo.c: (_gst_debug_init):
8621           remove GST_DATAFLOW debugging category
8622         * gst/gstbin.c: (gst_bin_iterate):
8623           use GST_SCHEDULING category
8624         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
8625         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
8626         (gst_pad_call_get_function):
8627           add GST_DATAFLOW to easily track flow of buffers or events.
8628         * gst/gstqueue.c: (gst_queue_get_type),
8629         (gst_queue_handle_pending_events), (gst_queue_chain),
8630         (gst_queue_get), (gst_queue_handle_src_event):
8631           use own static debugging category GST_DATAFLOW for dataflow,
8632           use DEBUG category for showing which path events go, use LOG
8633           category for buffers.
8634
8635 2004-05-10  David Schleef  <ds@schleef.org>
8636
8637         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
8638
8639 2004-05-10  David Schleef  <ds@schleef.org>
8640
8641         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
8642         symbols, because otherwise we don't know what they are.  Thanks,
8643         the GStreamer team.
8644         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
8645
8646 2004-05-10  David Schleef  <ds@schleef.org>
8647
8648         (from Steve Lhomme)
8649         * win32/Makefile: When using make clean the MS Visual Studio makefiles
8650         are deleted.  Fix.
8651         * win32/Makefile.inspect:
8652         * win32/Makefile.launch:
8653         * win32/Makefile.register:
8654
8655 2004-05-10  David Schleef  <ds@schleef.org>
8656
8657         * gst/gstinfo.h: Add missing inline function.
8658         * gst/gsttrace.c: add include
8659         * gst/parse/grammar.y: remove unused code
8660         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
8661         more portable.
8662         * tools/gst-register.c: wrap unistd.h
8663         
8664         More additions/fixes from Steve for the MSVC build.
8665         * win32/GStreamer.vcproj:
8666         * win32/Makefile:
8667         * win32/Makefile.inspect:
8668         * win32/Makefile.launch:
8669         * win32/Makefile.register:
8670         * win32/README.txt:
8671         * win32/gst-inspect.vcproj:
8672         * win32/gst-launch.vcproj:
8673         * win32/gst-register.vcproj:
8674         * win32/gstbytestream.def:
8675         * win32/gstbytestream.vcproj:
8676         * win32/gstconfig.h:
8677         * win32/gstelements.def:
8678         * win32/gstelements.vcproj:
8679         * win32/gstenumtypes.c:
8680         * win32/gstenumtypes.h:
8681         * win32/gstoptimalscheduler.def:
8682         * win32/gstoptimalscheduler.vcproj:
8683         * win32/gstreamer.def:
8684         * win32/gstspider.def:
8685         * win32/gstspider.vcproj:
8686         * win32/gstversion.h:
8687         * win32/msvc71.sln:
8688
8689 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8690
8691         * gst/gstelement.c: (gst_element_class_init),
8692         (gst_element_no_more_pads):
8693         * gst/gstelement.h:
8694           add gst_element_no_more_pads and the "no-more-pads" signal
8695
8696 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8697
8698         * gst/gstregistry.c: (gst_registry_add_plugin):
8699           refuse to add plugins when a plugin with same name is already
8700           registered. Fixes a bunch of "How to remove plugins?" issues.
8701           May lead to other problems though, let's test
8702
8703 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8704
8705         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
8706         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
8707         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
8708
8709 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8710
8711         * tests/Makefile.am: fix am16 issue
8712
8713 2004-05-09  Benjamin Otte  <otte@gnome.org>
8714
8715         * libs/gst/bytestream/Makefile.am:
8716           we should indeed add .c files to makefiles or they won't be built
8717           (d'oh)
8718
8719 2004-05-08  Benjamin Otte  <otte@gnome.org>
8720
8721         * gst/gstpad.c: (gst_pad_proxy_fixate):
8722           really reduce the set of caps
8723
8724 2004-05-08  Benjamin Otte  <otte@gnome.org>
8725
8726         * tests/Makefile.am:
8727         * tests/spidey_bench.c: (handoff), (main):
8728           add benchmark to test how long spider needs to create a pipeline
8729
8730 2004-05-08  Benjamin Otte  <otte@gnome.org>
8731
8732         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
8733           mark links as unengaged when unnegotiating instead of deactivating.
8734           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
8735
8736 2004-05-08  Benjamin Otte  <otte@gnome.org>
8737
8738         * docs/manual/helloworld.xml:
8739           s/audiosink/osssink (patch by Patrick Guimond)
8740
8741 2004-05-07  David Schleef  <ds@schleef.org>
8742
8743         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
8744         since it contains important stuff.
8745
8746 2004-05-07  David Schleef  <ds@schleef.org>
8747
8748         * testsuite/caps/caps.c: (test3), (main): A check for appending
8749         ANY caps.
8750
8751 2004-05-07  David Schleef  <ds@schleef.org>
8752
8753         * common/m4/as-compiler-flag.m4: Properly quote arguments,
8754         which may contain commas.  Fixes detection of -Wa,-mregnames
8755
8756 2004-05-06  David Schleef  <ds@schleef.org>
8757
8758         Changes to handle compilers that don't have variadic macro
8759         support.  In particular, glib headers define some inlines
8760         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
8761         builds.
8762         * gst/Makefile.am:
8763         * gst/cothreads.c:
8764         * gst/elements/gstfdsink.c:
8765         * gst/elements/gstfdsrc.c:
8766         * gst/elements/gstfilesink.c:
8767         * gst/elements/gstfilesrc.c:
8768         * gst/gst_private.h:
8769         * gst/gstatomic.c:
8770         * gst/gstcaps.c: (gst_caps_append):
8771         * gst/gstcpu.c: (gst_cpuid_i386):
8772         * gst/gstelement.c:
8773         * gst/gsterror.c:
8774         * gst/gstfilter.c:
8775         * gst/gstinfo.h:
8776         * gst/gstprobe.c:
8777         * gst/gstquery.c:
8778         * gst/gstregistry.c:
8779         * gst/gststructure.c:
8780         * gst/gsttaginterface.c:
8781         * gst/gsttrace.c: (gst_trace_new):
8782         * gst/gsttrashstack.c:
8783         * gst/gsturi.c:
8784         * gst/gstvalue.c:
8785         * gst/parse/grammar.y:
8786         * gst/parse/parse.l:
8787         * tools/gst-inspect.c: (main):
8788         * tools/gst-launch.c: (main):
8789         * tools/gst-xmlinspect.c: (PUT_STRING):
8790
8791 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8792
8793         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
8794         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
8795         * gst/elements/gstfilesrc.h:
8796           send NEW_MEDIA events correctly
8797         * gst/elements/gsttypefindelement.c: (start_typefinding),
8798         (gst_type_find_element_handle_event):
8799           restart typefinding when we get a NEW_MEDIA event
8800         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
8801         (gst_bin_dispose):
8802           don't die when someone removes elements in callbacks
8803         * gst/gstelement.c: (gst_element_change_state):
8804           improve debugging
8805         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
8806           we need a NEW_MEDIA event to engage a link
8807         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
8808           don't g_print debugging stuff
8809         * testsuite/caps/simplify.c: (check_caps):
8810
8811 2004-05-04  Benjamin Otte  <otte@gnome.org>
8812
8813         * gst/parse/grammar.y:
8814           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
8815
8816 2004-05-04  Benjamin Otte  <otte@gnome.org>
8817
8818         * testsuite/caps/renegotiate.c: (main):
8819           improve output in error case
8820
8821 2004-05-04  Benjamin Otte  <otte@gnome.org>
8822
8823         * gst/parse/grammar.y:
8824           fix assert to not trigger when there's no error argument
8825         * gst/parse/parse.l:
8826           fix definition of caps to allow more than two structures
8827         * testsuite/caps/Makefile.am:
8828         * testsuite/caps/renegotiate.c: (main):
8829           it's sinesrc and works in that case
8830
8831 2004-05-04  Wim Taymans  <wim@fluendo.com>
8832
8833         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8834         (group_dec_link), (gst_opt_scheduler_pad_unlink):
8835         when removing an element from a group, we always need to
8836         decrement the link count that this group had with other 
8837         groups through the element.
8838         added an extra assert to catch inconsistencies when decrementing
8839         the link count.
8840
8841 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8842
8843         * configure.ac:
8844         * docs/gst/Makefile.am:
8845         * docs/gst/gstreamer-sections.txt:
8846         * docs/gst/tmpl/gstcompat.sgml:
8847         * examples/appreader/Makefile.am:
8848         * examples/cutter/Makefile.am:
8849         * examples/events/Makefile.am:
8850         * examples/helloworld/Makefile.am:
8851         * examples/helloworld2/Makefile.am:
8852         * examples/launch/Makefile.am:
8853         * examples/manual/Makefile.am:
8854         * examples/mixer/Makefile.am:
8855         * examples/pingpong/Makefile.am:
8856         * examples/plugins/Makefile.am:
8857         * examples/queue/Makefile.am:
8858         * examples/queue2/Makefile.am:
8859         * examples/queue3/Makefile.am:
8860         * examples/queue4/Makefile.am:
8861         * examples/retag/Makefile.am:
8862         * examples/thread/Makefile.am:
8863         * examples/typefind/Makefile.am:
8864         * examples/xml/Makefile.am:
8865         * gst/Makefile.am:
8866         * gst/autoplug/Makefile.am:
8867         * gst/elements/Makefile.am:
8868         * gst/gstcompat.h:
8869         * gst/indexers/Makefile.am:
8870         * gst/parse/Makefile.am:
8871         * gst/registries/Makefile.am:
8872         * gst/schedulers/Makefile.am:
8873         * libs/gst/bytestream/Makefile.am:
8874         * libs/gst/control/Makefile.am:
8875         * libs/gst/getbits/Makefile.am:
8876         * po/af.po:
8877         * po/az.po:
8878         * po/en_GB.po:
8879         * po/fr.po:
8880         * po/nl.po:
8881         * po/sr.po:
8882         * po/sv.po:
8883         * po/tr.po:
8884         * po/uk.po:
8885         * tests/Makefile.am:
8886         * tests/bufspeed/Makefile.am:
8887         * tests/instantiate/Makefile.am:
8888         * tests/memchunk/Makefile.am:
8889         * tests/muxing/Makefile.am:
8890         * tests/negotiation/Makefile.am:
8891         * tests/probes/Makefile.am:
8892         * tests/sched/Makefile.am:
8893         * tests/seeking/Makefile.am:
8894         * tests/threadstate/Makefile.am:
8895         * testsuite/caps/Makefile.am:
8896         * testsuite/cleanup/Makefile.am:
8897         * testsuite/dlopen/Makefile.am:
8898         * testsuite/dynparams/Makefile.am:
8899         * testsuite/plugin/Makefile.am:
8900         * testsuite/states/Makefile.am:
8901         * tools/Makefile.am:
8902           reorganize compile/link flags to be consistent
8903           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
8904
8905 2004-05-04  David Schleef  <ds@schleef.org>
8906
8907         The "once more, with feeling" check-in.
8908         * testsuite/caps/Makefile.am: dist caps_strings
8909         * testsuite/caps/renegotiate.c: (main): This test triggers a
8910           segfault in the core.  Marking as failing.
8911
8912 2004-05-03  David Schleef  <ds@schleef.org>
8913
8914         * testsuite/caps/deserialize.c: (main): Fix problems noticed
8915           by the build bots.
8916         * testsuite/caps/renegotiate.c: (main): Same.
8917
8918 2004-05-03  David Schleef  <ds@schleef.org>
8919
8920         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
8921
8922 2004-05-03  David Schleef  <ds@schleef.org>
8923
8924         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
8925           variable to find our source file.
8926
8927 2004-05-03  David Schleef  <ds@schleef.org>
8928
8929         * configure.ac:  Link plugins with libgstreamer and dependent
8930           libraries
8931         * testsuite/caps/Makefile.am:
8932         * testsuite/caps/caps_strings:
8933         * testsuite/caps/deserialize.c: (main): Add a little test to slog
8934           through a file of caps strings and test each one
8935
8936 2004-05-04  Benjamin Otte  <otte@gnome.org>
8937
8938         * libs/gst/bytestream/Makefile.am:
8939         * libs/gst/bytestream/adapter.c: 
8940         * libs/gst/bytestream/adapter.h:
8941           add GstAdapter, similar to bytestream, but doesn't require ugly event
8942           handling or uglier loopbased elements
8943
8944 2004-05-03  David Schleef  <ds@schleef.org>
8945
8946         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
8947         * testsuite/caps/erathostenes.c:
8948         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
8949
8950 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8951
8952         * docs/pwg/pwg.xml:
8953           remove hardcoded stylesheet path (duh)
8954         * docs/random/release:
8955         * docs/gst/gstreamer-sections.txt:
8956         * gst/Makefile.am:
8957         * gst/gst.h:
8958         * gst/gst_private.h:
8959         * gst/gstcaps.c:
8960         * gst/gstevent.c:
8961         * gst/gstformat.c:
8962         * gst/gstinfo.c:
8963         * gst/gstinfo.h:
8964         * gst/gstinterface.c:
8965         * gst/gstmemchunk.c:
8966         * gst/gstprobe.c:
8967         * gst/gstquery.c:
8968         * gst/gstregistry.c:
8969         * gst/gstregistrypool.c:
8970         * gst/gststructure.c:
8971         * gst/gsttaginterface.c:
8972         * gst/gstthread.c:
8973         * gst/gsttrace.c:
8974         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
8975         * gst/gsturi.c:
8976         * gst/gstvalue.c:
8977           deprecate gst_info; remove gstlog.h
8978    
8979
8980 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8981
8982         * Makefile.am:
8983         * po/en_GB.po:
8984         * po/sv.po:
8985         * po/uk.po:
8986           updated translations
8987
8988 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8989
8990         * gst/gstbin.c: (gst_bin_dispose):
8991           better debugging
8992
8993 2004-05-03  Johan Dahlin  <johan@gnome.org>
8994
8995         * gst/schedulers/gstoptimalscheduler.c
8996         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
8997         really is a GstElement. Avoids critical when running gst-launch -v
8998         and a oggdemux/decoding pipeline.
8999
9000 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9001
9002         * docs/gst/tmpl/gstpipeline.sgml :
9003         * docs/manual/elements-api.xml :
9004                 doc fix by Patrick Guimond (Protector) from devel ML
9005                 reviewed by ronald
9006
9007 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9008
9009         * docs/gst/Makefile.am :
9010         * docs/libs/Makefile.am :
9011                 apply a patch from Arwed v. Merkatz so that gtk-doc
9012                 generated docs install (same for .devhelp file)
9013                 (fixes part 1 of #138836)
9014
9015 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9016
9017         * docs/faq/dependencies.xml: typo
9018         * docs/faq/getting.xml :
9019             - fix download URL for new gstreamer site
9020             - hide sf.net download page as latest version aren't there
9021             - fix apt URLs
9022             - fill "get via CVS" paragraph (link to dev page on the site)
9023         * docs/faq/general.xml:
9024             hide status tables as they no more exists
9025             change case on plugins license file to reflect reality
9026         * docs/faq/troubleshooting.xml:
9027             remove the wiki question/answer as there is no more wiki
9028
9029 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9030
9031         * gst/gsterror.h:
9032           include the headers needed for declarations used in this header
9033
9034 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9035
9036         * docs/random/uraeus/gstreamer_and_midi.txt :
9037           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
9038           (fixes #132288)
9039
9040 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
9041
9042         reviewed by Benjamin Otte  <otte@gnome.org>
9043
9044         * gst/schedulers/gthread-cothreads.h:
9045           free allocated data for main cothread, too when destroying context
9046           (fixes #141417)
9047
9048 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9049
9050         * docs/manual/goals.xml : remove duplicated paragraph at end 
9051         of doc page (fixes #141448)
9052
9053 2004-04-29  David Schleef  <ds@schleef.org>
9054
9055         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
9056         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
9057
9058 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9059
9060         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
9061           fix property
9062         * gst/gstcaps.c:
9063           fix doc string
9064         * po/POTFILES.in:
9065           rename typefind source file
9066
9067 2004-04-28  David Schleef  <ds@schleef.org>
9068
9069         Several new files from Steve Lhomme's MSVC patch (bug #141317):
9070         * win32/GStreamer.vcproj:
9071         * win32/Makefile:
9072         * win32/config.h:
9073         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
9074         (_trewinddir), (_ttelldir), (_tseekdir):
9075         * win32/dirent.h:
9076         * win32/gst-inspect.vcproj:
9077         * win32/gst-launch.vcproj:
9078         * win32/gst-register.vcproj:
9079         * win32/gstbytestream.vcproj:
9080         * win32/gstelements.vcproj:
9081         * win32/gstoptimalscheduler.vcproj:
9082         * win32/gstspider.vcproj:
9083         * win32/gtchar.h:
9084         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
9085         * win32/mman.h:
9086         * win32/mman.inl:
9087         * win32/msvc71.sln:
9088
9089 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9090
9091         * gst/gst.c: (init_post):
9092         * gst/gstinfo.c:
9093           remove useless _gst_progname stuff
9094         * tools/gst-inspect.c: (print_field), (print_caps):
9095           improve caps output
9096
9097 2004-04-28  David Schleef  <ds@schleef.org>
9098
9099         Disable parsing of a lot of files that aren't part of the
9100         exported API.  Move corresponding template files to old/,
9101         waiting for removal when they don't contain anything
9102         interesting.
9103         * docs/gst/Makefile.am:
9104         * docs/gst/gstreamer-sections.txt:
9105         * docs/gst/tmpl/cothreads.sgml:
9106         * docs/gst/tmpl/cothreads_compat.sgml:
9107         * docs/gst/tmpl/gettext.sgml:
9108         * docs/gst/tmpl/gobject2gtk.sgml:
9109         * docs/gst/tmpl/grammar.tab.sgml:
9110         * docs/gst/tmpl/gst-i18n-app.sgml:
9111         * docs/gst/tmpl/gst-i18n-lib.sgml:
9112         * docs/gst/tmpl/gst_private.sgml:
9113         * docs/gst/tmpl/gstaggregator.sgml:
9114         * docs/gst/tmpl/gstarch.sgml:
9115         * docs/gst/tmpl/gstatomic_impl.sgml:
9116         * docs/gst/tmpl/gstbufferstore.sgml:
9117         * docs/gst/tmpl/gstdata_private.sgml:
9118         * docs/gst/tmpl/gstdisksink.sgml:
9119         * docs/gst/tmpl/gstdisksrc.sgml:
9120         * docs/gst/tmpl/gstelementfactory.sgml:
9121         * docs/gst/tmpl/gstextratypes.sgml:
9122         * docs/gst/tmpl/gstfakesink.sgml:
9123         * docs/gst/tmpl/gstfakesrc.sgml:
9124         * docs/gst/tmpl/gstfdsink.sgml:
9125         * docs/gst/tmpl/gstfdsrc.sgml:
9126         * docs/gst/tmpl/gstfilesink.sgml:
9127         * docs/gst/tmpl/gstfilesrc.sgml:
9128         * docs/gst/tmpl/gsthttpsrc.sgml:
9129         * docs/gst/tmpl/gstidentity.sgml:
9130         * docs/gst/tmpl/gstindexfactory.sgml:
9131         * docs/gst/tmpl/gstmarshal.sgml:
9132         * docs/gst/tmpl/gstmd5sink.sgml:
9133         * docs/gst/tmpl/gstmultidisksrc.sgml:
9134         * docs/gst/tmpl/gstmultifilesrc.sgml:
9135         * docs/gst/tmpl/gstpadtemplate.sgml:
9136         * docs/gst/tmpl/gstpipefilter.sgml:
9137         * docs/gst/tmpl/gstschedulerfactory.sgml:
9138         * docs/gst/tmpl/gstsearchfuncs.sgml:
9139         * docs/gst/tmpl/gstshaper.sgml:
9140         * docs/gst/tmpl/gstspider.sgml:
9141         * docs/gst/tmpl/gstspideridentity.sgml:
9142         * docs/gst/tmpl/gststatistics.sgml:
9143         * docs/gst/tmpl/gsttee.sgml:
9144         * docs/gst/tmpl/gsttimecache.sgml:
9145         * docs/gst/tmpl/gsttypefind.sgml:
9146         * docs/gst/tmpl/gsttypefindfactory.sgml:
9147         * docs/gst/tmpl/gstxmlregistry.sgml:
9148         * docs/gst/tmpl/gthread-cothreads.sgml:
9149         * docs/gst/tmpl/old/cothreads.sgml:
9150         * docs/gst/tmpl/old/cothreads_compat.sgml:
9151         * docs/gst/tmpl/old/gettext.sgml:
9152         * docs/gst/tmpl/old/gobject2gtk.sgml:
9153         * docs/gst/tmpl/old/grammar.tab.sgml:
9154         * docs/gst/tmpl/old/gst-i18n-app.sgml:
9155         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
9156         * docs/gst/tmpl/old/gst_private.sgml:
9157         * docs/gst/tmpl/old/gstaggregator.sgml:
9158         * docs/gst/tmpl/old/gstarch.sgml:
9159         * docs/gst/tmpl/old/gstatomic_impl.sgml:
9160         * docs/gst/tmpl/old/gstbufferstore.sgml:
9161         * docs/gst/tmpl/old/gstdata_private.sgml:
9162         * docs/gst/tmpl/old/gstdisksink.sgml:
9163         * docs/gst/tmpl/old/gstdisksrc.sgml:
9164         * docs/gst/tmpl/old/gstelementfactory.sgml:
9165         * docs/gst/tmpl/old/gstextratypes.sgml:
9166         * docs/gst/tmpl/old/gstfakesink.sgml:
9167         * docs/gst/tmpl/old/gstfakesrc.sgml:
9168         * docs/gst/tmpl/old/gstfdsink.sgml:
9169         * docs/gst/tmpl/old/gstfdsrc.sgml:
9170         * docs/gst/tmpl/old/gstfilesink.sgml:
9171         * docs/gst/tmpl/old/gstfilesrc.sgml:
9172         * docs/gst/tmpl/old/gsthttpsrc.sgml:
9173         * docs/gst/tmpl/old/gstidentity.sgml:
9174         * docs/gst/tmpl/old/gstindexfactory.sgml:
9175         * docs/gst/tmpl/old/gstmarshal.sgml:
9176         * docs/gst/tmpl/old/gstmd5sink.sgml:
9177         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
9178         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
9179         * docs/gst/tmpl/old/gstpadtemplate.sgml:
9180         * docs/gst/tmpl/old/gstpipefilter.sgml:
9181         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
9182         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
9183         * docs/gst/tmpl/old/gstshaper.sgml:
9184         * docs/gst/tmpl/old/gstspider.sgml:
9185         * docs/gst/tmpl/old/gstspideridentity.sgml:
9186         * docs/gst/tmpl/old/gststatistics.sgml:
9187         * docs/gst/tmpl/old/gsttee.sgml:
9188         * docs/gst/tmpl/old/gsttimecache.sgml:
9189         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
9190         * docs/gst/tmpl/old/gstxmlregistry.sgml:
9191         * docs/gst/tmpl/old/gthread-cothreads.sgml:
9192         * docs/gst/tmpl/old/types.sgml:
9193         * docs/gst/tmpl/types.sgml:
9194
9195         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
9196         gtkdoc-scan doesn't like files with the same name in different
9197         directories.
9198         * gst/elements/Makefile.am:
9199         * gst/elements/gstelements.c:
9200         * gst/elements/gsttypefind.c: 
9201         * gst/elements/gsttypefind.h:
9202         * gst/elements/gsttypefindelement.c:
9203         * gst/elements/gsttypefindelement.h:
9204
9205 2004-04-28  David Schleef  <ds@schleef.org>
9206
9207         A bunch of portability fixes, derived from Steve Lhomme's MSVC
9208         patch (bug #141317):
9209         * gst/gst-i18n-lib.h: Allow disabling gettext.
9210         * gst/gstatomic_impl.h: disable warning when it's dumb.
9211         * gst/gstclock.c: fix include
9212         * gst/gstcompat.h: fix variadic macro
9213         * gst/gstinfo.c: fix include
9214         * gst/gstmacros.h: add defines for inlines on MSVC
9215         * gst/gstplugin.c: fix includes
9216         * gst/gstregistry.c: fix includes
9217         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
9218         * gst/gstsystemclock.c: fix include
9219         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
9220         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
9221         * gst/registries/gstxmlregistry.c:
9222         (gst_xml_registry_parse_element_factory): fix use of non-portable
9223         functions
9224         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
9225         * libs/gst/control/dparammanager.h: same
9226
9227 2004-04-28  David Schleef  <ds@schleef.org>
9228
9229         Move a bunch of unused files to old/ with names that are
9230         not case-insensitive-unique.  These files still contain some
9231         useful information that needs to be merged into gstbin.sgml,
9232         etc., so they shouldn't be deleted yet.
9233         * docs/gst/tmpl/GstBin.sgml:
9234         * docs/gst/tmpl/GstBuffer.sgml:
9235         * docs/gst/tmpl/GstCaps.sgml:
9236         * docs/gst/tmpl/GstClock.sgml:
9237         * docs/gst/tmpl/GstCompat.sgml:
9238         * docs/gst/tmpl/GstData.sgml:
9239         * docs/gst/tmpl/GstElement.sgml:
9240         * docs/gst/tmpl/GstEvent.sgml:
9241         * docs/gst/tmpl/GstIndex.sgml:
9242         * docs/gst/tmpl/GstStructure.sgml:
9243         * docs/gst/tmpl/GstTag.sgml:
9244         * docs/gst/tmpl/old/GstBin.sgml:
9245         * docs/gst/tmpl/old/GstBuffer.sgml:
9246         * docs/gst/tmpl/old/GstCaps.sgml:
9247         * docs/gst/tmpl/old/GstClock.sgml:
9248         * docs/gst/tmpl/old/GstCompat.sgml:
9249         * docs/gst/tmpl/old/GstData.sgml:
9250         * docs/gst/tmpl/old/GstElement.sgml:
9251         * docs/gst/tmpl/old/GstEvent.sgml:
9252         * docs/gst/tmpl/old/GstIndex.sgml:
9253         * docs/gst/tmpl/old/GstStructure.sgml:
9254         * docs/gst/tmpl/old/GstTag.sgml:
9255
9256 2004-04-28  David Schleef  <ds@schleef.org>
9257
9258         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
9259         (gst_caps_append), (gst_caps_append_structure),
9260         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
9261         (gst_caps_set_simple), (gst_caps_set_simple_valist),
9262         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
9263         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
9264         (gst_caps_intersect), (gst_caps_normalize),
9265         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
9266         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
9267         * gst/gstcaps.h: use GST_IS_CAPS().
9268
9269 2004-04-26  David Schleef  <ds@schleef.org>
9270
9271         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
9272         assembly.  gcc doesn't handle it correctly. (bug #141083)
9273         * gst/gsttrashstack.h: same
9274
9275 2004-04-25  Benjamin Otte  <otte@gnome.org>
9276
9277         * gst/gstelement.c: (gst_element_change_state):
9278           fix assertion to do an int comparison
9279
9280 2004-04-25  Benjamin Otte  <otte@gnome.org>
9281
9282         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9283           better debugging output on error
9284
9285 2004-04-25  Benjamin Otte  <otte@gnome.org>
9286
9287         * gst/gstcaps.c: (gst_caps_subtract):
9288           fix memleak
9289
9290 2004-04-23  Benjamin Otte  <otte@gnome.org>
9291
9292         * gst/gstvalue.c: (gst_value_compare_buffer),
9293         (_gst_value_initialize):
9294           add comparison function for buffers
9295
9296 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9297
9298         * docs/pwg/pwg.xml:
9299           Just found out that this so-called "ima-wav" format is really
9300           just "dvi adpcm" (according to the MS WAV documentation). So
9301           renaming it. We didn't use it yet anyway.
9302
9303 2004-04-23  Benjamin Otte  <otte@gnome.org>
9304
9305         * gst/gstcaps.c: (gst_caps_is_always_compatible):
9306           call gst_caps_is_subset
9307
9308 2004-04-23  Benjamin Otte  <otte@gnome.org>
9309
9310         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
9311         (gst_caps_is_subset):
9312           add documentation
9313
9314 2004-04-23  Benjamin Otte  <otte@gnome.org>
9315           
9316         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
9317         (gst_caps_structure_subtract), (gst_caps_subtract),
9318         (gst_caps_structure_figure_out_union),
9319         (gst_caps_structure_simplify), (gst_caps_do_simplify):
9320           fix simplifying and subtracting not working correctly with optional
9321           properties
9322           solve assorted problems that make it now simplify ebven more
9323         * docs/gst/tmpl/gstcaps.sgml:
9324         * gst/gstcaps.h:
9325           make gst_caps_do_simplify return a bool to indicate if it simplified
9326         * testsuite/caps/simplify.c: (main):
9327           add more checks. The tests is quite a bit useless right now because
9328           the core is heavily simplifying itself.
9329         * testsuite/caps/caps.h:
9330           fix caps to contain all optional properties
9331
9332 2004-04-22  Benjamin Otte  <otte@gnome.org>
9333
9334         * docs/gst/tmpl/gstcaps.sgml:
9335         * docs/gst/tmpl/gstfilesrc.sgml:
9336         * docs/gst/tmpl/gststructure.sgml:
9337         * docs/gst/tmpl/gstvalue.sgml:
9338           update for recent API changes
9339         * gst/gstcaps.c: (gst_caps_do_simplify):
9340           fix to stop trying with a freed structure
9341         * gst/gstpad.c: (gst_pad_link_fixate):
9342           simplify caps
9343         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
9344           remove C++ comment
9345         * gst/gstpad.h:
9346           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
9347         * gst/gststructure.c: (gst_structure_value_get_generic_type),
9348         (gst_structure_to_string):
9349           keep the correct type when using lists of ranges
9350         * gst/gstvalue.c: (gst_value_list_prepend_value),
9351         (gst_value_list_append_value):
9352           copy the value before adding to the list (d'oh)
9353         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
9354         (gst_value_subtract_int_range_int_range):
9355           handle overflows correctly
9356         * gst/gstvalue.c: (gst_value_subtract_from_list):
9357           fix memleak
9358         * testsuite/caps/caps.h:
9359           add a caps that caused segfaults
9360
9361 2004-04-22  Benjamin Otte  <otte@gnome.org>
9362
9363         * testsuite/refcounting/pad.c: (main):
9364           fix test
9365
9366 2004-04-22  Benjamin Otte  <otte@gnome.org>
9367
9368         * gst/gstcaps.c: (gst_caps_subtract):
9369           allow subtracting ANY and EMPTY from ANY caps
9370
9371 2004-04-22  Benjamin Otte  <otte@gnome.org>
9372
9373         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
9374         (gst_caps_union):
9375           only simplify in functions that create new caps. Simplifying in
9376           gst_caps_append breaks tests.
9377
9378 2004-04-22  Benjamin Otte  <otte@gnome.org>
9379
9380         * gst/gstcaps.c: (gst_caps_structure_simplify):
9381           unset GValue after use
9382         * gst/gstcaps.c: (gst_caps_append), 
9383         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
9384           use gst_caps_simplify (reduces registry size by 30%)
9385         * gst/gstpad.c: (gst_pad_template_new):
9386           don't allow NULL caps
9387
9388 2004-04-22  Benjamin Otte  <otte@gnome.org>
9389
9390         * docs/gst/gstreamer-sections.txt:
9391           add gst_caps_do_simplify
9392         * gst/gstcaps.c:
9393           add documentation for gst_caps_do_simplify
9394         * gst/gstvalue.h:
9395           fix typo in gst_value_register_subtract_func declaration for gst-doc
9396
9397 2004-04-22  Benjamin Otte  <otte@gnome.org>
9398
9399         * gst/gstcaps.c: (gst_caps_from_string_inplace):
9400           fix bug when converting from empty string.
9401         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
9402         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
9403           use gst_caps_new_empty to allocate a new caps. Only that function
9404           allocates memory for caps now.
9405         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
9406         (gst_caps_remove_structure):
9407           add ability to remove one structure (but not to header yet)
9408         * gst/gstcaps.c: (gst_caps_compare_structures),
9409         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
9410         (gst_caps_structure_simplify), (gst_caps_do_simplify),
9411         * gst/gstcaps.h:
9412           add gst_caps_do_simplify that tries to simplify a caps in place.
9413           Deprecate old gst_caps_simplify function.
9414         * testsuite/caps/caps.h:
9415           add caps.h containing a common set of caps to test against.
9416         * testsuite/caps/sets.c: (check_caps), (main):
9417           use it.
9418         * testsuite/caps/.cvsignore:
9419         * testsuite/caps/Makefile.am:
9420         * testsuite/caps/simplify.c: (check_caps), (main):
9421           add test to check correctness and efficency of caps simplification.
9422
9423 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
9424
9425         reviewed by Benjamin Otte  <otte@gnome.org>
9426
9427         * gst/gstparse.c: (_gst_parse_escape):
9428           Free the GString used in _gst_parse_escape()
9429
9430 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9431
9432         * gst/gstpad.c: (gst_pad_link_negotiate):
9433           refuse to link if the link is not possible
9434         * configure.ac:
9435         * testsuite/Makefile.am:
9436         * testsuite/negotiation/.cvsignore:
9437         * testsuite/negotiation/Makefile.am:
9438         * testsuite/negotiation/pad_link.c: (main):
9439           add test that checks the above behaviour
9440
9441 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9442
9443         * docs/gst/gstreamer-sections.txt:
9444           add newly added API
9445
9446 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9447
9448         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9449         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
9450         (gst_filesrc_open_file), (gst_filesrc_close_file),
9451         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
9452         * gst/elements/gstfilesrc.h:
9453           add support for non-regular files (#140734)
9454
9455 2004-04-21  Benjamin Otte  <otte@gnome.org>
9456
9457         * gst/gstpad.c: (gst_pad_link_fixate):
9458           add sophisticated error checking code to see if fixation functions
9459           did their fixation right
9460
9461 2004-04-21  Benjamin Otte  <otte@gnome.org>
9462
9463         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
9464           check for ANY caps before appending/unioning
9465         * gst/gstcaps.c: (gst_caps_is_subset),
9466         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
9467         (gst_caps_structure_subtract), (gst_caps_subtract):
9468         * gst/gstcaps.h:
9469           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
9470           the API. deprecate gst_caps_is_equal_fixed
9471         * gst/gstpad.c: (gst_pad_try_set_caps):
9472         * gst/gstqueue.c: (gst_queue_link):
9473           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
9474         * gst/gststructure.c: (gst_structure_get_name_id):
9475         * gst/gststructure.h:
9476           add function gst_structure_get_name_id
9477         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
9478         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
9479         (gst_value_subtract_int_range_int_range),
9480         (gst_value_subtract_double_double_range),
9481         (gst_value_subtract_double_range_double),
9482         (gst_value_subtract_double_range_double_range),
9483         (gst_value_subtract_from_list), (gst_value_subtract_list),
9484         (gst_value_can_intersect), (gst_value_subtract),
9485         (gst_value_can_subtract), (gst_value_register_subtract_func),
9486         (_gst_value_initialize):
9487         * gst/gstvalue.h:
9488           add support for subtracting values from each other. Note that
9489           subtracting means subtracting as in set theory. Required for caps
9490           stuff above.
9491         * testsuite/caps/.cvsignore:
9492         * testsuite/caps/Makefile.am:
9493         * testsuite/caps/erathostenes.c: (erathostenes), (main):
9494         * testsuite/caps/sets.c: (check_caps), (main):
9495         * testsuite/caps/subtract.c: (check_caps), (main):
9496           add tests for subtraction and equality code.
9497
9498 2004-04-20  David Schleef  <ds@schleef.org>
9499
9500         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
9501         * gst/indexers/Makefile.am:
9502         * gst/schedulers/Makefile.am:
9503         * libs/gst/bytestream/Makefile.am:
9504         * libs/gst/control/Makefile.am:
9505         * libs/gst/getbits/Makefile.am:
9506
9507 2004-04-20  David Schleef  <ds@schleef.org>
9508
9509         * common/as-libtool.mak: Fine-tune DLL building.
9510         * configure.ac: Link plugins against libgstreamer.  Define plugindir
9511         (like gst-plugins)
9512         * examples/plugins/Makefile.am: remove plugindir
9513         * gst/autoplug/Makefile.am: DLL building fixes
9514         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
9515         Windows.
9516         * gst/elements/gstelements.c: Conditionally disable pipefilter.
9517         * gst/indexers/Makefile.am: DLL building fixes
9518         * gst/schedulers/Makefile.am: DLL building fixes.
9519         * libs/gst/bytestream/Makefile.am: DLL building fixes.
9520         * libs/gst/control/Makefile.am: same
9521         * libs/gst/getbits/Makefile.am: same
9522         * testsuite/Makefile.am: New dlopen directory
9523         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
9524         when dlopened.
9525         * testsuite/dlopen/dlopen_gst.c: (main): same
9526         * testsuite/dlopen/loadgst.c: (do_test): same
9527
9528 2004-04-20  David Schleef  <ds@schleef.org>
9529
9530         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
9531         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
9532
9533 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9534
9535         * gst/gstelement.c: (gst_element_wait),
9536         (gst_element_set_time_delay), (gst_element_change_state):
9537           Use GST_TIME_*
9538
9539 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9540
9541         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
9542         (gst_spider_identity_plug):
9543           improve debugging messages
9544         * gst/gstbin.c: (gst_bin_remove_func):
9545           make sure the state_change function is only called with simple state
9546           transitions
9547
9548 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9549
9550         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
9551         (gst_fakesink_set_property), (gst_fakesink_chain):
9552         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
9553         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
9554         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
9555         * gst/elements/gstidentity.c: (gst_identity_chain),
9556         (gst_identity_set_property):
9557         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
9558         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
9559           add warnings to _set_property for unknown arguments
9560           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
9561
9562 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9563
9564         * Makefile.am:
9565         * docs/manuals.mak:
9566           add .po file download snippet
9567           fix a bug in the doc makefile
9568
9569 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9570
9571         * Makefile.am:
9572         * po/LINGUAS:
9573         * po/en_GB.po:
9574           Added en_GB translation (Gareth Owen)
9575
9576 2004-04-20  Johan Dahlin  <johan@gnome.org>
9577
9578         * gst/gstpad.c (_invent_event): Clean up
9579
9580 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9581
9582         * testsuite/caps/filtercaps.c: (main):
9583           fix test to test things correctly (caps are complicated)
9584
9585 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9586
9587         * testsuite/caps/Makefile.am:
9588         * testsuite/caps/filtercaps.c: (main):
9589           add test (that doesn't work right now, but should)
9590
9591 2004-04-19  David Schleef  <ds@schleef.org>
9592
9593         * configure.ac: Add test for allowing unaligned access.  Add define
9594         to put in gstconfig.h.
9595         * docs/gst/gstreamer-sections.txt: New symbols
9596         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
9597         * docs/gst/tmpl/gstfilesrc.sgml:
9598         * docs/gst/tmpl/gstparse.sgml:
9599         * docs/gst/tmpl/gsttypes.sgml:
9600         * docs/gst/tmpl/gstutils.sgml:
9601         * docs/gst/tmpl/gstvalue.sgml:
9602         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
9603         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
9604         on most !i386/!powerpc architectures.  From Daniel Gazard
9605         <daniel.gazard@free.fr>.  (bug #140156)
9606         * po/af.po: Check in changes made by gettext.
9607         * po/az.po:
9608         * po/fr.po:
9609         * po/nl.po:
9610         * po/sr.po:
9611         * po/sv.po:
9612
9613 2004-04-20  Benjamin Otte  <otte@gnome.org>
9614
9615         * gst/schedulers/entryscheduler.c: 
9616         (gst_entry_scheduler_yield):
9617           refuse to yield when decoupled elements insist on doing that.
9618           At least it's better than crashing
9619
9620 2004-04-19  David Schleef  <ds@schleef.org>
9621
9622         * docs/libs/Makefile.am: Change sinclude to include
9623         * docs/gst/Makefile.am: same
9624         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
9625
9626 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9627
9628         * po/LINGUAS:
9629         * po/uk.po:
9630           Added Ukrainian translation (Maxim V. Dziumanenko)
9631
9632 2004-04-19  Johan Dahlin  <johan@gnome.org>
9633
9634         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
9635         checking here, do it before calling the function.
9636         Clean up, use for loops instead of while loops while iterating
9637         over lists.
9638
9639         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
9640         in debug message.
9641         (gst_spider_create_and_plug): Improve debug message.
9642         General: Replace while loops which iterates over GLists with for
9643         loops. Which are much cleaner, improves readability, especially
9644         for gst_spider_identity_plug
9645
9646         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
9647         fixes bug 140477
9648
9649 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9650
9651         * po/LINGUAS:
9652         * po/tr.po:
9653           Added Turkish translation (Baris Cicek)
9654
9655 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9656
9657         * docs/faq/troubleshooting.xml:
9658           Mention gst-register in the FAQ (fixes 139045).
9659
9660 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9661
9662         * docs/gst/gstreamer-sections.txt:
9663
9664 2004-04-17  Benjamin Otte  <otte@gnome.org>
9665
9666         * gst/gstelement.c: (gst_element_dispose):
9667           simplify
9668         * gst/gstpad.c: (gst_pad_call_chain_function):
9669           don't create loads of events due to bad macro usage
9670
9671 2004-04-16  David Schleef  <ds@schleef.org>
9672
9673         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
9674         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
9675         * gst/gstvalue.c: (gst_value_serialize_buffer),
9676         (gst_value_deserialize_buffer), (gst_type_is_fixed),
9677         (_gst_value_initialize): Create a new function gst_type_is_fixed()
9678         to indicate types that are fixed wrt caps or not.  Switching to
9679         this function fixes (bug #140298).
9680         * gst/gstvalue.h:
9681
9682 2004-04-16  David Schleef  <ds@schleef.org>
9683
9684         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
9685         for GST_UNALIGNED_ACESS, since we essentially know which archs
9686         are ok.
9687
9688 2004-04-17  Benjamin Otte  <otte@gnome.org>
9689
9690         * docs/gst/Makefile.am:
9691           ignore gst/parse directory when building docs (fixes #140205)
9692
9693 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9694
9695         * testsuite/refcounting/mem.c: (vmsize):
9696           do error checking
9697
9698 2004-04-16  Johan Dahlin  <johan@gnome.org>
9699
9700         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
9701         and gst_pad_call_get_function.
9702
9703 2004-04-15  David Schleef  <ds@schleef.org>
9704
9705         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
9706         checks if we can access unaligned memory.
9707         * configure.ac: Use it.
9708
9709 2004-04-16  Benjamin Otte  <otte@gnome.org>
9710
9711         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
9712         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9713         * gst/elements/gstfilesrc.h:
9714           s/seek_happened/need_discont/ and require discont before sending any
9715           data
9716
9717 2004-04-15  David Schleef  <ds@schleef.org>
9718
9719         * gst/gstvalue.c: (gst_value_serialize_buffer),
9720         (gst_value_deserialize_buffer), (_gst_value_initialize):
9721         Register these types as fundamental types. (bug #140015)
9722
9723 2004-04-16  Benjamin Otte  <otte@gnome.org>
9724
9725         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
9726         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
9727         (gst_pad_pull):
9728           implement enforcing discont events before buffers are passed. This
9729           allows state changes of only some elements and later correctly going
9730           on where they left off (or in short: you can now set audio sinks to
9731           NULL to release the device when the pipeline is paused)
9732         * gst/gstpad.c: (gst_pad_call_chain_function),
9733         (gst_pad_call_get_function):
9734         * gst/gstpad.h:
9735           add gst_pad_call_chain_function and gst_pad_call_get_function for
9736           scheduler interaction. They are required because of the changes
9737           above.
9738         * gst/schedulers/entryscheduler.c: (get_buffer),
9739         (gst_entry_scheduler_chain_wrapper),
9740         (gst_entry_scheduler_get_wrapper),
9741         (gst_entry_scheduler_state_transition),
9742         (gst_entry_scheduler_pad_link):
9743         * gst/schedulers/gstbasicscheduler.c:
9744         (gst_basic_scheduler_chain_wrapper),
9745         (gst_basic_scheduler_src_wrapper),
9746         (gst_basic_scheduler_chainhandler_proxy),
9747         (gst_basic_scheduler_gethandler_proxy),
9748         (gst_basic_scheduler_cothreaded_chain),
9749         (gst_basic_scheduler_chain_elements):
9750         * gst/schedulers/gstoptimalscheduler.c:
9751         (get_group_schedule_function), (pad_clear_queued),
9752         (gst_opt_scheduler_pad_link):
9753           use the new functions instead of calling get/chain-functions
9754           directly.
9755
9756 2004-04-15  David Schleef  <ds@schleef.org>
9757
9758         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
9759         * docs/gst/tmpl/gstinfo.sgml: same
9760         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
9761         gtk-doc put here.
9762         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
9763         * examples/queue/queue.c: (main):  We iterate pipelines, not
9764         bins.  (bug #139996)
9765
9766 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9767
9768         * docs/pwg/advanced-types.xml:
9769           Add MS RLE support. Also document Qt RLE although I have no sample
9770           files for that yet. And document an extra property for ADPCM.
9771
9772 2004-04-15  David Schleef  <ds@schleef.org>
9773
9774         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
9775         (_gst_plugin_fault_handler_setup):  Disable more stuff on
9776         Windows.
9777
9778 2004-04-15  David Schleef  <ds@schleef.org>
9779
9780         * gst/gstinfo.c: (_gst_debug_init): Change some internal
9781         symbol names to not conflict with new gstinfo.h symbols.
9782         * gst/gstinfo.h: Add inline functions for all those crazy
9783         compilers that don't know how to handle variadic macros (MSVC).
9784
9785 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9786
9787         * configure.ac: bump nano to 1
9788
9789 === release 0.8.1 ===
9790
9791 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9792
9793         * NEWS:
9794         * RELEASE:
9795         * configure.ac:
9796           releasing 0.8.1, "Snow Brigade"
9797
9798 2004-04-14  David Schleef  <ds@schleef.org>
9799
9800         * testsuite/Makefile.am: define tests_ignore
9801         * testsuite/Rules: Added new tests_ignore, which get compiled,
9802         but not run (generally because they're inconsistent or have
9803         heisenbugs).  Now we can ensure all the .c files compile in
9804         testsuite/.
9805         * testsuite/bins/Makefile.am: define tests_ignore
9806         * testsuite/bytestream/Makefile.am:
9807         * testsuite/caps/Makefile.am:
9808         * testsuite/clock/Makefile.am:
9809         * testsuite/debug/Makefile.am:
9810         * testsuite/debug/global.c: (gst_debug_log_one),
9811         (gst_debug_log_two): Fix compilation problem.
9812         * testsuite/dynparams/Makefile.am:
9813         * testsuite/elements/Makefile.am:
9814         * testsuite/ghostpads/Makefile.am:
9815         * testsuite/indexers/Makefile.am:
9816         * testsuite/parse/Makefile.am:
9817         * testsuite/plugin/Makefile.am:
9818         * testsuite/refcounting/Makefile.am:
9819         * testsuite/refcounting/element_pad.c: (main): Don't return leak
9820         results, because it's not calculated correctly.
9821         * testsuite/refcounting/pad.c: (main): same
9822         * testsuite/states/Makefile.am:
9823         * testsuite/tags/Makefile.am:
9824         * testsuite/threads/Makefile.am:
9825
9826 2004-04-14  David Schleef  <ds@schleef.org>
9827
9828         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
9829         generating bad code around the cpu detection asm code.
9830
9831 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
9832
9833         * tools/gst-inspect.c: (print_element_info):
9834           print numeric version of rank as well, since we added some - 1
9835           rank values to elements
9836
9837 2004-04-13  David Schleef  <ds@schleef.org>
9838
9839         * configure.ac:  Disable various code when compiling for MinGW.
9840         * gst/elements/Makefile.am:
9841         * gst/elements/gstelements.c:
9842         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
9843         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
9844         * gst/registries/gstxmlregistry.c: (make_dir):
9845
9846 2004-04-13  David Schleef  <ds@schleef.org>
9847
9848         * gst/Makefile.am:
9849         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
9850         assembly.
9851         * gst/gstcpuid_i386.s: remove
9852
9853 2004-04-13  David Schleef  <ds@schleef.org>
9854
9855         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
9856         seems to think it needs to be done.
9857         * docs/gst/tmpl/gstfakesink.sgml:
9858         * docs/gst/tmpl/gstfakesrc.sgml:
9859         * docs/gst/tmpl/gstfdsink.sgml:
9860         * docs/gst/tmpl/gstfdsrc.sgml:
9861         * docs/gst/tmpl/gstfilesink.sgml:
9862         * docs/gst/tmpl/gstfilesrc.sgml:
9863         * docs/gst/tmpl/gstidentity.sgml:
9864         * docs/gst/tmpl/gstmd5sink.sgml:
9865         * docs/gst/tmpl/gstmultifilesrc.sgml:
9866         * docs/gst/tmpl/gstpipefilter.sgml:
9867         * docs/gst/tmpl/gstshaper.sgml:
9868         * docs/gst/tmpl/gstspider.sgml:
9869         * docs/gst/tmpl/gstspideridentity.sgml:
9870         * docs/gst/tmpl/gststatistics.sgml:
9871         * docs/gst/tmpl/gsttee.sgml:
9872         * docs/gst/tmpl/gsttypefind.sgml:
9873         * docs/gst/tmpl/gstutils.sgml:
9874
9875 2004-04-13  David Schleef  <ds@schleef.org>
9876
9877         * configure.ac: Changes to remove POSIXisms (mmap in this case)
9878         and to build DLLs on Windows.
9879         * gst/Makefile.am:
9880         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9881         (gst_filesrc_open_file):
9882         * gst/schedulers/Makefile.am:
9883
9884 2004-04-13  David Schleef  <ds@schleef.org>
9885
9886         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
9887         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
9888         fixating lists.
9889
9890 2004-04-12  David Schleef  <ds@schleef.org>
9891
9892         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
9893         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
9894         to using it.
9895         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
9896         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
9897         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
9898         * gst/gststructure.c: (gst_structure_set_valist),
9899         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
9900         support for buffers.
9901         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
9902         intended to be const.
9903         * gst/gsttag.h: same
9904         * gst/gstvalue.c: (gst_value_serialize_buffer),
9905         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
9906         to (de)serialize buffers.
9907         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
9908         * testsuite/caps/string-conversions.c: (main):
9909         * testsuite/caps/value_serialize.c: add new test
9910
9911 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9912
9913         * docs/pwg/advanced-types.xml:
9914           Document MS video 1 (video/x-msvideocodec) mimetype/format.
9915
9916 2004-04-11  Benjamin Otte  <otte@gnome.org>
9917
9918         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
9919           rename categories to basic_*
9920         * gst/schedulers/gstbasicscheduler.c: 
9921         (gst_basic_scheduler_chain_wrapper),
9922         (gst_basic_scheduler_chainhandler_proxy),
9923         (gst_basic_scheduler_gethandler_proxy),
9924         (gst_basic_scheduler_eventhandler_proxy):
9925           debugging category fixes - put common stuff in log category
9926         * gst/schedulers/gstbasicscheduler.c: 
9927         (gst_basic_scheduler_chain_elements):
9928           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
9929           active and linking two active chains
9930
9931 2004-04-10  Benjamin Otte  <otte@gnome.org>
9932
9933         * docs/pwg/intro-preface.xml:
9934           fix dead links and remove reference to Wiki
9935
9936 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9937
9938         * gst/schedulers/gstbasicscheduler.c:
9939           make sure we can switch back to the main function if we're still in
9940           the main function (supposed to fix #139617)
9941         * gst/schedulers/gthread-cothreads.h:
9942           don't throw an error when switching to the same cothread
9943
9944 2004-04-09  Benjamin Otte  <otte@gnome.org>
9945
9946         * gst/gstbin.c: (gst_bin_get_type):
9947         * gst/gstclock.c: (gst_clock_get_type):
9948         * gst/gstindex.c: (gst_index_get_type):
9949         * gst/gstobject.c: (gst_object_get_type),
9950         (gst_signal_object_get_type):
9951         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
9952         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
9953         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
9954         * gst/gstqueue.c: (gst_queue_get_type):
9955         * gst/gstregistry.c: (gst_registry_get_type):
9956         * gst/gstsystemclock.c: (gst_system_clock_get_type):
9957         * gst/gstthread.c: (gst_thread_get_type):
9958           don't use memchunks for these objects, use malloc instead
9959
9960 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
9961
9962         * docs/gst/.cvsignore:
9963         * docs/gst/Makefile.am:
9964         * docs/gst/gstreamer-sections.txt:
9965         * docs/gst/tmpl/gstaggregator.sgml:
9966         * docs/gst/tmpl/gstbuffer.sgml:
9967         * docs/gst/tmpl/gstclock.sgml:
9968         * docs/gst/tmpl/gstelement.sgml:
9969         * docs/gst/tmpl/gstfakesink.sgml:
9970         * docs/gst/tmpl/gstfakesrc.sgml:
9971         * docs/gst/tmpl/gstfdsink.sgml:
9972         * docs/gst/tmpl/gstfdsrc.sgml:
9973         * docs/gst/tmpl/gstfilesink.sgml:
9974         * docs/gst/tmpl/gstfilesrc.sgml:
9975         * docs/gst/tmpl/gstidentity.sgml:
9976         * docs/gst/tmpl/gstindex.sgml:
9977         * docs/gst/tmpl/gstinfo.sgml:
9978         * docs/gst/tmpl/gstmd5sink.sgml:
9979         * docs/gst/tmpl/gstmultifilesrc.sgml:
9980         * docs/gst/tmpl/gstpad.sgml:
9981         * docs/gst/tmpl/gstpipefilter.sgml:
9982         * docs/gst/tmpl/gstpipeline.sgml:
9983         * docs/gst/tmpl/gstpluginfeature.sgml:
9984         * docs/gst/tmpl/gstqueue.sgml:
9985         * docs/gst/tmpl/gstregistry.sgml:
9986         * docs/gst/tmpl/gstscheduler.sgml:
9987         * docs/gst/tmpl/gstshaper.sgml:
9988         * docs/gst/tmpl/gstspider.sgml:
9989         * docs/gst/tmpl/gstspideridentity.sgml:
9990         * docs/gst/tmpl/gststatistics.sgml:
9991         * docs/gst/tmpl/gstsystemclock.sgml:
9992         * docs/gst/tmpl/gsttee.sgml:
9993         * docs/gst/tmpl/gstthread.sgml:
9994         * docs/gst/tmpl/gsttypefind.sgml:
9995         * docs/gst/tmpl/gstutils.sgml:
9996           further doc build fixes
9997
9998 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
9999
10000         * docs/gst/Makefile.am:
10001           make docs exit on scanning problems
10002           fix nonsrcdir build issues
10003         * docs/gst/gstreamer-sections.txt:
10004           adding stuff from -unused
10005         * gst/gstqueue.h:
10006           create GstQueueSize
10007         * gst/schedulers/cothreads_compat.h:
10008           fix cothread warnings
10009
10010 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10011
10012         * docs/gst/gstreamer-sections.txt:
10013           remove defines deprecated by Benjamin
10014
10015 2004-04-07  Benjamin Otte  <otte@gnome.org>
10016
10017         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10018           when the buffer is complete, don't check if other buffers are needed
10019         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
10020           check that the offset is >0 so we don't try to read before the
10021           beginning of the file
10022         * gst/gstpad.c: (gst_pad_set_pad_template):
10023           sink the template, so we don't end up with 130k pad templates
10024
10025 2004-04-06  Benjamin Otte  <otte@gnome.org>
10026
10027         * gst/autoplug/gstspider.c: (gst_spider_link_add):
10028           don't ref the element, adding already reffed it. And we didn't unref
10029           it later anyway... (huge memleak when you used many spider elements)
10030         * gst/gstelement.c: (gst_element_base_class_finalize):
10031         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
10032         (gst_element_register):
10033         * gst/gsturi.c: (gst_element_make_from_uri):
10034           use gst_object_(un)ref instead of g_object(un)ref
10035
10036 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10037
10038         * gst/gstbuffer.h:
10039           remove macro that wouldn't work anymore because struct member has
10040           been removed.
10041         * gst/schedulers/entryscheduler.c: (schedule_forward):
10042           fix segfault for unconnected pads
10043         
10044 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10045
10046         reviewed by David Schleef <ds@schleef.org>
10047
10048         * gst/gstinfo.h:
10049           *_FORMAT modifiers should require putting a % in front of them for
10050           consistency reasons.
10051
10052 2004-04-05  Colin Walters  <walters@redhat.com>
10053
10054         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
10055         space.
10056
10057 2004-04-05  Benjamin Otte  <otte@gnome.org>
10058
10059         * configure.ac:
10060         * gst/Makefile.am:
10061         * gst/gst_private.h:
10062         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
10063           add support for detecting if GStreamer runs inside valgrind.
10064           requires valgrind (d'oh) and --enable-debug for correct cdetection.
10065           print a big message in valgrind that GStreamer has detected it's
10066           running inside and might now use different code.
10067         * gst/gstmemchunk.c: (populate), (free_area),
10068         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
10069         (gst_mem_chunk_free):
10070           flag memchunks for valgrind, so it can detect leaking of chunks.
10071           This allows detecting leaks of GstBuffer and GstEvent correctly
10072           inside valgrind.
10073
10074 2004-04-05  David Schleef  <ds@schleef.org>
10075
10076         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
10077           jensgr@gmx.net (Jens Granseuer)
10078
10079 2004-04-05  David Schleef  <ds@schleef.org>
10080
10081         * gst/gstbuffer.c: (_gst_buffer_sub_free),
10082         (gst_buffer_default_free), (gst_buffer_default_copy),
10083         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
10084         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
10085         structures in one place.
10086
10087 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10088
10089         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
10090           (GST_TIME_FORMAT, GST_TIME_ARGS)
10091
10092 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10093
10094         * testsuite/elements/Makefile.am:
10095           disable test until it stops breaking make distcheck
10096
10097 2004-04-05  Johan Dahlin  <johan@gnome.org>
10098
10099         * po/sv.po: Updated translation
10100
10101 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10102
10103         * gst/gstplugin.c: (gst_plugin_load_file):
10104           fix segfault for when original plugin was loaded statically
10105
10106 2004-04-05  Benjamin Otte  <otte@gnome.org>
10107
10108         * testsuite/debug/category.c: (main):
10109         * testsuite/debug/commandline.c: (main):
10110         * testsuite/debug/output.c: (main):
10111           fix tests to work again with debugging enabled
10112
10113 2004-04-05  Benjamin Otte  <otte@gnome.org>
10114
10115         * gst/schedulers/gstbasicscheduler.c:
10116         (gst_basic_scheduler_pad_link):
10117           fix to work with recent scheduling changes
10118
10119 2004-04-05  Benjamin Otte  <otte@gnome.org>
10120
10121         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
10122         prepareChangeLog doesn't work when cvs indents):
10123           don't throw an error when no element can be scheduled, there's too
10124           many weird reasons why it doesn't work. Return STOPPED instead.
10125           decoupled elemts' schedulability doesn't depend on bufpens.
10126
10127 2004-04-04  Benjamin Otte  <otte@gnome.org>
10128
10129         * gst/schedulers/gstbasicscheduler.c:
10130         (gst_basic_scheduler_pad_select):
10131           fix uninitialized variable warnings
10132
10133 2004-04-04  Benjamin Otte  <otte@gnome.org>
10134
10135         * gst/gstpad.c: (gst_pad_collect_valist):
10136           fix uninitialized variable warning
10137         * gst/schedulers/entryscheduler.c: (schedule_forward):
10138           fix shadowed variable
10139
10140 2004-04-04  Benjamin Otte  <otte@gnome.org>
10141
10142         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
10143         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
10144         (gst_pad_select):
10145         * gst/gstpad.h:
10146         * gst/gstscheduler.c: (gst_scheduler_pad_select),
10147         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
10148         * gst/gstscheduler.h:
10149           implement gst_pad_collect as replacement for gst_pad_select.
10150           deprecate gst_pad_select and gst_scheduler_(un)lock_element
10151           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
10152           new pad_select, lock and unlock calls.
10153         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
10154         * gst/cothreads.h:
10155         * gst/schedulers/cothreads_compat.h:
10156         * gst/schedulers/gthread-cothreads.h:
10157           remove unused cothread_lock and cothread_unlock calls
10158         * gst/schedulers/entryscheduler.c:
10159         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
10160         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
10161         (gst_entry_scheduler_pad_select):
10162           update to new API
10163         * gst/schedulers/gstbasicscheduler.c:
10164         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
10165         (gst_basic_scheduler_pad_select):
10166           remove useless lock and unlock calls, update pad_select to new API
10167           (untested)
10168         * gst/schedulers/gstoptimalscheduler.c:
10169         (gst_opt_scheduler_class_init):
10170           remove useless select, lock and unlock function calls
10171         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
10172           use gst_pad_collect instead of gst_pad_select
10173
10174 2004-04-04  Benjamin Otte  <otte@gnome.org>
10175
10176         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
10177         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
10178         (schedule_next_element), (print_entry):
10179           add can_schedule_pad to handle element states.
10180           add schedule_forward to select the correct entry to schedule next
10181
10182 2004-04-03  Benjamin Otte  <otte@gnome.org>
10183
10184         * gst/schedulers/entryscheduler.c: 
10185           remove unused variable, fix error inside Rb, fix compile warning in
10186           unreachable code
10187
10188 2004-04-03  Benjamin Otte  <otte@gnome.org>
10189
10190         * gst/schedulers/entryscheduler.c:
10191           completely revamp the inner workings, so it's a lot easier to
10192           understand and extend
10193
10194 2004-04-03  Andy Wingo  <wingo@pobox.com>
10195
10196         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
10197         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
10198         This allows better introspection of pipeline topology.
10199         (add_to_chain): Don't do trickery to put loop elements first;
10200         rather, queue a chain sort by marking the chain as dirty.
10201         (remove_from_chain): Mark the chain dirty.
10202         (sort_chain): New function. Sorts the group list so that terminal
10203         sinks are first. This means elements on the sink side will be
10204         preferentially sscheduled before elements on the src side of the
10205         pipeline.
10206         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
10207         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
10208         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
10209         (group_inc_link): Change argument and variable names to match the
10210         new link structure member names (src and sink).
10211         (group_dec_link): Add some description
10212
10213 2004-04-03  Benjamin Otte  <otte@gnome.org>
10214
10215         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
10216         * gst/gstinfo.h:
10217         * testsuite/debug/category.c: (main):
10218         * testsuite/debug/commandline.c: (main):
10219         * testsuite/debug/output.c: (main):
10220         * testsuite/debug/printf_extension.c: (main):
10221           fix to successfully build and test with --disable-gst-debug
10222           configure switch (fixes #138705)
10223
10224 2004-04-03  Benjamin Otte  <otte@gnome.org>
10225
10226         * docs/pwg/building-boiler.xml:
10227           add cvs login line and s/anonymous/anoncvs/
10228
10229 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
10230
10231         reviewed by Benjamin Otte  <otte@gnome.org>
10232
10233         * gst/gststructure.c: (gst_structure_free):
10234           memleak fix: free fields array (partial fix for #134839)
10235
10236 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10237
10238         * docs/random/ds/0.9-suggested-changes:
10239           Add a note to change handoff use in fakesrc to be usable in
10240           a more generic way (fakesrc should be renamed to appsrc or so).
10241         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
10242           Change signal type to scope, so we can fill the buffer in the
10243           handoff handler (that's the whole use of this signal...).
10244
10245 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10246
10247         * docs/pwg/other-ntoone.xml:
10248           Document muxers and n-to-1 elements.
10249
10250 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
10251
10252         * gst/registries/gstxmlregistry.c
10253         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
10254         determine if a file is a G_MODULE. The old one discards paths
10255         containing "so" somewhere in the middle. My home directory is
10256         called "soto". Go figure...
10257
10258 2004-03-31  David Schleef  <ds@schleef.org>
10259
10260         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
10261         to eventually deprecate gst_buffer_merge().  (bug: #136408)
10262         * gst/gstbuffer.h:
10263
10264 2004-03-31  David Schleef  <ds@schleef.org>
10265
10266         * gst/gstvalue.c: (gst_value_union_int_int_range),
10267         (gst_value_union_int_range_int_range), (gst_value_can_union),
10268         (gst_value_union), (_gst_value_initialize):  Add some union
10269         implementations.  We didn't have any previously.
10270         * testsuite/caps/Makefile.am:
10271         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
10272         (gst_audioscale_getcaps), (test_caps), (main): A little test
10273         that is the same as the caps manipulation in audioscale.
10274
10275 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10276
10277         * docs/faq/general.xml:
10278           add entry about "does gst support format X?"
10279
10280 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10281
10282         * gst/gstthread.c:
10283           fix docs
10284         * gst/gstutils.h:
10285           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
10286
10287 2004-03-30  Benjamin Otte  <otte@gnome.org>
10288
10289         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10290           set the offset of the buffer to the requested offset
10291         * gst/elements/gsttypefind.c: (stop_typefinding):
10292           revert patch 1.18 (which I unfortunately don't know the reason for).
10293           This is needed to allow downstream elements to seek. Otherwise
10294           typefind might overwrite a previous seek by downstream elements.
10295           This lead to errors with id3tag and typefind on some mp3s.
10296         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10297         (gst_entry_scheduler_iterate):
10298           be more verbose when debugging
10299
10300 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10301
10302         * gst/gstcaps.c: (gst_caps_from_string_inplace):
10303           make sure we don't get NULL strings
10304
10305 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10306
10307         * gst/gstcaps.c:
10308         * gst/gstelement.c:
10309         * gst/gstelementfactory.c: (gst_element_factory_get_type):
10310         * gst/gstindex.c: (gst_index_resolver_get_type),
10311         (gst_index_get_type), (gst_index_factory_get_type):
10312         * gst/gstinfo.c:
10313         * gst/gstpad.c:
10314         * gst/gstplugin.c:
10315         * gst/gsturi.c: (gst_uri_handler_get_type):
10316         * gst/gstvalue.c:
10317           first batch of documentation fixes
10318
10319 2004-03-29  David Schleef  <ds@schleef.org>
10320
10321         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
10322         * docs/gst/gstreamer-docs.sgml:  More hacking
10323         * docs/gst/gstreamer-sections.txt:
10324         * docs/gst/tmpl/cothreads_compat.sgml:
10325         * docs/gst/tmpl/gstcaps.sgml:
10326         * docs/gst/tmpl/gstclock.sgml:
10327         * docs/gst/tmpl/gstelement.sgml:
10328         * docs/gst/tmpl/gstevent.sgml:
10329         * docs/gst/tmpl/gstpad.sgml:
10330         * docs/gst/tmpl/gstutils.sgml:
10331         * docs/gst/tmpl/gstxml.sgml:
10332         * docs/gst/tmpl/gthread-cothreads.sgml:
10333         * docs/random/ds/0.9-suggested-changes:
10334         * gst/elements/gstfakesink.h: doc fixes
10335         * gst/elements/gstfakesrc.h: doc fixes
10336         * gst/gstcaps.c: doc fixes
10337         * gst/gstcaps.h: doc fixes
10338         * gst/gstelement.c: doc fixes
10339         * gst/gstelement.h: doc fixes
10340         * gst/gstindex.c: doc fixes
10341         * gst/gstinfo.c: doc fixes
10342         * gst/gstpad.c: doc fixes
10343         * gst/gstpad.h: doc fixes
10344         * gst/gstplugin.c: doc fixes
10345         * gst/gsttypefind.h: doc fixes
10346         * gst/gsturi.c: doc fixes
10347         * gst/gstvalue.c: doc fixes
10348
10349 2004-03-29  Colin Walters  <walters@redhat.com>
10350
10351         * gst/registries/gstxmlregistry.c (get_time)
10352         (plugin_times_older_than_recurse):
10353         Use the result of stat to determine whether a path is a file,
10354         so we don't attempt to opendir() files.
10355
10356 2004-03-29  Benjamin Otte  <otte@gnome.org>
10357
10358         * gst/gstpad.c: (gst_pad_set_explicit_caps):
10359           print caps in debugging output when setting caps failed
10360         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10361         (schedule_next_element), (get_buffer), (run_chainhandler),
10362         (element_may_start), (gst_entry_scheduler_chain_handler),
10363         (gst_entry_scheduler_get_handler),
10364         (gst_entry_scheduler_state_transition),
10365         (gst_entry_scheduler_pad_link):
10366           make this scheduler a testcase for mandatory
10367           discont-before-first-buffer which is needed if we want to allow apps
10368           to release the sound device.
10369           add SCHED_ASSERT macro to print scheduler state before an assertion
10370           triggers.
10371
10372 2004-03-29  Benjamin Otte  <otte@gnome.org>
10373
10374         * COPYING:
10375           replace by LGPL (former COPYING.LIB). The core is completely
10376           licensed LGPL.
10377         * COPYING.LIB:
10378           remove
10379
10380 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10381
10382         * po/af.po:
10383         * po/sv.po:
10384           updated Afrikaans and Swedish
10385
10386 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10387
10388         * po/LINGUAS:
10389         * po/az.po:
10390           adding Azerbaijani (Mətin Əmirov)
10391
10392 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
10393
10394         * gst/gstelement.h: 
10395         * gst/gstelement.c (gst_element_set_time_delay): New function for
10396         setting element time taking into account a hardware buffering
10397         delay.
10398         (gst_element_set_time): Now just an invocation of
10399         gst_element_set_time_delay.
10400         * gst/gstclock.h: 
10401         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
10402         allowing to set event times in the future.
10403         (gst_clock_get_event_time): Now just an invocation of
10404         gst_clock_get_event_time_delay.
10405
10406 2004-03-28  Benjamin Otte  <otte@gnome.org>
10407
10408         * gst/gstbin.c: (gst_bin_set_element_sched),
10409         (gst_bin_unset_element_sched):
10410           don't add decoupled elements to schedulers - otherwise it's
10411           impossible to control if a link to a decoupled element was already
10412           removed from a scheduler or not.
10413         * gst/schedulers/cothreads_compat.h:
10414         * gst/schedulers/gthread-cothreads.h:
10415           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
10416           is no "unused" warning.
10417         * gst/schedulers/Makefile.am:
10418         * gst/schedulers/entryscheduler.c:
10419           add new scheduler, based on ideas from talking to David and Martin.
10420           It's supposed to be small and correct. Currently it's also slow (but
10421           it's not noticable)
10422         * examples/retag/retag.c: (main):
10423         * testsuite/bytestream/test1.c: (main):
10424           fix missing NULLs at end of variadic functions
10425         * testsuite/elements/.cvsignore:
10426           update
10427
10428 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
10429
10430         * gst/gstevent.h:
10431         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
10432
10433 2004-03-25  David Schleef  <ds@schleef.org>
10434
10435         * docs/gst/gstreamer-sections.txt:  More doc hacking.
10436         * docs/gst/tmpl/gstaggregator.sgml:
10437         * docs/gst/tmpl/gstautoplugfactory.sgml:
10438         * docs/gst/tmpl/gstbin.sgml:
10439         * docs/gst/tmpl/gstbuffer.sgml:
10440         * docs/gst/tmpl/gstbufferstore.sgml:
10441         * docs/gst/tmpl/gstfakesink.sgml:
10442         * docs/gst/tmpl/gstfakesrc.sgml:
10443         * docs/gst/tmpl/gstmd5sink.sgml:
10444         * docs/gst/tmpl/gstreamer-unused.sgml:
10445         * docs/gst/tmpl/gstsearchfuncs.sgml:
10446         * docs/gst/tmpl/gstshaper.sgml:
10447         * docs/gst/tmpl/gstspider.sgml:
10448         * docs/gst/tmpl/gsttee.sgml:
10449         * docs/gst/tmpl/gstutils.sgml:
10450         * docs/gst/tmpl/gstvalue.sgml:
10451         * docs/gst/tmpl/gstxml.sgml:
10452         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
10453         and we don't support it.
10454         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
10455         (gst_use_threads), (gst_has_threads): same
10456         * gst/gstthreaddummy.c: same
10457         * gst/autoplug/gstspider.c: Make gst_spider_details static.
10458         * gst/autoplug/gstspider.h: same
10459         * gst/elements/gstaggregator.h: Remove bogus function from header
10460         * gst/elements/gstfakesink.h: same
10461         * gst/elements/gstfakesrc.h: same
10462         * gst/elements/gstmd5sink.h: same
10463         * gst/elements/gstshaper.h: same
10464         * gst/elements/gsttee.h: same
10465         * gst/gstbin.c: doc fixes
10466         * gst/gstbin.h: Remove unused definition.
10467         * gst/gstbuffer.c: doc fixes
10468         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
10469         * gst/gstfilter.c: doc fixes
10470         * gst/gsttag.c: doc fixes
10471         * gst/gstvalue.c: doc fixes
10472
10473 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10474
10475         * docs/pwg/advanced-types.xml:
10476           Document typefinding.
10477         * docs/pwg/other-oneton.xml:
10478           Document one-to-n elements, demuxers and parsers.
10479
10480 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
10481
10482         reviewed by: David Schleef  <ds@schleef.org>
10483
10484         * configure.ac: Check bison version (bug #127838)
10485
10486 2004-03-25  David Schleef  <ds@schleef.org>
10487
10488         * docs/gst/gstreamer-docs.sgml: More fine tuning.
10489         * docs/gst/gstreamer-sections.txt:
10490         * docs/gst/tmpl/gstautoplug.sgml:
10491         * docs/gst/tmpl/gststaticautoplug.sgml:
10492         * docs/gst/tmpl/gststaticautoplugrender.sgml:
10493         * docs/gst/tmpl/gstutils.sgml:
10494         * docs/gst/tmpl/gstxml.sgml:
10495
10496 2004-03-24  David Schleef  <ds@schleef.org>
10497
10498         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
10499         manual being such complete crap, that I decided to do major
10500         hacking of it.  This checkin replaces any fine tuning that
10501         may have been done previously, with the benefit of actually
10502         being complete for much of the API that was changed since
10503         0.6.  Further fine tuning will occur shortly.  (bug #134721)
10504         * docs/gst/gstreamer-sections.txt:
10505         * docs/gst/tmpl/GstBin.sgml:
10506         * docs/gst/tmpl/GstBuffer.sgml:
10507         * docs/gst/tmpl/GstCaps.sgml:
10508         * docs/gst/tmpl/GstClock.sgml:
10509         * docs/gst/tmpl/GstCompat.sgml:
10510         * docs/gst/tmpl/GstData.sgml:
10511         * docs/gst/tmpl/GstElement.sgml:
10512         * docs/gst/tmpl/GstEvent.sgml:
10513         * docs/gst/tmpl/GstIndex.sgml:
10514         * docs/gst/tmpl/GstStructure.sgml:
10515         * docs/gst/tmpl/GstTag.sgml:
10516         * docs/gst/tmpl/cothreads.sgml:
10517         * docs/gst/tmpl/cothreads_compat.sgml:
10518         * docs/gst/tmpl/gettext.sgml:
10519         * docs/gst/tmpl/grammar.tab.sgml:
10520         * docs/gst/tmpl/gst-i18n-app.sgml:
10521         * docs/gst/tmpl/gst-i18n-lib.sgml:
10522         * docs/gst/tmpl/gst.sgml:
10523         * docs/gst/tmpl/gst_private.sgml:
10524         * docs/gst/tmpl/gstaggregator.sgml:
10525         * docs/gst/tmpl/gstarch.sgml:
10526         * docs/gst/tmpl/gstatomic.sgml:
10527         * docs/gst/tmpl/gstatomic_impl.sgml:
10528         * docs/gst/tmpl/gstbin.sgml:
10529         * docs/gst/tmpl/gstbuffer.sgml:
10530         * docs/gst/tmpl/gstbufferstore.sgml:
10531         * docs/gst/tmpl/gstcaps.sgml:
10532         * docs/gst/tmpl/gstclock.sgml:
10533         * docs/gst/tmpl/gstcompat.sgml:
10534         * docs/gst/tmpl/gstconfig.sgml:
10535         * docs/gst/tmpl/gstcpu.sgml:
10536         * docs/gst/tmpl/gstdata.sgml:
10537         * docs/gst/tmpl/gstdata_private.sgml:
10538         * docs/gst/tmpl/gstelement.sgml:
10539         * docs/gst/tmpl/gstenumtypes.sgml:
10540         * docs/gst/tmpl/gsterror.sgml:
10541         * docs/gst/tmpl/gstevent.sgml:
10542         * docs/gst/tmpl/gstfakesink.sgml:
10543         * docs/gst/tmpl/gstfakesrc.sgml:
10544         * docs/gst/tmpl/gstfilesink.sgml:
10545         * docs/gst/tmpl/gstfilter.sgml:
10546         * docs/gst/tmpl/gstindex.sgml:
10547         * docs/gst/tmpl/gstinfo.sgml:
10548         * docs/gst/tmpl/gstinterface.sgml:
10549         * docs/gst/tmpl/gstlog.sgml:
10550         * docs/gst/tmpl/gstmacros.sgml:
10551         * docs/gst/tmpl/gstmarshal.sgml:
10552         * docs/gst/tmpl/gstmd5sink.sgml:
10553         * docs/gst/tmpl/gstmultifilesrc.sgml:
10554         * docs/gst/tmpl/gstobject.sgml:
10555         * docs/gst/tmpl/gstpad.sgml:
10556         * docs/gst/tmpl/gstparse.sgml:
10557         * docs/gst/tmpl/gstpipeline.sgml:
10558         * docs/gst/tmpl/gstplugin.sgml:
10559         * docs/gst/tmpl/gstpluginfeature.sgml:
10560         * docs/gst/tmpl/gstqueue.sgml:
10561         * docs/gst/tmpl/gstreamer-unused.sgml:
10562         * docs/gst/tmpl/gstregistry.sgml:
10563         * docs/gst/tmpl/gstregistrypool.sgml:
10564         * docs/gst/tmpl/gstscheduler.sgml:
10565         * docs/gst/tmpl/gstsearchfuncs.sgml:
10566         * docs/gst/tmpl/gstshaper.sgml:
10567         * docs/gst/tmpl/gstspider.sgml:
10568         * docs/gst/tmpl/gstspideridentity.sgml:
10569         * docs/gst/tmpl/gststructure.sgml:
10570         * docs/gst/tmpl/gstsystemclock.sgml:
10571         * docs/gst/tmpl/gsttag.sgml:
10572         * docs/gst/tmpl/gsttaginterface.sgml:
10573         * docs/gst/tmpl/gsttee.sgml:
10574         * docs/gst/tmpl/gstthread.sgml:
10575         * docs/gst/tmpl/gsttrace.sgml:
10576         * docs/gst/tmpl/gsttrashstack.sgml:
10577         * docs/gst/tmpl/gsttypefind.sgml:
10578         * docs/gst/tmpl/gsttypes.sgml:
10579         * docs/gst/tmpl/gsturi.sgml:
10580         * docs/gst/tmpl/gsturitype.sgml:
10581         * docs/gst/tmpl/gstutils.sgml:
10582         * docs/gst/tmpl/gstvalue.sgml:
10583         * docs/gst/tmpl/gstversion.sgml:
10584         * docs/gst/tmpl/gstxml.sgml:
10585         * docs/gst/tmpl/gstxmlregistry.sgml:
10586         * docs/gst/tmpl/gthread-cothreads.sgml:
10587         * docs/gst/tmpl/types.sgml:
10588
10589 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10590
10591         * docs/pwg/other-sink.xml:
10592         * docs/pwg/other-source.xml:
10593           Documentation on how to write source and sink elements. Other
10594           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
10595           manager, autoplugger) are all still pending.
10596
10597 2004-03-25  Benjamin Otte  <otte@gnome.org>
10598
10599         * testsuite/elements/Makefile.am:
10600         * testsuite/elements/gst-compprep-check:
10601           add check to make sure gst-compprep works
10602         * testsuite/elements/gst-inspect-check.in:
10603           improve initialization output
10604         * testsuite/Makefile.am:
10605         * testsuite/gst-inspect-check:
10606           remove old file
10607
10608 2004-03-24  David Schleef  <ds@schleef.org>
10609
10610         * testsuite/elements/Makefile.am:
10611         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
10612         to the testsuite.
10613
10614 2004-03-24  Benjamin Otte  <otte@gnome.org>
10615
10616         * libs/gst/control/dparam.c: (gst_dparam_attach),
10617         (gst_dparam_detach):
10618         * libs/gst/control/dparammanager.c: (gst_dpman_init):
10619           fix lvalue casts for real
10620
10621 2004-03-24  Benjamin Otte  <otte@gnome.org>
10622
10623         * gst/schedulers/gstbasicscheduler.c:
10624         (gst_basic_scheduler_src_wrapper):
10625         * gst/schedulers/gstoptimalscheduler.c:
10626         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
10627         (pad_clear_queued), (gst_opt_scheduler_add_element),
10628         (gst_opt_scheduler_remove_element):
10629           fix GStreamer to not have issues with lvalue casts anymore (fixes
10630           #136841)
10631
10632 2004-03-24  Benjamin Otte  <otte@gnome.org>
10633
10634         * gst/gstelement.c:
10635           add documentation about a gobject quirk where the object hasn't the
10636           correct class pointer set on initialization
10637         * gst/schedulers/gstbasicscheduler.c:
10638         (gst_basic_scheduler_src_wrapper):
10639           make sure to not run into an infinite loop
10640
10641 2004-03-22  Benjamin Otte  <otte@gnome.org>
10642
10643         * gst/gstutils.c: (gst_util_dump_mem):
10644         * gst/gstutils.h:
10645           first argument of gst_util_dump_mem should be const
10646
10647 2004-03-22  Johan Dahlin  <johan@gnome.org>
10648
10649         * gst/gstvalue.h: Clean up a little bit.
10650
10651 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
10652
10653         reviewed by Benjamin Otte  <otte@gnome.org>
10654
10655         * gst/autoplug/gstspider.c: (gst_spider_dispose):
10656         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
10657         (gst_aggregator_class_init), (gst_aggregator_init):
10658         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10659         (gst_filesrc_dispose), (gst_filesrc_set_location):
10660         * gst/elements/gstidentity.c: (gst_identity_finalize),
10661         (gst_identity_class_init), (gst_identity_chain):
10662         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
10663         * gst/elements/gststatistics.c: (gst_statistics_finalize),
10664         (gst_statistics_class_init):
10665         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
10666         (gst_tee_get_property):
10667           clean up used memory in this elements correctly on teardown (closes
10668           #137279)
10669
10670 2004-03-20  Colin Walters  <walters@redhat.com>
10671
10672         * gst/registries/gstxmlregistry.c:
10673         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
10674         registry saving atomic.
10675
10676 2004-03-20  Colin Walters  <walters@redhat.com>
10677
10678         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
10679         Just use
10680         access() instead of actually creating and deleting files.
10681
10682 2004-03-18  David Schleef  <ds@schleef.org>
10683
10684         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
10685         (bug #137625)
10686
10687 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10688
10689         * po/sv.po: updated translation (Christian Rose)
10690
10691 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10692
10693         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
10694         (gst_filesink_get_query_types), (_do_init),
10695         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
10696           return FALSE silently
10697         * po/af.po: updated translation (Petri Jooste)
10698
10699 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10700
10701         * Makefile.am:
10702         * configure.ac:
10703           dist common properly
10704         * po/af.po:
10705         * po/fr.po:
10706         * po/nl.po:
10707         * po/sr.po:
10708         * po/sv.po:
10709           refreshing translations
10710
10711 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10712
10713         * po/LINGUAS:
10714         * po/sv.po:
10715         * po/af.po:
10716           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
10717
10718 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10719
10720         * Makefile.am: use common/release.mak
10721
10722 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10723
10724         * docs/faq/gst-uninstalled:
10725           adding gst-monkeysaudio to the list of possible plugin dirs
10726
10727 2004-03-16  David Schleef  <ds@schleef.org>
10728
10729         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
10730         (gst_init_check_with_popt_table):  Fix some gettext strings to
10731         make them easier to translate.  Required making the strings
10732         non-const.
10733
10734 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10735
10736         * configure.ac: bump nano to 1
10737
10738 === release 0.8.0 ===
10739
10740 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10741
10742         * configure.ac: release 0.8.0, "Executive Slacks"
10743
10744 2004-03-16  Johan Dahlin  <johan@gnome.org>
10745
10746         * gst/schedulers/gstoptimalscheduler.c
10747         (gst_opt_scheduler_pad_unlink): Remove double ;,
10748         spotted by Scott Wheeler
10749
10750 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10751
10752         * configure.ac: bump libtool version
10753
10754 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10755
10756         * gst/gstcaps.h:
10757         * gst/gststructure.h:
10758           add reserved padding
10759
10760 2004-03-15  Benjamin Otte  <otte@gnome.org>
10761
10762         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10763           set the first parameter for select call correctly.
10764           (fixes #137230)
10765
10766 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10767
10768         * *.c,*.h: don't mix tabs and spaces
10769
10770 2004-03-15  Johan Dahlin  <johan@gnome.org>
10771
10772         * gst/schedulers/gstoptimalscheduler.c
10773         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
10774         crash on MPEG playback. My boolean arithmetic is a bit rusty.
10775
10776         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
10777         
10778 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10779
10780         * testsuite/Rules:
10781           fix gst-register rules
10782
10783 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10784
10785         * testsuite/Rules:
10786           use versioned gst-register
10787
10788 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10789
10790         * docs/libs/gstreamer-libs-sections.txt:
10791           remove </SUBSECTION>
10792         * gst/gstplugin.c:
10793         * gst/gstregistry.c: (gst_registry_add_plugin):
10794         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
10795         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
10796           add debugging and fix some comment blocks
10797
10798 2004-03-15  Johan Dahlin  <johan@gnome.org>
10799
10800         * *.h: Revert indent changes.
10801         
10802 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10803
10804         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
10805           g_error_free the g_error
10806         * tools/gst-feedback-m.m:
10807           check for other versions of gstreamer
10808         * tools/gst-indent:
10809           use sh, not bash
10810
10811 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10812
10813         * tools/gst-register.c: do not spill paths when registries are not
10814           writable, until we fix the "user running gst-register" case.
10815
10816 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10817
10818         * *.c, *.h: commit of gst-indent run on core
10819
10820 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10821
10822         * tools/gst-indent:
10823         * tools/Makefile.am:
10824           add our indentation style as a script
10825
10826 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10827
10828         * po/sr.po:
10829         * po/LINGUAS:
10830           added Serbian translation
10831
10832 2004-03-13  Benjamin Otte  <otte@gnome.org>
10833
10834         * gst/gstelement.c:
10835           add documentation note about gst_element_found_tags_for_pad not
10836           being usable in getfunctions. (see #137042)
10837
10838 2004-03-12  David Schleef  <ds@schleef.org>
10839
10840         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
10841         change API right now!  Readd gst_caps_is_simple() macro.
10842         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
10843         uninitialized variable.  I'd bet this caused crashes.
10844         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
10845
10846 2004-03-12  Johan Dahlin  <johan@gnome.org>
10847
10848         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
10849         * gst/gstcaps.h: Clean up
10850
10851         * gst/gst.c (init_post): call gst_caps_get_type() instead of
10852         _gst_caps_initalize()
10853
10854         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
10855         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
10856
10857         * gst/gststructure.c (gst_structure_get_type): Ditto
10858
10859         * gst/gststructure.h: Ditto
10860         
10861 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10862
10863         * gst/gstqueue.c: (gst_queue_init):
10864           Reset default max. values in queues. Reason is simply to avoid
10865           braindead use. If you want wider values, use the properties. The
10866           default is supposed to always work. Wider values would make this
10867           beast a memory hog by default (250 full-PAL RGB32 video frames?
10868           That's 440 MB! No thank you).
10869
10870 2004-03-10  David Schleef  <ds@schleef.org>
10871
10872         * tools/gst-run.c: (main):  Fix crash when no relevant tools
10873         were found.  (bug #136793)
10874
10875 2004-03-10  Johan Dahlin  <johan@gnome.org>
10876
10877         * gst/schedulers/gstoptimalscheduler.c
10878         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
10879         links to elements within the same group, so we can finally remove
10880         that annoying warning. Refactor the code a little bit
10881         (group_dec_links_for_element): Split out
10882
10883 2004-03-09  David Schleef  <ds@schleef.org>
10884
10885         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
10886         (bug #134863)
10887
10888 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10889
10890         * configure.ac: first bug fix due to major/minor bump
10891
10892 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10893
10894         * configure.ac: bump nano to 1
10895
10896 === release 0.7.6 ===
10897
10898 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10899
10900         * NEWS:
10901         * RELEASE:
10902         * configure.ac:
10903           releasing 0.7.6, "Almost"
10904         * po/fr.po:
10905         * po/nl.po:
10906         * tools/Makefile.am:
10907         * tools/gst-feedback-m.m:
10908           unversioned source
10909
10910 2004-03-09  Johan Dahlin  <johan@gnome.org>
10911
10912         Reviewed by: Thomas Vander Stichele
10913
10914         * gst/gstelement.c (gst_element_class_init): register second
10915         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
10916         language bindings can (de)marshall correctly.
10917
10918         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
10919
10920         * gst/gsterror.c (gst_g_error_get_type): New function
10921
10922         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
10923         with VOID:OBJECT,OBJECT,STRING 
10924
10925 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
10926
10927         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
10928         Free a leaked g_timer on early returns.
10929
10930 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10931
10932         * docs/pwg/advanced-types.xml:
10933           Add cinepak description.
10934
10935 2004-03-07  David Schleef  <ds@schleef.org>
10936
10937         * docs/random/mimetypes:  Added cinepak description
10938
10939 2004-03-07  Andy Wingo  <wingo@pobox.com>
10940
10941         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
10942
10943         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
10944         there are no links to other groups when a group is destroyed.
10945         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
10946         removed from a group, make sure the link count to elements linked
10947         to other pads is appropriately decremented. This really fixes
10948         #135672.
10949
10950         The 1.60->1.61 patch has been reapplied in light of this fix.
10951
10952         * gst/gstelement.c (gst_element_dispose): Really protect against
10953         multiple invocations this time.
10954
10955 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10956
10957         * docs/gst/gstreamer-sections.txt:
10958         * docs/gst/tmpl/gsttag.sgml:
10959           remove some deprecated functions, document some existing ones
10960         * gst/gsttag.c: (gst_tag_get_flag):
10961         * gst/gsttag.h:
10962           add accessor function
10963
10964 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10965
10966         * docs/gst/gstreamer-sections.txt:
10967         * docs/gst/tmpl/gsttag.sgml:
10968         * docs/gst/tmpl/gstxml.sgml:
10969         * gst/gsttag.c: (gst_tag_get_flag):
10970         * gst/gsttag.h:
10971
10972 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
10973
10974         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
10975         leak
10976
10977 2004-03-05  David Schleef  <ds@schleef.org>
10978
10979         * REQUIREMENTS: Add bison and flex.
10980         * configure.ac: Fix comment about bison.
10981         * docs/random/ds/0.9-suggested-changes: yer ma
10982         * tools/gst-inspect.c: (print_element_info):  Fix warning.
10983
10984 2004-03-05  Benjamin Otte  <otte@gnome.org>
10985
10986         * gst/gstelement.c: (gst_element_error_full):
10987           revert recent recursive state changing commit - messing with other
10988           elements' states is evil and should be done by apps only.
10989
10990 2004-03-05  Benjamin Otte  <otte@gnome.org>
10991
10992         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
10993           check for empty intersection instead of NULL caps
10994         (gst_element_get_compatible_pad_filtered):
10995           remove old workaround that is only a bug nowadays
10996
10997 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10998
10999         * gst/gstelement.c: (gst_element_error_full):
11000           make elements try to recursively change state to PAUSED on all
11001           parents after an error to suppress ensuing warnings
11002         * gst/parse/grammar.y:
11003           make it check if it was able to sync the state, and throw an error
11004           if not, so stuff like
11005           oggdemux ! vorbisdec ! osssink gets caught
11006
11007 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11008
11009         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
11010           it contains lib64; use AS_AC_EXPAND to handle it properly
11011
11012 2004-03-05  David Schleef  <ds@schleef.org>
11013
11014         * gst/gstcpuid_i386.s:  Remove unused code
11015         * libs/gst/getbits/getbits.c: (gst_getbits_init),
11016         (gst_getbits_newbuf): Remove MMX code
11017         * libs/gst/getbits/getbits.h: Remove MMX code
11018
11019 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
11020
11021         * debian/.cvsignore:
11022         * debian/README.Debian:
11023         * debian/changelog:
11024         * debian/control:
11025         * debian/control.in:
11026         * debian/copyright:
11027         * debian/gstreamer-core-libs-dev.files:
11028         * debian/gstreamer-core-libs.files:
11029         * debian/gstreamer-core.files:
11030         * debian/gstreamer-core.postinst:
11031         * debian/gstreamer-core.postrm:
11032         * debian/gstreamer-doc.files:
11033         * debian/gstreamer-doc.links:
11034         * debian/gstreamer-doc.lintian:
11035         * debian/gstreamer-runtime.files:
11036         * debian/gstreamer-runtime.manpages:
11037         * debian/gstreamer-runtime.postinst:
11038         * debian/gstreamer-runtime.postrm:
11039         * debian/gstreamer-tools.files:
11040         * debian/gstreamer-tools.manpages:
11041         * debian/libgstreamer-dev.files:
11042         * debian/libgstreamer0.4.1.files:
11043         * debian/libgstreamerVERSION.files:
11044         * debian/rules:
11045         Debian package info not maintained here.
11046
11047 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11048
11049         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11050         * gst/gstbin.c: (gst_bin_class_init):
11051         * gst/gstelement.c: (gst_element_class_init):
11052         * gst/gstindex.c: (gst_index_class_init):
11053         * gst/gstobject.c: (gst_object_class_init),
11054         (gst_signal_object_class_init):
11055         * gst/gstpad.c: (gst_pad_template_class_init):
11056         * gst/gstregistry.c: (gst_registry_class_init):
11057         * gst/gsturi.c: (gst_uri_handler_base_init):
11058         * gst/gstxml.c: (gst_xml_class_init):
11059         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11060         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
11061           make all signal names use dashes instead of underscore
11062
11063 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11064
11065         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
11066
11067 2004-03-03  Benjamin Otte  <otte@gnome.org>
11068
11069         * gst/schedulers/gstoptimalscheduler.c:
11070           revert last commit by Andy Wingo. It causes segfaults on unreffing
11071           in Rhythmbox. (see bug #135672)
11072
11073 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11074
11075         * po/fr.po: fix typo
11076
11077 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11078
11079         * tools/gst-inspect.c: (main): 
11080         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
11081
11082 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11083
11084         * configure.ac:
11085           get GLIB_ONLY and POPT flags for the nonversioned binaries
11086         * tools/Makefile.am:
11087           use them
11088
11089 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11090
11091         * gst/gst.c: (init_post):
11092           change so that GST_REGISTRY now is where the global registry gets
11093           saved, since that is where plugins now get attached to first, and
11094           spilled over to the user registry.  Note that in the case of using
11095           GST_REGISTRY env var, we don't want to affect any real registries
11096           beyond the one given by this var, and thus we don't set a user
11097           registry to spill to.  So make sure GST_REGISTRY is writable.
11098
11099 2004-03-01  David Schleef  <ds@schleef.org>
11100
11101         * AUTHORS:  Added some names.  Add yourself if you're missing.
11102
11103 2004-03-01  David Schleef  <ds@schleef.org>
11104
11105         * MAINTAINERS: Add
11106
11107 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
11108
11109         * configure.ac:
11110           remove whitespace
11111         * docs/gst/tmpl/gstbuffer.sgml:
11112         * docs/gst/tmpl/gstdata.sgml:
11113         * docs/gst/tmpl/gstreamer-unused.sgml:
11114         * docs/gst/tmpl/gstxml.sgml:
11115           doc update
11116         * docs/manuals.mak:
11117           add a FIXME
11118         * docs/pwg/intro-preface.xml:
11119         * docs/pwg/pwg.xml:
11120           remove GNOME
11121         * gst/gst.c: (init_post):
11122           try GST_PLUGIN_PATH paths for the _global_registry first
11123         * gst/gstelement.h:
11124           add the error message as well, otherwise (null) debug info doesn't
11125           make much sense
11126         * tools/gst-register.c: (main):
11127           spill paths to next registry if this registry is not writable
11128         * po/fr.po:
11129         * po/nl.po:
11130           translation updates
11131
11132 2004-03-01  Johan Dahlin  <johan@gnome.org>
11133
11134         * gst/gstbuffer.c (_gst_buffer_initialize): 
11135         * gst/gstdata.c (gst_data_get_type): 
11136         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
11137         instead of ref, since some applications that uses GBoxed
11138         routines depends on a function that actually returns a copy.
11139
11140 2004-02-27  Benjamin Otte  <otte@gnome.org>
11141
11142         * gst/gstbuffer.h:
11143           remove gst_buffer_free, use gst_data_unref
11144         * gst/gstdata.c: (gst_data_get_type):
11145           use refcounting in GstData GBoxed registration
11146         * gst/gstdata.h:
11147           remove gst_data_free, use gst_data_unref
11148
11149 2004-02-27  Johan Dahlin  <johan@gnome.org>
11150
11151         * gst/gstdata.c (gst_data_get_type): New function, register
11152         GstData as a GBoxed type.
11153
11154         * gst/gstdata.h (GST_TYPE_DATA): New macro
11155
11156 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
11157
11158         * Makefile.am:
11159         * gstreamer.spec.in:
11160           put back RELEASE
11161         * gst/Makefile.am:
11162           clean up non-disting of built files
11163         * testsuite/debug/commandline.c:
11164           test fix for option rename
11165
11166 2004-02-26  David Schleef  <ds@schleef.org>
11167
11168         * configure.ac:  We don't really need glib-2.3.  Also remove
11169         some unneeded checks for library functions.
11170         * gst/Makefile.am:  Instead, we need to not dist files created
11171         by glib-genmarshal.
11172
11173 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11174
11175         * configure.ac:
11176           bump glib required version to 2.3.0 for g_value_takes_boxed
11177
11178  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
11179
11180         * common/m4/gst-docs.m4
11181         change flavour text from enable to disable as enable is our default
11182         closes bug Bug 135304
11183
11184 === release 0.7.5 ===
11185  
11186  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11187  
11188         * NEWS:
11189           instate NEWS file
11190         * Makefile.am:
11191         * gstreamer.spec.in:
11192         * RELEASE:
11193           put back release
11194         * configure.ac:
11195         * docs/random/release:
11196           more updates
11197
11198 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11199
11200         * gst/gsttag.c: (_gst_tag_initialize):
11201         * po/fr.po:
11202         * po/nl.po:
11203           remove hyphen from codec tags
11204
11205 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11206
11207         * gst/parse/Makefile.am:
11208           fix dependency so that a make from a clean build works the first
11209           time
11210
11211 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11212
11213         * docs/random/release:
11214           update release strategy
11215         * po/fr.po:
11216           auto-update po file
11217         * po/nl.po:
11218           update dutch translation
11219
11220 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11221
11222         * docs/manual/debugging.xml:
11223         fix manual for new debugging system
11224
11225 2004-02-25  Andy Wingo  <wingo@pobox.com>
11226
11227         * gst/gstpad.c (gst_pad_link_prepare): Re-add
11228         gst_pad_link_prepare. Please email the list with specific reasons
11229         for reverting.
11230
11231 2004-02-24  Andy Wingo  <wingo@pobox.com>
11232
11233         * gst/gstelement.c (gst_element_dispose): Protect against multiple
11234         invocations.
11235
11236         * gst/schedulers/gstoptimalscheduler.c:
11237         I added a mess of prototypes at the top of the file by way of
11238         documentation. Some of the operations on chains and groups were
11239         re-organized.
11240
11241         (create_group): Added a type argument so if the group is enabled,
11242         the setup_group_scheduler knows what to do.
11243         (group_elements): Added a type argument here, too, to be passed on
11244         to create_group.
11245         (group_element_set_enabled): If an unlinked PLAYING element is
11246         added to a bin, we have to create a new group to hold the element,
11247         and this function will be called before the group is added to the
11248         chain. Thus we have a valid case for group->chain==NULL. Instead
11249         of calling chain_group_set_enabled, just set the flag on the group
11250         (the chain's status will be set when the group is added to it).
11251         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
11252         Setup the group scheduler when the group is enabled, not
11253         specifically when an element goes PAUSED->PLAYING. This means
11254         PLAYING elements can be added, linked, and scheduled into a
11255         PLAYING pipeline, as was intended.
11256         (add_to_group): Don't ref the group twice. I don't know when this
11257         double-ref got in here. Removing it has the potential to cause
11258         segfaults if other parts of the scheduler are buggy. If you find
11259         that the scheduler is segfaulting for you, put in an extra ref
11260         here and see if that hacks over the underlying issue. Of course,
11261         then find out what code is unreffing a group it doesn't own...
11262         (create_group): Make the extra refcount floating, and remove it
11263         after adding the element. This means that...
11264         (unref_group): Destroy when the refcount reaches 0, not 1, like
11265         every other refcounted object in the known universe.
11266         (remove_from_group): When a group becomes empty, set it to be not
11267         active, and remove it from its chain. Don't unref it again,
11268         there's no floating reference any more.
11269         (destroy_group): We have to remove the group from the chain in
11270         remove_from_group (rather than here) to break refcounting cycles
11271         (the chain always has a ref on the group). So assert that
11272         group->chain==NULL.
11273         (ref_group_by_count): Removed, it was commented out anyway.
11274         (merge_chains): Use the remove_from_chain and add_to_chain
11275         primitives to do the reparenting, instead of rolling our own
11276         implementation.
11277         (add_to_chain): The first non-disabled group in the chain's group
11278         list will be the entry point for the chain. Because buffers can
11279         accumulate in loop elements' peer bufpens, we preferentially
11280         schedule loop groups before get groups to avoid unnecessary
11281         execution of get-based groups when the bufpens are already full.
11282         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
11283         (get_group_schedule_function): Ditto.
11284         (loop_group_schedule_function): Ditto.
11285         (gst_opt_scheduler_loop_wrapper): Ditto.
11286         (gst_opt_scheduler_iterate): Ditto.
11287
11288         I understand the opt scheduler now, yippee!
11289
11290         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
11291         (gst_pad_get_name, gst_pad_set_chain_function) 
11292         (gst_pad_set_get_function, gst_pad_set_event_function) 
11293         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
11294         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
11295         (gst_pad_set_query_function, gst_pad_get_query_types) 
11296         (gst_pad_get_query_types_default) 
11297         (gst_pad_set_internal_link_function) 
11298         (gst_pad_set_formats_function, gst_pad_set_link_function) 
11299         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
11300         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
11301         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
11302         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
11303         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
11304         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
11305         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
11306         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
11307         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
11308         (gst_pad_event_default_dispatch, gst_pad_event_default) 
11309         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
11310         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
11311         (gst_pad_get_formats_default, gst_pad_get_formats): Better
11312         argument checks, and some doc fixes.
11313
11314         (gst_pad_custom_new_from_template): Um, does anyone
11315         use these functions? Actually make a custom pad instead of a
11316         normal one.
11317         (gst_pad_try_set_caps): Transpose some checks.
11318         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
11319         the pad is in negotiation.
11320         (gst_pad_try_relink_filtered): Use pad_link_prepare.
11321         
11322         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
11323
11324         * gst/gstelement.h: 
11325         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
11326         on the list.
11327
11328 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11329
11330         * gst/gstbin.c: (gst_bin_add):
11331           add error for not being able to add elements
11332
11333 2004-02-22  Julien MOUTTE <julien@moutte.net>
11334
11335         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
11336         audio-codec and video-codec.
11337
11338 2004-02-22  Benjamin Otte  <otte@gnome.org>
11339
11340         reported by: Padraig O'Briain <padraig.obriain@sun.com>
11341
11342         * autogen.sh:
11343           replace test -e with test -x for mkinstalldirs to be more portable.
11344           (fixes #134816)
11345
11346 2004-02-22  Benjamin Otte  <otte@gnome.org>
11347
11348         * gst/gstpad.c:
11349           revert last patch from Andy, it makes gst_pad_can_link_filtered much
11350           too noisy
11351         * gst/gsttag.c: (_gst_tag_initialize):
11352         * gst/gsttag.h:
11353           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
11354         * libs/gst/control/dparam.c: (gst_dparam_attach):
11355         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
11356           check that types for attached dparams match
11357
11358 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11359
11360         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
11361         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11362         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11363           fix errors
11364
11365 2004-02-20  Andy Wingo  <wingo@pobox.com>
11366
11367         * gst/gstbin.c:
11368         * gst/gstbuffer.c:
11369         * gst/gstplugin.c:
11370         * gst/registries/gstxmlregistry.c: 
11371         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
11372
11373         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
11374         (gst_element_add_pad): DEBUG->INFO, some fixes.
11375         (gst_element_get_compatible_pad_template): Just see if the
11376         templates' caps intersect, not if one is a strict subset of the
11377         other. This conforms more to what gst_pad_link_intersect() does.
11378         (gst_element_class_add_pad_template): Don't memcpy the pad
11379         template, just ref it.
11380         (gst_element_get_compatible_pad_filtered): Clean up debug messages
11381
11382         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
11383         (gst_pad_link_filtered): Debug changes.
11384         (gst_pad_link_prepare): New function, consolidated from
11385         can_link_filtered and link_filtered.
11386
11387         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
11388         look more like that of the functions in gstelement.c
11389
11390         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
11391         object, and return the empty string if object is NULL.
11392
11393         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
11394         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
11395         LOG, not DEBUG. We still get flex info on debug.
11396
11397         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
11398         debug string more verbose.
11399         (plugin_times_older_than): DEBUG->LOG.
11400
11401 2004-02-20  Julien MOUTTE <julien@moutte.net>
11402
11403         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
11404         will emit found_tag for each stream they demux with the codec.
11405
11406 2004-02-20  Benjamin Otte  <otte@gnome.org>
11407
11408         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
11409           copy navigation event correctly. Check freeing tag lists. 
11410         * gst/gstthread.c: (gst_thread_change_state):
11411           don't abort() on state changing mess - it might happen because of
11412           bugs.
11413         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
11414           use boxed functions
11415         * gst/gstvalue.h:
11416           fix GST_VALUE_HOLDS_CAPS
11417
11418 2004-02-19  David Schleef  <ds@schleef.org>
11419
11420         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
11421         and use it for GST_FUNCTION.  (bug #134750)
11422
11423 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11424
11425         * po/fr.po:
11426         * po/nl.po:
11427           updating translations
11428
11429 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11430
11431         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
11432
11433 2004-02-18  kost@imn.htwk-leipzig.de
11434
11435         reviewed by: David Schleef  <ds@schleef.org>
11436
11437         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
11438         for libgstcontrol.
11439
11440 2004-02-18  David Schleef  <ds@schleef.org>
11441
11442         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11443         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11444         (gst_dpsmooth_new): Additional fixes to get double dparams working.
11445         * tools/gst-inspect.c: (print_element_info): Support dumping of
11446         double dparam information.
11447
11448 2004-02-17  David Schleef  <ds@schleef.org>
11449
11450         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11451         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
11452         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
11453         Use GST_TYPE_CAPS in signal prototype.
11454         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
11455         Convert GST_TYPE_CAPS to boxed.
11456         * gst/gstelement.c: (gst_element_class_init):
11457         Use GST_TYPE_TAG_LIST in signal prototype.
11458         * gst/gstindex.c: (gst_index_class_init):
11459         * gst/gstindex.h:
11460         Add GST_TYPE_INDEX_ENTRY type.
11461         * gst/gstmarshal.list:
11462         Add necessary marshal types.
11463         * gst/gstpad.c: (gst_real_pad_class_init),
11464         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
11465         (gst_pad_recover_caps_error):
11466         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
11467         * gst/gststructure.c: (_gst_structure_initialize),
11468         (gst_structure_copy), (_gst_structure_copy_conditional):
11469         * gst/gststructure.h:
11470         Convert GST_TYPE_STRUCTURE to boxed.
11471         * gst/gsttag.c: (gst_tag_list_get_type):
11472         * gst/gsttag.h:
11473         Add GST_TYPE_TAG_LIST type.
11474
11475 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11476
11477         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
11478         to what we agreed with david.
11479         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
11480
11481 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11482
11483         * po/nl.po: update translation
11484
11485 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11486
11487         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
11488           throw an error if spider is trying to play a mime type there is
11489           no decoder for
11490         * po/POTFILES.in:
11491           add gst/autoplug/gstspider.c for translation
11492
11493 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11494
11495         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
11496         silently when the pad is negotiating.
11497
11498 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11499
11500         * docs/faq/Makefile.am:
11501           add script to run gstreamer uninstalled 
11502         * docs/faq/faq.xml:
11503         * docs/faq/developing.xml:
11504         * docs/faq/gst-uninstalled:
11505           extract script to run gstreamer uninstalled
11506         * docs/manuals.mak:
11507           add EXTRA_SOURCES variable for Makefile.am's to set to
11508           use additional SOURCE files for the doc build
11509
11510 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11511
11512         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
11513
11514 2004-02-15  Julien MOUTTE  <julien@moutte.net>
11515
11516         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
11517         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
11518         an error was thrown by osssink. Basically a state change failure for
11519         an element in a different scheduling group was considered as
11520         successful, which means that caps nego was going on and weird stuff
11521         happened. Like I wrote in the comment there, if someone wants to
11522         revert that please drop me a mail explaining why because I really see
11523         no point in keeping that broken behaviour there.
11524         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
11525         be empty, we then return NULL which will trigger a nice error when 
11526         pulling from the pad.
11527
11528 2004-02-13  David Schleef  <ds@schleef.org>
11529
11530         * libs/gst/control/dparam.c: (gst_dparam_class_init),
11531         (gst_dparam_get_property), (gst_dparam_set_property),
11532         (gst_dparam_do_update_default):
11533         * libs/gst/control/dparam.h:
11534         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11535         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
11536         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
11537         (gst_dpsmooth_do_update_double):
11538         * libs/gst/control/dparam_smooth.h:
11539         * libs/gst/control/dparammanager.c:
11540         (gst_dpman_inline_direct_update):
11541         Add support for double dparams.
11542
11543 2004-02-13  David Schleef  <ds@schleef.org>
11544
11545         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
11546         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
11547
11548 2004-02-13  Mattias Wadman  <mattias@sudac.org>
11549
11550         reviewed by: David Schleef  <ds@schleef.org>
11551
11552         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
11553         (gst_fdsrc_init), (gst_fdsrc_set_property),
11554         (gst_fdsrc_get_property), (gst_fdsrc_get):
11555         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
11556         and sends an EOS event if file descriptor reading times out.
11557
11558 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11559
11560         * configure.ac:
11561           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
11562
11563 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11564
11565         * configure.ac: pass required libxml version as argument
11566         (bug reported by Christophe Fergeau)
11567
11568 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11569   
11570         * docs/gst/gstreamer-docs.sgml:
11571         * docs/gst/tmpl/gstxml.sgml:
11572         * docs/libs/gstreamer-libs-docs.sgml:
11573           version API docs
11574
11575 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11576
11577         * gst/gstinfo.c:
11578         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
11579         (gst_registry_pool_feature_filter):
11580         * gst/gstthread.c: (gst_thread_class_init):
11581         * gst/gstvalue.c:
11582           add includes exposed by building without libxml
11583         * gst/indexers/Makefile.am:
11584           do not build fileindex when LOADSAVE disabled; we should have
11585           a better libxml check later since fileindex depends on xml, not
11586           LOADSAVE or REGISTRY
11587         * libs/gst/control/Makefile.am:
11588           link with m
11589         * tools/Makefile.am:
11590           fix wrong source code for gst-xmlinspect
11591
11592 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11593
11594         * configure.ac:
11595           fix gcov help output
11596           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
11597         * docs/random/release:
11598           some updated releasing notes
11599         * gstreamer.spec.in:
11600           more updates
11601
11602 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11603
11604         * docs/faq/faq.xml:
11605         * docs/manual/manual.xml:
11606         * docs/pwg/pwg.xml:
11607         * docs/pwg/titlepage.xml:
11608           put version in documentation
11609
11610 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11611
11612         * tools/Makefile.am: fix man page installation
11613
11614 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11615
11616         * configure.ac:
11617           don't check for libxml when load/save and registry disabled (#105844)
11618         * gstreamer.spec.in:
11619           sync with fedora candidate spec
11620
11621 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11622
11623         * po/fr.po:
11624         * po/nl.po:
11625           replace multidisksrc with multifilesrc
11626
11627 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11628
11629         * po/POTFILES.in:
11630           update to multidisksrc => multifilesrc file renaming (#134145)
11631
11632 2004-02-11  David Schleef  <ds@schleef.org>
11633
11634         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
11635         * docs/gst/tmpl/gstpadtemplate.sgml: same
11636         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
11637         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
11638         fixing dance.
11639         * gst/gstutils.c: Remove disabled code that uses GstProps.
11640         * gst/registries/gstxmlregistry.h: same
11641         * docs/random/ds/0.9-suggested-changes: random notes
11642
11643 2004-02-11  kost@imn.htwk-leipzig.de
11644
11645         reviewed by: David Schleef  <ds@schleef.org>
11646
11647         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
11648         initialisation of clock (bug #134128)
11649
11650 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11651
11652         * configure.ac:
11653         * gst/elements/Makefile.am:
11654         * gst/elements/gstelements.c:
11655         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
11656         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
11657         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
11658         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
11659         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
11660         * gst/elements/gstmultifilesrc.h:
11661           rename multidisksrc to multifilesrc (part of #122200)
11662
11663 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11664
11665         * docs/manuals.mak:
11666           fix automake complaints
11667         * gst-element-check.m4:
11668           fix unquotedness
11669
11670 2004-02-11  David Schleef  <ds@schleef.org>
11671
11672         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
11673         * gst/gstatomic_impl.h: Disable sparc implementation.
11674
11675 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11676
11677         * gst-element-check.m4:
11678           fix underquoted macros as reported by automake 1.8.x (#133800)
11679         * configure.ac:
11680           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
11681           by autopoint (fixes #132996)
11682
11683 2004-02-10  Andy Wingo  <wingo@pobox.com>
11684
11685         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
11686         way to do inheritance.
11687         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
11688         (gst_pad_get_query_types, gst_pad_get_query_types_default):
11689         Routine docs.
11690         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
11691         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
11692         doc.
11693         (gst_pad_unlink, gst_pad_is_linked): Docs.
11694         (gst_pad_renegotiate): A brief description of capsnego.
11695         (gst_pad_try_set_caps): Document.
11696         (gst_pad_try_set_caps_nonfixed): Document.
11697         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
11698         (gst_pad_set_parent): Deprecated (although not out of the API).
11699         (gst_pad_get_parent): Deprecated, although many plugins use this.
11700         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
11701         are private and will go away in 0.9.
11702         (gst_pad_perform_negotiate): Doc.
11703         (gst_pad_link_unnegotiate): I think this is meant to be static.
11704         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
11705         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
11706         (gst_pad_get_peer): Doc updates.
11707         (gst_pad_caps_change_notify): Doc.
11708         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
11709         (gst_ghost_pad_new): Doc fixes.
11710
11711         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
11712         (gst_object_check_uniqueness): 
11713
11714         * gst/gstelement.c (gst_element_add_pad) 
11715         (gst_element_add_ghost_pad, gst_element_remove_pad) 
11716         (gst_element_remove_ghost_pad, gst_element_get_pad) 
11717         (gst_element_get_static_pad, gst_element_get_pad_list) 
11718         (gst_element_class_get_pad_template_list) 
11719         (gst_element_class_get_pad_template): Work on the docs.
11720         (gst_element_get_pad_template_list): Uses the class method.
11721         (gst_element_get_compatible_pad_template): Docs, and consolidate
11722         some test conditions. 
11723         (gst_element_get_pad_from_template): New static function.
11724         (gst_element_request_compatible_pad): Docs, and work with
11725         non-request compatible templates. 
11726         (gst_element_get_compatible_pad_filtered): Docs and remove
11727         redundant checks.
11728         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
11729         (gst_element_link_filtered, gst_element_link_many) 
11730         (gst_element_link, gst_element_link_pads) 
11731         (gst_element_unlink_many): Docs.
11732
11733 2004-02-05  Andy Wingo  <wingo@pobox.com>
11734
11735         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
11736         s/pointer/boxed/.
11737
11738         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
11739
11740         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
11741         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
11742         with the type=GST_TYPE_CAPS. This allows language bindings to know
11743         what kind of data they're dealing with.
11744
11745         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
11746         to NULL when g_value_init is called. GstCaps, which rolls its own
11747         type implementation, now does the same instead of allocating empty
11748         caps.
11749         (_gst_caps_initialize, _gst_caps_collect_value,
11750         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
11751         table methods. This allows G_VALUE_COLLECT to work.
11752
11753 2004-02-05  Andy Wingo  <wingo@pobox.com>
11754
11755         * configure.ac:
11756         * testsuite/Makefile.am (SUBDIRS): 
11757         * testsuite/ghostpads/Makefile.am: 
11758         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
11759
11760         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
11761         These two routines are the only ones that set
11762         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
11763         pad template. They should be made static, depending on ABI needs.
11764         (gst_real_pad_dispose): Handle the case of ghost pads without a
11765         parent. Assert after dealing with ghost pads that the ghost pad
11766         list is empty.
11767         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
11768         set after creation.
11769         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
11770         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
11771         functions. set_property will call add_ghost_pad/remove_ghost_pad
11772         as appropriate.
11773         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
11774
11775         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
11776         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
11777         (gst_element_remove_pad): Handle ghost pads as well.
11778         (gst_element_remove_ghost_pad): Deprecated (could be removed,
11779         depending on API-stability needs).
11780
11781 2004-02-05  Andy Wingo  <wingo@pobox.com>
11782
11783         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
11784         of course they're const
11785
11786 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11787
11788         * tools/Makefile.am:
11789         * tools/gst-feedback:
11790         * tools/gst-feedback-0.7:
11791           make gst-feedback versioned too for consistency
11792
11793 2004-02-11  David Schleef  <ds@schleef.org>
11794
11795         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11796         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
11797
11798 2004-02-10  Julien MOUTTE <julien@moutte.net>
11799
11800         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
11801         the structure does not contain a valid tag list. Adding a safety check
11802         to remove a noisy warning in that case.
11803
11804 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
11805
11806         * gst/gst.c: fix name to be in line with others
11807
11808 2004-02-09  Julien MOUTTE <julien@moutte.net>
11809
11810         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
11811         not shout that loud when len is 0. Just return 0 silently.
11812
11813 2004-02-09  Julien MOUTTE  <julien@moutte.net>
11814
11815         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
11816         because data_unref has one and I prefer the debug to be symetric.
11817         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
11818         were refed when added to the queue and unrefed only once when the queue
11819         was flushed. Now the flush handler unref the buffers two times : first
11820         unref for the ref added when pushing in the queue's tail and second
11821         unref to destroy the flushed buffer.
11822
11823 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
11824
11825         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
11826
11827 2004-02-06  David Schleef  <ds@schleef.org>
11828
11829         * docs/random/ds/0.9-suggested-changes: Random ramblings
11830         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
11831         to int before printing.
11832         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
11833         * gst/parse/parse.l: same.  See bug #129600
11834
11835 2004-02-06  David Schleef  <ds@schleef.org>
11836
11837         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
11838         (gst_index_add_entry), (gst_index_add_associationv),
11839         (gst_index_add_association): Add gst_index_add_associationv()
11840         and clean up gst_index_add_association(). #127133
11841
11842 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11843
11844         * autogen.sh: check out common with right tag if CVS/Tag exists
11845
11846 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11847
11848         * testsuite/ghostpads/ghostpads.c: (main):
11849           fix testsuite from segfaulting
11850
11851 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11852
11853         * Makefile.am: add release target
11854         * configure.ac: bump nano to 1
11855         * docs/random/release:
11856
11857 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11858
11859         * gst/gstcaps.h:
11860         * gst/gstelement.c: (gst_element_base_class_init),
11861         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11862         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11863         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11864         (gst_real_pad_dispose):
11865         * gst/gststructure.c: (gst_structure_free),
11866         (gst_structure_from_string):
11867           put reverted patch back in
11868         * gst/gstelement.c: (gst_element_remove_pad):
11869           free explicit caps if they're set
11870         * gst/gstpad.c: (_gst_pad_default_fixate_func):
11871           copy the structure when fixating
11872
11873 2004-02-05  David Schleef  <ds@schleef.org>
11874
11875         * gst/gstmarshal.list:
11876         * gst/gstpad.c: (gst_real_pad_class_init),
11877         (_gst_real_pad_fixate_accumulator):
11878         Revert POINTER->BOXED change in signal marshaller.
11879
11880 === release 0.7.4 ===
11881                                                                                 
11882 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11883                                                                                 
11884         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
11885         * configure.ac: changed for release
11886
11887 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
11888
11889         * gstreamer.spec.in:
11890           bump required version of gtk-doc
11891
11892 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11893
11894         * gst/gstcaps.h:
11895         * gst/gstelement.c: (gst_element_base_class_init),
11896         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11897         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11898         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11899         (gst_real_pad_dispose):
11900         * gst/gststructure.c: (gst_structure_free),
11901         (gst_structure_from_string):
11902           revert patch that breaks applications, reapply after release
11903           to get this fixed properly
11904
11905 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11906
11907         * gst/gsttag.c: (_gst_tag_initialize):
11908         * gst/gsttag.h:
11909           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
11910
11911 2004-02-04  David Schleef  <ds@schleef.org>
11912
11913         Fix some memleaks:
11914         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
11915         (gst_spider_plug_from_srcpad):
11916         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
11917
11918 2004-02-04  David Schleef  <ds@schleef.org>
11919
11920         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
11921         a GstRealPad before accessing its structure members.
11922
11923 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11924
11925         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
11926         (gst_clock_get_speed):
11927         * gst/gstclock.h:
11928           reset padding, remove unused fields
11929
11930 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11931
11932         * gst/autoplug/gstspideridentity.c:
11933         (gst_spider_identity_sink_loop_type_finding):
11934           use get_allowed_caps, not get_caps (fixes #132519)
11935         * gst/elements/gsttypefind.c: (stop_typefinding):
11936           use correct order when sending buffers and seeking
11937
11938 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11939
11940         * configure.ac:
11941         * gst/gstelement.h:
11942         * gst/gstpad.h:
11943         * gst/gstqueue.h:
11944           upgrade libtool CURRENT, reset padding
11945
11946 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11947
11948         * configure.ac:
11949           bump to prerelease
11950           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
11951
11952 2004-02-04  David Schleef  <ds@schleef.org>
11953
11954         * docs/random/ds/0.9-suggested-changes: random notes
11955         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
11956         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
11957         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
11958         expansion.
11959         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
11960         (gst_filesink_get_query_types): same
11961         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
11962         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
11963         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
11964         to use new GST_PTR_FORMAT.
11965         * gst/gstelement.h: deprecate function factory macros
11966         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
11967         These are our last variadic macros that can't be replaced with
11968         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
11969         attempting to deprecate gst_element_clock_wait().
11970         * gst/gstevent.h: same
11971         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11972         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
11973         * gst/gstpad.h: deprecate function factory macros similar to above.
11974
11975 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11976
11977         * configure.ac:
11978         * tools/Makefile.am:
11979         * tools/gst-run.c: (popt_callback), (hash_print_key),
11980         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
11981         (get_candidates), (main):
11982           add new source file to generate non-versioned wrapper binaries
11983           for our tools.
11984
11985 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11986
11987         * gst/gstevent.c: (_gst_event_free):
11988           actually break; inside the switch statement
11989         * gst/parse/grammar.y:
11990           fix memleak where GValues weren't unset
11991
11992 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11993
11994         * gst/gststructure.c: (gst_structure_from_string):
11995           fix huge memleak
11996         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
11997         (new_entry), (gst_type_find_element_chain):
11998         * gst/gstelement.c: (gst_element_base_class_init),
11999         (gst_element_class_set_details):
12000         * gst/gstpad.c: (gst_pad_can_link_filtered):
12001           fix smaller memleaks
12002         * gst/gstpad.c: (gst_real_pad_dispose):
12003           check that explicit caps are gone
12004         * gst/gststructure.c: (gst_structure_free):
12005           actually free the structure
12006         * gst/gstelement.c: (gst_element_clear_pad_caps):
12007           unset explicit caps
12008
12009 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12010
12011         * tools/Makefile.am:
12012           use AM_CFLAGS since all the CFLAGS are the same
12013           use AM_LDFAGS
12014
12015 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12016
12017         * docs/manual/gnome.xml:
12018           expand example a little
12019         * gst/gst.c: (gst_init_with_popt_table),
12020         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
12021           make sure popt option displays are done with right textdomain
12022           use GstPoptOption type
12023         * gst/gst.h:
12024           create GstPoptOption type
12025
12026 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12027
12028         * gst/gsterror.c: (_gst_stream_errors_init):
12029         * gst/gsterror.h:
12030           adding error type for no codec
12031         * po/POTFILES.in:
12032           add gst-inspect
12033         * po/nl.po:
12034           update dutch translation
12035         * tools/gst-inspect.c: (print_element_list), (main):
12036           do proper internationalization
12037         * tools/gst-launch.c: (idle_func):
12038           remove commented out function call
12039
12040 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12041
12042         * docs/README:
12043           add some error fixing notes
12044         * docs/gst/gstreamer-sections.txt:
12045           remove double entries
12046         * docs/gst/tmpl/gstbin.sgml:
12047         * docs/gst/tmpl/gstclock.sgml:
12048           remove override
12049         * docs/gst/tmpl/gstelement.sgml:
12050         * docs/gst/tmpl/gstindex.sgml:
12051         * docs/gst/tmpl/gstobject.sgml:
12052         * docs/gst/tmpl/gstpadtemplate.sgml:
12053         * docs/gst/tmpl/gstreamer-unused.sgml:
12054         * docs/gst/tmpl/gsttag.sgml:
12055         * docs/gst/tmpl/gstthread.sgml:
12056         * docs/gst/tmpl/gstxml.sgml:
12057         * gst/gsttag.h:
12058           sync header prototypes with c decls
12059         * gst/gsttaginterface.c:
12060           fix doc headers
12061
12062 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12063
12064         * gst/parse/Makefile.am:
12065         * gst/gstobject.h:
12066           get rid of gstmarshal.h dependency. It's not needed.
12067         * gst/gst.h:
12068         * gst/elements/gstfakesink.c:
12069         * gst/elements/gstfakesrc.c:
12070         * gst/elements/gstidentity.c:
12071         * gst/gstbin.c:
12072         * gst/gstelement.c:
12073         * gst/gstindex.c:
12074         * gst/gstobject.c:
12075         * gst/gstpad.c:
12076         * gst/gstthread.c:
12077         * gst/gstxml.c:
12078         * libs/gst/control/dparam.c:
12079         * libs/gst/control/dparammanager.c:
12080           include gstmarshal.h.
12081         Fixes #132045
12082
12083 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12084
12085         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
12086         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
12087         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
12088         * gst/elements/gstfilesrc.h:
12089           don't ref the filesrc when creating mmaped buffers. Don't keep a
12090           list of not-yet-destroyed buffers.
12091         * gst/gstbuffer.h:
12092           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
12093
12094 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12095
12096         * gst/gst.c: (init_pre):
12097           remove textdomain
12098
12099 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12100
12101         * docs/pwg/advanced-events.xml:
12102         * docs/pwg/advanced-scheduling.xml:
12103         * docs/pwg/intro-basics.xml:
12104         * docs/pwg/other-manager.xml:
12105         * docs/pwg/other-nton.xml:
12106         * docs/pwg/other-ntoone.xml:
12107         * docs/pwg/other-oneton.xml:
12108         * docs/pwg/pwg.xml:
12109           All sort of documentation... Forgot what. Point is that I want this
12110           in before I leave. The 'other-*' will be the last section and will
12111           explain issues specific to these type of elements.
12112
12113 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12114
12115         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12116         (gst_filesrc_get_read):
12117           set all the values on buffers that we can
12118
12119 2004-02-02  David Schleef  <ds@schleef.org>
12120
12121         Change usage of isblah() to g_ascii_isblah() to be more locale
12122         independent.  (#133076)
12123         * gst/gsturi.c: (gst_uri_protocol_check_internal):
12124         * gst/gstutils.c:
12125         * gst/parse/parse.l:
12126
12127 2004-02-02  Jon Trowbridge  <trow@gnu.org>
12128
12129         reviewed by: David Schleef  <ds@schleef.org>
12130
12131         Fix memory leaks:
12132         * gst/gstcaps.c: (gst_caps_to_string):
12133         * gst/registries/gstxmlregistry.c:
12134         (gst_xml_registry_add_path_list_func),
12135         (gst_xml_registry_parse_padtemplate):
12136
12137 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12138
12139         * gst/gstelement.c: (gst_element_default_error):
12140           suffix error messages with period
12141
12142 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12143
12144         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12145         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12146         * gst/gsterror.c: (gst_error_get_message):
12147           Suffix with dots
12148         * po/fr.po:
12149         * po/nl.po:
12150           Update translation files
12151
12152 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12153
12154         * gst/autoplug/gstspideridentity.c:
12155         (gst_spider_identity_sink_loop_type_finding):
12156         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12157         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12158         (gst_filesink_close_file), (gst_filesink_handle_event),
12159         (gst_filesink_chain):
12160         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12161         (gst_filesrc_get_read), (gst_filesrc_open_file):
12162         * gst/elements/gstidentity.c: (gst_identity_chain):
12163         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12164         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12165         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12166         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12167         * gst/gsterror.c: (_gst_core_errors_init),
12168         (_gst_library_errors_init), (_gst_resource_errors_init),
12169         (_gst_stream_errors_init), (gst_error_get_message):
12170         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12171         (gst_pad_recover_caps_error), (gst_pad_pull):
12172         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12173         * gst/schedulers/gstbasicscheduler.c:
12174         (gst_basic_scheduler_chainhandler_proxy),
12175         (gst_basic_scheduler_gethandler_proxy),
12176         (gst_basic_scheduler_cothreaded_chain):
12177           Suffix error messages with period.
12178           Use (NULL) instead of NULL
12179
12180 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12181
12182         * docs/gst/tmpl/gstelement.sgml:
12183         * docs/gst/tmpl/gstxml.sgml:
12184         * gst/gstelement.c: (gst_element_error_full):
12185           add element path to error
12186
12187 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12188
12189         * docs/random/mimetypes:
12190           update raw int/float info
12191         * gst/gsttag.c: (_gst_tag_initialize):
12192         * gst/gsttag.h:
12193           add GST_TAG_ENCODER
12194
12195 2004-01-30  David Schleef  <ds@schleef.org>
12196
12197         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
12198           missing (#132991)
12199
12200 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
12201
12202         reviewed by Benjamin Otte 
12203           parts of the patch submitted in bug #113913
12204
12205         * configure.ac:
12206           use AC_C_INLINE. Use = instead of == with test
12207         * examples/plugins/example.c:
12208         * gst/autoplug/gstspideridentity.c:
12209         * gst/elements/gstfdsrc.c:
12210         * gst/elements/gstfilesrc.c:
12211         * gst/elements/gstidentity.c:
12212         * gst/elements/gstmultidisksrc.c:
12213         * gst/elements/gststatistics.c:
12214         * gst/gstelement.c:
12215         * gst/gstobject.c:
12216         * gst/gstpad.c:
12217         * gst/gstpipeline.c:
12218         * gst/gstthread.c:
12219           don't end enums with a comma
12220         * gst/gstindex.c: (gst_index_compare_func):
12221           do explicit casting to gint
12222         * gst/gsttrace.c: (gst_trace_text_flush):
12223           #define strsize as a macro
12224
12225 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
12226
12227         * docs/README:
12228         * docs/gst/gstreamer-docs.sgml:
12229         * docs/gst/gstreamer-sections.txt:
12230         * docs/gst/tmpl/gstelement.sgml:
12231         * docs/gst/tmpl/gsterror.sgml:
12232         * docs/gst/tmpl/gstinterface.sgml:
12233         * docs/gst/tmpl/gstreamer-unused.sgml:
12234         * docs/gst/tmpl/gststructure.sgml:
12235         * docs/gst/tmpl/gsttag.sgml:
12236         * docs/gst/tmpl/gsttaginterface.sgml:
12237         * docs/gst/tmpl/gstvalue.sgml:
12238         make sure all API ends up in the built docs
12239         * gst/gstinterface.c:
12240         * gst/gststructure.c: (gst_structure_id_set_value),
12241         (gst_structure_set_value), (gst_structure_id_get_value):
12242         * gst/gststructure.h:
12243         * gst/gstvalue.h:
12244         sync .h with .c declarations
12245
12246 2004-01-30  Julien Moutte  <julien@moutte.net>
12247
12248         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
12249         Ronald will fix riffread.
12250
12251 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12252
12253         * docs/pwg/advanced-interfaces.xml:
12254           Added tuner interface docs.
12255
12256 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12257
12258         * docs/random/mimetypes:
12259           correct Theora information
12260         * gst/gstelement.h:
12261           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
12262
12263 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12264
12265         * gst/gstelement.c: (gst_element_error_full):
12266         * gst/gstelement.h:
12267           GST_ELEMENT_ERROR in enum -> _IN_ERROR
12268
12269 2004-01-29  Julien MOUTTE  <julien@moutte.net>
12270
12271         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
12272         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
12273         again and even before DISCONT.
12274         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
12275         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
12276         bytestream so that it's not stopping to fill the bytestream if events
12277         different than EOS or DISCONT are received. Instead it process them so
12278         that they go downstream.
12279
12280 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12281
12282         * docs/gst/tmpl/gstelement.sgml:
12283         * docs/gst/tmpl/gstreamer-unused.sgml:
12284         * docs/gst/tmpl/gstxml.sgml:
12285         * gst/autoplug/gstspideridentity.c:
12286         (gst_spider_identity_sink_loop_type_finding):
12287         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12288         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12289         (gst_filesink_close_file), (gst_filesink_handle_event),
12290         (gst_filesink_chain):
12291         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12292         (gst_filesrc_get_read), (gst_filesrc_open_file):
12293         * gst/elements/gstidentity.c: (gst_identity_chain):
12294         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12295         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12296         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12297         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12298         * gst/gstelement.h:
12299         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12300         (gst_pad_recover_caps_error), (gst_pad_pull):
12301         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12302         * gst/schedulers/gstbasicscheduler.c:
12303         (gst_basic_scheduler_chainhandler_proxy),
12304         (gst_basic_scheduler_gethandler_proxy),
12305         (gst_basic_scheduler_cothreaded_chain):
12306           gst_element_error -> GST_ELEMENT_ERROR
12307
12308 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12309
12310         * docs/Makefile.am:
12311         * docs/gst/tmpl/gstelement.sgml:
12312         * docs/gst/tmpl/gstxml.sgml:
12313         * docs/manuals.mak:
12314         * docs/pwg/advanced-request.xml:
12315         * docs/pwg/advanced-scheduling.xml:
12316         * docs/pwg/advanced-tagging.xml:
12317           fix non-validating docbook using CDATA
12318           make sure make check-local gets run first to check if it validates
12319
12320 2004-01-29  Julien MOUTTE <julien@moutte.net>
12321
12322         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
12323         handling (up and downstream).
12324         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
12325         my_filter thing.
12326
12327 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12328
12329         * docs/pwg/advanced-tagging.xml:
12330           Add docs about tag writing.
12331
12332 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12333
12334         * docs/pwg/advanced-tagging.xml:
12335           Add a part about tag reading and application signalling... Tag
12336           writing still needs to be documented.
12337         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12338           We can set file locations in READY, too.
12339
12340 2004-01-29  Julien MOUTTE <julien@moutte.net>
12341
12342         * docs/random/ds/element-checklist: Adding some notes about src
12343         events.
12344
12345 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12346
12347         * docs/random/mimetypes:
12348           Update docs to point to correct elements for various mimetypes, and
12349           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
12350           <stephane.loeuillet@tiscali.fr>.
12351
12352 2004-01-28  David Schleef  <ds@schleef.org>
12353
12354         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
12355
12356 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12357
12358         * docs/random/mimetypes:
12359           update docs for audio/x-raw-float. Add "buffer-frames=0 means
12360           undefined"
12361         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12362           make it only work in NULL.
12363         * gst/gstcaps.c:
12364           don't posion NULL caps
12365         * gst/gstelement.c: (gst_element_set_time):
12366           add debugging statement
12367         * gst/gstelement.c: (gst_element_emit_found_tag),
12368         (gst_element_found_tag_func), (gst_element_found_tags):
12369         * gst/gstelement.h:
12370           These functions take const taglists
12371         * gst/gstpad.c: (gst_pad_proxy_getcaps):
12372           fix memleak
12373         * gst/gstpad.c: (gst_pad_event_default):
12374           make more effort on handling discont and clocks, g_warn if everything
12375           fails
12376         * gst/gststructure.c: (gst_structure_remove_fields),
12377         (gst_structure_remove_fields_valist):
12378         * gst/gststructure.h:
12379           add gst_structure_remove_fields(_valist)
12380         * gst/gsttag.c:
12381           fix doc glitch
12382
12383 2004-01-28  David Schleef  <ds@schleef.org>
12384
12385         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
12386         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
12387         Fix memory leakage of gst_caps_to_string().
12388
12389         Use GST_PTR_FORMAT instead of gst_caps_to_string():
12390         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
12391         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
12392         (gst_spider_identity_sink_loop_type_finding):
12393         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12394         (find_suggest):
12395         * gst/gstpad.c: (gst_pad_try_relink_filtered),
12396         (gst_pad_set_explicit_caps):
12397         * gst/parse/grammar.y:
12398
12399 2004-01-28  David Schleef  <ds@schleef.org>
12400
12401         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
12402         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
12403         * docs/random/ds/0.9-suggested-changes: Notes from Company.
12404         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
12405         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
12406         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
12407         (gst_debug_log_default), (_gst_info_printf_extension),
12408         (_gst_info_printf_extension_arginfo):  Add printf extension.
12409         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
12410         * gst/gststructure.c: (gst_structure_to_string),
12411         (_gst_structure_parse_value): Use gst_value_deserialize() and
12412         remove old code.
12413         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
12414         (gst_value_deserialize_boolean), (gst_strtoi),
12415         (gst_value_deserialize_int), (gst_value_deserialize_double),
12416         (gst_value_deserialize_string), (gst_value_deserialize): Implement
12417         a bunch of deserialize functions and gst_value_deserialize.
12418         * gst/gstvalue.h: er, _de_serialize, not unserialize
12419         * testsuite/caps/string-conversions.c: (main): We don't currently
12420         handle (float) in caps, so convert these to (double).
12421         * testsuite/debug/Makefile.am: Add new test for the printf extension
12422         * testsuite/debug/printf_extension.c: (main): same
12423
12424 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12425
12426         * docs/random/company/time:
12427           Add some docs about clocking and time
12428
12429 2004-01-28  Julien MOUTTE <julien@moutte.net>
12430
12431         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
12432
12433 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12434
12435         * docs/pwg/advanced-clock.xml:
12436         * docs/pwg/advanced-dparams.xml:
12437         * docs/pwg/advanced-events.xml:
12438         * docs/pwg/advanced-interfaces.xml:
12439         * docs/pwg/advanced-midi.xml:
12440         * docs/pwg/advanced-request.xml:
12441         * docs/pwg/advanced-scheduling.xml:
12442         * docs/pwg/advanced-tagging.xml:
12443         * docs/pwg/advanced-types.xml:
12444         * docs/pwg/appendix-checklist.xml:
12445         * docs/pwg/building-boiler.xml:
12446         * docs/pwg/building-chainfn.xml:
12447         * docs/pwg/building-filterfactory.xml:
12448         * docs/pwg/building-pads.xml:
12449         * docs/pwg/building-props.xml:
12450         * docs/pwg/building-signals.xml:
12451         * docs/pwg/building-state.xml:
12452         * docs/pwg/building-testapp.xml:
12453         * docs/pwg/intro-basics.xml:
12454         * docs/pwg/intro-preface.xml:
12455         * docs/pwg/other-autoplugger.xml:
12456         * docs/pwg/other-sink.xml:
12457         * docs/pwg/other-source.xml:
12458         * docs/pwg/titlepage.xml:
12459           fix up id's
12460
12461 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12462
12463         * docs/95NonPath:
12464         * docs/HACKING:
12465         * docs/README:
12466         * docs/building-the-docs-on-debian:
12467           collect relevant bits of doc info
12468
12469 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12470
12471         * docs/pwg/advanced_tagging.xml:
12472           Half-assed commit so Thomas can re-arrange document IDs here to be
12473           consistent, too.
12474
12475 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12476
12477         * docs/manual/autoplugging.xml:
12478         * docs/manual/bins-api.xml:
12479         * docs/manual/bins.xml:
12480         * docs/manual/buffers-api.xml:
12481         * docs/manual/buffers.xml:
12482         * docs/manual/clocks.xml:
12483         * docs/manual/components.xml:
12484         * docs/manual/cothreads.xml:
12485         * docs/manual/debugging.xml:
12486         * docs/manual/dparams-app.xml:
12487         * docs/manual/dynamic.xml:
12488         * docs/manual/elements-api.xml:
12489         * docs/manual/elements.xml:
12490         * docs/manual/factories.xml:
12491         * docs/manual/gnome.xml:
12492         * docs/manual/goals.xml:
12493         * docs/manual/helloworld.xml:
12494         * docs/manual/helloworld2.xml:
12495         * docs/manual/init-api.xml:
12496         * docs/manual/intro.xml:
12497         * docs/manual/links-api.xml:
12498         * docs/manual/links.xml:
12499         * docs/manual/manual.xml:
12500         * docs/manual/motivation.xml:
12501         * docs/manual/pads-api.xml:
12502         * docs/manual/pads.xml:
12503         * docs/manual/plugins-api.xml:
12504         * docs/manual/plugins.xml:
12505         * docs/manual/programs.xml:
12506         * docs/manual/queues.xml:
12507         * docs/manual/quotes.xml:
12508         * docs/manual/schedulers.xml:
12509         * docs/manual/states-api.xml:
12510         * docs/manual/states.xml:
12511         * docs/manual/threads.xml:
12512         * docs/manual/typedetection.xml:
12513         * docs/manual/xml.xml:
12514           use chapter, part, section or misc as id starts for all bits
12515
12516 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12517
12518         * docs/gst/gstreamer-sections.txt:
12519           Fix up TITLE of the sections
12520
12521 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12522
12523         * docs/pwg/advanced_interfaces.xml:
12524           Add documentation on propertyprobing.
12525         * docs/pwg/advanced_events.xml:
12526         * docs/pwg/advanced_tagging.xml:
12527         * docs/pwg/building_boiler.xml:
12528         * docs/pwg/building_filterfactory.xml:
12529         * docs/pwg/pwg.xml:
12530           Move filterfactory and tagging into their own chapter, add a chapter
12531           on events. all these are empty placeholders that will be filled in
12532           some day.
12533
12534 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12535
12536         * docs/pwg/advanced_interfaces.xml:
12537           Docs for mixer interface. Also a check for website uploading.
12538
12539 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12540
12541         * docs/HACKING:
12542         * docs/Makefile.am:
12543         * docs/faq/Makefile.am:
12544         * docs/gst/Makefile.am:
12545         * docs/gst/tmpl/gstelement.sgml:
12546         * docs/gst/tmpl/gstplugin.sgml:
12547         * docs/gst/tmpl/gstreamer-unused.sgml:
12548         * docs/libs/Makefile.am:
12549         * docs/manual/Makefile.am:
12550         * docs/manuals.mak:
12551         * docs/pwg/Makefile.am:
12552         * docs/upload.mak:
12553           Separate out upload target and make it similar for
12554           both docbook and gtk-doc docs
12555
12556 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12557
12558         * docs/manuals.mak:
12559           Fix upload target to work with freedesktop
12560
12561 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12562
12563         * docs/pwg/advanced_types.xml:
12564           Add notes on creating your own types.
12565         * docs/pwg/building_boiler.xml:
12566         * docs/pwg/building_pads.xml:
12567         * docs/pwg/building_state.xml:
12568           Add some stuff about how to retrieve values from structures, how
12569           that relates to types and change layout slightly again to be almost
12570           perfect.
12571
12572 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12573
12574         * docs/pwg/advanced_dparams.xml:
12575         * docs/pwg/advanced_scheduling.xml:
12576           Change index layout slightly.
12577
12578 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12579
12580         * docs/pwg/advanced_clock.xml:
12581         * docs/pwg/advanced_interfaces.xml:
12582         * docs/pwg/advanced_midi.xml:
12583           General placeholders for now.
12584         * docs/pwg/advanced_request.xml:
12585           Explanation about sometimes and request pads.
12586         * docs/pwg/advanced_scheduling.xml:
12587           Concept of bytestream, loopfunctions and schedulers.
12588         * docs/pwg/building_boiler.xml:
12589           Add something about plugin-init.
12590
12591 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12592
12593         * docs/pwg/building_pads.xml:
12594           Fix broken docbook
12595
12596 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12597
12598         * docs/pwg/advanced_interfaces.xml:
12599         * docs/pwg/pwg.xml:
12600           Add as a placeholder for future filling-in.
12601         * docs/pwg/basics_autoplugging.xml:
12602         * docs/pwg/basics_buffers.xml:
12603         * docs/pwg/basics_elements.xml:
12604         * docs/pwg/basics_events.xml:
12605         * docs/pwg/basics_plugins.xml:
12606         * docs/pwg/basics_types.xml:
12607           Remove, because unused (this is all in intro_basics.xml).
12608         * docs/pwg/building_signals.xml:
12609           Short intro to signals + reference to GObject docs - we really
12610           shouldn't go into these sort of things to deply because we don't
12611           use them that extensively anyway.
12612         * docs/pwg/building_state.xml:
12613           Explanation of states. Benjamin, please check.
12614         * docs/pwg/building_testapp.xml:
12615           Put everything in one page - putting only a few lines of content
12616           per page doesn't really make sense.
12617
12618           Time to get into the advanced topics. ;).
12619
12620 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12621
12622         * docs/pwg/advanced_types.xml:
12623           Finish documenting the current state of mimetypes.
12624         * docs/pwg/building_boiler.xml:
12625         * docs/pwg/building_chainfn.xml:
12626         * docs/pwg/building_pads.xml:
12627         * docs/pwg/building_props.xml:
12628         * docs/pwg/building_testapp.xml:
12629           Start documenting the "how to build a simple audio filter" part
12630           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
12631           states and (maybe?) a short introduction to capsnego in the chapter
12632           on pads (building_pads.xml). Capsnego should probably be explained
12633           fully in advanced_capsnego.xml or so.
12634
12635 2004-01-26  David Schleef  <ds@schleef.org>
12636
12637         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
12638         * gst/gstpad.h: Add new function to allow element to (somewhat)
12639         specify non-fixed caps on a pad.
12640         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
12641         that I added a few weeks ago.
12642
12643 2004-01-26  David Schleef  <ds@schleef.org>
12644
12645         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
12646           making try_set_caps() work with non-fixed caps.
12647
12648 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12649
12650         * docs/pwg/advanced_types.xml:
12651         * docs/pwg/intro_basics.xml:
12652         * docs/pwg/intro_preface.xml:
12653         * docs/pwg/pwg.xml:
12654         * docs/pwg/titlepage.xml:
12655           First try to resurrect the PWG. I'm halfway integrating the mimetypes
12656           in here (docs/random/mimetypes), and will from there on work on both
12657           updating outdated parts and adding missing parts.
12658           That doesn't mean I'll fix it completely, but I'll try at least. ;).
12659
12660 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12661
12662         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
12663           policy is set
12664
12665 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12666
12667         * gst/gstelement.h:
12668           remove gst_element_factory_get_version. It doesn't exist anymore.
12669         * gst/gstplugin.c:
12670         * gst/gstplugin.h:
12671           remove gst_plugin_set_name and change gst_plugin_get_longname to
12672           gst_plugin_get_description to match code.
12673         * gst/gsterror.h:
12674           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
12675         * gst/gstpad.c: (gst_pad_try_set_caps):
12676           make it work with nonfixed caps.
12677           Note that even in the nonfixed case the link function of the pad
12678           that tries to set caps isn't called.
12679
12680 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12681
12682         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
12683           fix bug where buffer was not assembled correctly
12684         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
12685           silence by default
12686         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12687           only seek if there's no more buffers that could work without seeking
12688
12689 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12690
12691         * gst/gsttag.c: (_gst_tag_initialize):
12692         * gst/gsttag.h:
12693           Add application tag (for encoding/muxing app).
12694
12695 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
12696
12697         * autogen.sh:
12698           make autopoint force, and libtoolize not copy
12699         * common/m4/as-docbook.m4:
12700           added docbook xml catalog setup check
12701         * common/m4/gst-doc.m4:
12702           use docbook check
12703
12704 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
12705
12706         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
12707         * gst/gsttag.h:
12708           add GstTagFlag
12709
12710 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12711
12712         * docs/gst/gstreamer-sections.txt:
12713         * docs/gst/tmpl/gst.sgml:
12714         * docs/gst/tmpl/gstbuffer.sgml:
12715         * docs/gst/tmpl/gstclock.sgml:
12716         * docs/gst/tmpl/gstelement.sgml:
12717         * docs/gst/tmpl/gstreamer-unused.sgml:
12718         * docs/gst/tmpl/gstxml.sgml:
12719           sync latest API changes to docs
12720
12721 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12722
12723         * gst/gstpluginfeature.c:
12724           fix doc snippet
12725         * tools/gst-inspect.c: (print_element_list):
12726           fix output of typefind
12727           add GPL header
12728         * tools/gst-launch.c:
12729           add GPL header
12730
12731 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12732
12733         * gst/elements/Makefile.am:
12734         * gst/elements/gstelements.c:
12735         * gst/elements/gsttypefindelement.c:
12736         * gst/elements/gsttypefindelement.h:
12737         * po/POTFILES.in:
12738         * po/fr.po:
12739         * po/nl.po:
12740           renamed gsttypefindelement to gsttypefind, conserving CVS history
12741
12742 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12743
12744         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
12745         * gst/gsttag.h:
12746           add some tags used in ogg as well
12747           fix _ in replaygain tags
12748
12749 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12750
12751         * gst/gsterror.h:
12752           fix wrong GST_LIBRARY_ERROR_ENCODE addition
12753
12754 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12755
12756         * gst/gstelement.c: (gst_element_error_full):
12757         * gst/gstelement.h:
12758           change _extended to _full
12759
12760 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12761
12762         reviewed by: <delete if not using a buddy>
12763
12764         * docs/gst/tmpl/gst.sgml:
12765         * docs/gst/tmpl/gstbuffer.sgml:
12766         * docs/gst/tmpl/gstclock.sgml:
12767         * docs/gst/tmpl/gstelement.sgml:
12768         * docs/gst/tmpl/gstreamer-unused.sgml:
12769         * docs/gst/tmpl/gstxml.sgml:
12770         * gst/gstelement.c: (gst_element_error_full):
12771         * gst/gstelement.h:
12772
12773 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12774
12775         * gst/gstelement.h: fix _gst_element_error_printf prototype
12776
12777 2004-01-20  David Schleef  <ds@schleef.org>
12778
12779         * gst/gststructure.c: (gst_structure_to_string):
12780         Convert function to use gst_value_serialize().
12781         * gst/gstvalue.c: (gst_value_serialize_list),
12782         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
12783         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
12784         (gst_value_serialize_int), (gst_value_serialize_double),
12785         (gst_string_wrap), (gst_value_serialize_string),
12786         (gst_value_serialize), (gst_value_deserialize):
12787         * gst/gstvalue.h:
12788         Add implementations for serialize.
12789
12790 2004-01-20  Julien MOUTTE  <julien@moutte.net>
12791
12792         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
12793         we want to keep that one in the future or change xvidenc.c to use 
12794         another error.
12795
12796 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12797
12798         * gst/gstelement.c: (_gst_element_error_printf):
12799         * gst/gstelement.h:
12800           privatise function
12801
12802 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12803
12804         * docs/random/error:
12805           doc explaining error system
12806         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12807           cleanup
12808
12809 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12810
12811         * gst/gst-i18n-app.h:
12812         * gst/gst-i18n-lib.h:
12813           remove inclusion of config.h
12814         * po/POTFILES.in:
12815         * po/nl.po:
12816           add gst/gstelement.c
12817
12818 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12819
12820         * po/nl.po: updated Dutch translation
12821
12822 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12823
12824         * gst/gsterror.c: (_gst_core_errors_init),
12825         (_gst_library_errors_init), (_gst_resource_errors_init),
12826         (_gst_stream_errors_init):
12827         remove ending punctuation dots
12828
12829 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12830
12831         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
12832         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
12833         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12834         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12835         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12836         use GST_ERROR_SYSTEM
12837
12838 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12839
12840         * gst/gstelement.c: (gst_element_error_printf),
12841         (gst_element_error_extended):
12842         * gst/gstelement.h:
12843           add a helper printf function so we can have NULL values passed.
12844
12845 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12846
12847         * gst/gstelement.h:
12848           add G_STMT macros to gst_element_error, which isn't strictly
12849           necessary but people tell me to anyway.
12850
12851 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
12852
12853         * gst/Makefile.am:
12854         * gst/autoplug/gstspideridentity.c:
12855         (gst_spider_identity_sink_loop_type_finding):
12856         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12857         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12858         (gst_filesink_close_file), (gst_filesink_handle_event),
12859         (gst_filesink_chain):
12860         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
12861         (gst_filesrc_map_region), (gst_filesrc_get_read),
12862         (gst_filesrc_open_file):
12863         * gst/elements/gstidentity.c: (gst_identity_chain):
12864         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12865         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12866         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12867         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
12868         * gst/gst.h:
12869         * gst/gst_private.h:
12870         * gst/gstelement.c: (gst_element_class_init),
12871         (gst_element_default_error), (gst_element_error_func),
12872         (gst_element_error_extended):
12873         * gst/gstelement.h:
12874         * gst/gsterror.c: (_gst_core_errors_init),
12875         (_gst_library_errors_init), (_gst_resource_errors_init),
12876         (_gst_stream_errors_init), (gst_error_get_message):
12877         * gst/gsterror.h:
12878         * gst/gstinfo.c: (_gst_debug_init):
12879         * gst/gstmarshal.list:
12880         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12881         (gst_pad_recover_caps_error), (gst_pad_pull):
12882         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12883         * gst/schedulers/gstbasicscheduler.c:
12884         (gst_basic_scheduler_chainhandler_proxy),
12885         (gst_basic_scheduler_gethandler_proxy),
12886         (gst_basic_scheduler_cothreaded_chain):
12887         * po/POTFILES.in:
12888         * po/fr.po:
12889         * po/nl.po:
12890           change error signal
12891           add error categories
12892
12893 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
12894
12895         * gst/gsttag.c: (_gst_tag_initialize):
12896         * gst/gsttag.h:
12897         Add replaygain tag
12898
12899 2004-01-18  Colin Walters  <walters@verbum.org>
12900
12901         * examples/retag/retag.c: Call gst_init before processing
12902         program args.  Add g_assert to _link_many call.
12903
12904 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12905
12906         * gst/gstpad.c: (gst_pad_alloc_buffer):
12907           Return a newly allocated buffer when the pad has no peer.
12908
12909 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12910
12911         * gst/gstclock.c: (gst_clock_get_time):
12912           make it compile with gcc 2.95 again.
12913           Patch by Scott Wheeler
12914
12915 2004-01-15  David Schleef  <ds@schleef.org>
12916
12917         * gst/gstcaps.h:
12918         Added gst_caps_is_simple() macro.
12919         * testsuite/caps/caps.c: (test1):
12920         * testsuite/caps/intersect2.c: (main):
12921         * testsuite/caps/intersection.c: (main):
12922         Fixes to make 'make check' work again after removing
12923         gst_caps_is_chained().
12924
12925 2004-01-15  Leif Johnson <leif@ambient.2y.net>
12926
12927         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
12928         and additions to the MIDI document.
12929
12930 2004-01-15  David Schleef  <ds@schleef.org>
12931
12932         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
12933         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
12934         of GST_RPAD_, since we don't know if it's a real or ghost pad.
12935
12936 2004-01-15  David Schleef  <ds@schleef.org>
12937
12938         * gst/gstqueue.c:
12939         * gst/gstqueue.h:
12940         Fix the spelling of "treshold" and make min_threshold actually
12941         affect the queue.
12942
12943 2004-01-15  David Schleef  <ds@schleef.org>
12944
12945         * gst/gstcaps.c:
12946         Add lots of documentation.
12947         * gst/gstcaps.h:
12948         Deprecate a few functions.
12949         * gst/gstpad.c:
12950         Removed use of deprecated functions.
12951
12952 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12953
12954         * gst/gstpad.c: (gst_pad_is_linked):
12955         * gst/gstpad.h:
12956           implement gst_pad_is_linked
12957         * gst/gstelement.h:
12958           reserve space for initiate_state_change
12959
12960 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12961
12962         * gst/autoplug/gstspideridentity.c:
12963         (gst_spider_identity_sink_loop_type_finding):
12964           break infinite loop by just returning instead of looping
12965         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
12966           set event time difference correctly. Set it to 1 second instead
12967           of 100ms to be more tolerant
12968         * gst/gstelement.c: (gst_element_set_time):
12969           add debugging output
12970
12971 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12972
12973         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
12974           query if buffers are inside the pool, ignore events
12975
12976 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12977
12978         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
12979         (gst_clock_set_speed), (gst_clock_set_active),
12980         (gst_clock_is_active), (gst_clock_reset),
12981         (gst_clock_handle_discont):
12982         * gst/gstclock.h:
12983           deprecate old interface and disable functions that aren't in use
12984           anymore.
12985         * gst/gstelement.h:
12986         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
12987         (gst_element_set_time), (gst_element_adjust_time):
12988           add concept of "element time" and functions to get/set this time.
12989         * gst/gstelement.c: (gst_element_change_state):
12990           update element time correctly.
12991         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
12992           This is a debug message, not a g_critical.
12993         * gst/gstpad.c: (gst_pad_event_default):
12994           handle discontinuous events right with element time.
12995         * gst/gstscheduler.c: (gst_scheduler_state_transition):
12996           update to clocking fixes.
12997           set clocks on elements in READY=>PAUSED. The old behaviour caused
12998           a wrong element time on the first element that started playing.
12999         * gst/schedulers/gstbasicscheduler.c:
13000         (gst_basic_scheduler_class_init):
13001         * gst/schedulers/gstoptimalscheduler.c:
13002         (gst_opt_scheduler_class_init):
13003           remove code that just implements the default behaviour.
13004         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
13005           update to use new clocking functions
13006         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
13007         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
13008           update to test new element time.
13009         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
13010           use _get_allowed_caps instead of _get_caps. This catches filtered
13011           caps correctly.
13012         * testsuite/debug/commandline.c:
13013           update for new GST_DEBUG syntax.
13014         * testsuite/threads/Makefile.am:
13015           disable a test that only works sometimes.
13016
13017 2004-01-13  Julien MOUTTE <julien@moutte.net>
13018
13019         * po/LINGUAS: Adding fr.
13020         * po/fr.po: Adding french translation.
13021
13022 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13023
13024         * gst/parse/grammar.y:
13025         * po/POTFILES.in:
13026         * po/nl.po:
13027         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
13028           translate parsing error messages
13029
13030 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13031
13032         * po/POTFILES.in: adding gst-launch
13033         * po/nl.po: updated translation, all 99 strings translated
13034         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
13035         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
13036           fix strings for translation
13037
13038 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13039
13040         * gst/gst.c:
13041           - capitalize beginnings of popt options
13042           - fix strings for translation
13043           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
13044
13045 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13046
13047         * po/README: add some notes on how to update translations
13048
13049 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13050
13051         * ABOUT-NLS: removed, is autogenerated from autopoint
13052         * autogen.sh: add autopoint stuff
13053         * configure.ac: fix up gettext stuff
13054         * gst/Makefile.am: add i18n headers to noinst_HEADERS
13055         * gst/elements/gsttypefindelement.c: add header include
13056         * gst/gettext.h: add header, copy from system-installed header
13057         * gst/gst-i18n-app.h: to be included by each app having translations
13058         * gst/gst-i18n-lib.h: to be included by each lib having translations
13059         * gst/gst.c: (init_pre): fix up gettext calls
13060         * gst/gst_private.h: remove i18n stuff, moving to separate headers
13061         * po/LINGUAS: the new way to specify translations present
13062         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
13063         * po/Makevars: the variables filled in for GStreamer
13064         * po/POTFILES.in: added new files with translations
13065         * po/de.po: has new strings
13066         * po/nl.po: readded, has new strings
13067
13068 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13069
13070         * gst/gsttag.c: fix some strings marked for translation
13071
13072 2004-01-13  Iain <iain@prettypeople.org>
13073
13074         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
13075         group when we add an element to it, cos we unref it when we remove one
13076
13077 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
13078
13079         * testsuite/debug/commandline.c: (debug_not_reached):
13080         * testsuite/debug/output.c: (check_message):
13081           fix testsuite
13082
13083 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13084
13085         * examples/cutter/.cvsignore:
13086         * examples/helloworld/.cvsignore:
13087         * examples/launch/.cvsignore:
13088         * examples/manual/.cvsignore:
13089         * examples/mixer/.cvsignore:
13090         * examples/pingpong/.cvsignore:
13091         * examples/plugins/.cvsignore:
13092         * examples/queue/.cvsignore:
13093         * examples/queue2/.cvsignore:
13094         * examples/queue3/.cvsignore:
13095         * examples/queue4/.cvsignore:
13096         * examples/retag/.cvsignore:
13097         * examples/thread/.cvsignore:
13098         * examples/typefind/.cvsignore:
13099         * examples/xml/.cvsignore:
13100         * gst/.cvsignore:
13101         * gst/autoplug/.cvsignore:
13102         * gst/elements/.cvsignore:
13103         * gst/indexers/.cvsignore:
13104         * gst/parse/.cvsignore:
13105         * gst/registries/.cvsignore:
13106         * gst/schedulers/.cvsignore:
13107         * libs/gst/bytestream/.cvsignore:
13108         * libs/gst/control/.cvsignore:
13109         * libs/gst/getbits/.cvsignore:
13110         * tests/.cvsignore:
13111         * tests/bufspeed/.cvsignore:
13112         * tests/instantiate/.cvsignore:
13113         * tests/memchunk/.cvsignore:
13114         * tests/muxing/.cvsignore:
13115         * tests/sched/.cvsignore:
13116         * tests/seeking/.cvsignore:
13117         * tests/threadstate/.cvsignore:
13118         * testsuite/.cvsignore:
13119         * testsuite/caps/.cvsignore:
13120         * testsuite/cleanup/.cvsignore:
13121         * testsuite/dynparams/.cvsignore:
13122         * testsuite/plugin/.cvsignore:
13123         * tools/.cvsignore:
13124           update - this is huge, because it includes *.bb, *.bbg and *.da files
13125           which are generated for gcov.
13126
13127 2004-01-11  David Schleef  <ds@schleef.org>
13128
13129         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
13130         a function to parse integers in ways that strto[u]l() does not.
13131
13132 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13133
13134         * tools/gst-inspect.c: (print_caps):
13135           improve output of caps a bit
13136
13137 2004-01-11  David Schleef  <ds@schleef.org>
13138
13139         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
13140         inherit correct flags (READONLY and DONTKEEP).
13141
13142 2004-01-11  David Schleef  <ds@schleef.org>
13143
13144         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
13145         (gst_filesrc_map_region):
13146         * gst/gstbuffer.c: (_gst_buffer_initialize),
13147         (_gst_buffer_sub_free), (gst_buffer_default_copy),
13148         (gst_buffer_new), (gst_buffer_create_sub),
13149         (gst_buffer_is_span_fast), (gst_buffer_span):
13150         * gst/gstbuffer.h:
13151         Change GstBuffer private structure element names. (all files)
13152         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
13153         (gst_queue_link):
13154         * gst/gstqueue.h:
13155         Implement getcaps/pad_link functions that handle the case where
13156         there are data in the queue.
13157
13158 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13159
13160         * gst/elements/gstbufferstore.c:
13161           initialize debugging structure correctly
13162         * gst/elements/gsttee.c: (gst_tee_set_property):
13163           g_object_notify when property was changed
13164         * gst/elements/gsttypefindelement.c:
13165         (gst_type_find_element_change_state):
13166           clear caps correctly
13167
13168 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13169
13170         * gst/gstqueue.c: (gst_queue_init):
13171           Use better defaults for when a queue should block. This
13172           gets rid of jerky playback for quite a few files.
13173           It takes more memory.
13174
13175 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
13176
13177         (gst_xml_registry_parse_padtemplate):
13178           make critical message slightly more useful
13179
13180 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13181
13182         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
13183         (gst_debug_message_get), (gst_debug_log_default):
13184         * gst/gstinfo.h:
13185           Change gst_debug_log(_valist) to take a const format string.
13186           Change prototype of log function and functions using those to 
13187           take a GstDebugMessage instead of a string that requires using
13188           gst_debug_message_get.
13189
13190 2004-01-08  David Schleef  <ds@schleef.org>
13191
13192         * Makefile.am:
13193         * configure.ac:
13194         Add option --enable-gcov to build GStreamer with -fprofile-arcs
13195         and -ftest-coverage, which allows gcov to show information about
13196         testsuite coverage.
13197
13198 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13199
13200         * gst/gstutils.h:
13201           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
13202           GST_PARENT_CALL_WITH_DEFAULT
13203         * gst/elements/gstaggregator.c: 
13204         * gst/elements/gstbufferstore.c: 
13205         * gst/elements/gstfakesink.c: 
13206         * gst/elements/gstfakesrc.c: 
13207         * gst/elements/gstfdsink.c: 
13208         * gst/elements/gstfdsrc.c: 
13209         * gst/elements/gstfilesink.c: 
13210         * gst/elements/gstfilesrc.c: 
13211         * gst/elements/gstidentity.c: 
13212         * gst/elements/gstmd5sink.c: 
13213         * gst/elements/gstmultidisksrc.c:
13214         * gst/elements/gstpipefilter.c: 
13215         * gst/elements/gstshaper.c:
13216         * gst/elements/gststatistics.c:
13217         * gst/elements/gsttee.c:
13218         * gst/elements/gsttypefindelement.c:
13219           use them.
13220
13221 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
13222
13223         * docs/gst/gstreamer-docs.sgml: remove props
13224         * docs/gst/gstreamer-sections.txt: remove props
13225         * docs/gst/tmpl/gst.sgml:
13226         * docs/gst/tmpl/gstbin.sgml:
13227         * docs/gst/tmpl/gstbuffer.sgml:
13228         * docs/gst/tmpl/gstcaps.sgml:
13229         * docs/gst/tmpl/gstclock.sgml:
13230         * docs/gst/tmpl/gstelement.sgml:
13231         * docs/gst/tmpl/gstindex.sgml:
13232         * docs/gst/tmpl/gstobject.sgml:
13233         * docs/gst/tmpl/gstpad.sgml:
13234         * docs/gst/tmpl/gstpadtemplate.sgml:
13235         * docs/gst/tmpl/gstreamer-unused.sgml:
13236         * docs/gst/tmpl/gstthread.sgml:
13237         * docs/gst/tmpl/gstxml.sgml:
13238           sync with code reorganization
13239
13240 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
13241
13242         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13243         Make the 'Could not find compatible pad' message more informative.
13244
13245 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13246                                                                                 
13247         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
13248           Fix for if we pass NULL as property to location.
13249         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
13250         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
13251           Fix for instantiate-test (see below).
13252         * gst/gststructure.c: (_gst_structure_parse_value):
13253           Fix compile error on gcc-2.96.
13254         * configure.ac:
13255         * tests/Makefile.am:
13256         * tests/instantiate/Makefile.am:
13257         * tests/instantiate/create.c: (create_all_elements), (main):
13258           Add a test that instantiates all elements. This makes it easy to
13259           track dead code for old API/design (like setting event functions
13260           on sink pads and so on).
13261
13262 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
13263
13264         * gst/gstcaps.c: (gst_caps_append_structure):
13265           Move the poisoning to allow a NULL structure
13266         * gst/gstevent.c: (_gst_event_free):
13267           When freeing a navigation event, free the structure
13268           also
13269
13270 2004-01-04  David Schleef  <ds@schleef.org>
13271
13272         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13273         Remove usage of gst_pad_proxy_fixate.
13274         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
13275         (gst_caps_split_one), (gst_caps_replace):
13276         Add poisoning code.
13277         * gst/gstmarshal.list:
13278         Add pointer__pointer for fixate signal
13279         * gst/gstpad.c: (gst_real_pad_class_init),
13280         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
13281         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
13282         (gst_pad_set_explicit_caps), (gst_pad_template_new):
13283         Add poisoning code. Add fixate signal on RealPad. Change
13284         set_explicit_caps() to take const GstCaps, like try_set_caps().
13285         * gst/gstpad.h:
13286         * testsuite/caps/Makefile.am:
13287         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
13288
13289 2004-01-03  David Schleef  <ds@schleef.org>
13290
13291         * gst/elements/gsttypefindelement.c:
13292         (gst_type_find_element_have_type), (gst_type_find_element_init):
13293         Use gst_pad_use_explicit_caps for src pad.
13294         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
13295         before using it.
13296
13297 2004-01-03  David Schleef  <ds@schleef.org>
13298
13299         * gst/gstelement.c: (gst_element_link_pads_filtered),
13300         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
13301         that linking was successful.
13302         * gst/gstpad.c: (gst_pad_link_free),
13303         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
13304         (gst_pad_link_try), (gst_pad_link_unnegotiate),
13305         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
13306         GstPadLinkReturn correctly between functions, and don't fail
13307         when DELAYED is used (DELAYED is very important).  Better
13308         cleanup on unlinking and unnegotiation.  Should fix some spider
13309         bugs.
13310
13311 2004-01-02  David Schleef  <ds@schleef.org>
13312
13313         * gst/gstelement.c: (gst_element_class_init),
13314         (gst_element_base_class_init): ->padtemplates should be cleared
13315         in base_init, since we need to have a fresh list for every
13316         class.  (Alternately, we chould copy the list and share the
13317         actual pad templates (not the list), but that would require
13318         changing every plugin to move pad template registration from
13319         base_init to class_init.)
13320
13321 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13322
13323         * gst/gstelement.c: (gst_element_class_add_pad_template):
13324           Refuse registering a pad template if another pad template
13325           with the same name already exists (#114715).
13326
13327 2004-01-02  David Schleef  <ds@schleef.org>
13328
13329         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
13330         (gst_caps_is_equal_fixed): Add new function.
13331         * gst/gstcaps.h: ditto.
13332         * gst/gstpad.c: (gst_real_pad_class_init),
13333         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
13334         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
13335         check new caps against existing caps -- if they're the same, return
13336         OK without renegotiating.  caps-nego-failed signal fixed so that
13337         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
13338         to save an extra caps copy.  Don't complete negotiation if a pad
13339         link function returns DELAYED.
13340
13341 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13342
13343         * gst/gstpad.c: (gst_pad_try_relink_filtered):
13344           Fix wrong g_return_if_fail
13345
13346 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
13347
13348         * gst/gstbin.c: (gst_bin_class_init):
13349         Change the marshalling of element_added/element_removed
13350         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
13351         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
13352
13353 2004-01-01  David Schleef  <ds@schleef.org>
13354
13355         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13356         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
13357         (gst_pad_use_explicit_caps):
13358         * gst/gstpad.h:
13359         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
13360         to use an internal getcaps and link fuction so that negotiation
13361         always results in the explicitly set caps.
13362         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
13363         are particularly useful for decoders.
13364
13365 2003-12-31  David Schleef  <ds@schleef.org>
13366
13367         * gst/elements/gstidentity.c: (gst_identity_class_init),
13368         (gst_identity_init), (gst_identity_chain),
13369         (gst_identity_set_property), (gst_identity_get_property):
13370         * gst/elements/gstidentity.h:
13371         * gst/gstqueue.c: (gst_queue_init):
13372           Negotiation fixes.
13373
13374 2003-12-31  David Schleef  <ds@schleef.org>
13375
13376         * gst/gstcaps.c: (gst_caps_intersect),
13377         (_gst_caps_normalize_foreach), (gst_caps_normalize):
13378           Implement gst_caps_normalize().
13379         * testsuite/caps/normalisation.c: (main):
13380           Add an additional test
13381
13382 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13383
13384         * gst/gstqueue.c: (gst_queue_init):
13385           use gst_pad_proxy_getcaps()
13386
13387 2003-12-31  David Schleef  <ds@schleef.org>
13388
13389         * gst/elements/gstshaper.c: (gst_shaper_link):
13390         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13391         * gst/gstqueue.c: (gst_queue_link):
13392           Negotiation fixes.
13393
13394 2003-12-31  David Schleef  <ds@schleef.org>
13395
13396         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
13397         * gst/gstpad.h: Add functions that are useful as default pad
13398         link and fixate functions for elements.
13399
13400 2003-12-30  David Schleef  <ds@schleef.org>
13401
13402         * gst/gstpad.c: (gst_pad_link_try):
13403           Fix segfault when attempting to return to old caps
13404
13405 2003-12-29  David Schleef  <ds@schleef.org>
13406
13407         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
13408         (gst_caps_structure_simplify), (gst_caps_simplify):
13409         * gst/gstcaps.h:
13410           Add simplify function
13411         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
13412         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
13413         * gst/gstpad.h:
13414           Copy over srcnotify, sinknotify when calling old pad_link
13415           functions.  Add new is_negotiated() function.
13416         * gst/gststructure.c: (gst_structure_copy):
13417           Fix an incredibly stupid bug that should have been noticed
13418           weeks ago.  _copy() returned the argument, not the new copy.
13419
13420 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13421
13422         * gst/gstcaps.c: (gst_caps_append):
13423           add sanity checks
13424         * gst/gstcaps.h: (gst_caps_debug):
13425           remove, it doesn't exist anymore.
13426         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
13427         (gst_element_threadsafe_properties_post_run):
13428           make debugging messages not clutter up THREAD debug category
13429         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
13430         (gst_element_change_state):
13431           update to new caps API
13432         * gst/gstinterface.c: (gst_implements_interface_cast):
13433           don't put vital code in g_return_if_fail
13434         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
13435         (gst_pad_link_filtered):
13436           add pst_pad_try_link and use it.
13437         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
13438           implement correctly, deprecate first one.
13439         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
13440           add and implement.
13441         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
13442           implement.
13443         (gst_pad_get_negotiated_caps):
13444           add and implement. Make GST_PAD_CAPS call this function.
13445         (gst_pad_get_caps):
13446           remove unneeded check..
13447         (gst_pad_recover_caps_error):
13448           disable, always return FALSE.
13449         (gst_real_pad_dispose):
13450           don't free caps and appfilter anymore, they're unused.
13451         * gst/gstpad.h:
13452           Reflect changes mentioned above.
13453         * gst/gstsystemclock.c: (gst_system_clock_wait):
13454           Make 'clock is way behind' a debugging message.
13455         * gst/gstthread.c: (gst_thread_change_state):
13456           Fix debugging message
13457
13458 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
13459
13460         * gst/gstinfo.h:
13461           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
13462         * docs/gst/tmpl/gstreamer-unused.sgml:
13463           removed all traces of cvs conflicts
13464
13465 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13466
13467         * configure.ac:
13468         * gst/schedulers/cothreads_compat.h:
13469         * libs/Makefile.am:
13470           remove last instances of wingo cothread usage
13471
13472 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13473
13474         * gst/gstplugin.c:
13475         * gst/gstversion.h.in:
13476         * gst/parse/grammar.y:
13477           change comment block from /** to /* when not gtk-doc comments
13478
13479 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13480
13481         * gst/gst.c: whitespace and doc style fixes
13482
13483 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13484
13485         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
13486
13487 2003-12-24  Colin Walters  <walters@verbum.org>
13488
13489         * gst/elements/gsttypefindelement.c:
13490           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
13491           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
13492           Don't double-free caps.
13493
13494 2003-12-23  David Schleef  <ds@schleef.org>
13495
13496         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
13497           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
13498           Many little fixes and additions of debug statements to
13499           get rhythmbox working.
13500
13501 2003-12-23  Colin Walters  <walters@verbum.org>
13502
13503         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
13504         Use GST_PAD_LINK_SUCCESSFUL.
13505
13506 2003-12-23  David Schleef  <ds@schleef.org>
13507
13508         * gst/elements/gstaggregator.c:
13509         * gst/elements/gsttee.c:
13510           Use gst_pad_proxy_getcaps().
13511         * gst/gstpad.c:
13512         * gst/gstpad.h:
13513           Add gst_pad_proxy_getcaps(), which filter elements can use
13514           as a generic getcaps implementation.
13515           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
13516           was advertised.
13517
13518 2003-12-23  David Schleef  <ds@schleef.org>
13519
13520         * gst/gstpad.c:
13521           Rearrange/rewrite much of the pad negotiation code, since it
13522           resembled pasta.  This actually changes the way some
13523           negotiation works, since the previous code was inconsistent
13524           depending on how it was invoked.  Add (internal) structure
13525           GstPadLink, which is used to hold some information (more in
13526           the future) about the link between two pads.  Fixes a number
13527           of bugs, including random lossage of filter caps when the
13528           initial negotiation is delayed.  A few functions are still
13529           unimplemented.
13530         * gst/gstpad.h:
13531           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
13532           these when testing GstPadLinkReturn values instead of comparing
13533           directly.
13534
13535 2003-12-23  David Schleef  <ds@schleef.org>
13536
13537         * gst/gstvalue.c: 
13538         * gst/gstvalue.h:
13539           Rearrange lots of code.  Change registration of compare function
13540           into registration of compare/serialize/deserialize functions.
13541           Doesn't include implementation of gst_value_[de]serialize(),
13542           but that should be easy.
13543
13544 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13545
13546         * docs/gst/gstreamer-sections.txt:
13547         * docs/gst/tmpl/gstprops.sgml: removed
13548         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
13549           David removed props and caps code, so let's remove their docs as well.
13550           Removed all no longer existing symbols from gstreamer-sections.txt
13551           
13552 2003-12-22  Colin Walters  <walters@verbum.org>
13553
13554         * gst/gsttaginterface.c, gst/gsttaginterface.h,
13555           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
13556           of tags directly.
13557
13558 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13559
13560         * gst/elements/gstelements.c:
13561           Set ranks of elements to NONE, so the autoplugger doesn't use them.
13562         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
13563           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
13564           gst_caps (peer).
13565
13566 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13567
13568         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
13569         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
13570         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
13571         (gst_spider_identity_sink_loop_type_finding):
13572         * gst/autoplug/gstspideridentity.h:
13573           Fix autoplugging in spider element, so it works with new caps.
13574           This was mainly caused by identifying empty caps incorrectly.
13575
13576 2003-12-22  David Schleef  <ds@schleef.org>
13577
13578         * gststructure.c, gstvalue.c, gstvalue.h: Add
13579           gst_value_init_and_copy() and use it, to avoid silly mistakes in
13580           using g_value_copy()
13581
13582 2003-12-21  David Schleef  <ds@schleef.org>
13583
13584         * many, many files: Merge CAPS branch.  This includes:
13585           - implemention of GstValue and several GstValue types
13586           - implemention of GstStructure
13587           - entire rewrite of GstCaps
13588           - removal of GstProps
13589           - many changes to GstPad to compensate for new caps paradigm
13590           - removal of GstBufferpool
13591         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
13592         gstvalue.h, gst/gstcaps[2]*.[ch]:
13593           - rename gstcaps2.[ch] to gstcaps.[ch]
13594
13595 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13596
13597         * gst/gstqueue.c: (gst_queue_handle_pending_events),
13598         (gst_queue_chain), (gst_queue_handle_src_event):
13599           implement timeout for sending events. Workaround for if the
13600           pipeline on this queue is not passing any data.
13601
13602 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
13603                                                                                 
13604         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
13605         * moved CVS to freedesktop.org
13606