c6df6c7d5a533eea1192e360ef3f57567ec589ac
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-08-26  Stefan Kost  <ensonic@users.sf.net>
2
3         * docs/gst/gstreamer-docs.sgml:
4         * docs/libs/gstreamer-libs-docs.sgml:
5           disabed additional index entries again, as this makes docs-gen just
6           slow and they aren't useful yet
7         * docs/libs/gstreamer-libs-sections.txt:
8           little -section.txt cleanup for libs
9
10 2005-08-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11
12         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
13         * gst/base/gstbasetransform.c: (gst_base_transform_transform_size),
14           fix up some debugging
15         (gst_base_transform_get_unit_size),
16         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
17         (gst_base_transform_handle_buffer):
18         * gst/base/gstbasetransform.h:
19           handle and store timed NEWSEGMENT events so that subclasses that
20           calculate time by counting samples have a segment_start time they
21           need to add to their timestamps - see audioresample
22
23 2005-08-26  Stefan Kost  <ensonic@users.sf.net>
24
25         * gst/gstbin.h:
26           removed ';' from the end of macro defs
27         * docs/gst/gstreamer-docs.sgml:
28         * docs/gst/gstreamer-sections.txt:
29         * docs/gst/tmpl/.cvsignore:
30         * gst/gstbus.h:
31         * gst/gstelement.c: (gst_element_class_init),
32         (gst_element_set_state), (activate_pads),
33         (gst_element_save_thyself):
34         * gst/gstevent.c: (gst_event_new_newsegment):
35         * gst/gstevent.h:
36         * gst/gstiterator.c:
37         * gst/gstiterator.h:
38         * gst/gstpad.c:
39         * gst/gstprobe.h:
40         * gst/gstutils.c: (gst_pad_query_convert):
41         * gst/gstutils.h:
42           fixed parameter name mismatches between source, header and docs
43           added some more docs, resolved the last batch of unused elements in
44           docs (now someone needs to doc them)
45
46 2005-08-25  Thomas Vander Stichele  <thomas at apestaart dot org>
47
48         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_rebuild):
49         * gst/registries/gstxmlregistry.c: (gst_xml_registry_rebuild):
50           don't walk through the plugins backwards.  Where is all this
51           reversed logic coming from ?
52
53 2005-08-25  Wim Taymans  <wim@fluendo.com>
54
55         * gst/base/gstbasetransform.c: (gst_base_transform_init),
56         (gst_base_transform_transform_size),
57         (gst_base_transform_configure_caps),
58         (gst_base_transform_get_unit_size),
59         (gst_base_transform_buffer_alloc),
60         (gst_base_transform_change_state):
61         * gst/base/gstbasetransform.h:
62         Cache caps unit_size.
63         Make sure we cannot negotiate up and downstream at the
64         same time.
65
66 2005-08-25  Thomas Vander Stichele  <thomas at apestaart dot org>
67
68         * gst/gst.c: (init_pre), (init_post):
69           register the installed plugin path after the env var
70         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_save):
71         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save):
72           don't reverse order of paths; conserve the order of GST_PLUGIN_PATH
73           directories, so the tests can prefer uninstalled over installed
74
75 2005-08-25  Thomas Vander Stichele  <thomas at apestaart dot org>
76
77         * gst/base/gstbasetransform.h:
78           comment
79         * gst/gstpad.c:
80           add to docs
81
82 2005-08-25  Wim Taymans  <wim@fluendo.com>
83
84         * gst/gstbin.c: (bin_bus_handler):
85         Be a bit more conservative about the posted message.
86         
87         * gst/gstbus.c: (gst_bus_post):
88         Some cleanups, warn wrong return values.
89
90 2005-08-25  Jan Schmidt  <thaytan@mad.scientist.com>
91
92         * check/gst/gstbin.c: (GST_START_TEST):
93         * gst/gstbin.c: (bin_bus_handler):
94         * gst/gstmessage.c: (gst_message_finalize), (_gst_message_copy),
95         (gst_message_new), (gst_message_new_eos), (gst_message_new_error),
96         (gst_message_new_warning), (gst_message_new_tag),
97         (gst_message_new_state_changed), (gst_message_new_segment_start),
98         (gst_message_new_segment_done), (gst_message_new_custom):
99         * gst/gstmessage.h:
100         * tools/gst-launch.c: (event_loop):
101         * tools/gst-md5sum.c: (event_loop):
102           Revert unpopular change for GST_MESSAGE_SRC to GObject.
103
104 2005-08-25  Wim Taymans  <wim@fluendo.com>
105
106         * check/generic/states.c: (GST_START_TEST):
107         Cleanup can be done at the end.
108
109         * gst/gsttask.c: (gst_task_get_type), (gst_task_finalize),
110         (gst_task_func), (gst_task_cleanup_all), (gst_task_set_lock),
111         (gst_task_get_state), (gst_task_start), (gst_task_pause):
112         Oh boy.. Thanks for finding this, Thomas. 
113
114 2005-08-25  Stefan Kost  <ensonic@users.sf.net>
115
116         * docs/gst/gstreamer.types:
117           added missing types
118
119 2005-08-25  Stefan Kost  <ensonic@users.sf.net>
120
121         * docs/gst/gstreamer-docs.sgml:
122         * docs/gst/gstreamer-sections.txt:
123         * docs/gst/tmpl/.cvsignore:
124         * gst/gstbin.c:
125         * gst/gstiterator.c:
126         * gst/gstutils.c:
127         * gst/registries/gstxmlregistry.h:
128           added miissing classes and symbols (123 more to go)
129           removed removed symbols from section file
130           fixed many doc-comments
131
132 2005-08-24  Wim Taymans  <wim@fluendo.com>
133
134         * check/generic/states.c: (GST_START_TEST):
135         Make sure all tasks are stopped.
136
137         * check/gst/gstbin.c: (GST_START_TEST):
138         Unref after usage for proper valgrinding.
139
140         * gst/gstpad.c: (gst_pad_finalize), (gst_pad_stop_task):
141         Really wait for the task to stop before destroying the
142         mutex.
143
144         * gst/gstqueue.c: (gst_queue_sink_activate_push),
145         (gst_queue_src_activate_push):
146         Small cleanups. Don't stop the task when we did not start
147         it.
148
149         * gst/gsttask.c: (gst_task_get_type), (gst_task_init),
150         (gst_task_func), (gst_task_cleanup_all), (gst_task_set_lock),
151         (gst_task_get_state), (gst_task_start), (gst_task_pause),
152         (gst_task_join):
153         * gst/gsttask.h:
154         Protect the stream lock with the object lock.
155         Disallow setting the stream lock when running.
156         Add cleanup_all to wait for the threadpool to finish.
157         Remove code to autoallocate a mutex if none was provided.
158         Add _join() to wait for a task to stop.
159         Protect the thread pool with a global lock.
160
161 2005-08-24  Wim Taymans  <wim@fluendo.com>
162
163         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
164         (gst_base_sink_get_times), (gst_base_sink_do_sync),
165         (gst_base_sink_handle_buffer), (gst_base_sink_change_state):
166         * gst/base/gstbasesink.h:
167         Handle newsegment events correctly.
168         Drop buffers out of the segment range.
169
170 2005-08-22  Andy Wingo  <wingo@pobox.com>
171
172         * gst/gstutils.h (GST_BOILERPLATE_WITH_INTERFACE): New ghetto
173         macro, implements an interface and gstimplementsinterface for a
174         new type.
175
176 2005-08-24  Thomas Vander Stichele  <thomas at apestaart dot org>
177
178         * check/Makefile.am:
179         * check/generic/states.c: (GST_START_TEST), (states_suite), (main):
180           add a test that does a bunch of state changes on elements
181           needs some fixing for valgrind
182         * check/states/sinks.c: (gst_object_suite):
183           whitespace
184         * gst/gstcaps.h:
185           add prototype for gst_caps_is_equal_fixed
186         * gst/gstplugin.c:
187         * gst/gstregistrypool.c:
188           doc fixes
189
190 2005-08-24  Andy Wingo  <wingo@pobox.com>
191
192         * gst/gstquery.c (gst_query_new_convert): Spew if we try to
193         convert a negative value. Doesn't make much sense. Mostly this is
194         here to force callers to ensure -1 maps to -1.
195
196 2005-08-24  Jan Schmidt  <thaytan@mad.scientist.com>
197
198         * docs/pwg/advanced-types.xml:
199           Well done to Michael for catching my deliberate introduction
200           of this spelling mistake. 
201         * gst/gstbin.c: (gst_bin_remove_func), (bin_bus_handler):
202         * gst/gstelement.h:
203           Add GST_ELEMENT_UNPARENTING to prevent races so that we can
204           unlink pads before removing the element from the bin.
205
206 2005-08-24  Andy Wingo  <wingo@pobox.com>
207
208         * gst/gst.c (parse_debug_list): Accept e.g. GST_DEBUG=4 to mean
209         the same thing as GST_DEBUG=*:4.
210         (parse_debug_level, parse_debug_category): New helper parsers.
211
212 2005-08-24  Thomas Vander Stichele  <thomas at apestaart dot org>
213
214         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
215         (gst_base_transform_transform_size), (gst_base_transform_getcaps),
216         (gst_base_transform_setcaps), (gst_base_transform_get_unit_size),
217         (gst_base_transform_buffer_alloc),
218         (gst_base_transform_handle_buffer):
219           use gboolean return values and pointers to size so we can use the
220           full GST_BUFFER_SIZE range (guint) for buffer sizes
221           use GstPadDirection for transform_caps
222         * gst/base/gstbasetransform.h:
223           rename get_size to get_unit_size since that's what it is
224         * gst/elements/gstcapsfilter.c: (gst_capsfilter_transform_caps):
225           use GstPadDirection for transform_caps
226         * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
227         * gst/gstutils.h:
228           cleanup and debugging
229
230 2005-08-24  Stefan Kost  <ensonic@users.sf.net>
231
232         * gst/gstelement.c: (gst_element_class_init),
233         (gst_element_set_state), (activate_pads),
234         (gst_element_save_thyself):
235         * tools/gst-compprep.c: (main):
236         * tools/gst-inspect.c: (print_element_properties_info):
237         * tools/gst-xmlinspect.c: (print_element_properties):
238           Fixed long standing mem-leak
239
240 2005-08-24  Jan Schmidt  <thaytan@mad.scientist.com>
241
242         * check/gst/gstbin.c: (GST_START_TEST):
243         * gst/gstbin.c: (bin_bus_handler):
244         * gst/gstmessage.c: (gst_message_finalize), (_gst_message_copy),
245         (gst_message_new), (gst_message_new_eos), (gst_message_new_error),
246         (gst_message_new_warning), (gst_message_new_tag),
247         (gst_message_new_state_changed), (gst_message_new_segment_start),
248         (gst_message_new_segment_done), (gst_message_new_custom):
249         * gst/gstmessage.h:
250         * tools/gst-launch.c: (event_loop):
251         * tools/gst-md5sum.c: (event_loop):
252           Change GST_MESSAGE_SRC to be a GObject rather than a GstObject, so
253           that applications can sensibly post custom messages with references
254           to their own objects.
255
256 2005-08-24  Andy Wingo  <wingo@pobox.com>
257
258         * gst/gstpad.c (gst_pad_fixate_caps): Check if the caps is fixed
259         already.
260
261 2005-08-24  Wim Taymans  <wim@fluendo.com>
262
263         * gst/base/gstbasetransform.c: (gst_base_transform_init),
264         (gst_base_transform_transform_caps),
265         (gst_base_transform_transform_size),
266         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
267         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
268         (gst_base_transform_handle_buffer):
269         * gst/base/gstbasetransform.h:
270         Many fixes and new features added by Thomas. Can now also do
271         transforms with variable sizes and a custom fixate_caps function.
272
273 2005-08-24  Wim Taymans  <wim@fluendo.com>
274
275         * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
276         Some debugging.
277
278         * gst/gstclock.h:
279         Cast to ClockTime before formatting to time.
280
281         * gst/gstutils.h:
282         Cleanups.
283
284 2005-08-24  Stefan Kost  <ensonic@users.sf.net>
285
286         * check/gst-libs/controller.c: (GST_START_TEST),
287         (gst_controller_suite):
288         * docs/gst/tmpl/gstcaps.sgml:
289         * docs/gst/tmpl/gstghostpad.sgml:
290         * docs/gst/tmpl/gstquery.sgml:
291         * docs/gst/tmpl/gstutils.sgml:
292         * libs/gst/controller/gst-helper.c: (gst_object_set_controller),
293         (gst_object_sink_values), (gst_object_get_value_arrays),
294         (gst_object_get_value_array):
295           gracefully handle helper method calls to objects that are not beeing
296           controlled, added test case for that          
297
298 2005-08-23  Wim Taymans  <wim@fluendo.com>
299
300         * gst/gstevent.c: (_gst_event_copy), (gst_event_new_custom),
301         (gst_event_new_newsegment), (gst_event_parse_newsegment),
302         (gst_event_new_tag), (gst_event_parse_tag), (gst_event_new_qos),
303         (gst_event_parse_qos), (gst_event_new_seek),
304         (gst_event_parse_seek):
305         * gst/gstevent.h:
306         Some more debugging output and doc cleanups.
307
308         * gst/gstqueue.c: (gst_queue_handle_sink_event):
309         Fix possible deadlock.
310
311 2005-08-23  Stefan Kost  <ensonic@users.sf.net>
312
313         * docs/gst/gstreamer-docs.sgml:
314         * docs/gst/gstreamer-sections.txt:
315         * docs/gst/gstreamer.types:
316         * docs/gst/tmpl/.cvsignore:
317         * gst/gstbin.h:
318         * gst/gstbus.c:
319         * gst/gstelement.c:
320         * gst/gstevent.h:
321           added about 100 symbols from gstreamer-unused.txt to the right sections
322           fixed more broken comments
323           added GstBus to docs
324
325 2005-08-23  Stefan Kost  <ensonic@users.sf.net>
326
327         * docs/gst/gstreamer-sections.txt:
328         * docs/gst/tmpl/.cvsignore:
329         * docs/gst/tmpl/gstbin.sgml:
330         * docs/gst/tmpl/gstbuffer.sgml:
331         * gst/base/gstbasesrc.c:
332         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init):
333         * gst/gstbuffer.c:
334         * gst/gstbuffer.h:
335         * tools/gst-launch.1.in:
336           inlined more doc comments, added missing comments and fixed comments
337           fixed typos
338
339 2005-08-23  Thomas Vander Stichele  <thomas at apestaart dot org>
340
341         * gst/gstbuffer.c: (gst_buffer_new_and_alloc):
342           some debugging
343         * gst/gstcaps.h:
344           whitespace fixes
345         * gst/gstpad.c: (gst_pad_activate_push), (gst_pad_alloc_buffer):
346           more debugging
347         * gst/gststructure.c: (gst_caps_structure_fixate_field_boolean):
348         * gst/gststructure.h:
349           add a fixate function for booleans; add a FIXME that these func
350           names should probably be gst_structure_fixate_*
351
352 2005-08-23  Stefan Kost  <ensonic@users.sf.net>
353
354         * docs/gst/gstreamer-docs.sgml:
355         * docs/gst/gstreamer-sections.txt:
356         * gst/Makefile.am:
357         * gst/gstbin.c: (gst_bin_get_type),
358         (gst_bin_child_proxy_get_child_by_index),
359         (gst_bin_child_proxy_get_children_count),
360         (gst_bin_child_proxy_init):
361         * gst/gstchildproxy.c: (gst_child_proxy_get_child_by_name),
362         (gst_child_proxy_get_child_by_index),
363         (gst_child_proxy_get_children_count), (gst_child_proxy_lookup),
364         (gst_child_proxy_get_property), (gst_child_proxy_get_valist),
365         (gst_child_proxy_get), (gst_child_proxy_set_property),
366         (gst_child_proxy_set_valist), (gst_child_proxy_set),
367         (gst_child_proxy_child_added), (gst_child_proxy_child_removed),
368         (gst_child_proxy_base_init), (gst_child_proxy_get_type):
369         * gst/gstchildproxy.h:
370         * gst/parse/grammar.y:
371         * tools/gst-inspect.c: (print_interfaces),
372         (print_element_properties_info), (print_element_info):
373          ported gstchildproxy over from 0.8
374          ported gst-inspect fixes and enhancements over from 0.8
375
376 2005-08-22  Wim Taymans  <wim@fluendo.com>
377
378         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
379         (gst_base_transform_handle_buffer):
380         Also call the transform function if we have ANY caps.
381
382         * gst/gstpipeline.c: (gst_pipeline_set_new_stream_time):
383         Fix debug info.
384
385 2005-08-22  Jan Schmidt  <thaytan@mad.scientist.com>
386
387         * gst/base/gstbasesrc.c: (gst_base_src_event_handler)
388           Don't pretend to handle seek events if the source is not seekable
389
390 2005-08-22  Jan Schmidt  <thaytan@mad.scientist.com>
391
392         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
393           Remove extra parameter to debug output
394
395         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
396         (gst_base_src_do_seek), (gst_base_src_activate_push):
397           Fix seek event handling.
398
399         * gst/gstpipeline.c: (gst_pipeline_change_state):
400         * gst/gstqueue.c: (gst_queue_handle_sink_event),
401         (gst_queue_src_activate_push):
402           Don't start the src pad task on FLUSH_STOP if the pad
403           isn't linked.
404           Debug changes.
405
406 2005-08-22  Wim Taymans  <wim@fluendo.com>
407
408         * check/gst/gstcaps.c: (GST_START_TEST), (gst_caps_suite):
409         Added check for gst_static_caps_get() refcounting.
410
411 2005-08-22  Wim Taymans  <wim@fluendo.com>
412
413         * gst/gstcaps.c: (gst_static_caps_get), (gst_caps_to_string):
414         Make _static_caps_get() refcounting sane.
415         
416         * gst/gstelement.c: (gst_element_set_state):
417         Add g_return_val_if_fail() to protect against segfaults.
418
419 2005-08-22  Stefan Kost  <ensonic@users.sf.net>
420
421         * docs/gst/tmpl/gstevent.sgml:
422         * gst/gstevent.c:
423         * gst/gstevent.h:
424           inlined remaining docs, added missing doc comments
425
426 2005-08-22  Thomas Vander Stichele  <thomas at apestaart dot org>
427
428         * check/gst/gstbin.c: (GST_START_TEST):
429           since we don't know when preroll is done, use refcount range
430           check for the sink
431         * gst/check/gstcheck.h:
432           add macro for checking refcount range
433
434 2005-08-21  Thomas Vander Stichele  <thomas at apestaart dot org>
435
436         * check/Makefile.am:
437           clean up environment for when registry gets built versus
438           when actual tests are run; valgrind seems to not report
439           leaks if GST_PLUGIN_PATH is set to some specific values
440         * check/gst/gstbin.c: (GST_START_TEST):
441           add more refcounting checks; maybe this exposes a
442           preroll lock bug ?
443         * common/check.mak:
444         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
445         * gst/check/gstcheck.h:
446         * gst/gstbin.c: (bin_element_is_semi_sink), (gst_bin_get_state),
447         (gst_bin_change_state):
448         * gst/gstpad.c: (gst_pad_activate_push), (gst_pad_chain):
449           add/fix debugging/whitespace
450
451 2005-08-21  Jan Schmidt  <thaytan@mad.scientist.com>
452
453         * check/gst/gstevent.c: (event_probe), (test_event),
454         (GST_START_TEST):
455          Er, don't call gst_bin_watch_for_state_change you idiot.
456
457 2005-08-21  Jan Schmidt  <thaytan@mad.scientist.com>
458
459         * check/Makefile.am:
460           Use CHECK_CFLAGS and CHECK_LIBS
461         * check/gst/gstevent.c: (event_probe), (test_event),
462         (GST_START_TEST):
463           Don't leak events.
464         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
465         (gst_base_src_start), (gst_base_src_stop),
466         (gst_base_src_activate_push), (gst_base_src_activate_pull),
467         (gst_base_src_change_state):
468           Sprinkle gst_base_src_stop liberally around error paths to fix
469           problems reusing a source after failed state changes.
470         * gst/base/gsttypefindhelper.c: (helper_find_peek),
471         (helper_find_suggest), (gst_type_find_helper):
472           Extra debug output. Don't segfault on GST_PAD_GETRANGEFUNC = NULL
473         * gst/gstevent.h:
474         * docs/gst/tmpl/gstevent.sgml:
475           Migrate part of the docs from the SGML file. Wait for ensonic to
476           tell me how I did it wrong ;)
477         * tools/gst-typefind.c: (main):
478           Extra robustness to state changes between files.
479
480 2005-08-21  Thomas Vander Stichele  <thomas at apestaart dot org>
481
482         * check/Makefile.am:
483           don't valgrind the controller test - it's leaking - Stefan, HELP
484         * gst/check/gstcheck.c: (gst_check_message_error),
485         (gst_check_chain_func), (gst_check_setup_element),
486         (gst_check_teardown_element), (gst_check_setup_src_pad),
487         (gst_check_teardown_src_pad), (gst_check_setup_sink_pad),
488         (gst_check_teardown_sink_pad):
489         * gst/check/gstcheck.h:
490           add a bunch of methods to set up elements, and src and sink pads
491         * check/elements/fakesrc.c: (setup_fakesrc), (cleanup_fakesrc):
492         * check/elements/identity.c: (setup_identity), (cleanup_identity),
493         (GST_START_TEST):
494           use them
495         * gst/gstmessage.c:
496         * gst/gsttag.h:
497           whitespace/doc fixes
498
499 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
500
501         * gst/gstelement.h:
502           make GST_ELEMENT_ERROR not do GST_ERROR_OBJECT - these errors should
503           be handled by the application and not always printed as well
504
505 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
506
507         * check/Makefile.am:
508           set GST_TOOLS_DIR
509         * gst/check/gstcheck.c: (gst_check_message_error):
510         * gst/check/gstcheck.h:
511           add a fail_unless_equals_int
512           add fail_unless for error messages
513
514 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
515
516         * check/Makefile.am:
517         * check/gst.supp:
518         * common/Makefile.am:
519         * common/check.mak:
520         * common/gst.supp:
521           factor out some of the common stuff so we can use it
522
523 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
524
525         * check/Makefile.am:
526         * check/gst/gstiterator.c: (GST_START_TEST):
527         * check/gst/gstsystemclock.c: (GST_START_TEST),
528         (gst_systemclock_suite):
529         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
530         * gst/gstclock.c:
531           valgrind more tests
532
533 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
534
535         * check/elements/.cvsignore:
536         * check/elements/gstfakesrc.c:
537           rename to name of element
538         * check/elements/identity.c: (chain_func), (event_func),
539         (setup_identity), (cleanup_identity), (GST_START_TEST),
540         (identity_suite), (main):
541           add a test for identity
542         * check/Makefile.am:
543         * pkgconfig/Makefile.am:
544         * pkgconfig/gstreamer-check.pc.in:
545         * pkgconfig/gstreamer-check-uninstalled.pc.in:
546         * gst/check:
547         * gst/Makefile.am:
548         * configure.ac:
549           move the check stuff to a library that gets installed
550         * check/gst-libs/controller.c: (GST_START_TEST):
551         * check/gst-libs/gdp.c:
552         * check/gst/gst.c: (GST_START_TEST):
553         * check/gst/gstbin.c:
554         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
555         * check/gst/gstbus.c:
556         * check/gst/gstcaps.c: (GST_START_TEST):
557         * check/gst/gstelement.c:
558         * check/gst/gstghostpad.c:
559         * check/gst/gstiterator.c:
560         * check/gst/gstmessage.c:
561         * check/gst/gstminiobject.c: (thread_ref), (GST_START_TEST):
562         * check/gst/gstobject.c:
563         * check/gst/gstpad.c: (GST_START_TEST):
564         * check/gst/gststructure.c: (GST_START_TEST):
565         * check/gst/gstsystemclock.c: (GST_START_TEST),
566         (gst_systemclock_suite):
567         * check/gst/gsttag.c: (gst_tag_suite):
568         * check/gst/gstvalue.c:
569         * check/pipelines/cleanup.c:
570         * check/pipelines/simple_launch_lines.c:
571         * check/states/sinks.c:
572           change include statement
573
574         * docs/gst/gstreamer-sections.txt:
575         * docs/gst/tmpl/gstpad.sgml:
576           document more pad stuff
577         * gst/gstminiobject.c: (gst_mini_object_ref),
578         (gst_mini_object_unref):
579           debug refcounting
580
581 2005-08-19  Stefan Kost  <ensonic@users.sf.net>
582
583         * docs/gst/tmpl/gst.sgml:
584         * gst/gst.c:
585           eliminate another tmpl file, fix spelling in the long-description
586
587 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
588
589         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
590         (test_event), (timediff), (gstevents_suite):
591           Should fix build on 64-bit arch's
592
593 2005-08-18  Andy Wingo  <wingo@pobox.com>
594
595         Make sure that when a pipeline goes to PLAYING, that data has
596         actually hit the sink.
597
598         * check/states/sinks.c (test_sink): A sink that doesn't get any
599         data shouldn't return SUCCESS for going to either PLAYING or
600         PAUSED. Test also the return values on the way back down.
601
602         * gst/gstelement.c (gst_element_set_state): When changing the
603         state of an element currently changing state asynchronously, go to
604         lost-state after commiting the pending state. Makes future calls
605         to get_state continue to return ASYNC.
606
607         * gst/base/gstbasesink.c (gst_base_sink_change_state): Return
608         ASYNC when going to PLAYING if we still don't have preroll, as can
609         happen with live sources.
610
611 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
612
613         * docs/pwg/advanced-types.xml:
614           Hack long paragraph into 2 chunks as a workaround for buggy
615           jadetex version in sid and breezy that loops infinitely and
616           eats all RAM.
617
618 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
619
620         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
621         (test_event), (timediff), (gstevents_suite):
622           Provide more error margin in clock measurements to allow for 
623           g_get_current_time inaccuracies.
624
625 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
626
627         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
628         (test_event), (timediff), (gstevents_suite):
629            Fix error message output so I might be able to tell why the
630            test works here but fails on the build farm.
631
632 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
633
634         * check/Makefile.am:
635         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
636         (test_event), (timediff), (gstevents_suite), (main):
637           I wrote a test!
638
639         * docs/design/part-seeking.txt:
640           Spelling correction
641
642         * docs/gst/tmpl/gstevent.sgml:
643         * docs/gst/tmpl/gstfakesrc.sgml:
644           Docs updates.
645
646         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
647           Treat a buffer-without-newsegment the same as a receiving 
648           a newsegment not in time format, and disable syncing to the clock
649           with a warning.
650
651         * gst/gstbus.c: (gst_bus_set_sync_handler):
652           Assert if anyone tries to replace the existing sync_handler for bus, 
653           as only the owner should be setting it.
654
655         * gst/gstevent.h:
656           Have a fixed set of custom event enums with events identified by
657           their structure name (as in 0.8), rather than a free-for-all
658           allowing collisions between enum values from different plugins.
659
660         * gst/gstpad.c: (gst_pad_class_init):
661           Docs change.
662           
663         * gst/gstqueue.c: (gst_queue_handle_sink_event):
664           Handle out-of-band downstream events from the sending thread.
665
666 2005-08-17  Andy Wingo  <wingo@pobox.com>
667
668         * gst/gstpipeline.c (gst_pipeline_change_state): Interpret
669         play-timeout==0 to mean no timeout at all. In that case, don't
670         bother with a get_state or a warning, just return directly, even
671         if it's ASYNC.
672
673         * gst/base/gstbasetransform.c: Debug changes.
674
675         * gst/gstutils.h:
676         * gst/gstutils.c (gst_bin_watch_for_state_change): Add function to
677         ensure bins post state change messages. A bit of a hack but I can't
678         think of a way to avoid it.
679
680         * check/gst/gstbin.c (test_watch_for_state_change): Added test.
681
682 2005-08-16  Andy Wingo  <wingo@pobox.com>
683
684         * gst/base/gstadapter.h:
685         * gst/base/gstadapter.c (gst_adapter_take): New function, like
686         peek() but you own the data. Not terribly efficient atm.
687
688 2005-08-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
689
690         * gst/gstutils.c: (gst_element_found_tags_for_pad), (push_and_ref),
691         (gst_element_found_tags):
692         * gst/gstutils.h:
693           Add two utility functions for tag handling.
694
695 2005-08-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
696
697         * docs/manual/advanced-dataaccess.xml:
698         * docs/manual/basics-helloworld.xml:
699           Fix docs to use _bin_add() before _link(), which fixes the examples
700           with recent core versions (reported by Madhan Raj M
701           <raj_madan@rediffmail.com>, #313199).
702
703 2005-08-16  Wim Taymans  <wim@fluendo.com>
704
705         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
706         Added subtract checks.
707
708         * docs/design/part-events.txt:
709         Some more docs about newsegment
710
711         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
712         Fix FIXME
713
714         * gst/gstcaps.c: (gst_caps_to_string):
715         Add comments, cleanups.
716         
717         * gst/gstelement.c: (gst_element_save_thyself):
718         cleanups
719         
720         * gst/gstvalue.c: (gst_value_collect_int_range),
721         (gst_string_unwrap), (gst_value_union_int_int_range),
722         (gst_value_union_int_range_int_range),
723         (gst_value_intersect_int_int_range),
724         (gst_value_intersect_int_range_int_range),
725         (gst_value_intersect_double_double_range),
726         (gst_value_intersect_double_range_double_range),
727         (gst_value_intersect_list), (gst_value_subtract_int_int_range),
728         (gst_value_subtract_int_range_int),
729         (gst_value_subtract_double_range_double),
730         (gst_value_subtract_double_range_double_range),
731         (gst_value_subtract_from_list), (gst_value_subtract_list),
732         (gst_value_can_compare), (gst_value_compare_fraction):
733         Cleanups, add comments, remove unneeded asserts.
734
735 2005-08-15  Thomas Vander Stichele  <thomas at apestaart dot org>
736
737         * tools/gst-launch.c: (event_loop):
738           don't convert NULL structures to strings
739
740 2005-08-15  Stefan Kost  <ensonic@users.sf.net>
741
742         * docs/gst/gstreamer-sections.txt:
743           made some defines private
744         * docs/gst/tmpl/gstconfig.sgml:
745         * docs/gst/tmpl/gstqueue.sgml:
746         * docs/gst/tmpl/gsttaglist.sgml:
747         * docs/gst/tmpl/gsttypes.sgml:
748         * docs/gst/tmpl/gstutils.sgml:
749         * docs/pwg/appendix-porting.xml:
750         * gst/base/gstbasesink.h:
751         * gst/base/gstbasesrc.c:
752         * gst/base/gstbasesrc.h:
753         * gst/elements/gstfakesink.c: (gst_fake_sink_class_init):
754         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init):
755         * gst/gstelement.c: (gst_element_class_init):
756         * gst/gstpad.c: (gst_pad_class_init):
757         * gst/gstqueue.c: (gst_queue_class_init):
758         * gst/gstxml.c: (gst_xml_class_init):
759           documented all undocumented signal inline
760         * libs/gst/controller/gst-controller.h:
761           added padding
762
763 2005-08-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
764
765         * docs/pwg/appendix-porting.xml:
766           Document _set_link_function -> _set_setcaps_function.
767
768 2005-08-15  Thomas Vander Stichele  <thomas at apestaart dot org>
769
770         * check/Makefile.am:
771           add a .check target for running the check
772         * check/gst-libs/controller.c: (GST_START_TEST):
773           cosmetic fixups
774         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
775           complete checks for gstbuffer; would be nice if I could get the
776           gcov stuff to work so I can see if I actually completed gstbuffer.c
777         * check/gstcheck.h:
778           add ASSERT_BUFFER_REFCOUNT
779
780 2005-08-13  Tim-Philipp Müller  <tim at centricular dot net>
781
782         * docs/gst/gstreamer-sections.txt:
783         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
784         * gst/gsttag.h:
785           Add GST_TAG_LANGUAGE_CODE as we have in 0.8, and don't
786           spew out a warning if a tag that is already registered
787           is re-registered, unless it is re-registered with a 
788           different type (#308438).
789
790 2005-08-12  Tim-Philipp Müller  <tim at centricular dot net>
791
792         * docs/pwg/appendix-porting.xml:
793         * docs/pwg/building-state.xml:
794           Add some paragraphs about state changes in 0.9 to the PWG
795           and the porting guide, in particular about the new meaning
796           of GST_STATE_PAUSED and how to write state change functions
797           with concurrent access by multiple threads in mind.
798
799 2005-08-11  Stefan Kost  <ensonic@users.sf.net>
800
801         * docs/gst/gstreamer-docs.sgml:
802         * docs/libs/gstreamer-libs-docs.sgml:
803           added deprecation and since indexes
804         * libs/gst/controller/gst-controller.c:
805         * libs/gst/controller/gst-helper.c:
806           added since tags
807
808
809 2005-08-11  Wim Taymans  <wim@fluendo.com>
810
811         * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked),
812         (gst_proxy_pad_set_target), (gst_proxy_pad_get_target),
813         (gst_proxy_pad_dispose), (gst_ghost_pad_do_activate_push),
814         (gst_ghost_pad_do_link), (gst_ghost_pad_set_internal),
815         (gst_ghost_pad_new_notarget), (gst_ghost_pad_get_target),
816         (gst_ghost_pad_set_target):
817         Actually implement (re)setting the target on a ghostpad
818         as described in the docs.
819
820 2005-08-10  Tim-Philipp Müller  <tim at centricular dot net>
821
822         * gst/gst.c: (gst_init_check_with_popt_table), (init_pre):
823           Check whether GST_DEBUG_NO_COLOR environment variable is
824           set and disable coloured debug output if that is the case.
825
826 2005-08-10  Tim-Philipp Müller  <tim at centricular dot net>
827
828         * gst/base/gsttypefindhelper.c: (helper_find_peek),
829         (gst_type_find_helper):
830           The memory returned by gst_type_find_peek() needs to
831           stay valid until the end of a typefind function, and
832           typefind functions may keep results from different 
833           offsets around, so we can't just unref the buffer from
834           the previous _peek(), but have to save all buffers 
835           returned by _peek() until typefinding is done and only
836           free them then.
837
838 2005-08-09  Tim-Philipp Müller  <tim at centricular dot net>
839
840         * docs/gst/gstreamer-sections.txt:
841         * gst/gstutils.h:
842           New macros: GST_ROUND_UP_2() through GST_ROUND_UP_64().
843
844 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
845
846         * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
847           Fix a pretty good memleak.
848
849 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
850
851         * gst/gstiterator.h:
852           Fix wrong include and 'make distcheck'.
853
854 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
855
856         * gst/gstbin.c: (bin_bus_handler):
857           Use gst_element_post_message() instead.
858
859 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
860
861         * gst/base/gstadapter.h:
862         * gst/base/gstbasesink.h:
863         * gst/base/gstbasesrc.h:
864         * gst/base/gstbasetransform.h:
865         * gst/base/gstcollectpads.h:
866         * gst/base/gstpushsrc.h:
867         * gst/gstiterator.h:
868           Add padding to our base elements' class and instance structs and
869           to GstIterator (you will need to rebuild all plugins and apps!)
870
871 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
872
873         * gst/gstbin.c: (bin_bus_handler):
874           Make default message forwarding from child->bus to bin->bus
875           threadsafe and make it not emit warnings if the parent has no bus.
876
877 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
878
879         * gst/gstelement.c: (activate_pads):
880           On paused->ready, set pad->caps to NULL, as is the documented
881           behaviour in this state change. Fixes playback of series of
882           media files when visualization is enabled in Totem.
883
884 2005-08-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
885
886         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
887           Allow NULL as filter-caps (which means "any").
888
889 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
890
891         * docs/libs/gstreamer-libs-sections.txt:
892         * libs/gst/controller/gst-controller.c:
893         * libs/gst/controller/gst-controller.h:
894         * libs/gst/controller/gst-helper.c:
895           adding more entries to the docs and fix small doc-bugs
896
897 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
898
899         * docs/gst/gstreamer-docs.sgml:
900         * docs/gst/gstreamer-sections.txt:
901         * docs/gst/gstreamer.types:
902         * docs/gst/tmpl/gstbasesink.sgml:
903         * docs/gst/tmpl/gstbasesrc.sgml:
904         * docs/gst/tmpl/gstbasetransform.sgml:
905         * docs/gst/tmpl/gstfakesrc.sgml:
906         * gst/base/gstcollectpads.c:
907         * gst/base/gstcollectpads.h:
908         * libs/gst/controller/gst-controller.c:
909         * libs/gst/controller/gst-controller.h:
910         * libs/gst/controller/gst-helper.c:
911         * libs/gst/controller/gst-interpolation.c:
912         * libs/gst/controller/lib.c:
913           added long/short desc for controller docs
914           added collectpads base class docs
915           added correct includes to base-class docs
916
917 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
918
919         * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
920         (gst_test_mono_source_set_property),
921         (gst_test_mono_source_class_init), (GST_START_TEST),
922         (gst_controller_suite):
923         * docs/gst/gstreamer-docs.sgml:
924         * docs/gst/gstreamer-sections.txt:
925         * docs/gst/gstreamer.types:
926         * docs/libs/gstreamer-libs-docs.sgml:
927         * docs/libs/gstreamer-libs-sections.txt:
928         * gst/base/gstadapter.c:
929         * libs/gst/controller/gst-controller.c:
930         (gst_controlled_property_new), (gst_controlled_property_free),
931         (gst_controller_new_valist),
932         (gst_controller_remove_properties_valist),
933         (gst_controller_sink_values), (_gst_controller_finalize):
934         * libs/gst/controller/gst-controller.h:
935         * libs/gst/controller/gst-helper.c:
936         (gst_object_control_properties), (gst_object_uncontrol_properties),
937         (gst_object_get_controller), (gst_object_set_controller),
938         (gst_object_sink_values), (gst_object_get_value_arrays),
939         (gst_object_get_value_array):
940           more tests (and fixes) for the controller
941           more docs for the controller
942           integrated companies docs for the adapter 
943
944 2005-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
945
946         * check/elements/gstfakesrc.c: (setup_fakesrc), (cleanup_fakesrc),
947         (GST_START_TEST), (fakesrc_suite):
948           add tests for sizetype
949
950 2005-08-04  Andy Wingo  <wingo@pobox.com>
951
952         * gst/elements/gstcapsfilter.c: Reimplement using basetransform,
953         fixes buffer_alloc proxying among other things.
954
955         * gst/base/gstbasetransform.c:
956         * gst/base/gstbasetransform.h:
957         Revert patch to gstbasetransform from 7-28 removing
958         delay_configure.
959
960         * gst/base/gstbasetransform.h (GstBaseTransformClass.get_size):
961         * gst/base/gstbasetransform.c (gst_base_transform_get_size):
962         Semantics changed, should return not the size of the output buffer
963         but the byte size of a buffer with a given caps.
964
965         * gst/base/gstbasetransform.c (gst_base_transform_getcaps): Better
966         debug object.
967         (gst_base_transform_configure_caps): Don't set out_size here: (in,
968         out) are not the pad caps until setcaps finishes.
969         (gst_base_transform_buffer_alloc): Proxy the buffer_alloc for the
970         not-in-place case as well. Deal with changing from in-place to
971         not-in-place within calling pad_alloc_buffer. Still a bit
972         concerned about the overhead here...
973
974 2005-08-03  Andy Wingo  <wingo@pobox.com>
975
976         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): Not
977         fixating is an error.
978
979 2005-08-04  Edward Hervey  <edward@fluendo.com>
980
981         * gst/base/gstadapter.h: 
982         Added gst_adapter_get_type() to the header
983
984 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
985
986         * check/Makefile.am:
987         * check/gst-libs/controller.c:
988         * libs/gst/controller/gst-controller.c:
989         (gst_controller_new_valist):
990           added check test suite for the controller
991         * gst/base/gstpushsrc.c:
992           fixed a doc typo
993
994 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
995
996         * docs/gst/Makefile.am:
997         * docs/gst/gstreamer-docs.sgml:
998         * docs/gst/gstreamer-sections.txt:
999         * docs/gst/gstreamer.types:
1000         * docs/gst/tmpl/gstfakesrc.sgml:
1001         * gst/base/README:
1002         * gst/base/gstbasesink.c:
1003         * gst/base/gstbasesink.h:
1004         * gst/base/gstbasesrc.c:
1005         * gst/base/gstbasesrc.h:
1006         * gst/base/gstbasetransform.c:
1007         * gst/base/gstpushsrc.c:
1008         * gst/base/gstpushsrc.h:
1009           add short/long description docs to base classes
1010           add pushsrc to the docs
1011           remove consolidated doc fragments
1012
1013 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
1014
1015         * configure.ac:
1016         * docs/libs/Makefile.am:
1017         * docs/libs/gstreamer-libs-docs.sgml:
1018         * docs/libs/gstreamer-libs-sections.txt:
1019         * docs/libs/gstreamer-libs.types:
1020         * examples/Makefile.am:
1021         * examples/controller/.cvsignore:
1022         * examples/controller/Makefile.am:
1023         * examples/controller/audio-example.c: (main):
1024         * libs/gst/Makefile.am:
1025         * libs/gst/controller/.cvsignore:
1026         * libs/gst/controller/Makefile.am:
1027         * libs/gst/controller/gst-controller.c:
1028         (on_object_controlled_property_changed), (gst_timed_value_compare),
1029         (gst_timed_value_find),
1030         (gst_controlled_property_set_interpolation_mode),
1031         (gst_controlled_property_new), (gst_controlled_property_free),
1032         (gst_controller_find_controlled_property),
1033         (gst_controller_new_valist), (gst_controller_new),
1034         (gst_controller_remove_properties_valist),
1035         (gst_controller_remove_properties), (gst_controller_set),
1036         (gst_controller_set_from_list), (gst_controller_unset),
1037         (gst_controller_get), (gst_controller_get_all),
1038         (gst_controller_sink_values), (gst_controller_get_value_arrays),
1039         (gst_controller_get_value_array),
1040         (gst_controller_set_interpolation_mode),
1041         (_gst_controller_finalize), (_gst_controller_init),
1042         (_gst_controller_class_init), (gst_controller_get_type):
1043         * libs/gst/controller/gst-controller.h:
1044         * libs/gst/controller/gst-helper.c: (g_object_control_properties),
1045         (g_object_uncontrol_properties), (g_object_get_controller),
1046         (g_object_set_controller), (g_object_sink_values),
1047         (g_object_get_value_arrays), (g_object_get_value_array):
1048         * libs/gst/controller/gst-interpolation.c:
1049         (gst_controlled_property_find_timed_value_node),
1050         (interpolate_none_get), (interpolate_trigger_get),
1051         (interpolate_trigger_get_value_array):
1052         * libs/gst/controller/lib.c: (gst_controller_init):
1053         * pkgconfig/Makefile.am:
1054         * pkgconfig/gstreamer-control-uninstalled.pc.in:
1055         * pkgconfig/gstreamer-control.pc.in:
1056         * testsuite/Makefile.am:
1057         * testsuite/controller/.cvsignore:
1058         * testsuite/controller/Makefile.am:
1059         * testsuite/controller/interpolator.c: (main):
1060           added controller code
1061           removed dparam pc files
1062
1063 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
1064         * gst/base/gstcollectpads.c: (gst_collectpads_finalize),
1065         (gst_collectpads_stop):
1066           Broadcast the condition when shutting down, to make sure we wake all
1067           threads up. Shut down pads on finalize, for safety.
1068
1069 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
1070         * gst/base/gstbasetransform.c: (gst_base_transform_init),
1071         (gst_base_transform_handle_buffer),
1072         (gst_base_transform_change_state):
1073           Handle PAUSED->READY->PAUSED transition after negotiation
1074           occurred already.
1075         * gst/gstmessage.c: (gst_message_init):
1076           Extra piece of debug for new messages.
1077
1078 2005-08-01  Stefan Kost  <ensonic@users.sf.net>
1079
1080         * configure.ac:
1081         * docs/gst/tmpl/gstbasesrc.sgml:
1082         * docs/gst/tmpl/gstelement.sgml:
1083         * docs/gst/tmpl/gstevent.sgml:
1084         * docs/gst/tmpl/gstfakesrc.sgml:
1085         * docs/gst/tmpl/gstformat.sgml:
1086         * docs/gst/tmpl/gstghostpad.sgml:
1087         * docs/gst/tmpl/gstpad.sgml:
1088         * docs/gst/tmpl/gstquery.sgml:
1089         * docs/gst/tmpl/gststructure.sgml:
1090         * docs/gst/tmpl/gsttaglist.sgml:
1091         * docs/gst/tmpl/gstvalue.sgml:
1092         * docs/libs/gstreamer-libs-docs.sgml:
1093         * docs/libs/gstreamer-libs-sections.txt:
1094         * docs/libs/gstreamer-libs.types:
1095         * libs/gst/Makefile.am:
1096         * libs/gst/control/.cvsignore:
1097         * libs/gst/control/Makefile.am:
1098         * libs/gst/control/control.c:
1099         * libs/gst/control/control.h:
1100         * libs/gst/control/dparam.c:
1101         * libs/gst/control/dparam.h:
1102         * libs/gst/control/dparam_smooth.c:
1103         * libs/gst/control/dparam_smooth.h:
1104         * libs/gst/control/dparamcommon.h:
1105         * libs/gst/control/dparammanager.c:
1106         * libs/gst/control/dparammanager.h:
1107         * libs/gst/control/dplinearinterp.c:
1108         * libs/gst/control/dplinearinterp.h:
1109         * libs/gst/control/unitconvert.c:
1110         * libs/gst/control/unitconvert.h:
1111         * testsuite/Makefile.am:
1112         * testsuite/dynparams/.cvsignore:
1113         * testsuite/dynparams/Makefile.am:
1114         * testsuite/dynparams/dparamstest.c:
1115         * tools/Makefile.am:
1116         * tools/gst-inspect.c: (print_element_info), (main):
1117         * tools/gst-xmlinspect.c: (print_element_info), (main):
1118           deactivate and remove dparams (libgstcontrol)
1119
1120 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
1121
1122         * gst/elements/gsttypefindelement.c:
1123         (gst_type_find_element_have_type), (gst_type_find_element_init),
1124         (stop_typefinding), (gst_type_find_element_handle_event),
1125         (gst_type_find_element_chain), (gst_type_find_element_getrange):
1126         * gst/elements/gsttypefindelement.h:
1127           Set caps on all outgoing buffers, not just the first one.
1128
1129 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
1130
1131         * gst/elements/gsttypefindelement.c:
1132         (gst_type_find_element_have_type),
1133         (gst_type_find_element_check_set_buffer_caps),
1134         (gst_type_find_element_init), (stop_typefinding),
1135         (gst_type_find_element_handle_event),
1136         (gst_type_find_element_chain), (gst_type_find_element_getrange):
1137         * gst/elements/gsttypefindelement.h:
1138           Set caps on first outgoing buffer when we've found the type.
1139
1140 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
1141
1142         * docs/gst/gstreamer-docs.sgml:
1143         * docs/gst/gstreamer-sections.txt:
1144         * docs/gst/tmpl/gstscheduler.sgml:
1145         * docs/gst/tmpl/gstschedulerfactory.sgml:
1146           Remove some old cruft from docs.
1147
1148 2005-07-31  Tim-Philipp Müller  <tim at centricular dot net>
1149
1150         * gst/gstpad.h:
1151           Fix inline docs for GstPadLinkReturn.
1152           
1153         * gst/gststructure.c: (gst_structure_has_name):
1154         * gst/gststructure.h:
1155         * docs/gst/gstreamer-sections.txt:
1156           New API: gst_structure_has_name().
1157
1158 2005-07-30  Tim-Philipp Müller  <tim at centricular dot net>
1159
1160         * configure.ac:
1161           Use AC_SYS_LARGEFILE, which will set _FILE_OFFSET_BITS=64
1162           and _LARGEFILE_SOURCE in config.h as required. Do not 
1163           export those flags in our .pc files any longer (#142209).
1164
1165           Remove unused GST_DISABLE_OMEGA_COTHREADS stuff.
1166
1167         * gst/elements/gstfilesink.c: (gst_file_sink_class_init),
1168         (gst_file_sink_do_seek), (gst_file_sink_event),
1169         (gst_file_sink_get_current_offset), (gst_file_sink_render):
1170           Redo seek/tell calls with large file support in mind; add some
1171           debugging messages; add log message that tells us when large
1172           file support is unavailable or not enabled for some reason.
1173
1174         * gst/elements/gstfilesrc.c: (gst_file_src_class_init):
1175           Add log message that tells us when large file support 
1176           is unavailable or not enabled for some reason.
1177
1178 2005-07-29  Wim Taymans  <wim@fluendo.com>
1179
1180         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
1181         Added test for removing an element with ghostpad from a bin.
1182         Fixed test as current implementation does the right thing.
1183
1184         * gst/gstghostpad.c: (gst_proxy_pad_class_init),
1185         (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
1186         (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
1187         (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
1188         (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
1189         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
1190         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
1191         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
1192         (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
1193         (gst_proxy_pad_get_target), (gst_proxy_pad_init),
1194         (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
1195         (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
1196         (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
1197         (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
1198         (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
1199         (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
1200         * gst/gstghostpad.h:
1201         Clean up ghostpads, remove properties for internal stuff.
1202         Make threadsafe.
1203         Fix refcounting.
1204         Prepare for switching targets, not all use cases work yet.
1205
1206 2005-07-29  Wim Taymans  <wim@fluendo.com>
1207
1208         * docs/design/part-gstghostpad.txt:
1209         Small update.
1210
1211         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
1212         (gst_bin_remove_func):
1213         Unlinking pads while holding the bin LOCK is not a good
1214         idea.
1215
1216         * gst/gstpad.c: (gst_pad_class_init),
1217         (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
1218         (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
1219         No prob setting template after creating the pad.
1220
1221 2005-07-29  Jan Schmidt  <thaytan@mad.scientist.com>
1222
1223         * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
1224         (gst_bus_peek), (gst_bus_source_dispatch),
1225         (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
1226         (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
1227           gst_bus_poll may be called from other threads. Handle
1228           this nicely by not making poll_data disappear off the
1229           stack once gst_bus_poll returns.
1230           gst_bus_peek now increments the refcount on the returned
1231           message.
1232
1233 2005-07-29  Wim Taymans  <wim@fluendo.com>
1234
1235         * docs/design/part-gstghostpad.txt:
1236         Overview of current GhostPad datastructures and use
1237         cases for changing the target.
1238
1239 2005-07-28  Wim Taymans  <wim@fluendo.com>
1240
1241         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
1242         Added checks for hierarchy consistency whan adding linked
1243         elements to bins.
1244
1245         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
1246         Added check to test element scheduling without bin/pipeline.
1247
1248         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
1249         First add elements to bin, then link.
1250         
1251         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
1252         (gst_bin_remove_func):
1253         Unlink pads from elements added/removed from bin to maintain
1254         hierarchy consistency.
1255
1256 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1257
1258         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
1259         (gst_base_transform_handle_buffer):
1260         * gst/base/gstbasetransform.h:
1261           Remove broken delay_configure (fixes renegotiation of software
1262           scaling pipelines); remove some leftover printf()s.
1263
1264 2005-07-28  Wim Taymans  <wim@fluendo.com>
1265
1266         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
1267         Added some more tests for wrong hierarchy
1268
1269         * docs/design/part-overview.txt:
1270         Some updates.
1271
1272         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
1273         Cleanups.
1274
1275         * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
1276         (gst_element_dispose):
1277         Some more cleanups.
1278
1279         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
1280         (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
1281         (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
1282         (gst_pad_set_caps), (gst_pad_send_event):
1283         Check for correct hierarchy when linking pads. Moving to
1284         strict requirement for ghostpads when linking elements in
1285         different bins.
1286
1287         * gst/gstpad.h:
1288         Clean ups. Added WRONG_HIERARCHY return value.
1289
1290 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1291
1292         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
1293           Better debug if no transform is possible.
1294
1295 2005-07-27  Wim Taymans  <wim@fluendo.com>
1296
1297         * docs/random/wtay/network-transp:
1298         Some old doc I had.
1299
1300 2005-07-27  Wim Taymans  <wim@fluendo.com>
1301
1302         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
1303         (gst_dp_event_from_packet):
1304         Fix serialization of seek events.
1305
1306 2005-07-27  Wim Taymans  <wim@fluendo.com>
1307
1308         * check/gst-libs/gdp.c: (GST_START_TEST):
1309         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
1310         Fix compilation and fix event serialization.
1311
1312 2005-07-27  Wim Taymans  <wim@fluendo.com>
1313
1314         * CHANGES-0.9:
1315         * docs/design/part-TODO.txt:
1316         * docs/design/part-events.txt:
1317         Some docs updates
1318
1319         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1320         (gst_base_sink_event), (gst_base_sink_do_sync),
1321         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
1322         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
1323         (gst_base_src_do_seek), (gst_base_src_event_handler),
1324         (gst_base_src_loop):
1325         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
1326         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
1327         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
1328         (gst_base_transform_event), (gst_base_transform_handle_buffer),
1329         (gst_base_transform_set_passthrough),
1330         (gst_base_transform_is_passthrough):
1331         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
1332         * gst/elements/gstfilesink.c: (gst_file_sink_event):
1333         Event updates.
1334
1335         * gst/gstbuffer.h:
1336         Use faster casts.
1337
1338         * gst/gstelement.c: (gst_element_seek):
1339         * gst/gstelement.h:
1340         Update gst_element_seek.
1341
1342         * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
1343         (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
1344         (gst_event_new_flush_start), (gst_event_new_flush_stop),
1345         (gst_event_new_eos), (gst_event_new_newsegment),
1346         (gst_event_parse_newsegment), (gst_event_new_tag),
1347         (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
1348         (gst_event_parse_qos), (gst_event_new_seek),
1349         (gst_event_parse_seek), (gst_event_new_navigation):
1350         * gst/gstevent.h:
1351         Make GstEvent use GstStructure. Add parsing code, make sure the
1352         API is sufficiently generic.
1353         Mark possible directions of events and serialization.
1354
1355         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
1356         (_gst_message_copy), (gst_message_new_segment_start),
1357         (gst_message_new_segment_done), (gst_message_new_custom),
1358         (gst_message_parse_segment_start),
1359         (gst_message_parse_segment_done):
1360         Small cleanups.
1361
1362         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
1363         (gst_pad_set_caps), (gst_pad_send_event):
1364         Update for new events. 
1365         Catch events sent in wrong directions.
1366
1367         * gst/gstqueue.c: (gst_queue_link_src),
1368         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
1369         (gst_queue_handle_src_query):
1370         Event updates.
1371
1372         * gst/gsttag.c:
1373         * gst/gsttag.h:
1374         Remove event code from this file.
1375
1376         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
1377         (gst_dp_event_from_packet):
1378         Event updates.
1379
1380 2005-07-27  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1381
1382         * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
1383         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
1384         (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
1385           Make debugging actually useful.
1386
1387 2005-07-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1388
1389         * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
1390         (gst_pad_fixate_caps):
1391           Implement default fixation once again, so that gst_pad_fixate()
1392           actually does anything at all. This probably needs to be some
1393           sort of a last resort, and use profile-based fixation first, but
1394           since that doesn't exist yet, this is the best we have. Fixes
1395           visualization in Totem.
1396
1397 2005-07-22  Wim Taymans  <wim@fluendo.com>
1398
1399         * docs/design/part-events.txt:
1400         Small update.
1401
1402         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1403         (gst_base_sink_do_sync), (gst_base_sink_activate_push),
1404         (gst_base_sink_activate_pull):
1405         Some more comments.
1406
1407         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
1408         (gst_fake_src_create):
1409         Fix handoff marshall.
1410
1411         * gst/elements/gstidentity.c: (gst_identity_class_init),
1412         (gst_identity_transform_ip):
1413         We're a real inplace element.
1414
1415         * gst/gstbus.c: (gst_bus_post):
1416         Added some comments.
1417
1418         * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
1419         * tests/muxing/case1.c: (main):
1420         * tests/sched/dynamic-pipeline.c: (main):
1421         * tests/sched/interrupt1.c: (main):
1422         * tests/sched/interrupt2.c: (main):
1423         * tests/sched/interrupt3.c: (main):
1424         * tests/sched/runxml.c: (main):
1425         * tests/sched/sched-stress.c: (main):
1426         * tests/seeking/seeking1.c: (event_received), (main):
1427         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
1428         (main):
1429         * tests/threadstate/threadstate3.c: (main):
1430         * tests/threadstate/threadstate4.c: (main):
1431         * tests/threadstate/threadstate5.c: (main):
1432         Fix the tests.
1433
1434 2005-07-21  Wim Taymans  <wim@fluendo.com>
1435
1436         * docs/design/part-seeking.txt:
1437         Some small additions.
1438
1439         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1440         (gst_base_sink_get_times), (gst_base_sink_do_sync),
1441         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
1442         * gst/base/gstbasesink.h:
1443         discont values are gint64, handle the math correctly.
1444
1445         * gst/base/gstbasesrc.c: (gst_base_src_loop):
1446         Make the basesrc report error if the source pad is not linked.
1447
1448         * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
1449         (gst_queue_loop), (gst_queue_handle_src_query),
1450         (gst_queue_src_activate_push):
1451         Make queue collect data even if the srcpad is not linked.
1452         Start pushing out data as soon as it is linked.
1453
1454         * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
1455         * gst/gstutils.h:
1456         Added gst_flow_get_name() to ease error reporting.
1457
1458 2005-07-20  Wim Taymans  <wim@fluendo.com>
1459
1460         * gst/gstmessage.c: (gst_message_new_segment_start),
1461         (gst_message_new_segment_done), (gst_message_parse_segment_start),
1462         (gst_message_parse_segment_done):
1463         * gst/gstmessage.h:
1464         Added a bunch of messages for advanced seeking.
1465
1466         * gst/parse/grammar.y:
1467         * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
1468         (gst_dpman_state_changed):
1469         Fix some new-pad -> pad-added signals
1470
1471 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1472
1473         * docs/manual/appendix-porting.xml:
1474         * docs/pwg/appendix-porting.xml:
1475           Document new-pad/state-change signal renames and the FixedList
1476           type rename.
1477
1478 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1479
1480         * docs/manual/advanced-autoplugging.xml:
1481         * docs/manual/basics-helloworld.xml:
1482         * docs/manual/basics-pads.xml:
1483         * docs/random/ds/0.9-suggested-changes:
1484         * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
1485         * gst/gstelement.h:
1486         * gst/gstevent.h:
1487         * gst/gstformat.h:
1488         * gst/gstquery.h:
1489         * gst/gststructure.c: (gst_structure_value_get_generic_type),
1490         (gst_structure_parse_array), (gst_structure_parse_value):
1491         * gst/gstvalue.c: (gst_type_is_fixed),
1492         (gst_value_list_prepend_value), (gst_value_list_append_value),
1493         (gst_value_list_get_size), (gst_value_list_get_value),
1494         (gst_value_transform_array_string), (gst_value_serialize_array),
1495         (gst_value_deserialize_array), (gst_value_intersect_array),
1496         (gst_value_is_fixed), (_gst_value_initialize):
1497         * gst/gstvalue.h:
1498           GstElement::new-pad -> pad-added, GstElement::state-change ->
1499           state-changed, GstValueFixedList -> GstValueArray, add format and
1500           flags as their own arguments in gst_element_seek() (should improve
1501           "bindeability"), remove function generators since they don't work
1502           under a whole bunch of compilers (they were deprecated already
1503           anyway).
1504
1505 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1506
1507         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
1508         (_gst_debug_register_funcptr):
1509         * gst/gstinfo.h:
1510           Fix illegal cast on some platforms (#309253).
1511
1512 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1513
1514         * gst/gstmessage.c: (gst_message_new_custom):
1515         * gst/gstmessage.h:
1516           Add _new_custom, make _new_application a macro to _new_custom.
1517
1518 2005-07-20  Wim Taymans  <wim@fluendo.com>
1519
1520         * gst/base/gstbasesrc.c: (gst_base_src_init),
1521         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
1522         * gst/base/gstbasesrc.h:
1523         Add a gboolean to decide when to push out a discont.
1524
1525         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
1526         (gst_queue_loop), (gst_queue_handle_src_query),
1527         (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
1528         (gst_queue_set_property), (gst_queue_get_property):
1529         Some cleanups.
1530
1531         * tests/threadstate/threadstate1.c: (main):
1532         Make a thread test compile and run... very silly..
1533
1534
1535 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1536
1537         * docs/manual/appendix-porting.xml:
1538           Mention removal of libgstgconf-0.9.la and existence of gconf
1539           elements.
1540
1541 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1542
1543         * docs/pwg/advanced-clock.xml:
1544         * docs/pwg/appendix-porting.xml:
1545         * docs/pwg/intro-preface.xml:
1546         * docs/pwg/other-base.xml:
1547         * docs/pwg/other-manager.xml:
1548         * docs/pwg/other-nton.xml:
1549         * docs/pwg/other-ntoone.xml:
1550         * docs/pwg/other-oneton.xml:
1551         * docs/pwg/pwg.xml:
1552           Document base classes, update sections of n-to-1 and 1-to-n (muxer,
1553           demuxer), remove n-to-n (was never written), fix some code examples
1554           and links and update the porting section to include all this.
1555
1556 2005-07-19  Wim Taymans  <wim@fluendo.com>
1557
1558         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
1559         (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
1560         (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
1561         (gst_queue_src_activate_push), (gst_queue_change_state),
1562         (gst_queue_get_property):
1563         * gst/gstqueue.h:
1564         Propagate GstFlowReturn more intelligently upstream and output
1565         an ERROR/EOS when streaming stopped due to fatal error.
1566
1567 2005-07-19  Wim Taymans  <wim@fluendo.com>
1568
1569         * tools/gst-launch.c: (check_intr), (event_loop), (main):
1570         Don't block forever for the state change to complete, the
1571         pipeline already did with a sensible timeout.
1572
1573 2005-07-19  Wim Taymans  <wim@fluendo.com>
1574
1575         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
1576         Make sure we never call the create function is we
1577         got deactivated.
1578
1579 2005-07-19  Andy Wingo  <wingo@pobox.com>
1580
1581         * gst/parse/parse.l: Attempt to solve bug #172815.
1582
1583 2005-07-19  Wim Taymans  <wim@fluendo.com>
1584
1585         * docs/design/part-clocks.txt:
1586         * docs/design/part-events.txt:
1587         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
1588         Small docs updates.
1589         Only update the seeking values when we are not
1590         busy streaming.
1591
1592 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
1593
1594         * gst/base/gstbasesrc.c: (gst_base_src_loop):
1595           Oops, ignore the result of gst_pad_push_event here.
1596
1597 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
1598
1599         * gst/base/gstbasesrc.c: (gst_base_src_loop),
1600         (gst_base_src_activate_push):
1601           Send discont event from the loop function, as pads
1602           aren't activated yet in the activate_push handler.
1603
1604         * gst/gstbin.c: (bin_bus_handler):
1605           Don't leak element name.
1606
1607 2005-07-18  Andy Wingo  <wingo@pobox.com>
1608
1609         * configure.ac: Use AS_LIBTOOL_TAGS.
1610
1611 2005-07-18  Wim Taymans  <wim@fluendo.com>
1612
1613         * docs/gst/gstreamer.types:
1614         Remove deleted types.
1615
1616 2005-07-18  Wim Taymans  <wim@fluendo.com>
1617
1618         * check/elements/gstfakesrc.c: (GST_START_TEST):
1619         * configure.ac:
1620         * gst/Makefile.am:
1621         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
1622         (init_popt_callback):
1623         * gst/gst.h:
1624         * gst/gst_private.h:
1625         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
1626         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
1627         * gst/gstbin.h:
1628         * gst/gstbus.h:
1629         * gst/gstconfig.h.in:
1630         * gst/gstelement.c: (gst_element_class_init),
1631         (gst_element_set_base_time), (gst_element_get_base_time),
1632         (iterator_fold_with_resync), (gst_element_change_state),
1633         (gst_element_dispose), (gst_element_get_bus):
1634         * gst/gstelement.h:
1635         * gst/gstelementfactory.h:
1636         * gst/gsterror.c: (_gst_core_errors_init):
1637         * gst/gsterror.h:
1638         * gst/gstevent.h:
1639         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
1640         * gst/gstindex.c:
1641         * gst/gstinfo.c: (_gst_debug_init):
1642         * gst/gstmessage.c: (_gst_message_copy):
1643         * gst/gstmessage.h:
1644         * gst/gstminiobject.h:
1645         * gst/gstobject.c:
1646         * gst/gstobject.h:
1647         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
1648         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
1649         * gst/gstpad.h:
1650         * gst/gstparse.h:
1651         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
1652         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
1653         (gst_pipeline_get_last_stream_time):
1654         * gst/gstpipeline.h:
1655         * gst/gstpluginfeature.h:
1656         * gst/gstquery.h:
1657         * gst/gstscheduler.c:
1658         * gst/gstscheduler.h:
1659         * gst/gststructure.h:
1660         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
1661         (gst_task_finalize), (gst_task_func), (gst_task_create),
1662         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
1663         (gst_task_stop), (gst_task_pause):
1664         * gst/gsttask.h:
1665         * gst/gsttypefind.h:
1666         * gst/gsttypes.h:
1667         * gst/registries/gstlibxmlregistry.c: (load_feature),
1668         (gst_xml_registry_load), (gst_xml_registry_save_feature):
1669         * gst/registries/gstxmlregistry.c:
1670         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
1671         * gst/schedulers/threadscheduler.c:
1672         * libs/gst/control/dparammanager.h:
1673         * tools/gst-inspect.c: (print_element_list),
1674         (print_plugin_features), (print_element_features):
1675         * tools/gst-xmlinspect.c: (print_element_list),
1676         (print_plugin_info), (main):
1677         Removed plugable schedulers.
1678         Removed Scheduler/Manager from elements.
1679         Removed gsttypes.h, rearranged includes.
1680         Removed dependency pad<->element, element<>pipeline, and
1681         various others,  fix includes.
1682         implement gst_pad_get_parent() with gst_object_get_parent()
1683         Make GstTask sefcontained.
1684         Fix _get_state() on GstBin, it did not return ASYNC with a 0
1685         timeout.
1686         Fix endless loop in iterator_fold_with_resync.
1687
1688
1689 2005-07-18  Wim Taymans  <wim@fluendo.com>
1690
1691         * gst/Makefile.am:
1692         * gst/gstarch.h:
1693         Remove old file.
1694
1695 2005-07-18  Wim Taymans  <wim@fluendo.com>
1696
1697         * gst/Makefile.am:
1698         No more cothreads.h
1699
1700 2005-07-18  Wim Taymans  <wim@fluendo.com>
1701
1702         * gst/cothreads.c:
1703         * gst/cothreads.h:
1704         Let's remove these.
1705
1706 2005-07-18  Wim Taymans  <wim@fluendo.com>
1707
1708         * docs/design/part-dynamic.txt:
1709         * docs/design/part-events.txt:
1710         * docs/design/part-seeking.txt:
1711         Some more docs in the works.
1712
1713         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
1714         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
1715         (gst_base_transform_setcaps), (gst_base_transform_get_size),
1716         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
1717         (gst_base_transform_handle_buffer),
1718         (gst_base_transform_sink_activate_push),
1719         (gst_base_transform_src_activate_pull),
1720         (gst_base_transform_set_passthrough),
1721         (gst_base_transform_is_passthrough):
1722         Refcounting fixes.
1723
1724         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
1725         Cleanups.
1726
1727         * gst/gstevent.c: (gst_event_finalize):
1728         Set SRC to NULL.
1729
1730         * gst/gstutils.c: (gst_element_unlink),
1731         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
1732         (gst_pad_proxy_setcaps):
1733         * gst/gstutils.h:
1734         Add _get_parent_element() to get a pads parent as an element.
1735
1736 2005-07-18  Wim Taymans  <wim@fluendo.com>
1737
1738         * check/gst/gstbin.c: (GST_START_TEST):
1739         Remove bogus test.
1740
1741 2005-07-18  Wim Taymans  <wim@fluendo.com>
1742
1743         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
1744         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
1745         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
1746         (gst_base_sink_event), (gst_base_sink_do_sync),
1747         (gst_base_sink_chain), (gst_base_sink_loop),
1748         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
1749         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
1750         Refcounting fixes.
1751         Fix logic for returning ASYNC when not prerolled.
1752
1753 2005-07-18  Wim Taymans  <wim@fluendo.com>
1754
1755         * gst/gstqueue.c: (gst_queue_handle_sink_event):
1756         Fix nasty refcount bug.
1757
1758 2005-07-16 Philippe Khalaf <burger@speedy.org>
1759         * gst/elements/gstfdsrc.c:
1760         * gst/elements/gstfdsrc.h:
1761         * gst/elements/gstelements.c:
1762         * gst/elements/Makefile.am:
1763         Ported fdsrc to 0.9.
1764
1765 2005-07-16  Wim Taymans  <wim@fluendo.com>
1766
1767         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1768         (gst_base_sink_do_sync):
1769         Fix compile error.
1770
1771 2005-07-16  Wim Taymans  <wim@fluendo.com>
1772
1773         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1774         (gst_base_sink_event), (gst_base_sink_get_times),
1775         (gst_base_sink_do_sync), (gst_base_sink_change_state):
1776         * gst/base/gstbasesink.h:
1777         Store and use discont values when syncing buffers as described
1778         in design docs.
1779         
1780         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
1781         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
1782         (gst_base_src_activate_push):
1783         Push discont event when starting.
1784
1785         * gst/elements/gstidentity.c: (gst_identity_transform):
1786         Small cleanups.
1787
1788         * gst/gstbin.c: (gst_bin_change_state):
1789         Small cleanups in base_time  distribution.
1790
1791         * gst/gstelement.c: (gst_element_set_base_time),
1792         (gst_element_get_base_time), (gst_element_change_state):
1793         * gst/gstelement.h:
1794         Added methods for the base_time of the element.
1795         Some MT fixes.
1796
1797         * gst/gstpipeline.c: (gst_pipeline_send_event),
1798         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
1799         (gst_pipeline_get_last_stream_time):
1800         * gst/gstpipeline.h:
1801         MT fixes.
1802         Handle seeking as described in design doc, remove stream_time
1803         hack.
1804         Cleanups clock and stream_time selection code. Added accessors
1805         for the stream_time.
1806         
1807
1808 2005-07-16  Andy Wingo  <wingo@pobox.com>
1809
1810         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
1811         (#305291).
1812
1813 2005-07-16  Wim Taymans  <wim@fluendo.com>
1814
1815         * check/gst/gstbin.c: (GST_START_TEST):
1816         Make elements silent as the deep_notify refs the
1817         parent, which might make the test fail.
1818
1819         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
1820         Don't hold the lock for too long.
1821
1822 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
1823
1824         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
1825           Don't unref the caps we passed to gst_caps_make_writable() after
1826           passing them. gst_caps_make_writable() will do that for us.
1827
1828 2005-07-15  Andy Wingo  <wingo@pobox.com>
1829
1830         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
1831         (#157311).
1832
1833         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
1834         own marshalling function for the handoff signal. Properly type the
1835         buffer as a buffer. Fixes some warnings. Should do a more general
1836         solution.
1837         (gst_identity_class_init): Plug into the right marshaller.
1838
1839 2005-07-15  Wim Taymans  <wim@fluendo.com>
1840
1841         * docs/design/part-TODO.txt:
1842         * docs/design/part-clocks.txt:
1843         * docs/design/part-element-sink.txt:
1844         * docs/design/part-events.txt:
1845         * docs/design/part-gstpipeline.txt:
1846         Updated docs, mostly DISCONT related.
1847
1848 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
1849
1850         * docs/pwg/building-pads.xml:
1851           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
1852
1853 2005-07-15  Andy Wingo  <wingo@pobox.com>
1854
1855         * tools/gst-typefind.c: Update, add copyright block.
1856
1857         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
1858         Normalize and truncate caps before fixation.
1859
1860         * gst/gstcaps.h:
1861         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
1862         discards all but the first structure from its argument.
1863
1864 2005-07-15  Wim Taymans  <wim@fluendo.com>
1865
1866         * gst/base/gstbasetransform.c: (gst_base_transform_init),
1867         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
1868         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
1869         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
1870         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
1871         (gst_base_transform_chain), (gst_base_transform_change_state),
1872         (gst_base_transform_set_passthrough),
1873         (gst_base_transform_is_passthrough):
1874         * gst/base/gstbasetransform.h:
1875         Make passthrough work using the bufferpools.
1876         Changed API a bit, subclasses have to write into a buffer
1877         provided by the base class.
1878         More debug info in nego functions.
1879         
1880         * gst/elements/gstidentity.c: (gst_identity_init),
1881         (gst_identity_transform):
1882         Port to new base class.
1883
1884 2005-07-15  Wim Taymans  <wim@fluendo.com>
1885
1886         * gst/gstmessage.c: (gst_message_new_state_changed):
1887         * tools/gst-launch.c: (event_loop), (main):
1888         Totally dump messages in -launch with the -m option.
1889         Fix message name for State messages,
1890
1891 2005-07-14  Wim Taymans  <wim@fluendo.com>
1892
1893         * gst/base/gstbasesrc.c: (gst_base_src_loop):
1894         Post error messages on errors.
1895
1896 2005-07-14  Wim Taymans  <wim@fluendo.com>
1897
1898         * gst/gstcaps.c: (gst_caps_do_simplify):
1899         Remove debug info.
1900
1901         * gst/gsterror.h:
1902         Define error for stream stopped.
1903
1904         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1905         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
1906         Do proper return values.
1907
1908         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
1909         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
1910         (gst_pad_get_range):
1911         Better return values.
1912
1913         * gst/gstpad.h:
1914         Reorganise return values, add macro to check for fatal errors.
1915
1916         * gst/gstqueue.c: (gst_queue_chain):
1917         Return proper GstFlowReturn values,
1918
1919 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
1920
1921         * docs/gst/gstreamer-sections.txt:
1922         * docs/gst/gstreamer.types:
1923         * docs/gst/tmpl/gst.sgml:
1924         * docs/gst/tmpl/gstbasesink.sgml:
1925         * docs/gst/tmpl/gstbasesrc.sgml:
1926         * docs/gst/tmpl/gstbasetransform.sgml:
1927         * docs/gst/tmpl/gstbin.sgml:
1928         * docs/gst/tmpl/gstbuffer.sgml:
1929         * docs/gst/tmpl/gstcaps.sgml:
1930         * docs/gst/tmpl/gstclock.sgml:
1931         * docs/gst/tmpl/gstcompat.sgml:
1932         * docs/gst/tmpl/gstconfig.sgml:
1933         * docs/gst/tmpl/gstelement.sgml:
1934         * docs/gst/tmpl/gstelementdetails.sgml:
1935         * docs/gst/tmpl/gstelementfactory.sgml:
1936         * docs/gst/tmpl/gstenumtypes.sgml:
1937         * docs/gst/tmpl/gsterror.sgml:
1938         * docs/gst/tmpl/gstevent.sgml:
1939         * docs/gst/tmpl/gstfakesink.sgml:
1940         * docs/gst/tmpl/gstfakesrc.sgml:
1941         * docs/gst/tmpl/gstfilesink.sgml:
1942         * docs/gst/tmpl/gstfilesrc.sgml:
1943         * docs/gst/tmpl/gstfilter.sgml:
1944         * docs/gst/tmpl/gstformat.sgml:
1945         * docs/gst/tmpl/gstghostpad.sgml:
1946         * docs/gst/tmpl/gstimplementsinterface.sgml:
1947         * docs/gst/tmpl/gstindex.sgml:
1948         * docs/gst/tmpl/gstindexfactory.sgml:
1949         * docs/gst/tmpl/gstinfo.sgml:
1950         * docs/gst/tmpl/gstiterator.sgml:
1951         * docs/gst/tmpl/gstmacros.sgml:
1952         * docs/gst/tmpl/gstmemchunk.sgml:
1953         * docs/gst/tmpl/gstminiobject.sgml:
1954         * docs/gst/tmpl/gstobject.sgml:
1955         * docs/gst/tmpl/gstpad.sgml:
1956         * docs/gst/tmpl/gstpadtemplate.sgml:
1957         * docs/gst/tmpl/gstparse.sgml:
1958         * docs/gst/tmpl/gstpipeline.sgml:
1959         * docs/gst/tmpl/gstplugin.sgml:
1960         * docs/gst/tmpl/gstpluginfeature.sgml:
1961         * docs/gst/tmpl/gstquery.sgml:
1962         * docs/gst/tmpl/gstqueue.sgml:
1963         * docs/gst/tmpl/gstregistry.sgml:
1964         * docs/gst/tmpl/gstregistrypool.sgml:
1965         * docs/gst/tmpl/gstscheduler.sgml:
1966         * docs/gst/tmpl/gstschedulerfactory.sgml:
1967         * docs/gst/tmpl/gststructure.sgml:
1968         * docs/gst/tmpl/gstsystemclock.sgml:
1969         * docs/gst/tmpl/gsttaglist.sgml:
1970         * docs/gst/tmpl/gsttagsetter.sgml:
1971         * docs/gst/tmpl/gsttrace.sgml:
1972         * docs/gst/tmpl/gsttrashstack.sgml:
1973         * docs/gst/tmpl/gsttypefind.sgml:
1974         * docs/gst/tmpl/gsttypefindfactory.sgml:
1975         * docs/gst/tmpl/gsttypes.sgml:
1976         * docs/gst/tmpl/gsturihandler.sgml:
1977         * docs/gst/tmpl/gsturitype.sgml:
1978         * docs/gst/tmpl/gstutils.sgml:
1979         * docs/gst/tmpl/gstvalue.sgml:
1980         * docs/gst/tmpl/gstversion.sgml:
1981         * docs/gst/tmpl/gstxml.sgml:
1982         * docs/libs/tmpl/gstcontrol.sgml:
1983         * docs/libs/tmpl/gstdataprotocol.sgml:
1984         * docs/libs/tmpl/gstdparam.sgml:
1985         * docs/libs/tmpl/gstdplinint.sgml:
1986         * docs/libs/tmpl/gstdpman.sgml:
1987         * docs/libs/tmpl/gstdpsmooth.sgml:
1988         * docs/libs/tmpl/gstgetbits.sgml:
1989         * docs/libs/tmpl/gstunitconvert.sgml:
1990         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
1991         (gst_push_src_base_init), (gst_push_src_class_init),
1992         (gst_push_src_init), (gst_push_src_create):
1993         * gst/base/gstpushsrc.h:
1994         * gst/elements/gstelements.c:
1995         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
1996         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
1997         (gst_fake_sink_init), (gst_fake_sink_set_property),
1998         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
1999         (gst_fake_sink_event), (gst_fake_sink_preroll),
2000         (gst_fake_sink_render), (gst_fake_sink_change_state):
2001         * gst/elements/gstfakesink.h:
2002         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
2003         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
2004         (gst_fake_src_base_init), (gst_fake_src_class_init),
2005         (gst_fake_src_init), (gst_fake_src_event_handler),
2006         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
2007         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
2008         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
2009         (gst_fake_src_create_buffer), (gst_fake_src_create),
2010         (gst_fake_src_start), (gst_fake_src_stop):
2011         * gst/elements/gstfakesrc.h:
2012         * gst/elements/gstfilesink.c: (_do_init),
2013         (gst_file_sink_base_init), (gst_file_sink_class_init),
2014         (gst_file_sink_init), (gst_file_sink_dispose),
2015         (gst_file_sink_set_location), (gst_file_sink_set_property),
2016         (gst_file_sink_get_property), (gst_file_sink_open_file),
2017         (gst_file_sink_close_file), (gst_file_sink_query),
2018         (gst_file_sink_event), (gst_file_sink_render),
2019         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
2020         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
2021         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
2022         * gst/elements/gstfilesink.h:
2023         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
2024         (gst_file_src_class_init), (gst_file_src_init),
2025         (gst_file_src_finalize), (gst_file_src_set_location),
2026         (gst_file_src_set_property), (gst_file_src_get_property),
2027         (gst_file_src_map_region), (gst_file_src_map_small_region),
2028         (gst_file_src_create_mmap), (gst_file_src_create_read),
2029         (gst_file_src_create), (gst_file_src_is_seekable),
2030         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
2031         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
2032         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
2033         (gst_file_src_uri_handler_init):
2034         * gst/elements/gstfilesrc.h:
2035           more autistic cleanliness in functions/names/defines
2036
2037 2005-07-13  Andy Wingo  <wingo@pobox.com>
2038
2039         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
2040         source couldn't negotiate.
2041
2042         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
2043         connections again.
2044
2045         * gst/gstutils.h:
2046         * gst/gstutils.c (gst_element_link_pads_filtered): New old
2047         function. I am channeling Hades. Put your boots on suckers!!!
2048
2049 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
2050
2051         * testsuite/caps/Makefile.am:
2052         * testsuite/caps/value_compare.c:
2053         * testsuite/caps/value_intersect.c:
2054         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
2055           move two testsuite apps over to the check dir
2056
2057 2005-07-12  Wim Taymans  <wim@fluendo.com>
2058
2059         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
2060         Added more debug info in the negotiate process.
2061
2062         * gst/gstmessage.h:
2063         Prepare for segment playback.
2064
2065         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
2066         Better debugging.
2067
2068         * gst/gstutils.c:
2069         Some more docs.
2070
2071         * tools/gst-launch.c: (main):
2072         NULL pipeline on errors.
2073
2074 2005-07-12  Andy Wingo  <wingo@pobox.com>
2075
2076         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
2077         not it comes from a malloc region. Make sure our copy gets freed.
2078
2079 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
2080
2081         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
2082         * check/gst/gstmessage.c: (GST_START_TEST):
2083         * check/gst/gststructure.c: (GST_START_TEST),
2084         (gst_structure_suite), (main):
2085           more testing
2086         * gst/gstelement.c: (gst_element_message_full):
2087           clean up GError and debug string now that they get copied
2088         * gst/gstmessage.c: (gst_message_new_error),
2089         (gst_message_new_warning), (gst_message_parse_error),
2090         (gst_message_parse_warning):
2091           use GST_TYPE_G_ERROR for structure_new, and take copies of
2092           arguments, so that we don't mess up refcounting
2093
2094 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
2095
2096         * check/Makefile.am:
2097           add per-test valgrind targets
2098         * check/gst-libs/gdp.c: (GST_START_TEST),
2099         (gst_data_protocol_suite), (main):
2100           clean up
2101
2102 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
2103
2104         * check/Makefile.am:
2105           instate more valgrindable tests
2106         * check/elements/gstfakesrc.c: (chain_func), (event_func),
2107         (GST_START_TEST), (fakesrc_suite):
2108         * check/gst/gstpad.c: (GST_START_TEST):
2109         * check/gst/gststructure.c: (GST_START_TEST):
2110           fix test leaks
2111         * docs/gst/tmpl/gstminiobject.sgml:
2112         * gst/gstpad.c: (gst_pad_finalize):
2113           fix the static mutex leak
2114
2115 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
2116
2117         * check/Makefile.am:
2118           add two more tests for valgrinding
2119         * check/gst/gstvalue.c: (GST_START_TEST):
2120           test refcount of deserialized buffer, found a leak
2121         * docs/gst/gstreamer-docs.sgml:
2122         * docs/gst/gstreamer-sections.txt:
2123         * docs/gst/gstreamer.types:
2124         * docs/gst/tmpl/gstminiobject.sgml:
2125           add miniobject to docs
2126         * gst/gstminiobject.c:
2127           add some docs
2128         * gst/gstvalue.c: (gst_value_deserialize_buffer),
2129         (gst_string_unwrap):
2130           fix a hard-to-find invalid write for one of the tests
2131           fix a leak for deserialized buffers
2132
2133 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2134
2135         * docs/pwg/advanced-events.xml:
2136         * docs/pwg/advanced-request.xml:
2137         * docs/pwg/advanced-scheduling.xml:
2138         * docs/pwg/appendix-porting.xml:
2139         * docs/pwg/building-boiler.xml:
2140         * docs/pwg/intro-preface.xml:
2141         * docs/pwg/other-ntoone.xml:
2142           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
2143           of example code and explanation for pad activation, loop() and
2144           getrange() functions and a bit more. Remove old comments pointing
2145           to loop-functions.
2146         * examples/pwg/Makefile.am:
2147           Add loop/getrange examples.
2148
2149 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
2150
2151         * configure.ac:
2152           check for valgrind binary + some fixes
2153         * check/gst.supp:
2154           valgrind suppressions for the tests
2155         * check/Makefile.am:
2156           add a valgrind: target that valgrinds the unit tests
2157         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
2158         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
2159         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
2160         * check/gst/gstghostpad.c:
2161           added some cleanup
2162         * check/gst/gstdata.c:
2163           removed
2164         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
2165         (thread_unref), (gst_mini_object_suite), (main):
2166           added
2167         * gst/gst.c: (gst_deinit):
2168         * gst/gst.h:
2169           add a method to clean up.
2170         * gst/gstsystemclock.c: (gst_system_clock_dispose),
2171         (gst_system_clock_obtain):
2172           allow for disposing the system clock.
2173         * tools/gst-launch.c: (main):
2174           deinit
2175
2176 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
2177
2178         * docs/gst/tmpl/gstbasesrc.sgml:
2179         * docs/gst/tmpl/gstfakesrc.sgml:
2180         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
2181         (gst_base_src_init), (gst_base_src_set_property),
2182         (gst_base_src_get_property), (gst_base_src_get_range),
2183         (gst_base_src_start):
2184         * gst/base/gstbasesrc.h:
2185           add num-buffers property
2186         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2187         (gst_fakesrc_init), (gst_fakesrc_set_property),
2188         (gst_fakesrc_get_property), (gst_fakesrc_create),
2189         (gst_fakesrc_start):
2190           remove num-buffers property
2191
2192 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
2193
2194         * docs/gst/gstreamer-sections.txt:
2195         * docs/gst/tmpl/gstbasesink.sgml:
2196         * docs/gst/tmpl/gstbasesrc.sgml:
2197         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
2198         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
2199         (gst_base_sink_finalize), (gst_base_sink_set_clock),
2200         (gst_base_sink_set_property), (gst_base_sink_get_property),
2201         (gst_base_sink_handle_object), (gst_base_sink_event),
2202         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
2203         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
2204         (gst_base_sink_loop), (gst_base_sink_deactivate),
2205         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
2206         (gst_base_sink_change_state):
2207         * gst/base/gstbasesink.h:
2208         * gst/base/gstbasesrc.h:
2209         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
2210         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
2211         (gst_filesink_init):
2212           more macro splitting
2213
2214 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
2215
2216         * gst/gstelement.c: (gst_element_get_bus):
2217           add debug
2218         * tools/gst-launch.c: (check_intr), (event_loop):
2219           fix bus leaks
2220
2221 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
2222
2223         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
2224           fix a caps leak
2225
2226 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
2227
2228         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
2229         (gst_base_src_finalize):
2230           add finalize method and clean up properly
2231         * gst/gstpipeline.c: (gst_pipeline_dispose):
2232           add debug
2233
2234 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2235
2236         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
2237         (gst_bin_suite):
2238           add more things to check
2239         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
2240         * gst/gstelement.c:
2241           more debug
2242
2243 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2244
2245         * check/elements/gstfakesrc.c: (chain_func), (event_func),
2246         (GST_START_TEST), (fakesrc_suite):
2247         * check/gst-libs/gdp.c: (GST_START_TEST):
2248         * check/gst/gst.c: (GST_START_TEST):
2249         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
2250         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
2251         * check/gst/gstbus.c: (GST_START_TEST):
2252         * check/gst/gstcaps.c: (GST_START_TEST):
2253         * check/gst/gstdata.c: (GST_START_TEST):
2254         * check/gst/gstelement.c: (GST_START_TEST):
2255         * check/gst/gstghostpad.c: (GST_START_TEST):
2256         * check/gst/gstiterator.c: (GST_START_TEST):
2257         * check/gst/gstmessage.c: (GST_START_TEST):
2258         * check/gst/gstobject.c: (GST_START_TEST):
2259         * check/gst/gstpad.c: (GST_START_TEST):
2260         * check/gst/gststructure.c: (GST_START_TEST):
2261         * check/gst/gstsystemclock.c: (GST_START_TEST),
2262         (gst_systemclock_suite):
2263         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
2264         * check/gst/gstvalue.c: (GST_START_TEST):
2265         * check/pipelines/cleanup.c: (GST_START_TEST):
2266         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
2267         * check/states/sinks.c: (GST_START_TEST):
2268         * check/gstcheck.c: (gst_check_init):
2269         * check/gstcheck.h:
2270           add debugging category
2271           use GST_START_TEST now, so we add a debug line
2272
2273 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2274
2275         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
2276           add test for state change message on a bin
2277         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
2278           add another test
2279         * gst/gstbin.c: (gst_bin_init):
2280         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
2281         * gst/gstelement.c: (gst_element_post_message),
2282         (gst_element_set_state):
2283         * gst/gstelementfactory.c: (gst_element_factory_create):
2284         * gst/gstmessage.c: (gst_message_new):
2285         * gst/gstscheduler.c:
2286           various debugging additions and cleanups
2287
2288 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2289
2290         * check/Makefile.am:
2291         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
2292         (main):
2293           adding tests for elements
2294         * gst/gstelement.c: (gst_element_dispose):
2295
2296 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2297
2298         * gst/registries/gstlibxmlregistry.c: (load_feature):
2299           plug more leaks.  A simple gst_init() now is leakfree, yay.
2300
2301 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2302
2303         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
2304         (gst_xml_registry_load):
2305           plug another memleak
2306
2307 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2308
2309         * configure.ac:
2310           use GST_SET_ERROR_CFLAGS
2311         * docs/faq/cvs.xml:
2312           change to ERROR_CFLAGS
2313
2314 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2315
2316         * configure.ac:
2317           make GST_ERROR_CFLAGS overridable and re-enable Werror
2318         * docs/faq/cvs.xml:
2319           add a note about error CFLAGS
2320         * docs/gst/tmpl/gstfakesrc.sgml:
2321         * gst/elements/gstfakesrc.c:
2322           comment out some unused code
2323         * gst/gst.c: (split_and_iterate):
2324         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
2325         (load_feature):
2326           plug some memleaks
2327
2328 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
2329
2330         * common/Makefile.am:
2331         * common/gtk-doc.mak:
2332         * docs/gst/Makefile.am:
2333           factor out gtk-doc.mak
2334
2335 2005-07-07  Wim Taymans  <wim@fluendo.com>
2336
2337         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
2338         (gst_thread_scheduler_dispose):
2339         Unlock the STREAM_LOCK completely.
2340
2341 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
2342
2343         * check/Makefile.am:
2344         * check/elements/.cvsignore:
2345         * check/elements/gstfakesrc.c: (chain_func), (event_func),
2346         (START_TEST), (fakesrc_suite), (main):
2347         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2348         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
2349         (gst_fakesrc_create), (gst_fakesrc_start):
2350         * gst/elements/gstfakesrc.h:
2351           adding a first element test
2352
2353 2005-07-07  Andy Wingo  <wingo@pobox.com>
2354
2355         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
2356         debug message.
2357
2358 2005-07-07  Wim Taymans  <wim@fluendo.com>
2359
2360         * gst/gstquery.c:
2361         * gst/gstquery.h:
2362         Remove old types
2363
2364 2005-07-07  Wim Taymans  <wim@fluendo.com>
2365
2366         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
2367         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
2368         Allow subclasses to implement their own negotiation.
2369
2370 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
2371
2372         * docs/design/part-gstbin.txt:
2373         * docs/design/part-gstpipeline.txt:
2374           Update design notes to reflect the movement of
2375           responsibility for bus handling from GstPipeline to
2376           GstBin
2377
2378 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
2379
2380         * configure.ac:
2381           Remove unnecessary queue2/3/4 examples.
2382
2383 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
2384
2385         * examples/Makefile.am:
2386         * examples/helloworld/helloworld.c: (event_loop), (main):
2387         * examples/queue/queue.c: (event_loop), (main):
2388         * examples/queue2/queue2.c: (main):
2389           Update a couple of the examples to work again.
2390
2391         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
2392         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
2393          Spelling corrections and extra debug.
2394         
2395         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
2396         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
2397         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
2398         * gst/gstbin.h:
2399         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
2400         (gst_pipeline_change_state):
2401         * gst/gstpipeline.h:
2402           Move the bus handler for children to the GstBin, and create a
2403           separate bus for receiving messages from children to the one the
2404           bus sends 'upwards' on.
2405
2406 2005-07-06  Wim Taymans  <wim@fluendo.com>
2407
2408         * gst/base/README:
2409         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
2410         (gst_base_sink_handle_object), (gst_base_sink_loop),
2411         (gst_base_sink_change_state):
2412         * gst/base/gstbasesink.h:
2413         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
2414         (gst_base_src_init), (gst_base_src_setcaps),
2415         (gst_base_src_getcaps), (gst_base_src_loop),
2416         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
2417         (gst_base_src_start), (gst_base_src_change_state):
2418         * gst/base/gstbasesrc.h:
2419         Make basesrc negotiate.
2420         Handle the case where preroll fails in basesink.
2421         Update README.
2422
2423 2005-07-06  Wim Taymans  <wim@fluendo.com>
2424
2425         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
2426         Implement the fixate function.
2427         Clean up acceptcaps.
2428
2429 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2430
2431         * docs/pwg/building-filterfactory.xml:
2432         * docs/pwg/pwg.xml:
2433           Remove never-written filter-factory chapter; I'll add the various
2434           base classes to part 4 ("other element types") later on.
2435
2436 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2437
2438         * docs/pwg/advanced-negotiation.xml:
2439         * docs/pwg/building-boiler.xml:
2440         * docs/pwg/building-pads.xml:
2441         * docs/pwg/pwg.xml:
2442         * examples/pwg/Makefile.am:
2443           Add a chapter on caps negotiation, simplify the original code
2444           samples a bit w.r.t. caps negotiation, add link to the advanced
2445           section. Add a bunch of examples showing different use cases of
2446           different types of caps negotiation. Upstream renegotiation isn't
2447           fully documented yet since nobody knows how that works.
2448
2449 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
2450
2451         * check/gst/gstpad.c:
2452         * check/gstcheck.c:
2453         * gst/gstpad.c: (gst_pad_get_internal_links_default):
2454           if pad has no parent, return NULL as list of internal links
2455
2456 2005-07-05  Andy Wingo  <wingo@pobox.com>
2457
2458         * gst/elements/gstfilesrc.c:
2459         * gst/elements/gstfakesrc.c: 
2460         * gst/base/gstpushsrc.c:
2461         * gst/base/gstbasesrc.h: 
2462         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
2463         
2464 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
2465
2466         * Makefile.am:
2467           better report generation target (lcov needs a patch)
2468
2469 2005-07-05  Andy Wingo  <wingo@pobox.com>
2470
2471         * gst/elements, testsuite: Null if we got it...
2472
2473 2005-07-05  Wim Taymans  <wim@fluendo.com>
2474
2475         * configure.ac:
2476         * libs/gst/dataprotocol/Makefile.am:
2477         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
2478         * libs/gst/dataprotocol/dataprotocol.h:
2479         * pkgconfig/Makefile.am:
2480         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
2481         * pkgconfig/gstreamer-dataprotocol.pc.in:
2482         Ported dataprotol to 0.9. 
2483         Added pkgconfig files.
2484
2485 2005-07-05  Andy Wingo  <wingo@pobox.com>
2486
2487         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
2488         Default to returning TRUE for the case when tranform_caps returns
2489         a fixed caps, like for identity or volume.
2490
2491         * check/gst/gstbus.c (pound_bus_with_messages): 
2492         * check/gst/gstmessage.c (START_TEST): 
2493         * check/pipelines/simple_launch_lines.c (got_handoff): Application
2494         message API change.
2495
2496         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
2497         logic weaks here: always run transform_caps, trying passthrough
2498         operation only if the original caps intersects with the transform.
2499
2500         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
2501         source and sink caps.
2502
2503         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
2504         Intersect the peer caps with the pad template before going into
2505         transform_caps.
2506         (gst_base_transform_transform_caps): More debugging.
2507
2508         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
2509         src argument.
2510
2511 2005-07-04  Edward Hervey  <edward@fluendo.com>
2512
2513         * gst/gstutils.c:
2514         * gst/gstutils.h:
2515         (gst_pad_add_*_probe): now returns the signal id for better wrapping
2516         in bindings.
2517
2518 2005-07-04  Andy Wingo  <wingo@pobox.com>
2519
2520         * check/gst/gstpad.c: Only set explicit caps on pads.
2521
2522 2005-07-01  Andy Wingo  <wingo@pobox.com>
2523
2524         * tests/network-clock.scm: Commentary update.
2525
2526         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
2527         Didn't really make sense, not implementable with basetransform,
2528         etc.
2529         (gst_identity_transform): Unref inbuf via make_writable. Feeble
2530         attempt at implementing the sync property, needs an unlock method.
2531
2532         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
2533         New func, by default returns the same caps (the identity
2534         transformation).
2535         (gst_base_transform_getcaps): Uses transform_caps to return
2536         something sensible.
2537         (gst_base_transform_setcaps): Complicated logic to get caps on
2538         both pads, even if they are different, and to call set_caps once
2539         for every time both pads get their caps set.
2540         (gst_base_transform_handle_buffer): Give the ref to the transform
2541         function. Allows in-place modification of the buffer.
2542
2543         * gst/base/gstbasetransform.h (transform_caps): New class method.
2544         Given caps on one side, what can I do on the other.
2545         (set_caps): Take two caps, one for each side of the element.
2546
2547         * gst/gstpad.h:
2548         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
2549         caps in place. This is safe because we can check the mutability of
2550         the caps, and a good idea because fixate functions are just called
2551         as a matter of last resort. (Not actually implemented.)
2552         (gst_pad_set_caps): If the caps we're setting is actually the same
2553         as the existing pad caps, just update the pointer without calling
2554         setcaps. Assert that caps is either NULL or fixed, as per the
2555         docs.
2556
2557         * gst/gstghostpad.c: Update for fixate changes.
2558
2559 2005-07-02  Andy Wingo  <wingo@pobox.com>
2560
2561         * gst/gstcaps.c:
2562         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
2563         two refcounts makes it immutable, which is enough. Doc more.
2564
2565 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
2566
2567         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
2568           Put the mini_object into GValue as a mini_object,
2569           not a gpointer, since that's how we declared
2570           the signal.
2571
2572 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2573
2574         * examples/pwg/Makefile.am:
2575           Fix buildbot again.
2576
2577 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2578
2579         * docs/pwg/building-testapp.xml:
2580           Add extra check.
2581         * examples/pwg/Makefile.am:
2582           Fix buildbot.
2583
2584 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2585
2586         * configure.ac:
2587         * examples/Makefile.am:
2588         * examples/pwg/Makefile.am:
2589         * examples/pwg/extract.pl:
2590           Enable building the PWG examples.
2591         * docs/pwg/advanced-interfaces.xml:
2592           Add URI interface stub.
2593         * docs/pwg/advanced-types.xml:
2594         * docs/pwg/other-autoplugger.xml:
2595         * docs/pwg/appendix-porting.xml:
2596         * docs/pwg/pwg.xml:
2597           Add porting guide (mostly stubs), remove autoplugging (see ADM).
2598         * docs/pwg/building-boiler.xml:
2599         * docs/pwg/building-chainfn.xml:
2600         * docs/pwg/building-pads.xml:
2601         * docs/pwg/building-props.xml:
2602         * docs/pwg/building-state.xml:
2603         * docs/pwg/building-testapp.xml:
2604           Update the building-*.xml parts for 0.9 changes. All examples
2605           code blocks compile in examples/pwg/*.
2606
2607 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2608
2609         * docs/manual/advanced-autoplugging.xml:
2610         * docs/manual/appendix-checklist.xml:
2611         * docs/manual/appendix-integration.xml:
2612         * docs/manual/highlevel-components.xml:
2613           Fix playbin/decodebin examples, update docs a bit, mention bus
2614           instead of signals in various places, mention kmplayer and
2615           kaffeine since they have a working GStreamer backend in the KDE
2616           section.
2617
2618 2005-06-30  Wim Taymans  <wim@fluendo.com>
2619
2620         * CHANGES-0.9:
2621         * docs/design/draft-ghostpads.txt:
2622         * docs/design/draft-push-pull.txt:
2623         * docs/design/draft-query.txt:
2624         * docs/design/part-TODO.txt:
2625         * docs/design/part-query.txt:
2626         Added CHANGES-0.9 doc, updated status of other docs.
2627         
2628         * gst/gstquery.h:
2629         Remove "hmm" macro
2630
2631 2005-06-30  Wim Taymans  <wim@fluendo.com>
2632
2633         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
2634         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
2635         (gst_base_sink_change_state):
2636         * gst/base/gstbasesink.h:
2637         Some tweaks, only EOS and a buffer complete a preroll.
2638
2639 2005-06-30  Andy Wingo  <wingo@pobox.com>
2640
2641         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
2642         activate_push down to the internal pad as well.
2643
2644 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
2645
2646         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2647
2648         * gst/gsttaginterface.c:
2649           Some documentation fixes (#307394 and #307397).
2650
2651 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
2652
2653         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2654
2655         * gst/gstvalue.c: (gst_value_intersect_list):
2656           Fix memleak (#309125).
2657
2658 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2659
2660         * docs/manual/advanced-dataaccess.xml:
2661           Fix fakesrc example to compile; doesn't work, bug somewhere...?
2662         * docs/manual/basics-pads.xml:
2663           Add reference for filtered caps to above chapter.
2664
2665 2005-06-30  Wim Taymans  <wim@fluendo.com>
2666
2667         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
2668         (gst_bin_change_state):
2669         Probes are gone.
2670         Lame attempt at making the state change function a bit
2671         more readable.
2672
2673 2005-06-30  Wim Taymans  <wim@fluendo.com>
2674
2675         * docs/design/part-clocks.txt:
2676         * docs/design/part-element-sink.txt:
2677         * docs/design/part-events.txt:
2678         * docs/design/part-preroll.txt:
2679         * docs/design/part-states.txt:
2680         Some more tweeks and additions to the docs.
2681
2682 2005-06-30  Wim Taymans  <wim@fluendo.com>
2683
2684         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
2685         (default_have_data), (gst_pad_class_init), (gst_pad_init),
2686         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
2687         (gst_pad_check_pull_range), (gst_pad_get_range),
2688         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
2689         * gst/gstpad.h:
2690         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
2691         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
2692         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
2693         (gst_pad_remove_buffer_probe):
2694         Removed atomic operations, use existing LOCK.
2695         Move exception handling out of main code path.
2696
2697 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2698
2699         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
2700         (silly_return_true_function), (gst_pad_class_init),
2701         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
2702         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
2703         (gst_pad_send_event):
2704           Fix accumulator, add default value by using _emitv() instead
2705           of _emit() for signal emission.
2706
2707 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2708
2709         * docs/manual/advanced-dataaccess.xml:
2710         * examples/manual/Makefile.am:
2711           Add probe example.
2712         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
2713           Make work (??).
2714
2715 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
2716
2717         * gst/elements/gstfilesink.c: (gst_filesink_render):
2718           Simplify code so that we don't have to handle short
2719           writes and return GST_FLOW_ERROR if an error occured.
2720
2721 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2722
2723         * docs/gst/gstreamer-docs.sgml:
2724           Remove probes more.
2725
2726 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2727
2728         * docs/gst/gstreamer-sections.txt:
2729         * docs/gst/tmpl/gstpad.sgml:
2730         * docs/gst/tmpl/gstprobe.sgml:
2731         * gst/Makefile.am:
2732         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
2733         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
2734         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
2735         (gst_pad_push_event), (gst_pad_send_event):
2736         * gst/gstpad.h:
2737         * gst/gstutils.c: (gst_pad_add_data_probe),
2738         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
2739         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
2740         (gst_pad_remove_buffer_probe):
2741         * gst/gstutils.h:
2742           Remove old probes, add new g-signal-based probes and some utility
2743           functions.
2744
2745 2005-06-29  Edward Hervey  <edward@fluendo.com>
2746
2747         * gst/gstelementfactory.c:
2748         * gst/gstutils.h:
2749         * gst/gstutils.c:
2750         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
2751         the definition to the header file.
2752
2753 2005-06-29  Andy Wingo  <wingo@pobox.com>
2754
2755         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
2756         plugins from the source directory.
2757
2758 2005-06-29  Wim Taymans  <wim@fluendo.com>
2759
2760         * docs/gst/tmpl/gstbuffer.sgml:
2761         * docs/gst/tmpl/gstclock.sgml:
2762         Some fixings for blantently wrong text.
2763
2764 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
2765
2766         * check/Makefile.am:
2767         * gst/gst.c: (add_path_func), (init_pre):
2768         * gst/gstregistry.c: (gst_registry_add_path):
2769           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
2770           only scan the GST_PLUGIN_PATH locations, and not add
2771           system locations
2772
2773 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
2774
2775         * docs/gst/gstreamer-sections.txt:
2776         * docs/gst/tmpl/gstbasesrc.sgml:
2777         * gst/gstelement.c:
2778         * gst/gstelement.h:
2779         * gst/gstevent.c:
2780         * gst/gstutils.c:
2781           doc fixes
2782
2783 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2784
2785         * docs/manual/advanced-autoplugging.xml:
2786           Fix autoplugging example.
2787
2788 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2789
2790         * docs/manual/advanced-autoplugging.xml:
2791         * docs/manual/mime-world.fig:
2792           Try to get autoplugging working, fix type detection. Fix text
2793           in hello-world image.
2794
2795 2005-06-29  Wim Taymans  <wim@fluendo.com>
2796
2797         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
2798         (gst_base_sink_change_state):
2799         Small debug line.
2800
2801         * gst/gstclock.h:
2802         map SIGNAL and BROADCAST to the right function.
2803
2804         * gst/gstobject.h:
2805         Remove redundant braces.
2806
2807         * gst/gstpad.c: (gst_pad_set_caps):
2808         Don't call setcaps function when reseting caps to NULL.
2809
2810         * gst/gstsystemclock.c: (gst_system_clock_dispose),
2811         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
2812         (gst_system_clock_id_unschedule):
2813         Use BROADCAST as this is what we do.
2814
2815 2005-06-29  Wim Taymans  <wim@fluendo.com>
2816
2817         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
2818         We are actually prerolling before commiting the state
2819         change. 
2820
2821 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2822
2823         * docs/manual/advanced-clocks.xml:
2824         * docs/manual/advanced-interfaces.xml:
2825         * docs/manual/advanced-metadata.xml:
2826         * docs/manual/advanced-position.xml:
2827         * docs/manual/advanced-schedulers.xml:
2828         * docs/manual/advanced-threads.xml:
2829         * docs/manual/appendix-porting.xml:
2830         * docs/manual/basics-bins.xml:
2831         * docs/manual/basics-bus.xml:
2832         * docs/manual/basics-elements.xml:
2833         * docs/manual/basics-helloworld.xml:
2834         * docs/manual/basics-pads.xml:
2835         * docs/manual/highlevel-components.xml:
2836         * docs/manual/manual.xml:
2837         * docs/manual/thread.fig:
2838           Update (until threads/scheduling) Application Development Manual;
2839           remove GstThread, add GstBus, add simple porting checklist, add
2840           documentation for tag writing, clocks, make all examples until this
2841           part compile and run.
2842         * examples/manual/Makefile.am:
2843           Update from changes to Application Development Manual; add bus
2844           example, remove thread example.
2845
2846 2005-06-28  Wim Taymans  <wim@fluendo.com>
2847
2848         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
2849         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
2850         (gst_bus_source_dispatch):
2851         Add debugging messages.
2852         Make internal methods static.
2853         Handle the case where the bus is flushed in the handler.
2854         
2855         * gst/gstelement.c: (gst_element_get_bus):
2856         Fix refcount in _get_bus();
2857
2858         * gst/gstpipeline.c: (gst_pipeline_change_state),
2859         (gst_pipeline_get_clock_func):
2860         Clock refcounting fixes.
2861         Handle the case where preroll timed out more gracefully.
2862         
2863         * gst/gstsystemclock.c: (gst_system_clock_dispose):
2864         Clean up the internal thread in dispose. This is needed
2865         for subclasses that actually get disposed.
2866         
2867         * gst/schedulers/threadscheduler.c:
2868         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
2869         (gst_thread_scheduler_dispose):
2870         Free thread pool in dispose.
2871
2872 2005-06-28  Andy Wingo  <wingo@pobox.com>
2873
2874         * tests/network-clock-utils.scm (debug, print-event): New utils.
2875
2876         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
2877         (*packet-loss*): Unified loss probability.
2878         (network-time): Report out-of-band events.
2879
2880         * tests/plot-data: Add support for out-of-band events. Hack it
2881         into this script instead of passing it down the pipe; should fix
2882         this later.
2883
2884 2005-06-28  Wim Taymans  <wim@fluendo.com>
2885
2886         * docs/gst/gstreamer.types:
2887         * docs/gst/tmpl/gstbasesrc.sgml:
2888         * docs/gst/tmpl/gstpad.sgml:
2889         Docs fixes.
2890
2891 2005-06-28  Wim Taymans  <wim@fluendo.com>
2892
2893         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2894         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
2895         (gst_proxy_pad_do_fixatecaps):
2896         Correctly proxy the check_pull_range function.
2897
2898 2005-06-28  Andy Wingo  <wingo@pobox.com>
2899
2900         * tests/network-clock.scm: Removed need for slib.
2901         
2902 2005-06-28  Wim Taymans  <wim@fluendo.com>
2903
2904         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
2905         (gst_basesink_preroll_queue_flush):
2906         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
2907         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
2908         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2909         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
2910         (gst_proxy_pad_set_property):
2911         * gst/gstpad.c:
2912         * gst/gstpad.h:
2913         * gst/gstqueue.c: (gst_queue_init):
2914         The deprecated pad loop function is removed now.
2915
2916 2005-06-28  Andy Wingo  <wingo@pobox.com>
2917
2918         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
2919         New parameters, simulate network packet loss.
2920
2921         * tests/network-clock-utils.scm: Initialize the RNG.
2922
2923 2005-06-28  Wim Taymans  <wim@fluendo.com>
2924
2925         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
2926         (gst_basesink_event), (gst_basesink_deactivate):
2927         Flushing the preroll queue always needs to unlock the waiters.
2928
2929 2005-06-28  Edward Hervey  <edward@fluendo.com>
2930
2931         * gst/gstpipeline.c: (gst_pipeline_send_event): 
2932         Wheen a seek was successful on a pipeline, set the stream_time to the
2933         seek offset in order to have a synchronized stream_time.
2934
2935 2005-06-28  Wim Taymans  <wim@fluendo.com>
2936
2937         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2938         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
2939         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
2940         (gst_proxy_pad_do_fixatecaps):
2941         Call wrapper function instead of just calling the function
2942         pointers. This takes care of any locking and whatmore.
2943
2944 2005-06-28  Wim Taymans  <wim@fluendo.com>
2945
2946         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
2947         (gst_pad_pull_range):
2948         * gst/gstpad.h:
2949         CONNECTED -> LINKED.
2950
2951 2005-06-28  Andy Wingo  <wingo@pobox.com>
2952
2953         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
2954         source-munging commit!!!
2955
2956         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
2957         (gst_object_sink): Take gpointer arguments, not GstObject --
2958         avoids casts. Like GLib.
2959
2960         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
2961         activate.
2962
2963 2005-06-27  Andy Wingo  <wingo@pobox.com>
2964
2965         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
2966         remaining buffer.
2967
2968         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
2969         returns a sorted copy of the trace list.
2970         (gst_alloc_trace_print_live): New API, only prints traces with
2971         live objects. Sort the list.
2972         (gst_alloc_trace_print_all): Sort the list.
2973         (gst_alloc_trace_print): Align columns.
2974
2975         * gst/elements/gstttypefindelement.c:
2976         * gst/elements/gsttee.c:
2977         * gst/base/gstbasesrc.c:
2978         * gst/base/gstbasesink.c:
2979         * gst/base/gstbasetransform.c:
2980         * gst/gstqueue.c: Adapt for pad activation changes.
2981
2982         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
2983         sched.
2984         (gst_pipeline_dispose): Drop ref on sched.
2985
2986         * gst/gstpad.c (gst_pad_init): Set the default activate func.
2987         (gst_pad_activate_default): Push mode by default.
2988         (pre_activate_switch, post_activate_switch): New stubs, things to
2989         do before and after switching activation modes on pads.
2990         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
2991         the pad's activate function to choose which mode to activate.
2992         Shortcut on deactivation and call the right function directly.
2993         (gst_pad_activate_pull): New API, (de)activates a pad in pull
2994         mode.
2995         (gst_pad_activate_push): New API, same for push mode.
2996         (gst_pad_set_activate_function) 
2997         (gst_pad_set_activatepull_function) 
2998         (gst_pad_set_activatepush_function): Setters for new API.
2999
3000         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
3001         Trace all miniobjects.
3002         (gst_mini_object_make_writable): Unref the arg if we copy, like
3003         gst_caps_make_writable.
3004
3005         * gst/gstmessage.c (_gst_message_initialize): No trace init.
3006
3007         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
3008         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
3009         Adapt for new pad API.
3010
3011         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
3012
3013         * gst/gstelement.h:
3014         * gst/gstelement.c (gst_element_iterate_src_pads) 
3015         (gst_element_iterate_sink_pads): New API functions.
3016         
3017         * gst/gstelement.c (iterator_fold_with_resync): New utility,
3018         should fold into gstiterator.c in some form.
3019         (gst_element_pads_activate): Simplified via use of fold and
3020         delegation of decisions to gstpad->activate.
3021
3022         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
3023         help in debugging.
3024
3025         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
3026         class once in init, like gstmessage. Didn't run into this issue
3027         but it seems correct. Don't initialize a trace, gstminiobject does
3028         that.
3029
3030         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
3031         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
3032         to the bus.
3033         (assert_live_count): New util function, uses alloc traces to check
3034         cleanup.
3035
3036         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
3037         To be modified when unlink drops the internal pad.
3038
3039 2005-06-27  Wim Taymans  <wim@fluendo.com>
3040
3041         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
3042         (gst_bin_change_state):
3043         Cleanup the get_state() function a little, make sure it
3044         iterates the same set of elements.
3045         Added stub iterate_state_order().
3046
3047 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
3048
3049         * docs/gst/gstreamer-docs.sgml:
3050         * docs/gst/gstreamer-sections.txt:
3051         * docs/gst/gstreamer.types:
3052         * docs/gst/tmpl/gstbasesink.sgml:
3053         * docs/gst/tmpl/gstbasesrc.sgml:
3054         * docs/gst/tmpl/gstbasetransform.sgml:
3055         * docs/gst/tmpl/gstelement.sgml:
3056         * docs/gst/tmpl/gstiterator.sgml:
3057         * gst/base/gstbasesrc.c:
3058         * gst/base/gstbasesrc.h:
3059         * gst/base/gstbasetransform.h:
3060         * gst/gstelement.c:
3061         * gst/gstiterator.h:
3062           adding basetransform and iterator docs
3063
3064 2005-06-27  Andy Wingo  <wingo@pobox.com>
3065
3066         * docs/design/part-activation.txt: Notes on how activation should
3067         work -- not quite implemented yet.
3068
3069 2005-06-25  Wim Taymans  <wim@fluendo.com>
3070
3071         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
3072         At least get the chain function correct, needs more
3073         fixing.
3074
3075 2005-06-25  Wim Taymans  <wim@fluendo.com>
3076
3077         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
3078         (gst_basesink_handle_object), (gst_basesink_event),
3079         (gst_basesink_do_sync), (gst_basesink_handle_event),
3080         (gst_basesink_change_state):
3081         * gst/gsttask.h:
3082         Right, two problems here: ghostpads don't take locks and
3083         glib _rec_mutex_lock_full() with depth==0 still locks.
3084         Catch illegal locking and g_warn them.
3085
3086 2005-06-25  Wim Taymans  <wim@fluendo.com>
3087
3088         * check/states/sinks.c: (START_TEST), (gst_object_suite):
3089         Have to check for completion now...
3090
3091 2005-06-25  Wim Taymans  <wim@fluendo.com>
3092
3093         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
3094         (gst_basesink_handle_object), (gst_basesink_event),
3095         (gst_basesink_do_sync), (gst_basesink_handle_event),
3096         (gst_basesink_change_state):
3097         * gst/gstpad.h:
3098         Unlock STREAM_LOCK whatever the recursion was.
3099
3100 2005-06-25  Wim Taymans  <wim@fluendo.com>
3101
3102         * gst/base/gstbasesink.c: (gst_basesink_set_property),
3103         (gst_basesink_preroll_queue_empty),
3104         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
3105         (gst_basesink_event), (gst_basesink_do_sync),
3106         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
3107         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
3108         (gst_basesink_change_state):
3109         Reworked the base sink, handle event and buffer serialisation
3110         correctly and removed possible deadlock.
3111         Handle EOS correctly.
3112
3113 2005-06-25  Wim Taymans  <wim@fluendo.com>
3114
3115         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
3116         (gst_pipeline_change_state):
3117         * tools/gst-launch.c: (check_intr), (event_loop), (main):
3118         Allow elements to post EOS in the state change function.
3119         Fix up -launch, make it exit the poll loop when the
3120         pipeline actually changed state.
3121         Fix up warning parsing in -launch.
3122
3123 2005-06-25  Wim Taymans  <wim@fluendo.com>
3124
3125         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
3126         (gst_tee_sink_activate):
3127         Core takes STREAM_LOCK for us now.
3128
3129 2005-06-25  Wim Taymans  <wim@fluendo.com>
3130
3131         * gst/gstelement.c: (gst_element_get_state_func),
3132         (gst_element_set_state):
3133         * gst/gstelement.h:
3134         * gst/gstmessage.c: (gst_message_parse_error),
3135         (gst_message_parse_warning):
3136         Keep track of current target state while performing a state
3137         change so that subclasses can do something interesting.
3138         Fix parsing of warning/error messages when GError is NULL.
3139
3140 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
3141
3142         * docs/gst/Makefile.am:
3143         * docs/gst/gstreamer-docs.sgml:
3144         * docs/gst/gstreamer-sections.txt:
3145         * docs/gst/gstreamer.types:
3146         * docs/gst/tmpl/gstbasesink.sgml:
3147         * docs/gst/tmpl/gstbasesrc.sgml:
3148         * docs/gst/tmpl/gstbin.sgml:
3149         * docs/gst/tmpl/gstcompat.sgml:
3150         * docs/gst/tmpl/gstfakesink.sgml:
3151         * docs/gst/tmpl/gstfakesrc.sgml:
3152         * docs/gst/tmpl/gstfilesink.sgml:
3153         * docs/gst/tmpl/gstfilesrc.sgml:
3154         * docs/gst/tmpl/gstindex.sgml:
3155         * docs/manual/appendix-quotes.xml:
3156         * gst/base/gstbasesrc.h:
3157         * gst/elements/gstfakesrc.h:
3158         * gst/gstmessage.h:
3159           start pulling in base classes and elements in our docs
3160
3161 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
3162
3163         * docs/gst/Makefile.am:
3164         * docs/libs/Makefile.am:
3165           fixed make distcheck with gtk-doc 1.3
3166
3167 2005-06-23  Wim Taymans  <wim@fluendo.com>
3168
3169         * gst/gstelement.c: (gst_element_get_state_func),
3170         (gst_element_set_state), (gst_element_change_state):
3171         When the state did not change, also report NO_PREROLL
3172         when it matters.
3173
3174 2005-06-23  Wim Taymans  <wim@fluendo.com>
3175
3176         * gst/gstpad.c: (gst_pad_event_default):
3177         * gst/gstqueue.c: (gst_queue_loop):
3178         No unsafe task pausing please.
3179
3180 2005-06-23  Wim Taymans  <wim@fluendo.com>
3181
3182         * gst/schedulers/threadscheduler.c:
3183         (gst_thread_scheduler_task_start),
3184         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
3185         Ref the task before pushing it on the threadpool. This
3186         makes sure that we have a ref when the threadfunction is
3187         actually called.
3188
3189 2005-06-23  Andy Wingo  <wingo@pobox.com>
3190
3191         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
3192         offset is greater than the file's size.
3193
3194         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
3195         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
3196         * gst/gstobject.c (gst_object_class_init): Make the class lock
3197         recursive. Wim won't let me drop deep_notify. Decodebin works
3198         again, whoopdy doo.
3199
3200         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
3201         internal pad, and hacks accordingly. Doesn't do it on the target
3202         pad because we change its caps. Probably catches all cases of
3203         interest tho.
3204         (gst_ghost_pad_set_property): Connect to notify::caps as
3205         appropritate.
3206
3207         * tests/network-clock.scm (plot-simulation): Pipe data to the
3208         elite python skript.
3209
3210         * tests/network-clock-utils.scm (define-parameter): New macro,
3211         defines a parameter that can be set via the command line.
3212         (set-parameter!, parse-parameter-arguments): Command line args
3213         parser.
3214
3215         * tests/plot-data: Simple matplotlib-based plotter, takes input on
3216         stdin.
3217
3218 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
3219
3220         * gst/elements/gsttypefindelement.c:
3221         (gst_type_find_element_handle_event):
3222           Don't restart typefinding on a discont.
3223         * gst/gstelement.c: (gst_element_set_state):
3224           Debug spelling fix.
3225         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
3226           Allow changing mode of an active pad.
3227           Debug output fixes.
3228         * gst/registries/gstlibxmlregistry.c: (load_feature):
3229           Don't cast a static pad template to a normal pad template.
3230
3231 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3232
3233         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
3234         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
3235           remove gst_strtoll completely, since it didn't actually do
3236           anything more than what g_ascii_strtoull already does.
3237           check for range errors when deserializing
3238           do a cast for the unsigned cases; but further fixing needs
3239           a decision on what the interpretation of "(int)" and
3240           deserialization should be for values that fall outside the
3241           type's boundaries (ie, refuse, or interpret as casting)
3242
3243 2005-06-23  Wim Taymans  <wim@fluendo.com>
3244
3245         * check/Makefile.am:
3246         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
3247         * docs/design/part-live-source.txt:
3248         * docs/design/part-states.txt:
3249         * gst/base/gstbasesrc.c: (gst_basesrc_init),
3250         (gst_basesrc_set_live), (gst_basesrc_is_live),
3251         (gst_basesrc_get_range), (gst_basesrc_activate),
3252         (gst_basesrc_change_state):
3253         * gst/base/gstbasesrc.h:
3254         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3255         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
3256         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
3257         * gst/gstelement.c: (gst_element_get_state_func),
3258         (gst_element_set_state):
3259         * gst/gstelement.h:
3260         * gst/gsttypes.h:
3261         * tools/gst-launch.c: (event_loop), (main):
3262         Added support for live sources and other elements that
3263         cannot do preroll.
3264         Updated design docs, added live-source design doc.
3265         Implemented live source functionality in basesrc
3266         Fix error condition in _bin_get_state()
3267         Implement live source handling in -launch.
3268         Added check for live sources.
3269         Fixed case in GstBin where elements were changed state
3270         multiple times.
3271
3272
3273 2005-06-23  Andy Wingo  <wingo@pobox.com>
3274
3275         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
3276         borken refcounting.
3277
3278         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
3279         gst_caps_replace takes care of this for us.
3280
3281         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
3282         gst_pad_set_caps on the target, not just its setcaps() function.
3283
3284         * tests/network-clock.scm: 
3285         * tests/network-clock-utils.scm: A network clock simulator.
3286         Something of an algorithmic testbed before doing something in C.
3287
3288 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
3289
3290         * check/Makefile.am:
3291         * check/gst/capslist.h:
3292           copy over from 0.8, and add two with bitmasks specified with
3293           (int) 0xFF...
3294         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
3295           add test to parse everything from capslist.h
3296         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
3297         (main):
3298           add test for structure deserialization
3299         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
3300           add tests for deserialization of strings to int types
3301         * gst/gststructure.c: (gst_structure_nth_field_name):
3302         * gst/gststructure.h:
3303           add a way to get the name of a field referenced by index
3304         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
3305           instead of checking if the resulting long long lies between
3306           min and max, we check if the long long would fit into
3307           a number of bytes for the final type.
3308           This fixes cases where a string represents 2^32 - 1, which
3309           when cast to int would be the (valid) -1, but is bigger than
3310           G_MAXINT
3311
3312 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
3313
3314         * gst/parse/grammar.y:
3315           add a log line for type deserialization
3316
3317 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
3318
3319         * check/gst/gstvalue.c: (START_TEST):
3320         * gst/gstvalue.c: (gst_value_deserialize):
3321           return long long, not int, so gint64 deserialization actually
3322           works.  Is there any flag that makes the compiler check this ?
3323           Fixes #308559
3324
3325 2005-06-22  Wim Taymans  <wim@fluendo.com>
3326
3327         * gst/gstbuffer.h:
3328         Added convenience macros for setting buffers in GValue.
3329
3330 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3331
3332         * check/gst/.cvsignore:
3333         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
3334           add a test deserializing int64, and comment part out because
3335           it fails, yay !
3336
3337 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3338
3339         * check/Makefile.am:
3340         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
3341         * testsuite/Makefile.am:
3342         * testsuite/caps/Makefile.am:
3343         * testsuite/caps/value_serialize.c:
3344         * testsuite/test_gst_init.c:
3345           move a value_serialize test over
3346
3347 2005-06-20  Wim Taymans  <wim@fluendo.com>
3348
3349         * gst/gstpad.c:
3350         Small doc updates.
3351         
3352         * gst/gstvalue.c: (gst_value_compare_buffer),
3353         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
3354         (gst_value_compare_flags), (gst_value_serialize_flags),
3355         (gst_value_deserialize_flags), (_gst_value_initialize):
3356         Fix serialisation of buffers, they are not boxed types anymore
3357
3358 2005-06-20  Wim Taymans  <wim@fluendo.com>
3359
3360         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
3361         Testcase to show error in buffer-on-caps serialisation.
3362
3363 2005-06-20  Andy Wingo  <wingo@pobox.com>
3364
3365         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
3366         will be adding to later.
3367
3368         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
3369         if its socks fill with rocks.
3370         (gst_system_clock_obtain): Set the name on object construction.
3371         Avoid double-checked locking.
3372
3373 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
3374
3375         * gst/gsturi.c: (gst_element_make_from_uri):
3376           Fix potential endless loop.
3377
3378 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
3379
3380         * check/Makefile.am:
3381           add gsttag
3382         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
3383         (main):
3384           move over from testsuite dir and clean up
3385         * configure.ac:
3386         * gst/gsttag.c:
3387         * testsuite/Makefile.am:
3388         * testsuite/tags/.cvsignore:
3389         * testsuite/tags/Makefile.am:
3390         * testsuite/tags/merge.c:
3391           remove testsuite/tags
3392
3393 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
3394
3395         * docs/gst/gstreamer-sections.txt:
3396         * docs/gst/tmpl/gstenumtypes.sgml:
3397         * win32/gstenumtypes.c:
3398           clean up documentation build a little
3399
3400 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
3401
3402         * check/gstcheck.h:
3403           add macros for checking refcounts on objects and caps
3404         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
3405           add some more unit tests
3406         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
3407         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
3408           fix leaked refcounts (I hope :)) so unittest works
3409         * gst/gstpad.h:
3410           whitespace removal
3411
3412 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
3413
3414         * configure.ac: back to HEAD
3415
3416 === release 0.9.1 ===
3417
3418 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
3419
3420         * NEWS:
3421         * RELEASE:
3422           updated
3423
3424 2005-06-17  Andy Wingo  <wingo@pobox.com>
3425
3426         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
3427         assert; it's always possible that the pad gets deactivated in
3428         between the checks in gstpad.c and the implementation. Rely on
3429         finish_preroll() to return a FLUSHING or similar instead of on the
3430         assert.
3431         
3432         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
3433         clock and post an EOS message if we come out of finish_preroll in
3434         the playing state.
3435
3436 2005-06-16  David Schleef  <ds@schleef.org>
3437
3438         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
3439         (gst_capsfilter_set_property): Allow NULL as possible value
3440         for filter_caps property, indicating GST_CAPS_ANY.
3441
3442 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
3443
3444         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
3445           fix debug output
3446         * gst/schedulers/Makefile.am:
3447           use libgst prefix
3448         * gstreamer.spec.in:
3449           fix spec for it
3450
3451 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
3452
3453         * gstreamer.spec.in:
3454           clean up
3455
3456 2005-06-08  Andy Wingo  <wingo@pobox.com>
3457
3458         * gst/gstutils.c: RPAD fixes all around.
3459         (gst_element_link_pads): Refcounting fixes.
3460
3461         * tools/gst-inspect.c:
3462         * tools/gst-xmlinspect.c:
3463         * parse/grammar.y:
3464         * gst/base/gsttypefindhelper.c:
3465         * gst/base/gstbasesink.c:
3466         * gst/gstqueue.c: RPAD fixes.
3467
3468         * gst/gstghostpad.h:
3469         * gst/gstghostpad.c: New ghost pad implementation as full proxy
3470         pads. The tricky thing is they provide both source and sink
3471         interfaces, since they proxy the internal pad for the external
3472         pad, and vice versa. Implement with lower-level ProxyPad objects,
3473         with the interior proxy pad as a child of the exterior ghost pad.
3474         Should write a doc on this.
3475         
3476         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
3477         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
3478         gst_object API.
3479         
3480         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
3481         pads are real pads. No ghost pads in this file. Not documenting
3482         the myriad s/RPAD/PAD/ and REALIZE fixes.
3483         (gst_pad_class_init): Add properties for "direction" and
3484         "template". Both are construct-only, so they can't change during
3485         the life of the pad. Fixes properly deriving from GstPad.
3486         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
3487         derived objects, just set properties when creating the objects via
3488         g_object_new.
3489         (gst_pad_get_parent): Implement as a function, return NULL if the
3490         parent is not an element.
3491         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
3492         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
3493         
3494         * gst/gstobject.c (gst_object_class_init): Make name a construct
3495         property. Don't set it in the object init.
3496
3497         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
3498         with UNKNOWN direction.
3499         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
3500         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
3501         (gst_element_remove_pad): Remove ghost-pad special cases.
3502         (gst_element_pads_activate): Remove rpad cruft.
3503
3504         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
3505         catch the pad's-parent-not-an-element case.
3506
3507         * gst/gst.h: Include gstghostpad.h.
3508
3509         * gst/gst.c (init_post): No more real, ghost pads.
3510
3511         * gst/Makefile.am: Add gstghostpad.[ch].
3512
3513         * check/Makefile.am:
3514         * check/gst/gstbin.c:
3515         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
3516         into a bin creates ghost pads, and that the refcounts are right.
3517         Partly moved from gstbin.c.
3518
3519 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3520
3521         * check/gst-libs/.cvsignore:
3522         * check/gst/.cvsignore:
3523         * check/pipelines/.cvsignore:
3524           ignore more
3525         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
3526         (START_TEST), (cleanup_suite), (main):
3527           add some tests related to cleanup after running pipelines
3528
3529 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3530
3531         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
3532           add a testsuite for GstBuffer
3533
3534 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3535
3536         * gst/gstminiobject.h:
3537           add defines for accessing the refcount
3538
3539 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
3540
3541         * Makefile.am: added support for html unit test coverage reports
3542
3543 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
3544
3545         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
3546           Free existing caps if the capsfilter changes. Add a FIXME about
3547           setting those caps on the pads.
3548
3549         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
3550           Before adding a ghost pad to a parent bin, check that there isn't
3551           already one for the element on the bin. Prevents infinite recursion
3552           when using decodebin in parse pipelines. Andy says he'll rewrite the
3553           way this works anyway, so ignore the hack.
3554
3555 2005-06-02  Andy Wingo  <wingo@pobox.com>
3556
3557         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
3558         file size, pass it on to the type find helper.
3559
3560         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
3561         segment_start and segment_end properly according to the seek
3562         method. Segment_end is still a bit flaky because offset can be
3563         negative for CUR and END cases, but it takes -1 as an "unset"
3564         value.
3565
3566 2005-06-02  Wim Taymans  <wim@fluendo.com>
3567
3568         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
3569         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
3570         (gst_basesink_activate):
3571         * gst/base/gstbasesink.h:
3572         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3573         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
3574         (gst_pad_query), (gst_pad_start_task):
3575         * gst/gstpad.h:
3576         * gst/gstqueue.c: (gst_queue_bufferalloc),
3577         (gst_queue_handle_sink_event), (gst_queue_chain):
3578         Bufferalloc: return GstFlowReturn to more accuratly report
3579         why allocation failed.
3580
3581 2005-06-02  Wim Taymans  <wim@fluendo.com>
3582
3583         * gst/gstpipeline.c: (gst_pipeline_send_event):
3584         Take snapshot of state without blocking.
3585
3586 2005-06-02  Wim Taymans  <wim@fluendo.com>
3587
3588         * docs/design/part-TODO.txt:
3589         * docs/design/part-caps.txt:
3590         * docs/design/part-clocks.txt:
3591         * docs/design/part-negotiation.txt:
3592         * docs/design/part-preroll.txt:
3593         Small doc updates 
3594
3595 2005-05-30  Wim Taymans  <wim@fluendo.com>
3596
3597         * gst/elements/gstidentity.c: (gst_identity_event),
3598         (gst_identity_transform), (gst_identity_get_property):
3599         Protect last_message property as it is accessed from
3600         multiple threads.
3601
3602 2005-05-30  Wim Taymans  <wim@fluendo.com>
3603
3604         * gst/gstelement.c: (gst_element_init),
3605         (gst_element_pads_activate), (gst_element_change_state):
3606         Slicker pad activation code.
3607
3608 2005-05-30  Wim Taymans  <wim@fluendo.com>
3609
3610         * gst/Makefile.am:
3611         * gst/gstelement.h:
3612         * gst/gstelementfactory.h:
3613         * gst/gsttypes.h:
3614         Move elementfactory methods to separate .h file.
3615
3616 2005-05-30  Wim Taymans  <wim@fluendo.com>
3617
3618         * docs/design/part-overview.txt:
3619         * gst/gstsystemclock.h:
3620         Small typo fixes, doc updates.
3621
3622 2005-05-30  Wim Taymans  <wim@fluendo.com>
3623
3624         * gst/gst.c: (gst_init_get_popt_table), (init_post),
3625         (init_popt_callback):
3626         Remove cpu-opt flag.
3627
3628 2005-05-30  Wim Taymans  <wim@fluendo.com>
3629
3630         * gst/gstbuffer.c: (gst_subbuffer_finalize),
3631         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
3632         * gst/gstbuffer.h:
3633         Avoid typechecking in places where not needed.
3634         Added accessor for malloc_data.
3635
3636 2005-05-30  Wim Taymans  <wim@fluendo.com>
3637
3638         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
3639         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
3640         (gst_pad_configure_sink), (gst_pad_configure_src),
3641         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
3642         (gst_pad_start_task):
3643         Propagate errors from _set_caps() in configure_src/sink
3644         functions instead of returning TRUE.
3645         FLUSH events can travel up and downstream
3646
3647
3648 2005-05-30  Wim Taymans  <wim@fluendo.com>
3649
3650         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
3651         (gst_basesink_activate):
3652         Handle EOS in preroll.
3653
3654 2005-05-30  Wim Taymans  <wim@fluendo.com>
3655
3656         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
3657         (gst_queue_loop), (gst_queue_handle_src_event):
3658         Remove old pieces of code
3659         Flushing the queue in an upstream event is a very bad idea.
3660
3661 2005-05-26  Andy Wingo  <wingo@pobox.com>
3662
3663         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
3664         gst_value_set_mini_object so as to add a ref on the object (which
3665         will be removed when the value is unset).
3666
3667         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
3668         arg type in ::handoff.
3669
3670         * gst/gstelement.c (gst_element_change_state): Also deactivate
3671         pads in READY->NULL, just in case the element didn't make it to
3672         PAUSED. Wingo tested, Wim approved.
3673
3674 2005-05-26  Wim Taymans  <wim@fluendo.com>
3675
3676         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3677         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
3678         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
3679         A flushing pad cannot be used to alloc_buffer from.
3680
3681 2005-05-26  Wim Taymans  <wim@fluendo.com>
3682
3683         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
3684         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
3685         (gst_bus_source_dispatch), (gst_bus_source_finalize),
3686         (gst_bus_create_watch), (gst_bus_add_watch_full):
3687         * gst/gstbus.h:
3688         Implement a real GSource and use g_main_context_wakeup() to
3689         signal new messages instead of the socketpair.
3690
3691 2005-05-25  Wim Taymans  <wim@fluendo.com>
3692
3693         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
3694         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
3695         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3696         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
3697         (gst_pad_send_event), (gst_pad_start_task):
3698         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
3699         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
3700         (gst_queue_sink_activate), (gst_queue_src_activate),
3701         (gst_queue_change_state):
3702         * gst/gstqueue.h:
3703         Fix state changes for non sinks. We now change sinks, then elements
3704         with unconnected srcpads, then the rest.
3705         More efficient queue unlocking in flush and state changes.
3706         Set the pad activate mode even if it does not have an activate
3707         function.
3708
3709 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3710
3711         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
3712           Don't go in pull mode for non-seekable sources.
3713         * gst/elements/gsttypefindelement.h:
3714         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3715         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
3716         (free_entry), (stop_typefinding),
3717         (gst_type_find_element_handle_event), (find_peek),
3718         (gst_type_find_element_chain), (do_pull_typefind),
3719         (gst_type_find_element_change_state):
3720           Allow typefinding (w/o seeking) in push-mode, simplified version
3721           of what was in 0.8.
3722         * gst/gstutils.c: (gst_buffer_join):
3723         * gst/gstutils.h:
3724           gst_buffer_join() from 0.8.
3725
3726 2005-05-25  Wim Taymans  <wim@fluendo.com>
3727
3728         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3729         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
3730         (gst_pad_send_event), (gst_pad_start_task):
3731         Disable attempt at mode switching until it is figured out.
3732
3733 2005-05-25  Wim Taymans  <wim@fluendo.com>
3734
3735         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
3736         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
3737         (gst_basesink_finish_preroll), (gst_basesink_chain),
3738         (gst_basesink_loop), (gst_basesink_activate),
3739         (gst_basesink_change_state):
3740         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
3741         (gst_basesrc_get_range), (gst_basesrc_loop),
3742         (gst_basesrc_activate):
3743         * gst/elements/gsttee.c: (gst_tee_sink_activate):
3744         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
3745         (gst_real_pad_init), (gst_real_pad_set_property),
3746         (gst_real_pad_get_property), (gst_pad_set_active),
3747         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
3748         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
3749         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
3750         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
3751         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3752         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
3753         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
3754         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
3755         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
3756         (gst_pad_stop_task):
3757         * gst/gstpad.h:
3758         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
3759         (gst_queue_loop), (gst_queue_src_activate):
3760         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
3761         (gst_task_get_state):
3762         * gst/gsttask.h:
3763         * gst/schedulers/threadscheduler.c:
3764         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
3765         Implement gst_pad_pause/start/stop_task(), take STREAM lock
3766         in task function.
3767         Remove ACTIVE pad flag, use FLUSHING everywhere
3768         Added _pad_chain(), _pad_get_range() to call chain/getrange 
3769         functions.
3770         Add locks around IS_FLUSHING when reading.
3771         Take STREAM lock in chain(), get_range() functions so plugins
3772         don't need to take it anymore.
3773         
3774
3775
3776 2005-05-25  Wim Taymans  <wim@fluendo.com>
3777
3778         * tools/gst-launch.c: (event_loop):
3779         Unref message after using its contents instead of
3780         before.
3781
3782 2005-05-24  Wim Taymans  <wim@fluendo.com>
3783
3784         * docs/design/draft-ghostpads.txt:
3785         * docs/design/draft-push-pull.txt:
3786         * docs/design/draft-query.txt:
3787         * docs/design/part-overview.txt:
3788         Docs updates, added general overview doc.
3789
3790 2005-05-21  David Schleef  <ds@schleef.org>
3791
3792         * docs/gst/tmpl/old/GstBin.sgml:
3793         * docs/gst/tmpl/old/GstBuffer.sgml:
3794         * docs/gst/tmpl/old/GstCaps.sgml:
3795         * docs/gst/tmpl/old/GstClock.sgml:
3796         * docs/gst/tmpl/old/GstCompat.sgml:
3797         * docs/gst/tmpl/old/GstData.sgml:
3798         * docs/gst/tmpl/old/GstElement.sgml:
3799         * docs/gst/tmpl/old/GstEvent.sgml:
3800         * docs/gst/tmpl/old/GstIndex.sgml:
3801         * docs/gst/tmpl/old/GstStructure.sgml:
3802         * docs/gst/tmpl/old/GstTag.sgml:
3803         * docs/gst/tmpl/old/cothreads.sgml:
3804         * docs/gst/tmpl/old/cothreads_compat.sgml:
3805         * docs/gst/tmpl/old/gettext.sgml:
3806         * docs/gst/tmpl/old/gobject2gtk.sgml:
3807         * docs/gst/tmpl/old/grammar.tab.sgml:
3808         * docs/gst/tmpl/old/gst-i18n-app.sgml:
3809         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
3810         * docs/gst/tmpl/old/gst_private.sgml:
3811         * docs/gst/tmpl/old/gstaggregator.sgml:
3812         * docs/gst/tmpl/old/gstarch.sgml:
3813         * docs/gst/tmpl/old/gstatomic_impl.sgml:
3814         * docs/gst/tmpl/old/gstbufferstore.sgml:
3815         * docs/gst/tmpl/old/gstdata_private.sgml:
3816         * docs/gst/tmpl/old/gstdisksink.sgml:
3817         * docs/gst/tmpl/old/gstdisksrc.sgml:
3818         * docs/gst/tmpl/old/gstelementfactory.sgml:
3819         * docs/gst/tmpl/old/gstextratypes.sgml:
3820         * docs/gst/tmpl/old/gstfakesink.sgml:
3821         * docs/gst/tmpl/old/gstfakesrc.sgml:
3822         * docs/gst/tmpl/old/gstfdsink.sgml:
3823         * docs/gst/tmpl/old/gstfdsrc.sgml:
3824         * docs/gst/tmpl/old/gstfilesink.sgml:
3825         * docs/gst/tmpl/old/gstfilesrc.sgml:
3826         * docs/gst/tmpl/old/gsthttpsrc.sgml:
3827         * docs/gst/tmpl/old/gstidentity.sgml:
3828         * docs/gst/tmpl/old/gstindexfactory.sgml:
3829         * docs/gst/tmpl/old/gstmarshal.sgml:
3830         * docs/gst/tmpl/old/gstmd5sink.sgml:
3831         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
3832         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
3833         * docs/gst/tmpl/old/gstpadtemplate.sgml:
3834         * docs/gst/tmpl/old/gstpipefilter.sgml:
3835         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
3836         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
3837         * docs/gst/tmpl/old/gstshaper.sgml:
3838         * docs/gst/tmpl/old/gstspider.sgml:
3839         * docs/gst/tmpl/old/gstspideridentity.sgml:
3840         * docs/gst/tmpl/old/gststatistics.sgml:
3841         * docs/gst/tmpl/old/gsttee.sgml:
3842         * docs/gst/tmpl/old/gsttimecache.sgml:
3843         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
3844         * docs/gst/tmpl/old/gstxmlregistry.sgml:
3845         * docs/gst/tmpl/old/gthread-cothreads.sgml:
3846         * docs/gst/tmpl/old/types.sgml:
3847           I didn't intend to add these or check them in.
3848
3849 2005-05-19  David Schleef  <ds@schleef.org>
3850
3851         * configure.ac: Use -no-common everywhere.  In a sane world, it
3852           would be the default in libtool, because without it, you can't
3853           build DLLs on Windows.
3854         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
3855         * docs/gst/gstreamer-sections.txt:
3856         * docs/gst/tmpl/gstcpu.sgml:
3857         * docs/gst/tmpl/gstdata.sgml:
3858         * docs/gst/tmpl/gstthread.sgml:
3859
3860 2005-05-19  David Schleef  <ds@schleef.org>
3861
3862         * gst/gstminiobject.c: (gst_value_set_mini_object),
3863         (gst_value_take_mini_object), (gst_value_get_mini_object):
3864         * gst/gstminiobject.h: Add GValue set/get functions.
3865
3866 2005-05-19  Wim Taymans  <wim@fluendo.com>
3867
3868         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
3869         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
3870         (gst_subbuffer_init), (gst_buffer_is_span_fast):
3871         * gst/gstbuffer.h:
3872         * gst/gstbus.c: (gst_bus_post):
3873         * gst/gstelement.c: (gst_element_get_random_pad):
3874         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
3875         Make subbufer unref the parent in finalize.
3876         some more debugging info.
3877
3878
3879 2005-05-19  Wim Taymans  <wim@fluendo.com>
3880
3881         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3882         (gst_basesink_init), (gst_basesink_finalize),
3883         (gst_basesink_activate), (gst_basesink_change_state):
3884         Don't free preroll queue too early.
3885
3886 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3887
3888         * gst/Makefile.am:
3889         * gst/ROADMAP:
3890           Hi, I'm outdated. Please shoot me.
3891
3892 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3893
3894         * gst/gstpipeline.c: (gst_pipeline_send_event):
3895           Do not access variables after they have been deleted.
3896
3897 2005-05-19  Wim Taymans  <wim@fluendo.com>
3898
3899         * tools/gst-inspect.c: (print_plugin_features):
3900         A plugin feature does unfortunatly not use the
3901         object name yet...
3902
3903 2005-05-18  Wim Taymans  <wim@fluendo.com>
3904
3905         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
3906         Port _span() functions to new subbuffers.
3907
3908 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3909
3910         * gst/gstbin.c: (gst_bin_add_func):
3911           Fix clock settery in bins when adding kids after the clock has
3912           been selected.
3913
3914 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3915
3916         * gst/elements/gstidentity.c: (gst_identity_class_init):
3917           Workaround until signals support GstMiniObject.
3918
3919 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
3920
3921         * gst/gstbuffer.c:
3922         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
3923
3924 2005-05-18  Wim Taymans  <wim@fluendo.com>
3925
3926         * gst/base/Makefile.am:
3927         * gst/base/gstadapter.c: (gst_adapter_base_init),
3928         (gst_adapter_class_init), (gst_adapter_init),
3929         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
3930         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
3931         (gst_adapter_flush), (gst_adapter_available),
3932         (gst_adapter_available_fast):
3933         * gst/base/gstadapter.h:
3934         Ported and added adapter to the base classes.
3935
3936 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3937
3938         * gst/gst.c:
3939         * gst/gstmessage.c:
3940           Make sure the class is reffed/unreffed once before threads can be
3941           used.  Fixes #304551.
3942
3943 2005-05-17  Wim Taymans  <wim@fluendo.com>
3944
3945         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
3946         (gst_basesink_chain_unlocked), (gst_basesink_activate):
3947         * gst/gstminiobject.c: (gst_mini_object_get_type),
3948         (gst_mini_object_free):
3949         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
3950         (gst_pad_push), (gst_pad_push_event):
3951         * gst/gstqueue.c: (gst_queue_change_state):
3952         Don't queue buffers in basesink when we are flushing.
3953         Unref buffer when flushing in basesink.
3954         Flush queue when going to READY
3955         Unref buffer when _push() returns an error.
3956         Don't free MiniObject instance when refcount is incremented
3957         in _finalize() so that we can recover objects.
3958
3959 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
3960
3961         * docs/manual/advanced-schedulers.xml:
3962         * docs/manual/appendix-checklist.xml:
3963         * docs/pwg/advanced-clock.xml:
3964         * docs/pwg/advanced-interfaces.xml:
3965         * docs/pwg/advanced-request.xml:
3966         * docs/pwg/advanced-types.xml:
3967         * docs/pwg/intro-preface.xml:
3968         * examples/plugins/example.c: (gst_example_get_type),
3969         (gst_example_class_init), (gst_example_chain),
3970         (gst_example_set_property), (gst_example_get_property),
3971         (gst_example_change_state), (plugin_init):
3972         * examples/plugins/example.h:
3973           small doc fixes
3974
3975 2005-05-17  Wim Taymans  <wim@fluendo.com>
3976
3977         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
3978         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
3979         * gst/gstqueue.c: (gst_queue_change_state):
3980         Clear queue when going to READY.
3981         Remove IN_SETCAPS flag too.
3982
3983 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
3984
3985         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
3986           Remove implicit cast from gboolean to GstElementStateReturn;
3987           make sure we still return failure in paused => ready case if
3988           the parent class fails to change state and our own stop 
3989           vfunc succeeds.
3990
3991 2005-05-17  Wim Taymans  <wim@fluendo.com>
3992
3993         * tools/gst-launch.c: (event_loop):
3994         Message was unreffed too soon.
3995
3996 2005-05-16  Andy Wingo  <wingo@pobox.com>
3997
3998         * gst/gstbin.c (sink_iterator_filter): Err... um...
3999
4000         * check/gst/gstbin.c (test_ghost_pads): New test for the
4001         ghosting-if-elements-not-in-same-bin behavior.
4002
4003 2005-05-16  David Schleef  <ds@schleef.org>
4004
4005         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
4006         accessing refcount directly.
4007
4008 2005-05-15  David Schleef  <ds@schleef.org>
4009
4010         * check/Makefile.am: remove GstData checks
4011         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
4012         * gst/Makefile.am: add miniobject, remove data
4013         * gst/gst.h: add miniobject, remove data
4014         * gst/gstdata.c: remove
4015         * gst/gstdata.h: remove
4016         * gst/gstdata_private.h: remove
4017         * gst/gsttypes.h: remove GstEvent and GstMessage
4018         * gst/gstelement.c: (gst_element_post_message): fix for API changes
4019         * gst/gstmarshal.list: change BOXED -> OBJECT
4020
4021         Implement GstMiniObject.
4022         * gst/gstminiobject.c:
4023         * gst/gstminiobject.h:
4024
4025         Modify to be subclasses of GstMiniObject.
4026         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
4027         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
4028         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
4029         (gst_subbuffer_get_type), (gst_subbuffer_init),
4030         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
4031         (gst_buffer_span):
4032         * gst/gstbuffer.h:
4033         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
4034         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
4035         (_gst_event_copy), (gst_event_new):
4036         * gst/gstevent.h:
4037         * gst/gstmessage.c: (_gst_message_initialize),
4038         (gst_message_get_type), (gst_message_class_init),
4039         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
4040         (gst_message_new), (gst_message_new_error),
4041         (gst_message_new_warning), (gst_message_new_tag),
4042         (gst_message_new_state_changed), (gst_message_new_application):
4043         * gst/gstmessage.h:
4044         * gst/gstprobe.c: (gst_probe_perform),
4045         (gst_probe_dispatcher_dispatch):
4046         * gst/gstprobe.h:
4047         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
4048         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
4049         (_gst_query_copy), (gst_query_new):
4050
4051         Update elements for GstData -> GstMiniObject changes
4052         * gst/gstquery.h:
4053         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
4054         (gst_queue_chain), (gst_queue_loop):
4055         * gst/elements/gstbufferstore.c:
4056         (gst_buffer_store_add_buffer_func),
4057         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
4058         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
4059         (gst_fakesink_render):
4060         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
4061         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
4062         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
4063         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
4064         (gst_filesrc_create_read):
4065         * gst/elements/gstidentity.c: (gst_identity_class_init):
4066         * gst/elements/gsttypefindelement.c:
4067         (gst_type_find_element_src_event), (free_entry_buffers),
4068         (gst_type_find_element_handle_event):
4069         * libs/gst/dataprotocol/dataprotocol.c:
4070         (gst_dp_header_from_buffer):
4071         * libs/gst/dataprotocol/dataprotocol.h:
4072         * libs/gst/dataprotocol/dp-private.h:
4073
4074 2005-05-15  David Schleef  <ds@schleef.org>
4075
4076         * gst/elements/gstelements.c: Don't include headers that were
4077         just removed.
4078
4079 2005-05-15  David Schleef  <ds@schleef.org>
4080
4081         * gst/elements/Makefile.am: Remove some elements that don't
4082         need to be in the core (or even exist at all).
4083         * gst/elements/gstaggregator.c:
4084         * gst/elements/gstaggregator.h:
4085         * gst/elements/gstmd5sink.c:
4086         * gst/elements/gstmd5sink.h:
4087         * gst/elements/gstmultifilesrc.c:
4088         * gst/elements/gstmultifilesrc.h:
4089         * gst/elements/gstpipefilter.c:
4090         * gst/elements/gstpipefilter.h:
4091         * gst/elements/gstshaper.c:
4092         * gst/elements/gstshaper.h:
4093         * gst/elements/gststatistics.c:
4094         * gst/elements/gststatistics.h:
4095         * po/POTFILES.in: Remove above files.
4096
4097 2005-05-14  Andy Wingo  <wingo@pobox.com>
4098
4099         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
4100         so as to get the refs right.
4101         (sink_iterator_filter): New function, wraps bin_element_is_sink,
4102         unreffing objects that don't pass the filter.
4103
4104         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
4105         gst_element_set_bus.
4106         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
4107         normal cases, this will destroy the bus.
4108
4109         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
4110         object.
4111
4112         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
4113         has no sinks.
4114
4115 2005-05-13  Andy Wingo  <wingo@pobox.com>
4116
4117         * gst/gstutils.c (gst_element_link_pads): Instead of calling
4118         gst_pad_link, call pad_link_maybe_ghosting,
4119         (pad_link_maybe_ghosting): Links pads, making sure that the
4120         elements being linked are in the same bin.
4121         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
4122         Helpers for pad_link_maybe_ghosting.
4123
4124 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
4125
4126         * configure.ac:
4127           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
4128
4129 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
4130
4131         * docs/design/part-element-source.txt:
4132           Mention GstPushSrc
4133
4134 2005-05-12  Wim Taymans  <wim@fluendo.com>
4135
4136         * gst/base/gstbasesink.c: (gst_basesink_init),
4137         (gst_basesink_activate):
4138         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
4139         (gst_basesrc_is_seekable):
4140         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
4141         (bin_element_is_sink), (gst_bin_change_state):
4142         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
4143         * gst/gstelement.h:
4144         Identify sinks by their flag to avoid overly complicated
4145         checks (fow now).
4146         Do state changes even for elements not reachable from the
4147         sinks.
4148         BaseSink is a sink now :)
4149         Some more debugging info in the basesrc.
4150
4151
4152 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4153
4154         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
4155           Implement _query on a bin, similar to _send_event.
4156
4157 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
4158
4159         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
4160           Discont event offset format should be GST_FORMAT_BYTES,
4161           not GST_FORMAT_TIME.
4162
4163 2005-05-12  Wim Taymans  <wim@fluendo.com>
4164
4165         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
4166         Same fix as Ronald's but without the signal. 
4167
4168 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4169
4170         * gst/gstutils.c: (gst_element_query_position):
4171           No, an element is not a pad.
4172
4173 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4174
4175         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
4176         (gst_bin_get_state):
4177           If a child is removed from a bin while we remove the child from
4178           the bin and while we're retrieving its state, signal this to the
4179           get_state function so we abort the wait (instead of waiting for
4180           a timeout) and can immediately re-iterate over all other elements.
4181
4182 2005-05-12  Wim Taymans  <wim@fluendo.com>
4183
4184         * gst/base/Makefile.am:
4185         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
4186         (gst_basesrc_start):
4187         * gst/base/gstbasesrc.h:
4188         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
4189         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
4190         (gst_pushsrc_init), (gst_pushsrc_create):
4191         * gst/base/gstpushsrc.h:
4192         Added is_seekable to BaseSrc
4193         Added simple PushSrc.
4194
4195 2005-05-11  Wim Taymans  <wim@fluendo.com>
4196
4197         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
4198         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
4199         (gst_element_link_pads), (gst_element_query_position),
4200         (gst_element_query_convert), (intersect_caps_func),
4201         (gst_pad_query_position), (gst_pad_query_convert):
4202         Fix refcounting in utils function.
4203         No point in trying to activate a pad when it's added, it could
4204         be added from the state change function and then we deadlock, the
4205         element has to decide what to do.
4206
4207 2005-05-10  Andy Wingo  <wingo@pobox.com>
4208
4209         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
4210         *all* the arguments.
4211
4212         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
4213         stream lock if it's a FLUSH_DONE; normal flushes don't get the
4214         lock (according to the docs -- if this is wrong change the docs).
4215
4216         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
4217         flush messages in the NULL state.
4218
4219         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
4220         message immediately and return.
4221         (gst_bus_set_flushing): New function. If a bus is flushing, it
4222         flushes out any queued messages and immediately unrefs new
4223         messages. This is so when an element goes to NULL, all of the
4224         unhandled messages coming from it can be freed, and their
4225         references to the element dropped. In other words: message source
4226         ref considered harmful :P
4227
4228         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
4229         we're finished with it.
4230
4231         * gst/gstmessage.c (gst_message_new_state_changed): 
4232
4233 2005-05-10  Wim Taymans  <wim@fluendo.com>
4234
4235         * gst/gstvalue.c: (gst_value_compare_flags),
4236         (gst_value_serialize_flags), (gst_value_deserialize_flags),
4237         (_gst_value_initialize):
4238         Added flags serialize/deserialize/compare code.
4239
4240 2005-05-09  Andy Wingo  <wingo@pobox.com>
4241
4242         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
4243         Intersect the peer's caps with our caps.
4244
4245 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4246
4247         * gst/base/gsttypefindhelper.c: (helper_find_peek):
4248         * gst/elements/gsttypefindelement.c: (find_peek):
4249           Handle negative offsets better. Fixes decodebin.
4250
4251 2005-05-09  Wim Taymans  <wim@fluendo.com>
4252
4253         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
4254         (gst_base_transform_event):
4255         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
4256         Implement accept_caps.
4257         Fix silly lock/unlock mismatch in base class.
4258
4259 2005-05-09  Wim Taymans  <wim@fluendo.com>
4260
4261         * docs/design/draft-push-pull.txt:
4262         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
4263         * gst/elements/gstfilesink.c: (gst_filesink_init),
4264         (gst_filesink_query):
4265         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
4266         (gst_type_find_handle_src_query), (find_element_get_length):
4267         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
4268         * gst/gstelement.h:
4269         * gst/gstmessage.c:
4270         * gst/gstmessage.h:
4271         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
4272         (gst_real_pad_get_caps_unlocked),
4273         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
4274         (gst_pad_event_default_dispatch), (gst_pad_event_default),
4275         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
4276         (gst_real_pad_dispose), (gst_real_pad_finalize),
4277         (gst_pad_load_and_link), (gst_pad_save_thyself),
4278         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
4279         (gst_pad_check_pull_range), (gst_pad_pull_range),
4280         (gst_pad_template_get_type), (gst_pad_template_class_init),
4281         (gst_pad_template_init), (gst_pad_template_dispose),
4282         (name_is_valid), (gst_static_pad_template_get),
4283         (gst_pad_template_new), (gst_static_pad_template_get_caps),
4284         (gst_pad_template_get_caps), (gst_pad_set_element_private),
4285         (gst_pad_get_element_private), (gst_pad_start_task),
4286         (gst_pad_pause_task), (gst_pad_stop_task),
4287         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
4288         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
4289         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
4290         (gst_ghost_pad_new):
4291         * gst/gstpad.h:
4292         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
4293         (gst_query_new_position), (gst_query_set_position),
4294         (gst_query_parse_position), (gst_query_new_convert),
4295         (gst_query_set_convert), (gst_query_parse_convert):
4296         * gst/gstquery.h:
4297         * gst/gstqueryutils.c:
4298         * gst/gstqueryutils.h:
4299         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
4300         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
4301         (gst_queue_handle_src_query):
4302         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
4303         (gst_element_query_position), (gst_element_query_convert),
4304         (intersect_caps_func), (gst_pad_query_position),
4305         (gst_pad_query_convert):
4306         * gst/gstutils.h:
4307         * tools/gst-inspect.c: (print_pad_info):
4308         * tools/gst-xmlinspect.c: (print_element_info):
4309         Remove old query functions. Ported old code.
4310         Added position/convert helper functions to gstutils.
4311         Reordered gstpad.c code, grouping relevant things.
4312         Remove gst_message_new(), always need to speficy a specific
4313         message.
4314
4315
4316 2005-05-09  Andy Wingo  <wingo@pobox.com>
4317
4318         * gst/gstiterator.h: Add some includes.
4319
4320         * gst/gstqueryutils.h: Include more headers.
4321
4322         * gst/gstpad.h:
4323         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
4324         some uses of gst_pad_query.
4325
4326         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
4327         NULL out parameters.
4328         (gst_query_new_position): New proc, allocates a new position
4329         query.
4330
4331         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
4332         gstqueryutils.c to the build.
4333
4334         * gst/gststructure.c (gst_structure_set_valist): Implement with
4335         the generic G_VALUE_COLLECT.
4336         
4337 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
4338
4339         * gst/Makefile.am: (gst_headers):
4340         Added gstqueryutils.h to the list of headers to install, that was
4341         a 'nachty' move wingo :)
4342
4343 2005-05-06  Andy Wingo  <wingo@pobox.com>
4344
4345         * gst/gstquery.h
4346         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
4347         GstData, init a memchunk.
4348         (standard_definitions): Add a few query types, deprecate a few.
4349         (gst_query_get_type): New proc.
4350         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
4351         implementation.
4352         (gst_query_new_application, gst_query_get_structure): New public
4353         procs.
4354
4355         * docs/design/draft-query.txt: Removed LINKS from the query types,
4356         because all the rest can be dispatched to other pads -- seemed
4357         ugly to have a query that couldn't be dispatched. internal_links
4358         is fine as a pad method.
4359
4360         * gst/gstpad.h: Add query2 as a pad method, add the new functions
4361         in gstpad.c, but maintain binary compatibility for the moment.
4362         Will fix before 0.9 is out.
4363
4364         * gst/gstqueryutils.c: 
4365         * gst/gstqueryutils.h: New files, implement 3 methods for each
4366         query type: parse_query, parse_response, and set. Probably need an
4367         allocator as well.
4368
4369         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
4370
4371         * gst/elements/gstfilesink.c (gst_filesink_query2):
4372         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
4373         query_types, and formats methods.
4374
4375         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
4376         (gst_pad_set_query2_function): New functions.
4377         (gst_real_pad_init): Set query2_default as the default query2
4378         function. Basically just dispatches to internally linked pads.
4379
4380         Needs review!
4381         
4382         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
4383         without using the atomic operations. Only one thread can possibly
4384         be accessing the data at this point. Changed so as to avoid
4385         gst_atomic operations.
4386
4387 2005-05-06  Wim Taymans  <wim@fluendo.com>
4388
4389         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
4390         Also set caps if we use the fallback buffer alloc.
4391
4392 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
4393
4394         * docs/gst/Makefile.am:
4395         * docs/gst/gstreamer-docs.sgml:
4396         * docs/gst/gstreamer-sections.txt:
4397         * docs/gst/tmpl/gstatomic.sgml:
4398         * docs/gst/tmpl/gstmemchunk.sgml:
4399         * testsuite/elements/struct_i386.h:
4400         * win32/GStreamer.vcproj:
4401         * win32/Makefile:
4402           Purge GstAtomic stuff from docs and win32 makefiles as well
4403
4404 2005-05-06  Wim Taymans  <wim@fluendo.com>
4405
4406         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
4407         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
4408         * gst/gstpad.c: (gst_pad_peer_get_caps):
4409         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
4410         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
4411         (gst_queue_src_activate), (gst_queue_change_state):
4412         * gst/gstqueue.h:
4413         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
4414         (intersect_caps_func):
4415         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
4416         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
4417         Some fixes for the peer_get_caps() change.
4418
4419 2005-05-06  Wim Taymans  <wim@fluendo.com>
4420
4421         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
4422         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
4423         (gst_basesink_activate):
4424         Actually do something with error codes returned from the push
4425         functions.
4426
4427 2005-05-06  Wim Taymans  <wim@fluendo.com>
4428
4429         * docs/design/part-element-sink.txt:
4430         * docs/design/part-element-source.txt:
4431         * gst/base/gstbasesink.c: (gst_basesink_class_init),
4432         (gst_basesink_event), (gst_basesink_activate):
4433         * gst/base/gstbasesink.h:
4434         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
4435         (gst_basesrc_activate):
4436         * gst/base/gstbasesrc.h:
4437         * gst/gstelement.c: (gst_element_pads_activate):
4438         Some more documentation.
4439         Fixed scheduling decision in _pads_activate().
4440
4441 2005-05-05  Andy Wingo  <wingo@pobox.com>
4442
4443         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
4444         the test suite.
4445
4446 2005-05-05  Wim Taymans  <wim@fluendo.com>
4447
4448         * gst/base/Makefile.am:
4449         * gst/base/gstbasesink.h:
4450         * gst/base/gstbasesrc.c: (gst_basesrc_init),
4451         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
4452         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
4453         (gst_collectpads_class_init), (gst_collectpads_init),
4454         (gst_collectpads_finalize), (gst_collectpads_new),
4455         (gst_collectpads_set_function), (gst_collectpads_add_pad),
4456         (find_pad), (gst_collectpads_remove_pad),
4457         (gst_collectpads_is_active), (gst_collectpads_collect),
4458         (gst_collectpads_collect_range), (gst_collectpads_start),
4459         (gst_collectpads_stop), (gst_collectpads_peek),
4460         (gst_collectpads_pop), (gst_collectpads_available),
4461         (gst_collectpads_read), (gst_collectpads_flush),
4462         (gst_collectpads_chain):
4463         * gst/base/gstcollectpads.h:
4464         * gst/elements/Makefile.am:
4465         * gst/elements/gstelements.c:
4466         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
4467         (gst_fakesink_get_times), (gst_fakesink_event),
4468         (gst_fakesink_preroll), (gst_fakesink_render):
4469         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
4470         (gst_filesink_init), (gst_filesink_set_location),
4471         (gst_filesink_open_file), (gst_filesink_close_file),
4472         (gst_filesink_pad_query), (gst_filesink_event),
4473         (gst_filesink_render), (gst_filesink_change_state):
4474         * gst/elements/gstfilesink.h:
4475         Added object to help in making collect pad based elements.
4476         Ported filesink.
4477         Make event function in sink baseclass return gboolean.
4478
4479 2005-05-05  Wim Taymans  <wim@fluendo.com>
4480
4481         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
4482         (gst_bin_get_by_name):
4483         * gst/gstbuffer.h:
4484         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
4485         (gst_clock_finalize):
4486         * gst/gstdata.c: (gst_data_replace):
4487         * gst/gstdata.h:
4488         * gst/gstelement.c: (gst_element_request_pad),
4489         (gst_element_pads_activate):
4490         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
4491         (gst_object_unref):
4492         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4493         (gst_pad_set_checkgetrange_function),
4494         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
4495         (gst_pad_check_pull_range), (gst_pad_pull_range),
4496         (gst_static_pad_template_get_caps), (gst_pad_start_task),
4497         (gst_pad_pause_task), (gst_pad_stop_task):
4498         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
4499         (gst_element_request_pad), (gst_pad_proxy_getcaps):
4500         Fix name lookup in GstBin.
4501         Added _data_replace() function and _buffer_replace()
4502         Use finalize method to clean up clock.
4503         Fix refcounting on request pads.
4504         Fix pad schedule mode error.
4505         Some more object refcounting debug info,
4506
4507
4508 2005-05-04  Andy Wingo <wingo@pobox.com>
4509
4510         * check/Makefile.am:
4511         * docs/gst/tmpl/gstatomic.sgml:
4512         * docs/gst/tmpl/gstplugin.sgml:
4513         * gst/base/gstbasesink.c: (gst_basesink_activate):
4514         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
4515         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
4516         (gst_basesrc_query), (gst_basesrc_set_property),
4517         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
4518         (gst_basesrc_activate):
4519         * gst/base/gstbasesrc.h:
4520         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
4521         (gst_base_transform_src_activate):
4522         * gst/elements/gstelements.c:
4523         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4524         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
4525         * gst/elements/gsttee.c: (gst_tee_sink_activate):
4526         * gst/elements/gsttypefindelement.c: (find_element_get_length),
4527         (gst_type_find_element_checkgetrange),
4528         (gst_type_find_element_activate):
4529         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
4530         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
4531         (gst_caps_load_thyself):
4532         * gst/gstelement.c: (gst_element_pads_activate),
4533         (gst_element_save_thyself), (gst_element_restore_thyself):
4534         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
4535         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
4536         * gst/gstpad.h:
4537         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
4538         (gst_xml_parse_file), (gst_xml_parse_memory),
4539         (gst_xml_get_element), (gst_xml_make_element):
4540         * gst/indexers/gstfileindex.c: (gst_file_index_load),
4541         (_file_index_id_save_xml), (gst_file_index_commit):
4542         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
4543         (read_enum), (load_pad_template), (load_feature), (load_plugin),
4544         (load_paths):
4545         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
4546         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
4547         * tools/gst-complete.c: (main):
4548         * tools/gst-compprep.c: (main):
4549         * tools/gst-inspect.c: (print_element_properties_info):
4550         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
4551         * tools/gst-xmlinspect.c: (print_element_properties):
4552         GCC 4 fixen.
4553         
4554 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
4555
4556         * gst/gstplugin.c: (gst_plugin_check_module),
4557         (gst_plugin_check_file), (gst_plugin_load_file):
4558             apply patch from #172526 to make register work on MacOSX
4559
4560 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
4561
4562         * docs/gst/tmpl/gstconfig.sgml:
4563         * gst/gstconfig.h.in:
4564           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
4565         * testsuite/debug/printf_extension.c: (main):
4566           Do not use GST_PTR_FORMAT on pointers to types with
4567           sizeof < sizeof(gpointer).  Fixes test on 64-bit
4568         * testsuite/elements/property.h:
4569           use correct printf format
4570
4571 2005-05-02  Wim Taymans  <wim@fluendo.com>
4572
4573         * docs/design/draft-push-pull.txt:
4574         * docs/design/draft-query.txt:
4575         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
4576         (gst_basesrc_start):
4577         Added draft for new query API.
4578         Added draft for better selecting scheduling methods.
4579         Make basesrc ignore length if the subclass does not support
4580         it.
4581
4582 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
4583
4584         * gst/Makefile.am:
4585           possible fixes for automake-1.5 - _LIBADD is reserved
4586
4587 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
4588
4589         * docs/faq/Makefile.am:
4590         * docs/manual/Makefile.am:
4591         * docs/manuals.mak:
4592         * docs/pwg/Makefile.am:
4593         * gst/Makefile.am:
4594           possible fixes for automake-1.5
4595
4596 2005-04-28  Wim Taymans  <wim@fluendo.com>
4597
4598         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4599         (gst_basesink_pad_getcaps), (gst_basesink_init),
4600         (gst_basesink_do_sync):
4601         * gst/gstclock.c: (gst_clock_entry_new):
4602         * gst/gstevent.c: (gst_event_discont_get_value):
4603         * gst/gstpipeline.c: (pipeline_bus_handler),
4604         (gst_pipeline_change_state):
4605         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
4606         Better debugging of clocking info.
4607         Allow NULL values when getting discont values.
4608
4609 2005-04-27  Wim Taymans  <wim@fluendo.com>
4610
4611         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
4612         * check/gst/gstpad.c: (gst_pad_suite):
4613         Increase timeout for checks.
4614
4615 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
4616
4617         * check/Makefile.am:
4618           fix the broken rule for cleanup.  Apparently this rule is
4619           only needed on FC2, so maybe this warrants further autotool
4620           inspection.
4621
4622 2005-04-26  Wim Taymans  <wim@fluendo.com>
4623
4624         * gst/gsttrashstack.h:
4625         Ooohh. a nasty one! After having a failed pop() from the stack,
4626         it's possible that the stack is empty. In that case, don't
4627         follow the NULL pointer.
4628
4629 2005-04-25  Wim Taymans  <wim@fluendo.com>
4630
4631         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4632         (gst_pad_set_checkgetrange_function),
4633         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
4634         (gst_pad_check_pull_range), (gst_pad_pull_range),
4635         (gst_static_pad_template_get_caps), (gst_pad_start_task),
4636         (gst_pad_pause_task), (gst_pad_stop_task):
4637         * gst/gstplugin.c: (gst_plugin_load):
4638         * gst/gstplugin.h:
4639         Remove gst_library_load as it does more harm than good with
4640         the new g_module flags.
4641         Revert bogus caps template check in pad linking, pad caps
4642         are important when linking not the template, which is more
4643         general than the current caps.
4644
4645 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4646
4647         * gst/autoplug/.cvsignore:
4648         * gst/autoplug/Makefile.am:
4649         * gst/autoplug/gstsearchfuncs.c:
4650         * gst/autoplug/gstsearchfuncs.h:
4651         * gst/autoplug/gstspider.c:
4652         * gst/autoplug/gstspider.h:
4653         * gst/autoplug/gstspideridentity.c:
4654         * gst/autoplug/gstspideridentity.h:
4655         * gst/autoplug/spidertest.c:
4656           Die, spider, die.
4657
4658 2005-04-25  Wim Taymans  <wim@fluendo.com>
4659
4660         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4661         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
4662         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
4663         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
4664         * gst/gstpad.h:
4665         Added stubs for unimplemented functions. 
4666
4667 2005-04-24  David Schleef  <ds@schleef.org>
4668
4669         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
4670         please fix.
4671
4672 2005-04-24  David Schleef  <ds@schleef.org>
4673
4674         Convert everything from GstAtomicInt to g_atomic_int_*, and
4675         remove gstatomic.
4676         * gst/Makefile.am:
4677         * gst/gstatomic.c:
4678         * gst/gstatomic.h:
4679         * gst/gstatomic_impl.h:
4680         * gst/gstbuffer.c:
4681         * gst/gstcaps.c:
4682         * gst/gstcaps.h:
4683         * gst/gstclock.c:
4684         * gst/gstclock.h:
4685         * gst/gstdata.c:
4686         * gst/gstdata.h:
4687         * gst/gstdata_private.h:
4688         * gst/gstevent.c:
4689         * gst/gstinfo.c:
4690         * gst/gstinfo.h:
4691         * gst/gstmessage.c:
4692         * gst/gstobject.c:
4693         * gst/gstobject.h:
4694         * gst/gststructure.c:
4695         * gst/gststructure.h:
4696         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
4697         * gst/gstutils.h:
4698
4699 2005-04-24  David Schleef  <ds@schleef.org>
4700
4701         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
4702         make the regressions tests work.  Remove some code that is no
4703         longer true.
4704         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
4705         Disable warning for pads without templates.
4706
4707 2005-04-24  David Schleef  <ds@schleef.org>
4708
4709         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
4710         functions that handle filtered links.
4711         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
4712         removed functions.
4713         * gst/gstutils.c: Fix/remove utility functions that handle
4714         filtered caps.
4715         * gst/gstutils.h:
4716         * gst/gstvalue.c: Add serialization/deserialization of caps
4717         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
4718         requires fixing so that the filter caps notation creates
4719         a capsfilter element and sets the filter_caps property.  I
4720         think everyone probably wants to keep the shorthand notation.
4721         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
4722         * docs/gst/tmpl/gstpad.sgml:
4723
4724         * gst/elements/gstelements.c: Register capsfilter element.
4725         * gst/Makefile.am: fix spacing
4726         * docs/random/ds/0.9-suggested-changes: random
4727
4728 2005-04-23  David Schleef  <ds@schleef.org>
4729
4730         * gst/elements/Makefile.am:
4731         * gst/elements/gstcapsfilter.c: New element that acts like an
4732         identity, but filters caps.  Will eventually replace filtered
4733         caps in pad linking.
4734         * gst/gstutils.c: (gst_element_create_all_pads): New function
4735         to create all the ALWAYS pads that are registered with an
4736         element class.  This functionality should eventually be
4737         merged in with GstElement initialization.
4738         * gst/gstutils.h:
4739         * testsuite/trigger/README: part of trigger test code that should
4740         have been checked in a long time ago.
4741
4742 2005-04-23  David Schleef  <ds@schleef.org>
4743
4744         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
4745         needed with new versions of libtool (nobody will confirm this),
4746         and hard to carry around.
4747         * gst/autoplug/Makefile.am:
4748         * gst/base/Makefile.am:
4749         * gst/elements/Makefile.am:
4750         * gst/indexers/Makefile.am:
4751         * gst/schedulers/Makefile.am:
4752         * libs/gst/bytestream/Makefile.am:
4753         * libs/gst/control/Makefile.am:
4754         * libs/gst/dataprotocol/Makefile.am:
4755         * libs/gst/getbits/Makefile.am:
4756
4757 2005-04-21  Wim Taymans  <wim@fluendo.com>
4758
4759         * docs/design/draft-push-pull.txt:
4760         * docs/design/part-MT-refcounting.txt:
4761         * docs/design/part-TODO.txt:
4762         * docs/design/part-caps.txt:
4763         * docs/design/part-events.txt:
4764         * docs/design/part-gstbus.txt:
4765         * docs/design/part-gstpipeline.txt:
4766         * docs/design/part-messages.txt:
4767         * docs/design/part-push-pull.txt:
4768         * docs/design/part-query.txt:
4769         Some more docs.
4770
4771 2005-04-21  Wim Taymans  <wim@fluendo.com>
4772
4773         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
4774         (gst_message_new), (gst_message_new_error),
4775         (gst_message_new_warning), (gst_message_new_tag),
4776         (gst_message_new_state_changed), (gst_message_new_application),
4777         (gst_message_get_structure):
4778         * gst/gstmessage.h:
4779         * gst/gststructure.c: (gst_structure_set_parent_refcount),
4780         (gst_structure_copy_conditional):
4781         Use parent refcount in GstMessage to ensure GstStructure
4782         consistency.
4783         Cleaned up headers a bit.
4784         
4785
4786 2005-04-20  Wim Taymans  <wim@fluendo.com>
4787
4788         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4789         (gst_basesink_pad_getcaps), (gst_basesink_init),
4790         (gst_basesink_chain_unlocked):
4791         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
4792         (gst_type_find_helper):
4793         * gst/elements/gsttypefindelement.c:
4794         (gst_type_find_element_have_type), (gst_type_find_element_init),
4795         (stop_typefinding), (gst_type_find_element_handle_event),
4796         (find_suggest), (gst_type_find_element_chain),
4797         (gst_type_find_element_checkgetrange),
4798         (gst_type_find_element_getrange), (do_typefind),
4799         (gst_type_find_element_activate):
4800         * gst/gstbuffer.c: (_gst_buffer_sub_free),
4801         (gst_buffer_default_free), (gst_buffer_default_copy),
4802         (gst_buffer_set_caps):
4803         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
4804         (gst_caps_replace):
4805         * gst/gstmessage.c: (gst_message_new),
4806         (gst_message_new_state_changed):
4807         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4808         (gst_pad_set_checkgetrange_function),
4809         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
4810         (gst_pad_set_caps), (gst_pad_check_pull_range),
4811         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
4812         * gst/gstpad.h:
4813         * gst/gsttypefind.c: (gst_type_find_register):
4814         Make gst_caps_replace() work like other _replace() functions.
4815         Use _caps_replace() where possible.
4816         Make sure _message_new() initialises its field.
4817         Add gst_static_pad_template_get_caps()
4818
4819
4820 2005-04-18  Andy Wingo  <wingo@pobox.com>
4821
4822         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
4823         on the peer, not the pad. I think that was a typo. Pass an extra
4824         arg to see if random access is possible. Activate the pads as
4825         PULL_RANGE if possible.
4826
4827         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
4828
4829         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
4830         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
4831         to PROP_....
4832
4833 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4834
4835         * docs/faq/using.xml:
4836           Add note on gstreamer-properties (#154996).
4837
4838 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4839
4840         * docs/random/bbb/optional-properties:
4841           Some analysis on optional properties.
4842
4843 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4844
4845         * docs/gst/tmpl/gstelementfactory.sgml:
4846         * gst/gstelement.h:
4847         * gst/gstelementfactory.c: (gst_element_factory_init),
4848         (gst_element_factory_cleanup), (gst_element_register),
4849         (__gst_element_factory_add_static_pad_template),
4850         (gst_element_factory_get_static_pad_templates),
4851         (gst_element_factory_can_src_caps),
4852         (gst_element_factory_can_sink_caps):
4853         * gst/registries/Makefile.am:
4854         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
4855         (gst_xml_registry_class_init), (gst_xml_registry_init),
4856         (gst_xml_registry_new), (gst_xml_registry_set_property),
4857         (gst_xml_registry_get_property), (get_time), (make_dir),
4858         (gst_xml_registry_get_perms_func),
4859         (plugin_times_older_than_recurse), (plugin_times_older_than),
4860         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
4861         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
4862         (add_to_char_array), (read_string), (read_uint), (read_enum),
4863         (load_pad_template), (load_feature), (load_plugin), (load_paths),
4864         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
4865         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
4866         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
4867         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
4868         (gst_xml_registry_rebuild):
4869         * gst/registries/gstlibxmlregistry.h:
4870         * tools/gst-compprep.c: (main):
4871         * tools/gst-inspect.c: (print_pad_templates_info):
4872         * tools/gst-xmlinspect.c: (print_element_info):
4873           Use libxml2 for registry parsing, use staticpadtemplates in
4874           elementfactories. Makes gst_init() +/- 10x faster.
4875
4876 2005-04-12  Wim Taymans  <wim@fluendo.com>
4877
4878         * gst/base/Makefile.am:
4879         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4880         (gst_basesink_pad_getcaps), (gst_basesink_init),
4881         (gst_basesink_event), (gst_basesink_change_state):
4882         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4883         (gst_basesrc_init), (gst_basesrc_query),
4884         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
4885         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
4886         (gst_basesrc_check_get_range), (gst_basesrc_loop),
4887         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
4888         (gst_basesrc_stop), (gst_basesrc_activate),
4889         (gst_basesrc_change_state):
4890         * gst/base/gsttypefindhelper.c: (helper_find_peek),
4891         (helper_find_suggest), (gst_type_find_helper):
4892         * gst/base/gsttypefindhelper.h:
4893         * gst/elements/Makefile.am:
4894         * gst/elements/gstelements.c:
4895         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
4896         (gst_fakesink_get_times), (gst_fakesink_event),
4897         (gst_fakesink_preroll), (gst_fakesink_render):
4898         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4899         (gst_fakesrc_init), (gst_fakesrc_event_handler),
4900         (gst_fakesrc_get_property), (gst_fakesrc_create),
4901         (gst_fakesrc_start), (gst_fakesrc_stop):
4902         * gst/elements/gstfakesrc.h:
4903         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
4904         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
4905         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
4906         (gst_filesrc_create_read), (gst_filesrc_create),
4907         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
4908         (gst_filesrc_start):
4909         * gst/elements/gsttypefindelement.c:
4910         (gst_type_find_element_have_type), (gst_type_find_element_init),
4911         (start_typefinding), (stop_typefinding), (push_buffer_store),
4912         (gst_type_find_element_handle_event),
4913         (gst_type_find_element_chain),
4914         (gst_type_find_element_checkgetrange),
4915         (gst_type_find_element_getrange), (do_typefind),
4916         (gst_type_find_element_activate),
4917         (gst_type_find_element_change_state):
4918         * gst/elements/gsttypefindelement.h:
4919         * gst/gstpipeline.c: (pipeline_bus_handler):
4920         Added typefind helper.
4921         Small preroll fix in the base sink.
4922         Disable typefind code in basesrc.
4923         Crude port of typefindelement.
4924         Fakesrc cleanups.
4925
4926
4927 2005-04-11  Wim Taymans  <wim@fluendo.com>
4928
4929         * check/gst/gstbus.c: (gstbus_suite):
4930         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
4931         * check/gstcheck.h:
4932           Fix up the timeout so that the test does not fail.
4933
4934 2005-04-06  Wim Taymans  <wim@fluendo.com>
4935
4936         * gst/base/README:
4937         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4938         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
4939         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
4940         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
4941         (gst_basesrc_check_get_range), (gst_basesrc_loop),
4942         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
4943         (gst_basesrc_stop), (gst_basesrc_activate),
4944         (gst_basesrc_change_state), (basesrc_find_peek),
4945         (basesrc_find_suggest), (gst_basesrc_type_find):
4946         * gst/base/gstbasesrc.h:
4947         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
4948         (gst_filesrc_class_init), (gst_filesrc_init),
4949         (gst_filesrc_finalize), (gst_filesrc_set_location),
4950         (gst_filesrc_set_property), (gst_filesrc_get_property),
4951         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
4952         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
4953         (gst_filesrc_create_read), (gst_filesrc_create),
4954         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
4955         * gst/elements/gstfilesrc.h:
4956         * gst/gstelement.c: (gst_element_get_state_func),
4957         (gst_element_lost_state), (gst_element_pads_activate):
4958         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4959         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
4960         (gst_pad_pull_range):
4961         * gst/gstpad.h:
4962         More work on the generic source base class, implement seeking,
4963         query.
4964         Make filesrc extend the base source class.
4965         Added gst_pad_set_checkgetrange_function to GstPad.
4966
4967 2005-04-06  Andy Wingo  <wingo@pobox.com>
4968
4969         * pkgconfig/gstreamer-base.pc.in:
4970         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
4971
4972         * pkgconfig/Makefile.am:
4973         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
4974
4975 2005-04-04  Wim Taymans  <wim@fluendo.com>
4976
4977         * gst/base/Makefile.am:
4978         * gst/base/README:
4979         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4980         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4981         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4982         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
4983         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4984         (gst_basesrc_base_init), (gst_basesrc_class_init),
4985         (gst_basesrc_init), (gst_basesrc_get_formats),
4986         (gst_basesrc_get_query_types), (gst_basesrc_query),
4987         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
4988         (gst_basesrc_set_property), (gst_basesrc_get_property),
4989         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
4990         (gst_basesrc_loop), (gst_basesrc_activate),
4991         (gst_basesrc_change_state):
4992         * gst/base/gstbasesrc.h:
4993         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
4994         (gst_fakesrc_class_init), (gst_fakesrc_init),
4995         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
4996         (gst_fakesrc_get_property), (gst_fakesrc_create):
4997         * gst/elements/gstfakesrc.h:
4998         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
4999         (gst_filesrc_open_file), (gst_filesrc_loop),
5000         (gst_filesrc_activate), (filesrc_find_peek),
5001         (gst_filesrc_type_find):
5002         Made base source class, make fakesrc extend it.
5003         Add comments to basesink class.
5004         Some filesrc cleanup.
5005
5006 2005-03-31  David Schleef  <ds@schleef.org>
5007
5008         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
5009         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
5010         expected to link against libgstreamer.
5011         * gst/base/Makefile.am: link against libgstreamer
5012         * gst/elements/Makefile.am: same
5013
5014 2005-03-31  Andy Wingo  <wingo@pobox.com>
5015
5016         * tests/instantiate/Makefile.am:
5017         * tests/instantiate/caps.c: Add test to test speed of caps copy
5018         and free.
5019
5020         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
5021         GMemChunk to be fair.
5022
5023         * gst/gsttrashstack.h: Remove warning about using the fallback
5024         trash stack implementation, it's still faster than malloc.
5025
5026 2005-03-30  Andy Wingo  <wingo@pobox.com>
5027
5028         * tests/complexity.c: Add a copyright.
5029
5030 2005-03-31  Wim Taymans  <wim@fluendo.com>
5031
5032         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
5033         (gst_base_transform_class_init), (gst_base_transform_init),
5034         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
5035         (gst_base_transform_get_property),
5036         (gst_base_transform_sink_activate),
5037         (gst_base_transform_src_activate),
5038         (gst_base_transform_change_state):
5039         * gst/base/gstbasetransform.h:
5040         * gst/elements/gstidentity.c: (gst_identity_class_init),
5041         (gst_identity_event), (gst_identity_check_perfect),
5042         (gst_identity_transform), (gst_identity_start),
5043         (gst_identity_stop):
5044         Added start/stop methods to transform base class so subclasses 
5045         don't need to deal with state changes even.
5046
5047 2005-03-31  Wim Taymans  <wim@fluendo.com>
5048
5049         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
5050         (gst_event_new_discontinuous), (gst_event_discont_get_value):
5051         * gst/gstevent.h:
5052         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
5053         (gst_pad_pull_range):
5054         Added rate to the discont event to prepare for variable speed
5055         and reverse playback.
5056
5057 2005-03-29  David Schleef  <ds@schleef.org>
5058
5059         * configure.ac:
5060         * testsuite/trigger/Makefile.am:
5061         * testsuite/trigger/trigger.c: A little example program to show
5062         how trigger-based elements can work.
5063
5064 2005-03-29  Wim Taymans  <wim@fluendo.com>
5065
5066         * gst/base/Makefile.am:
5067         * gst/base/README:
5068         * gst/base/gstbasesink.c: (gst_basesink_get_type),
5069         (gst_basesink_base_init), (gst_basesink_class_init),
5070         (gst_basesink_pad_getcaps), (gst_basesink_init),
5071         (gst_basesink_activate), (gst_basesink_change_state):
5072         * gst/base/gstbasesink.h:
5073         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
5074         (gst_base_transform_base_init), (gst_base_transform_finalize),
5075         (gst_base_transform_class_init), (gst_base_transform_init),
5076         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
5077         (gst_base_transform_event), (gst_base_transform_getrange),
5078         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
5079         (gst_base_transform_set_property),
5080         (gst_base_transform_get_property),
5081         (gst_base_transform_sink_activate),
5082         (gst_base_transform_src_activate),
5083         (gst_base_transform_change_state):
5084         * gst/base/gstbasetransform.h:
5085         * gst/elements/gstidentity.c: (gst_identity_finalize),
5086         (gst_identity_class_init), (gst_identity_init),
5087         (gst_identity_event), (gst_identity_check_perfect),
5088         (gst_identity_transform), (gst_identity_set_property),
5089         (gst_identity_get_property), (gst_identity_change_state):
5090         * gst/elements/gstidentity.h:
5091         * gst/gstelement.c: (gst_element_get_state_func),
5092         (gst_element_lost_state), (gst_element_pads_activate):
5093         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
5094         (gst_pad_check_pull_range), (gst_pad_pull_range):
5095         * gst/gstpad.h:
5096         Simplify pad activation.
5097         Added function to check if pull_range can be performed.
5098         Error out when pulling inactive or flushing pads.
5099         Removed const from refcounted types as it does not make sense.
5100         Simplify pad templates in basesink
5101         Added base class for simple 1-to-1 transforms.
5102         Make identity subclass the base transform.
5103
5104 2005-03-29  Andy Wingo  <wingo@pobox.com>
5105
5106         * docs/libs/gstreamer-libs-overrides.txt: 
5107         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
5108         really don't understand what's going on, but like whatever. I want
5109         green buildbot!
5110
5111         * docs/gst/Makefile.am:
5112         * docs/libs/Makefile.am: Dist the overrides files.
5113
5114         * check/Makefile.am (clean-local): Remove .libs directories.
5115
5116         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
5117         elements to EXTRA_DIST, so po/ files are happy.
5118
5119         * po/POTFILES.in: Er, remove it here.
5120
5121         * po/POTFILES: Remove gstspider.c.
5122
5123         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
5124
5125         * docs/libs/gstreamer-libs-docs.sgml: 
5126         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
5127         bytestream.
5128
5129         * tests/complexity.c (main): Set the length of the preroll queue
5130         on the sinks to prevent a lockup.
5131
5132         * libs/gst/dataprotocol/Makefile.am: 
5133         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
5134         the same as the one in check/gst-libs/gdp.c.
5135
5136         * po/, docs/gst/: Commit automatic changes to docs and po files.
5137
5138         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
5139         the versioned libgstbase.
5140
5141         * check/Makefile.am: Depend on an unversioned gst-register, seems
5142         to make autoconf happier.
5143
5144         * gst/base/Makefile.am: Make libgstbase a versioned lib.
5145
5146 2005-03-28  Wim Taymans  <wim@fluendo.com>
5147
5148         * configure.ac:
5149         * docs/design/part-gstelement.txt:
5150         * docs/design/part-negotiation.txt:
5151         * docs/design/part-preroll.txt:
5152         * docs/design/part-scheduling.txt:
5153         * docs/design/part-states.txt:
5154         * gst/Makefile.am:
5155         * gst/base/Makefile.am:
5156         * gst/base/README:
5157         * gst/base/gstbasesink.c: (gst_basesink_get_template),
5158         (gst_basesink_base_init), (gst_basesink_class_init),
5159         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
5160         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
5161         (gst_basesink_set_pad_functions),
5162         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
5163         (gst_basesink_set_property), (gst_basesink_get_property),
5164         (gst_base_sink_get_template), (gst_base_sink_get_caps),
5165         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
5166         (gst_basesink_preroll_queue_push),
5167         (gst_basesink_preroll_queue_empty),
5168         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
5169         (gst_basesink_event), (gst_basesink_get_times),
5170         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
5171         (gst_basesink_chain_unlocked), (gst_basesink_chain),
5172         (gst_basesink_loop), (gst_basesink_activate),
5173         (gst_basesink_change_state):
5174         * gst/base/gstbasesink.h:
5175         * gst/elements/Makefile.am:
5176         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
5177         (gst_fakesink_class_init), (gst_fakesink_init),
5178         (gst_fakesink_set_property), (gst_fakesink_get_property),
5179         (gst_fakesink_get_times), (gst_fakesink_event),
5180         (gst_fakesink_preroll), (gst_fakesink_render),
5181         (gst_fakesink_change_state):
5182         * gst/elements/gstfakesink.h:
5183         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
5184         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
5185         * gst/gstelement.c: (gst_element_add_pad),
5186         (gst_element_get_state_func), (gst_element_abort_state),
5187         (gst_element_commit_state), (gst_element_lost_state),
5188         (gst_element_set_state), (gst_element_pads_activate):
5189         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
5190         * gst/gstpipeline.c: (gst_pipeline_send_event),
5191         (gst_pipeline_change_state):
5192         Added state change code.
5193         Added/updated docs.
5194         Added sink base class, make fakesink extend the base class.
5195         Small cleanups in GstPipeline.
5196
5197 2005-03-26  David Schleef  <ds@schleef.org>
5198
5199         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
5200         is broken and should be implemented in a different library.
5201         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
5202         * gst/gst.h: remove gstcpu.h
5203         * gst/gstcpu.c: remove
5204         * gst/gstcpu.h: remove
5205         * gst/Makefile.am.future: Remove this file.  It's ancient.
5206
5207 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5208
5209         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
5210         (gst_bin_send_event):
5211           Add default event/set_manager handlers. The set_manager handler
5212           takes care that the manager is distributed over kids that were
5213           already in the bin before the manager was set. The event handler
5214           is a utility virtual function that sends the event over all sinks,
5215           so that gst_element_send_event (bin, event); has the expected
5216           behaviour.
5217         * gst/gstpad.c: (gst_pad_event_default):
5218           Re-install default event handling for discontinuities, so that
5219           seeking works without requiring hacks in applications or extra
5220           code in sinks.
5221         * gst/gstpipeline.c: (gst_pipeline_class_init),
5222         (gst_pipeline_send_event):
5223           Half hack, half utility: set a pipeline to PAUSED for seek events,
5224           since that is the only way we can guarantee a/v sync. Means that
5225           you can do gst_element_seek (pipeline, method, pos); on a pipeline
5226           and it "just works".
5227
5228 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5229
5230         * gst/gstpipeline.c: (gst_pipeline_use_clock):
5231           Lock/unlock mismatch.
5232
5233 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
5234
5235         * docs/faq/gst-uninstalled:
5236           add gst-plugins-base
5237         * docs/gst/Makefile.am:
5238           don't error out until docs are fixed
5239         * docs/gst/gstreamer.types:
5240           remove thread
5241
5242 2005-03-22  Wim Taymans  <wim@fluendo.com>
5243
5244         * check/Makefile.am:
5245         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
5246         * gst/gststructure.c: (gst_structure_set_valist),
5247         (gst_structure_copy_conditional):
5248         Activated more tests.
5249         Added message test.
5250         Added G_TYPE_POINTER to GstStructure.
5251         
5252
5253 2005-03-22  Wim Taymans  <wim@fluendo.com>
5254
5255         * docs/design/part-TODO.txt:
5256         * docs/design/part-events.txt:
5257         * docs/design/part-gstbin.txt:
5258         * docs/design/part-gstbus.txt:
5259         * docs/design/part-gstpipeline.txt:
5260         * docs/design/part-messages.txt:
5261         * gst/gstbus.c:
5262         * gst/gstmessage.c:
5263         Docs updates
5264
5265 2005-03-21  Wim Taymans  <wim@fluendo.com>
5266
5267         * gst/gstbus.c: (gst_bus_post):
5268         Fix copy-and-paste error.
5269
5270 2005-03-21  Wim Taymans  <wim@fluendo.com>
5271
5272         * check/Makefile.am:
5273         * gst/Makefile.am:
5274         * gst/elements/Makefile.am:
5275         * gst/elements/gstelements.c:
5276         * gst/elements/gstfakesink.c: (gst_fakesink_init),
5277         (gst_fakesink_event), (gst_fakesink_chain):
5278         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
5279         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
5280         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
5281         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
5282         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
5283         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
5284         (gst_fakesrc_loop), (gst_fakesrc_activate),
5285         (gst_fakesrc_change_state):
5286         * gst/elements/gstfakesrc.h:
5287         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
5288         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
5289         (gst_filesrc_open_file), (gst_filesrc_loop),
5290         (gst_filesrc_activate), (gst_filesrc_change_state),
5291         (filesrc_find_peek), (filesrc_find_suggest),
5292         (gst_filesrc_type_find):
5293         * gst/elements/gstidentity.c: (gst_identity_finalize),
5294         (gst_identity_class_init), (gst_identity_init),
5295         (gst_identity_proxy_getcaps), (identity_queue_push),
5296         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
5297         (gst_identity_getrange), (gst_identity_chain),
5298         (gst_identity_sink_loop), (gst_identity_src_loop),
5299         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
5300         (gst_identity_set_property), (gst_identity_get_property),
5301         (gst_identity_change_state):
5302         * gst/elements/gstidentity.h:
5303         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
5304         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
5305         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
5306         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
5307         (gst_tee_sink_activate):
5308         * gst/elements/gsttee.h:
5309         * gst/gst.c: (gst_register_core_elements), (init_post):
5310         * gst/gst.h:
5311         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
5312         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
5313         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
5314         (gst_bin_change_state):
5315         * gst/gstbin.h:
5316         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
5317         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
5318         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
5319         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
5320         (gst_bus_set_sync_handler), (gst_bus_create_watch),
5321         (bus_watch_callback), (bus_watch_destroy),
5322         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
5323         (poll_timeout), (gst_bus_poll):
5324         * gst/gstbus.h:
5325         * gst/gstcaps.h:
5326         * gst/gstdata.h:
5327         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
5328         (gst_element_post_message), (gst_element_message_full),
5329         (gst_element_get_state_func), (gst_element_get_state),
5330         (gst_element_abort_state), (gst_element_commit_state),
5331         (gst_element_lost_state), (gst_element_set_state),
5332         (gst_element_pads_activate), (gst_element_change_state),
5333         (gst_element_dispose), (gst_element_set_manager_func),
5334         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
5335         (gst_element_set_manager), (gst_element_get_manager),
5336         (gst_element_set_bus), (gst_element_get_bus),
5337         (gst_element_set_scheduler), (gst_element_get_scheduler):
5338         * gst/gstelement.h:
5339         * gst/gstevent.c: (gst_event_new_segment_seek),
5340         (gst_event_new_flush):
5341         * gst/gstevent.h:
5342         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
5343         (_gst_message_free), (gst_message_get_type), (gst_message_new),
5344         (gst_message_new_eos), (gst_message_new_error),
5345         (gst_message_new_warning), (gst_message_new_tag),
5346         (gst_message_new_state_changed), (gst_message_new_application),
5347         (gst_message_get_structure), (gst_message_parse_tag),
5348         (gst_message_parse_state_changed), (gst_message_parse_error),
5349         (gst_message_parse_warning):
5350         * gst/gstmessage.h:
5351         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
5352         (gst_real_pad_set_property), (gst_pad_set_active),
5353         (gst_pad_is_active), (gst_pad_set_blocked_async),
5354         (gst_pad_set_blocked), (gst_pad_is_blocked),
5355         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
5356         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
5357         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
5358         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
5359         (gst_pad_link_filtered), (gst_pad_relink_filtered),
5360         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
5361         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
5362         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
5363         (gst_pad_set_caps), (gst_pad_configure_sink),
5364         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
5365         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
5366         (gst_real_pad_dispose), (gst_real_pad_finalize),
5367         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
5368         (gst_pad_event_default_dispatch), (gst_pad_event_default),
5369         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
5370         * gst/gstpad.h:
5371         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
5372         (pipeline_bus_handler), (gst_pipeline_change_state),
5373         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
5374         * gst/gstpipeline.h:
5375         * gst/gstprobe.h:
5376         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
5377         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
5378         (gst_queue_link_src), (gst_queue_bufferalloc),
5379         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
5380         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
5381         (gst_queue_loop), (gst_queue_handle_src_event),
5382         (gst_queue_handle_src_query), (gst_queue_src_activate),
5383         (gst_queue_change_state):
5384         * gst/gstqueue.h:
5385         * gst/gstscheduler.c: (gst_scheduler_init),
5386         (gst_scheduler_dispose), (gst_scheduler_create_task),
5387         (gst_scheduler_factory_create):
5388         * gst/gstscheduler.h:
5389         * gst/gststructure.c: (gst_structure_get_type),
5390         (gst_structure_copy_conditional):
5391         * gst/gststructure.h:
5392         * gst/gsttaginterface.h:
5393         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
5394         (gst_task_init), (gst_task_dispose), (gst_task_create),
5395         (gst_task_get_state), (gst_task_start), (gst_task_stop),
5396         (gst_task_pause):
5397         * gst/gsttask.h:
5398         * gst/gstthread.c:
5399         * gst/gstthread.h:
5400         * gst/gsttypes.h:
5401         * gst/schedulers/Makefile.am:
5402         * gst/schedulers/cothreads_compat.h:
5403         * gst/schedulers/entryscheduler.c:
5404         * gst/schedulers/faircothreads.c:
5405         * gst/schedulers/faircothreads.h:
5406         * gst/schedulers/fairscheduler.c:
5407         * gst/schedulers/gstbasicscheduler.c:
5408         * gst/schedulers/gstoptimalscheduler.c:
5409         * gst/schedulers/gthread-cothreads.h:
5410         * gst/schedulers/threadscheduler.c:
5411         (gst_thread_scheduler_task_get_type),
5412         (gst_thread_scheduler_task_class_init),
5413         (gst_thread_scheduler_task_init),
5414         (gst_thread_scheduler_task_start),
5415         (gst_thread_scheduler_task_stop),
5416         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
5417         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
5418         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
5419         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
5420         (plugin_init):
5421         * libs/gst/Makefile.am:
5422         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
5423         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
5424         (gst_file_pad_parent_set):
5425         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
5426         (gst_dp_event_from_packet):
5427         * tests/complexity.c: (main):
5428         * tests/mass_elements.c: (main):
5429         * testsuite/states/locked.c: (message_received), (main):
5430         * testsuite/states/parent.c: (main):
5431         * tools/gst-inspect.c: (print_element_flag_info),
5432         (print_implementation_info), (print_pad_info):
5433         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
5434         (main):
5435         * tools/gst-md5sum.c: (event_loop), (main):
5436         * tools/gst-typefind.c: (main):
5437         * tools/gst-xmlinspect.c: (print_element_info):
5438         Next big merge.
5439         Added GstBus for mainloop integration.
5440         Added GstMessage for sending notifications on the bus.
5441         Added GstTask as an abstraction for pipeline entry points.
5442         Removed GstThread.
5443         Removed Schedulers.
5444         Simplified GstQueue for multithreaded core.
5445         Made _link threadsafe, removed old capsnego.
5446         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
5447         Added pad blocking functions.
5448         Reworked scheduling functions in GstPad to prepare for
5449         scheduling updates soon.
5450         Moved events out of data stream.
5451         Simplified GstEvent types.
5452         Added return values to push/pull.
5453         Removed clocking from GstElement.
5454         Added prototypes for state change function for next merge.
5455         Removed iterate from bins and state change management.
5456         Fixed some elements, disabled others for now.
5457         Fixed -inspect and -launch.
5458         Added check for GstBus.
5459
5460 2005-03-10  Wim Taymans  <wim@fluendo.com>
5461
5462         * docs/design/part-MT-refcounting.txt:
5463         * docs/design/part-clocks.txt:
5464         * docs/design/part-gstelement.txt:
5465         * docs/design/part-gstobject.txt:
5466         * docs/design/part-standards.txt:
5467         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
5468         (gst_bin_remove_func), (gst_bin_remove):
5469         * gst/gstbin.h:
5470         * gst/gstbuffer.c:
5471         * gst/gstcaps.h:
5472         * testsuite/clock/clock1.c: (main):
5473         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
5474         (main):
5475         * testsuite/dlopen/loadgst.c: (do_test):
5476         * testsuite/refcounting/bin.c: (add_remove_test1),
5477         (add_remove_test2), (main):
5478         * testsuite/refcounting/element.c: (main):
5479         * testsuite/refcounting/element_pad.c: (main):
5480         * testsuite/refcounting/pad.c: (main):
5481         * tools/gst-launch.c: (sigint_handler_sighandler):
5482         * tools/gst-typefind.c: (main):
5483         Doc updates.
5484         Added doc about clock.
5485         removed gst_bin_iterate_recurse_up(), marked methods
5486         for removal.
5487         Fix more testsuites.
5488
5489 2005-03-09  Wim Taymans  <wim@fluendo.com>
5490
5491         * gst/gstpad.c: (gst_pad_get_direction),
5492         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
5493         (gst_pad_collect_valist):
5494         * testsuite/bins/interface.c: (main):
5495         * testsuite/caps/audioscale.c: (test_caps):
5496         * testsuite/caps/caps.c: (test1), (test2), (test3):
5497         * testsuite/caps/deserialize.c: (main):
5498         * testsuite/caps/enumcaps.c: (main):
5499         * testsuite/caps/filtercaps.c: (main):
5500         * testsuite/caps/intersect2.c: (main):
5501         * testsuite/caps/random.c: (main):
5502         * testsuite/caps/renegotiate.c: (my_fixate), (main):
5503         * testsuite/caps/sets.c: (check_caps):
5504         * testsuite/caps/simplify.c: (check_caps), (main):
5505         * testsuite/caps/subtract.c: (check_caps):
5506         Fix _pad_get_direction wrt ghostpads.
5507         Fix caps testsuite.
5508
5509 2005-03-09  Wim Taymans  <wim@fluendo.com>
5510
5511         * check/Makefile.am:
5512         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
5513         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
5514         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
5515         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
5516         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
5517         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
5518         (gst_bin_remove), (gst_bin_iterate_recurse_up),
5519         (bin_element_is_sink), (gst_bin_iterate_sinks),
5520         (gst_bin_iterate_all_by_interface):
5521         * gst/gstbin.h:
5522         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
5523         (gst_element_change_state), (gst_element_dispose),
5524         (gst_element_finalize), (gst_element_set_loop_function):
5525         * gst/gstelement.h:
5526         * gst/gstiterator.c: (find_custom_fold_func):
5527         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
5528         (gst_pad_collectv), (gst_pad_collect_valist),
5529         (gst_pad_template_new):
5530         * gst/gstpipeline.c: (gst_pipeline_class_init),
5531         (gst_pipeline_dispose), (gst_pipeline_set_property),
5532         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
5533         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
5534         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
5535         * gst/gstutils.h:
5536         * gst/schedulers/entryscheduler.c:
5537         * gst/schedulers/gstbasicscheduler.c:
5538         (gst_basic_scheduler_cothreaded_chain),
5539         (gst_basic_scheduler_chain_add_element):
5540         * testsuite/bins/interface.c: (main):
5541         Added GstBin test.
5542         Added GstSystemClock test.
5543         Implemented clock distribution code in GstBin.
5544         Implemented iterate sinks method for future use.
5545         Rearranged gstelement.h
5546         Fix GstIterator comparison bug.
5547         Moved some code to GstPipeline, mostly clocking related.
5548
5549 2005-03-09  Wim Taymans  <wim@fluendo.com>
5550
5551         * configure.ac:
5552         * gst/gst_private.h:
5553         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
5554         (gst_bin_remove_func), (gst_bin_remove),
5555         (gst_bin_get_by_name_recurse_up):
5556         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
5557         (gst_clock_id_compare_func), (gst_clock_id_wait),
5558         (gst_clock_id_wait_async), (gst_clock_init),
5559         (gst_clock_adjust_unlocked), (gst_clock_get_time):
5560         * gst/gstelement.h:
5561         * gst/gstinfo.c: (_gst_debug_init):
5562         * gst/gstobject.h:
5563         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
5564         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
5565         * gst/gstpad.h:
5566         Bump version number, we're now 0.9.0
5567         Add future debugging category.
5568         Fix NULL _unref() in _get_by_name_recurse_up
5569         Rearrange gstpad.h.
5570         Update some docs.
5571
5572 2005-03-08  Wim Taymans  <wim@fluendo.com>
5573
5574         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
5575         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5576         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
5577         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
5578         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
5579         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
5580         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
5581         * gst/elements/gstidentity.c: (gst_identity_class_init):
5582         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
5583         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
5584         * gst/elements/gstshaper.c: (gst_shaper_class_init):
5585         * gst/elements/gststatistics.c: (gst_statistics_class_init):
5586         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
5587         (gst_tee_link):
5588         * gst/gstelement.c: (gst_element_class_init),
5589         (gst_element_base_class_init), (gst_element_init),
5590         (gst_element_get_random_pad), (gst_element_wait_state_change),
5591         (gst_element_change_state), (gst_element_dispose),
5592         (gst_element_finalize), (gst_element_set_loop_function):
5593         * gst/gstelement.h:
5594         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
5595         * gst/gstthread.c: (gst_thread_class_init),
5596         (gst_thread_release_children_locks), (gst_thread_change_state):
5597         * gst/schedulers/gstbasicscheduler.c:
5598         (gst_basic_scheduler_loopfunc_wrapper),
5599         (gst_basic_scheduler_chain_wrapper),
5600         (gst_basic_scheduler_src_wrapper),
5601         (gst_basic_scheduler_remove_element):
5602         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
5603         Remove threadsafe properties. Fix elements because GObject
5604         complains when installing a property before declaring a
5605         set/get_property handler.
5606         Rearrange gstelement.h file, use STATE macros for state locks.
5607         Free mutexes in the finalize method instead of dispose.
5608
5609 2005-03-08  Wim Taymans  <wim@fluendo.com>
5610
5611         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
5612         * gst/gstthread.c: (gst_thread_release_children_locks):
5613         Added parentage check.
5614         Fix build og GstThread again.
5615
5616 2005-03-08  Wim Taymans  <wim@fluendo.com>
5617
5618         * docs/design/part-MT-refcounting.txt:
5619         * docs/design/part-conventions.txt:
5620         * docs/design/part-gstobject.txt:
5621         * docs/design/part-relations.txt:
5622         * docs/design/part-standards.txt:
5623         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
5624         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
5625         (gst_bin_get_by_name), (gst_bin_get_by_interface),
5626         (gst_bin_iterate_all_by_interface):
5627         * gst/gstbuffer.h:
5628         * gst/gstclock.h:
5629         * gst/gstelement.c: (gst_element_class_init),
5630         (gst_element_change_state), (gst_element_set_loop_function):
5631         * gst/gstelement.h:
5632         * gst/gstiterator.c:
5633         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
5634         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
5635         (gst_object_dispatch_properties_changed), (gst_object_set_name),
5636         (gst_object_set_parent), (gst_object_unparent),
5637         (gst_object_check_uniqueness):
5638         * gst/gstobject.h:
5639         Docs updates, clean up some headers.
5640
5641 2005-03-07  Wim Taymans  <wim@fluendo.com>
5642
5643         * check/.cvsignore:
5644         * check/Makefile.am:
5645         * check/gst-libs/.cvsignore:
5646         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
5647         * check/gst/.cvsignore:
5648         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
5649         (START_TEST), (gstbus_suite), (main):
5650         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
5651         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
5652         (gst_data_suite), (main):
5653         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
5654         (add_fold_func), (gstiterator_suite), (main):
5655         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
5656         (thread_name_object), (thread_name_object_default),
5657         (gst_object_name_compare), (gst_object_suite), (main):
5658         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
5659         (gst_pad_suite), (main):
5660         * check/gstcheck.c: (gst_check_log_message_func),
5661         (gst_check_log_critical_func), (gst_check_init):
5662         * check/gstcheck.h:
5663         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
5664         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
5665         Added checks.
5666
5667 2005-03-07  Wim Taymans  <wim@fluendo.com>
5668
5669         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
5670         (gst_list_iterator_next), (gst_list_iterator_resync),
5671         (gst_list_iterator_free), (gst_iterator_new_list),
5672         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
5673         (gst_iterator_free), (gst_iterator_push), (filter_next),
5674         (filter_resync), (filter_uninit), (filter_free),
5675         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
5676         (gst_iterator_foreach), (find_custom_fold_func),
5677         (gst_iterator_find_custom):
5678         * gst/gstiterator.h:
5679         Added missing files.
5680
5681 2005-03-07  Wim Taymans  <wim@fluendo.com>
5682
5683         * Makefile.am:
5684         * configure.ac:
5685         * docs/design/part-MT-refcounting.txt:
5686         * docs/design/part-conventions.txt:
5687         * docs/design/part-gstobject.txt:
5688         * docs/design/part-relations.txt:
5689         * examples/mixer/mixer.c: (main):
5690         * examples/thread/thread.c: (eos), (main):
5691         * gst/Makefile.am:
5692         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
5693         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
5694         (gst_spider_plug_from_srcpad):
5695         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
5696         (gst_spider_identity_change_state),
5697         (gst_spider_identity_sink_loop_type_finding):
5698         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
5699         * gst/elements/gstidentity.c: (gst_identity_init):
5700         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
5701         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
5702         * gst/elements/gsttypefindelement.c: (free_entry):
5703         * gst/gst.c:
5704         * gst/gst.h:
5705         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
5706         (gst_bin_set_clock_func), (gst_bin_auto_clock),
5707         (gst_bin_set_index), (gst_bin_set_element_sched),
5708         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
5709         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
5710         (gst_bin_iterate_elements), (iterate_child_recurse),
5711         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
5712         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
5713         (compare_interface), (gst_bin_get_by_interface),
5714         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
5715         * gst/gstbin.h:
5716         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
5717         (gst_buffer_default_free), (gst_buffer_default_copy),
5718         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
5719         (gst_buffer_create_sub):
5720         * gst/gstbuffer.h:
5721         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
5722         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
5723         (gst_caps_unref), (gst_static_caps_get),
5724         (gst_caps_remove_and_get_structure), (gst_caps_append),
5725         (gst_caps_append_structure), (gst_caps_remove_structure),
5726         (gst_caps_copy_nth), (gst_caps_set_simple),
5727         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
5728         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
5729         (gst_caps_structure_intersect_field), (gst_caps_intersect),
5730         (gst_caps_structure_subtract_field), (gst_caps_subtract),
5731         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
5732         (gst_caps_structure_figure_out_union),
5733         (gst_caps_switch_structures), (gst_caps_do_simplify),
5734         (gst_caps_replace), (gst_caps_from_string),
5735         (gst_caps_copy_conditional):
5736         * gst/gstcaps.h:
5737         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
5738         (_gst_clock_id_free), (gst_clock_id_unref),
5739         (gst_clock_id_compare_func), (gst_clock_id_wait),
5740         (gst_clock_id_wait_async), (gst_clock_class_init),
5741         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
5742         (gst_clock_get_time), (gst_clock_set_time_adjust),
5743         (gst_clock_set_property), (gst_clock_get_property):
5744         * gst/gstclock.h:
5745         * gst/gstcompat.h:
5746         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
5747         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
5748         * gst/gstdata.h:
5749         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
5750         (gst_element_requires_clock), (gst_element_provides_clock),
5751         (gst_element_set_clock), (gst_element_clock_wait),
5752         (gst_element_wait), (gst_element_set_time_delay),
5753         (gst_element_is_indexable), (gst_element_add_pad),
5754         (gst_element_add_ghost_pad), (gst_element_remove_pad),
5755         (pad_compare_name), (gst_element_get_static_pad),
5756         (gst_element_request_pad), (gst_element_get_request_pad),
5757         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
5758         (gst_element_class_get_pad_template_list),
5759         (gst_element_class_get_pad_template), (gst_element_error_func),
5760         (gst_element_get_random_pad), (gst_element_get_event_masks),
5761         (gst_element_send_event), (gst_element_seek),
5762         (gst_element_get_query_types), (gst_element_query),
5763         (gst_element_get_formats), (gst_element_convert),
5764         (gst_element_is_locked_state), (gst_element_set_locked_state),
5765         (gst_element_sync_state_with_parent), (gst_element_change_state),
5766         (gst_element_finalize), (gst_element_yield),
5767         (gst_element_interrupt), (gst_element_set_scheduler),
5768         (gst_element_get_scheduler), (gst_element_set_loop_function):
5769         * gst/gstelement.h:
5770         * gst/gstevent.h:
5771         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
5772         (gst_format_get_by_nick), (gst_format_get_details),
5773         (gst_format_iterate_definitions):
5774         * gst/gstformat.h:
5775         * gst/gstindex.c: (gst_index_gtype_resolver):
5776         * gst/gstinfo.c:
5777         * gst/gstinfo.h:
5778         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
5779         (gst_mem_chunk_free):
5780         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
5781         (gst_object_ref), (gst_object_unref), (gst_object_sink),
5782         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
5783         (gst_object_dispatch_properties_changed),
5784         (gst_object_set_name_default), (gst_object_set_name),
5785         (gst_object_get_name), (gst_object_set_name_prefix),
5786         (gst_object_get_name_prefix), (gst_object_set_parent),
5787         (gst_object_get_parent), (gst_object_unparent),
5788         (gst_object_check_uniqueness), (gst_object_save_thyself),
5789         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
5790         (gst_object_set_property), (gst_object_get_property),
5791         (gst_object_get_path_string):
5792         * gst/gstobject.h:
5793         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
5794         (gst_real_pad_init), (gst_real_pad_get_property),
5795         (gst_pad_custom_new), (gst_pad_get_direction),
5796         (gst_pad_set_active), (gst_pad_is_active),
5797         (gst_pad_set_event_function), (gst_pad_is_linked),
5798         (gst_pad_link_free), (gst_pad_link_intersect),
5799         (gst_pad_link_fixate), (gst_pad_set_caps),
5800         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
5801         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
5802         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
5803         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
5804         (gst_pad_get_caps), (gst_pad_peer_get_caps),
5805         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
5806         (gst_pad_realize), (gst_pad_get_allowed_caps),
5807         (gst_real_pad_dispose), (gst_real_pad_finalize),
5808         (gst_pad_collectv), (gst_pad_collect_valist),
5809         (gst_pad_template_dispose), (gst_pad_template_new),
5810         (gst_pad_get_internal_links):
5811         * gst/gstpad.h:
5812         * gst/gstpipeline.c: (gst_pipeline_dispose),
5813         (gst_pipeline_change_state):
5814         * gst/gstpipeline.h:
5815         * gst/gstplugin.c:
5816         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
5817         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
5818         * gst/gstpluginfeature.h:
5819         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5820         * gst/gstquery.c: (_gst_query_type_initialize),
5821         (gst_query_type_register), (gst_query_type_get_by_nick),
5822         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
5823         * gst/gstquery.h:
5824         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
5825         * gst/gstscheduler.c: (gst_scheduler_add_element),
5826         (gst_scheduler_factory_create):
5827         * gst/gststructure.c: (gst_structure_set_parent_refcount),
5828         (gst_structure_free), (gst_structure_set_name),
5829         (gst_structure_id_set_value), (gst_structure_set_value),
5830         (gst_structure_set_valist), (gst_structure_remove_field),
5831         (gst_structure_remove_fields),
5832         (gst_structure_remove_fields_valist),
5833         (gst_structure_remove_all_fields), (gst_structure_foreach),
5834         (gst_structure_map_in_place),
5835         (gst_caps_structure_fixate_field_nearest_int),
5836         (gst_caps_structure_fixate_field_nearest_double):
5837         * gst/gststructure.h:
5838         * gst/gstsystemclock.c: (gst_system_clock_class_init),
5839         (gst_system_clock_init), (gst_system_clock_dispose),
5840         (gst_system_clock_async_thread),
5841         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
5842         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
5843         * gst/gstsystemclock.h:
5844         * gst/gsttag.c: (gst_tag_list_add_value_internal),
5845         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
5846         * gst/gsttaginterface.c:
5847         * gst/gstthread.c: (gst_thread_dispose),
5848         (gst_thread_release_children_locks), (gst_thread_change_state),
5849         (gst_thread_main_loop):
5850         * gst/gsttrashstack.h:
5851         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
5852         * gst/gsttypes.h:
5853         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
5854         (gst_element_request_pad), (gst_element_get_pad_from_template),
5855         (gst_element_request_compatible_pad),
5856         (gst_element_get_compatible_pad_filtered),
5857         (gst_element_get_compatible_pad), (gst_element_state_get_name),
5858         (gst_element_link_pads_filtered), (gst_element_link_filtered),
5859         (gst_element_link_many), (gst_element_link),
5860         (gst_element_link_pads), (gst_element_unlink_pads),
5861         (gst_element_unlink_many), (gst_element_unlink),
5862         (gst_pad_can_link_filtered), (gst_pad_can_link),
5863         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
5864         (gst_object_default_error), (gst_bin_add_many),
5865         (gst_bin_remove_many), (gst_element_populate_std_props),
5866         (gst_element_class_install_std_props), (gst_buffer_merge),
5867         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
5868         (link_fold_func), (gst_pad_proxy_setcaps):
5869         * gst/gstutils.h:
5870         * gst/gstvalue.c: (gst_value_deserialize_string):
5871         * gst/parse/grammar.y:
5872         * gst/schedulers/gstbasicscheduler.c:
5873         (gst_basic_scheduler_cothreaded_chain),
5874         (gst_basic_scheduler_chain_recursive_add),
5875         (gst_basic_scheduler_pad_link):
5876         * gst/schedulers/gstoptimalscheduler.c:
5877         (get_group_schedule_function),
5878         (gst_opt_scheduler_state_transition),
5879         (gst_opt_scheduler_add_element), (element_get_reachables_func):
5880         * libs/gst/bytestream/bytestream.c:
5881         * libs/gst/dataprotocol/dataprotocol.c:
5882         (gst_dp_header_from_buffer):
5883         * po/nb.po:
5884         * po/ru.po:
5885         * tests/threadstate/threadstate2.c: (eos):
5886         * tools/gst-compprep.c: (main):
5887         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
5888         (print_pad_info), (print_children_info):
5889         * tools/gst-launch.c: (idle_func), (main):
5890         * tools/gst-md5sum.c: (idle_func), (main):
5891         * tools/gst-xmlinspect.c: (print_element_info):
5892         First THREADED backport attempt, focusing on adding locks and
5893         making sure the API is threadsafe. Needs more work. More docs
5894         follow this week.
5895
5896 2005-02-24  Andy Wingo  <wingo@pobox.com>
5897
5898         * tests/bench-complexity.scm:
5899         * tests/complexity.gnuplot: New files, good for running complexity
5900         benchmarks.
5901
5902         * tests/Makefile.am:
5903         * tests/complexity.c: New test, sets up N elements, at each level
5904         teeing into M streams per element. Eeeenteresting.
5905
5906         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
5907         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
5908         running bench-mass_elements.scm.
5909
5910         * tests/bench-mass_elements.scm: New script, runs mass_elements
5911         for various numbers of identities, outputting the results to a
5912         file. Requires guile 1.6. Just for testing.
5913
5914 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5915
5916         * gst/schedulers/fairscheduler.c:
5917           compile with debug disabled
5918
5919 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
5920
5921         * configure.ac:
5922           hunting season on 0.9 is now OPEN
5923
5924 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
5925
5926         * docs/libs/tmpl/gstcontrol.sgml:
5927         * docs/libs/tmpl/gstdparam.sgml:
5928         * docs/libs/tmpl/gstdplinint.sgml:
5929         * docs/libs/tmpl/gstdpman.sgml:
5930         * docs/libs/tmpl/gstdpsmooth.sgml:
5931         * docs/libs/tmpl/gstunitconvert.sgml:
5932           more docs for the state of dparams
5933
5934 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5935
5936         * gst/gstelementfactory.c: (gst_element_factory_create):
5937         * gst/gstobject.c: (gst_object_init),
5938         (gst_object_set_name_default), (gst_object_set_name):
5939           name objects by default, not in gst_element_factory_create. Allows
5940           using elements created with g_object_new. (fixes #167283)
5941
5942 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5943
5944         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
5945           make the time that debugging functions print relative to when
5946           gst_init was called
5947
5948 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
5949
5950         * gst/gsttaginterface.c:
5951           Fix inline docs: tag setter vararg functions are NULL-terminated,
5952           GST_TAG_INVALID doesn't exist any more.
5953
5954 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5955
5956         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
5957         Allocate the 1 byte more memory that was forgotten!!!!!
5958         fixes memory corruption on 64bit platforms
5959
5960 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
5961
5962         * docs/pwg/building-pads.xml:
5963         * docs/pwg/intro-basics.xml:
5964           fixed a few typos, relabeled introductionary list of types
5965         * docs/random/ensonic/dparams.txt:
5966           more notes abut dparam changes
5967         * libs/gst/control/dparam.c: (gst_dparam_attach):
5968         * libs/gst/control/dparammanager.c:
5969         * libs/gst/control/dparammanager.h:
5970           - many comments and notes on dparam implementation
5971           - new dparams are were not initialized to the default value
5972             from param spec
5973
5974 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
5975
5976         submitted by: Peter Astakhov
5977
5978         * po/LINGUAS:
5979         * po/ru.po:
5980           adding Russian translation
5981
5982 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5983
5984         * configure.ac:
5985         * docs/gst/Makefile.am:
5986         * docs/libs/Makefile.am:
5987           make sure popt is added to gtk-doc flags.  Fixes #147782.
5988
5989 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
5990
5991         * docs/faq/using.xml:
5992           Fix typo in FAQ (artssink => artsdsink)
5993
5994 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5995
5996         * tools/gst-launch.1.in:
5997           Fix typo (#166699).
5998
5999 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
6000
6001         * docs/faq/using.xml:
6002           Add -v argument to fakesrc/fakesink gst-launch line,
6003           so that the promised output will actually show up.
6004
6005 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6006
6007         * gst/gstthread.c: (gst_thread_change_state):
6008           Implement state-change error handling (#166073).
6009
6010 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6011
6012         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
6013           Release interrupt after handling (#166250).
6014
6015 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6016
6017         * configure.ac:
6018           back to HEAD
6019
6020 === release 0.8.9 ===
6021
6022 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6023
6024         * NEWS:
6025         * RELEASE:
6026         * configure.ac:
6027           releasing 0.8.9, "Like Eating Glass"
6028
6029 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6030
6031         submitted by: Clytie Siddall
6032
6033         * po/vi.po: Added Vietnamese translation
6034
6035 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
6036
6037         patch by: Tim Philipp-Müller
6038
6039         * configure.ac:
6040         * gst/gstpad.c:
6041           unref data when probe function returns FALSE.  Fixes #166362
6042
6043 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6044
6045         * gst/gst.c: (gst_init_get_popt_table):
6046           Fix typo (#166269).
6047
6048 2005-02-04  Andy Wingo  <wingo@pobox.com>
6049
6050         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
6051         the debugging on whether the caps are compatible.
6052
6053 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6054
6055         * docs/manual/basics-elements.xml:
6056           Fix two typos.
6057
6058 2005-02-02  Wim Taymans  <wim@fluendo.com>
6059
6060         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
6061         (schedule_chain), (get_invalid_call), (chain_invalid_call),
6062         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
6063         Remove some FIXMEs after analysing and commenting why they
6064         are not issues.
6065
6066 2005-02-02  Wim Taymans  <wim@fluendo.com>
6067
6068         * gst/schedulers/gstoptimalscheduler.c:
6069         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
6070         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
6071         (get_invalid_call), (chain_invalid_call),
6072         (get_group_schedule_function), (loop_group_schedule_function),
6073         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
6074         (gst_opt_scheduler_state_transition),
6075         (gst_opt_scheduler_add_element),
6076         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
6077         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
6078         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
6079         (gst_opt_scheduler_show):
6080         Added lock to protect scheduler data structures.
6081
6082 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6083
6084         * testsuite/threads/threadi.c: (cb_data):
6085           Fix buglet in test.
6086
6087 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6088
6089         * testsuite/threads/Makefile.am:
6090         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
6091           On Wim's request, split the test in three separately-compiled
6092           tests that each test a very specific bug. Two of them still fail,
6093           will create bugs for those. threadi.c indicates why they fail.
6094
6095 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6096
6097         * gst/schedulers/gstoptimalscheduler.c:
6098         (get_group_schedule_function):
6099           Try to work with the threading mess that queue_link is.
6100
6101 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6102
6103         * gst/gstbin.c: (gst_bin_remove_func):
6104           Explicitely make an element release locks in a group when being
6105           remove from a bin.
6106         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
6107           If there's no scheduler, always return immediately (similar to
6108           gst_element_interrupt).
6109
6110 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6111
6112         * gst/gstbin.c: (gst_bin_child_state_change_func):
6113           Remove a piece of code that could never be reached.
6114         * docs/gst/gstreamer-sections.txt:
6115         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
6116         (gst_pad_call_get_function):
6117         * gst/gstpad.h:
6118         * testsuite/pad/Makefile.am:
6119           Fix #150546, enable tests.
6120
6121 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6122
6123         * docs/pwg/advanced-types.xml:
6124           Fix description for buffer-frames=0.
6125         * docs/gst/tmpl/gstbin.sgml:
6126         * gst/gstbin.c: (gst_bin_child_state_change_func),
6127         (gst_bin_change_state), (gst_bin_change_state_norecurse):
6128         * gst/gstbin.h:
6129         * testsuite/threads/Makefile.am:
6130         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
6131         (cb_state), (cb_play), (main):
6132           Fix non-recursive state changes to *really* change the state
6133           of the object, and not just call parent_class->state_change.
6134           Fix a lot of lockups caused by this. Fixes #132775. Add test
6135           for the problem. Also enable test to show #142588 (fixed).
6136         * gst/gstthread.c: (gst_thread_change_state),
6137         (gst_thread_child_state_change):
6138           Don't exit the thread if we go to NULL and are inside thread
6139           context. Instead, return control to the main thread context
6140           and exit from there.
6141         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
6142           Don't unset virtual functions, since those may still be used.
6143           That's not necessarily correct, but suffices for now.
6144         * configure.ac:
6145         * testsuite/Makefile.am:
6146         * testsuite/pad/Makefile.am:
6147         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
6148         (gst_test_sink_base_init), (gst_test_sink_chain),
6149         (gst_test_sink_init), (main):
6150         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
6151         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
6152         (main):
6153         * testsuite/pad/link.c: (gst_test_element_class_init),
6154         (gst_test_element_base_init), (gst_test_src_get),
6155         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
6156         (gst_test_filter_loop), (gst_test_filter_init),
6157         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
6158         (cb_error), (main):
6159           Add tests to show #150546. Pass, but should fail (currently
6160           disabled from the testsuite).
6161         * gst/gstscheduler.c: (gst_scheduler_dispose):
6162           Dereference child schedulers on dispose (#94464).
6163         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
6164           Fix typo.
6165         * testsuite/threads/thread.c: (main):
6166           Add more debug.
6167
6168 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6169
6170         * gst/gstpad.c: (gst_pad_push):
6171           Oops, revert previous commit, broke testsuite...
6172
6173 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6174
6175         * gst/gstpad.c: (gst_pad_push):
6176           Add check that the pad on which the push is performed is not a
6177           get-based pad (#150546).
6178
6179 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6180
6181         * gst/elements/gsttypefindelement.c:
6182         (gst_type_find_element_handle_event):
6183           Fix buffer pushing if stream EOSes during typefinding.
6184
6185 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
6186
6187         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6188
6189         * gst/gstvalue.c: (gst_string_wrap):
6190           Allow NULL-strings as argument (#165365).
6191
6192 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
6193
6194         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6195
6196         * gst/schedulers/faircothreads.c:
6197         (gst_fair_scheduler_cothread_queue_show):
6198           Fix build without debug enabled.
6199
6200 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
6201
6202         * docs/gst/gstreamer-sections.txt:
6203         * docs/libs/gstreamer-libs-docs.sgml:
6204         * docs/libs/gstreamer-libs-sections.txt:
6205         * docs/libs/tmpl/gstcontrol.sgml:
6206         * docs/libs/tmpl/gstdparam.sgml:
6207         * docs/libs/tmpl/gstdplinint.sgml:
6208         * docs/libs/tmpl/gstdpman.sgml:
6209         * docs/libs/tmpl/gstdpsmooth.sgml:
6210         * docs/libs/tmpl/gstputbits.sgml:
6211         * docs/libs/tmpl/gstunitconvert.sgml:
6212         * libs/gst/control/dparam.c:
6213         * libs/gst/control/dparam.h:
6214         * libs/gst/control/dparammanager.c:
6215         (gst_dpman_add_required_dparam_callback),
6216         (gst_dpman_add_required_dparam_direct),
6217         (gst_dpman_add_required_dparam_array),
6218         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
6219         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
6220         (gst_dpman_get_manager)
6221           restructured DParam docs
6222
6223 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
6224
6225         * gst-element-check.m4:
6226           Only check for gst-inspect if we haven't already
6227           found it in previous element check runs
6228
6229 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
6230
6231         * docs/gst/Makefile.am:
6232         * docs/libs/Makefile.am:
6233           fixed install rules to treat style.css as optional
6234
6235 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
6236
6237         * docs/gst/Makefile.am:
6238         * docs/libs/Makefile.am:
6239           install style.css along with docs
6240         * docs/gst/tmpl/gstbin.sgml:
6241         * docs/gst/tmpl/gstclock.sgml:
6242         * docs/gst/tmpl/gstdata.sgml:
6243         * docs/gst/tmpl/gstelement.sgml:
6244         * gst/gstbin.h:
6245         * gst/gstelement.c: (gst_element_class_init):
6246         * gst/gstelement.h:
6247           fixing incomplete docs
6248
6249 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
6250
6251         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
6252           Don't unref seek event twice when fflush() fails
6253           
6254 2005-01-22  David Schleef  <ds@schleef.org>
6255
6256         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
6257
6258 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
6259
6260         * docs/gst/Makefile.am:
6261         * docs/libs/Makefile.am:
6262           added params for deprecation guards
6263         * gst/gst.c:
6264         * gst/gst.h:
6265         * gst/gsterror.c: (_gst_resource_errors_init),
6266         (_gst_stream_errors_init):
6267         * gst/gsterror.h:
6268           documented some more enums
6269
6270 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
6271         * gst/autoplug/gstspideridentity.c:
6272         Cosmetic fix - spider_find_peek should be static
6273         * gst/parse/parse.l:
6274         Applying fix for #164261
6275
6276 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
6277
6278         * docs/gst/gstreamer-sections.txt:
6279         * docs/gst/tmpl/gstplugin.sgml:
6280         * docs/libs/gstreamer-libs-sections.txt:
6281         * docs/libs/tmpl/gstcontrol.sgml:
6282         * gst/gstbuffer.h:
6283         * gst/gsttag.h:
6284         * gst/gstvalue.c:
6285           added docs for the TAG defines
6286
6287 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6288
6289         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
6290           Only unref entry if there is an entry.
6291
6292 2005-01-17  Wim Taymans  <wim@fluendo.com>
6293
6294         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6295         (remove_from_group), (schedule_group), (normalize_group),
6296         (gst_opt_scheduler_iterate):
6297         Also ref/unref decoupled elements before iterating the
6298         group since they are not added to the list of elements.
6299
6300 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6301
6302         * docs/manual/highlevel-components.xml:
6303           Add subtitle/streamselection as new features to playbin.
6304
6305 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6306
6307         * docs/manual/manual.xml:
6308           Re-enable dataaccess docs (oops).
6309
6310 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6311
6312         * docs/pwg/advanced-types.xml:
6313         * docs/random/mimetypes:
6314           Add documentation on libsndfile types (#163309), by Steve Baker
6315           <steve@stevebaker.org>.
6316         * gst/gstelement.c: (gst_element_release_request_pad):
6317           If an element has no explicit function, just remove the pad.
6318
6319 2005-01-17  Luca Ognibene  <luogni@tin.it>
6320
6321         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6322
6323         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
6324           Fix memleak (#163801).
6325
6326 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6327
6328         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
6329           I think this is actually more correct...
6330
6331 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6332
6333         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
6334           Another workaround for memory access while destroyed in callback.
6335           Please, someone with refcount knowledge, have a look at this.
6336
6337 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6338
6339         * docs/faq/faq.xml:
6340         * docs/faq/legal.xml:
6341           move the legal Q&A here
6342
6343 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6344
6345         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
6346         (gst_tee_request_new_pad):
6347           Fix negotiation.
6348
6349 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
6350
6351         * docs/random/omega/caps2:
6352         * testsuite/caps/caps_strings:
6353           replace framerate aproximations by their real value
6354           (24000/1001, 30000/1001, 60000/1001)
6355           Partially fixes bug #164049
6356
6357 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6358
6359         * docs/gst/Makefile.am:
6360           don't fail on the stupid GstPoptOption
6361
6362 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6363
6364         * gst/gstpad.h:
6365         * gst/gstprobe.c:
6366           allow probes to work on ghost pads by realizing the pad
6367           probe debugging
6368
6369 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6370
6371         * docs/gst/gstreamer-sections.txt:
6372         * docs/gst/tmpl/gstpad.sgml:
6373         * gst/gstpad.c: (gst_pad_set_active_recursive):
6374         * gst/gstpad.h:
6375           Add gst_pad_set_active_recursive().
6376
6377 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6378
6379         * docs/random/release:
6380           updates
6381         * gst/gst_private.h:
6382         * gst/gstinfo.c:
6383         * gst/gstobject.c:
6384           move deep_notify logging to a new category
6385         * gst/gstprobe.c:
6386         * gst/gstprobe.h:
6387           add stuff so bindings can wrap probes
6388
6389 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
6390
6391         * gst/gstplugin.c: (gst_plugin_load):
6392           Fix plugin loading if plugin/lib was already loaded. Fixes
6393           #163383
6394
6395 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
6396
6397         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6398
6399         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
6400           Protect plugin loading by a mutex so it's threadsafe. Fixes
6401           #163234.
6402
6403 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6404
6405         * gst/gstevent.c: (_gst_event_copy):
6406           Reference source object when copying events, since it'll be
6407           dereferenced on event dereferencing as well.
6408
6409 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6410
6411         * docs/gst/gstreamer-sections.txt:
6412         * docs/gst/tmpl/gstevent.sgml:
6413         * gst/gstevent.c: (gst_event_new_filler_stamped),
6414         (gst_event_filler_get_duration):
6415         * gst/gstevent.h:
6416           Add two new functions for filler events (which are used to
6417           synchronize streams if one of them is not having any data
6418           for a while) without interrupting the actual data-stream.
6419           Basically a no-op.
6420         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
6421         (gst_queue_link_sink), (gst_queue_link_src),
6422         (gst_queue_change_state):
6423           Allow for renegotiation while filled. Required for stream
6424           switching while playing.
6425
6426 2005-01-08  Benjamin Otte  <otte@gnome.org>
6427
6428         * gst/gstelement.c: (gst_element_link_many):
6429           fix up g_return_if_fail's
6430         * po/LINGUAS:
6431         * po/de.po:
6432           add German translation, that was somehow not included
6433
6434 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
6435
6436         * docs/random/mimetypes:
6437           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
6438           do not add them to riff-lib as they are not common
6439
6440 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6441
6442         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
6443           Check for existence of probe after performing the probe before
6444           re-accessing it to prevent segfaults caused by removal of the
6445           probe in the callback.
6446
6447 2005-01-05  David Schleef  <ds@schleef.org>
6448
6449         * testsuite/registry/Makefile.am:
6450         * testsuite/registry/gst-print-formats.c:
6451         (print_pad_templates_info), (print_element_list),
6452         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
6453         (g_list_uniqify), (get_pad_templates_info),
6454         (get_element_mime_list), (print_mime_list), (main): A little
6455         program that looks through the registry to find elements of
6456         a given type.  Not particularly interesting as a test, except
6457         that there's no other test covering the same area.
6458
6459 2005-01-05  David Schleef  <ds@schleef.org>
6460
6461         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
6462         (fault_handler_sigaction), (fault_spin),
6463         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
6464         in signal.h-type signal handlers by not calling forbidden functions,
6465         including gst_element_set_state().
6466
6467 2005-01-05  David Schleef  <ds@schleef.org>
6468
6469         * gst/gstvalue.h: Mark _gst_reserved[] as private
6470
6471 2005-01-05  David Schleef  <ds@schleef.org>
6472
6473         * gst/gstvalue.c: Fix doc build problem.
6474
6475 2005-01-05  David Schleef  <ds@schleef.org>
6476
6477         * gst/gstvalue.c: Add some documentation
6478
6479 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
6480
6481         * docs/README:
6482           another shell oneliner for empty return value docs
6483         * gst/gstcaps.c:
6484         * gst/gstvalue.c:
6485         * libs/gst/control/dparam.c:
6486           more doc fixes (parameters and return values)
6487
6488 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
6489
6490         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6491
6492         * gst/gstregistry.h:
6493         * gst/registries/gstxmlregistry.c:
6494           Fix macro's for Mingw (fixes #162276).
6495
6496 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
6497
6498         * docs/README:
6499           quick shell oneliner to find undocumented members
6500         * docs/gst/tmpl/gstplugin.sgml:
6501         * docs/gst/tmpl/gstscheduler.sgml:
6502         * docs/gst/tmpl/gstthread.sgml:
6503           more enumtypes cleanup
6504         * gst/gsterror.h:
6505           activated documentation comments, now someone needs to document
6506           the enums :(
6507
6508 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6509
6510         * docs/manual/manual.xml:
6511           Add dataaccess part (doh!).
6512
6513 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6514
6515         * docs/manual/advanced-autoplugging.xml:
6516           Fix typo (intiate -> initiate).
6517
6518 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6519
6520         * docs/random/bbb/streamselection:
6521           Add some notes on how to handle multi-subtitle/-audio streams.
6522
6523 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
6524
6525         * docs/gst/gstreamer-docs.sgml:
6526         * docs/gst/gstreamer-sections.txt:
6527         * docs/gst/tmpl/gstenumtypes.sgml:
6528         * docs/gst/tmpl/gsterror.sgml:
6529         * docs/gst/tmpl/gstevent.sgml:
6530         * docs/gst/tmpl/gstpad.sgml:
6531         * docs/gst/tmpl/gstpadtemplate.sgml:
6532         * docs/gst/tmpl/gstthread.sgml:
6533           removed gstenumtypes section from docs and put all the enums into
6534           their sections
6535
6536 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6537
6538         * gst/gstplugin.c:
6539           document gst_library_load a bit more (riff special case + return
6540           value if already loaded)
6541         * testsuite/bytestream/filepadsink.c:
6542           plugin name is 'gstbytestream', not 'bytestream'
6543
6544 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6545
6546         * docs/random/bbb/subtitles:
6547           Add some first mind rumblings on proper subtitle support.
6548
6549 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
6550
6551         * po/ca.po:
6552         * po/sv.po:
6553           updated translations
6554
6555 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6556
6557         * docs/manual/advanced-dataaccess.xml:
6558           Add section on how to use fakesrc/fakesink/identity in your
6559           application, plus section on how to embed plugins. Also mention
6560           probes.
6561         * docs/manual/appendix-checklist.xml:
6562         * docs/manual/appendix-debugging.xml:
6563         * docs/manual/appendix-gnome.xml:
6564         * docs/manual/appendix-integration.xml:
6565           Debug -> checklist, GNOME -> integration, add sections on Linux,
6566           KDE integration and add other things useful for application
6567           development.
6568         * docs/manual/manual.xml:
6569           Remove some fixmes, update some file pointers.
6570         * docs/pwg/appendix-checklist.xml:
6571           Fix typo.
6572         * docs/pwg/building-boiler.xml:
6573           Remove ugly header and add commented fixme.
6574         * docs/pwg/pwg.xml:
6575           Add fixme.
6576         * examples/manual/Makefile.am:
6577           Add example for added docs.
6578
6579 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
6580
6581         * configure.ac:
6582           back to HEAD
6583
6584 === release 0.8.8 ===
6585
6586 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
6587
6588         * NEWS:
6589         * RELEASE:
6590         * configure.ac:
6591           Releasing 0.8.8, "I'll Take Care Of You"
6592
6593 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
6594
6595         * configure.ac:
6596           second prerelease
6597
6598 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
6599
6600         patch by: Wim Taymans
6601
6602         * gst/gstbin.c:
6603           Fix for #159852 - make iterate emission threadsafe
6604
6605 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
6606
6607         * docs/faq/cvs.xml:
6608           notes about new fdo account request
6609
6610 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
6611
6612         * docs/gst/gstreamer-docs.sgml:
6613         * docs/gst/tmpl/gstenumtypes.sgml:
6614         * docs/gst/tmpl/gstplugin.sgml:
6615         * docs/libs/gstreamer-libs-docs.sgml:
6616           Added missing short docs. Added ids for navigation.
6617
6618 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6619
6620         * docs/manual/advanced-autoplugging.xml:
6621         * docs/manual/advanced-schedulers.xml:
6622         * docs/manual/advanced-threads.xml:
6623           Rewrites. Remove cothreads, go a bit into opt specifically,
6624           document threads and their gotchas, and do some technical stuff
6625           on autoplugging plus add some working examples. Fixes #157395.
6626         * examples/manual/Makefile.am:
6627           Add typefind/autoplugger example (one that actually works).
6628           Remove queue example since it's a duplicate of the thread one.
6629
6630 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6631
6632         * gst/gstvalue.c: (gst_value_deserialize_string):
6633           use deprecated g_value_set_string_take_ownership to keep compatible
6634           with glib 2.2
6635
6636 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6637
6638         * gst/gstvalue.c: (gst_value_deserialize_string):
6639           revert last patch, only dom a g_utf8_validate now before accepting
6640           the string - caps parsing strips " from strings so we can't rely on
6641           them
6642         * testsuite/caps/value_serialize.c: (test_string_deserialization):
6643           disable a test that tested the above and comment it
6644
6645 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
6646
6647         Patch reviewed by David Schleef  <ds@schleef.org>
6648
6649         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
6650         bug #153882)
6651         * win32/gstenumtypes.h: same
6652
6653 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6654
6655         * gst/gstpad.c: (gst_pad_query):
6656           Do query on realized pad, similar to how convert/send_event handle
6657           this. Also makes sense, since this pad belongs to the function to
6658           which this query will be sent. Fixes #158163.
6659
6660 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
6661
6662         * docs/manual/appendix-programs.xml: fix pipeline to actually work
6663
6664 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
6665
6666         * docs/faq/general.xml: fix pipeline to actually work
6667
6668 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6669
6670         * gst/gstvalue.c: (gst_value_deserialize_string):
6671           check that a simple string that gets deserialized does not contain
6672           invalid characters
6673         * testsuite/caps/value_serialize.c: (test_string_deserialization):
6674           remove a test that tested a wring behaviour
6675
6676 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
6677
6678         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6679
6680         * docs/manual/intro-motivation.xml:
6681           Fix typos.
6682
6683 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
6684
6685         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6686
6687         * docs/gst/tmpl/gstprobe.sgml:
6688           Fix documentation of probe callback - it is supposed to return
6689           FALSE, not TRUE, to remove data from the stream (#159087).
6690
6691 2004-12-16  Daniel Gazard  <dany42@free.fr>
6692
6693         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6694
6695         * gst/gstelementfactory.c: (gst_element_factory_create):
6696           Fix compile failure if compiling without libxml2 support (#149936).
6697
6698 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6699
6700         * docs/manual/advanced-autoplugging.xml:
6701         * docs/manual/highlevel-components.xml:
6702           Move spider from autoplugging to components. Autoplugging is for
6703           internals, not for solutions. ;-).
6704
6705 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6706
6707         * docs/random/ds/0.9-suggested-changes:
6708           Make note on device/location/uri property names.
6709
6710 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6711
6712         * docs/manual/advanced-autoplugging.xml:
6713         * docs/manual/advanced-clocks.xml:
6714         * docs/manual/advanced-interfaces.xml:
6715         * docs/manual/advanced-metadata.xml:
6716         * docs/manual/advanced-position.xml:
6717         * docs/manual/advanced-schedulers.xml:
6718         * docs/manual/advanced-threads.xml:
6719         * docs/manual/appendix-gnome.xml:
6720         * docs/manual/appendix-programs.xml:
6721         * docs/manual/appendix-quotes.xml:
6722         * docs/manual/autoplugging.xml:
6723         * docs/manual/basics-bins.xml:
6724         * docs/manual/basics-data.xml:
6725         * docs/manual/basics-elements.xml:
6726         * docs/manual/basics-helloworld.xml:
6727         * docs/manual/basics-init.xml:
6728         * docs/manual/basics-pads.xml:
6729         * docs/manual/basics-plugins.xml:
6730         * docs/manual/bins-api.xml:
6731         * docs/manual/bins.xml:
6732         * docs/manual/buffers-api.xml:
6733         * docs/manual/buffers.xml:
6734         * docs/manual/clocks.xml:
6735         * docs/manual/components.xml:
6736         * docs/manual/cothreads.xml:
6737         * docs/manual/debugging.xml:
6738         * docs/manual/dparams-app.xml:
6739         * docs/manual/dynamic.xml:
6740         * docs/manual/elements-api.xml:
6741         * docs/manual/elements.xml:
6742         * docs/manual/factories.xml:
6743         * docs/manual/gnome.xml:
6744         * docs/manual/goals.xml:
6745         * docs/manual/helloworld.xml:
6746         * docs/manual/helloworld2.xml:
6747         * docs/manual/highlevel-components.xml:
6748         * docs/manual/highlevel-xml.xml:
6749         * docs/manual/init-api.xml:
6750         * docs/manual/intro-basics.xml:
6751         * docs/manual/intro-motivation.xml:
6752         * docs/manual/intro-preface.xml:
6753         * docs/manual/intro.xml:
6754         * docs/manual/links-api.xml:
6755         * docs/manual/links.xml:
6756         * docs/manual/manual.xml:
6757         * docs/manual/motivation.xml:
6758         * docs/manual/pads-api.xml:
6759         * docs/manual/pads.xml:
6760         * docs/manual/plugins-api.xml:
6761         * docs/manual/plugins.xml:
6762         * docs/manual/programs.xml:
6763         * docs/manual/queues.xml:
6764         * docs/manual/quotes.xml:
6765         * docs/manual/schedulers.xml:
6766         * docs/manual/states-api.xml:
6767         * docs/manual/states.xml:
6768         * docs/manual/threads.xml:
6769         * docs/manual/typedetection.xml:
6770         * docs/manual/win32.xml:
6771         * docs/manual/xml.xml:
6772           Try 2. This time, include a short preface as a "general
6773           introduction", also add code blocks around all code samples
6774           so they get compiled. We still need a way to tell readers
6775           the filename of the code sample. In some cases, don't show
6776           all code in the documentation, but do include it in the generated
6777           code. This allows for focussing on specific bits in the docs,
6778           while still having a full test application available.
6779         * examples/manual/Makefile.am:
6780           Fix up examples for new ADM. Add several of the new examples that
6781           were either added or were missing from the build system.
6782         * examples/manual/extract.pl:
6783           Allow nameless blocks.
6784
6785 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6786
6787         * docs/manual/elements-api.xml:
6788         * docs/manual/helloworld.xml:
6789         * examples/manual/extract.pl:
6790           fix last example.  Add example of adding code blocks that are not
6791           shown in docbook output.
6792
6793 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6794
6795         * docs/manual/dynamic.xml:
6796         * docs/manual/elements-api.xml:
6797         * docs/manual/gnome.xml:
6798         * docs/manual/helloworld2.xml:
6799         * docs/manual/init-api.xml:
6800         * docs/manual/queues.xml:
6801         * docs/manual/threads.xml:
6802         * docs/manual/xml.xml:
6803         * examples/manual/extract.pl:
6804           Make it possible to extract example code from separate blocks.
6805           Should make Ronald happy.
6806
6807 2004-12-15  Wim Taymans  <wim@fluendo.com>
6808
6809         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6810         (remove_from_group), (group_elements_set_visited),
6811         (normalize_group), (gst_opt_scheduler_iterate):
6812         Fix bug where a flag was not updated on a decoupled entry point 
6813         because we were just checking the group element list and decoupled
6814         elements are not in that list..
6815
6816 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6817
6818         * docs/manual/advanced-autoplugging.xml:
6819         * docs/manual/advanced-clocks.xml:
6820         * docs/manual/advanced-dparams.xml:
6821         * docs/manual/advanced-interfaces.xml:
6822         * docs/manual/advanced-metadata.xml:
6823         * docs/manual/advanced-position.xml:
6824         * docs/manual/advanced-schedulers.xml:
6825         * docs/manual/advanced-threads.xml:
6826         * docs/manual/appendix-debugging.xml:
6827         * docs/manual/appendix-gnome.xml:
6828         * docs/manual/appendix-programs.xml:
6829         * docs/manual/appendix-quotes.xml:
6830         * docs/manual/appendix-win32.xml:
6831         * docs/manual/autoplugging.xml:
6832         * docs/manual/basics-bins.xml:
6833         * docs/manual/basics-data.xml:
6834         * docs/manual/basics-elements.xml:
6835         * docs/manual/basics-helloworld.xml:
6836         * docs/manual/basics-init.xml:
6837         * docs/manual/basics-pads.xml:
6838         * docs/manual/basics-plugins.xml:
6839         * docs/manual/bins-api.xml:
6840         * docs/manual/bins.xml:
6841         * docs/manual/buffers-api.xml:
6842         * docs/manual/buffers.xml:
6843         * docs/manual/clocks.xml:
6844         * docs/manual/components.xml:
6845         * docs/manual/cothreads.xml:
6846         * docs/manual/debugging.xml:
6847         * docs/manual/dparams-app.xml:
6848         * docs/manual/dynamic.xml:
6849         * docs/manual/elements-api.xml:
6850         * docs/manual/elements.xml:
6851         * docs/manual/factories.xml:
6852         * docs/manual/gnome.xml:
6853         * docs/manual/goals.xml:
6854         * docs/manual/helloworld.xml:
6855         * docs/manual/helloworld2.xml:
6856         * docs/manual/highlevel-components.xml:
6857         * docs/manual/highlevel-xml.xml:
6858         * docs/manual/init-api.xml:
6859         * docs/manual/intro-motivation.xml:
6860         * docs/manual/intro-preface.xml:
6861         * docs/manual/intro.xml:
6862         * docs/manual/links-api.xml:
6863         * docs/manual/links.xml:
6864         * docs/manual/manual.xml:
6865         * docs/manual/motivation.xml:
6866         * docs/manual/pads-api.xml:
6867         * docs/manual/pads.xml:
6868         * docs/manual/plugins-api.xml:
6869         * docs/manual/plugins.xml:
6870         * docs/manual/programs.xml:
6871         * docs/manual/queues.xml:
6872         * docs/manual/quotes.xml:
6873         * docs/manual/schedulers.xml:
6874         * docs/manual/states-api.xml:
6875         * docs/manual/states.xml:
6876         * docs/manual/threads.xml:
6877         * docs/manual/typedetection.xml:
6878         * docs/manual/win32.xml:
6879         * docs/manual/xml.xml:
6880           First try at rewriting the ADM. Needs lotsamore work, but some
6881           parts might already be somewhat useful.
6882         * docs/pwg/advanced-interfaces.xml:
6883           Remove properties interface, it never actually existed (except for
6884           on my HD...).
6885
6886 2004-12-13  David Schleef  <ds@schleef.org>
6887
6888         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
6889         be NULL (bug #160220).
6890
6891 2004-12-13  David Schleef  <ds@schleef.org>
6892
6893         * configure.ac: remove all mmx stuff, because it's not used.
6894         * docs/random/ds/0.9-suggested-changes: additional notes
6895         * include/Makefile.am: we don't use these anymore
6896         * include/mmx.h: remove
6897         * include/sse.h: remove
6898
6899 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6900
6901         * docs/random/mimetypes:
6902           Add FOURCC code for h264 codec (VSSH)
6903           Add alternate FOURCC codes for h263 related codecs
6904
6905 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
6906
6907         * docs/manual/programs.xml:
6908           Added more gst-launch examples.
6909
6910 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6911
6912         * gst/gstqueue.c: (gst_queue_handle_src_query):
6913           Check for availability again.
6914
6915 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6916
6917         * gst/gstcaps.c: (gst_caps_compare_structures):
6918           Simple caps go first. This has the nice side-effect of fixing an
6919           obscure warning.
6920
6921 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6922
6923         * gst/gstversion.h.in:
6924           Protect header.
6925
6926 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6927
6928         * gst/schedulers/gstoptimalscheduler.c:
6929         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
6930         (gst_opt_scheduler_get_wrapper):
6931           When we're recursing into a chain run, only run the directly
6932           related group, not all queued ones. This will fix a possible
6933           deadlock in chains with more than two groups.
6934
6935 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6936
6937         * autogen.sh:
6938           remove patch if autopoint fails
6939
6940 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6941
6942         * docs/gst/gstreamer-sections.txt:
6943           Document Thomas' addition, fix build, make Luis the sheriff happy.
6944
6945 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
6946
6947         * gst/gstplugin.c:
6948         * gst/gstplugin.h:
6949           add accessor for version field
6950
6951 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6952
6953         submitted by: Luca Ferretti <elle.uca@infinito.it>
6954
6955         * po/LINGUAS:
6956         * po/it.po:
6957           New tranlation added: Italian
6958
6959 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6960
6961         * gst/gstpad.c: (gst_pad_is_negotiated),
6962         (gst_pad_get_negotiated_caps):
6963           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
6964           it doesn't actually check the contents), so be sure to hand it
6965           a RealPad else we'll crash.
6966
6967 2004-12-03  Wim Taymans  <wim@fluendo.com>
6968
6969         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
6970         (gst_queue_link), (gst_queue_handle_src_query):
6971         Reverted to 1.110 until this makes the testsuite and various
6972         apps work.
6973
6974 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
6975
6976         * docs/upload.mak: fix included CVS conflict strings
6977
6978 2004-12-01  William Jon McCann  <mccann@jhu.edu>
6979
6980         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6981
6982         * gst/gstelement.c: (gst_element_error_full):
6983           Use g_error_new_literal because error text may have
6984           percentage signs in it. Fixes #160019.
6985
6986 2004-12-01  Benjamin Otte  <otte@gnome.org>
6987
6988         * gst/elements/gstbufferstore.c:
6989         (gst_buffer_store_add_buffer_func):
6990           don't try to make subbuffers bigger than they can be. (fixes
6991           #159970)
6992
6993 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6994
6995         * docs/gst/gstreamer-sections.txt:
6996         * docs/gst/tmpl/gstvalue.sgml:
6997           Add new function to docs to fix build.
6998
6999 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7000
7001         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
7002         * gst/gstpad.c: (_gst_pad_default_fixate_value),
7003         (_gst_pad_default_fixate_foreach):
7004         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
7005         * gst/gstvalue.h:
7006           Deprecate _type_is_fixed, use _value_is_fixed instead, since
7007           in some cases (arrays), the fixedness depends on the content.
7008         * gst/gstqueue.c: (gst_queue_handle_src_query):
7009           Check for availability before doing something.
7010
7011 2004-11-29  Wim Taymans  <wim@fluendo.com>
7012
7013         * testsuite/threads/Makefile.am:
7014         * testsuite/threads/signals.c: (gst_test_get_type),
7015         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
7016         (gst_test_set_property), (gst_test_get_property),
7017         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
7018         (gst_test_do_prop), (run_thread), (main):
7019         Added a bunch of testcases that show threadsafety bugs in glib.
7020
7021 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
7022
7023         * docs/manual/programs.xml:
7024           Added a first batch of gst-launch examples, as provided by Ronald
7025           and others from the devel-mlist
7026
7027 2004-11-28  Benjamin Otte  <otte@gnome.org>
7028
7029         * gst/gstelement.c: (gst_element_negotiate_pads):
7030           simplify
7031         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
7032         (gst_value_serialize_string), (gst_value_deserialize_string):
7033           add unwrapping of previously wrapped strings. Fix bug in wrapping
7034           while at it.
7035         * testsuite/caps/value_serialize.c: (test1),
7036         (test_string_serialization), (test_string_deserialization), (main):
7037           add tests for string (de)serialization
7038
7039 2004-11-26  Wim Taymans  <wim@fluendo.com>
7040
7041         * testsuite/threads/159566.c: (object_deep_notify), (main):
7042         * testsuite/threads/Makefile.am:
7043         Added testsuite to show bug #159566
7044
7045 2004-11-25  Wim Taymans  <wim@fluendo.com>
7046
7047         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
7048         (gst_thread_child_state_change), (gst_thread_main_loop):
7049         Ref the thread object in the GThread mainloop. Break out of the
7050         thread mainloop if it holds the last ref. This properly exits
7051         the threads when disposing the thread from its own context. It
7052         also avoids possible deadlocks in the dispose function.
7053
7054 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
7055
7056         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
7057         it is necessary to wait.
7058
7059 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7060
7061         * docs/pwg/building-boiler.xml:
7062           Make description somewhat clearer.
7063
7064 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7065
7066         * docs/upload.mak:
7067           Apparently docs changed location on FDO's server.
7068
7069 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7070
7071         * docs/pwg/appendix-checklist.xml:
7072           Add some random notes on things to check when writing an element.
7073           This list can be extended as people see fit.
7074
7075 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
7076
7077         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
7078         (gst_queue_link_src): Allow for renegotiating the caps of the sink
7079         pad. The queue will now wait until it is empty and forward the new
7080         caps to the source.
7081         * gst/gstbin.c (gst_bin_set_element_sched)
7082         (gst_bin_unset_element_sched): Make sure that all elements and
7083         links are registered and unregistered with the scheduler exactly
7084         once. This elaborates on a fix by Benjamin Otte, but
7085         guarantees that decoupled elements are also registered.
7086
7087 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
7088
7089         * docs/manual/quotes.xml:
7090           add a quote
7091         * configure.ac:
7092         * gst/gst.c:
7093         * gst/gstinfo.c:
7094           add LIBDIR and move init message higher up so it's at the start
7095
7096 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
7097
7098         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
7099         * gstreamer.spec.in: add fair
7100
7101 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7102
7103         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
7104         * gst/elements/gstidentity.c: (gst_identity_class_init):
7105           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
7106           <teuf@gnome.org> (#157263).
7107         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
7108         (gst_type_find_handle_src_query):
7109           Subtract size of internally stored data from position queries.
7110
7111 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
7112
7113         * gst/schedulers/fairscheduler.c:
7114         * gst/schedulers/faircothreads.c:
7115         * gst/schedulers/faircothreads.h:
7116         New cothread based scheduler: Fair scheduler.
7117         * gst/schedulers/gthread-cothreads.h: 
7118         Add the standard #if around the whole file.
7119         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
7120         compilation of the functions defined in this file. This is
7121         necessary to be able to use this file as a normal header.
7122         * gst/schedulers/Makefile.am: Add compiling support for fair
7123         scheduler.
7124         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
7125         scheduler cothreads layer from documentation generation.
7126
7127 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7128
7129         * gst/autoplug/gstspideridentity.c:
7130         (gst_spider_identity_sink_loop_type_finding):
7131           Don't crash if that function is not implemented.
7132
7133 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7134
7135         * docs/pwg/advanced-types.xml:
7136           Another typo.
7137
7138 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7139
7140         * docs/pwg/intro-preface.xml:
7141           Hm, ok, so the brackets weren't really useful...
7142         * docs/pwg/other-ntoone.xml:
7143           Fix embarassing typo.
7144
7145 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7146
7147         * docs/pwg/intro-preface.xml:
7148           Rewrite preface.
7149
7150 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7151
7152         * docs/pwg/advanced-scheduling.xml:
7153         * docs/pwg/advanced-tagging.xml:
7154         * docs/pwg/advanced-types.xml:
7155         * docs/pwg/building-boiler.xml:
7156         * docs/pwg/building-chainfn.xml:
7157         * docs/pwg/building-signals.xml:
7158         * docs/pwg/building-state.xml:
7159         * docs/pwg/building-testapp.xml:
7160         * docs/pwg/intro-basics.xml:
7161         * docs/pwg/other-manager.xml:
7162         * docs/pwg/other-source.xml:
7163           Typo fixes.
7164         * docs/pwg/other-manager.xml:
7165           Add some first content. No example code yet.
7166         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
7167           Remove double newlines.
7168
7169 2004-11-04  Wim Taymans  <wim@fluendo.com>
7170
7171         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
7172         (remove_from_group), (normalize_group), (group_migrate_connected),
7173         (gst_opt_scheduler_iterate):
7174         * testsuite/schedulers/.cvsignore:
7175         * testsuite/schedulers/Makefile.am:
7176         * testsuite/schedulers/queue_link.c: (main):
7177         Added testcase for scheduler segfault.
7178         Fix scheduler segfault when removing a decoupled
7179         entry point as the last element from a group.
7180
7181 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
7182
7183         * gst/gstmarshal.list: add missing marshaller, fixes build
7184
7185 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
7186
7187         * docs/random/signal: added notes about using BOXED for GstBuffer
7188         signal marshallers, not POINTER
7189
7190 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
7191
7192         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
7193         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
7194         POINTER=>BOXED changes to marshal GstBuffers
7195
7196 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
7197
7198         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
7199         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
7200
7201 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
7202
7203         * docs/gst/gstreamer-sections.txt:
7204         * docs/gst/tmpl/gstcaps.sgml:
7205         * docs/gst/tmpl/gsterror.sgml:
7206         * docs/gst/tmpl/gstinfo.sgml:
7207         * docs/gst/tmpl/gstmacros.sgml:
7208         * docs/gst/tmpl/gstutils.sgml:
7209         * docs/random/ensonic/interfaces.txt:
7210         * gst/gstinfo.h:
7211           added some more docs, removed two obsolete defines
7212
7213 2004-11-02  Kjartan Maraas <as at gnome.org>
7214
7215         reviewed by: Wim Taymans, Ronald Bultje.
7216
7217         * gst/cothreads.c: (cothread_create):
7218         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
7219         (gst_bin_child_state_change_func):
7220         * gst/gstbuffer.c: (gst_buffer_span):
7221         * gst/gstelement.c: (gst_element_get_index),
7222         (gst_element_get_event_masks), (gst_element_get_query_types),
7223         (gst_element_get_formats):
7224         * gst/gsterror.c: (_gst_core_errors_init),
7225         (_gst_library_errors_init), (_gst_resource_errors_init),
7226         (_gst_stream_errors_init):
7227         * gst/gstobject.c: (gst_object_default_deep_notify):
7228         * gst/gstpad.c: (gst_pad_get_event_masks),
7229         (gst_pad_get_internal_links_default):
7230         * gst/gstplugin.c: (gst_plugin_register_func),
7231         (gst_plugin_get_module):
7232         * gst/gststructure.c: (gst_structure_get_string),
7233         (gst_structure_get_abbrs), (gst_structure_from_abbr),
7234         (gst_structure_to_abbr):
7235         * gst/gstutils.c: (gst_print_element_args):
7236         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
7237         (setup_group_scheduler), (gst_opt_scheduler_iterate):
7238         Aplied part of patch #157127: Cleanup of issues reported by 
7239         sparse.
7240         Also do not try to use cothreads when there is no cothread
7241         context yet.
7242
7243 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
7244
7245         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
7246         (gst_opt_scheduler_iterate):
7247         Applied patch #154061. Running a pipeline in which an element 
7248         calls GST_ELEMENT_ERROR in the chain function, the opt 
7249         scheduler doesn't unref the chain so it never gets freed.
7250
7251 2004-11-02  Wim Taymans  <wim@fluendo.com>
7252
7253         * gst/gststructure.c: (gst_structure_get_abbrs),
7254         (gst_structure_from_abbr), (gst_structure_to_abbr):
7255         Remove that ugly if-then thing in the code that converts
7256         between strings and types.
7257
7258 2004-11-02  Wim Taymans  <wim@fluendo.com>
7259
7260         * gst/gstscheduler.c: (gst_scheduler_add_element),
7261         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
7262         Aplied clock distribution patch, this should fix bug
7263         #148787.
7264
7265 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
7266
7267         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
7268
7269         * po/LINGUAS:
7270         * po/nb.po:
7271           Added Norwegian Bokmaal translation
7272
7273 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7274
7275         * tools/gst-inspect.c: (print_signal_info):
7276           print signal arguments as pointers if they are
7277
7278 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
7279
7280         * docs/pwg/building-boiler.xml:
7281           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
7282
7283 2004-10-19  Wim Taymans  <wim at fluendo dot com>
7284
7285         * gst/parse/parse.l:
7286         * testsuite/parse/parse1.c: (main):
7287         Since parse can do 'element name=a:b' make 'a:b.' work as
7288         well. 
7289         Added testcase to verify fix.
7290
7291 2004-10-19  Wim Taymans  <wim at fluendo dot com>
7292
7293         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
7294         Use the realpad when printing the direction.
7295         Add extra \n when printing extensions of typefind factories.
7296
7297 2004-10-13  David Schleef  <ds@schleef.org>
7298
7299         * examples/manual/Makefile.am: $< isn't portable in Makefile
7300         rules.
7301
7302 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
7303
7304         * docs/gst/tmpl/gstobject.sgml:
7305         * docs/gst/tmpl/gstplugin.sgml:
7306         * docs/gst/tmpl/gstpluginfeature.sgml:
7307         * docs/gst/tmpl/gstregistry.sgml:
7308         * docs/gst/tmpl/gstversion.sgml:
7309         * gst/gstbin.c:
7310           more api documentation
7311         * gst/gstplugin.c: (gst_plugin_register_func),
7312         (gst_plugin_check_file), (gst_plugin_load_file):
7313           better error signaling and logging
7314
7315 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7316
7317         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
7318           Subtract current queue contents from position queries.
7319
7320 2004-10-11  Johan Dahlin  <johan@gnome.org>
7321
7322         * gst/gsturi.c (gst_uri_get_location): unescape string
7323         (gst_uri_construct): escape string.
7324
7325 2004-10-11  Benjamin Otte  <otte@gnome.org>
7326
7327         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
7328         (gst_pad_try_set_caps_nonfixed):
7329           allow renegotiation of unconnected pads (as inside spider). Simply
7330           return OK if unconnected - mimic try_set_caps there.
7331
7332 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7333
7334         * gst/gstbin.c: (gst_bin_sync_children_state):
7335           Add missing break.
7336
7337 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7338
7339         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
7340         Set element to EOS before sending EOS event
7341
7342 2004-10-08  Wim Taymans  <wim at fluendo dot com>
7343
7344         * gst/elements/gsttypefindelement.c:
7345         (gst_type_find_element_handle_event):
7346         Handle EOS events when doing the transition from
7347         typefind to data passing. This should fix the
7348         infinite loops in short files.
7349
7350 2004-10-07  Wim Taymans  <wim at fluendo dot com>
7351
7352         * gst/gstthread.c: (gst_thread_change_state),
7353         (gst_thread_child_state_change):
7354         Make sure no iteration happens while performing
7355         the state change as it could mess up the internal
7356         consistency of the thread state.
7357
7358 2004-10-07  Wim Taymans  <wim at fluendo dot com>
7359
7360         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
7361         (gst_thread_change_state), (gst_thread_child_state_change):
7362         Do not try to grab the iterate lock in the state change method
7363         when we are in the same thread as the iterate or else we
7364         could deadlock. Some other cleanups.
7365
7366 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7367
7368         * configure.ac:
7369           bump nano to cvs
7370
7371 === release 0.8.7 ===
7372
7373 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7374
7375         * configure.ac:
7376         * NEWS:
7377         * RELEASE:
7378         * configure.ac:
7379           releasing 0.8.7, "A Cruise"
7380
7381 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
7382
7383         * docs/random/mimetypes:
7384         Add an entry for Sony ATRAC3 audio format with mime-type
7385         used by rmdemux et riff-read
7386
7387 2004-10-06  Wim Taymans  <wim at fluendo dot com>
7388
7389         * gst/elements/gsttypefindelement.c: (stop_typefinding):
7390         Push the buffer store instead of clearing it in case that
7391         the stream is not seekable.
7392
7393 2004-10-06  Wim Taymans  <wim at fluendo dot com>
7394
7395         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
7396         (gst_thread_main_loop):
7397         Lock the iteration and the state change so that automatic
7398         negotiation and fixation does not happen at the same time
7399         as the in stream negotiation.
7400
7401 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7402
7403         * configure.ac:
7404           bump nano to cvs
7405
7406 === release 0.8.6 ===
7407
7408 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7409
7410         * configure.ac:
7411         * NEWS:
7412         * RELEASE:
7413         * configure.ac:
7414           releasing 0.8.6, "Narc"
7415
7416 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7417
7418         * configure.ac:
7419           prerel bump
7420
7421 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7422
7423         patch by: Steve Lhomme
7424
7425         * gst/elements/gstfakesrc.c:
7426         * gst/elements/gstidentity.c:
7427         * gst/gstthread.c:
7428           Fix for #153881
7429
7430 2004-10-01  Wim Taymans  <wim at fluendo dot com>
7431
7432         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
7433         Fix threadsafety of the crc checking function.
7434
7435 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7436
7437         patch by: Ronald Bultje
7438
7439         * gst/elements/gsttypefindelement.c: (stop_typefinding),
7440         (gst_type_find_element_handle_event),
7441         (gst_type_find_element_chain):
7442         * gst/elements/gsttypefindelement.h:
7443          #153657.
7444          Filter out discont event from seekable sources when typefind
7445          asks them to seek.  Fixes typefind with demuxers for
7446          avi, asf and matroska.
7447
7448 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7449
7450         * docs/gst/gstreamer-sections.txt:
7451         * gst/gstcaps.c:
7452         * gst/gstcaps.h:
7453         * gst/gstpad.c:
7454           Revert preferred caps: (#147789)
7455
7456 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
7457
7458         * win32/dirent.c:
7459           fix a memory leak
7460
7461 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
7462
7463         * configure.ac:
7464           bump for prerelease
7465
7466 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7467
7468         * docs/Makefile.am:
7469         * docs/manual/elements-api.xml:
7470           restructure so that common stuff is shown first
7471         * docs/manual/init-api.xml:
7472           convert to examples
7473         * docs/manual/manual.xml:
7474         * docs/manuals.mak:
7475         * docs/url.entities:
7476           link to API on the website, possibly override later in build
7477         * examples/manual/.cvsignore:
7478           ignore more
7479         * examples/manual/Makefile.am:
7480           add more examples
7481         * examples/manual/extract.pl:
7482           error out on failure
7483
7484 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
7485
7486         * docs/gst/tmpl/gstthread.sgml:
7487         * docs/manual/init-api.xml:
7488         * examples/manual/Makefile.am:
7489           convert two code bits to examples
7490
7491 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
7492
7493         * gst/gstelement.c: (gst_element_change_state):
7494           Well, actually, I was about to remove this insane assert when
7495           I noticed Wim already did that. A warning is nice so we can
7496           fix actual ugs (using --g-fatal-warnings and backtraces), so
7497           I added that instead.
7498
7499 2004-09-06  Wim Taymans  <wim@fluendo.com>
7500
7501         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
7502         (gst_element_threadsafe_properties_post_run),
7503         (gst_element_set_state), (gst_element_change_state):
7504         Added extra refcounting around various places. 
7505
7506 2004-09-06  Wim Taymans  <wim@fluendo.com>
7507
7508         * gst/gstpad.c: (gst_pad_link_call_link_functions):
7509         Fix debug info.
7510
7511 2004-09-06  Wim Taymans  <wim@fluendo.com>
7512
7513         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
7514         (remove_from_group):
7515         Some more debug info.
7516
7517 2004-09-03  Wim Taymans  <wim@fluendo.com>
7518
7519         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
7520         (gst_fakesrc_init), (gst_fakesrc_set_clock),
7521         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
7522         (gst_fakesrc_get), (gst_fakesrc_change_state):
7523         * gst/elements/gstfakesrc.h:
7524         * gst/elements/gstidentity.c: (gst_identity_class_init),
7525         (gst_identity_init), (gst_identity_chain),
7526         (gst_identity_set_property), (gst_identity_get_property),
7527         (gst_identity_change_state):
7528         * gst/elements/gstidentity.h:
7529         Added datarate properties to limit the datarate.
7530
7531 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7532
7533         * gst/autoplug/gstspider.c: (plugin_init):
7534           don't set a rank. We don't want to autoplug by inserting spiders.
7535
7536 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7537
7538         * gst/autoplug/gstspider.c: (gst_spider_class_init),
7539         (gst_spider_identity_plug):
7540           add a template for spider's sink
7541         * gst/gst.c: (gst_register_core_elements):
7542           queue's rank should be NULL, we don't want spider to add it.
7543
7544 2004-08-18  David Schleef  <ds@schleef.org>
7545
7546         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
7547         * docs/libs/Makefile.am: same
7548         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
7549         * docs/random/ds/0.9-planning: random additions
7550         * docs/random/ds/0.9-suggested-changes: same
7551         * gst/gstxml.h: remove vestigal GstXMLNs definition
7552
7553         Preferred caps: (#147789)
7554         * docs/gst/gstreamer-sections.txt: Add symbols
7555         * docs/gst/tmpl/gstcaps.sgml: Add symbols
7556         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
7557         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
7558         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
7559         (gst_caps_get_preferred), (gst_caps_set_preferred),
7560         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
7561         (gst_caps_use_preferred): Handle caps preferences
7562         * gst/gstcaps.h: Add caps preferences
7563         * gst/gstpad.c: (gst_pad_link_get_preferred),
7564         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
7565         (gst_pad_renegotiate), (gst_pad_guess_preferred),
7566         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
7567         negotiation.
7568
7569 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7570
7571         * gst/autoplug/gstspideridentity.c:
7572         (gst_spider_identity_request_new_pad):
7573         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
7574         (gst_aggregator_init):
7575         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
7576         (gst_fakesink_init):
7577         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
7578         (gst_fakesrc_init):
7579         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
7580         (gst_fdsink_init):
7581         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
7582         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
7583         (gst_filesink_init):
7584         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
7585         (gst_filesrc_init):
7586         * gst/elements/gstidentity.c: (gst_identity_base_init),
7587         (gst_identity_init):
7588         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
7589         (gst_multifilesrc_init):
7590         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
7591         (gst_pipefilter_init):
7592         * gst/elements/gststatistics.c: (gst_statistics_base_init),
7593         (gst_statistics_init):
7594         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
7595         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
7596           s/gst_pad_new/&_from_template/
7597           register pad templates in the base_init function
7598           add static pad template definitions
7599
7600 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7601
7602         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
7603         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
7604         * testsuite/refcounting/pad.c: (main):
7605         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
7606           s/gst_pad_new/&_from_template/
7607           prepare deprecation of gst_pad_new
7608
7609 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
7610
7611         patch by: Luca Ognibene <skaboy81@virgilio.it>
7612
7613         * gst/gstcaps.c:
7614         * gst/gstelement.c:
7615         * gst/gstpad.c:
7616         * gst/gstxml.c:
7617           fix memleaks.  Fixes #150001
7618
7619 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7620
7621         * docs/random/ds/0.9-suggested-changes:
7622           add notes - mostly about pad templates
7623
7624 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
7625
7626         * win32/GStreamer.vcproj:
7627           temporary locale files are .gmo not .mo
7628
7629 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7630
7631         * configure.ac: bump nano to cvs
7632
7633 === release 0.8.5 ===
7634
7635 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7636
7637         * configure.ac:
7638           releasing 0.8.5, "Stuttgart"
7639         * NEWS:
7640         * RELEASE:
7641         * configure.ac:
7642         * docs/random/release:
7643           updates for release
7644
7645 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7646
7647         patch by: Wim Taymans (wim@fluendo.com)
7648
7649         * gst/gstbuffer.c:
7650         * gst/gstindex.h:
7651         * libs/gst/dataprotocol/dataprotocol.c:
7652           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
7653
7654 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7655
7656         * Makefile.am:
7657         * win32/MANIFEST:
7658           add win32 dir to the build.  Fixes #149981.
7659
7660 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7661
7662         * configure.ac:
7663           bump libtool versioning
7664         * gst/gststructure.c:
7665           mark function as static
7666         * po/af.po:
7667         * po/az.po:
7668         * po/ca.po:
7669         * po/cs.po:
7670         * po/en_GB.po:
7671         * po/fr.po:
7672         * po/nl.po:
7673         * po/sq.po:
7674         * po/sr.po:
7675         * po/sv.po:
7676         * po/tr.po:
7677         * po/uk.po:
7678           translations update
7679         * win32/README.txt:
7680           trademark protection
7681
7682 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7683
7684         * configure.ac:
7685           fix GST_ORIGIN
7686           set GST_PACKAGE to source, and distinguish between release and other
7687         * tools/gst-inspect.c:
7688           print out plugin an element factory is part of so we see this info
7689
7690 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7691
7692         * docs/gst/gstreamer-sections.txt:
7693         * docs/gst/tmpl/gstbuffer.sgml:
7694         * docs/gst/tmpl/gstschedulerfactory.sgml:
7695           reorder docs a little, make GstBuffer's more sensible.
7696         * gst/gstbuffer.h:
7697           API: added GST_BUFFER_FLAG_DELTA_UNIT
7698         * gst/gstscheduler.c:
7699           comment API addition
7700
7701 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7702
7703         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
7704           work with non-regular files that can be mmapped (like /dev/zero)
7705         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
7706           get rid of typefinds that require a seek when we can't seek instead
7707           of trying them over and over again
7708         * tools/gst-launch.c: (idle_func), (error_cb), (main):
7709           return non-zero failure value when the pipeline was interrupted or
7710           an error occurred
7711
7712 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
7713
7714         * win32/config.h:
7715         * win32/GStreamer.vcproj:
7716           compile and install the locales
7717
7718 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
7719
7720         * gst/gstvalue.c:
7721           fix a possible memory leak under Windows
7722
7723 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
7724
7725         * win32/GStreamer.vcproj:
7726           fix a memory leak that occured under Windows
7727         * win32/gstreamer.def:
7728           add gst_scheduler_register
7729
7730 2004-08-11  Benjamin Otte  <otte@gnome.org>
7731
7732         * docs/gst/gstreamer-sections.txt:
7733         * gst/gstscheduler.c: (gst_scheduler_register):
7734         * gst/gstscheduler.h:
7735           API:
7736           add gst_scheduler_register shortcut similar to gst_element_register
7737         * gst/schedulers/entryscheduler.c: (plugin_init):
7738         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
7739         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
7740           use it
7741
7742 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
7743
7744         * gst/gstvalue.h:
7745           fix a memory leak that occured under Windows
7746
7747 2004-08-10  Colin Walters  <walters@redhat.com>
7748
7749         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
7750         Don't use O_EXCL to open temporary registry.  It will prevent
7751         registry creation if a temporary one already exists, which
7752         is unnecessary.
7753
7754 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7755
7756         * docs/gst/gstreamer-sections.txt:
7757         * docs/gst/tmpl/gstvalue.sgml:
7758           remove some valuable stuff from the documentation due to the use of GST_EXPORT
7759
7760 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7761
7762         * win32/gstbytestream.vcproj:
7763         * win32/gstelements.vcproj:
7764         * win32/gstgetbits.vcproj:
7765         * win32/gst-inspect.vcproj:
7766         * win32/gst-launch.vcproj:
7767         * win32/gstoptimalscheduler.vcproj:
7768         * win32/GStreamer.vcproj:
7769         * win32/gst-register.vcproj:
7770         * win32/gstspider.vcproj:
7771           update the include and lib dirs to fit standard libraries as
7772           described in the Win32 manual
7773
7774 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7775
7776         * win32/config.h:
7777         * win32/gstversion.h:
7778           enable NLS again, push the version number for the coming 0.8.5 release
7779
7780 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7781
7782         * gst/gstvalue.h:
7783           export gst_type_XXX for windows DLLs
7784
7785 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7786
7787         * docs/faq/gst-uninstalled:
7788           fix PKG_CONFIG_PATH and PYTHONPATH
7789         * gst/schedulers/Makefile.am:
7790           cleanup
7791         * libs/gst/bytestream/bytestream.c:
7792           remove newline
7793         * po/LINGUAS:
7794         * po/sq.po:
7795           adding Albanian translation (Laurent Dhima)
7796         * po/cs.po:
7797           updated
7798
7799 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7800
7801         * po/ca.po:
7802         * po/sv.po:
7803           updated translations
7804
7805 2004-08-04  Benjamin Otte  <otte@gnome.org>
7806
7807         * tests/mass_elements.c: (main):
7808           allow specifying src and sink element explicitly, so I can test
7809           videotestsrc instead of fakesrc
7810
7811 2004-08-04  Benjamin Otte  <otte@gnome.org>
7812
7813         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
7814         (gst_structure_id_empty_new), (gst_structure_empty_new),
7815         (gst_structure_copy):
7816           add gst_structure_id_empty_new_with_size to allow preallocating
7817           value array sizes. Use this in gst_structure_copy to get rid of
7818           reallocs.
7819           don't do quark=>string=>quark when copying structures
7820
7821 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
7822
7823         * docs/manual/win32.xml:
7824         * win32/README.txt:
7825           update documentation with the clean version of dependencies
7826
7827 2004-08-03  Benjamin Otte  <otte@gnome.org>
7828
7829         * gst/schedulers/entryscheduler.c:
7830         (gst_entry_scheduler_remove_element):
7831           fix for GST_DISABLE_DEBUG
7832         * tools/gst-launch.c: (print_tag):
7833           fixes for G_DISABLE_ASSERT
7834
7835 2004-08-03  Benjamin Otte  <otte@gnome.org>
7836
7837         * gst/gst.c: (gst_register_core_elements):
7838           fix for G_DISABLE_ASSERT
7839         * gst/gstinfo.c: (__gst_in_valgrind):
7840           add for GST_DISABLE_DEBUG
7841
7842 2004-08-03  Benjamin Otte  <otte@gnome.org>
7843
7844         * gst/parse/parse.l:
7845           fix for G_DISABLE_ASSERT
7846
7847 2004-08-03  Wim Taymans  <wim@fluendo.com>
7848
7849         * gst/gstbin.c: (gst_bin_get_type),
7850         (gst_bin_child_state_change_func):
7851         * gst/gstthread.c: (gst_thread_change_state):
7852         Backported some debug logging from a reverted patch
7853         Don't try to destroy the thread twice. Added some more
7854         debugging in GstThread. Unlock and signal even if we
7855         are in the thread context.
7856
7857 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7858
7859         * po/uk.po:
7860           updated translation
7861
7862 2004-07-30  David Schleef  <ds@schleef.org>
7863
7864         * gst/gstatomic_impl.h: Enable atomic code for x86_64
7865
7866 2004-07-29  David Schleef  <ds@schleef.org>
7867
7868         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
7869         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
7870
7871 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
7872
7873         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7874         (gst_bin_add_func), (gst_bin_remove_func),
7875         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
7876         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
7877         (gst_bin_change_state_norecurse), (gst_bin_dispose),
7878         (gst_bin_sync_children_state):
7879         * gst/gstbin.h:
7880         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
7881         (gst_thread_change_state):
7882         * testsuite/states/Makefile.am:
7883           revert state change patches as agreed so we can rework them
7884           gradually
7885
7886 2004-07-29  Benjamin Otte  <otte@gnome.org>
7887
7888         * libs/gst/control/Makefile.am:
7889           link to libgstreamer (fixes Debian bug 262019, see
7890           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
7891
7892 2004-07-29  Wim Taymans  <wim@fluendo.com>
7893
7894         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
7895         (check_from_fraction_convert), (transform_test), (main):
7896         Make the test less pedantic about float roundoff errors.
7897
7898 2004-07-29  Benjamin Otte  <otte@gnome.org>
7899
7900         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
7901         (gst_filesrc_srcpad_event):
7902           make seek events to before start/after end of file not fail, but
7903           seek to start/end instead
7904         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
7905           add more output
7906
7907 2004-07-29  Benjamin Otte  <otte@gnome.org>
7908
7909         * gst/gstpad.c: (gst_pad_set_explicit_caps):
7910           check that caps are fixed
7911         * gst/gstpad.c: (gst_pad_template_new):
7912           don't try to simplify caps, costs too much time on gst_init
7913         * gst/gstplugin.c: (gst_plugin_add_feature):
7914           G_ERROR if features are added twice
7915         * gst/gsttypefind.c: (gst_type_find_register):
7916         * gst/gstelementfactory.c: (gst_element_register):
7917           don't add features twice
7918         * docs/random/ds/0.9-suggested-changes:
7919           add note about possible gst_init optimization
7920
7921 2004-07-28  David Schleef  <ds@schleef.org>
7922
7923         * testsuite/elements/Makefile.am:
7924         * testsuite/elements/struct_i386.h:
7925         * testsuite/elements/struct_size.c: (main):  A little test
7926         to keep distcheck from working if someone changes a structure
7927         size accidentally.
7928
7929 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7930
7931         * docs/libs/Makefile.am:
7932         * docs/libs/gstreamer-libs-docs.sgml:
7933         * docs/libs/gstreamer-libs-sections.txt:
7934         * docs/libs/tmpl/gstbytestream.sgml:
7935         * docs/libs/tmpl/gstcontrol.sgml:
7936         * docs/libs/tmpl/gstdataprotocol.sgml:
7937         * docs/libs/tmpl/gstgetbits.sgml:
7938         * libs/gst/bytestream/Makefile.am:
7939         * libs/gst/bytestream/bytestream.c:
7940         * libs/gst/bytestream/bytestream.h:
7941         * libs/gst/control/Makefile.am:
7942         * libs/gst/dataprotocol/Makefile.am:
7943         * libs/gst/getbits/Makefile.am:
7944         * libs/gst/getbits/getbits.h:
7945           various doc and style fixes, adding bytestream to libs docs.
7946
7947 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7948
7949         * docs/gst/gstreamer-docs.sgml:
7950         * docs/libs/Makefile.am:
7951         * docs/libs/gstreamer-libs-docs.sgml:
7952         * docs/libs/gstreamer-libs-sections.txt:
7953         * libs/gst/control/dparam.c:
7954           more doc fixes.  gst-libs docs now build the same way as gst.
7955
7956 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7957
7958         * configure.ac:
7959         * testsuite/Makefile.am:
7960         * testsuite/bins/Makefile.am:
7961         * testsuite/caps/Makefile.am:
7962         * testsuite/cleanup/Makefile.am:
7963         * testsuite/clock/Makefile.am:
7964         * testsuite/debug/Makefile.am:
7965         * testsuite/dlopen/Makefile.am:
7966         * testsuite/dynparams/Makefile.am:
7967         * testsuite/elements/.cvsignore:
7968         * testsuite/elements/Makefile.am:
7969         * testsuite/enumcaps/Makefile.am:
7970         * testsuite/enumcaps/enumcaps.c:
7971         * testsuite/ghostpads/Makefile.am:
7972         * testsuite/indexers/Makefile.am:
7973         * testsuite/negotiation/Makefile.am:
7974         * testsuite/parse/Makefile.am:
7975         * testsuite/plugin/Makefile.am:
7976         * testsuite/refcounting/Makefile.am:
7977         * testsuite/schedulers/.cvsignore:
7978         * testsuite/states/Makefile.am:
7979         * testsuite/tags/Makefile.am:
7980         * testsuite/threads/Makefile.am:
7981           fold enumcaps into caps dir
7982           clean up Makefile.am's for testsuite
7983
7984 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7985
7986         * docs/gst/Makefile.am:
7987         * docs/libs/Makefile.am:
7988           clean up docs build.  Fixes needless rebuilding of template files.
7989
7990 2004-07-28  Wim Taymans  <wim@fluendo.com>
7991
7992         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
7993         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
7994         Make sure that a bin state change tries to keep the children
7995         in sync. 
7996         Added debug logging to the thread.
7997
7998 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
7999
8000         * win32/GStreamer.vcproj:
8001         * win32/gstreamer.def:
8002           more exports for the plugins
8003
8004 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
8005
8006         * win32/gstgetbits.vcproj:
8007         * win32/gstgetbits.def:
8008         * win32/msvc71.sln:
8009           add support for the getbits plugin
8010
8011 2004-07-27  Wim Taymans  <wim@fluendo.com>
8012
8013         * gst/gstvalue.c: (gst_value_transform_double_fraction),
8014         (gst_value_transform_fraction_double), (_gst_value_initialize):
8015         * testsuite/caps/Makefile.am:
8016         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
8017         (check_from_fraction_convert), (transform_test), (main):
8018         Added transform functions between double and fraction.
8019         Added testcase to verify transforms
8020
8021 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
8022
8023         * win32/GStreamer.vcproj:
8024           rename GStreamer-0.8.lib to libgstreamer.lib
8025
8026 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
8027
8028         * win32/gstelements.vcproj:
8029         * win32/gstoptimalscheduler.vcproj:
8030           fixes for the Release build
8031
8032 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
8033
8034         * win32/config.h:
8035           update the version number
8036
8037 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
8038
8039         * win32/GStreamer.vcproj:
8040           add gstinterface to the build
8041
8042 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
8043
8044         * win32/gstreamer.def:
8045           add many definitions needed by plugins,
8046           GST_CAT_DEFAULT only available in the Debug build ?
8047
8048 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8049
8050         * gst/gstelement.c: (gst_element_set_eos_recursive):
8051           various whitespace fixes.
8052           doc fix, fixes #148497
8053
8054 2004-07-25  Benjamin Otte  <otte@gnome.org>
8055
8056         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
8057           don't delay links on the sink elements, it causes unnegotiated
8058           links.
8059         * gst/elements/gsttypefindelement.c:
8060         (gst_type_find_element_base_init):
8061           add our padtemplates, we indeed do have some.
8062         * gst/elements/gsttypefindelement.c:
8063         (gst_type_find_element_handle_event),
8064         (gst_type_find_element_chain):
8065           don't push data when typefinding failed.
8066         * gst/gstpad.c: (gst_pad_link_fixate):
8067           check that no fixate function returns empty caps.
8068         * gst/gstpad.c: (gst_pad_push):
8069           check that the link is negotiated before data gets pushed.
8070         * tools/gst-register.c: (main):
8071           don't assert (fixes #148283)
8072
8073 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
8074
8075         * docs/gst/gstreamer-sections.txt:
8076         * docs/gst/tmpl/gstconfig.sgml:
8077           add GST_PLUGIN_EXPORT definition
8078
8079 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
8080
8081         * gst/gstplugin.h:
8082         * gst/gstconfig.h.in:
8083         * win32/gstconfig.h:
8084         * win32/gstelements.def:
8085         * win32/gstelements.vcproj:
8086         * win32/gstoptimalscheduler.def:
8087         * win32/gstoptimalscheduler.vcproj:
8088         * win32/gstspider.def:
8089         * win32/gstspider.vcproj:
8090           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
8091
8092 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8093
8094         * docs/gst/gstreamer-sections.txt:
8095           remove GST_CAT_DEFAULT because the type has changed
8096
8097 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
8098
8099         * win32/gstbytestream.vcproj:
8100         * win32/gstelements.vcproj:
8101         * win32/gst-inspect.vcproj:
8102         * win32/gst-launch.vcproj:
8103         * win32/gstoptimalscheduler.vcproj:
8104         * win32/GStreamer.vcproj:
8105         * win32/gst-register.vcproj:
8106         * win32/gstspider.vcproj:
8107         * win32/msvc71.sln:
8108           Copy the files where needed after building, The testsuite will be
8109           built separately
8110
8111 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
8112
8113         * win32/config.h:
8114         * win32/README.txt:
8115         * docs/manual/win32.xml:
8116         Fixed the plugin and GStreamer location
8117
8118 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
8119
8120         * win32/gstreamer.def:
8121         More exports for the plugins
8122
8123 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
8124
8125         * gst/gstinfo.h:
8126         Marc was right, we need to export literally GST_CAT_DEFAULT
8127
8128 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
8129
8130         * win32/config.h:
8131         NLS crashes in gettext, disabled until this is solved
8132
8133 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
8134
8135         * win32/gst-inspect.vcproj:
8136         * win32/gst-launch.vcproj:
8137         Should use NLS when available
8138
8139 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
8140
8141         * gst/registries/gstxmlregistry.c:
8142         removing the file doesn't seem to be a good idea on Linux
8143
8144 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
8145
8146         * gst/registries/gstxmlregistry.c:
8147         Remove the registry before renaming the tempfile (needed for Windows)
8148
8149 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8150
8151         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
8152         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
8153         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
8154         * gst/elements/gstmultifilesrc.h:
8155         Added newmedia property so it generates newmedia events between each
8156         file when property is set, as well as fixed eos handling
8157
8158 2004-07-22  David Schleef  <ds@schleef.org>
8159
8160         * gst/gststructure.c: (gst_structure_id_empty_new),
8161         (gst_structure_empty_new):  Set type field correctly.
8162         * gst/gststructure.h: Check type field correctly.
8163         * testsuite/caps/Makefile.am:
8164         * testsuite/caps/structure.c: (test1), (main): Add a very small
8165         test for structures.
8166
8167 2004-07-22  David Schleef  <ds@schleef.org>
8168
8169         * docs/random/ds/0.9-suggested-changes: more comments
8170         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
8171
8172 2004-07-22  Benjamin Otte  <otte@gnome.org>
8173
8174         * gst/gstelementfactory.c: (gst_element_register):
8175           set the factory in the class struct, so gst_element_get_factory
8176           actually works
8177         * gst/parse/grammar.y:
8178           set element to playing when it gets unlocked as we can't rely on the
8179           bin state - all elements in the bin state might still be locked in
8180           NULL)
8181
8182 2004-07-22  Benjamin Otte  <otte@gnome.org>
8183
8184         * gst/gstelement.c: (gst_element_set_state_func):
8185           make this a static function
8186
8187 2004-07-22  Wim Taymans  <wim@fluendo.com>
8188
8189         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8190         (gst_opt_scheduler_pad_link):
8191         fix 147894-2 and the group_link problem.
8192
8193 2004-07-22  Wim Taymans  <wim@fluendo.com>
8194
8195         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
8196         (handoff_identity), (main):
8197         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
8198         (handoff_identity), (main):
8199         * testsuite/schedulers/Makefile.am:
8200         * testsuite/schedulers/group_link.c: (main):
8201         Show bug in scheduler when linking chain and loop based element 
8202         where the chain based element was not yet in a group.
8203
8204 2004-07-21  Benjamin Otte  <otte@gnome.org>
8205
8206         * gst/.cvsignore:
8207         * gst/autoplug/.cvsignore:
8208         * gst/elements/.cvsignore:
8209         * gst/indexers/.cvsignore:
8210         * libs/gst/bytestream/.cvsignore:
8211         * libs/gst/control/.cvsignore:
8212         * libs/gst/getbits/.cvsignore:
8213         * testsuite/states/.cvsignore:
8214         * testsuite/threads/.cvsignore:
8215           keep this up to date, since I seem to be the only one who cares
8216           about not missing files on commits (editor's note: no you don't,
8217           but feel free to change them at the time you add stuff instead
8218           of later on)
8219
8220 2004-07-21  Benjamin Otte  <otte@gnome.org>
8221
8222         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
8223         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
8224         (gst_bin_child_state_change_func), (set_kid_state_func),
8225         (gst_bin_set_state), (gst_bin_change_state_norecurse):
8226           make state changes work correctly and reentrant (so removing
8227           elements from bins during state changes of bins doesn't cause
8228           segfaults or even wrong states)
8229           add debugging category and debugging output to print children states
8230         * gst/gstbin.c: (gst_bin_dispose): 
8231           add some assertion checks
8232         * gst/gstbin.h:
8233         * gst/gstbin.c: (gst_bin_sync_children_state):
8234           deprecate this function - it just does gst_bin_set_state (bin,
8235           GST_STATE (bin)) 
8236         * testsuite/threads/queue.c: (main):
8237           don't use gst_bin_sync_children_state anymore
8238         * testsuite/states/Makefile.am:
8239         * testsuite/states/bin.c:
8240           test that the state changes of bins work as expected
8241         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
8242           some adjustments to change states correctly, too
8243         * gst/gstthread.c: (gst_thread_change_state):
8244           don't enable/disable "threadsafe" properties, they're unused and
8245           cause random segfaults
8246         * testsuite/threads/Makefile.am:
8247           the queue check randomly passes now, ignore it
8248
8249 2004-07-21  Benjamin Otte  <otte@gnome.org>
8250
8251         * gst/gstpad.c:
8252           check if data is NULL before outputting debug info. (fixes #145100)
8253
8254 2004-07-21  Benjamin Otte  <otte@gnome.org>
8255
8256         * gst/schedulers/entryscheduler.c:
8257         (gst_entry_scheduler_loop_wrapper),
8258         (gst_entry_scheduler_chain_wrapper),
8259         (gst_entry_scheduler_get_wrapper):
8260           reset the state when the cothread starts, so we don't get assertion
8261           failures on restarting of cothreads
8262
8263 2004-07-20  Benjamin Otte  <otte@gnome.org>
8264
8265         * gst/gstelement.c: (gst_element_link_pads_filtered):
8266           use correct sinkpad, if only sinkpad is specified, but not srcpad
8267           (fixes #147889)
8268         * gst/gstelement.c: (gst_element_set_state_func),
8269         (gst_element_change_state): ref/unref the element, signal handlers
8270         could get rid of the element otherwise
8271
8272 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8273
8274         * docs/random/ds/0.9-suggested-changes:
8275           Make note about renaming fixed-list to array.
8276         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
8277         (_gst_value_initialize):
8278           Add array intersections.
8279         * testsuite/caps/intersect2.c: (main):
8280           Add test for array intersections.
8281
8282 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8283
8284         * configure.ac: back to cvs
8285
8286 === release 0.8.4 ===
8287
8288 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8289
8290         * configure.ac:
8291           releasing 0.8.4, "Paella"
8292           bump libtool versioning
8293
8294 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8295
8296         * po/LINGUAS:
8297         * po/ca.po:
8298           adding Catalan translation (Jordi Mallach)
8299
8300 2004-07-20  Wim Taymans  <wim@fluendo.com>
8301
8302         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
8303         (handoff_identity), (main):
8304         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
8305         (handoff_identity), (main):
8306         * testsuite/schedulers/Makefile.am:
8307         Added failing testcase for variant of #147894
8308
8309 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8310
8311         patch by: David Moore
8312
8313         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
8314         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
8315         (group_migrate_connected):
8316         * testsuite/schedulers/Makefile.am:
8317           fix for #142813 (Deadlock in optimal scheduler)
8318
8319 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8320
8321         patch by: Wim Taymans
8322
8323         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
8324         (gst_opt_scheduler_schedule_run_queue),
8325         (gst_opt_scheduler_get_wrapper), (get_group),
8326         (group_migrate_connected):
8327         * testsuite/schedulers/Makefile.am:
8328           fix for #147819 (Add some checks in the opt scheduler)
8329
8330 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8331
8332         patch by: Benjamin Otte
8333
8334         * gst/gstelementfactory.c: (__gst_element_details_set):
8335           fix for #147929: running gst-register in non-utf8 locale can cause
8336           invalid registry
8337
8338 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8339
8340         patch by: Wim Taymans
8341
8342         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
8343         (group_has_element), (element_get_reachables_func),
8344         (group_migrate_connected):
8345           fix for #147894 (opt scheduler decoupled elements mismanagement)
8346         * testsuite/schedulers/Makefile.am:
8347           testsuite app now passes
8348
8349 2004-07-19  Wim Taymans  <wim@fluendo.com>
8350
8351         * testsuite/schedulers/147819.c: (handoff_identity1),
8352         (handoff_identity2), (main):
8353         * testsuite/schedulers/Makefile.am:
8354         Added testcase for bug 147819
8355
8356 2004-07-19  Wim Taymans  <wim@fluendo.com>
8357
8358         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
8359         (handoff_identity), (main):
8360         * testsuite/schedulers/Makefile.am:
8361         Added testcase for bug 147894
8362
8363 2004-07-16  Wim Taymans  <wim@fluendo.com>
8364
8365         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
8366         * testsuite/schedulers/142183.c: (handoff_identity), (main):
8367         * testsuite/schedulers/Makefile.am:
8368         Added testsuite for bug 142183 in its two incarnations. Refcount
8369         is not increased for scheduled elements and threadsafe properties
8370         mutexes are not properly unlocked.
8371
8372 2004-07-16  Wim Taymans  <wim@fluendo.com>
8373
8374         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
8375         (create_chain), (destroy_chain), (create_group), (destroy_group),
8376         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
8377         (group_dec_link), (gst_opt_scheduler_pad_link),
8378         (group_inc_links_for_element), (group_migrate_connected):
8379         Call group_inc_link with the proper src->sink ordering -- 
8380         break this, and we break sort_chain. patch from wingo for bug
8381         147713.
8382         Partially revert patch 1.89. When adding a loop based element to 
8383         the scheduler, the links to other groups are automatically followed
8384         and incremented. This should not happen because the bin will call
8385         pad_link explicitly for those connection, resulting in them counted 
8386         twice. Results in assertion failure on pipeline cleanup.
8387
8388 2004-07-16  Wim Taymans  <wim@fluendo.com>
8389
8390         * testsuite/schedulers/143777-2.c: (main):
8391         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
8392         (main):
8393         * testsuite/schedulers/Makefile.am:
8394         Added cleanup code to testcase 143777-2.
8395         Added testcase to show bug 147713, does not really show the
8396         deadlock as I can't figure out how to trigger it, but it does
8397         demonstrate bad ordering in the scheduler.
8398
8399 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8400
8401         * gst/gstvalue.c: (gst_value_deserialize_fraction):
8402           change strndup to g_strndup.  Fixes #147707
8403
8404 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8405
8406         * po/af.po:
8407         * po/az.po:
8408         * po/cs.po:
8409         * po/en_GB.po:
8410         * po/fr.po:
8411         * po/nl.po:
8412         * po/sr.po:
8413         * po/sv.po:
8414         * po/tr.po:
8415         * po/uk.po:
8416           updated translations
8417
8418 2004-07-16  Benjamin Otte  <otte@gnome.org>
8419
8420         * gst/gstvalue.c: (gst_greatest_common_divisor):
8421           use ints and return ints, fractions only use ints, too, so this
8422           avoids accidently casting multiplications to unsigned
8423         (gst_value_lcopy_fraction): it's ints, not uint32
8424         (gst_value_set_fraction): disallow minint, multiplying and negation
8425           are broken with it
8426         (gst_value_fraction_multiply): fix to make large numbers work and get
8427         rid of the assumption that the multiplication of two ints fits an
8428         int64 - dunno if that's true for all systems
8429         * testsuite/caps/Makefile.am:
8430         * testsuite/caps/fraction-multiply-and-zero.c:
8431         (check_multiplication), (check_equal), (zero_test), (main):
8432           add tests for all the stuff above
8433         * testsuite/caps/value_compare.c: (test1):
8434           fix comment
8435         * tests/.cvsignore:
8436         * testsuite/caps/.cvsignore:
8437         * testsuite/debug/.cvsignore:
8438         * testsuite/dlopen/.cvsignore:
8439         * testsuite/states/.cvsignore:
8440           get up to date
8441
8442 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8443
8444         * docs/manual/bins-api.xml:
8445         * docs/manual/factories.xml:
8446         * docs/manual/helloworld.xml:
8447         * docs/manual/links-api.xml: 
8448           fixes for out of date info, incorrect info and grammar
8449
8450 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8451
8452         * docs/manual/pads.xml:
8453         * docs/manual/pads-api.xml: grammar fix
8454
8455 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8456
8457         * docs/manual/pads-api.xml: typo + grammar fix
8458
8459 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8460
8461         * docs/gst/gstreamer-sections.txt:
8462           add new symbols
8463         * docs/gst/tmpl/gstelement.sgml:
8464         * docs/gst/tmpl/gstpad.sgml:
8465         * docs/gst/tmpl/gsttypes.sgml:
8466         * docs/gst/tmpl/gstvalue.sgml:
8467           update docs
8468         * gst/gststructure.c: (gst_structure_set_valist),
8469         (gst_structure_from_abbr), (gst_structure_to_abbr):
8470         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
8471         (gst_greatest_common_divisor), (gst_value_init_fraction),
8472         (gst_value_copy_fraction), (gst_value_collect_fraction),
8473         (gst_value_lcopy_fraction), (gst_value_set_fraction),
8474         (gst_value_get_fraction_numerator),
8475         (gst_value_get_fraction_denominator),
8476         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
8477         (gst_value_deserialize_fraction),
8478         (gst_value_transform_fraction_string),
8479         (gst_value_transform_string_fraction),
8480         (gst_value_compare_fraction), (_gst_value_initialize):
8481         * gst/gstvalue.h:
8482           adding GstFraction GValue type, get/set, and multiply
8483         * testsuite/caps/Makefile.am:
8484         * testsuite/caps/fraction.c: (test), (main):
8485         * testsuite/caps/string-conversions.c: (main):
8486         * testsuite/caps/value_compare.c: (test1), (main):
8487           add regression tests for GstFraction
8488
8489 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8490         
8491         * docs/manual/init-api.xml: Grammar fix
8492
8493 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8494
8495         * docs/manual/states.xml: Fix inconsistent information
8496
8497 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8498
8499         * gst/gstelement.c: (gst_element_set_state):
8500         * gst/gstpad.c: (gst_pad_try_set_caps):
8501         * gst/gststructure.c:
8502         * gst/gstthread.c: (gst_thread_child_state_change):
8503         * gst/gstvalue.c: (gst_value_compare_double):
8504         * gst/gstvalue.h:
8505         * testsuite/parse/parse1.c: (main):
8506           debugging additions and style cleanups
8507
8508 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8509
8510         * docs/manual/states.xml: Grammar fix
8511
8512 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8513
8514         * docs/manual/pads.xml: Grammar fix
8515
8516 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8517
8518         * docs/manual/elements.xml: Fixed image reference
8519
8520 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8521
8522         * docs/manual/goals.xml: Grammar fix
8523
8524 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8525
8526         * docs/manual/motivation.xml:
8527         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
8528
8529 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8530
8531         * docs/manual/motivation.xml: Fix spelling
8532
8533 2004-07-15  Benjamin Otte  <otte@gnome.org>
8534
8535         * gst/gstelement.h: 
8536           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
8537           strings.
8538         * gst/gstelement.c (gst_element_class_init):
8539           GError's are boxed, not objects
8540         * gst/gstmarshal.list:
8541           update list for the fixed error signal
8542
8543 2004-07-14  Andy Wingo  <wingo@pobox.com>
8544
8545         * gst/gsttag.c: Add a tag merge func for pointers. The header was
8546         there all along, but the function wasn't. (guile-gstreamer's build
8547         system uses the address of the function -- I wasn't actually
8548         trying to use this.)
8549
8550 2004-07-14  Andy Wingo  <wingo@pobox.com>
8551
8552         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
8553         as gst_pad_proxy_pad_link) just link to every other pad when they
8554         are called. In the case where the graph has cycles, this will mean
8555         that a call to try_set_caps will recurse. Allow this recursion
8556         and return OK, while we wait for the first try_set_caps to give a
8557         proper return value.
8558         (gst_pad_link_call_link_functions): Since this function is the
8559         only one to set the NEGOTIATING flag on a pad, if the flag is set
8560         it means that the link functions have indirectly recursed. If this
8561         happens, error out to avoid infinite recursion and an eventual
8562         SEGV.
8563         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
8564         (gst_pad_proxy_getcaps): Intersect the result with the template
8565         caps to ensure that the return value is valid.
8566
8567 2004-07-14  Andy Wingo  <wingo@pobox.com>
8568
8569         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
8570         one refcount, the calling function is the owner of the buffer.
8571
8572 2004-07-14  Wim Taymans  <wim@fluendo.com>
8573
8574         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
8575         (gst_opt_scheduler_pad_link), (group_migrate_connected):
8576         Fix stupid warning when an element is to be migrated but
8577         is already migrated.
8578
8579 2004-07-14  Wim Taymans  <wim@fluendo.com>
8580
8581         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
8582         (gst_opt_scheduler_pad_link), (group_migrate_connected):
8583         Make sure that a single non-loop-based element does not 
8584         end up in a group. This fixes the testsuite again.
8585
8586 2004-07-14  Wim Taymans  <wim@fluendo.com>
8587
8588         * gst/schedulers/gstoptimalscheduler.c: (create_group),
8589         (add_to_group), (merge_groups), (schedule_group),
8590         (gst_opt_scheduler_get_wrapper), (group_elements),
8591         (group_dec_link), (gst_opt_scheduler_pad_link),
8592         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
8593         (gst_opt_scheduler_iterate):
8594         move isolated groups to a new chain.
8595         Emit a warning instead of segfaulting in some error cases.
8596         Fix a bug where the link count between groups was not calculated 
8597         correctly. Fixes #144510.
8598
8599 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
8600         * gst/elements/gstfilesrc.c:
8601           Binary files support under Windows now OK
8602       
8603 2004-07-13  Benjamin Otte  <otte@gnome.org>
8604
8605           compatibility fixes for Solaris 8/gcc 2.95
8606         * configure.ac:
8607           include libintl libs in LDFLAGS
8608         * gstvalue.c (gst_value_deserialize_buffer):
8609           cast isxdigit stuff to int to silence compiler warning
8610
8611 2004-07-12  Benjamin Otte  <otte@gnome.org>
8612
8613         * gst/gsttypes.h:
8614           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
8615           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
8616           just causes support madness
8617         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
8618           make it work without this
8619         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
8620         (gst_file_index_commit):
8621           glib IO channels don't want binary mode
8622         * testsuite/bytestream/filepadsink.c: (main):
8623         * testsuite/bytestream/test1.c: (read_param_file):
8624           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
8625
8626 2004-07-12  Benjamin Otte  <otte@gnome.org>
8627
8628         * gst/gstelement.c: (gst_element_class_init),
8629         (gst_element_set_state), (gst_element_set_state_func):
8630           virutalize gst_element_set_state, use set_state member in class
8631           struct that was already added in 0.7 for this.
8632         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
8633         (gst_bin_change_state):
8634           make gst_bin_foreach works similar to other foreach functions, plug
8635           memleaks in it. Make functions using it work with the new approach.
8636           Document gst_bin_foreach, so it can be exported if we want to
8637         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
8638           use virtualized set_state to make set_state on bins set the state of
8639           all its children.
8640
8641 2004-07-12  Benjamin Otte  <otte@gnome.org>
8642
8643         * configure.ac:
8644           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
8645           http://bugs.gentoo.org/show_bug.cgi?id=53967)
8646         * gst/gstpad.c: (gst_pad_alloc_buffer):
8647           allow buffer_alloc functions to return NULL and allocate a normal
8648           buffer in that case
8649
8650 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
8651         * gst/elements/gstfilesink.c:
8652         * gst/elements/gstfilesrc.c:
8653         * gst/indexers/gstfileindex.c:
8654         * gst/gsttypes.h:
8655         * testsuite/bytestream/filepadsink.c:
8656         * testsuite/bytestream/test1.c:
8657           Handle binary files under Windows
8658
8659 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
8660         * docs/manual/win32.xml:
8661         * win32/config.h:
8662         * win32/gst-register.vcproj:
8663         * win32/gstreamer.def:
8664           Update to another gettext public build
8665
8666 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
8667         * gst/gstplugin.c:
8668           Fix an impossible C syntax
8669         * win32/config.h:
8670           Disable i18n under Windows for the moment
8671         * win32/gst-register.vcproj:
8672           Use this configuration
8673
8674 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
8675         * docs/manual/quotes.xml:
8676           Keep the quotes file alive
8677         * docs/random/ds/0.9-suggested-changes:
8678           Add the suggestion of including a 'rowstride' as part of video
8679           format caps
8680
8681 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8682
8683         * gst/gstelement.c: (gst_element_set_state),
8684         (gst_element_change_state):
8685           d'oh.  Set PENDING state correctly before forcing bin to change.
8686         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8687         (gst_structure_parse_fixed_list):
8688         * gst/schedulers/gstoptimalscheduler.c:
8689         (gst_opt_scheduler_state_transition):
8690         * testsuite/states/parent.c: (main):
8691           remove comment now that it's fixed.
8692
8693 2004-07-11  Benjamin Otte  <otte@gnome.org>
8694
8695         * gst/gstclock.h:
8696           GST_SECOND shouldn't cause a conversion to unsigned.
8697         * testsuite/clock/.cvsignore:
8698         * testsuite/clock/Makefile.am:
8699         * testsuite/clock/signedness.c: (main):
8700           make sure it never will again
8701
8702 2004-07-11  Andy Wingo  <wingo@pobox.com>
8703
8704         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
8705         whose state is higher than the bin state, raise the bin state to
8706         ensure that bin state := highest child state.
8707         
8708 2004-07-11  Andy Wingo  <wingo@pobox.com>
8709
8710         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
8711         procedure on the children of a bin. Assumes that the procedure can
8712         change the set of children.
8713         (set_kid_state_func): New static function.
8714         (gst_bin_change_state): Use gst_bin_foreach to call
8715         set_kid_state_func. Fixes a bug: if a child had a state-change
8716         handler that removes it from the bin, there would be a segfault.
8717         Hopefully it should also work in the case where the state-change
8718         handler on one child adds or removes other children. In any case,
8719         fixes should go to gst_bin_foreach.
8720
8721 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
8722
8723         * gst/gstelement.c: (gst_element_set_state):
8724           compatibility fix for latest plugins release.  Change loop back
8725           to while {}
8726
8727 2004-07-09  Wim Taymans  <wim@fluendo.com>
8728
8729         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
8730         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
8731         (gst_thread_main_loop):
8732         Since remove is virtual in GstBin we must not assume the 
8733         elements GList to have anothing useful.
8734         Add some more logging to GstThread and be a bit more paranoid
8735         when resetting the scheduler.
8736         Set the state of the bin to NULL before removing the children.
8737
8738 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8739
8740         * testsuite/threads/Makefile.am:
8741         * testsuite/threads/threadg.c:
8742           added test to check if problem when removing all elements from a
8743           GstThread before setting GstThread state to NULL
8744
8745 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8746
8747         * docs/gst/tmpl/gstelement.sgml:
8748         * docs/gst/tmpl/gsttypes.sgml:
8749         * gst/gstbin.c: (gst_bin_change_state):
8750         * gst/gstelement.c: (gst_element_set_state),
8751         (gst_element_change_state):
8752           rework so that for bins we try to set the state on all children
8753           as well even if the bin is in the correct state already.
8754           change while to do so at least one iteration is done.
8755           For regular elements, we fall back to the previous behaviour for
8756           now since we first need a new plugins release.
8757         * testsuite/states/parent.c: (main):
8758           test for this case
8759           Fixes #123774
8760
8761 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8762
8763         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
8764         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
8765         (gst_queue_release_locks), (gst_queue_change_state),
8766         (gst_queue_set_property):
8767           add proper lock debugging.  Change dispose to finalize, since
8768           we're freeing mutexes and other stuff which should happen only once.
8769
8770 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8771
8772         * docs/gst/tmpl/gstelement.sgml:
8773         * docs/gst/tmpl/gstplugin.sgml:
8774         * docs/gst/tmpl/gsttypes.sgml:
8775         * docs/pwg/building-state.xml:
8776         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
8777         * gst/gstelement.c: (gst_element_change_state):
8778         * gst/gstthread.c: (gst_thread_change_state):
8779           catch wrong state changes in element base class.
8780
8781 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8782
8783         * gst/gstinfo.h:
8784           clean up layout a little.
8785
8786 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8787
8788         * configure.ac:
8789         * testsuite/Makefile.am:
8790         * testsuite/states/Makefile.am:
8791         * testsuite/states/parent.c: (main):
8792           re-enable states testsuite dir.  Add test for state changes and
8793           parent behaviour
8794
8795 2004-07-09  Wim Taymans  <wim@fluendo.com>
8796
8797         * gst/schedulers/gstoptimalscheduler.c:
8798         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
8799         (element_get_reachables_func), (element_get_reachables),
8800         (debug_element), (rechain_group), (group_migrate_connected),
8801         (gst_opt_scheduler_pad_unlink):
8802         Do not try to migrate decoupled elements to a new group since
8803         they are not added to groups.
8804
8805 2004-07-08  Benjamin Otte  <otte@gnome.org>
8806
8807         * gst/gstelement.c: (gst_element_error_func):
8808           make reentrant (= allow removing elements in error handler)
8809
8810 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8811
8812         * gst/gstpad.c: (gst_pad_event_default_dispatch),
8813         (gst_pad_send_event), (gst_pad_call_chain_function):
8814           events sent to elements below PAUSED cannot be handled, so
8815           don't try to
8816
8817 2004-07-08  Wim Taymans  <wim@fluendo.com>
8818
8819         * gst/schedulers/gstoptimalscheduler.c:
8820         (chain_recursively_migrate_group), (create_group),
8821         (schedule_group), (gst_opt_scheduler_pad_link),
8822         (group_elements_set_visited), (element_get_reachables_func),
8823         (element_get_reachables), (group_can_reach_group), (debug_element),
8824         (rechain_group), (group_migrate_connected),
8825         (gst_opt_scheduler_pad_unlink):
8826         * testsuite/schedulers/Makefile.am:
8827         Implemented group splitting and rechaining.
8828         Fixes 143777 and 143777-2 in the testsuite.
8829
8830 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8831
8832         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
8833           extra debugging
8834         * gst/gstevent.h:
8835         * gst/gstinfo.c: (gst_debug_log_default):
8836           print time nicely.  add thread pointer until someone figures out
8837           a completely portable way of getting at thread id's.
8838         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
8839         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
8840         (gst_pad_call_chain_function):
8841           extra debugging
8842         * gst/schedulers/gstoptimalscheduler.c:
8843         (get_group_schedule_function), (loop_group_schedule_function),
8844         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
8845         (pad_clear_queued), (gst_opt_scheduler_iterate):
8846           rename BUFPEN and friends to DATAPEN since that's what they are.
8847
8848 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8849
8850         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
8851         * gst/gstbuffer.h:
8852         * gst/gstpad.c:
8853           cleanups and debugging
8854
8855 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8856
8857         * configure.ac:
8858         * gst/gstvalue.c: (gst_value_compare_enum),
8859         (gst_value_serialize_enum), (gst_value_deserialize_enum),
8860         (gst_value_can_compare), (gst_value_compare):
8861         * testsuite/Makefile.am:
8862         * testsuite/enumcaps/Makefile.am:
8863         * testsuite/enumcaps/enumcaps.c:
8864           Fix enum serialization, deserialization, comparison in caps, add
8865           a test to ensure that this continues working in the future.
8866
8867 2004-07-06  David Schleef  <ds@schleef.org>
8868
8869         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
8870         Fix memleak.
8871
8872 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8873
8874         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
8875         * gst/gstplugin.h:
8876         * gst/registries/gstxmlregistry.c:
8877         (plugin_times_older_than_recurse), (plugin_times_older_than),
8878         (gst_xml_registry_parse_padtemplate):
8879           only rebuild registry when actual plugins have a newer time than
8880           the registry.  Fixes #145520
8881
8882 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8883
8884         * docs/manual/manual.xml:
8885         * docs/manual/win32.xml:
8886           add chapter on win32 building.  fixes #142422
8887
8888 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8889
8890         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
8891
8892         * gst/autoplug/gstspider.c: (gst_spider_init),
8893         (gst_spider_dispose):
8894           fix spider memleaks.  fixes #137863
8895
8896 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8897
8898         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
8899
8900         * gst/schedulers/gstoptimalscheduler.c:
8901         (gst_opt_scheduler_pad_unlink):
8902           fix SIGBUS error, fixes #145338
8903
8904 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8905
8906         * gst/gstobject.c: (gst_object_replace):
8907         * gst/gstscheduler.c: (gst_scheduler_get_clock):
8908         * gst/gstsystemclock.c: (gst_system_clock_obtain):
8909           clean up clock lifecycle.  Fixes #109831
8910
8911 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8912
8913         * po/LINGUAS:
8914         * po/cs.po:
8915           added Czech translation (Miloslav Trmac)
8916
8917 2004-07-04  David Schleef  <ds@schleef.org>
8918
8919         * tools/Makefile.am:
8920         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
8921
8922 2004-07-04  David Schleef  <ds@schleef.org>
8923
8924         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
8925
8926 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8927
8928         * gst/gstbin.c: (gst_bin_restore_thyself):
8929           chain to parent restore so the bins get restored correctly
8930           in the editor
8931
8932 2004-07-03  David Schleef  <ds@schleef.org>
8933
8934         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
8935         Actually do something in these functions, like before the big
8936         caps change.  (bug #145137)
8937
8938 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8939
8940         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
8941         (gst_element_get_compatible_pad_filtered):
8942         * gst/gstthread.c: (gst_thread_main_loop):
8943           more debugging
8944
8945 2004-07-02  David Schleef  <ds@schleef.org>
8946
8947         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
8948         * gst/gstobject.h:
8949         * gst/gstparse.h:
8950         * gst/gsttrace.h:
8951         * gst/gstxml.h:
8952
8953 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8954
8955         * gst/gstpad.c: (gst_pad_check_schedulers),
8956         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
8957         (gst_pad_link_prepare):
8958           revert until testsuite is fixed
8959
8960 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8961
8962         * testsuite/Makefile.am:
8963         * testsuite/caps/filtercaps.c: (main):
8964         * testsuite/clock/clock1.c: (main):
8965         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
8966           fix some more tests
8967
8968 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8969
8970         * testsuite/cleanup/cleanup1.c: (create_pipeline):
8971         * testsuite/cleanup/cleanup2.c: (create_pipeline):
8972         * testsuite/cleanup/cleanup4.c: (main):
8973           fix testsuite
8974
8975 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8976
8977         * libs/gst/control/control.c:
8978         * libs/gst/control/dparam.c:
8979         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
8980         * libs/gst/control/dparammanager.c:
8981         * libs/gst/control/dparammanager.h:
8982         * testsuite/dynparams/Makefile.am:
8983         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
8984         (gst_dptest_change_state), (gst_dptest_chain), (main):
8985           fix testcase for dparams
8986           add debugging category
8987
8988 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8989
8990         * testsuite/Rules:
8991           change path
8992
8993 2004-07-02  Benjamin Otte  <otte@gnome.org>
8994
8995         * tests/.cvsignore:
8996         * tests/Makefile.am:
8997         * tests/mass_elements.c: (gst_get_current_time), (main):
8998           add simple benchmark to test various speeds of fakesrc ! identity !
8999           identity ! ... ! fakesink.
9000           Usage: mass_elements [num_identities] [num_buffers]
9001           If not specified they default to 1000.
9002
9003 2004-07-02  Benjamin Otte  <otte@gnome.org>
9004
9005         * gst/gstpad.c: (gst_pad_check_schedulers),
9006         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
9007         (gst_pad_link_prepare):
9008           check that pads that get linked belong to the same manager. The old
9009           code allowed linking elements before putting them into bins, so it
9010           worked to link them and then put them in different threads, which
9011           lead to weird behaviour.
9012           Since this effectively disallows linking elements before putting
9013           them in a bin, some applications might not work after this and error
9014           out. If these applications are too critical, we might need to revert
9015           that patch. Please test this before the next release...
9016
9017 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9018
9019         * gst/gstpad.c: (gst_pad_get_caps):
9020           throw an error if the getcaps function does not return a subset of
9021           the template caps.
9022         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
9023           make disconts without position info an error in debugging
9024         * tests/spidey_bench.c: (handoff), (main):
9025           don't count first try when averaging
9026
9027 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9028
9029         * gst/gstplugin.c: (gst_plugin_load_file):
9030           figure out problem with dynamic test
9031
9032 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9033
9034         * docs/gst/Makefile.am:
9035           fix docs build
9036
9037 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9038
9039         * po/POTFILES.in:
9040         * po/af.po:
9041         * po/az.po:
9042         * po/en_GB.po:
9043         * po/fr.po:
9044         * po/nl.po:
9045         * po/sr.po:
9046         * po/sv.po:
9047         * po/tr.po:
9048         * po/uk.po:
9049         * tools/gst-register.c: (plugin_added_func), (main):
9050           i18n-ize -register, fix plural
9051
9052 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9053
9054         * gst/elements/gstidentity.c: (gst_identity_class_init),
9055         (gst_identity_init), (gst_identity_chain),
9056         (gst_identity_set_property), (gst_identity_get_property):
9057         * gst/elements/gstidentity.h:
9058           check for perfect stream
9059
9060 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
9061
9062         * gst/elements/gstidentity.c: (gst_identity_chain):
9063           print offset_end
9064
9065 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
9066
9067         * docs/gst/Makefile.am:
9068         * docs/gst/gstreamer-docs.sgml:
9069           doc fixes
9070
9071 2004-06-24  David Schleef  <ds@schleef.org>
9072
9073         * autogen.sh:  Remove call to env, since the buildbot isn't
9074         broken anymore.
9075
9076 2004-06-24  Wim Taymans  <wim@fluendo.com>
9077
9078         * gst/elements/Makefile.am:
9079         * gst/elements/gstelements.c:
9080         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
9081         (gst_multifdsink_class_init), (gst_multifdsink_init),
9082         (gst_multifdsink_add), (gst_multifdsink_remove),
9083         (gst_multifdsink_clear), (gst_multifdsink_chain),
9084         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
9085         * gst/elements/gstmultifdsink.h:
9086         Added an element that writes to multiple filedescriptors at once.
9087
9088 2004-06-24  Benjamin Otte  <otte@gnome.org>
9089
9090         * gst/parse/grammar.y:
9091           don't try to link elements before they have been added to bins
9092
9093 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9094
9095         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
9096         (gst_file_pad_get_length):
9097         * libs/gst/bytestream/filepad.h:
9098           add 2 new functions
9099
9100 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
9101
9102         * docs/gst/gstreamer-sections.txt:
9103         remove from docs, the define that Benjamin removed from gstelement.h
9104
9105 2004-06-22  Benjamin Otte  <otte@gnome.org>
9106
9107         * gst/gstelement.h:
9108           remove define that referenced a nonexisting GstElement struct member
9109
9110 2004-06-20  Benjamin Otte  <otte@gnome.org>
9111
9112         * gst/gstdata.c: (gst_data_is_writable):
9113           whoops, return values were wrong, so writable data was marked as
9114           non-writable and vice versa. (fixes #143953, spotted by Francis
9115           Labonte)
9116           Shows how rarely we need to copy data ;)
9117
9118 2004-06-20  Benjamin Otte  <otte@gnome.org>
9119
9120         * testsuite/schedulers/.cvsignore:
9121         * testsuite/schedulers/Makefile.am:
9122         * testsuite/schedulers/143777-2.c: (main):
9123           add test for opt breakage in bug #143777
9124
9125 2004-06-20  Benjamin Otte  <otte@gnome.org>
9126
9127         * gst/gstpad.c: (gst_pad_call_chain_function):
9128           check for if we were unlinked while inside the chainfunction (fixes
9129           entrygthread having issues with #143777)
9130         * testsuite/schedulers/143777.c: (main):
9131         * testsuite/schedulers/Makefile.am:
9132           add a test for that fix
9133
9134 2004-06-20  Benjamin Otte  <otte@gnome.org>
9135
9136         * gst/gstvalue.c: (gst_value_set_int_range):
9137           test that start is smaller then end
9138         * libs/gst/bytestream/Makefile.am:
9139         * libs/gst/bytestream/filepad.c: 
9140         * libs/gst/bytestream/filepad.h:
9141           add GstFilePad - a pad that behaves like a FILE*
9142         * testsuite/bytestream/.cvsignore:
9143         * testsuite/bytestream/Makefile.am:
9144         * testsuite/bytestream/filepadsink.c: 
9145           test for the GstFilePad
9146
9147 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9148
9149         * gst/elements/gstidentity.c: (gst_identity_class_init),
9150         (gst_identity_init), (gst_identity_set_clock),
9151         (gst_identity_chain), (gst_identity_set_property),
9152         (gst_identity_get_property):
9153         * gst/elements/gstidentity.h:
9154         * gst/gstclock.c: (gst_clock_id_wait):
9155           add a "sync" property to sync to the clock
9156
9157 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9158
9159         * gst/gstelementfactory.c: (gst_element_factory_create):
9160           make the freakin "elementfactory bla has no type" message more
9161           useful. So we actually can do something when someone shows up
9162           complaining about it.
9163
9164 2004-06-15  Johan Dahlin  <johan@gnome.org>
9165
9166         * tools/gst-inspect.c (main): Fallback to plugin if no element is
9167         found. This matches the old behavior better. Thanks to Thomas for
9168         pointing out.
9169
9170 2004-06-14  David Schleef  <ds@schleef.org>
9171
9172         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
9173         -fomit-frame-pointer.  Appears to generate correct code in
9174         other cases as well.
9175
9176 2004-06-14  Johan Dahlin  <johan@gnome.org>
9177
9178         * tools/gst-inspect.c (main): Add two new command line options: -a
9179         to print all elements and -n to print the name on each line. Also
9180         fix some error reporting.
9181         (main): Simplify, remove -n and always print names if -a is specified
9182
9183 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
9184
9185         * win32/gstconfig.h:
9186         * win32/GSTreamer.vcproj:
9187         * win32/Makefile:
9188         * gst/gstconfig.h.in:
9189         * gst/gst.h:
9190         * gst/gstbin.h:
9191         * gst/gstelement.h:
9192         * gst/gstevent.h:
9193         * gst/gstobject.h:
9194         * gst/gstpad.h:
9195         * docs/gst/gstreamer-sections.txt:
9196         * docs/gst/tmpl/gstconfig.sgml:
9197           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
9198
9199 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
9200         * docs/gst/gstreamer-sections.txt:
9201         * docs/gst/tmpl/gstconfig.sgml:
9202         Add the GSTREAMER_EXPORT macro to the docs
9203
9204 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
9205
9206         * tools/gst-compprep.c: (handle_xmlerror), (main):
9207         Add a check for the version that introduced SetStructuredError to fix
9208         the build on FC1
9209
9210 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
9211
9212         * win32/msvc71.sln:
9213         * win32/testsuite/:
9214           prepare to compile the testsuite with MSVC
9215
9216 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
9217
9218         * docs/manual/win32.xml:
9219           attempt to transform the Win32 README into an XML doc
9220
9221 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
9222
9223         * gst/gst.c:
9224         * gst/gstbin.*:
9225         * gst/config.h.in:
9226         * gst/gstelement.*:
9227         * gst/gstevent.h:
9228         * gst/gstobject.*:
9229         * gst/gstpad.h:
9230         * tools/gst-register.c:
9231         * win32/gstreamer.def:
9232           extern symbols are now exported for the Windows DLL
9233
9234 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
9235
9236         * gst/gstinfo.h:
9237           fix a problem to enable/disable DEBUG under MSVC
9238
9239 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
9240
9241         * win32/:
9242           enable more debug code in DEBUG build
9243
9244 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
9245
9246         * win32/config.h:
9247         * gst/gst-i18n-app.h:
9248           enable NLS under Windows
9249
9250 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
9251         * tools/gst-compprep.c: (handle_xmlerror), (main):
9252           Make an error that baffled me a bit clearer
9253
9254 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9255
9256         * gst/gstqueue.c:
9257           don't use g_queue_get_length () because it's 2.4, use ->length
9258
9259 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
9260
9261         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
9262
9263         * tools/gst-inspect.c: (print_signal_info):
9264           don't free random data twice. (fixes #144185)
9265
9266 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9267
9268         * gst/gstqueue.c:
9269         * gst/gstqueue.h:
9270           fix removing from the wrong queue on event timeout
9271           fix disposing of the event queue by casting correctly
9272           add mutexes for handling the event queue
9273           someone was sleeping when fixing queue last time around :)
9274
9275 2004-06-10  Johan Dahlin  <johan@gnome.org>
9276
9277         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
9278         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
9279
9280 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9281
9282         * docs/random/gdp:
9283         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
9284         * libs/gst/dataprotocol/dataprotocol.c:
9285         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
9286         (gst_dp_buffer_from_header):
9287         * libs/gst/dataprotocol/dataprotocol.h:
9288         * libs/gst/dataprotocol/dp-private.h:
9289           rev version to 0.1, add buffer flags and copy them
9290
9291 2004-06-09  Johan Dahlin  <johan@gnome.org>
9292
9293         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
9294         the flags from the buffer we're copying.
9295
9296 2004-06-09  Wim Taymans  <wim@fluendo.com>
9297
9298         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
9299         * gst/elements/gstidentity.c: (gst_identity_init),
9300         (gst_identity_chain):
9301         Print more buffer info in fakesink.
9302         Make identity output similar to fakesink.
9303
9304 2004-06-07  Daniel Gazard  <dany42@free.fr>
9305
9306         reviewed by Benjamin Otte  <otte@gnome.org>
9307
9308         * configure.ac:
9309           fix cross compiling not working. (fixes #143741)
9310
9311 2004-06-07  Benjamin Otte  <otte@gnome.org>
9312
9313         * gst/gstelement.c: (gst_element_set_time_delay):
9314           add failure check
9315         * gst/gstinfo.h:
9316           put brackets around macro arguments of GST_TIME_ARGS, add note to
9317           move it to correct header in 0.9
9318
9319 2004-06-07  Benjamin Otte  <otte@gnome.org>
9320
9321         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
9322         (gst_file_index_load), (_file_index_id_save_entries),
9323         (gst_file_index_commit), (gst_file_index_add_association),
9324         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
9325         (gst_file_index_plugin_init):
9326           make debugging use a default category
9327
9328 2004-06-06  David Moore  <dcm@acm.org>
9329
9330         reviewed by Benjamin Otte  <otte@gnome.org>
9331
9332         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
9333         (gst_fdsrc_change_state):
9334           reset offset counter when going READY => PAUSED. (fixes #142903)
9335
9336 2004-06-06  ed@catmur.co.uk
9337
9338         reviewed by Benjamin Otte  <otte@gnome.org>
9339
9340         * gst/registries/gstxmlregistry.c:
9341         (gst_xml_registry_rebuild_recurse):
9342           don't rely on g_dir_open to figure out if a file is a directory, use
9343           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
9344           directories. (fixes #142850)
9345
9346 2004-06-06  Benjamin Otte  <otte@gnome.org>
9347
9348         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
9349           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
9350         * libs/gst/bytestream/adapter.c:
9351         * libs/gst/bytestream/adapter.h:
9352           fix copyright in header and typo in debugging category name
9353
9354 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9355
9356         * configure.ac:
9357           bump nano to cvs
9358
9359 === release 0.8.3 ===
9360
9361 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9362
9363         * configure.ac:
9364           update libtool versioning
9365           do a new release
9366         * docs/gst/tmpl/gstelement.sgml:
9367         * docs/gst/tmpl/gsttypes.sgml:
9368         * gst/gstinfo.c: (_gst_debug_init):
9369           put back GST_CAT_DATAFLOW to fix API breakage
9370
9371 2004-06-04  David Schleef  <ds@schleef.org>
9372
9373         * autogen.sh: Add a temporary 'env' to test buildbot problems.
9374
9375 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9376
9377         * configure.ac:
9378           bump nano to cvs
9379
9380 === release 0.8.2 ===
9381
9382 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9383
9384         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
9385           check GST_DEBUG environment variable which is parsed the same way
9386           as --gst-debug=
9387
9388 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9389
9390         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
9391                             gstmd5sink.c gstshaper.c gsttee.c
9392                             gsttypefindelement.c
9393         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
9394
9395           - removing trailing commas at end of enums
9396             it is correct C99 code but C90 compilers would complain
9397             (AIX, Forte, ...)
9398             ('should' fix #143290, at least partially)
9399
9400 2004-05-27  Wim Taymans  <wim@fluendo.com>
9401
9402         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
9403         (chain_group_set_enabled), (create_group), (add_to_group),
9404         (merge_groups), (setup_group_scheduler), (group_elements),
9405         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
9406         Don't try to follow the pad connections with other groups
9407         when a loop based element is added to the scheduler because
9408         the bin will inform the scheduler about the pad links a little
9409         later.
9410
9411 2004-05-27  Wim Taymans  <wim@fluendo.com>
9412
9413         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
9414         (remove_from_chain), (chain_group_set_enabled),
9415         (setup_group_scheduler), (group_element_set_enabled),
9416         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
9417         (gst_opt_scheduler_show):
9418         Elements without a group can do a state change as well, just wait
9419         with the setup of the scheduling function when it is added to a
9420         chain.
9421
9422 2004-05-27  Wim Taymans  <wim@fluendo.com>
9423
9424         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
9425         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
9426         (merge_groups), (setup_group_scheduler),
9427         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
9428         (gst_opt_scheduler_show):
9429         Fixes to maintain internal consistency of the scheduler data
9430         structures. 
9431          - adding an enabled group to a chain should increment the
9432            number of enabled elements in that chain.
9433          - removing an enabled group from a chain could disable the
9434            chain.
9435          - removing a disabled group from a chain could enable the
9436            chain.
9437          - add g_assert when internal inconsistency is detected.
9438          - adding an element to a group could increase the number of
9439            links this group has with other groups.
9440          - merging two groups also merges the chains.
9441          - also show group links in the _show method.
9442            
9443
9444 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9445
9446         * gst/gstcaps.c: (gst_caps_structure_simplify):
9447           don't print error messages when there is no error
9448         * gst/gstvalue.c: (gst_value_compare_int_range):
9449           compare the second value, too
9450         * testsuite/caps/Makefile.am:
9451         * testsuite/caps/random.c: (assert_on_error), (main):
9452           add tests to make sure the two things above are checked for
9453
9454 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
9455
9456         * configure.ac:
9457         * libs/gst/dataprotocol/Makefile.am:
9458         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
9459         * libs/gst/dataprotocol/dataprotocol.h:
9460           wrap header in GST_ENABLE_NEW.  make code use it
9461
9462 2004-05-23  Johan Dahlin  <johan@gnome.org>
9463
9464         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
9465         so verbose and print GstElement signal names all the time.
9466
9467 2004-05-22  David Schleef  <ds@schleef.org>
9468
9469         * gst/registries/gstxmlregistry.c:
9470         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
9471         (bug #142957)
9472
9473 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
9474
9475         * configure.ac:
9476           scrub cflags for glib2 so gcc doesn't complain when glib is in
9477           /usr/local
9478
9479 2004-05-21  Johan Dahlin  <johan@gnome.org>
9480
9481         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
9482         __GNUC__, patch from Brian Cameron, fixes bug #142804
9483
9484 2004-05-20  David Schleef  <ds@schleef.org>
9485
9486         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
9487         comparison code.  (bug #142819)
9488
9489 2004-05-20  Wim Taymans  <wim@fluendo.com>
9490
9491         * gst/gstbuffer.c: (gst_buffer_default_copy):
9492         * gst/gstbuffer.h:
9493         Added Comment to a flag.
9494         copy relevant flags in _buffer_copy.
9495
9496 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9497
9498         reviewed by: Wim Taymans <wim at fluendo dot com>
9499
9500         * gst/gstbuffer.h:
9501           add GST_BUFFER_IN_CAPS buffer flag
9502         * gst/gststructure.c: (gst_structure_value_get_generic_type),
9503         (gst_structure_parse_any_list), (gst_structure_parse_list),
9504         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
9505         * gst/gstvalue.c: (gst_value_serialize_any_list),
9506         (gst_value_transform_any_list_string),
9507         (gst_value_list_prepend_value), (gst_value_list_append_value),
9508         (gst_value_list_get_size), (gst_value_list_get_value),
9509         (gst_value_transform_list_string),
9510         (gst_value_transform_fixed_list_string),
9511         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
9512         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
9513         (_gst_value_initialize):
9514         * gst/gstvalue.h:
9515           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
9516           < , > as a format.
9517         * testsuite/caps/string-conversions.c: (main):
9518           add regression tests for < >
9519
9520 2004-05-20  Johan Dahlin  <johan@gnome.org>
9521
9522         * docs/gst/Makefile.am (all-local): Re-add
9523
9524 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9525
9526         * docs/gst/Makefile.am:
9527         * docs/gst/gstreamer-docs.sgml:
9528         * docs/libs/Makefile.am:
9529         * docs/libs/gstreamer-libs-docs.sgml:
9530           fix distcheck issues
9531
9532 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9533
9534         * libs/gst/dataprotocol/Makefile.am:
9535           add to autotest
9536
9537 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9538
9539         * libs/gst/dataprotocol/Makefile.am:
9540         * libs/gst/dataprotocol/dataprotocol.c:
9541         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
9542         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
9543         * libs/gst/dataprotocol/dp-private.h:
9544           use GST macros to read/write fixed length ints
9545           add some more asserts
9546
9547 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9548
9549         * docs/libs/gstreamer-libs-docs.sgml:
9550         * docs/libs/gstreamer-libs-sections.txt:
9551           remove idct and putbits
9552         * configure.ac:
9553         * docs/libs/tmpl/gstdataprotocol.sgml:
9554         * libs/gst/Makefile.am:
9555         * libs/gst/dataprotocol/Makefile.am:
9556         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
9557         (buffer_test), (caps_test), (event_test), (main):
9558         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
9559         (gst_dp_dump_byte_array), (gst_dp_init),
9560         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
9561         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
9562         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
9563         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
9564         (gst_dp_validate_header), (gst_dp_validate_payload),
9565         (gst_dp_validate_packet), (plugin_init):
9566         * libs/gst/dataprotocol/dataprotocol.h:
9567         * libs/gst/dataprotocol/dp-private.h:
9568           add dataprotocol
9569
9570 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9571
9572         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
9573           fix int variable deserialization and add a helper so we can actually
9574           debug this.
9575
9576 2004-05-18  David Schleef  <ds@schleef.org>
9577
9578         * testsuite/debug/commandline.c: (main): Call ./commandline, not
9579           argv[0].  Calling yourself is probably not the best way to
9580           construct a test like this, btw.
9581
9582 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9583
9584         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
9585           don't claim to be more intelligent than a scheduler when the
9586           scheduler claims the pipeline is stopped
9587         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
9588         (safe_cothread_destroy),
9589         (gst_entry_scheduler_remove_all_cothreads),
9590         (gst_entry_scheduler_reset), (_remove_cothread),
9591         (gst_entry_scheduler_state_transition):
9592           hold off cothread destruction if we're not in main cothread
9593         * configure.ac:
9594         * testsuite/Makefile.am:
9595           add new test dir
9596         * testsuite/schedulers/.cvsignore:
9597         * testsuite/schedulers/Makefile.am:
9598           add tests
9599         * testsuite/schedulers/relink.c: (cb_handoff), (main):
9600           check relinking and adding/removing elements from a running pipeline
9601         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
9602           check unlinking in a running pipeline
9603         * testsuite/schedulers/unref.c: (cb_handoff), (main):
9604           check unreffing a running pipeline
9605         * testsuite/schedulers/useless_iteration.c: (main):
9606           check iterating a pipeline that contains running threads works
9607
9608 2004-05-18  David Schleef  <ds@schleef.org>
9609
9610         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
9611           is false.
9612
9613 2004-05-18  Wim Taymans  <wim@fluendo.com>
9614
9615         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
9616         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
9617         Fixed an error introduced with patch for 1.63. When setting
9618         a get based element as the entry point in a group, make sure
9619         to mark the group as GET based.
9620
9621 2004-05-18  Wim Taymans  <wim@fluendo.com>
9622
9623         * gst/schedulers/gstoptimalscheduler.c: (create_group),
9624         (setup_group_scheduler), (loop_group_schedule_function),
9625         (gst_opt_scheduler_pad_link):
9626         Added some more debug info and fixed a bug where the group
9627         type was set to LOOP but it was in fact unknown.
9628
9629 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9630
9631         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
9632           make resetting scheduler work twice in a row
9633
9634 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9635
9636         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
9637         (CREATE_USERIALIZATION), (_gst_value_initialize),
9638         (gst_value_compare_float), (gst_value_serialize_float),
9639         (gst_value_deserialize_float), (gst_value_compare_enum),
9640         (gst_value_serialize_enum), (gst_value_deserialize_enum):
9641           add serialization and comparison functions for long, int64, enum and
9642           float values
9643         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
9644           use best serialization function in type hierarchy instead of only a
9645           matching one. This is required for enums to work.
9646         * gst/parse/grammar.y:
9647           use gst_caps_deserialize
9648         * testsuite/parse/Makefile.am:
9649           parse1 now works
9650         * testsuite/parse/parse1.c: (main):
9651           remove aggregator check, aggregator is broken, this test works now
9652           but fails because of bug #138012
9653         * testsuite/parse/parse2.c: (main):
9654           s/xvideosink/xvimagesink - this test looks a lot like we should
9655           disable it
9656
9657 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9658
9659         * gst/gstelement.c: (gst_element_class_init):
9660           whoops, store the signal id correctly
9661         * gst/schedulers/gstbasicscheduler.c:
9662         (gst_basic_scheduler_chain_wrapper):
9663           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
9664           chain function isn't linked
9665
9666 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
9667         * configure.ac:
9668         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
9669         support until we decide where the flags should be used
9670         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
9671         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
9672         * gst/gstpad.c: (gst_pad_link_call_link_functions):
9673         Output refused caps in the debug info
9674
9675 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9676
9677         * gst/elements/gstidentity.c: (gst_identity_chain):
9678           add duration debug
9679         * gst/gstinfo.c: (gst_debug_log_default):
9680           add timestamp
9681
9682 2004-05-13  Benjamin Otte  <otte@gnome.org>
9683
9684         * gst/gstpipeline.c: (gst_pipeline_dispose),
9685         (gst_pipeline_change_state):
9686           call gst_scheduler_reset on dispose (fixes #141416)
9687
9688 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9689
9690         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
9691           compute mapsize correctly
9692         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
9693           use correct datatypes when calling a varargs function
9694         * gst/elements/gsttypefindelement.c: (stop_typefinding):
9695           push a DISCONT event as first thing
9696         * gst/gst_private.h:
9697         * gst/gstinfo.c: (_gst_debug_init):
9698           remove GST_DATAFLOW debugging category
9699         * gst/gstbin.c: (gst_bin_iterate):
9700           use GST_SCHEDULING category
9701         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
9702         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
9703         (gst_pad_call_get_function):
9704           add GST_DATAFLOW to easily track flow of buffers or events.
9705         * gst/gstqueue.c: (gst_queue_get_type),
9706         (gst_queue_handle_pending_events), (gst_queue_chain),
9707         (gst_queue_get), (gst_queue_handle_src_event):
9708           use own static debugging category GST_DATAFLOW for dataflow,
9709           use DEBUG category for showing which path events go, use LOG
9710           category for buffers.
9711
9712 2004-05-10  David Schleef  <ds@schleef.org>
9713
9714         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
9715
9716 2004-05-10  David Schleef  <ds@schleef.org>
9717
9718         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
9719         symbols, because otherwise we don't know what they are.  Thanks,
9720         the GStreamer team.
9721         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
9722
9723 2004-05-10  David Schleef  <ds@schleef.org>
9724
9725         (from Steve Lhomme)
9726         * win32/Makefile: When using make clean the MS Visual Studio makefiles
9727         are deleted.  Fix.
9728         * win32/Makefile.inspect:
9729         * win32/Makefile.launch:
9730         * win32/Makefile.register:
9731
9732 2004-05-10  David Schleef  <ds@schleef.org>
9733
9734         * gst/gstinfo.h: Add missing inline function.
9735         * gst/gsttrace.c: add include
9736         * gst/parse/grammar.y: remove unused code
9737         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
9738         more portable.
9739         * tools/gst-register.c: wrap unistd.h
9740         
9741         More additions/fixes from Steve for the MSVC build.
9742         * win32/GStreamer.vcproj:
9743         * win32/Makefile:
9744         * win32/Makefile.inspect:
9745         * win32/Makefile.launch:
9746         * win32/Makefile.register:
9747         * win32/README.txt:
9748         * win32/gst-inspect.vcproj:
9749         * win32/gst-launch.vcproj:
9750         * win32/gst-register.vcproj:
9751         * win32/gstbytestream.def:
9752         * win32/gstbytestream.vcproj:
9753         * win32/gstconfig.h:
9754         * win32/gstelements.def:
9755         * win32/gstelements.vcproj:
9756         * win32/gstenumtypes.c:
9757         * win32/gstenumtypes.h:
9758         * win32/gstoptimalscheduler.def:
9759         * win32/gstoptimalscheduler.vcproj:
9760         * win32/gstreamer.def:
9761         * win32/gstspider.def:
9762         * win32/gstspider.vcproj:
9763         * win32/gstversion.h:
9764         * win32/msvc71.sln:
9765
9766 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9767
9768         * gst/gstelement.c: (gst_element_class_init),
9769         (gst_element_no_more_pads):
9770         * gst/gstelement.h:
9771           add gst_element_no_more_pads and the "no-more-pads" signal
9772
9773 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9774
9775         * gst/gstregistry.c: (gst_registry_add_plugin):
9776           refuse to add plugins when a plugin with same name is already
9777           registered. Fixes a bunch of "How to remove plugins?" issues.
9778           May lead to other problems though, let's test
9779
9780 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9781
9782         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
9783         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
9784         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
9785
9786 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9787
9788         * tests/Makefile.am: fix am16 issue
9789
9790 2004-05-09  Benjamin Otte  <otte@gnome.org>
9791
9792         * libs/gst/bytestream/Makefile.am:
9793           we should indeed add .c files to makefiles or they won't be built
9794           (d'oh)
9795
9796 2004-05-08  Benjamin Otte  <otte@gnome.org>
9797
9798         * gst/gstpad.c: (gst_pad_proxy_fixate):
9799           really reduce the set of caps
9800
9801 2004-05-08  Benjamin Otte  <otte@gnome.org>
9802
9803         * tests/Makefile.am:
9804         * tests/spidey_bench.c: (handoff), (main):
9805           add benchmark to test how long spider needs to create a pipeline
9806
9807 2004-05-08  Benjamin Otte  <otte@gnome.org>
9808
9809         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
9810           mark links as unengaged when unnegotiating instead of deactivating.
9811           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
9812
9813 2004-05-08  Benjamin Otte  <otte@gnome.org>
9814
9815         * docs/manual/helloworld.xml:
9816           s/audiosink/osssink (patch by Patrick Guimond)
9817
9818 2004-05-07  David Schleef  <ds@schleef.org>
9819
9820         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
9821         since it contains important stuff.
9822
9823 2004-05-07  David Schleef  <ds@schleef.org>
9824
9825         * testsuite/caps/caps.c: (test3), (main): A check for appending
9826         ANY caps.
9827
9828 2004-05-07  David Schleef  <ds@schleef.org>
9829
9830         * common/m4/as-compiler-flag.m4: Properly quote arguments,
9831         which may contain commas.  Fixes detection of -Wa,-mregnames
9832
9833 2004-05-06  David Schleef  <ds@schleef.org>
9834
9835         Changes to handle compilers that don't have variadic macro
9836         support.  In particular, glib headers define some inlines
9837         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
9838         builds.
9839         * gst/Makefile.am:
9840         * gst/cothreads.c:
9841         * gst/elements/gstfdsink.c:
9842         * gst/elements/gstfdsrc.c:
9843         * gst/elements/gstfilesink.c:
9844         * gst/elements/gstfilesrc.c:
9845         * gst/gst_private.h:
9846         * gst/gstatomic.c:
9847         * gst/gstcaps.c: (gst_caps_append):
9848         * gst/gstcpu.c: (gst_cpuid_i386):
9849         * gst/gstelement.c:
9850         * gst/gsterror.c:
9851         * gst/gstfilter.c:
9852         * gst/gstinfo.h:
9853         * gst/gstprobe.c:
9854         * gst/gstquery.c:
9855         * gst/gstregistry.c:
9856         * gst/gststructure.c:
9857         * gst/gsttaginterface.c:
9858         * gst/gsttrace.c: (gst_trace_new):
9859         * gst/gsttrashstack.c:
9860         * gst/gsturi.c:
9861         * gst/gstvalue.c:
9862         * gst/parse/grammar.y:
9863         * gst/parse/parse.l:
9864         * tools/gst-inspect.c: (main):
9865         * tools/gst-launch.c: (main):
9866         * tools/gst-xmlinspect.c: (PUT_STRING):
9867
9868 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9869
9870         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9871         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9872         * gst/elements/gstfilesrc.h:
9873           send NEW_MEDIA events correctly
9874         * gst/elements/gsttypefindelement.c: (start_typefinding),
9875         (gst_type_find_element_handle_event):
9876           restart typefinding when we get a NEW_MEDIA event
9877         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
9878         (gst_bin_dispose):
9879           don't die when someone removes elements in callbacks
9880         * gst/gstelement.c: (gst_element_change_state):
9881           improve debugging
9882         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
9883           we need a NEW_MEDIA event to engage a link
9884         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
9885           don't g_print debugging stuff
9886         * testsuite/caps/simplify.c: (check_caps):
9887
9888 2004-05-04  Benjamin Otte  <otte@gnome.org>
9889
9890         * gst/parse/grammar.y:
9891           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
9892
9893 2004-05-04  Benjamin Otte  <otte@gnome.org>
9894
9895         * testsuite/caps/renegotiate.c: (main):
9896           improve output in error case
9897
9898 2004-05-04  Benjamin Otte  <otte@gnome.org>
9899
9900         * gst/parse/grammar.y:
9901           fix assert to not trigger when there's no error argument
9902         * gst/parse/parse.l:
9903           fix definition of caps to allow more than two structures
9904         * testsuite/caps/Makefile.am:
9905         * testsuite/caps/renegotiate.c: (main):
9906           it's sinesrc and works in that case
9907
9908 2004-05-04  Wim Taymans  <wim@fluendo.com>
9909
9910         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
9911         (group_dec_link), (gst_opt_scheduler_pad_unlink):
9912         when removing an element from a group, we always need to
9913         decrement the link count that this group had with other 
9914         groups through the element.
9915         added an extra assert to catch inconsistencies when decrementing
9916         the link count.
9917
9918 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9919
9920         * configure.ac:
9921         * docs/gst/Makefile.am:
9922         * docs/gst/gstreamer-sections.txt:
9923         * docs/gst/tmpl/gstcompat.sgml:
9924         * examples/appreader/Makefile.am:
9925         * examples/cutter/Makefile.am:
9926         * examples/events/Makefile.am:
9927         * examples/helloworld/Makefile.am:
9928         * examples/helloworld2/Makefile.am:
9929         * examples/launch/Makefile.am:
9930         * examples/manual/Makefile.am:
9931         * examples/mixer/Makefile.am:
9932         * examples/pingpong/Makefile.am:
9933         * examples/plugins/Makefile.am:
9934         * examples/queue/Makefile.am:
9935         * examples/queue2/Makefile.am:
9936         * examples/queue3/Makefile.am:
9937         * examples/queue4/Makefile.am:
9938         * examples/retag/Makefile.am:
9939         * examples/thread/Makefile.am:
9940         * examples/typefind/Makefile.am:
9941         * examples/xml/Makefile.am:
9942         * gst/Makefile.am:
9943         * gst/autoplug/Makefile.am:
9944         * gst/elements/Makefile.am:
9945         * gst/gstcompat.h:
9946         * gst/indexers/Makefile.am:
9947         * gst/parse/Makefile.am:
9948         * gst/registries/Makefile.am:
9949         * gst/schedulers/Makefile.am:
9950         * libs/gst/bytestream/Makefile.am:
9951         * libs/gst/control/Makefile.am:
9952         * libs/gst/getbits/Makefile.am:
9953         * po/af.po:
9954         * po/az.po:
9955         * po/en_GB.po:
9956         * po/fr.po:
9957         * po/nl.po:
9958         * po/sr.po:
9959         * po/sv.po:
9960         * po/tr.po:
9961         * po/uk.po:
9962         * tests/Makefile.am:
9963         * tests/bufspeed/Makefile.am:
9964         * tests/instantiate/Makefile.am:
9965         * tests/memchunk/Makefile.am:
9966         * tests/muxing/Makefile.am:
9967         * tests/negotiation/Makefile.am:
9968         * tests/probes/Makefile.am:
9969         * tests/sched/Makefile.am:
9970         * tests/seeking/Makefile.am:
9971         * tests/threadstate/Makefile.am:
9972         * testsuite/caps/Makefile.am:
9973         * testsuite/cleanup/Makefile.am:
9974         * testsuite/dlopen/Makefile.am:
9975         * testsuite/dynparams/Makefile.am:
9976         * testsuite/plugin/Makefile.am:
9977         * testsuite/states/Makefile.am:
9978         * tools/Makefile.am:
9979           reorganize compile/link flags to be consistent
9980           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
9981
9982 2004-05-04  David Schleef  <ds@schleef.org>
9983
9984         The "once more, with feeling" check-in.
9985         * testsuite/caps/Makefile.am: dist caps_strings
9986         * testsuite/caps/renegotiate.c: (main): This test triggers a
9987           segfault in the core.  Marking as failing.
9988
9989 2004-05-03  David Schleef  <ds@schleef.org>
9990
9991         * testsuite/caps/deserialize.c: (main): Fix problems noticed
9992           by the build bots.
9993         * testsuite/caps/renegotiate.c: (main): Same.
9994
9995 2004-05-03  David Schleef  <ds@schleef.org>
9996
9997         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
9998
9999 2004-05-03  David Schleef  <ds@schleef.org>
10000
10001         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
10002           variable to find our source file.
10003
10004 2004-05-03  David Schleef  <ds@schleef.org>
10005
10006         * configure.ac:  Link plugins with libgstreamer and dependent
10007           libraries
10008         * testsuite/caps/Makefile.am:
10009         * testsuite/caps/caps_strings:
10010         * testsuite/caps/deserialize.c: (main): Add a little test to slog
10011           through a file of caps strings and test each one
10012
10013 2004-05-04  Benjamin Otte  <otte@gnome.org>
10014
10015         * libs/gst/bytestream/Makefile.am:
10016         * libs/gst/bytestream/adapter.c: 
10017         * libs/gst/bytestream/adapter.h:
10018           add GstAdapter, similar to bytestream, but doesn't require ugly event
10019           handling or uglier loopbased elements
10020
10021 2004-05-03  David Schleef  <ds@schleef.org>
10022
10023         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
10024         * testsuite/caps/erathostenes.c:
10025         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
10026
10027 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10028
10029         * docs/pwg/pwg.xml:
10030           remove hardcoded stylesheet path (duh)
10031         * docs/random/release:
10032         * docs/gst/gstreamer-sections.txt:
10033         * gst/Makefile.am:
10034         * gst/gst.h:
10035         * gst/gst_private.h:
10036         * gst/gstcaps.c:
10037         * gst/gstevent.c:
10038         * gst/gstformat.c:
10039         * gst/gstinfo.c:
10040         * gst/gstinfo.h:
10041         * gst/gstinterface.c:
10042         * gst/gstmemchunk.c:
10043         * gst/gstprobe.c:
10044         * gst/gstquery.c:
10045         * gst/gstregistry.c:
10046         * gst/gstregistrypool.c:
10047         * gst/gststructure.c:
10048         * gst/gsttaginterface.c:
10049         * gst/gstthread.c:
10050         * gst/gsttrace.c:
10051         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
10052         * gst/gsturi.c:
10053         * gst/gstvalue.c:
10054           deprecate gst_info; remove gstlog.h
10055    
10056
10057 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10058
10059         * Makefile.am:
10060         * po/en_GB.po:
10061         * po/sv.po:
10062         * po/uk.po:
10063           updated translations
10064
10065 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10066
10067         * gst/gstbin.c: (gst_bin_dispose):
10068           better debugging
10069
10070 2004-05-03  Johan Dahlin  <johan@gnome.org>
10071
10072         * gst/schedulers/gstoptimalscheduler.c
10073         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
10074         really is a GstElement. Avoids critical when running gst-launch -v
10075         and a oggdemux/decoding pipeline.
10076
10077 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
10078
10079         * docs/gst/tmpl/gstpipeline.sgml :
10080         * docs/manual/elements-api.xml :
10081                 doc fix by Patrick Guimond (Protector) from devel ML
10082                 reviewed by ronald
10083
10084 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
10085
10086         * docs/gst/Makefile.am :
10087         * docs/libs/Makefile.am :
10088                 apply a patch from Arwed v. Merkatz so that gtk-doc
10089                 generated docs install (same for .devhelp file)
10090                 (fixes part 1 of #138836)
10091
10092 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
10093
10094         * docs/faq/dependencies.xml: typo
10095         * docs/faq/getting.xml :
10096             - fix download URL for new gstreamer site
10097             - hide sf.net download page as latest version aren't there
10098             - fix apt URLs
10099             - fill "get via CVS" paragraph (link to dev page on the site)
10100         * docs/faq/general.xml:
10101             hide status tables as they no more exists
10102             change case on plugins license file to reflect reality
10103         * docs/faq/troubleshooting.xml:
10104             remove the wiki question/answer as there is no more wiki
10105
10106 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10107
10108         * gst/gsterror.h:
10109           include the headers needed for declarations used in this header
10110
10111 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
10112
10113         * docs/random/uraeus/gstreamer_and_midi.txt :
10114           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
10115           (fixes #132288)
10116
10117 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
10118
10119         reviewed by Benjamin Otte  <otte@gnome.org>
10120
10121         * gst/schedulers/gthread-cothreads.h:
10122           free allocated data for main cothread, too when destroying context
10123           (fixes #141417)
10124
10125 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
10126
10127         * docs/manual/goals.xml : remove duplicated paragraph at end 
10128         of doc page (fixes #141448)
10129
10130 2004-04-29  David Schleef  <ds@schleef.org>
10131
10132         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
10133         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
10134
10135 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10136
10137         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
10138           fix property
10139         * gst/gstcaps.c:
10140           fix doc string
10141         * po/POTFILES.in:
10142           rename typefind source file
10143
10144 2004-04-28  David Schleef  <ds@schleef.org>
10145
10146         Several new files from Steve Lhomme's MSVC patch (bug #141317):
10147         * win32/GStreamer.vcproj:
10148         * win32/Makefile:
10149         * win32/config.h:
10150         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
10151         (_trewinddir), (_ttelldir), (_tseekdir):
10152         * win32/dirent.h:
10153         * win32/gst-inspect.vcproj:
10154         * win32/gst-launch.vcproj:
10155         * win32/gst-register.vcproj:
10156         * win32/gstbytestream.vcproj:
10157         * win32/gstelements.vcproj:
10158         * win32/gstoptimalscheduler.vcproj:
10159         * win32/gstspider.vcproj:
10160         * win32/gtchar.h:
10161         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
10162         * win32/mman.h:
10163         * win32/mman.inl:
10164         * win32/msvc71.sln:
10165
10166 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10167
10168         * gst/gst.c: (init_post):
10169         * gst/gstinfo.c:
10170           remove useless _gst_progname stuff
10171         * tools/gst-inspect.c: (print_field), (print_caps):
10172           improve caps output
10173
10174 2004-04-28  David Schleef  <ds@schleef.org>
10175
10176         Disable parsing of a lot of files that aren't part of the
10177         exported API.  Move corresponding template files to old/,
10178         waiting for removal when they don't contain anything
10179         interesting.
10180         * docs/gst/Makefile.am:
10181         * docs/gst/gstreamer-sections.txt:
10182         * docs/gst/tmpl/cothreads.sgml:
10183         * docs/gst/tmpl/cothreads_compat.sgml:
10184         * docs/gst/tmpl/gettext.sgml:
10185         * docs/gst/tmpl/gobject2gtk.sgml:
10186         * docs/gst/tmpl/grammar.tab.sgml:
10187         * docs/gst/tmpl/gst-i18n-app.sgml:
10188         * docs/gst/tmpl/gst-i18n-lib.sgml:
10189         * docs/gst/tmpl/gst_private.sgml:
10190         * docs/gst/tmpl/gstaggregator.sgml:
10191         * docs/gst/tmpl/gstarch.sgml:
10192         * docs/gst/tmpl/gstatomic_impl.sgml:
10193         * docs/gst/tmpl/gstbufferstore.sgml:
10194         * docs/gst/tmpl/gstdata_private.sgml:
10195         * docs/gst/tmpl/gstdisksink.sgml:
10196         * docs/gst/tmpl/gstdisksrc.sgml:
10197         * docs/gst/tmpl/gstelementfactory.sgml:
10198         * docs/gst/tmpl/gstextratypes.sgml:
10199         * docs/gst/tmpl/gstfakesink.sgml:
10200         * docs/gst/tmpl/gstfakesrc.sgml:
10201         * docs/gst/tmpl/gstfdsink.sgml:
10202         * docs/gst/tmpl/gstfdsrc.sgml:
10203         * docs/gst/tmpl/gstfilesink.sgml:
10204         * docs/gst/tmpl/gstfilesrc.sgml:
10205         * docs/gst/tmpl/gsthttpsrc.sgml:
10206         * docs/gst/tmpl/gstidentity.sgml:
10207         * docs/gst/tmpl/gstindexfactory.sgml:
10208         * docs/gst/tmpl/gstmarshal.sgml:
10209         * docs/gst/tmpl/gstmd5sink.sgml:
10210         * docs/gst/tmpl/gstmultidisksrc.sgml:
10211         * docs/gst/tmpl/gstmultifilesrc.sgml:
10212         * docs/gst/tmpl/gstpadtemplate.sgml:
10213         * docs/gst/tmpl/gstpipefilter.sgml:
10214         * docs/gst/tmpl/gstschedulerfactory.sgml:
10215         * docs/gst/tmpl/gstsearchfuncs.sgml:
10216         * docs/gst/tmpl/gstshaper.sgml:
10217         * docs/gst/tmpl/gstspider.sgml:
10218         * docs/gst/tmpl/gstspideridentity.sgml:
10219         * docs/gst/tmpl/gststatistics.sgml:
10220         * docs/gst/tmpl/gsttee.sgml:
10221         * docs/gst/tmpl/gsttimecache.sgml:
10222         * docs/gst/tmpl/gsttypefind.sgml:
10223         * docs/gst/tmpl/gsttypefindfactory.sgml:
10224         * docs/gst/tmpl/gstxmlregistry.sgml:
10225         * docs/gst/tmpl/gthread-cothreads.sgml:
10226         * docs/gst/tmpl/old/cothreads.sgml:
10227         * docs/gst/tmpl/old/cothreads_compat.sgml:
10228         * docs/gst/tmpl/old/gettext.sgml:
10229         * docs/gst/tmpl/old/gobject2gtk.sgml:
10230         * docs/gst/tmpl/old/grammar.tab.sgml:
10231         * docs/gst/tmpl/old/gst-i18n-app.sgml:
10232         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
10233         * docs/gst/tmpl/old/gst_private.sgml:
10234         * docs/gst/tmpl/old/gstaggregator.sgml:
10235         * docs/gst/tmpl/old/gstarch.sgml:
10236         * docs/gst/tmpl/old/gstatomic_impl.sgml:
10237         * docs/gst/tmpl/old/gstbufferstore.sgml:
10238         * docs/gst/tmpl/old/gstdata_private.sgml:
10239         * docs/gst/tmpl/old/gstdisksink.sgml:
10240         * docs/gst/tmpl/old/gstdisksrc.sgml:
10241         * docs/gst/tmpl/old/gstelementfactory.sgml:
10242         * docs/gst/tmpl/old/gstextratypes.sgml:
10243         * docs/gst/tmpl/old/gstfakesink.sgml:
10244         * docs/gst/tmpl/old/gstfakesrc.sgml:
10245         * docs/gst/tmpl/old/gstfdsink.sgml:
10246         * docs/gst/tmpl/old/gstfdsrc.sgml:
10247         * docs/gst/tmpl/old/gstfilesink.sgml:
10248         * docs/gst/tmpl/old/gstfilesrc.sgml:
10249         * docs/gst/tmpl/old/gsthttpsrc.sgml:
10250         * docs/gst/tmpl/old/gstidentity.sgml:
10251         * docs/gst/tmpl/old/gstindexfactory.sgml:
10252         * docs/gst/tmpl/old/gstmarshal.sgml:
10253         * docs/gst/tmpl/old/gstmd5sink.sgml:
10254         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
10255         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
10256         * docs/gst/tmpl/old/gstpadtemplate.sgml:
10257         * docs/gst/tmpl/old/gstpipefilter.sgml:
10258         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
10259         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
10260         * docs/gst/tmpl/old/gstshaper.sgml:
10261         * docs/gst/tmpl/old/gstspider.sgml:
10262         * docs/gst/tmpl/old/gstspideridentity.sgml:
10263         * docs/gst/tmpl/old/gststatistics.sgml:
10264         * docs/gst/tmpl/old/gsttee.sgml:
10265         * docs/gst/tmpl/old/gsttimecache.sgml:
10266         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
10267         * docs/gst/tmpl/old/gstxmlregistry.sgml:
10268         * docs/gst/tmpl/old/gthread-cothreads.sgml:
10269         * docs/gst/tmpl/old/types.sgml:
10270         * docs/gst/tmpl/types.sgml:
10271
10272         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
10273         gtkdoc-scan doesn't like files with the same name in different
10274         directories.
10275         * gst/elements/Makefile.am:
10276         * gst/elements/gstelements.c:
10277         * gst/elements/gsttypefind.c: 
10278         * gst/elements/gsttypefind.h:
10279         * gst/elements/gsttypefindelement.c:
10280         * gst/elements/gsttypefindelement.h:
10281
10282 2004-04-28  David Schleef  <ds@schleef.org>
10283
10284         A bunch of portability fixes, derived from Steve Lhomme's MSVC
10285         patch (bug #141317):
10286         * gst/gst-i18n-lib.h: Allow disabling gettext.
10287         * gst/gstatomic_impl.h: disable warning when it's dumb.
10288         * gst/gstclock.c: fix include
10289         * gst/gstcompat.h: fix variadic macro
10290         * gst/gstinfo.c: fix include
10291         * gst/gstmacros.h: add defines for inlines on MSVC
10292         * gst/gstplugin.c: fix includes
10293         * gst/gstregistry.c: fix includes
10294         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
10295         * gst/gstsystemclock.c: fix include
10296         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
10297         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
10298         * gst/registries/gstxmlregistry.c:
10299         (gst_xml_registry_parse_element_factory): fix use of non-portable
10300         functions
10301         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
10302         * libs/gst/control/dparammanager.h: same
10303
10304 2004-04-28  David Schleef  <ds@schleef.org>
10305
10306         Move a bunch of unused files to old/ with names that are
10307         not case-insensitive-unique.  These files still contain some
10308         useful information that needs to be merged into gstbin.sgml,
10309         etc., so they shouldn't be deleted yet.
10310         * docs/gst/tmpl/GstBin.sgml:
10311         * docs/gst/tmpl/GstBuffer.sgml:
10312         * docs/gst/tmpl/GstCaps.sgml:
10313         * docs/gst/tmpl/GstClock.sgml:
10314         * docs/gst/tmpl/GstCompat.sgml:
10315         * docs/gst/tmpl/GstData.sgml:
10316         * docs/gst/tmpl/GstElement.sgml:
10317         * docs/gst/tmpl/GstEvent.sgml:
10318         * docs/gst/tmpl/GstIndex.sgml:
10319         * docs/gst/tmpl/GstStructure.sgml:
10320         * docs/gst/tmpl/GstTag.sgml:
10321         * docs/gst/tmpl/old/GstBin.sgml:
10322         * docs/gst/tmpl/old/GstBuffer.sgml:
10323         * docs/gst/tmpl/old/GstCaps.sgml:
10324         * docs/gst/tmpl/old/GstClock.sgml:
10325         * docs/gst/tmpl/old/GstCompat.sgml:
10326         * docs/gst/tmpl/old/GstData.sgml:
10327         * docs/gst/tmpl/old/GstElement.sgml:
10328         * docs/gst/tmpl/old/GstEvent.sgml:
10329         * docs/gst/tmpl/old/GstIndex.sgml:
10330         * docs/gst/tmpl/old/GstStructure.sgml:
10331         * docs/gst/tmpl/old/GstTag.sgml:
10332
10333 2004-04-28  David Schleef  <ds@schleef.org>
10334
10335         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
10336         (gst_caps_append), (gst_caps_append_structure),
10337         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
10338         (gst_caps_set_simple), (gst_caps_set_simple_valist),
10339         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
10340         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
10341         (gst_caps_intersect), (gst_caps_normalize),
10342         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
10343         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
10344         * gst/gstcaps.h: use GST_IS_CAPS().
10345
10346 2004-04-26  David Schleef  <ds@schleef.org>
10347
10348         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
10349         assembly.  gcc doesn't handle it correctly. (bug #141083)
10350         * gst/gsttrashstack.h: same
10351
10352 2004-04-25  Benjamin Otte  <otte@gnome.org>
10353
10354         * gst/gstelement.c: (gst_element_change_state):
10355           fix assertion to do an int comparison
10356
10357 2004-04-25  Benjamin Otte  <otte@gnome.org>
10358
10359         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
10360           better debugging output on error
10361
10362 2004-04-25  Benjamin Otte  <otte@gnome.org>
10363
10364         * gst/gstcaps.c: (gst_caps_subtract):
10365           fix memleak
10366
10367 2004-04-23  Benjamin Otte  <otte@gnome.org>
10368
10369         * gst/gstvalue.c: (gst_value_compare_buffer),
10370         (_gst_value_initialize):
10371           add comparison function for buffers
10372
10373 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10374
10375         * docs/pwg/pwg.xml:
10376           Just found out that this so-called "ima-wav" format is really
10377           just "dvi adpcm" (according to the MS WAV documentation). So
10378           renaming it. We didn't use it yet anyway.
10379
10380 2004-04-23  Benjamin Otte  <otte@gnome.org>
10381
10382         * gst/gstcaps.c: (gst_caps_is_always_compatible):
10383           call gst_caps_is_subset
10384
10385 2004-04-23  Benjamin Otte  <otte@gnome.org>
10386
10387         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
10388         (gst_caps_is_subset):
10389           add documentation
10390
10391 2004-04-23  Benjamin Otte  <otte@gnome.org>
10392           
10393         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
10394         (gst_caps_structure_subtract), (gst_caps_subtract),
10395         (gst_caps_structure_figure_out_union),
10396         (gst_caps_structure_simplify), (gst_caps_do_simplify):
10397           fix simplifying and subtracting not working correctly with optional
10398           properties
10399           solve assorted problems that make it now simplify ebven more
10400         * docs/gst/tmpl/gstcaps.sgml:
10401         * gst/gstcaps.h:
10402           make gst_caps_do_simplify return a bool to indicate if it simplified
10403         * testsuite/caps/simplify.c: (main):
10404           add more checks. The tests is quite a bit useless right now because
10405           the core is heavily simplifying itself.
10406         * testsuite/caps/caps.h:
10407           fix caps to contain all optional properties
10408
10409 2004-04-22  Benjamin Otte  <otte@gnome.org>
10410
10411         * docs/gst/tmpl/gstcaps.sgml:
10412         * docs/gst/tmpl/gstfilesrc.sgml:
10413         * docs/gst/tmpl/gststructure.sgml:
10414         * docs/gst/tmpl/gstvalue.sgml:
10415           update for recent API changes
10416         * gst/gstcaps.c: (gst_caps_do_simplify):
10417           fix to stop trying with a freed structure
10418         * gst/gstpad.c: (gst_pad_link_fixate):
10419           simplify caps
10420         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
10421           remove C++ comment
10422         * gst/gstpad.h:
10423           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
10424         * gst/gststructure.c: (gst_structure_value_get_generic_type),
10425         (gst_structure_to_string):
10426           keep the correct type when using lists of ranges
10427         * gst/gstvalue.c: (gst_value_list_prepend_value),
10428         (gst_value_list_append_value):
10429           copy the value before adding to the list (d'oh)
10430         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
10431         (gst_value_subtract_int_range_int_range):
10432           handle overflows correctly
10433         * gst/gstvalue.c: (gst_value_subtract_from_list):
10434           fix memleak
10435         * testsuite/caps/caps.h:
10436           add a caps that caused segfaults
10437
10438 2004-04-22  Benjamin Otte  <otte@gnome.org>
10439
10440         * testsuite/refcounting/pad.c: (main):
10441           fix test
10442
10443 2004-04-22  Benjamin Otte  <otte@gnome.org>
10444
10445         * gst/gstcaps.c: (gst_caps_subtract):
10446           allow subtracting ANY and EMPTY from ANY caps
10447
10448 2004-04-22  Benjamin Otte  <otte@gnome.org>
10449
10450         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
10451         (gst_caps_union):
10452           only simplify in functions that create new caps. Simplifying in
10453           gst_caps_append breaks tests.
10454
10455 2004-04-22  Benjamin Otte  <otte@gnome.org>
10456
10457         * gst/gstcaps.c: (gst_caps_structure_simplify):
10458           unset GValue after use
10459         * gst/gstcaps.c: (gst_caps_append), 
10460         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
10461           use gst_caps_simplify (reduces registry size by 30%)
10462         * gst/gstpad.c: (gst_pad_template_new):
10463           don't allow NULL caps
10464
10465 2004-04-22  Benjamin Otte  <otte@gnome.org>
10466
10467         * docs/gst/gstreamer-sections.txt:
10468           add gst_caps_do_simplify
10469         * gst/gstcaps.c:
10470           add documentation for gst_caps_do_simplify
10471         * gst/gstvalue.h:
10472           fix typo in gst_value_register_subtract_func declaration for gst-doc
10473
10474 2004-04-22  Benjamin Otte  <otte@gnome.org>
10475
10476         * gst/gstcaps.c: (gst_caps_from_string_inplace):
10477           fix bug when converting from empty string.
10478         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
10479         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
10480           use gst_caps_new_empty to allocate a new caps. Only that function
10481           allocates memory for caps now.
10482         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
10483         (gst_caps_remove_structure):
10484           add ability to remove one structure (but not to header yet)
10485         * gst/gstcaps.c: (gst_caps_compare_structures),
10486         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
10487         (gst_caps_structure_simplify), (gst_caps_do_simplify),
10488         * gst/gstcaps.h:
10489           add gst_caps_do_simplify that tries to simplify a caps in place.
10490           Deprecate old gst_caps_simplify function.
10491         * testsuite/caps/caps.h:
10492           add caps.h containing a common set of caps to test against.
10493         * testsuite/caps/sets.c: (check_caps), (main):
10494           use it.
10495         * testsuite/caps/.cvsignore:
10496         * testsuite/caps/Makefile.am:
10497         * testsuite/caps/simplify.c: (check_caps), (main):
10498           add test to check correctness and efficency of caps simplification.
10499
10500 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
10501
10502         reviewed by Benjamin Otte  <otte@gnome.org>
10503
10504         * gst/gstparse.c: (_gst_parse_escape):
10505           Free the GString used in _gst_parse_escape()
10506
10507 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10508
10509         * gst/gstpad.c: (gst_pad_link_negotiate):
10510           refuse to link if the link is not possible
10511         * configure.ac:
10512         * testsuite/Makefile.am:
10513         * testsuite/negotiation/.cvsignore:
10514         * testsuite/negotiation/Makefile.am:
10515         * testsuite/negotiation/pad_link.c: (main):
10516           add test that checks the above behaviour
10517
10518 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
10519
10520         * docs/gst/gstreamer-sections.txt:
10521           add newly added API
10522
10523 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
10524
10525         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10526         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
10527         (gst_filesrc_open_file), (gst_filesrc_close_file),
10528         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
10529         * gst/elements/gstfilesrc.h:
10530           add support for non-regular files (#140734)
10531
10532 2004-04-21  Benjamin Otte  <otte@gnome.org>
10533
10534         * gst/gstpad.c: (gst_pad_link_fixate):
10535           add sophisticated error checking code to see if fixation functions
10536           did their fixation right
10537
10538 2004-04-21  Benjamin Otte  <otte@gnome.org>
10539
10540         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
10541           check for ANY caps before appending/unioning
10542         * gst/gstcaps.c: (gst_caps_is_subset),
10543         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
10544         (gst_caps_structure_subtract), (gst_caps_subtract):
10545         * gst/gstcaps.h:
10546           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
10547           the API. deprecate gst_caps_is_equal_fixed
10548         * gst/gstpad.c: (gst_pad_try_set_caps):
10549         * gst/gstqueue.c: (gst_queue_link):
10550           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
10551         * gst/gststructure.c: (gst_structure_get_name_id):
10552         * gst/gststructure.h:
10553           add function gst_structure_get_name_id
10554         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
10555         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
10556         (gst_value_subtract_int_range_int_range),
10557         (gst_value_subtract_double_double_range),
10558         (gst_value_subtract_double_range_double),
10559         (gst_value_subtract_double_range_double_range),
10560         (gst_value_subtract_from_list), (gst_value_subtract_list),
10561         (gst_value_can_intersect), (gst_value_subtract),
10562         (gst_value_can_subtract), (gst_value_register_subtract_func),
10563         (_gst_value_initialize):
10564         * gst/gstvalue.h:
10565           add support for subtracting values from each other. Note that
10566           subtracting means subtracting as in set theory. Required for caps
10567           stuff above.
10568         * testsuite/caps/.cvsignore:
10569         * testsuite/caps/Makefile.am:
10570         * testsuite/caps/erathostenes.c: (erathostenes), (main):
10571         * testsuite/caps/sets.c: (check_caps), (main):
10572         * testsuite/caps/subtract.c: (check_caps), (main):
10573           add tests for subtraction and equality code.
10574
10575 2004-04-20  David Schleef  <ds@schleef.org>
10576
10577         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
10578         * gst/indexers/Makefile.am:
10579         * gst/schedulers/Makefile.am:
10580         * libs/gst/bytestream/Makefile.am:
10581         * libs/gst/control/Makefile.am:
10582         * libs/gst/getbits/Makefile.am:
10583
10584 2004-04-20  David Schleef  <ds@schleef.org>
10585
10586         * common/as-libtool.mak: Fine-tune DLL building.
10587         * configure.ac: Link plugins against libgstreamer.  Define plugindir
10588         (like gst-plugins)
10589         * examples/plugins/Makefile.am: remove plugindir
10590         * gst/autoplug/Makefile.am: DLL building fixes
10591         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
10592         Windows.
10593         * gst/elements/gstelements.c: Conditionally disable pipefilter.
10594         * gst/indexers/Makefile.am: DLL building fixes
10595         * gst/schedulers/Makefile.am: DLL building fixes.
10596         * libs/gst/bytestream/Makefile.am: DLL building fixes.
10597         * libs/gst/control/Makefile.am: same
10598         * libs/gst/getbits/Makefile.am: same
10599         * testsuite/Makefile.am: New dlopen directory
10600         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
10601         when dlopened.
10602         * testsuite/dlopen/dlopen_gst.c: (main): same
10603         * testsuite/dlopen/loadgst.c: (do_test): same
10604
10605 2004-04-20  David Schleef  <ds@schleef.org>
10606
10607         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
10608         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
10609
10610 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10611
10612         * gst/gstelement.c: (gst_element_wait),
10613         (gst_element_set_time_delay), (gst_element_change_state):
10614           Use GST_TIME_*
10615
10616 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10617
10618         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
10619         (gst_spider_identity_plug):
10620           improve debugging messages
10621         * gst/gstbin.c: (gst_bin_remove_func):
10622           make sure the state_change function is only called with simple state
10623           transitions
10624
10625 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10626
10627         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
10628         (gst_fakesink_set_property), (gst_fakesink_chain):
10629         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
10630         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
10631         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
10632         * gst/elements/gstidentity.c: (gst_identity_chain),
10633         (gst_identity_set_property):
10634         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
10635         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
10636           add warnings to _set_property for unknown arguments
10637           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
10638
10639 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10640
10641         * Makefile.am:
10642         * docs/manuals.mak:
10643           add .po file download snippet
10644           fix a bug in the doc makefile
10645
10646 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10647
10648         * Makefile.am:
10649         * po/LINGUAS:
10650         * po/en_GB.po:
10651           Added en_GB translation (Gareth Owen)
10652
10653 2004-04-20  Johan Dahlin  <johan@gnome.org>
10654
10655         * gst/gstpad.c (_invent_event): Clean up
10656
10657 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10658
10659         * testsuite/caps/filtercaps.c: (main):
10660           fix test to test things correctly (caps are complicated)
10661
10662 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10663
10664         * testsuite/caps/Makefile.am:
10665         * testsuite/caps/filtercaps.c: (main):
10666           add test (that doesn't work right now, but should)
10667
10668 2004-04-19  David Schleef  <ds@schleef.org>
10669
10670         * configure.ac: Add test for allowing unaligned access.  Add define
10671         to put in gstconfig.h.
10672         * docs/gst/gstreamer-sections.txt: New symbols
10673         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
10674         * docs/gst/tmpl/gstfilesrc.sgml:
10675         * docs/gst/tmpl/gstparse.sgml:
10676         * docs/gst/tmpl/gsttypes.sgml:
10677         * docs/gst/tmpl/gstutils.sgml:
10678         * docs/gst/tmpl/gstvalue.sgml:
10679         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
10680         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
10681         on most !i386/!powerpc architectures.  From Daniel Gazard
10682         <daniel.gazard@free.fr>.  (bug #140156)
10683         * po/af.po: Check in changes made by gettext.
10684         * po/az.po:
10685         * po/fr.po:
10686         * po/nl.po:
10687         * po/sr.po:
10688         * po/sv.po:
10689
10690 2004-04-20  Benjamin Otte  <otte@gnome.org>
10691
10692         * gst/schedulers/entryscheduler.c: 
10693         (gst_entry_scheduler_yield):
10694           refuse to yield when decoupled elements insist on doing that.
10695           At least it's better than crashing
10696
10697 2004-04-19  David Schleef  <ds@schleef.org>
10698
10699         * docs/libs/Makefile.am: Change sinclude to include
10700         * docs/gst/Makefile.am: same
10701         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
10702
10703 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10704
10705         * po/LINGUAS:
10706         * po/uk.po:
10707           Added Ukrainian translation (Maxim V. Dziumanenko)
10708
10709 2004-04-19  Johan Dahlin  <johan@gnome.org>
10710
10711         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
10712         checking here, do it before calling the function.
10713         Clean up, use for loops instead of while loops while iterating
10714         over lists.
10715
10716         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
10717         in debug message.
10718         (gst_spider_create_and_plug): Improve debug message.
10719         General: Replace while loops which iterates over GLists with for
10720         loops. Which are much cleaner, improves readability, especially
10721         for gst_spider_identity_plug
10722
10723         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
10724         fixes bug 140477
10725
10726 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10727
10728         * po/LINGUAS:
10729         * po/tr.po:
10730           Added Turkish translation (Baris Cicek)
10731
10732 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10733
10734         * docs/faq/troubleshooting.xml:
10735           Mention gst-register in the FAQ (fixes 139045).
10736
10737 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10738
10739         * docs/gst/gstreamer-sections.txt:
10740
10741 2004-04-17  Benjamin Otte  <otte@gnome.org>
10742
10743         * gst/gstelement.c: (gst_element_dispose):
10744           simplify
10745         * gst/gstpad.c: (gst_pad_call_chain_function):
10746           don't create loads of events due to bad macro usage
10747
10748 2004-04-16  David Schleef  <ds@schleef.org>
10749
10750         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
10751         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
10752         * gst/gstvalue.c: (gst_value_serialize_buffer),
10753         (gst_value_deserialize_buffer), (gst_type_is_fixed),
10754         (_gst_value_initialize): Create a new function gst_type_is_fixed()
10755         to indicate types that are fixed wrt caps or not.  Switching to
10756         this function fixes (bug #140298).
10757         * gst/gstvalue.h:
10758
10759 2004-04-16  David Schleef  <ds@schleef.org>
10760
10761         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
10762         for GST_UNALIGNED_ACESS, since we essentially know which archs
10763         are ok.
10764
10765 2004-04-17  Benjamin Otte  <otte@gnome.org>
10766
10767         * docs/gst/Makefile.am:
10768           ignore gst/parse directory when building docs (fixes #140205)
10769
10770 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10771
10772         * testsuite/refcounting/mem.c: (vmsize):
10773           do error checking
10774
10775 2004-04-16  Johan Dahlin  <johan@gnome.org>
10776
10777         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
10778         and gst_pad_call_get_function.
10779
10780 2004-04-15  David Schleef  <ds@schleef.org>
10781
10782         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
10783         checks if we can access unaligned memory.
10784         * configure.ac: Use it.
10785
10786 2004-04-16  Benjamin Otte  <otte@gnome.org>
10787
10788         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
10789         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
10790         * gst/elements/gstfilesrc.h:
10791           s/seek_happened/need_discont/ and require discont before sending any
10792           data
10793
10794 2004-04-15  David Schleef  <ds@schleef.org>
10795
10796         * gst/gstvalue.c: (gst_value_serialize_buffer),
10797         (gst_value_deserialize_buffer), (_gst_value_initialize):
10798         Register these types as fundamental types. (bug #140015)
10799
10800 2004-04-16  Benjamin Otte  <otte@gnome.org>
10801
10802         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
10803         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
10804         (gst_pad_pull):
10805           implement enforcing discont events before buffers are passed. This
10806           allows state changes of only some elements and later correctly going
10807           on where they left off (or in short: you can now set audio sinks to
10808           NULL to release the device when the pipeline is paused)
10809         * gst/gstpad.c: (gst_pad_call_chain_function),
10810         (gst_pad_call_get_function):
10811         * gst/gstpad.h:
10812           add gst_pad_call_chain_function and gst_pad_call_get_function for
10813           scheduler interaction. They are required because of the changes
10814           above.
10815         * gst/schedulers/entryscheduler.c: (get_buffer),
10816         (gst_entry_scheduler_chain_wrapper),
10817         (gst_entry_scheduler_get_wrapper),
10818         (gst_entry_scheduler_state_transition),
10819         (gst_entry_scheduler_pad_link):
10820         * gst/schedulers/gstbasicscheduler.c:
10821         (gst_basic_scheduler_chain_wrapper),
10822         (gst_basic_scheduler_src_wrapper),
10823         (gst_basic_scheduler_chainhandler_proxy),
10824         (gst_basic_scheduler_gethandler_proxy),
10825         (gst_basic_scheduler_cothreaded_chain),
10826         (gst_basic_scheduler_chain_elements):
10827         * gst/schedulers/gstoptimalscheduler.c:
10828         (get_group_schedule_function), (pad_clear_queued),
10829         (gst_opt_scheduler_pad_link):
10830           use the new functions instead of calling get/chain-functions
10831           directly.
10832
10833 2004-04-15  David Schleef  <ds@schleef.org>
10834
10835         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
10836         * docs/gst/tmpl/gstinfo.sgml: same
10837         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
10838         gtk-doc put here.
10839         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
10840         * examples/queue/queue.c: (main):  We iterate pipelines, not
10841         bins.  (bug #139996)
10842
10843 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10844
10845         * docs/pwg/advanced-types.xml:
10846           Add MS RLE support. Also document Qt RLE although I have no sample
10847           files for that yet. And document an extra property for ADPCM.
10848
10849 2004-04-15  David Schleef  <ds@schleef.org>
10850
10851         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
10852         (_gst_plugin_fault_handler_setup):  Disable more stuff on
10853         Windows.
10854
10855 2004-04-15  David Schleef  <ds@schleef.org>
10856
10857         * gst/gstinfo.c: (_gst_debug_init): Change some internal
10858         symbol names to not conflict with new gstinfo.h symbols.
10859         * gst/gstinfo.h: Add inline functions for all those crazy
10860         compilers that don't know how to handle variadic macros (MSVC).
10861
10862 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10863
10864         * configure.ac: bump nano to 1
10865
10866 === release 0.8.1 ===
10867
10868 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10869
10870         * NEWS:
10871         * RELEASE:
10872         * configure.ac:
10873           releasing 0.8.1, "Snow Brigade"
10874
10875 2004-04-14  David Schleef  <ds@schleef.org>
10876
10877         * testsuite/Makefile.am: define tests_ignore
10878         * testsuite/Rules: Added new tests_ignore, which get compiled,
10879         but not run (generally because they're inconsistent or have
10880         heisenbugs).  Now we can ensure all the .c files compile in
10881         testsuite/.
10882         * testsuite/bins/Makefile.am: define tests_ignore
10883         * testsuite/bytestream/Makefile.am:
10884         * testsuite/caps/Makefile.am:
10885         * testsuite/clock/Makefile.am:
10886         * testsuite/debug/Makefile.am:
10887         * testsuite/debug/global.c: (gst_debug_log_one),
10888         (gst_debug_log_two): Fix compilation problem.
10889         * testsuite/dynparams/Makefile.am:
10890         * testsuite/elements/Makefile.am:
10891         * testsuite/ghostpads/Makefile.am:
10892         * testsuite/indexers/Makefile.am:
10893         * testsuite/parse/Makefile.am:
10894         * testsuite/plugin/Makefile.am:
10895         * testsuite/refcounting/Makefile.am:
10896         * testsuite/refcounting/element_pad.c: (main): Don't return leak
10897         results, because it's not calculated correctly.
10898         * testsuite/refcounting/pad.c: (main): same
10899         * testsuite/states/Makefile.am:
10900         * testsuite/tags/Makefile.am:
10901         * testsuite/threads/Makefile.am:
10902
10903 2004-04-14  David Schleef  <ds@schleef.org>
10904
10905         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
10906         generating bad code around the cpu detection asm code.
10907
10908 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10909
10910         * tools/gst-inspect.c: (print_element_info):
10911           print numeric version of rank as well, since we added some - 1
10912           rank values to elements
10913
10914 2004-04-13  David Schleef  <ds@schleef.org>
10915
10916         * configure.ac:  Disable various code when compiling for MinGW.
10917         * gst/elements/Makefile.am:
10918         * gst/elements/gstelements.c:
10919         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10920         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
10921         * gst/registries/gstxmlregistry.c: (make_dir):
10922
10923 2004-04-13  David Schleef  <ds@schleef.org>
10924
10925         * gst/Makefile.am:
10926         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
10927         assembly.
10928         * gst/gstcpuid_i386.s: remove
10929
10930 2004-04-13  David Schleef  <ds@schleef.org>
10931
10932         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
10933         seems to think it needs to be done.
10934         * docs/gst/tmpl/gstfakesink.sgml:
10935         * docs/gst/tmpl/gstfakesrc.sgml:
10936         * docs/gst/tmpl/gstfdsink.sgml:
10937         * docs/gst/tmpl/gstfdsrc.sgml:
10938         * docs/gst/tmpl/gstfilesink.sgml:
10939         * docs/gst/tmpl/gstfilesrc.sgml:
10940         * docs/gst/tmpl/gstidentity.sgml:
10941         * docs/gst/tmpl/gstmd5sink.sgml:
10942         * docs/gst/tmpl/gstmultifilesrc.sgml:
10943         * docs/gst/tmpl/gstpipefilter.sgml:
10944         * docs/gst/tmpl/gstshaper.sgml:
10945         * docs/gst/tmpl/gstspider.sgml:
10946         * docs/gst/tmpl/gstspideridentity.sgml:
10947         * docs/gst/tmpl/gststatistics.sgml:
10948         * docs/gst/tmpl/gsttee.sgml:
10949         * docs/gst/tmpl/gsttypefind.sgml:
10950         * docs/gst/tmpl/gstutils.sgml:
10951
10952 2004-04-13  David Schleef  <ds@schleef.org>
10953
10954         * configure.ac: Changes to remove POSIXisms (mmap in this case)
10955         and to build DLLs on Windows.
10956         * gst/Makefile.am:
10957         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
10958         (gst_filesrc_open_file):
10959         * gst/schedulers/Makefile.am:
10960
10961 2004-04-13  David Schleef  <ds@schleef.org>
10962
10963         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
10964         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
10965         fixating lists.
10966
10967 2004-04-12  David Schleef  <ds@schleef.org>
10968
10969         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
10970         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
10971         to using it.
10972         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
10973         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
10974         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
10975         * gst/gststructure.c: (gst_structure_set_valist),
10976         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
10977         support for buffers.
10978         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
10979         intended to be const.
10980         * gst/gsttag.h: same
10981         * gst/gstvalue.c: (gst_value_serialize_buffer),
10982         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
10983         to (de)serialize buffers.
10984         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
10985         * testsuite/caps/string-conversions.c: (main):
10986         * testsuite/caps/value_serialize.c: add new test
10987
10988 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10989
10990         * docs/pwg/advanced-types.xml:
10991           Document MS video 1 (video/x-msvideocodec) mimetype/format.
10992
10993 2004-04-11  Benjamin Otte  <otte@gnome.org>
10994
10995         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
10996           rename categories to basic_*
10997         * gst/schedulers/gstbasicscheduler.c: 
10998         (gst_basic_scheduler_chain_wrapper),
10999         (gst_basic_scheduler_chainhandler_proxy),
11000         (gst_basic_scheduler_gethandler_proxy),
11001         (gst_basic_scheduler_eventhandler_proxy):
11002           debugging category fixes - put common stuff in log category
11003         * gst/schedulers/gstbasicscheduler.c: 
11004         (gst_basic_scheduler_chain_elements):
11005           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
11006           active and linking two active chains
11007
11008 2004-04-10  Benjamin Otte  <otte@gnome.org>
11009
11010         * docs/pwg/intro-preface.xml:
11011           fix dead links and remove reference to Wiki
11012
11013 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11014
11015         * gst/schedulers/gstbasicscheduler.c:
11016           make sure we can switch back to the main function if we're still in
11017           the main function (supposed to fix #139617)
11018         * gst/schedulers/gthread-cothreads.h:
11019           don't throw an error when switching to the same cothread
11020
11021 2004-04-09  Benjamin Otte  <otte@gnome.org>
11022
11023         * gst/gstbin.c: (gst_bin_get_type):
11024         * gst/gstclock.c: (gst_clock_get_type):
11025         * gst/gstindex.c: (gst_index_get_type):
11026         * gst/gstobject.c: (gst_object_get_type),
11027         (gst_signal_object_get_type):
11028         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
11029         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
11030         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
11031         * gst/gstqueue.c: (gst_queue_get_type):
11032         * gst/gstregistry.c: (gst_registry_get_type):
11033         * gst/gstsystemclock.c: (gst_system_clock_get_type):
11034         * gst/gstthread.c: (gst_thread_get_type):
11035           don't use memchunks for these objects, use malloc instead
11036
11037 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
11038
11039         * docs/gst/.cvsignore:
11040         * docs/gst/Makefile.am:
11041         * docs/gst/gstreamer-sections.txt:
11042         * docs/gst/tmpl/gstaggregator.sgml:
11043         * docs/gst/tmpl/gstbuffer.sgml:
11044         * docs/gst/tmpl/gstclock.sgml:
11045         * docs/gst/tmpl/gstelement.sgml:
11046         * docs/gst/tmpl/gstfakesink.sgml:
11047         * docs/gst/tmpl/gstfakesrc.sgml:
11048         * docs/gst/tmpl/gstfdsink.sgml:
11049         * docs/gst/tmpl/gstfdsrc.sgml:
11050         * docs/gst/tmpl/gstfilesink.sgml:
11051         * docs/gst/tmpl/gstfilesrc.sgml:
11052         * docs/gst/tmpl/gstidentity.sgml:
11053         * docs/gst/tmpl/gstindex.sgml:
11054         * docs/gst/tmpl/gstinfo.sgml:
11055         * docs/gst/tmpl/gstmd5sink.sgml:
11056         * docs/gst/tmpl/gstmultifilesrc.sgml:
11057         * docs/gst/tmpl/gstpad.sgml:
11058         * docs/gst/tmpl/gstpipefilter.sgml:
11059         * docs/gst/tmpl/gstpipeline.sgml:
11060         * docs/gst/tmpl/gstpluginfeature.sgml:
11061         * docs/gst/tmpl/gstqueue.sgml:
11062         * docs/gst/tmpl/gstregistry.sgml:
11063         * docs/gst/tmpl/gstscheduler.sgml:
11064         * docs/gst/tmpl/gstshaper.sgml:
11065         * docs/gst/tmpl/gstspider.sgml:
11066         * docs/gst/tmpl/gstspideridentity.sgml:
11067         * docs/gst/tmpl/gststatistics.sgml:
11068         * docs/gst/tmpl/gstsystemclock.sgml:
11069         * docs/gst/tmpl/gsttee.sgml:
11070         * docs/gst/tmpl/gstthread.sgml:
11071         * docs/gst/tmpl/gsttypefind.sgml:
11072         * docs/gst/tmpl/gstutils.sgml:
11073           further doc build fixes
11074
11075 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
11076
11077         * docs/gst/Makefile.am:
11078           make docs exit on scanning problems
11079           fix nonsrcdir build issues
11080         * docs/gst/gstreamer-sections.txt:
11081           adding stuff from -unused
11082         * gst/gstqueue.h:
11083           create GstQueueSize
11084         * gst/schedulers/cothreads_compat.h:
11085           fix cothread warnings
11086
11087 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
11088
11089         * docs/gst/gstreamer-sections.txt:
11090           remove defines deprecated by Benjamin
11091
11092 2004-04-07  Benjamin Otte  <otte@gnome.org>
11093
11094         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
11095           when the buffer is complete, don't check if other buffers are needed
11096         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
11097           check that the offset is >0 so we don't try to read before the
11098           beginning of the file
11099         * gst/gstpad.c: (gst_pad_set_pad_template):
11100           sink the template, so we don't end up with 130k pad templates
11101
11102 2004-04-06  Benjamin Otte  <otte@gnome.org>
11103
11104         * gst/autoplug/gstspider.c: (gst_spider_link_add):
11105           don't ref the element, adding already reffed it. And we didn't unref
11106           it later anyway... (huge memleak when you used many spider elements)
11107         * gst/gstelement.c: (gst_element_base_class_finalize):
11108         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
11109         (gst_element_register):
11110         * gst/gsturi.c: (gst_element_make_from_uri):
11111           use gst_object_(un)ref instead of g_object(un)ref
11112
11113 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11114
11115         * gst/gstbuffer.h:
11116           remove macro that wouldn't work anymore because struct member has
11117           been removed.
11118         * gst/schedulers/entryscheduler.c: (schedule_forward):
11119           fix segfault for unconnected pads
11120         
11121 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11122
11123         reviewed by David Schleef <ds@schleef.org>
11124
11125         * gst/gstinfo.h:
11126           *_FORMAT modifiers should require putting a % in front of them for
11127           consistency reasons.
11128
11129 2004-04-05  Colin Walters  <walters@redhat.com>
11130
11131         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
11132         space.
11133
11134 2004-04-05  Benjamin Otte  <otte@gnome.org>
11135
11136         * configure.ac:
11137         * gst/Makefile.am:
11138         * gst/gst_private.h:
11139         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
11140           add support for detecting if GStreamer runs inside valgrind.
11141           requires valgrind (d'oh) and --enable-debug for correct cdetection.
11142           print a big message in valgrind that GStreamer has detected it's
11143           running inside and might now use different code.
11144         * gst/gstmemchunk.c: (populate), (free_area),
11145         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
11146         (gst_mem_chunk_free):
11147           flag memchunks for valgrind, so it can detect leaking of chunks.
11148           This allows detecting leaks of GstBuffer and GstEvent correctly
11149           inside valgrind.
11150
11151 2004-04-05  David Schleef  <ds@schleef.org>
11152
11153         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
11154           jensgr@gmx.net (Jens Granseuer)
11155
11156 2004-04-05  David Schleef  <ds@schleef.org>
11157
11158         * gst/gstbuffer.c: (_gst_buffer_sub_free),
11159         (gst_buffer_default_free), (gst_buffer_default_copy),
11160         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
11161         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
11162         structures in one place.
11163
11164 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11165
11166         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
11167           (GST_TIME_FORMAT, GST_TIME_ARGS)
11168
11169 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11170
11171         * testsuite/elements/Makefile.am:
11172           disable test until it stops breaking make distcheck
11173
11174 2004-04-05  Johan Dahlin  <johan@gnome.org>
11175
11176         * po/sv.po: Updated translation
11177
11178 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11179
11180         * gst/gstplugin.c: (gst_plugin_load_file):
11181           fix segfault for when original plugin was loaded statically
11182
11183 2004-04-05  Benjamin Otte  <otte@gnome.org>
11184
11185         * testsuite/debug/category.c: (main):
11186         * testsuite/debug/commandline.c: (main):
11187         * testsuite/debug/output.c: (main):
11188           fix tests to work again with debugging enabled
11189
11190 2004-04-05  Benjamin Otte  <otte@gnome.org>
11191
11192         * gst/schedulers/gstbasicscheduler.c:
11193         (gst_basic_scheduler_pad_link):
11194           fix to work with recent scheduling changes
11195
11196 2004-04-05  Benjamin Otte  <otte@gnome.org>
11197
11198         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
11199         prepareChangeLog doesn't work when cvs indents):
11200           don't throw an error when no element can be scheduled, there's too
11201           many weird reasons why it doesn't work. Return STOPPED instead.
11202           decoupled elemts' schedulability doesn't depend on bufpens.
11203
11204 2004-04-04  Benjamin Otte  <otte@gnome.org>
11205
11206         * gst/schedulers/gstbasicscheduler.c:
11207         (gst_basic_scheduler_pad_select):
11208           fix uninitialized variable warnings
11209
11210 2004-04-04  Benjamin Otte  <otte@gnome.org>
11211
11212         * gst/gstpad.c: (gst_pad_collect_valist):
11213           fix uninitialized variable warning
11214         * gst/schedulers/entryscheduler.c: (schedule_forward):
11215           fix shadowed variable
11216
11217 2004-04-04  Benjamin Otte  <otte@gnome.org>
11218
11219         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
11220         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
11221         (gst_pad_select):
11222         * gst/gstpad.h:
11223         * gst/gstscheduler.c: (gst_scheduler_pad_select),
11224         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
11225         * gst/gstscheduler.h:
11226           implement gst_pad_collect as replacement for gst_pad_select.
11227           deprecate gst_pad_select and gst_scheduler_(un)lock_element
11228           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
11229           new pad_select, lock and unlock calls.
11230         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
11231         * gst/cothreads.h:
11232         * gst/schedulers/cothreads_compat.h:
11233         * gst/schedulers/gthread-cothreads.h:
11234           remove unused cothread_lock and cothread_unlock calls
11235         * gst/schedulers/entryscheduler.c:
11236         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
11237         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
11238         (gst_entry_scheduler_pad_select):
11239           update to new API
11240         * gst/schedulers/gstbasicscheduler.c:
11241         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
11242         (gst_basic_scheduler_pad_select):
11243           remove useless lock and unlock calls, update pad_select to new API
11244           (untested)
11245         * gst/schedulers/gstoptimalscheduler.c:
11246         (gst_opt_scheduler_class_init):
11247           remove useless select, lock and unlock function calls
11248         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
11249           use gst_pad_collect instead of gst_pad_select
11250
11251 2004-04-04  Benjamin Otte  <otte@gnome.org>
11252
11253         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
11254         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
11255         (schedule_next_element), (print_entry):
11256           add can_schedule_pad to handle element states.
11257           add schedule_forward to select the correct entry to schedule next
11258
11259 2004-04-03  Benjamin Otte  <otte@gnome.org>
11260
11261         * gst/schedulers/entryscheduler.c: 
11262           remove unused variable, fix error inside Rb, fix compile warning in
11263           unreachable code
11264
11265 2004-04-03  Benjamin Otte  <otte@gnome.org>
11266
11267         * gst/schedulers/entryscheduler.c:
11268           completely revamp the inner workings, so it's a lot easier to
11269           understand and extend
11270
11271 2004-04-03  Andy Wingo  <wingo@pobox.com>
11272
11273         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
11274         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
11275         This allows better introspection of pipeline topology.
11276         (add_to_chain): Don't do trickery to put loop elements first;
11277         rather, queue a chain sort by marking the chain as dirty.
11278         (remove_from_chain): Mark the chain dirty.
11279         (sort_chain): New function. Sorts the group list so that terminal
11280         sinks are first. This means elements on the sink side will be
11281         preferentially sscheduled before elements on the src side of the
11282         pipeline.
11283         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
11284         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
11285         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
11286         (group_inc_link): Change argument and variable names to match the
11287         new link structure member names (src and sink).
11288         (group_dec_link): Add some description
11289
11290 2004-04-03  Benjamin Otte  <otte@gnome.org>
11291
11292         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
11293         * gst/gstinfo.h:
11294         * testsuite/debug/category.c: (main):
11295         * testsuite/debug/commandline.c: (main):
11296         * testsuite/debug/output.c: (main):
11297         * testsuite/debug/printf_extension.c: (main):
11298           fix to successfully build and test with --disable-gst-debug
11299           configure switch (fixes #138705)
11300
11301 2004-04-03  Benjamin Otte  <otte@gnome.org>
11302
11303         * docs/pwg/building-boiler.xml:
11304           add cvs login line and s/anonymous/anoncvs/
11305
11306 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
11307
11308         reviewed by Benjamin Otte  <otte@gnome.org>
11309
11310         * gst/gststructure.c: (gst_structure_free):
11311           memleak fix: free fields array (partial fix for #134839)
11312
11313 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11314
11315         * docs/random/ds/0.9-suggested-changes:
11316           Add a note to change handoff use in fakesrc to be usable in
11317           a more generic way (fakesrc should be renamed to appsrc or so).
11318         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
11319           Change signal type to scope, so we can fill the buffer in the
11320           handoff handler (that's the whole use of this signal...).
11321
11322 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11323
11324         * docs/pwg/other-ntoone.xml:
11325           Document muxers and n-to-1 elements.
11326
11327 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
11328
11329         * gst/registries/gstxmlregistry.c
11330         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
11331         determine if a file is a G_MODULE. The old one discards paths
11332         containing "so" somewhere in the middle. My home directory is
11333         called "soto". Go figure...
11334
11335 2004-03-31  David Schleef  <ds@schleef.org>
11336
11337         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
11338         to eventually deprecate gst_buffer_merge().  (bug: #136408)
11339         * gst/gstbuffer.h:
11340
11341 2004-03-31  David Schleef  <ds@schleef.org>
11342
11343         * gst/gstvalue.c: (gst_value_union_int_int_range),
11344         (gst_value_union_int_range_int_range), (gst_value_can_union),
11345         (gst_value_union), (_gst_value_initialize):  Add some union
11346         implementations.  We didn't have any previously.
11347         * testsuite/caps/Makefile.am:
11348         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
11349         (gst_audioscale_getcaps), (test_caps), (main): A little test
11350         that is the same as the caps manipulation in audioscale.
11351
11352 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11353
11354         * docs/faq/general.xml:
11355           add entry about "does gst support format X?"
11356
11357 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11358
11359         * gst/gstthread.c:
11360           fix docs
11361         * gst/gstutils.h:
11362           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
11363
11364 2004-03-30  Benjamin Otte  <otte@gnome.org>
11365
11366         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
11367           set the offset of the buffer to the requested offset
11368         * gst/elements/gsttypefind.c: (stop_typefinding):
11369           revert patch 1.18 (which I unfortunately don't know the reason for).
11370           This is needed to allow downstream elements to seek. Otherwise
11371           typefind might overwrite a previous seek by downstream elements.
11372           This lead to errors with id3tag and typefind on some mp3s.
11373         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
11374         (gst_entry_scheduler_iterate):
11375           be more verbose when debugging
11376
11377 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
11378
11379         * gst/gstcaps.c: (gst_caps_from_string_inplace):
11380           make sure we don't get NULL strings
11381
11382 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
11383
11384         * gst/gstcaps.c:
11385         * gst/gstelement.c:
11386         * gst/gstelementfactory.c: (gst_element_factory_get_type):
11387         * gst/gstindex.c: (gst_index_resolver_get_type),
11388         (gst_index_get_type), (gst_index_factory_get_type):
11389         * gst/gstinfo.c:
11390         * gst/gstpad.c:
11391         * gst/gstplugin.c:
11392         * gst/gsturi.c: (gst_uri_handler_get_type):
11393         * gst/gstvalue.c:
11394           first batch of documentation fixes
11395
11396 2004-03-29  David Schleef  <ds@schleef.org>
11397
11398         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
11399         * docs/gst/gstreamer-docs.sgml:  More hacking
11400         * docs/gst/gstreamer-sections.txt:
11401         * docs/gst/tmpl/cothreads_compat.sgml:
11402         * docs/gst/tmpl/gstcaps.sgml:
11403         * docs/gst/tmpl/gstclock.sgml:
11404         * docs/gst/tmpl/gstelement.sgml:
11405         * docs/gst/tmpl/gstevent.sgml:
11406         * docs/gst/tmpl/gstpad.sgml:
11407         * docs/gst/tmpl/gstutils.sgml:
11408         * docs/gst/tmpl/gstxml.sgml:
11409         * docs/gst/tmpl/gthread-cothreads.sgml:
11410         * docs/random/ds/0.9-suggested-changes:
11411         * gst/elements/gstfakesink.h: doc fixes
11412         * gst/elements/gstfakesrc.h: doc fixes
11413         * gst/gstcaps.c: doc fixes
11414         * gst/gstcaps.h: doc fixes
11415         * gst/gstelement.c: doc fixes
11416         * gst/gstelement.h: doc fixes
11417         * gst/gstindex.c: doc fixes
11418         * gst/gstinfo.c: doc fixes
11419         * gst/gstpad.c: doc fixes
11420         * gst/gstpad.h: doc fixes
11421         * gst/gstplugin.c: doc fixes
11422         * gst/gsttypefind.h: doc fixes
11423         * gst/gsturi.c: doc fixes
11424         * gst/gstvalue.c: doc fixes
11425
11426 2004-03-29  Colin Walters  <walters@redhat.com>
11427
11428         * gst/registries/gstxmlregistry.c (get_time)
11429         (plugin_times_older_than_recurse):
11430         Use the result of stat to determine whether a path is a file,
11431         so we don't attempt to opendir() files.
11432
11433 2004-03-29  Benjamin Otte  <otte@gnome.org>
11434
11435         * gst/gstpad.c: (gst_pad_set_explicit_caps):
11436           print caps in debugging output when setting caps failed
11437         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
11438         (schedule_next_element), (get_buffer), (run_chainhandler),
11439         (element_may_start), (gst_entry_scheduler_chain_handler),
11440         (gst_entry_scheduler_get_handler),
11441         (gst_entry_scheduler_state_transition),
11442         (gst_entry_scheduler_pad_link):
11443           make this scheduler a testcase for mandatory
11444           discont-before-first-buffer which is needed if we want to allow apps
11445           to release the sound device.
11446           add SCHED_ASSERT macro to print scheduler state before an assertion
11447           triggers.
11448
11449 2004-03-29  Benjamin Otte  <otte@gnome.org>
11450
11451         * COPYING:
11452           replace by LGPL (former COPYING.LIB). The core is completely
11453           licensed LGPL.
11454         * COPYING.LIB:
11455           remove
11456
11457 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11458
11459         * po/af.po:
11460         * po/sv.po:
11461           updated Afrikaans and Swedish
11462
11463 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11464
11465         * po/LINGUAS:
11466         * po/az.po:
11467           adding Azerbaijani (Mətin Əmirov)
11468
11469 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
11470
11471         * gst/gstelement.h: 
11472         * gst/gstelement.c (gst_element_set_time_delay): New function for
11473         setting element time taking into account a hardware buffering
11474         delay.
11475         (gst_element_set_time): Now just an invocation of
11476         gst_element_set_time_delay.
11477         * gst/gstclock.h: 
11478         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
11479         allowing to set event times in the future.
11480         (gst_clock_get_event_time): Now just an invocation of
11481         gst_clock_get_event_time_delay.
11482
11483 2004-03-28  Benjamin Otte  <otte@gnome.org>
11484
11485         * gst/gstbin.c: (gst_bin_set_element_sched),
11486         (gst_bin_unset_element_sched):
11487           don't add decoupled elements to schedulers - otherwise it's
11488           impossible to control if a link to a decoupled element was already
11489           removed from a scheduler or not.
11490         * gst/schedulers/cothreads_compat.h:
11491         * gst/schedulers/gthread-cothreads.h:
11492           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
11493           is no "unused" warning.
11494         * gst/schedulers/Makefile.am:
11495         * gst/schedulers/entryscheduler.c:
11496           add new scheduler, based on ideas from talking to David and Martin.
11497           It's supposed to be small and correct. Currently it's also slow (but
11498           it's not noticable)
11499         * examples/retag/retag.c: (main):
11500         * testsuite/bytestream/test1.c: (main):
11501           fix missing NULLs at end of variadic functions
11502         * testsuite/elements/.cvsignore:
11503           update
11504
11505 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
11506
11507         * gst/gstevent.h:
11508         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
11509
11510 2004-03-25  David Schleef  <ds@schleef.org>
11511
11512         * docs/gst/gstreamer-sections.txt:  More doc hacking.
11513         * docs/gst/tmpl/gstaggregator.sgml:
11514         * docs/gst/tmpl/gstautoplugfactory.sgml:
11515         * docs/gst/tmpl/gstbin.sgml:
11516         * docs/gst/tmpl/gstbuffer.sgml:
11517         * docs/gst/tmpl/gstbufferstore.sgml:
11518         * docs/gst/tmpl/gstfakesink.sgml:
11519         * docs/gst/tmpl/gstfakesrc.sgml:
11520         * docs/gst/tmpl/gstmd5sink.sgml:
11521         * docs/gst/tmpl/gstreamer-unused.sgml:
11522         * docs/gst/tmpl/gstsearchfuncs.sgml:
11523         * docs/gst/tmpl/gstshaper.sgml:
11524         * docs/gst/tmpl/gstspider.sgml:
11525         * docs/gst/tmpl/gsttee.sgml:
11526         * docs/gst/tmpl/gstutils.sgml:
11527         * docs/gst/tmpl/gstvalue.sgml:
11528         * docs/gst/tmpl/gstxml.sgml:
11529         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
11530         and we don't support it.
11531         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
11532         (gst_use_threads), (gst_has_threads): same
11533         * gst/gstthreaddummy.c: same
11534         * gst/autoplug/gstspider.c: Make gst_spider_details static.
11535         * gst/autoplug/gstspider.h: same
11536         * gst/elements/gstaggregator.h: Remove bogus function from header
11537         * gst/elements/gstfakesink.h: same
11538         * gst/elements/gstfakesrc.h: same
11539         * gst/elements/gstmd5sink.h: same
11540         * gst/elements/gstshaper.h: same
11541         * gst/elements/gsttee.h: same
11542         * gst/gstbin.c: doc fixes
11543         * gst/gstbin.h: Remove unused definition.
11544         * gst/gstbuffer.c: doc fixes
11545         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
11546         * gst/gstfilter.c: doc fixes
11547         * gst/gsttag.c: doc fixes
11548         * gst/gstvalue.c: doc fixes
11549
11550 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11551
11552         * docs/pwg/advanced-types.xml:
11553           Document typefinding.
11554         * docs/pwg/other-oneton.xml:
11555           Document one-to-n elements, demuxers and parsers.
11556
11557 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
11558
11559         reviewed by: David Schleef  <ds@schleef.org>
11560
11561         * configure.ac: Check bison version (bug #127838)
11562
11563 2004-03-25  David Schleef  <ds@schleef.org>
11564
11565         * docs/gst/gstreamer-docs.sgml: More fine tuning.
11566         * docs/gst/gstreamer-sections.txt:
11567         * docs/gst/tmpl/gstautoplug.sgml:
11568         * docs/gst/tmpl/gststaticautoplug.sgml:
11569         * docs/gst/tmpl/gststaticautoplugrender.sgml:
11570         * docs/gst/tmpl/gstutils.sgml:
11571         * docs/gst/tmpl/gstxml.sgml:
11572
11573 2004-03-24  David Schleef  <ds@schleef.org>
11574
11575         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
11576         manual being such complete crap, that I decided to do major
11577         hacking of it.  This checkin replaces any fine tuning that
11578         may have been done previously, with the benefit of actually
11579         being complete for much of the API that was changed since
11580         0.6.  Further fine tuning will occur shortly.  (bug #134721)
11581         * docs/gst/gstreamer-sections.txt:
11582         * docs/gst/tmpl/GstBin.sgml:
11583         * docs/gst/tmpl/GstBuffer.sgml:
11584         * docs/gst/tmpl/GstCaps.sgml:
11585         * docs/gst/tmpl/GstClock.sgml:
11586         * docs/gst/tmpl/GstCompat.sgml:
11587         * docs/gst/tmpl/GstData.sgml:
11588         * docs/gst/tmpl/GstElement.sgml:
11589         * docs/gst/tmpl/GstEvent.sgml:
11590         * docs/gst/tmpl/GstIndex.sgml:
11591         * docs/gst/tmpl/GstStructure.sgml:
11592         * docs/gst/tmpl/GstTag.sgml:
11593         * docs/gst/tmpl/cothreads.sgml:
11594         * docs/gst/tmpl/cothreads_compat.sgml:
11595         * docs/gst/tmpl/gettext.sgml:
11596         * docs/gst/tmpl/grammar.tab.sgml:
11597         * docs/gst/tmpl/gst-i18n-app.sgml:
11598         * docs/gst/tmpl/gst-i18n-lib.sgml:
11599         * docs/gst/tmpl/gst.sgml:
11600         * docs/gst/tmpl/gst_private.sgml:
11601         * docs/gst/tmpl/gstaggregator.sgml:
11602         * docs/gst/tmpl/gstarch.sgml:
11603         * docs/gst/tmpl/gstatomic.sgml:
11604         * docs/gst/tmpl/gstatomic_impl.sgml:
11605         * docs/gst/tmpl/gstbin.sgml:
11606         * docs/gst/tmpl/gstbuffer.sgml:
11607         * docs/gst/tmpl/gstbufferstore.sgml:
11608         * docs/gst/tmpl/gstcaps.sgml:
11609         * docs/gst/tmpl/gstclock.sgml:
11610         * docs/gst/tmpl/gstcompat.sgml:
11611         * docs/gst/tmpl/gstconfig.sgml:
11612         * docs/gst/tmpl/gstcpu.sgml:
11613         * docs/gst/tmpl/gstdata.sgml:
11614         * docs/gst/tmpl/gstdata_private.sgml:
11615         * docs/gst/tmpl/gstelement.sgml:
11616         * docs/gst/tmpl/gstenumtypes.sgml:
11617         * docs/gst/tmpl/gsterror.sgml:
11618         * docs/gst/tmpl/gstevent.sgml:
11619         * docs/gst/tmpl/gstfakesink.sgml:
11620         * docs/gst/tmpl/gstfakesrc.sgml:
11621         * docs/gst/tmpl/gstfilesink.sgml:
11622         * docs/gst/tmpl/gstfilter.sgml:
11623         * docs/gst/tmpl/gstindex.sgml:
11624         * docs/gst/tmpl/gstinfo.sgml:
11625         * docs/gst/tmpl/gstinterface.sgml:
11626         * docs/gst/tmpl/gstlog.sgml:
11627         * docs/gst/tmpl/gstmacros.sgml:
11628         * docs/gst/tmpl/gstmarshal.sgml:
11629         * docs/gst/tmpl/gstmd5sink.sgml:
11630         * docs/gst/tmpl/gstmultifilesrc.sgml:
11631         * docs/gst/tmpl/gstobject.sgml:
11632         * docs/gst/tmpl/gstpad.sgml:
11633         * docs/gst/tmpl/gstparse.sgml:
11634         * docs/gst/tmpl/gstpipeline.sgml:
11635         * docs/gst/tmpl/gstplugin.sgml:
11636         * docs/gst/tmpl/gstpluginfeature.sgml:
11637         * docs/gst/tmpl/gstqueue.sgml:
11638         * docs/gst/tmpl/gstreamer-unused.sgml:
11639         * docs/gst/tmpl/gstregistry.sgml:
11640         * docs/gst/tmpl/gstregistrypool.sgml:
11641         * docs/gst/tmpl/gstscheduler.sgml:
11642         * docs/gst/tmpl/gstsearchfuncs.sgml:
11643         * docs/gst/tmpl/gstshaper.sgml:
11644         * docs/gst/tmpl/gstspider.sgml:
11645         * docs/gst/tmpl/gstspideridentity.sgml:
11646         * docs/gst/tmpl/gststructure.sgml:
11647         * docs/gst/tmpl/gstsystemclock.sgml:
11648         * docs/gst/tmpl/gsttag.sgml:
11649         * docs/gst/tmpl/gsttaginterface.sgml:
11650         * docs/gst/tmpl/gsttee.sgml:
11651         * docs/gst/tmpl/gstthread.sgml:
11652         * docs/gst/tmpl/gsttrace.sgml:
11653         * docs/gst/tmpl/gsttrashstack.sgml:
11654         * docs/gst/tmpl/gsttypefind.sgml:
11655         * docs/gst/tmpl/gsttypes.sgml:
11656         * docs/gst/tmpl/gsturi.sgml:
11657         * docs/gst/tmpl/gsturitype.sgml:
11658         * docs/gst/tmpl/gstutils.sgml:
11659         * docs/gst/tmpl/gstvalue.sgml:
11660         * docs/gst/tmpl/gstversion.sgml:
11661         * docs/gst/tmpl/gstxml.sgml:
11662         * docs/gst/tmpl/gstxmlregistry.sgml:
11663         * docs/gst/tmpl/gthread-cothreads.sgml:
11664         * docs/gst/tmpl/types.sgml:
11665
11666 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11667
11668         * docs/pwg/other-sink.xml:
11669         * docs/pwg/other-source.xml:
11670           Documentation on how to write source and sink elements. Other
11671           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
11672           manager, autoplugger) are all still pending.
11673
11674 2004-03-25  Benjamin Otte  <otte@gnome.org>
11675
11676         * testsuite/elements/Makefile.am:
11677         * testsuite/elements/gst-compprep-check:
11678           add check to make sure gst-compprep works
11679         * testsuite/elements/gst-inspect-check.in:
11680           improve initialization output
11681         * testsuite/Makefile.am:
11682         * testsuite/gst-inspect-check:
11683           remove old file
11684
11685 2004-03-24  David Schleef  <ds@schleef.org>
11686
11687         * testsuite/elements/Makefile.am:
11688         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
11689         to the testsuite.
11690
11691 2004-03-24  Benjamin Otte  <otte@gnome.org>
11692
11693         * libs/gst/control/dparam.c: (gst_dparam_attach),
11694         (gst_dparam_detach):
11695         * libs/gst/control/dparammanager.c: (gst_dpman_init):
11696           fix lvalue casts for real
11697
11698 2004-03-24  Benjamin Otte  <otte@gnome.org>
11699
11700         * gst/schedulers/gstbasicscheduler.c:
11701         (gst_basic_scheduler_src_wrapper):
11702         * gst/schedulers/gstoptimalscheduler.c:
11703         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
11704         (pad_clear_queued), (gst_opt_scheduler_add_element),
11705         (gst_opt_scheduler_remove_element):
11706           fix GStreamer to not have issues with lvalue casts anymore (fixes
11707           #136841)
11708
11709 2004-03-24  Benjamin Otte  <otte@gnome.org>
11710
11711         * gst/gstelement.c:
11712           add documentation about a gobject quirk where the object hasn't the
11713           correct class pointer set on initialization
11714         * gst/schedulers/gstbasicscheduler.c:
11715         (gst_basic_scheduler_src_wrapper):
11716           make sure to not run into an infinite loop
11717
11718 2004-03-22  Benjamin Otte  <otte@gnome.org>
11719
11720         * gst/gstutils.c: (gst_util_dump_mem):
11721         * gst/gstutils.h:
11722           first argument of gst_util_dump_mem should be const
11723
11724 2004-03-22  Johan Dahlin  <johan@gnome.org>
11725
11726         * gst/gstvalue.h: Clean up a little bit.
11727
11728 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
11729
11730         reviewed by Benjamin Otte  <otte@gnome.org>
11731
11732         * gst/autoplug/gstspider.c: (gst_spider_dispose):
11733         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
11734         (gst_aggregator_class_init), (gst_aggregator_init):
11735         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
11736         (gst_filesrc_dispose), (gst_filesrc_set_location):
11737         * gst/elements/gstidentity.c: (gst_identity_finalize),
11738         (gst_identity_class_init), (gst_identity_chain):
11739         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11740         * gst/elements/gststatistics.c: (gst_statistics_finalize),
11741         (gst_statistics_class_init):
11742         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
11743         (gst_tee_get_property):
11744           clean up used memory in this elements correctly on teardown (closes
11745           #137279)
11746
11747 2004-03-20  Colin Walters  <walters@redhat.com>
11748
11749         * gst/registries/gstxmlregistry.c:
11750         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
11751         registry saving atomic.
11752
11753 2004-03-20  Colin Walters  <walters@redhat.com>
11754
11755         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
11756         Just use
11757         access() instead of actually creating and deleting files.
11758
11759 2004-03-18  David Schleef  <ds@schleef.org>
11760
11761         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
11762         (bug #137625)
11763
11764 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11765
11766         * po/sv.po: updated translation (Christian Rose)
11767
11768 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11769
11770         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
11771         (gst_filesink_get_query_types), (_do_init),
11772         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
11773           return FALSE silently
11774         * po/af.po: updated translation (Petri Jooste)
11775
11776 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11777
11778         * Makefile.am:
11779         * configure.ac:
11780           dist common properly
11781         * po/af.po:
11782         * po/fr.po:
11783         * po/nl.po:
11784         * po/sr.po:
11785         * po/sv.po:
11786           refreshing translations
11787
11788 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11789
11790         * po/LINGUAS:
11791         * po/sv.po:
11792         * po/af.po:
11793           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
11794
11795 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11796
11797         * Makefile.am: use common/release.mak
11798
11799 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11800
11801         * docs/faq/gst-uninstalled:
11802           adding gst-monkeysaudio to the list of possible plugin dirs
11803
11804 2004-03-16  David Schleef  <ds@schleef.org>
11805
11806         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
11807         (gst_init_check_with_popt_table):  Fix some gettext strings to
11808         make them easier to translate.  Required making the strings
11809         non-const.
11810
11811 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11812
11813         * configure.ac: bump nano to 1
11814
11815 === release 0.8.0 ===
11816
11817 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11818
11819         * configure.ac: release 0.8.0, "Executive Slacks"
11820
11821 2004-03-16  Johan Dahlin  <johan@gnome.org>
11822
11823         * gst/schedulers/gstoptimalscheduler.c
11824         (gst_opt_scheduler_pad_unlink): Remove double ;,
11825         spotted by Scott Wheeler
11826
11827 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11828
11829         * configure.ac: bump libtool version
11830
11831 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11832
11833         * gst/gstcaps.h:
11834         * gst/gststructure.h:
11835           add reserved padding
11836
11837 2004-03-15  Benjamin Otte  <otte@gnome.org>
11838
11839         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
11840           set the first parameter for select call correctly.
11841           (fixes #137230)
11842
11843 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11844
11845         * *.c,*.h: don't mix tabs and spaces
11846
11847 2004-03-15  Johan Dahlin  <johan@gnome.org>
11848
11849         * gst/schedulers/gstoptimalscheduler.c
11850         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
11851         crash on MPEG playback. My boolean arithmetic is a bit rusty.
11852
11853         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
11854         
11855 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11856
11857         * testsuite/Rules:
11858           fix gst-register rules
11859
11860 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11861
11862         * testsuite/Rules:
11863           use versioned gst-register
11864
11865 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11866
11867         * docs/libs/gstreamer-libs-sections.txt:
11868           remove </SUBSECTION>
11869         * gst/gstplugin.c:
11870         * gst/gstregistry.c: (gst_registry_add_plugin):
11871         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
11872         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
11873           add debugging and fix some comment blocks
11874
11875 2004-03-15  Johan Dahlin  <johan@gnome.org>
11876
11877         * *.h: Revert indent changes.
11878         
11879 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
11880
11881         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
11882           g_error_free the g_error
11883         * tools/gst-feedback-m.m:
11884           check for other versions of gstreamer
11885         * tools/gst-indent:
11886           use sh, not bash
11887
11888 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
11889
11890         * tools/gst-register.c: do not spill paths when registries are not
11891           writable, until we fix the "user running gst-register" case.
11892
11893 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11894
11895         * *.c, *.h: commit of gst-indent run on core
11896
11897 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11898
11899         * tools/gst-indent:
11900         * tools/Makefile.am:
11901           add our indentation style as a script
11902
11903 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11904
11905         * po/sr.po:
11906         * po/LINGUAS:
11907           added Serbian translation
11908
11909 2004-03-13  Benjamin Otte  <otte@gnome.org>
11910
11911         * gst/gstelement.c:
11912           add documentation note about gst_element_found_tags_for_pad not
11913           being usable in getfunctions. (see #137042)
11914
11915 2004-03-12  David Schleef  <ds@schleef.org>
11916
11917         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
11918         change API right now!  Readd gst_caps_is_simple() macro.
11919         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
11920         uninitialized variable.  I'd bet this caused crashes.
11921         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
11922
11923 2004-03-12  Johan Dahlin  <johan@gnome.org>
11924
11925         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
11926         * gst/gstcaps.h: Clean up
11927
11928         * gst/gst.c (init_post): call gst_caps_get_type() instead of
11929         _gst_caps_initalize()
11930
11931         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
11932         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
11933
11934         * gst/gststructure.c (gst_structure_get_type): Ditto
11935
11936         * gst/gststructure.h: Ditto
11937         
11938 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11939
11940         * gst/gstqueue.c: (gst_queue_init):
11941           Reset default max. values in queues. Reason is simply to avoid
11942           braindead use. If you want wider values, use the properties. The
11943           default is supposed to always work. Wider values would make this
11944           beast a memory hog by default (250 full-PAL RGB32 video frames?
11945           That's 440 MB! No thank you).
11946
11947 2004-03-10  David Schleef  <ds@schleef.org>
11948
11949         * tools/gst-run.c: (main):  Fix crash when no relevant tools
11950         were found.  (bug #136793)
11951
11952 2004-03-10  Johan Dahlin  <johan@gnome.org>
11953
11954         * gst/schedulers/gstoptimalscheduler.c
11955         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
11956         links to elements within the same group, so we can finally remove
11957         that annoying warning. Refactor the code a little bit
11958         (group_dec_links_for_element): Split out
11959
11960 2004-03-09  David Schleef  <ds@schleef.org>
11961
11962         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
11963         (bug #134863)
11964
11965 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11966
11967         * configure.ac: first bug fix due to major/minor bump
11968
11969 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11970
11971         * configure.ac: bump nano to 1
11972
11973 === release 0.7.6 ===
11974
11975 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11976
11977         * NEWS:
11978         * RELEASE:
11979         * configure.ac:
11980           releasing 0.7.6, "Almost"
11981         * po/fr.po:
11982         * po/nl.po:
11983         * tools/Makefile.am:
11984         * tools/gst-feedback-m.m:
11985           unversioned source
11986
11987 2004-03-09  Johan Dahlin  <johan@gnome.org>
11988
11989         Reviewed by: Thomas Vander Stichele
11990
11991         * gst/gstelement.c (gst_element_class_init): register second
11992         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
11993         language bindings can (de)marshall correctly.
11994
11995         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
11996
11997         * gst/gsterror.c (gst_g_error_get_type): New function
11998
11999         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
12000         with VOID:OBJECT,OBJECT,STRING 
12001
12002 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
12003
12004         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
12005         Free a leaked g_timer on early returns.
12006
12007 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12008
12009         * docs/pwg/advanced-types.xml:
12010           Add cinepak description.
12011
12012 2004-03-07  David Schleef  <ds@schleef.org>
12013
12014         * docs/random/mimetypes:  Added cinepak description
12015
12016 2004-03-07  Andy Wingo  <wingo@pobox.com>
12017
12018         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
12019
12020         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
12021         there are no links to other groups when a group is destroyed.
12022         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
12023         removed from a group, make sure the link count to elements linked
12024         to other pads is appropriately decremented. This really fixes
12025         #135672.
12026
12027         The 1.60->1.61 patch has been reapplied in light of this fix.
12028
12029         * gst/gstelement.c (gst_element_dispose): Really protect against
12030         multiple invocations this time.
12031
12032 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12033
12034         * docs/gst/gstreamer-sections.txt:
12035         * docs/gst/tmpl/gsttag.sgml:
12036           remove some deprecated functions, document some existing ones
12037         * gst/gsttag.c: (gst_tag_get_flag):
12038         * gst/gsttag.h:
12039           add accessor function
12040
12041 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12042
12043         * docs/gst/gstreamer-sections.txt:
12044         * docs/gst/tmpl/gsttag.sgml:
12045         * docs/gst/tmpl/gstxml.sgml:
12046         * gst/gsttag.c: (gst_tag_get_flag):
12047         * gst/gsttag.h:
12048
12049 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
12050
12051         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
12052         leak
12053
12054 2004-03-05  David Schleef  <ds@schleef.org>
12055
12056         * REQUIREMENTS: Add bison and flex.
12057         * configure.ac: Fix comment about bison.
12058         * docs/random/ds/0.9-suggested-changes: yer ma
12059         * tools/gst-inspect.c: (print_element_info):  Fix warning.
12060
12061 2004-03-05  Benjamin Otte  <otte@gnome.org>
12062
12063         * gst/gstelement.c: (gst_element_error_full):
12064           revert recent recursive state changing commit - messing with other
12065           elements' states is evil and should be done by apps only.
12066
12067 2004-03-05  Benjamin Otte  <otte@gnome.org>
12068
12069         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
12070           check for empty intersection instead of NULL caps
12071         (gst_element_get_compatible_pad_filtered):
12072           remove old workaround that is only a bug nowadays
12073
12074 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
12075
12076         * gst/gstelement.c: (gst_element_error_full):
12077           make elements try to recursively change state to PAUSED on all
12078           parents after an error to suppress ensuing warnings
12079         * gst/parse/grammar.y:
12080           make it check if it was able to sync the state, and throw an error
12081           if not, so stuff like
12082           oggdemux ! vorbisdec ! osssink gets caught
12083
12084 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
12085
12086         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
12087           it contains lib64; use AS_AC_EXPAND to handle it properly
12088
12089 2004-03-05  David Schleef  <ds@schleef.org>
12090
12091         * gst/gstcpuid_i386.s:  Remove unused code
12092         * libs/gst/getbits/getbits.c: (gst_getbits_init),
12093         (gst_getbits_newbuf): Remove MMX code
12094         * libs/gst/getbits/getbits.h: Remove MMX code
12095
12096 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
12097
12098         * debian/.cvsignore:
12099         * debian/README.Debian:
12100         * debian/changelog:
12101         * debian/control:
12102         * debian/control.in:
12103         * debian/copyright:
12104         * debian/gstreamer-core-libs-dev.files:
12105         * debian/gstreamer-core-libs.files:
12106         * debian/gstreamer-core.files:
12107         * debian/gstreamer-core.postinst:
12108         * debian/gstreamer-core.postrm:
12109         * debian/gstreamer-doc.files:
12110         * debian/gstreamer-doc.links:
12111         * debian/gstreamer-doc.lintian:
12112         * debian/gstreamer-runtime.files:
12113         * debian/gstreamer-runtime.manpages:
12114         * debian/gstreamer-runtime.postinst:
12115         * debian/gstreamer-runtime.postrm:
12116         * debian/gstreamer-tools.files:
12117         * debian/gstreamer-tools.manpages:
12118         * debian/libgstreamer-dev.files:
12119         * debian/libgstreamer0.4.1.files:
12120         * debian/libgstreamerVERSION.files:
12121         * debian/rules:
12122         Debian package info not maintained here.
12123
12124 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12125
12126         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
12127         * gst/gstbin.c: (gst_bin_class_init):
12128         * gst/gstelement.c: (gst_element_class_init):
12129         * gst/gstindex.c: (gst_index_class_init):
12130         * gst/gstobject.c: (gst_object_class_init),
12131         (gst_signal_object_class_init):
12132         * gst/gstpad.c: (gst_pad_template_class_init):
12133         * gst/gstregistry.c: (gst_registry_class_init):
12134         * gst/gsturi.c: (gst_uri_handler_base_init):
12135         * gst/gstxml.c: (gst_xml_class_init):
12136         * libs/gst/control/dparam.c: (gst_dparam_class_init):
12137         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
12138           make all signal names use dashes instead of underscore
12139
12140 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12141
12142         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
12143
12144 2004-03-03  Benjamin Otte  <otte@gnome.org>
12145
12146         * gst/schedulers/gstoptimalscheduler.c:
12147           revert last commit by Andy Wingo. It causes segfaults on unreffing
12148           in Rhythmbox. (see bug #135672)
12149
12150 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
12151
12152         * po/fr.po: fix typo
12153
12154 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
12155
12156         * tools/gst-inspect.c: (main): 
12157         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
12158
12159 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12160
12161         * configure.ac:
12162           get GLIB_ONLY and POPT flags for the nonversioned binaries
12163         * tools/Makefile.am:
12164           use them
12165
12166 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12167
12168         * gst/gst.c: (init_post):
12169           change so that GST_REGISTRY now is where the global registry gets
12170           saved, since that is where plugins now get attached to first, and
12171           spilled over to the user registry.  Note that in the case of using
12172           GST_REGISTRY env var, we don't want to affect any real registries
12173           beyond the one given by this var, and thus we don't set a user
12174           registry to spill to.  So make sure GST_REGISTRY is writable.
12175
12176 2004-03-01  David Schleef  <ds@schleef.org>
12177
12178         * AUTHORS:  Added some names.  Add yourself if you're missing.
12179
12180 2004-03-01  David Schleef  <ds@schleef.org>
12181
12182         * MAINTAINERS: Add
12183
12184 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
12185
12186         * configure.ac:
12187           remove whitespace
12188         * docs/gst/tmpl/gstbuffer.sgml:
12189         * docs/gst/tmpl/gstdata.sgml:
12190         * docs/gst/tmpl/gstreamer-unused.sgml:
12191         * docs/gst/tmpl/gstxml.sgml:
12192           doc update
12193         * docs/manuals.mak:
12194           add a FIXME
12195         * docs/pwg/intro-preface.xml:
12196         * docs/pwg/pwg.xml:
12197           remove GNOME
12198         * gst/gst.c: (init_post):
12199           try GST_PLUGIN_PATH paths for the _global_registry first
12200         * gst/gstelement.h:
12201           add the error message as well, otherwise (null) debug info doesn't
12202           make much sense
12203         * tools/gst-register.c: (main):
12204           spill paths to next registry if this registry is not writable
12205         * po/fr.po:
12206         * po/nl.po:
12207           translation updates
12208
12209 2004-03-01  Johan Dahlin  <johan@gnome.org>
12210
12211         * gst/gstbuffer.c (_gst_buffer_initialize): 
12212         * gst/gstdata.c (gst_data_get_type): 
12213         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
12214         instead of ref, since some applications that uses GBoxed
12215         routines depends on a function that actually returns a copy.
12216
12217 2004-02-27  Benjamin Otte  <otte@gnome.org>
12218
12219         * gst/gstbuffer.h:
12220           remove gst_buffer_free, use gst_data_unref
12221         * gst/gstdata.c: (gst_data_get_type):
12222           use refcounting in GstData GBoxed registration
12223         * gst/gstdata.h:
12224           remove gst_data_free, use gst_data_unref
12225
12226 2004-02-27  Johan Dahlin  <johan@gnome.org>
12227
12228         * gst/gstdata.c (gst_data_get_type): New function, register
12229         GstData as a GBoxed type.
12230
12231         * gst/gstdata.h (GST_TYPE_DATA): New macro
12232
12233 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
12234
12235         * Makefile.am:
12236         * gstreamer.spec.in:
12237           put back RELEASE
12238         * gst/Makefile.am:
12239           clean up non-disting of built files
12240         * testsuite/debug/commandline.c:
12241           test fix for option rename
12242
12243 2004-02-26  David Schleef  <ds@schleef.org>
12244
12245         * configure.ac:  We don't really need glib-2.3.  Also remove
12246         some unneeded checks for library functions.
12247         * gst/Makefile.am:  Instead, we need to not dist files created
12248         by glib-genmarshal.
12249
12250 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12251
12252         * configure.ac:
12253           bump glib required version to 2.3.0 for g_value_takes_boxed
12254
12255  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
12256
12257         * common/m4/gst-docs.m4
12258         change flavour text from enable to disable as enable is our default
12259         closes bug Bug 135304
12260
12261 === release 0.7.5 ===
12262  
12263  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12264  
12265         * NEWS:
12266           instate NEWS file
12267         * Makefile.am:
12268         * gstreamer.spec.in:
12269         * RELEASE:
12270           put back release
12271         * configure.ac:
12272         * docs/random/release:
12273           more updates
12274
12275 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12276
12277         * gst/gsttag.c: (_gst_tag_initialize):
12278         * po/fr.po:
12279         * po/nl.po:
12280           remove hyphen from codec tags
12281
12282 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12283
12284         * gst/parse/Makefile.am:
12285           fix dependency so that a make from a clean build works the first
12286           time
12287
12288 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12289
12290         * docs/random/release:
12291           update release strategy
12292         * po/fr.po:
12293           auto-update po file
12294         * po/nl.po:
12295           update dutch translation
12296
12297 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
12298
12299         * docs/manual/debugging.xml:
12300         fix manual for new debugging system
12301
12302 2004-02-25  Andy Wingo  <wingo@pobox.com>
12303
12304         * gst/gstpad.c (gst_pad_link_prepare): Re-add
12305         gst_pad_link_prepare. Please email the list with specific reasons
12306         for reverting.
12307
12308 2004-02-24  Andy Wingo  <wingo@pobox.com>
12309
12310         * gst/gstelement.c (gst_element_dispose): Protect against multiple
12311         invocations.
12312
12313         * gst/schedulers/gstoptimalscheduler.c:
12314         I added a mess of prototypes at the top of the file by way of
12315         documentation. Some of the operations on chains and groups were
12316         re-organized.
12317
12318         (create_group): Added a type argument so if the group is enabled,
12319         the setup_group_scheduler knows what to do.
12320         (group_elements): Added a type argument here, too, to be passed on
12321         to create_group.
12322         (group_element_set_enabled): If an unlinked PLAYING element is
12323         added to a bin, we have to create a new group to hold the element,
12324         and this function will be called before the group is added to the
12325         chain. Thus we have a valid case for group->chain==NULL. Instead
12326         of calling chain_group_set_enabled, just set the flag on the group
12327         (the chain's status will be set when the group is added to it).
12328         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
12329         Setup the group scheduler when the group is enabled, not
12330         specifically when an element goes PAUSED->PLAYING. This means
12331         PLAYING elements can be added, linked, and scheduled into a
12332         PLAYING pipeline, as was intended.
12333         (add_to_group): Don't ref the group twice. I don't know when this
12334         double-ref got in here. Removing it has the potential to cause
12335         segfaults if other parts of the scheduler are buggy. If you find
12336         that the scheduler is segfaulting for you, put in an extra ref
12337         here and see if that hacks over the underlying issue. Of course,
12338         then find out what code is unreffing a group it doesn't own...
12339         (create_group): Make the extra refcount floating, and remove it
12340         after adding the element. This means that...
12341         (unref_group): Destroy when the refcount reaches 0, not 1, like
12342         every other refcounted object in the known universe.
12343         (remove_from_group): When a group becomes empty, set it to be not
12344         active, and remove it from its chain. Don't unref it again,
12345         there's no floating reference any more.
12346         (destroy_group): We have to remove the group from the chain in
12347         remove_from_group (rather than here) to break refcounting cycles
12348         (the chain always has a ref on the group). So assert that
12349         group->chain==NULL.
12350         (ref_group_by_count): Removed, it was commented out anyway.
12351         (merge_chains): Use the remove_from_chain and add_to_chain
12352         primitives to do the reparenting, instead of rolling our own
12353         implementation.
12354         (add_to_chain): The first non-disabled group in the chain's group
12355         list will be the entry point for the chain. Because buffers can
12356         accumulate in loop elements' peer bufpens, we preferentially
12357         schedule loop groups before get groups to avoid unnecessary
12358         execution of get-based groups when the bufpens are already full.
12359         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
12360         (get_group_schedule_function): Ditto.
12361         (loop_group_schedule_function): Ditto.
12362         (gst_opt_scheduler_loop_wrapper): Ditto.
12363         (gst_opt_scheduler_iterate): Ditto.
12364
12365         I understand the opt scheduler now, yippee!
12366
12367         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
12368         (gst_pad_get_name, gst_pad_set_chain_function) 
12369         (gst_pad_set_get_function, gst_pad_set_event_function) 
12370         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
12371         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
12372         (gst_pad_set_query_function, gst_pad_get_query_types) 
12373         (gst_pad_get_query_types_default) 
12374         (gst_pad_set_internal_link_function) 
12375         (gst_pad_set_formats_function, gst_pad_set_link_function) 
12376         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
12377         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
12378         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
12379         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
12380         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
12381         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
12382         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
12383         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
12384         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
12385         (gst_pad_event_default_dispatch, gst_pad_event_default) 
12386         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
12387         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
12388         (gst_pad_get_formats_default, gst_pad_get_formats): Better
12389         argument checks, and some doc fixes.
12390
12391         (gst_pad_custom_new_from_template): Um, does anyone
12392         use these functions? Actually make a custom pad instead of a
12393         normal one.
12394         (gst_pad_try_set_caps): Transpose some checks.
12395         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
12396         the pad is in negotiation.
12397         (gst_pad_try_relink_filtered): Use pad_link_prepare.
12398         
12399         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
12400
12401         * gst/gstelement.h: 
12402         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
12403         on the list.
12404
12405 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
12406
12407         * gst/gstbin.c: (gst_bin_add):
12408           add error for not being able to add elements
12409
12410 2004-02-22  Julien MOUTTE <julien@moutte.net>
12411
12412         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
12413         audio-codec and video-codec.
12414
12415 2004-02-22  Benjamin Otte  <otte@gnome.org>
12416
12417         reported by: Padraig O'Briain <padraig.obriain@sun.com>
12418
12419         * autogen.sh:
12420           replace test -e with test -x for mkinstalldirs to be more portable.
12421           (fixes #134816)
12422
12423 2004-02-22  Benjamin Otte  <otte@gnome.org>
12424
12425         * gst/gstpad.c:
12426           revert last patch from Andy, it makes gst_pad_can_link_filtered much
12427           too noisy
12428         * gst/gsttag.c: (_gst_tag_initialize):
12429         * gst/gsttag.h:
12430           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
12431         * libs/gst/control/dparam.c: (gst_dparam_attach):
12432         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
12433           check that types for attached dparams match
12434
12435 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
12436
12437         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
12438         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12439         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
12440           fix errors
12441
12442 2004-02-20  Andy Wingo  <wingo@pobox.com>
12443
12444         * gst/gstbin.c:
12445         * gst/gstbuffer.c:
12446         * gst/gstplugin.c:
12447         * gst/registries/gstxmlregistry.c: 
12448         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
12449
12450         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
12451         (gst_element_add_pad): DEBUG->INFO, some fixes.
12452         (gst_element_get_compatible_pad_template): Just see if the
12453         templates' caps intersect, not if one is a strict subset of the
12454         other. This conforms more to what gst_pad_link_intersect() does.
12455         (gst_element_class_add_pad_template): Don't memcpy the pad
12456         template, just ref it.
12457         (gst_element_get_compatible_pad_filtered): Clean up debug messages
12458
12459         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
12460         (gst_pad_link_filtered): Debug changes.
12461         (gst_pad_link_prepare): New function, consolidated from
12462         can_link_filtered and link_filtered.
12463
12464         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
12465         look more like that of the functions in gstelement.c
12466
12467         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
12468         object, and return the empty string if object is NULL.
12469
12470         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
12471         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
12472         LOG, not DEBUG. We still get flex info on debug.
12473
12474         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
12475         debug string more verbose.
12476         (plugin_times_older_than): DEBUG->LOG.
12477
12478 2004-02-20  Julien MOUTTE <julien@moutte.net>
12479
12480         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
12481         will emit found_tag for each stream they demux with the codec.
12482
12483 2004-02-20  Benjamin Otte  <otte@gnome.org>
12484
12485         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
12486           copy navigation event correctly. Check freeing tag lists. 
12487         * gst/gstthread.c: (gst_thread_change_state):
12488           don't abort() on state changing mess - it might happen because of
12489           bugs.
12490         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
12491           use boxed functions
12492         * gst/gstvalue.h:
12493           fix GST_VALUE_HOLDS_CAPS
12494
12495 2004-02-19  David Schleef  <ds@schleef.org>
12496
12497         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
12498         and use it for GST_FUNCTION.  (bug #134750)
12499
12500 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12501
12502         * po/fr.po:
12503         * po/nl.po:
12504           updating translations
12505
12506 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12507
12508         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
12509
12510 2004-02-18  kost@imn.htwk-leipzig.de
12511
12512         reviewed by: David Schleef  <ds@schleef.org>
12513
12514         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
12515         for libgstcontrol.
12516
12517 2004-02-18  David Schleef  <ds@schleef.org>
12518
12519         * libs/gst/control/dparam.c: (gst_dparam_class_init):
12520         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
12521         (gst_dpsmooth_new): Additional fixes to get double dparams working.
12522         * tools/gst-inspect.c: (print_element_info): Support dumping of
12523         double dparam information.
12524
12525 2004-02-17  David Schleef  <ds@schleef.org>
12526
12527         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
12528         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
12529         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
12530         Use GST_TYPE_CAPS in signal prototype.
12531         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
12532         Convert GST_TYPE_CAPS to boxed.
12533         * gst/gstelement.c: (gst_element_class_init):
12534         Use GST_TYPE_TAG_LIST in signal prototype.
12535         * gst/gstindex.c: (gst_index_class_init):
12536         * gst/gstindex.h:
12537         Add GST_TYPE_INDEX_ENTRY type.
12538         * gst/gstmarshal.list:
12539         Add necessary marshal types.
12540         * gst/gstpad.c: (gst_real_pad_class_init),
12541         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
12542         (gst_pad_recover_caps_error):
12543         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
12544         * gst/gststructure.c: (_gst_structure_initialize),
12545         (gst_structure_copy), (_gst_structure_copy_conditional):
12546         * gst/gststructure.h:
12547         Convert GST_TYPE_STRUCTURE to boxed.
12548         * gst/gsttag.c: (gst_tag_list_get_type):
12549         * gst/gsttag.h:
12550         Add GST_TYPE_TAG_LIST type.
12551
12552 2004-02-17  Julien MOUTTE  <julien@moutte.net>
12553
12554         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
12555         to what we agreed with david.
12556         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
12557
12558 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
12559
12560         * po/nl.po: update translation
12561
12562 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
12563
12564         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
12565           throw an error if spider is trying to play a mime type there is
12566           no decoder for
12567         * po/POTFILES.in:
12568           add gst/autoplug/gstspider.c for translation
12569
12570 2004-02-17  Julien MOUTTE  <julien@moutte.net>
12571
12572         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
12573         silently when the pad is negotiating.
12574
12575 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
12576
12577         * docs/faq/Makefile.am:
12578           add script to run gstreamer uninstalled 
12579         * docs/faq/faq.xml:
12580         * docs/faq/developing.xml:
12581         * docs/faq/gst-uninstalled:
12582           extract script to run gstreamer uninstalled
12583         * docs/manuals.mak:
12584           add EXTRA_SOURCES variable for Makefile.am's to set to
12585           use additional SOURCE files for the doc build
12586
12587 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
12588
12589         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
12590
12591 2004-02-15  Julien MOUTTE  <julien@moutte.net>
12592
12593         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
12594         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
12595         an error was thrown by osssink. Basically a state change failure for
12596         an element in a different scheduling group was considered as
12597         successful, which means that caps nego was going on and weird stuff
12598         happened. Like I wrote in the comment there, if someone wants to
12599         revert that please drop me a mail explaining why because I really see
12600         no point in keeping that broken behaviour there.
12601         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
12602         be empty, we then return NULL which will trigger a nice error when 
12603         pulling from the pad.
12604
12605 2004-02-13  David Schleef  <ds@schleef.org>
12606
12607         * libs/gst/control/dparam.c: (gst_dparam_class_init),
12608         (gst_dparam_get_property), (gst_dparam_set_property),
12609         (gst_dparam_do_update_default):
12610         * libs/gst/control/dparam.h:
12611         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
12612         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
12613         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
12614         (gst_dpsmooth_do_update_double):
12615         * libs/gst/control/dparam_smooth.h:
12616         * libs/gst/control/dparammanager.c:
12617         (gst_dpman_inline_direct_update):
12618         Add support for double dparams.
12619
12620 2004-02-13  David Schleef  <ds@schleef.org>
12621
12622         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
12623         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
12624
12625 2004-02-13  Mattias Wadman  <mattias@sudac.org>
12626
12627         reviewed by: David Schleef  <ds@schleef.org>
12628
12629         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
12630         (gst_fdsrc_init), (gst_fdsrc_set_property),
12631         (gst_fdsrc_get_property), (gst_fdsrc_get):
12632         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
12633         and sends an EOS event if file descriptor reading times out.
12634
12635 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12636
12637         * configure.ac:
12638           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
12639
12640 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12641
12642         * configure.ac: pass required libxml version as argument
12643         (bug reported by Christophe Fergeau)
12644
12645 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12646   
12647         * docs/gst/gstreamer-docs.sgml:
12648         * docs/gst/tmpl/gstxml.sgml:
12649         * docs/libs/gstreamer-libs-docs.sgml:
12650           version API docs
12651
12652 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12653
12654         * gst/gstinfo.c:
12655         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
12656         (gst_registry_pool_feature_filter):
12657         * gst/gstthread.c: (gst_thread_class_init):
12658         * gst/gstvalue.c:
12659           add includes exposed by building without libxml
12660         * gst/indexers/Makefile.am:
12661           do not build fileindex when LOADSAVE disabled; we should have
12662           a better libxml check later since fileindex depends on xml, not
12663           LOADSAVE or REGISTRY
12664         * libs/gst/control/Makefile.am:
12665           link with m
12666         * tools/Makefile.am:
12667           fix wrong source code for gst-xmlinspect
12668
12669 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12670
12671         * configure.ac:
12672           fix gcov help output
12673           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
12674         * docs/random/release:
12675           some updated releasing notes
12676         * gstreamer.spec.in:
12677           more updates
12678
12679 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12680
12681         * docs/faq/faq.xml:
12682         * docs/manual/manual.xml:
12683         * docs/pwg/pwg.xml:
12684         * docs/pwg/titlepage.xml:
12685           put version in documentation
12686
12687 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12688
12689         * tools/Makefile.am: fix man page installation
12690
12691 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12692
12693         * configure.ac:
12694           don't check for libxml when load/save and registry disabled (#105844)
12695         * gstreamer.spec.in:
12696           sync with fedora candidate spec
12697
12698 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12699
12700         * po/fr.po:
12701         * po/nl.po:
12702           replace multidisksrc with multifilesrc
12703
12704 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12705
12706         * po/POTFILES.in:
12707           update to multidisksrc => multifilesrc file renaming (#134145)
12708
12709 2004-02-11  David Schleef  <ds@schleef.org>
12710
12711         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
12712         * docs/gst/tmpl/gstpadtemplate.sgml: same
12713         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
12714         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
12715         fixing dance.
12716         * gst/gstutils.c: Remove disabled code that uses GstProps.
12717         * gst/registries/gstxmlregistry.h: same
12718         * docs/random/ds/0.9-suggested-changes: random notes
12719
12720 2004-02-11  kost@imn.htwk-leipzig.de
12721
12722         reviewed by: David Schleef  <ds@schleef.org>
12723
12724         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
12725         initialisation of clock (bug #134128)
12726
12727 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12728
12729         * configure.ac:
12730         * gst/elements/Makefile.am:
12731         * gst/elements/gstelements.c:
12732         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
12733         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
12734         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
12735         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
12736         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
12737         * gst/elements/gstmultifilesrc.h:
12738           rename multidisksrc to multifilesrc (part of #122200)
12739
12740 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12741
12742         * docs/manuals.mak:
12743           fix automake complaints
12744         * gst-element-check.m4:
12745           fix unquotedness
12746
12747 2004-02-11  David Schleef  <ds@schleef.org>
12748
12749         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
12750         * gst/gstatomic_impl.h: Disable sparc implementation.
12751
12752 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12753
12754         * gst-element-check.m4:
12755           fix underquoted macros as reported by automake 1.8.x (#133800)
12756         * configure.ac:
12757           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
12758           by autopoint (fixes #132996)
12759
12760 2004-02-10  Andy Wingo  <wingo@pobox.com>
12761
12762         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
12763         way to do inheritance.
12764         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
12765         (gst_pad_get_query_types, gst_pad_get_query_types_default):
12766         Routine docs.
12767         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
12768         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
12769         doc.
12770         (gst_pad_unlink, gst_pad_is_linked): Docs.
12771         (gst_pad_renegotiate): A brief description of capsnego.
12772         (gst_pad_try_set_caps): Document.
12773         (gst_pad_try_set_caps_nonfixed): Document.
12774         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
12775         (gst_pad_set_parent): Deprecated (although not out of the API).
12776         (gst_pad_get_parent): Deprecated, although many plugins use this.
12777         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
12778         are private and will go away in 0.9.
12779         (gst_pad_perform_negotiate): Doc.
12780         (gst_pad_link_unnegotiate): I think this is meant to be static.
12781         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
12782         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
12783         (gst_pad_get_peer): Doc updates.
12784         (gst_pad_caps_change_notify): Doc.
12785         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
12786         (gst_ghost_pad_new): Doc fixes.
12787
12788         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
12789         (gst_object_check_uniqueness): 
12790
12791         * gst/gstelement.c (gst_element_add_pad) 
12792         (gst_element_add_ghost_pad, gst_element_remove_pad) 
12793         (gst_element_remove_ghost_pad, gst_element_get_pad) 
12794         (gst_element_get_static_pad, gst_element_get_pad_list) 
12795         (gst_element_class_get_pad_template_list) 
12796         (gst_element_class_get_pad_template): Work on the docs.
12797         (gst_element_get_pad_template_list): Uses the class method.
12798         (gst_element_get_compatible_pad_template): Docs, and consolidate
12799         some test conditions. 
12800         (gst_element_get_pad_from_template): New static function.
12801         (gst_element_request_compatible_pad): Docs, and work with
12802         non-request compatible templates. 
12803         (gst_element_get_compatible_pad_filtered): Docs and remove
12804         redundant checks.
12805         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
12806         (gst_element_link_filtered, gst_element_link_many) 
12807         (gst_element_link, gst_element_link_pads) 
12808         (gst_element_unlink_many): Docs.
12809
12810 2004-02-05  Andy Wingo  <wingo@pobox.com>
12811
12812         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
12813         s/pointer/boxed/.
12814
12815         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
12816
12817         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
12818         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
12819         with the type=GST_TYPE_CAPS. This allows language bindings to know
12820         what kind of data they're dealing with.
12821
12822         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
12823         to NULL when g_value_init is called. GstCaps, which rolls its own
12824         type implementation, now does the same instead of allocating empty
12825         caps.
12826         (_gst_caps_initialize, _gst_caps_collect_value,
12827         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
12828         table methods. This allows G_VALUE_COLLECT to work.
12829
12830 2004-02-05  Andy Wingo  <wingo@pobox.com>
12831
12832         * configure.ac:
12833         * testsuite/Makefile.am (SUBDIRS): 
12834         * testsuite/ghostpads/Makefile.am: 
12835         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
12836
12837         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
12838         These two routines are the only ones that set
12839         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
12840         pad template. They should be made static, depending on ABI needs.
12841         (gst_real_pad_dispose): Handle the case of ghost pads without a
12842         parent. Assert after dealing with ghost pads that the ghost pad
12843         list is empty.
12844         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
12845         set after creation.
12846         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
12847         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
12848         functions. set_property will call add_ghost_pad/remove_ghost_pad
12849         as appropriate.
12850         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
12851
12852         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
12853         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
12854         (gst_element_remove_pad): Handle ghost pads as well.
12855         (gst_element_remove_ghost_pad): Deprecated (could be removed,
12856         depending on API-stability needs).
12857
12858 2004-02-05  Andy Wingo  <wingo@pobox.com>
12859
12860         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
12861         of course they're const
12862
12863 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12864
12865         * tools/Makefile.am:
12866         * tools/gst-feedback:
12867         * tools/gst-feedback-0.7:
12868           make gst-feedback versioned too for consistency
12869
12870 2004-02-11  David Schleef  <ds@schleef.org>
12871
12872         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12873         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
12874
12875 2004-02-10  Julien MOUTTE <julien@moutte.net>
12876
12877         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
12878         the structure does not contain a valid tag list. Adding a safety check
12879         to remove a noisy warning in that case.
12880
12881 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
12882
12883         * gst/gst.c: fix name to be in line with others
12884
12885 2004-02-09  Julien MOUTTE <julien@moutte.net>
12886
12887         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
12888         not shout that loud when len is 0. Just return 0 silently.
12889
12890 2004-02-09  Julien MOUTTE  <julien@moutte.net>
12891
12892         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
12893         because data_unref has one and I prefer the debug to be symetric.
12894         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
12895         were refed when added to the queue and unrefed only once when the queue
12896         was flushed. Now the flush handler unref the buffers two times : first
12897         unref for the ref added when pushing in the queue's tail and second
12898         unref to destroy the flushed buffer.
12899
12900 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
12901
12902         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
12903
12904 2004-02-06  David Schleef  <ds@schleef.org>
12905
12906         * docs/random/ds/0.9-suggested-changes: Random ramblings
12907         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
12908         to int before printing.
12909         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
12910         * gst/parse/parse.l: same.  See bug #129600
12911
12912 2004-02-06  David Schleef  <ds@schleef.org>
12913
12914         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
12915         (gst_index_add_entry), (gst_index_add_associationv),
12916         (gst_index_add_association): Add gst_index_add_associationv()
12917         and clean up gst_index_add_association(). #127133
12918
12919 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12920
12921         * autogen.sh: check out common with right tag if CVS/Tag exists
12922
12923 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12924
12925         * testsuite/ghostpads/ghostpads.c: (main):
12926           fix testsuite from segfaulting
12927
12928 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12929
12930         * Makefile.am: add release target
12931         * configure.ac: bump nano to 1
12932         * docs/random/release:
12933
12934 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12935
12936         * gst/gstcaps.h:
12937         * gst/gstelement.c: (gst_element_base_class_init),
12938         (gst_element_class_set_details), (gst_element_clear_pad_caps):
12939         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12940         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
12941         (gst_real_pad_dispose):
12942         * gst/gststructure.c: (gst_structure_free),
12943         (gst_structure_from_string):
12944           put reverted patch back in
12945         * gst/gstelement.c: (gst_element_remove_pad):
12946           free explicit caps if they're set
12947         * gst/gstpad.c: (_gst_pad_default_fixate_func):
12948           copy the structure when fixating
12949
12950 2004-02-05  David Schleef  <ds@schleef.org>
12951
12952         * gst/gstmarshal.list:
12953         * gst/gstpad.c: (gst_real_pad_class_init),
12954         (_gst_real_pad_fixate_accumulator):
12955         Revert POINTER->BOXED change in signal marshaller.
12956
12957 === release 0.7.4 ===
12958                                                                                 
12959 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12960                                                                                 
12961         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
12962         * configure.ac: changed for release
12963
12964 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
12965
12966         * gstreamer.spec.in:
12967           bump required version of gtk-doc
12968
12969 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
12970
12971         * gst/gstcaps.h:
12972         * gst/gstelement.c: (gst_element_base_class_init),
12973         (gst_element_class_set_details), (gst_element_clear_pad_caps):
12974         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12975         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
12976         (gst_real_pad_dispose):
12977         * gst/gststructure.c: (gst_structure_free),
12978         (gst_structure_from_string):
12979           revert patch that breaks applications, reapply after release
12980           to get this fixed properly
12981
12982 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12983
12984         * gst/gsttag.c: (_gst_tag_initialize):
12985         * gst/gsttag.h:
12986           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
12987
12988 2004-02-04  David Schleef  <ds@schleef.org>
12989
12990         Fix some memleaks:
12991         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
12992         (gst_spider_plug_from_srcpad):
12993         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
12994
12995 2004-02-04  David Schleef  <ds@schleef.org>
12996
12997         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
12998         a GstRealPad before accessing its structure members.
12999
13000 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13001
13002         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
13003         (gst_clock_get_speed):
13004         * gst/gstclock.h:
13005           reset padding, remove unused fields
13006
13007 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13008
13009         * gst/autoplug/gstspideridentity.c:
13010         (gst_spider_identity_sink_loop_type_finding):
13011           use get_allowed_caps, not get_caps (fixes #132519)
13012         * gst/elements/gsttypefind.c: (stop_typefinding):
13013           use correct order when sending buffers and seeking
13014
13015 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
13016
13017         * configure.ac:
13018         * gst/gstelement.h:
13019         * gst/gstpad.h:
13020         * gst/gstqueue.h:
13021           upgrade libtool CURRENT, reset padding
13022
13023 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
13024
13025         * configure.ac:
13026           bump to prerelease
13027           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
13028
13029 2004-02-04  David Schleef  <ds@schleef.org>
13030
13031         * docs/random/ds/0.9-suggested-changes: random notes
13032         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
13033         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
13034         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
13035         expansion.
13036         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
13037         (gst_filesink_get_query_types): same
13038         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
13039         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
13040         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
13041         to use new GST_PTR_FORMAT.
13042         * gst/gstelement.h: deprecate function factory macros
13043         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
13044         These are our last variadic macros that can't be replaced with
13045         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
13046         attempting to deprecate gst_element_clock_wait().
13047         * gst/gstevent.h: same
13048         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
13049         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
13050         * gst/gstpad.h: deprecate function factory macros similar to above.
13051
13052 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
13053
13054         * configure.ac:
13055         * tools/Makefile.am:
13056         * tools/gst-run.c: (popt_callback), (hash_print_key),
13057         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
13058         (get_candidates), (main):
13059           add new source file to generate non-versioned wrapper binaries
13060           for our tools.
13061
13062 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13063
13064         * gst/gstevent.c: (_gst_event_free):
13065           actually break; inside the switch statement
13066         * gst/parse/grammar.y:
13067           fix memleak where GValues weren't unset
13068
13069 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13070
13071         * gst/gststructure.c: (gst_structure_from_string):
13072           fix huge memleak
13073         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
13074         (new_entry), (gst_type_find_element_chain):
13075         * gst/gstelement.c: (gst_element_base_class_init),
13076         (gst_element_class_set_details):
13077         * gst/gstpad.c: (gst_pad_can_link_filtered):
13078           fix smaller memleaks
13079         * gst/gstpad.c: (gst_real_pad_dispose):
13080           check that explicit caps are gone
13081         * gst/gststructure.c: (gst_structure_free):
13082           actually free the structure
13083         * gst/gstelement.c: (gst_element_clear_pad_caps):
13084           unset explicit caps
13085
13086 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
13087
13088         * tools/Makefile.am:
13089           use AM_CFLAGS since all the CFLAGS are the same
13090           use AM_LDFAGS
13091
13092 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
13093
13094         * docs/manual/gnome.xml:
13095           expand example a little
13096         * gst/gst.c: (gst_init_with_popt_table),
13097         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
13098           make sure popt option displays are done with right textdomain
13099           use GstPoptOption type
13100         * gst/gst.h:
13101           create GstPoptOption type
13102
13103 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
13104
13105         * gst/gsterror.c: (_gst_stream_errors_init):
13106         * gst/gsterror.h:
13107           adding error type for no codec
13108         * po/POTFILES.in:
13109           add gst-inspect
13110         * po/nl.po:
13111           update dutch translation
13112         * tools/gst-inspect.c: (print_element_list), (main):
13113           do proper internationalization
13114         * tools/gst-launch.c: (idle_func):
13115           remove commented out function call
13116
13117 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
13118
13119         * docs/README:
13120           add some error fixing notes
13121         * docs/gst/gstreamer-sections.txt:
13122           remove double entries
13123         * docs/gst/tmpl/gstbin.sgml:
13124         * docs/gst/tmpl/gstclock.sgml:
13125           remove override
13126         * docs/gst/tmpl/gstelement.sgml:
13127         * docs/gst/tmpl/gstindex.sgml:
13128         * docs/gst/tmpl/gstobject.sgml:
13129         * docs/gst/tmpl/gstpadtemplate.sgml:
13130         * docs/gst/tmpl/gstreamer-unused.sgml:
13131         * docs/gst/tmpl/gsttag.sgml:
13132         * docs/gst/tmpl/gstthread.sgml:
13133         * docs/gst/tmpl/gstxml.sgml:
13134         * gst/gsttag.h:
13135           sync header prototypes with c decls
13136         * gst/gsttaginterface.c:
13137           fix doc headers
13138
13139 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13140
13141         * gst/parse/Makefile.am:
13142         * gst/gstobject.h:
13143           get rid of gstmarshal.h dependency. It's not needed.
13144         * gst/gst.h:
13145         * gst/elements/gstfakesink.c:
13146         * gst/elements/gstfakesrc.c:
13147         * gst/elements/gstidentity.c:
13148         * gst/gstbin.c:
13149         * gst/gstelement.c:
13150         * gst/gstindex.c:
13151         * gst/gstobject.c:
13152         * gst/gstpad.c:
13153         * gst/gstthread.c:
13154         * gst/gstxml.c:
13155         * libs/gst/control/dparam.c:
13156         * libs/gst/control/dparammanager.c:
13157           include gstmarshal.h.
13158         Fixes #132045
13159
13160 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13161
13162         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
13163         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
13164         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
13165         * gst/elements/gstfilesrc.h:
13166           don't ref the filesrc when creating mmaped buffers. Don't keep a
13167           list of not-yet-destroyed buffers.
13168         * gst/gstbuffer.h:
13169           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
13170
13171 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
13172
13173         * gst/gst.c: (init_pre):
13174           remove textdomain
13175
13176 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13177
13178         * docs/pwg/advanced-events.xml:
13179         * docs/pwg/advanced-scheduling.xml:
13180         * docs/pwg/intro-basics.xml:
13181         * docs/pwg/other-manager.xml:
13182         * docs/pwg/other-nton.xml:
13183         * docs/pwg/other-ntoone.xml:
13184         * docs/pwg/other-oneton.xml:
13185         * docs/pwg/pwg.xml:
13186           All sort of documentation... Forgot what. Point is that I want this
13187           in before I leave. The 'other-*' will be the last section and will
13188           explain issues specific to these type of elements.
13189
13190 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13191
13192         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
13193         (gst_filesrc_get_read):
13194           set all the values on buffers that we can
13195
13196 2004-02-02  David Schleef  <ds@schleef.org>
13197
13198         Change usage of isblah() to g_ascii_isblah() to be more locale
13199         independent.  (#133076)
13200         * gst/gsturi.c: (gst_uri_protocol_check_internal):
13201         * gst/gstutils.c:
13202         * gst/parse/parse.l:
13203
13204 2004-02-02  Jon Trowbridge  <trow@gnu.org>
13205
13206         reviewed by: David Schleef  <ds@schleef.org>
13207
13208         Fix memory leaks:
13209         * gst/gstcaps.c: (gst_caps_to_string):
13210         * gst/registries/gstxmlregistry.c:
13211         (gst_xml_registry_add_path_list_func),
13212         (gst_xml_registry_parse_padtemplate):
13213
13214 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
13215
13216         * gst/gstelement.c: (gst_element_default_error):
13217           suffix error messages with period
13218
13219 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
13220
13221         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
13222         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13223         * gst/gsterror.c: (gst_error_get_message):
13224           Suffix with dots
13225         * po/fr.po:
13226         * po/nl.po:
13227           Update translation files
13228
13229 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
13230
13231         * gst/autoplug/gstspideridentity.c:
13232         (gst_spider_identity_sink_loop_type_finding):
13233         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
13234         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
13235         (gst_filesink_close_file), (gst_filesink_handle_event),
13236         (gst_filesink_chain):
13237         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
13238         (gst_filesrc_get_read), (gst_filesrc_open_file):
13239         * gst/elements/gstidentity.c: (gst_identity_chain):
13240         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13241         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13242         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13243         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
13244         * gst/gsterror.c: (_gst_core_errors_init),
13245         (_gst_library_errors_init), (_gst_resource_errors_init),
13246         (_gst_stream_errors_init), (gst_error_get_message):
13247         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13248         (gst_pad_recover_caps_error), (gst_pad_pull):
13249         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
13250         * gst/schedulers/gstbasicscheduler.c:
13251         (gst_basic_scheduler_chainhandler_proxy),
13252         (gst_basic_scheduler_gethandler_proxy),
13253         (gst_basic_scheduler_cothreaded_chain):
13254           Suffix error messages with period.
13255           Use (NULL) instead of NULL
13256
13257 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
13258
13259         * docs/gst/tmpl/gstelement.sgml:
13260         * docs/gst/tmpl/gstxml.sgml:
13261         * gst/gstelement.c: (gst_element_error_full):
13262           add element path to error
13263
13264 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13265
13266         * docs/random/mimetypes:
13267           update raw int/float info
13268         * gst/gsttag.c: (_gst_tag_initialize):
13269         * gst/gsttag.h:
13270           add GST_TAG_ENCODER
13271
13272 2004-01-30  David Schleef  <ds@schleef.org>
13273
13274         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
13275           missing (#132991)
13276
13277 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
13278
13279         reviewed by Benjamin Otte 
13280           parts of the patch submitted in bug #113913
13281
13282         * configure.ac:
13283           use AC_C_INLINE. Use = instead of == with test
13284         * examples/plugins/example.c:
13285         * gst/autoplug/gstspideridentity.c:
13286         * gst/elements/gstfdsrc.c:
13287         * gst/elements/gstfilesrc.c:
13288         * gst/elements/gstidentity.c:
13289         * gst/elements/gstmultidisksrc.c:
13290         * gst/elements/gststatistics.c:
13291         * gst/gstelement.c:
13292         * gst/gstobject.c:
13293         * gst/gstpad.c:
13294         * gst/gstpipeline.c:
13295         * gst/gstthread.c:
13296           don't end enums with a comma
13297         * gst/gstindex.c: (gst_index_compare_func):
13298           do explicit casting to gint
13299         * gst/gsttrace.c: (gst_trace_text_flush):
13300           #define strsize as a macro
13301
13302 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
13303
13304         * docs/README:
13305         * docs/gst/gstreamer-docs.sgml:
13306         * docs/gst/gstreamer-sections.txt:
13307         * docs/gst/tmpl/gstelement.sgml:
13308         * docs/gst/tmpl/gsterror.sgml:
13309         * docs/gst/tmpl/gstinterface.sgml:
13310         * docs/gst/tmpl/gstreamer-unused.sgml:
13311         * docs/gst/tmpl/gststructure.sgml:
13312         * docs/gst/tmpl/gsttag.sgml:
13313         * docs/gst/tmpl/gsttaginterface.sgml:
13314         * docs/gst/tmpl/gstvalue.sgml:
13315         make sure all API ends up in the built docs
13316         * gst/gstinterface.c:
13317         * gst/gststructure.c: (gst_structure_id_set_value),
13318         (gst_structure_set_value), (gst_structure_id_get_value):
13319         * gst/gststructure.h:
13320         * gst/gstvalue.h:
13321         sync .h with .c declarations
13322
13323 2004-01-30  Julien Moutte  <julien@moutte.net>
13324
13325         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
13326         Ronald will fix riffread.
13327
13328 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13329
13330         * docs/pwg/advanced-interfaces.xml:
13331           Added tuner interface docs.
13332
13333 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13334
13335         * docs/random/mimetypes:
13336           correct Theora information
13337         * gst/gstelement.h:
13338           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
13339
13340 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
13341
13342         * gst/gstelement.c: (gst_element_error_full):
13343         * gst/gstelement.h:
13344           GST_ELEMENT_ERROR in enum -> _IN_ERROR
13345
13346 2004-01-29  Julien MOUTTE  <julien@moutte.net>
13347
13348         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
13349         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
13350         again and even before DISCONT.
13351         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
13352         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
13353         bytestream so that it's not stopping to fill the bytestream if events
13354         different than EOS or DISCONT are received. Instead it process them so
13355         that they go downstream.
13356
13357 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
13358
13359         * docs/gst/tmpl/gstelement.sgml:
13360         * docs/gst/tmpl/gstreamer-unused.sgml:
13361         * docs/gst/tmpl/gstxml.sgml:
13362         * gst/autoplug/gstspideridentity.c:
13363         (gst_spider_identity_sink_loop_type_finding):
13364         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
13365         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
13366         (gst_filesink_close_file), (gst_filesink_handle_event),
13367         (gst_filesink_chain):
13368         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
13369         (gst_filesrc_get_read), (gst_filesrc_open_file):
13370         * gst/elements/gstidentity.c: (gst_identity_chain):
13371         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13372         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13373         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13374         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
13375         * gst/gstelement.h:
13376         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13377         (gst_pad_recover_caps_error), (gst_pad_pull):
13378         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
13379         * gst/schedulers/gstbasicscheduler.c:
13380         (gst_basic_scheduler_chainhandler_proxy),
13381         (gst_basic_scheduler_gethandler_proxy),
13382         (gst_basic_scheduler_cothreaded_chain):
13383           gst_element_error -> GST_ELEMENT_ERROR
13384
13385 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
13386
13387         * docs/Makefile.am:
13388         * docs/gst/tmpl/gstelement.sgml:
13389         * docs/gst/tmpl/gstxml.sgml:
13390         * docs/manuals.mak:
13391         * docs/pwg/advanced-request.xml:
13392         * docs/pwg/advanced-scheduling.xml:
13393         * docs/pwg/advanced-tagging.xml:
13394           fix non-validating docbook using CDATA
13395           make sure make check-local gets run first to check if it validates
13396
13397 2004-01-29  Julien MOUTTE <julien@moutte.net>
13398
13399         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
13400         handling (up and downstream).
13401         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
13402         my_filter thing.
13403
13404 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13405
13406         * docs/pwg/advanced-tagging.xml:
13407           Add docs about tag writing.
13408
13409 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13410
13411         * docs/pwg/advanced-tagging.xml:
13412           Add a part about tag reading and application signalling... Tag
13413           writing still needs to be documented.
13414         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
13415           We can set file locations in READY, too.
13416
13417 2004-01-29  Julien MOUTTE <julien@moutte.net>
13418
13419         * docs/random/ds/element-checklist: Adding some notes about src
13420         events.
13421
13422 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13423
13424         * docs/random/mimetypes:
13425           Update docs to point to correct elements for various mimetypes, and
13426           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
13427           <stephane.loeuillet@tiscali.fr>.
13428
13429 2004-01-28  David Schleef  <ds@schleef.org>
13430
13431         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
13432
13433 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13434
13435         * docs/random/mimetypes:
13436           update docs for audio/x-raw-float. Add "buffer-frames=0 means
13437           undefined"
13438         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
13439           make it only work in NULL.
13440         * gst/gstcaps.c:
13441           don't posion NULL caps
13442         * gst/gstelement.c: (gst_element_set_time):
13443           add debugging statement
13444         * gst/gstelement.c: (gst_element_emit_found_tag),
13445         (gst_element_found_tag_func), (gst_element_found_tags):
13446         * gst/gstelement.h:
13447           These functions take const taglists
13448         * gst/gstpad.c: (gst_pad_proxy_getcaps):
13449           fix memleak
13450         * gst/gstpad.c: (gst_pad_event_default):
13451           make more effort on handling discont and clocks, g_warn if everything
13452           fails
13453         * gst/gststructure.c: (gst_structure_remove_fields),
13454         (gst_structure_remove_fields_valist):
13455         * gst/gststructure.h:
13456           add gst_structure_remove_fields(_valist)
13457         * gst/gsttag.c:
13458           fix doc glitch
13459
13460 2004-01-28  David Schleef  <ds@schleef.org>
13461
13462         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
13463         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
13464         Fix memory leakage of gst_caps_to_string().
13465
13466         Use GST_PTR_FORMAT instead of gst_caps_to_string():
13467         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
13468         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
13469         (gst_spider_identity_sink_loop_type_finding):
13470         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
13471         (find_suggest):
13472         * gst/gstpad.c: (gst_pad_try_relink_filtered),
13473         (gst_pad_set_explicit_caps):
13474         * gst/parse/grammar.y:
13475
13476 2004-01-28  David Schleef  <ds@schleef.org>
13477
13478         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
13479         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
13480         * docs/random/ds/0.9-suggested-changes: Notes from Company.
13481         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
13482         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
13483         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
13484         (gst_debug_log_default), (_gst_info_printf_extension),
13485         (_gst_info_printf_extension_arginfo):  Add printf extension.
13486         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
13487         * gst/gststructure.c: (gst_structure_to_string),
13488         (_gst_structure_parse_value): Use gst_value_deserialize() and
13489         remove old code.
13490         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
13491         (gst_value_deserialize_boolean), (gst_strtoi),
13492         (gst_value_deserialize_int), (gst_value_deserialize_double),
13493         (gst_value_deserialize_string), (gst_value_deserialize): Implement
13494         a bunch of deserialize functions and gst_value_deserialize.
13495         * gst/gstvalue.h: er, _de_serialize, not unserialize
13496         * testsuite/caps/string-conversions.c: (main): We don't currently
13497         handle (float) in caps, so convert these to (double).
13498         * testsuite/debug/Makefile.am: Add new test for the printf extension
13499         * testsuite/debug/printf_extension.c: (main): same
13500
13501 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13502
13503         * docs/random/company/time:
13504           Add some docs about clocking and time
13505
13506 2004-01-28  Julien MOUTTE <julien@moutte.net>
13507
13508         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
13509
13510 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13511
13512         * docs/pwg/advanced-clock.xml:
13513         * docs/pwg/advanced-dparams.xml:
13514         * docs/pwg/advanced-events.xml:
13515         * docs/pwg/advanced-interfaces.xml:
13516         * docs/pwg/advanced-midi.xml:
13517         * docs/pwg/advanced-request.xml:
13518         * docs/pwg/advanced-scheduling.xml:
13519         * docs/pwg/advanced-tagging.xml:
13520         * docs/pwg/advanced-types.xml:
13521         * docs/pwg/appendix-checklist.xml:
13522         * docs/pwg/building-boiler.xml:
13523         * docs/pwg/building-chainfn.xml:
13524         * docs/pwg/building-filterfactory.xml:
13525         * docs/pwg/building-pads.xml:
13526         * docs/pwg/building-props.xml:
13527         * docs/pwg/building-signals.xml:
13528         * docs/pwg/building-state.xml:
13529         * docs/pwg/building-testapp.xml:
13530         * docs/pwg/intro-basics.xml:
13531         * docs/pwg/intro-preface.xml:
13532         * docs/pwg/other-autoplugger.xml:
13533         * docs/pwg/other-sink.xml:
13534         * docs/pwg/other-source.xml:
13535         * docs/pwg/titlepage.xml:
13536           fix up id's
13537
13538 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13539
13540         * docs/95NonPath:
13541         * docs/HACKING:
13542         * docs/README:
13543         * docs/building-the-docs-on-debian:
13544           collect relevant bits of doc info
13545
13546 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13547
13548         * docs/pwg/advanced_tagging.xml:
13549           Half-assed commit so Thomas can re-arrange document IDs here to be
13550           consistent, too.
13551
13552 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13553
13554         * docs/manual/autoplugging.xml:
13555         * docs/manual/bins-api.xml:
13556         * docs/manual/bins.xml:
13557         * docs/manual/buffers-api.xml:
13558         * docs/manual/buffers.xml:
13559         * docs/manual/clocks.xml:
13560         * docs/manual/components.xml:
13561         * docs/manual/cothreads.xml:
13562         * docs/manual/debugging.xml:
13563         * docs/manual/dparams-app.xml:
13564         * docs/manual/dynamic.xml:
13565         * docs/manual/elements-api.xml:
13566         * docs/manual/elements.xml:
13567         * docs/manual/factories.xml:
13568         * docs/manual/gnome.xml:
13569         * docs/manual/goals.xml:
13570         * docs/manual/helloworld.xml:
13571         * docs/manual/helloworld2.xml:
13572         * docs/manual/init-api.xml:
13573         * docs/manual/intro.xml:
13574         * docs/manual/links-api.xml:
13575         * docs/manual/links.xml:
13576         * docs/manual/manual.xml:
13577         * docs/manual/motivation.xml:
13578         * docs/manual/pads-api.xml:
13579         * docs/manual/pads.xml:
13580         * docs/manual/plugins-api.xml:
13581         * docs/manual/plugins.xml:
13582         * docs/manual/programs.xml:
13583         * docs/manual/queues.xml:
13584         * docs/manual/quotes.xml:
13585         * docs/manual/schedulers.xml:
13586         * docs/manual/states-api.xml:
13587         * docs/manual/states.xml:
13588         * docs/manual/threads.xml:
13589         * docs/manual/typedetection.xml:
13590         * docs/manual/xml.xml:
13591           use chapter, part, section or misc as id starts for all bits
13592
13593 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13594
13595         * docs/gst/gstreamer-sections.txt:
13596           Fix up TITLE of the sections
13597
13598 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13599
13600         * docs/pwg/advanced_interfaces.xml:
13601           Add documentation on propertyprobing.
13602         * docs/pwg/advanced_events.xml:
13603         * docs/pwg/advanced_tagging.xml:
13604         * docs/pwg/building_boiler.xml:
13605         * docs/pwg/building_filterfactory.xml:
13606         * docs/pwg/pwg.xml:
13607           Move filterfactory and tagging into their own chapter, add a chapter
13608           on events. all these are empty placeholders that will be filled in
13609           some day.
13610
13611 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13612
13613         * docs/pwg/advanced_interfaces.xml:
13614           Docs for mixer interface. Also a check for website uploading.
13615
13616 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13617
13618         * docs/HACKING:
13619         * docs/Makefile.am:
13620         * docs/faq/Makefile.am:
13621         * docs/gst/Makefile.am:
13622         * docs/gst/tmpl/gstelement.sgml:
13623         * docs/gst/tmpl/gstplugin.sgml:
13624         * docs/gst/tmpl/gstreamer-unused.sgml:
13625         * docs/libs/Makefile.am:
13626         * docs/manual/Makefile.am:
13627         * docs/manuals.mak:
13628         * docs/pwg/Makefile.am:
13629         * docs/upload.mak:
13630           Separate out upload target and make it similar for
13631           both docbook and gtk-doc docs
13632
13633 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13634
13635         * docs/manuals.mak:
13636           Fix upload target to work with freedesktop
13637
13638 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13639
13640         * docs/pwg/advanced_types.xml:
13641           Add notes on creating your own types.
13642         * docs/pwg/building_boiler.xml:
13643         * docs/pwg/building_pads.xml:
13644         * docs/pwg/building_state.xml:
13645           Add some stuff about how to retrieve values from structures, how
13646           that relates to types and change layout slightly again to be almost
13647           perfect.
13648
13649 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13650
13651         * docs/pwg/advanced_dparams.xml:
13652         * docs/pwg/advanced_scheduling.xml:
13653           Change index layout slightly.
13654
13655 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13656
13657         * docs/pwg/advanced_clock.xml:
13658         * docs/pwg/advanced_interfaces.xml:
13659         * docs/pwg/advanced_midi.xml:
13660           General placeholders for now.
13661         * docs/pwg/advanced_request.xml:
13662           Explanation about sometimes and request pads.
13663         * docs/pwg/advanced_scheduling.xml:
13664           Concept of bytestream, loopfunctions and schedulers.
13665         * docs/pwg/building_boiler.xml:
13666           Add something about plugin-init.
13667
13668 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13669
13670         * docs/pwg/building_pads.xml:
13671           Fix broken docbook
13672
13673 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13674
13675         * docs/pwg/advanced_interfaces.xml:
13676         * docs/pwg/pwg.xml:
13677           Add as a placeholder for future filling-in.
13678         * docs/pwg/basics_autoplugging.xml:
13679         * docs/pwg/basics_buffers.xml:
13680         * docs/pwg/basics_elements.xml:
13681         * docs/pwg/basics_events.xml:
13682         * docs/pwg/basics_plugins.xml:
13683         * docs/pwg/basics_types.xml:
13684           Remove, because unused (this is all in intro_basics.xml).
13685         * docs/pwg/building_signals.xml:
13686           Short intro to signals + reference to GObject docs - we really
13687           shouldn't go into these sort of things to deply because we don't
13688           use them that extensively anyway.
13689         * docs/pwg/building_state.xml:
13690           Explanation of states. Benjamin, please check.
13691         * docs/pwg/building_testapp.xml:
13692           Put everything in one page - putting only a few lines of content
13693           per page doesn't really make sense.
13694
13695           Time to get into the advanced topics. ;).
13696
13697 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13698
13699         * docs/pwg/advanced_types.xml:
13700           Finish documenting the current state of mimetypes.
13701         * docs/pwg/building_boiler.xml:
13702         * docs/pwg/building_chainfn.xml:
13703         * docs/pwg/building_pads.xml:
13704         * docs/pwg/building_props.xml:
13705         * docs/pwg/building_testapp.xml:
13706           Start documenting the "how to build a simple audio filter" part
13707           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
13708           states and (maybe?) a short introduction to capsnego in the chapter
13709           on pads (building_pads.xml). Capsnego should probably be explained
13710           fully in advanced_capsnego.xml or so.
13711
13712 2004-01-26  David Schleef  <ds@schleef.org>
13713
13714         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
13715         * gst/gstpad.h: Add new function to allow element to (somewhat)
13716         specify non-fixed caps on a pad.
13717         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
13718         that I added a few weeks ago.
13719
13720 2004-01-26  David Schleef  <ds@schleef.org>
13721
13722         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
13723           making try_set_caps() work with non-fixed caps.
13724
13725 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13726
13727         * docs/pwg/advanced_types.xml:
13728         * docs/pwg/intro_basics.xml:
13729         * docs/pwg/intro_preface.xml:
13730         * docs/pwg/pwg.xml:
13731         * docs/pwg/titlepage.xml:
13732           First try to resurrect the PWG. I'm halfway integrating the mimetypes
13733           in here (docs/random/mimetypes), and will from there on work on both
13734           updating outdated parts and adding missing parts.
13735           That doesn't mean I'll fix it completely, but I'll try at least. ;).
13736
13737 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
13738
13739         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
13740           policy is set
13741
13742 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13743
13744         * gst/gstelement.h:
13745           remove gst_element_factory_get_version. It doesn't exist anymore.
13746         * gst/gstplugin.c:
13747         * gst/gstplugin.h:
13748           remove gst_plugin_set_name and change gst_plugin_get_longname to
13749           gst_plugin_get_description to match code.
13750         * gst/gsterror.h:
13751           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
13752         * gst/gstpad.c: (gst_pad_try_set_caps):
13753           make it work with nonfixed caps.
13754           Note that even in the nonfixed case the link function of the pad
13755           that tries to set caps isn't called.
13756
13757 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13758
13759         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
13760           fix bug where buffer was not assembled correctly
13761         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
13762           silence by default
13763         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
13764           only seek if there's no more buffers that could work without seeking
13765
13766 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13767
13768         * gst/gsttag.c: (_gst_tag_initialize):
13769         * gst/gsttag.h:
13770           Add application tag (for encoding/muxing app).
13771
13772 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13773
13774         * autogen.sh:
13775           make autopoint force, and libtoolize not copy
13776         * common/m4/as-docbook.m4:
13777           added docbook xml catalog setup check
13778         * common/m4/gst-doc.m4:
13779           use docbook check
13780
13781 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
13782
13783         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
13784         * gst/gsttag.h:
13785           add GstTagFlag
13786
13787 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13788
13789         * docs/gst/gstreamer-sections.txt:
13790         * docs/gst/tmpl/gst.sgml:
13791         * docs/gst/tmpl/gstbuffer.sgml:
13792         * docs/gst/tmpl/gstclock.sgml:
13793         * docs/gst/tmpl/gstelement.sgml:
13794         * docs/gst/tmpl/gstreamer-unused.sgml:
13795         * docs/gst/tmpl/gstxml.sgml:
13796           sync latest API changes to docs
13797
13798 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13799
13800         * gst/gstpluginfeature.c:
13801           fix doc snippet
13802         * tools/gst-inspect.c: (print_element_list):
13803           fix output of typefind
13804           add GPL header
13805         * tools/gst-launch.c:
13806           add GPL header
13807
13808 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13809
13810         * gst/elements/Makefile.am:
13811         * gst/elements/gstelements.c:
13812         * gst/elements/gsttypefindelement.c:
13813         * gst/elements/gsttypefindelement.h:
13814         * po/POTFILES.in:
13815         * po/fr.po:
13816         * po/nl.po:
13817           renamed gsttypefindelement to gsttypefind, conserving CVS history
13818
13819 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13820
13821         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
13822         * gst/gsttag.h:
13823           add some tags used in ogg as well
13824           fix _ in replaygain tags
13825
13826 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13827
13828         * gst/gsterror.h:
13829           fix wrong GST_LIBRARY_ERROR_ENCODE addition
13830
13831 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13832
13833         * gst/gstelement.c: (gst_element_error_full):
13834         * gst/gstelement.h:
13835           change _extended to _full
13836
13837 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13838
13839         reviewed by: <delete if not using a buddy>
13840
13841         * docs/gst/tmpl/gst.sgml:
13842         * docs/gst/tmpl/gstbuffer.sgml:
13843         * docs/gst/tmpl/gstclock.sgml:
13844         * docs/gst/tmpl/gstelement.sgml:
13845         * docs/gst/tmpl/gstreamer-unused.sgml:
13846         * docs/gst/tmpl/gstxml.sgml:
13847         * gst/gstelement.c: (gst_element_error_full):
13848         * gst/gstelement.h:
13849
13850 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13851
13852         * gst/gstelement.h: fix _gst_element_error_printf prototype
13853
13854 2004-01-20  David Schleef  <ds@schleef.org>
13855
13856         * gst/gststructure.c: (gst_structure_to_string):
13857         Convert function to use gst_value_serialize().
13858         * gst/gstvalue.c: (gst_value_serialize_list),
13859         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
13860         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
13861         (gst_value_serialize_int), (gst_value_serialize_double),
13862         (gst_string_wrap), (gst_value_serialize_string),
13863         (gst_value_serialize), (gst_value_deserialize):
13864         * gst/gstvalue.h:
13865         Add implementations for serialize.
13866
13867 2004-01-20  Julien MOUTTE  <julien@moutte.net>
13868
13869         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
13870         we want to keep that one in the future or change xvidenc.c to use 
13871         another error.
13872
13873 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13874
13875         * gst/gstelement.c: (_gst_element_error_printf):
13876         * gst/gstelement.h:
13877           privatise function
13878
13879 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13880
13881         * docs/random/error:
13882           doc explaining error system
13883         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
13884           cleanup
13885
13886 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13887
13888         * gst/gst-i18n-app.h:
13889         * gst/gst-i18n-lib.h:
13890           remove inclusion of config.h
13891         * po/POTFILES.in:
13892         * po/nl.po:
13893           add gst/gstelement.c
13894
13895 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13896
13897         * po/nl.po: updated Dutch translation
13898
13899 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13900
13901         * gst/gsterror.c: (_gst_core_errors_init),
13902         (_gst_library_errors_init), (_gst_resource_errors_init),
13903         (_gst_stream_errors_init):
13904         remove ending punctuation dots
13905
13906 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13907
13908         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
13909         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
13910         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13911         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13912         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13913         use GST_ERROR_SYSTEM
13914
13915 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13916
13917         * gst/gstelement.c: (gst_element_error_printf),
13918         (gst_element_error_extended):
13919         * gst/gstelement.h:
13920           add a helper printf function so we can have NULL values passed.
13921
13922 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13923
13924         * gst/gstelement.h:
13925           add G_STMT macros to gst_element_error, which isn't strictly
13926           necessary but people tell me to anyway.
13927
13928 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
13929
13930         * gst/Makefile.am:
13931         * gst/autoplug/gstspideridentity.c:
13932         (gst_spider_identity_sink_loop_type_finding):
13933         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
13934         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
13935         (gst_filesink_close_file), (gst_filesink_handle_event),
13936         (gst_filesink_chain):
13937         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
13938         (gst_filesrc_map_region), (gst_filesrc_get_read),
13939         (gst_filesrc_open_file):
13940         * gst/elements/gstidentity.c: (gst_identity_chain):
13941         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13942         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13943         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13944         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
13945         * gst/gst.h:
13946         * gst/gst_private.h:
13947         * gst/gstelement.c: (gst_element_class_init),
13948         (gst_element_default_error), (gst_element_error_func),
13949         (gst_element_error_extended):
13950         * gst/gstelement.h:
13951         * gst/gsterror.c: (_gst_core_errors_init),
13952         (_gst_library_errors_init), (_gst_resource_errors_init),
13953         (_gst_stream_errors_init), (gst_error_get_message):
13954         * gst/gsterror.h:
13955         * gst/gstinfo.c: (_gst_debug_init):
13956         * gst/gstmarshal.list:
13957         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13958         (gst_pad_recover_caps_error), (gst_pad_pull):
13959         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
13960         * gst/schedulers/gstbasicscheduler.c:
13961         (gst_basic_scheduler_chainhandler_proxy),
13962         (gst_basic_scheduler_gethandler_proxy),
13963         (gst_basic_scheduler_cothreaded_chain):
13964         * po/POTFILES.in:
13965         * po/fr.po:
13966         * po/nl.po:
13967           change error signal
13968           add error categories
13969
13970 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
13971
13972         * gst/gsttag.c: (_gst_tag_initialize):
13973         * gst/gsttag.h:
13974         Add replaygain tag
13975
13976 2004-01-18  Colin Walters  <walters@verbum.org>
13977
13978         * examples/retag/retag.c: Call gst_init before processing
13979         program args.  Add g_assert to _link_many call.
13980
13981 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13982
13983         * gst/gstpad.c: (gst_pad_alloc_buffer):
13984           Return a newly allocated buffer when the pad has no peer.
13985
13986 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13987
13988         * gst/gstclock.c: (gst_clock_get_time):
13989           make it compile with gcc 2.95 again.
13990           Patch by Scott Wheeler
13991
13992 2004-01-15  David Schleef  <ds@schleef.org>
13993
13994         * gst/gstcaps.h:
13995         Added gst_caps_is_simple() macro.
13996         * testsuite/caps/caps.c: (test1):
13997         * testsuite/caps/intersect2.c: (main):
13998         * testsuite/caps/intersection.c: (main):
13999         Fixes to make 'make check' work again after removing
14000         gst_caps_is_chained().
14001
14002 2004-01-15  Leif Johnson <leif@ambient.2y.net>
14003
14004         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
14005         and additions to the MIDI document.
14006
14007 2004-01-15  David Schleef  <ds@schleef.org>
14008
14009         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
14010         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
14011         of GST_RPAD_, since we don't know if it's a real or ghost pad.
14012
14013 2004-01-15  David Schleef  <ds@schleef.org>
14014
14015         * gst/gstqueue.c:
14016         * gst/gstqueue.h:
14017         Fix the spelling of "treshold" and make min_threshold actually
14018         affect the queue.
14019
14020 2004-01-15  David Schleef  <ds@schleef.org>
14021
14022         * gst/gstcaps.c:
14023         Add lots of documentation.
14024         * gst/gstcaps.h:
14025         Deprecate a few functions.
14026         * gst/gstpad.c:
14027         Removed use of deprecated functions.
14028
14029 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14030
14031         * gst/gstpad.c: (gst_pad_is_linked):
14032         * gst/gstpad.h:
14033           implement gst_pad_is_linked
14034         * gst/gstelement.h:
14035           reserve space for initiate_state_change
14036
14037 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14038
14039         * gst/autoplug/gstspideridentity.c:
14040         (gst_spider_identity_sink_loop_type_finding):
14041           break infinite loop by just returning instead of looping
14042         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
14043           set event time difference correctly. Set it to 1 second instead
14044           of 100ms to be more tolerant
14045         * gst/gstelement.c: (gst_element_set_time):
14046           add debugging output
14047
14048 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14049
14050         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
14051           query if buffers are inside the pool, ignore events
14052
14053 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14054
14055         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
14056         (gst_clock_set_speed), (gst_clock_set_active),
14057         (gst_clock_is_active), (gst_clock_reset),
14058         (gst_clock_handle_discont):
14059         * gst/gstclock.h:
14060           deprecate old interface and disable functions that aren't in use
14061           anymore.
14062         * gst/gstelement.h:
14063         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
14064         (gst_element_set_time), (gst_element_adjust_time):
14065           add concept of "element time" and functions to get/set this time.
14066         * gst/gstelement.c: (gst_element_change_state):
14067           update element time correctly.
14068         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
14069           This is a debug message, not a g_critical.
14070         * gst/gstpad.c: (gst_pad_event_default):
14071           handle discontinuous events right with element time.
14072         * gst/gstscheduler.c: (gst_scheduler_state_transition):
14073           update to clocking fixes.
14074           set clocks on elements in READY=>PAUSED. The old behaviour caused
14075           a wrong element time on the first element that started playing.
14076         * gst/schedulers/gstbasicscheduler.c:
14077         (gst_basic_scheduler_class_init):
14078         * gst/schedulers/gstoptimalscheduler.c:
14079         (gst_opt_scheduler_class_init):
14080           remove code that just implements the default behaviour.
14081         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
14082           update to use new clocking functions
14083         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
14084         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
14085           update to test new element time.
14086         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
14087           use _get_allowed_caps instead of _get_caps. This catches filtered
14088           caps correctly.
14089         * testsuite/debug/commandline.c:
14090           update for new GST_DEBUG syntax.
14091         * testsuite/threads/Makefile.am:
14092           disable a test that only works sometimes.
14093
14094 2004-01-13  Julien MOUTTE <julien@moutte.net>
14095
14096         * po/LINGUAS: Adding fr.
14097         * po/fr.po: Adding french translation.
14098
14099 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
14100
14101         * gst/parse/grammar.y:
14102         * po/POTFILES.in:
14103         * po/nl.po:
14104         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
14105           translate parsing error messages
14106
14107 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
14108
14109         * po/POTFILES.in: adding gst-launch
14110         * po/nl.po: updated translation, all 99 strings translated
14111         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
14112         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
14113           fix strings for translation
14114
14115 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
14116
14117         * gst/gst.c:
14118           - capitalize beginnings of popt options
14119           - fix strings for translation
14120           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
14121
14122 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
14123
14124         * po/README: add some notes on how to update translations
14125
14126 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
14127
14128         * ABOUT-NLS: removed, is autogenerated from autopoint
14129         * autogen.sh: add autopoint stuff
14130         * configure.ac: fix up gettext stuff
14131         * gst/Makefile.am: add i18n headers to noinst_HEADERS
14132         * gst/elements/gsttypefindelement.c: add header include
14133         * gst/gettext.h: add header, copy from system-installed header
14134         * gst/gst-i18n-app.h: to be included by each app having translations
14135         * gst/gst-i18n-lib.h: to be included by each lib having translations
14136         * gst/gst.c: (init_pre): fix up gettext calls
14137         * gst/gst_private.h: remove i18n stuff, moving to separate headers
14138         * po/LINGUAS: the new way to specify translations present
14139         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
14140         * po/Makevars: the variables filled in for GStreamer
14141         * po/POTFILES.in: added new files with translations
14142         * po/de.po: has new strings
14143         * po/nl.po: readded, has new strings
14144
14145 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
14146
14147         * gst/gsttag.c: fix some strings marked for translation
14148
14149 2004-01-13  Iain <iain@prettypeople.org>
14150
14151         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
14152         group when we add an element to it, cos we unref it when we remove one
14153
14154 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
14155
14156         * testsuite/debug/commandline.c: (debug_not_reached):
14157         * testsuite/debug/output.c: (check_message):
14158           fix testsuite
14159
14160 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14161
14162         * examples/cutter/.cvsignore:
14163         * examples/helloworld/.cvsignore:
14164         * examples/launch/.cvsignore:
14165         * examples/manual/.cvsignore:
14166         * examples/mixer/.cvsignore:
14167         * examples/pingpong/.cvsignore:
14168         * examples/plugins/.cvsignore:
14169         * examples/queue/.cvsignore:
14170         * examples/queue2/.cvsignore:
14171         * examples/queue3/.cvsignore:
14172         * examples/queue4/.cvsignore:
14173         * examples/retag/.cvsignore:
14174         * examples/thread/.cvsignore:
14175         * examples/typefind/.cvsignore:
14176         * examples/xml/.cvsignore:
14177         * gst/.cvsignore:
14178         * gst/autoplug/.cvsignore:
14179         * gst/elements/.cvsignore:
14180         * gst/indexers/.cvsignore:
14181         * gst/parse/.cvsignore:
14182         * gst/registries/.cvsignore:
14183         * gst/schedulers/.cvsignore:
14184         * libs/gst/bytestream/.cvsignore:
14185         * libs/gst/control/.cvsignore:
14186         * libs/gst/getbits/.cvsignore:
14187         * tests/.cvsignore:
14188         * tests/bufspeed/.cvsignore:
14189         * tests/instantiate/.cvsignore:
14190         * tests/memchunk/.cvsignore:
14191         * tests/muxing/.cvsignore:
14192         * tests/sched/.cvsignore:
14193         * tests/seeking/.cvsignore:
14194         * tests/threadstate/.cvsignore:
14195         * testsuite/.cvsignore:
14196         * testsuite/caps/.cvsignore:
14197         * testsuite/cleanup/.cvsignore:
14198         * testsuite/dynparams/.cvsignore:
14199         * testsuite/plugin/.cvsignore:
14200         * tools/.cvsignore:
14201           update - this is huge, because it includes *.bb, *.bbg and *.da files
14202           which are generated for gcov.
14203
14204 2004-01-11  David Schleef  <ds@schleef.org>
14205
14206         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
14207         a function to parse integers in ways that strto[u]l() does not.
14208
14209 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14210
14211         * tools/gst-inspect.c: (print_caps):
14212           improve output of caps a bit
14213
14214 2004-01-11  David Schleef  <ds@schleef.org>
14215
14216         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
14217         inherit correct flags (READONLY and DONTKEEP).
14218
14219 2004-01-11  David Schleef  <ds@schleef.org>
14220
14221         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
14222         (gst_filesrc_map_region):
14223         * gst/gstbuffer.c: (_gst_buffer_initialize),
14224         (_gst_buffer_sub_free), (gst_buffer_default_copy),
14225         (gst_buffer_new), (gst_buffer_create_sub),
14226         (gst_buffer_is_span_fast), (gst_buffer_span):
14227         * gst/gstbuffer.h:
14228         Change GstBuffer private structure element names. (all files)
14229         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
14230         (gst_queue_link):
14231         * gst/gstqueue.h:
14232         Implement getcaps/pad_link functions that handle the case where
14233         there are data in the queue.
14234
14235 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14236
14237         * gst/elements/gstbufferstore.c:
14238           initialize debugging structure correctly
14239         * gst/elements/gsttee.c: (gst_tee_set_property):
14240           g_object_notify when property was changed
14241         * gst/elements/gsttypefindelement.c:
14242         (gst_type_find_element_change_state):
14243           clear caps correctly
14244
14245 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14246
14247         * gst/gstqueue.c: (gst_queue_init):
14248           Use better defaults for when a queue should block. This
14249           gets rid of jerky playback for quite a few files.
14250           It takes more memory.
14251
14252 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
14253
14254         (gst_xml_registry_parse_padtemplate):
14255           make critical message slightly more useful
14256
14257 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14258
14259         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
14260         (gst_debug_message_get), (gst_debug_log_default):
14261         * gst/gstinfo.h:
14262           Change gst_debug_log(_valist) to take a const format string.
14263           Change prototype of log function and functions using those to 
14264           take a GstDebugMessage instead of a string that requires using
14265           gst_debug_message_get.
14266
14267 2004-01-08  David Schleef  <ds@schleef.org>
14268
14269         * Makefile.am:
14270         * configure.ac:
14271         Add option --enable-gcov to build GStreamer with -fprofile-arcs
14272         and -ftest-coverage, which allows gcov to show information about
14273         testsuite coverage.
14274
14275 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14276
14277         * gst/gstutils.h:
14278           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
14279           GST_PARENT_CALL_WITH_DEFAULT
14280         * gst/elements/gstaggregator.c: 
14281         * gst/elements/gstbufferstore.c: 
14282         * gst/elements/gstfakesink.c: 
14283         * gst/elements/gstfakesrc.c: 
14284         * gst/elements/gstfdsink.c: 
14285         * gst/elements/gstfdsrc.c: 
14286         * gst/elements/gstfilesink.c: 
14287         * gst/elements/gstfilesrc.c: 
14288         * gst/elements/gstidentity.c: 
14289         * gst/elements/gstmd5sink.c: 
14290         * gst/elements/gstmultidisksrc.c:
14291         * gst/elements/gstpipefilter.c: 
14292         * gst/elements/gstshaper.c:
14293         * gst/elements/gststatistics.c:
14294         * gst/elements/gsttee.c:
14295         * gst/elements/gsttypefindelement.c:
14296           use them.
14297
14298 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
14299
14300         * docs/gst/gstreamer-docs.sgml: remove props
14301         * docs/gst/gstreamer-sections.txt: remove props
14302         * docs/gst/tmpl/gst.sgml:
14303         * docs/gst/tmpl/gstbin.sgml:
14304         * docs/gst/tmpl/gstbuffer.sgml:
14305         * docs/gst/tmpl/gstcaps.sgml:
14306         * docs/gst/tmpl/gstclock.sgml:
14307         * docs/gst/tmpl/gstelement.sgml:
14308         * docs/gst/tmpl/gstindex.sgml:
14309         * docs/gst/tmpl/gstobject.sgml:
14310         * docs/gst/tmpl/gstpad.sgml:
14311         * docs/gst/tmpl/gstpadtemplate.sgml:
14312         * docs/gst/tmpl/gstreamer-unused.sgml:
14313         * docs/gst/tmpl/gstthread.sgml:
14314         * docs/gst/tmpl/gstxml.sgml:
14315           sync with code reorganization
14316
14317 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
14318
14319         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
14320         Make the 'Could not find compatible pad' message more informative.
14321
14322 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
14323                                                                                 
14324         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
14325           Fix for if we pass NULL as property to location.
14326         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
14327         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
14328           Fix for instantiate-test (see below).
14329         * gst/gststructure.c: (_gst_structure_parse_value):
14330           Fix compile error on gcc-2.96.
14331         * configure.ac:
14332         * tests/Makefile.am:
14333         * tests/instantiate/Makefile.am:
14334         * tests/instantiate/create.c: (create_all_elements), (main):
14335           Add a test that instantiates all elements. This makes it easy to
14336           track dead code for old API/design (like setting event functions
14337           on sink pads and so on).
14338
14339 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
14340
14341         * gst/gstcaps.c: (gst_caps_append_structure):
14342           Move the poisoning to allow a NULL structure
14343         * gst/gstevent.c: (_gst_event_free):
14344           When freeing a navigation event, free the structure
14345           also
14346
14347 2004-01-04  David Schleef  <ds@schleef.org>
14348
14349         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
14350         Remove usage of gst_pad_proxy_fixate.
14351         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
14352         (gst_caps_split_one), (gst_caps_replace):
14353         Add poisoning code.
14354         * gst/gstmarshal.list:
14355         Add pointer__pointer for fixate signal
14356         * gst/gstpad.c: (gst_real_pad_class_init),
14357         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
14358         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
14359         (gst_pad_set_explicit_caps), (gst_pad_template_new):
14360         Add poisoning code. Add fixate signal on RealPad. Change
14361         set_explicit_caps() to take const GstCaps, like try_set_caps().
14362         * gst/gstpad.h:
14363         * testsuite/caps/Makefile.am:
14364         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
14365
14366 2004-01-03  David Schleef  <ds@schleef.org>
14367
14368         * gst/elements/gsttypefindelement.c:
14369         (gst_type_find_element_have_type), (gst_type_find_element_init):
14370         Use gst_pad_use_explicit_caps for src pad.
14371         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
14372         before using it.
14373
14374 2004-01-03  David Schleef  <ds@schleef.org>
14375
14376         * gst/gstelement.c: (gst_element_link_pads_filtered),
14377         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
14378         that linking was successful.
14379         * gst/gstpad.c: (gst_pad_link_free),
14380         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
14381         (gst_pad_link_try), (gst_pad_link_unnegotiate),
14382         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
14383         GstPadLinkReturn correctly between functions, and don't fail
14384         when DELAYED is used (DELAYED is very important).  Better
14385         cleanup on unlinking and unnegotiation.  Should fix some spider
14386         bugs.
14387
14388 2004-01-02  David Schleef  <ds@schleef.org>
14389
14390         * gst/gstelement.c: (gst_element_class_init),
14391         (gst_element_base_class_init): ->padtemplates should be cleared
14392         in base_init, since we need to have a fresh list for every
14393         class.  (Alternately, we chould copy the list and share the
14394         actual pad templates (not the list), but that would require
14395         changing every plugin to move pad template registration from
14396         base_init to class_init.)
14397
14398 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
14399
14400         * gst/gstelement.c: (gst_element_class_add_pad_template):
14401           Refuse registering a pad template if another pad template
14402           with the same name already exists (#114715).
14403
14404 2004-01-02  David Schleef  <ds@schleef.org>
14405
14406         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
14407         (gst_caps_is_equal_fixed): Add new function.
14408         * gst/gstcaps.h: ditto.
14409         * gst/gstpad.c: (gst_real_pad_class_init),
14410         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
14411         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
14412         check new caps against existing caps -- if they're the same, return
14413         OK without renegotiating.  caps-nego-failed signal fixed so that
14414         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
14415         to save an extra caps copy.  Don't complete negotiation if a pad
14416         link function returns DELAYED.
14417
14418 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14419
14420         * gst/gstpad.c: (gst_pad_try_relink_filtered):
14421           Fix wrong g_return_if_fail
14422
14423 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
14424
14425         * gst/gstbin.c: (gst_bin_class_init):
14426         Change the marshalling of element_added/element_removed
14427         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
14428         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
14429
14430 2004-01-01  David Schleef  <ds@schleef.org>
14431
14432         * gst/gstpad.c: (gst_pad_set_explicit_caps),
14433         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
14434         (gst_pad_use_explicit_caps):
14435         * gst/gstpad.h:
14436         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
14437         to use an internal getcaps and link fuction so that negotiation
14438         always results in the explicitly set caps.
14439         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
14440         are particularly useful for decoders.
14441
14442 2003-12-31  David Schleef  <ds@schleef.org>
14443
14444         * gst/elements/gstidentity.c: (gst_identity_class_init),
14445         (gst_identity_init), (gst_identity_chain),
14446         (gst_identity_set_property), (gst_identity_get_property):
14447         * gst/elements/gstidentity.h:
14448         * gst/gstqueue.c: (gst_queue_init):
14449           Negotiation fixes.
14450
14451 2003-12-31  David Schleef  <ds@schleef.org>
14452
14453         * gst/gstcaps.c: (gst_caps_intersect),
14454         (_gst_caps_normalize_foreach), (gst_caps_normalize):
14455           Implement gst_caps_normalize().
14456         * testsuite/caps/normalisation.c: (main):
14457           Add an additional test
14458
14459 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
14460
14461         * gst/gstqueue.c: (gst_queue_init):
14462           use gst_pad_proxy_getcaps()
14463
14464 2003-12-31  David Schleef  <ds@schleef.org>
14465
14466         * gst/elements/gstshaper.c: (gst_shaper_link):
14467         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
14468         * gst/gstqueue.c: (gst_queue_link):
14469           Negotiation fixes.
14470
14471 2003-12-31  David Schleef  <ds@schleef.org>
14472
14473         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
14474         * gst/gstpad.h: Add functions that are useful as default pad
14475         link and fixate functions for elements.
14476
14477 2003-12-30  David Schleef  <ds@schleef.org>
14478
14479         * gst/gstpad.c: (gst_pad_link_try):
14480           Fix segfault when attempting to return to old caps
14481
14482 2003-12-29  David Schleef  <ds@schleef.org>
14483
14484         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
14485         (gst_caps_structure_simplify), (gst_caps_simplify):
14486         * gst/gstcaps.h:
14487           Add simplify function
14488         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
14489         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
14490         * gst/gstpad.h:
14491           Copy over srcnotify, sinknotify when calling old pad_link
14492           functions.  Add new is_negotiated() function.
14493         * gst/gststructure.c: (gst_structure_copy):
14494           Fix an incredibly stupid bug that should have been noticed
14495           weeks ago.  _copy() returned the argument, not the new copy.
14496
14497 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14498
14499         * gst/gstcaps.c: (gst_caps_append):
14500           add sanity checks
14501         * gst/gstcaps.h: (gst_caps_debug):
14502           remove, it doesn't exist anymore.
14503         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
14504         (gst_element_threadsafe_properties_post_run):
14505           make debugging messages not clutter up THREAD debug category
14506         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
14507         (gst_element_change_state):
14508           update to new caps API
14509         * gst/gstinterface.c: (gst_implements_interface_cast):
14510           don't put vital code in g_return_if_fail
14511         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
14512         (gst_pad_link_filtered):
14513           add pst_pad_try_link and use it.
14514         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
14515           implement correctly, deprecate first one.
14516         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
14517           add and implement.
14518         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
14519           implement.
14520         (gst_pad_get_negotiated_caps):
14521           add and implement. Make GST_PAD_CAPS call this function.
14522         (gst_pad_get_caps):
14523           remove unneeded check..
14524         (gst_pad_recover_caps_error):
14525           disable, always return FALSE.
14526         (gst_real_pad_dispose):
14527           don't free caps and appfilter anymore, they're unused.
14528         * gst/gstpad.h:
14529           Reflect changes mentioned above.
14530         * gst/gstsystemclock.c: (gst_system_clock_wait):
14531           Make 'clock is way behind' a debugging message.
14532         * gst/gstthread.c: (gst_thread_change_state):
14533           Fix debugging message
14534
14535 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
14536
14537         * gst/gstinfo.h:
14538           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
14539         * docs/gst/tmpl/gstreamer-unused.sgml:
14540           removed all traces of cvs conflicts
14541
14542 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
14543
14544         * configure.ac:
14545         * gst/schedulers/cothreads_compat.h:
14546         * libs/Makefile.am:
14547           remove last instances of wingo cothread usage
14548
14549 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
14550
14551         * gst/gstplugin.c:
14552         * gst/gstversion.h.in:
14553         * gst/parse/grammar.y:
14554           change comment block from /** to /* when not gtk-doc comments
14555
14556 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
14557
14558         * gst/gst.c: whitespace and doc style fixes
14559
14560 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
14561
14562         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
14563
14564 2003-12-24  Colin Walters  <walters@verbum.org>
14565
14566         * gst/elements/gsttypefindelement.c:
14567           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
14568           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
14569           Don't double-free caps.
14570
14571 2003-12-23  David Schleef  <ds@schleef.org>
14572
14573         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
14574           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
14575           Many little fixes and additions of debug statements to
14576           get rhythmbox working.
14577
14578 2003-12-23  Colin Walters  <walters@verbum.org>
14579
14580         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
14581         Use GST_PAD_LINK_SUCCESSFUL.
14582
14583 2003-12-23  David Schleef  <ds@schleef.org>
14584
14585         * gst/elements/gstaggregator.c:
14586         * gst/elements/gsttee.c:
14587           Use gst_pad_proxy_getcaps().
14588         * gst/gstpad.c:
14589         * gst/gstpad.h:
14590           Add gst_pad_proxy_getcaps(), which filter elements can use
14591           as a generic getcaps implementation.
14592           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
14593           was advertised.
14594
14595 2003-12-23  David Schleef  <ds@schleef.org>
14596
14597         * gst/gstpad.c:
14598           Rearrange/rewrite much of the pad negotiation code, since it
14599           resembled pasta.  This actually changes the way some
14600           negotiation works, since the previous code was inconsistent
14601           depending on how it was invoked.  Add (internal) structure
14602           GstPadLink, which is used to hold some information (more in
14603           the future) about the link between two pads.  Fixes a number
14604           of bugs, including random lossage of filter caps when the
14605           initial negotiation is delayed.  A few functions are still
14606           unimplemented.
14607         * gst/gstpad.h:
14608           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
14609           these when testing GstPadLinkReturn values instead of comparing
14610           directly.
14611
14612 2003-12-23  David Schleef  <ds@schleef.org>
14613
14614         * gst/gstvalue.c: 
14615         * gst/gstvalue.h:
14616           Rearrange lots of code.  Change registration of compare function
14617           into registration of compare/serialize/deserialize functions.
14618           Doesn't include implementation of gst_value_[de]serialize(),
14619           but that should be easy.
14620
14621 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
14622
14623         * docs/gst/gstreamer-sections.txt:
14624         * docs/gst/tmpl/gstprops.sgml: removed
14625         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
14626           David removed props and caps code, so let's remove their docs as well.
14627           Removed all no longer existing symbols from gstreamer-sections.txt
14628           
14629 2003-12-22  Colin Walters  <walters@verbum.org>
14630
14631         * gst/gsttaginterface.c, gst/gsttaginterface.h,
14632           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
14633           of tags directly.
14634
14635 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14636
14637         * gst/elements/gstelements.c:
14638           Set ranks of elements to NONE, so the autoplugger doesn't use them.
14639         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
14640           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
14641           gst_caps (peer).
14642
14643 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14644
14645         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
14646         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
14647         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
14648         (gst_spider_identity_sink_loop_type_finding):
14649         * gst/autoplug/gstspideridentity.h:
14650           Fix autoplugging in spider element, so it works with new caps.
14651           This was mainly caused by identifying empty caps incorrectly.
14652
14653 2003-12-22  David Schleef  <ds@schleef.org>
14654
14655         * gststructure.c, gstvalue.c, gstvalue.h: Add
14656           gst_value_init_and_copy() and use it, to avoid silly mistakes in
14657           using g_value_copy()
14658
14659 2003-12-21  David Schleef  <ds@schleef.org>
14660
14661         * many, many files: Merge CAPS branch.  This includes:
14662           - implemention of GstValue and several GstValue types
14663           - implemention of GstStructure
14664           - entire rewrite of GstCaps
14665           - removal of GstProps
14666           - many changes to GstPad to compensate for new caps paradigm
14667           - removal of GstBufferpool
14668         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
14669         gstvalue.h, gst/gstcaps[2]*.[ch]:
14670           - rename gstcaps2.[ch] to gstcaps.[ch]
14671
14672 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
14673
14674         * gst/gstqueue.c: (gst_queue_handle_pending_events),
14675         (gst_queue_chain), (gst_queue_handle_src_event):
14676           implement timeout for sending events. Workaround for if the
14677           pipeline on this queue is not passing any data.
14678
14679 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
14680                                                                                 
14681         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
14682         * moved CVS to freedesktop.org