move check stuff to its own library to be used by other modules
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
2
3         * check/elements/.cvsignore:
4         * check/elements/gstfakesrc.c:
5           rename to name of element
6         * check/elements/identity.c: (chain_func), (event_func),
7         (setup_identity), (cleanup_identity), (GST_START_TEST),
8         (identity_suite), (main):
9           add a test for identity
10         * check/Makefile.am:
11         * pkgconfig/Makefile.am:
12         * pkgconfig/gstreamer-check.pc.in:
13         * pkgconfig/gstreamer-check-uninstalled.pc.in:
14         * gst/check:
15         * gst/Makefile.am:
16         * configure.ac:
17           move the check stuff to a library that gets installed
18         * check/gst-libs/controller.c: (GST_START_TEST):
19         * check/gst-libs/gdp.c:
20         * check/gst/gst.c: (GST_START_TEST):
21         * check/gst/gstbin.c:
22         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
23         * check/gst/gstbus.c:
24         * check/gst/gstcaps.c: (GST_START_TEST):
25         * check/gst/gstelement.c:
26         * check/gst/gstghostpad.c:
27         * check/gst/gstiterator.c:
28         * check/gst/gstmessage.c:
29         * check/gst/gstminiobject.c: (thread_ref), (GST_START_TEST):
30         * check/gst/gstobject.c:
31         * check/gst/gstpad.c: (GST_START_TEST):
32         * check/gst/gststructure.c: (GST_START_TEST):
33         * check/gst/gstsystemclock.c: (GST_START_TEST),
34         (gst_systemclock_suite):
35         * check/gst/gsttag.c: (gst_tag_suite):
36         * check/gst/gstvalue.c:
37         * check/pipelines/cleanup.c:
38         * check/pipelines/simple_launch_lines.c:
39         * check/states/sinks.c:
40           change include statement
41
42         * docs/gst/gstreamer-sections.txt:
43         * docs/gst/tmpl/gstpad.sgml:
44           document more pad stuff
45         * gst/gstminiobject.c: (gst_mini_object_ref),
46         (gst_mini_object_unref):
47           debug refcounting
48
49 2005-08-19  Stefan Kost  <ensonic@users.sf.net>
50
51         * docs/gst/tmpl/gst.sgml:
52         * gst/gst.c:
53           eliminate another tmpl file, fix spelling in the long-description
54
55 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
56
57         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
58         (test_event), (timediff), (gstevents_suite):
59           Should fix build on 64-bit arch's
60
61 2005-08-18  Andy Wingo  <wingo@pobox.com>
62
63         Make sure that when a pipeline goes to PLAYING, that data has
64         actually hit the sink.
65
66         * check/states/sinks.c (test_sink): A sink that doesn't get any
67         data shouldn't return SUCCESS for going to either PLAYING or
68         PAUSED. Test also the return values on the way back down.
69
70         * gst/gstelement.c (gst_element_set_state): When changing the
71         state of an element currently changing state asynchronously, go to
72         lost-state after commiting the pending state. Makes future calls
73         to get_state continue to return ASYNC.
74
75         * gst/base/gstbasesink.c (gst_base_sink_change_state): Return
76         ASYNC when going to PLAYING if we still don't have preroll, as can
77         happen with live sources.
78
79 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
80
81         * docs/pwg/advanced-types.xml:
82           Hack long paragraph into 2 chunks as a workaround for buggy
83           jadetex version in sid and breezy that loops infinitely and
84           eats all RAM.
85
86 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
87
88         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
89         (test_event), (timediff), (gstevents_suite):
90           Provide more error margin in clock measurements to allow for 
91           g_get_current_time inaccuracies.
92
93 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
94
95         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
96         (test_event), (timediff), (gstevents_suite):
97            Fix error message output so I might be able to tell why the
98            test works here but fails on the build farm.
99
100 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
101
102         * check/Makefile.am:
103         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
104         (test_event), (timediff), (gstevents_suite), (main):
105           I wrote a test!
106
107         * docs/design/part-seeking.txt:
108           Spelling correction
109
110         * docs/gst/tmpl/gstevent.sgml:
111         * docs/gst/tmpl/gstfakesrc.sgml:
112           Docs updates.
113
114         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
115           Treat a buffer-without-newsegment the same as a receiving 
116           a newsegment not in time format, and disable syncing to the clock
117           with a warning.
118
119         * gst/gstbus.c: (gst_bus_set_sync_handler):
120           Assert if anyone tries to replace the existing sync_handler for bus, 
121           as only the owner should be setting it.
122
123         * gst/gstevent.h:
124           Have a fixed set of custom event enums with events identified by
125           their structure name (as in 0.8), rather than a free-for-all
126           allowing collisions between enum values from different plugins.
127
128         * gst/gstpad.c: (gst_pad_class_init):
129           Docs change.
130           
131         * gst/gstqueue.c: (gst_queue_handle_sink_event):
132           Handle out-of-band downstream events from the sending thread.
133
134 2005-08-17  Andy Wingo  <wingo@pobox.com>
135
136         * gst/gstpipeline.c (gst_pipeline_change_state): Interpret
137         play-timeout==0 to mean no timeout at all. In that case, don't
138         bother with a get_state or a warning, just return directly, even
139         if it's ASYNC.
140
141         * gst/base/gstbasetransform.c: Debug changes.
142
143         * gst/gstutils.h:
144         * gst/gstutils.c (gst_bin_watch_for_state_change): Add function to
145         ensure bins post state change messages. A bit of a hack but I can't
146         think of a way to avoid it.
147
148         * check/gst/gstbin.c (test_watch_for_state_change): Added test.
149
150 2005-08-16  Andy Wingo  <wingo@pobox.com>
151
152         * gst/base/gstadapter.h:
153         * gst/base/gstadapter.c (gst_adapter_take): New function, like
154         peek() but you own the data. Not terribly efficient atm.
155
156 2005-08-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
157
158         * gst/gstutils.c: (gst_element_found_tags_for_pad), (push_and_ref),
159         (gst_element_found_tags):
160         * gst/gstutils.h:
161           Add two utility functions for tag handling.
162
163 2005-08-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
164
165         * docs/manual/advanced-dataaccess.xml:
166         * docs/manual/basics-helloworld.xml:
167           Fix docs to use _bin_add() before _link(), which fixes the examples
168           with recent core versions (reported by Madhan Raj M
169           <raj_madan@rediffmail.com>, #313199).
170
171 2005-08-16  Wim Taymans  <wim@fluendo.com>
172
173         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
174         Added subtract checks.
175
176         * docs/design/part-events.txt:
177         Some more docs about newsegment
178
179         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
180         Fix FIXME
181
182         * gst/gstcaps.c: (gst_caps_to_string):
183         Add comments, cleanups.
184         
185         * gst/gstelement.c: (gst_element_save_thyself):
186         cleanups
187         
188         * gst/gstvalue.c: (gst_value_collect_int_range),
189         (gst_string_unwrap), (gst_value_union_int_int_range),
190         (gst_value_union_int_range_int_range),
191         (gst_value_intersect_int_int_range),
192         (gst_value_intersect_int_range_int_range),
193         (gst_value_intersect_double_double_range),
194         (gst_value_intersect_double_range_double_range),
195         (gst_value_intersect_list), (gst_value_subtract_int_int_range),
196         (gst_value_subtract_int_range_int),
197         (gst_value_subtract_double_range_double),
198         (gst_value_subtract_double_range_double_range),
199         (gst_value_subtract_from_list), (gst_value_subtract_list),
200         (gst_value_can_compare), (gst_value_compare_fraction):
201         Cleanups, add comments, remove unneeded asserts.
202
203 2005-08-15  Thomas Vander Stichele  <thomas at apestaart dot org>
204
205         * tools/gst-launch.c: (event_loop):
206           don't convert NULL structures to strings
207
208 2005-08-15  Stefan Kost  <ensonic@users.sf.net>
209
210         * docs/gst/gstreamer-sections.txt:
211           made some defines private
212         * docs/gst/tmpl/gstconfig.sgml:
213         * docs/gst/tmpl/gstqueue.sgml:
214         * docs/gst/tmpl/gsttaglist.sgml:
215         * docs/gst/tmpl/gsttypes.sgml:
216         * docs/gst/tmpl/gstutils.sgml:
217         * docs/pwg/appendix-porting.xml:
218         * gst/base/gstbasesink.h:
219         * gst/base/gstbasesrc.c:
220         * gst/base/gstbasesrc.h:
221         * gst/elements/gstfakesink.c: (gst_fake_sink_class_init):
222         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init):
223         * gst/gstelement.c: (gst_element_class_init):
224         * gst/gstpad.c: (gst_pad_class_init):
225         * gst/gstqueue.c: (gst_queue_class_init):
226         * gst/gstxml.c: (gst_xml_class_init):
227           documented all undocumented signal inline
228         * libs/gst/controller/gst-controller.h:
229           added padding
230
231 2005-08-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
232
233         * docs/pwg/appendix-porting.xml:
234           Document _set_link_function -> _set_setcaps_function.
235
236 2005-08-15  Thomas Vander Stichele  <thomas at apestaart dot org>
237
238         * check/Makefile.am:
239           add a .check target for running the check
240         * check/gst-libs/controller.c: (GST_START_TEST):
241           cosmetic fixups
242         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
243           complete checks for gstbuffer; would be nice if I could get the
244           gcov stuff to work so I can see if I actually completed gstbuffer.c
245         * check/gstcheck.h:
246           add ASSERT_BUFFER_REFCOUNT
247
248 2005-08-13  Tim-Philipp Müller  <tim at centricular dot net>
249
250         * docs/gst/gstreamer-sections.txt:
251         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
252         * gst/gsttag.h:
253           Add GST_TAG_LANGUAGE_CODE as we have in 0.8, and don't
254           spew out a warning if a tag that is already registered
255           is re-registered, unless it is re-registered with a 
256           different type (#308438).
257
258 2005-08-12  Tim-Philipp Müller  <tim at centricular dot net>
259
260         * docs/pwg/appendix-porting.xml:
261         * docs/pwg/building-state.xml:
262           Add some paragraphs about state changes in 0.9 to the PWG
263           and the porting guide, in particular about the new meaning
264           of GST_STATE_PAUSED and how to write state change functions
265           with concurrent access by multiple threads in mind.
266
267 2005-08-11  Stefan Kost  <ensonic@users.sf.net>
268
269         * docs/gst/gstreamer-docs.sgml:
270         * docs/libs/gstreamer-libs-docs.sgml:
271           added deprecation and since indexes
272         * libs/gst/controller/gst-controller.c:
273         * libs/gst/controller/gst-helper.c:
274           added since tags
275
276
277 2005-08-11  Wim Taymans  <wim@fluendo.com>
278
279         * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked),
280         (gst_proxy_pad_set_target), (gst_proxy_pad_get_target),
281         (gst_proxy_pad_dispose), (gst_ghost_pad_do_activate_push),
282         (gst_ghost_pad_do_link), (gst_ghost_pad_set_internal),
283         (gst_ghost_pad_new_notarget), (gst_ghost_pad_get_target),
284         (gst_ghost_pad_set_target):
285         Actually implement (re)setting the target on a ghostpad
286         as described in the docs.
287
288 2005-08-10  Tim-Philipp Müller  <tim at centricular dot net>
289
290         * gst/gst.c: (gst_init_check_with_popt_table), (init_pre):
291           Check whether GST_DEBUG_NO_COLOR environment variable is
292           set and disable coloured debug output if that is the case.
293
294 2005-08-10  Tim-Philipp Müller  <tim at centricular dot net>
295
296         * gst/base/gsttypefindhelper.c: (helper_find_peek),
297         (gst_type_find_helper):
298           The memory returned by gst_type_find_peek() needs to
299           stay valid until the end of a typefind function, and
300           typefind functions may keep results from different 
301           offsets around, so we can't just unref the buffer from
302           the previous _peek(), but have to save all buffers 
303           returned by _peek() until typefinding is done and only
304           free them then.
305
306 2005-08-09  Tim-Philipp Müller  <tim at centricular dot net>
307
308         * docs/gst/gstreamer-sections.txt:
309         * gst/gstutils.h:
310           New macros: GST_ROUND_UP_2() through GST_ROUND_UP_64().
311
312 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
313
314         * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
315           Fix a pretty good memleak.
316
317 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
318
319         * gst/gstiterator.h:
320           Fix wrong include and 'make distcheck'.
321
322 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
323
324         * gst/gstbin.c: (bin_bus_handler):
325           Use gst_element_post_message() instead.
326
327 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
328
329         * gst/base/gstadapter.h:
330         * gst/base/gstbasesink.h:
331         * gst/base/gstbasesrc.h:
332         * gst/base/gstbasetransform.h:
333         * gst/base/gstcollectpads.h:
334         * gst/base/gstpushsrc.h:
335         * gst/gstiterator.h:
336           Add padding to our base elements' class and instance structs and
337           to GstIterator (you will need to rebuild all plugins and apps!)
338
339 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
340
341         * gst/gstbin.c: (bin_bus_handler):
342           Make default message forwarding from child->bus to bin->bus
343           threadsafe and make it not emit warnings if the parent has no bus.
344
345 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
346
347         * gst/gstelement.c: (activate_pads):
348           On paused->ready, set pad->caps to NULL, as is the documented
349           behaviour in this state change. Fixes playback of series of
350           media files when visualization is enabled in Totem.
351
352 2005-08-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
353
354         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
355           Allow NULL as filter-caps (which means "any").
356
357 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
358
359         * docs/libs/gstreamer-libs-sections.txt:
360         * libs/gst/controller/gst-controller.c:
361         * libs/gst/controller/gst-controller.h:
362         * libs/gst/controller/gst-helper.c:
363           adding more entries to the docs and fix small doc-bugs
364
365 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
366
367         * docs/gst/gstreamer-docs.sgml:
368         * docs/gst/gstreamer-sections.txt:
369         * docs/gst/gstreamer.types:
370         * docs/gst/tmpl/gstbasesink.sgml:
371         * docs/gst/tmpl/gstbasesrc.sgml:
372         * docs/gst/tmpl/gstbasetransform.sgml:
373         * docs/gst/tmpl/gstfakesrc.sgml:
374         * gst/base/gstcollectpads.c:
375         * gst/base/gstcollectpads.h:
376         * libs/gst/controller/gst-controller.c:
377         * libs/gst/controller/gst-controller.h:
378         * libs/gst/controller/gst-helper.c:
379         * libs/gst/controller/gst-interpolation.c:
380         * libs/gst/controller/lib.c:
381           added long/short desc for controller docs
382           added collectpads base class docs
383           added correct includes to base-class docs
384
385 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
386
387         * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
388         (gst_test_mono_source_set_property),
389         (gst_test_mono_source_class_init), (GST_START_TEST),
390         (gst_controller_suite):
391         * docs/gst/gstreamer-docs.sgml:
392         * docs/gst/gstreamer-sections.txt:
393         * docs/gst/gstreamer.types:
394         * docs/libs/gstreamer-libs-docs.sgml:
395         * docs/libs/gstreamer-libs-sections.txt:
396         * gst/base/gstadapter.c:
397         * libs/gst/controller/gst-controller.c:
398         (gst_controlled_property_new), (gst_controlled_property_free),
399         (gst_controller_new_valist),
400         (gst_controller_remove_properties_valist),
401         (gst_controller_sink_values), (_gst_controller_finalize):
402         * libs/gst/controller/gst-controller.h:
403         * libs/gst/controller/gst-helper.c:
404         (gst_object_control_properties), (gst_object_uncontrol_properties),
405         (gst_object_get_controller), (gst_object_set_controller),
406         (gst_object_sink_values), (gst_object_get_value_arrays),
407         (gst_object_get_value_array):
408           more tests (and fixes) for the controller
409           more docs for the controller
410           integrated companies docs for the adapter 
411
412 2005-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
413
414         * check/elements/gstfakesrc.c: (setup_fakesrc), (cleanup_fakesrc),
415         (GST_START_TEST), (fakesrc_suite):
416           add tests for sizetype
417
418 2005-08-04  Andy Wingo  <wingo@pobox.com>
419
420         * gst/elements/gstcapsfilter.c: Reimplement using basetransform,
421         fixes buffer_alloc proxying among other things.
422
423         * gst/base/gstbasetransform.c:
424         * gst/base/gstbasetransform.h:
425         Revert patch to gstbasetransform from 7-28 removing
426         delay_configure.
427
428         * gst/base/gstbasetransform.h (GstBaseTransformClass.get_size):
429         * gst/base/gstbasetransform.c (gst_base_transform_get_size):
430         Semantics changed, should return not the size of the output buffer
431         but the byte size of a buffer with a given caps.
432
433         * gst/base/gstbasetransform.c (gst_base_transform_getcaps): Better
434         debug object.
435         (gst_base_transform_configure_caps): Don't set out_size here: (in,
436         out) are not the pad caps until setcaps finishes.
437         (gst_base_transform_buffer_alloc): Proxy the buffer_alloc for the
438         not-in-place case as well. Deal with changing from in-place to
439         not-in-place within calling pad_alloc_buffer. Still a bit
440         concerned about the overhead here...
441
442 2005-08-03  Andy Wingo  <wingo@pobox.com>
443
444         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): Not
445         fixating is an error.
446
447 2005-08-04  Edward Hervey  <edward@fluendo.com>
448
449         * gst/base/gstadapter.h: 
450         Added gst_adapter_get_type() to the header
451
452 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
453
454         * check/Makefile.am:
455         * check/gst-libs/controller.c:
456         * libs/gst/controller/gst-controller.c:
457         (gst_controller_new_valist):
458           added check test suite for the controller
459         * gst/base/gstpushsrc.c:
460           fixed a doc typo
461
462 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
463
464         * docs/gst/Makefile.am:
465         * docs/gst/gstreamer-docs.sgml:
466         * docs/gst/gstreamer-sections.txt:
467         * docs/gst/gstreamer.types:
468         * docs/gst/tmpl/gstfakesrc.sgml:
469         * gst/base/README:
470         * gst/base/gstbasesink.c:
471         * gst/base/gstbasesink.h:
472         * gst/base/gstbasesrc.c:
473         * gst/base/gstbasesrc.h:
474         * gst/base/gstbasetransform.c:
475         * gst/base/gstpushsrc.c:
476         * gst/base/gstpushsrc.h:
477           add short/long description docs to base classes
478           add pushsrc to the docs
479           remove consolidated doc fragments
480
481 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
482
483         * configure.ac:
484         * docs/libs/Makefile.am:
485         * docs/libs/gstreamer-libs-docs.sgml:
486         * docs/libs/gstreamer-libs-sections.txt:
487         * docs/libs/gstreamer-libs.types:
488         * examples/Makefile.am:
489         * examples/controller/.cvsignore:
490         * examples/controller/Makefile.am:
491         * examples/controller/audio-example.c: (main):
492         * libs/gst/Makefile.am:
493         * libs/gst/controller/.cvsignore:
494         * libs/gst/controller/Makefile.am:
495         * libs/gst/controller/gst-controller.c:
496         (on_object_controlled_property_changed), (gst_timed_value_compare),
497         (gst_timed_value_find),
498         (gst_controlled_property_set_interpolation_mode),
499         (gst_controlled_property_new), (gst_controlled_property_free),
500         (gst_controller_find_controlled_property),
501         (gst_controller_new_valist), (gst_controller_new),
502         (gst_controller_remove_properties_valist),
503         (gst_controller_remove_properties), (gst_controller_set),
504         (gst_controller_set_from_list), (gst_controller_unset),
505         (gst_controller_get), (gst_controller_get_all),
506         (gst_controller_sink_values), (gst_controller_get_value_arrays),
507         (gst_controller_get_value_array),
508         (gst_controller_set_interpolation_mode),
509         (_gst_controller_finalize), (_gst_controller_init),
510         (_gst_controller_class_init), (gst_controller_get_type):
511         * libs/gst/controller/gst-controller.h:
512         * libs/gst/controller/gst-helper.c: (g_object_control_properties),
513         (g_object_uncontrol_properties), (g_object_get_controller),
514         (g_object_set_controller), (g_object_sink_values),
515         (g_object_get_value_arrays), (g_object_get_value_array):
516         * libs/gst/controller/gst-interpolation.c:
517         (gst_controlled_property_find_timed_value_node),
518         (interpolate_none_get), (interpolate_trigger_get),
519         (interpolate_trigger_get_value_array):
520         * libs/gst/controller/lib.c: (gst_controller_init):
521         * pkgconfig/Makefile.am:
522         * pkgconfig/gstreamer-control-uninstalled.pc.in:
523         * pkgconfig/gstreamer-control.pc.in:
524         * testsuite/Makefile.am:
525         * testsuite/controller/.cvsignore:
526         * testsuite/controller/Makefile.am:
527         * testsuite/controller/interpolator.c: (main):
528           added controller code
529           removed dparam pc files
530
531 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
532         * gst/base/gstcollectpads.c: (gst_collectpads_finalize),
533         (gst_collectpads_stop):
534           Broadcast the condition when shutting down, to make sure we wake all
535           threads up. Shut down pads on finalize, for safety.
536
537 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
538         * gst/base/gstbasetransform.c: (gst_base_transform_init),
539         (gst_base_transform_handle_buffer),
540         (gst_base_transform_change_state):
541           Handle PAUSED->READY->PAUSED transition after negotiation
542           occurred already.
543         * gst/gstmessage.c: (gst_message_init):
544           Extra piece of debug for new messages.
545
546 2005-08-01  Stefan Kost  <ensonic@users.sf.net>
547
548         * configure.ac:
549         * docs/gst/tmpl/gstbasesrc.sgml:
550         * docs/gst/tmpl/gstelement.sgml:
551         * docs/gst/tmpl/gstevent.sgml:
552         * docs/gst/tmpl/gstfakesrc.sgml:
553         * docs/gst/tmpl/gstformat.sgml:
554         * docs/gst/tmpl/gstghostpad.sgml:
555         * docs/gst/tmpl/gstpad.sgml:
556         * docs/gst/tmpl/gstquery.sgml:
557         * docs/gst/tmpl/gststructure.sgml:
558         * docs/gst/tmpl/gsttaglist.sgml:
559         * docs/gst/tmpl/gstvalue.sgml:
560         * docs/libs/gstreamer-libs-docs.sgml:
561         * docs/libs/gstreamer-libs-sections.txt:
562         * docs/libs/gstreamer-libs.types:
563         * libs/gst/Makefile.am:
564         * libs/gst/control/.cvsignore:
565         * libs/gst/control/Makefile.am:
566         * libs/gst/control/control.c:
567         * libs/gst/control/control.h:
568         * libs/gst/control/dparam.c:
569         * libs/gst/control/dparam.h:
570         * libs/gst/control/dparam_smooth.c:
571         * libs/gst/control/dparam_smooth.h:
572         * libs/gst/control/dparamcommon.h:
573         * libs/gst/control/dparammanager.c:
574         * libs/gst/control/dparammanager.h:
575         * libs/gst/control/dplinearinterp.c:
576         * libs/gst/control/dplinearinterp.h:
577         * libs/gst/control/unitconvert.c:
578         * libs/gst/control/unitconvert.h:
579         * testsuite/Makefile.am:
580         * testsuite/dynparams/.cvsignore:
581         * testsuite/dynparams/Makefile.am:
582         * testsuite/dynparams/dparamstest.c:
583         * tools/Makefile.am:
584         * tools/gst-inspect.c: (print_element_info), (main):
585         * tools/gst-xmlinspect.c: (print_element_info), (main):
586           deactivate and remove dparams (libgstcontrol)
587
588 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
589
590         * gst/elements/gsttypefindelement.c:
591         (gst_type_find_element_have_type), (gst_type_find_element_init),
592         (stop_typefinding), (gst_type_find_element_handle_event),
593         (gst_type_find_element_chain), (gst_type_find_element_getrange):
594         * gst/elements/gsttypefindelement.h:
595           Set caps on all outgoing buffers, not just the first one.
596
597 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
598
599         * gst/elements/gsttypefindelement.c:
600         (gst_type_find_element_have_type),
601         (gst_type_find_element_check_set_buffer_caps),
602         (gst_type_find_element_init), (stop_typefinding),
603         (gst_type_find_element_handle_event),
604         (gst_type_find_element_chain), (gst_type_find_element_getrange):
605         * gst/elements/gsttypefindelement.h:
606           Set caps on first outgoing buffer when we've found the type.
607
608 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
609
610         * docs/gst/gstreamer-docs.sgml:
611         * docs/gst/gstreamer-sections.txt:
612         * docs/gst/tmpl/gstscheduler.sgml:
613         * docs/gst/tmpl/gstschedulerfactory.sgml:
614           Remove some old cruft from docs.
615
616 2005-07-31  Tim-Philipp Müller  <tim at centricular dot net>
617
618         * gst/gstpad.h:
619           Fix inline docs for GstPadLinkReturn.
620           
621         * gst/gststructure.c: (gst_structure_has_name):
622         * gst/gststructure.h:
623         * docs/gst/gstreamer-sections.txt:
624           New API: gst_structure_has_name().
625
626 2005-07-30  Tim-Philipp Müller  <tim at centricular dot net>
627
628         * configure.ac:
629           Use AC_SYS_LARGEFILE, which will set _FILE_OFFSET_BITS=64
630           and _LARGEFILE_SOURCE in config.h as required. Do not 
631           export those flags in our .pc files any longer (#142209).
632
633           Remove unused GST_DISABLE_OMEGA_COTHREADS stuff.
634
635         * gst/elements/gstfilesink.c: (gst_file_sink_class_init),
636         (gst_file_sink_do_seek), (gst_file_sink_event),
637         (gst_file_sink_get_current_offset), (gst_file_sink_render):
638           Redo seek/tell calls with large file support in mind; add some
639           debugging messages; add log message that tells us when large
640           file support is unavailable or not enabled for some reason.
641
642         * gst/elements/gstfilesrc.c: (gst_file_src_class_init):
643           Add log message that tells us when large file support 
644           is unavailable or not enabled for some reason.
645
646 2005-07-29  Wim Taymans  <wim@fluendo.com>
647
648         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
649         Added test for removing an element with ghostpad from a bin.
650         Fixed test as current implementation does the right thing.
651
652         * gst/gstghostpad.c: (gst_proxy_pad_class_init),
653         (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
654         (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
655         (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
656         (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
657         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
658         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
659         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
660         (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
661         (gst_proxy_pad_get_target), (gst_proxy_pad_init),
662         (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
663         (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
664         (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
665         (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
666         (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
667         (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
668         * gst/gstghostpad.h:
669         Clean up ghostpads, remove properties for internal stuff.
670         Make threadsafe.
671         Fix refcounting.
672         Prepare for switching targets, not all use cases work yet.
673
674 2005-07-29  Wim Taymans  <wim@fluendo.com>
675
676         * docs/design/part-gstghostpad.txt:
677         Small update.
678
679         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
680         (gst_bin_remove_func):
681         Unlinking pads while holding the bin LOCK is not a good
682         idea.
683
684         * gst/gstpad.c: (gst_pad_class_init),
685         (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
686         (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
687         No prob setting template after creating the pad.
688
689 2005-07-29  Jan Schmidt  <thaytan@mad.scientist.com>
690
691         * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
692         (gst_bus_peek), (gst_bus_source_dispatch),
693         (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
694         (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
695           gst_bus_poll may be called from other threads. Handle
696           this nicely by not making poll_data disappear off the
697           stack once gst_bus_poll returns.
698           gst_bus_peek now increments the refcount on the returned
699           message.
700
701 2005-07-29  Wim Taymans  <wim@fluendo.com>
702
703         * docs/design/part-gstghostpad.txt:
704         Overview of current GhostPad datastructures and use
705         cases for changing the target.
706
707 2005-07-28  Wim Taymans  <wim@fluendo.com>
708
709         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
710         Added checks for hierarchy consistency whan adding linked
711         elements to bins.
712
713         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
714         Added check to test element scheduling without bin/pipeline.
715
716         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
717         First add elements to bin, then link.
718         
719         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
720         (gst_bin_remove_func):
721         Unlink pads from elements added/removed from bin to maintain
722         hierarchy consistency.
723
724 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
725
726         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
727         (gst_base_transform_handle_buffer):
728         * gst/base/gstbasetransform.h:
729           Remove broken delay_configure (fixes renegotiation of software
730           scaling pipelines); remove some leftover printf()s.
731
732 2005-07-28  Wim Taymans  <wim@fluendo.com>
733
734         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
735         Added some more tests for wrong hierarchy
736
737         * docs/design/part-overview.txt:
738         Some updates.
739
740         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
741         Cleanups.
742
743         * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
744         (gst_element_dispose):
745         Some more cleanups.
746
747         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
748         (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
749         (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
750         (gst_pad_set_caps), (gst_pad_send_event):
751         Check for correct hierarchy when linking pads. Moving to
752         strict requirement for ghostpads when linking elements in
753         different bins.
754
755         * gst/gstpad.h:
756         Clean ups. Added WRONG_HIERARCHY return value.
757
758 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
759
760         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
761           Better debug if no transform is possible.
762
763 2005-07-27  Wim Taymans  <wim@fluendo.com>
764
765         * docs/random/wtay/network-transp:
766         Some old doc I had.
767
768 2005-07-27  Wim Taymans  <wim@fluendo.com>
769
770         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
771         (gst_dp_event_from_packet):
772         Fix serialization of seek events.
773
774 2005-07-27  Wim Taymans  <wim@fluendo.com>
775
776         * check/gst-libs/gdp.c: (GST_START_TEST):
777         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
778         Fix compilation and fix event serialization.
779
780 2005-07-27  Wim Taymans  <wim@fluendo.com>
781
782         * CHANGES-0.9:
783         * docs/design/part-TODO.txt:
784         * docs/design/part-events.txt:
785         Some docs updates
786
787         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
788         (gst_base_sink_event), (gst_base_sink_do_sync),
789         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
790         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
791         (gst_base_src_do_seek), (gst_base_src_event_handler),
792         (gst_base_src_loop):
793         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
794         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
795         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
796         (gst_base_transform_event), (gst_base_transform_handle_buffer),
797         (gst_base_transform_set_passthrough),
798         (gst_base_transform_is_passthrough):
799         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
800         * gst/elements/gstfilesink.c: (gst_file_sink_event):
801         Event updates.
802
803         * gst/gstbuffer.h:
804         Use faster casts.
805
806         * gst/gstelement.c: (gst_element_seek):
807         * gst/gstelement.h:
808         Update gst_element_seek.
809
810         * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
811         (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
812         (gst_event_new_flush_start), (gst_event_new_flush_stop),
813         (gst_event_new_eos), (gst_event_new_newsegment),
814         (gst_event_parse_newsegment), (gst_event_new_tag),
815         (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
816         (gst_event_parse_qos), (gst_event_new_seek),
817         (gst_event_parse_seek), (gst_event_new_navigation):
818         * gst/gstevent.h:
819         Make GstEvent use GstStructure. Add parsing code, make sure the
820         API is sufficiently generic.
821         Mark possible directions of events and serialization.
822
823         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
824         (_gst_message_copy), (gst_message_new_segment_start),
825         (gst_message_new_segment_done), (gst_message_new_custom),
826         (gst_message_parse_segment_start),
827         (gst_message_parse_segment_done):
828         Small cleanups.
829
830         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
831         (gst_pad_set_caps), (gst_pad_send_event):
832         Update for new events. 
833         Catch events sent in wrong directions.
834
835         * gst/gstqueue.c: (gst_queue_link_src),
836         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
837         (gst_queue_handle_src_query):
838         Event updates.
839
840         * gst/gsttag.c:
841         * gst/gsttag.h:
842         Remove event code from this file.
843
844         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
845         (gst_dp_event_from_packet):
846         Event updates.
847
848 2005-07-27  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
849
850         * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
851         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
852         (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
853           Make debugging actually useful.
854
855 2005-07-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
856
857         * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
858         (gst_pad_fixate_caps):
859           Implement default fixation once again, so that gst_pad_fixate()
860           actually does anything at all. This probably needs to be some
861           sort of a last resort, and use profile-based fixation first, but
862           since that doesn't exist yet, this is the best we have. Fixes
863           visualization in Totem.
864
865 2005-07-22  Wim Taymans  <wim@fluendo.com>
866
867         * docs/design/part-events.txt:
868         Small update.
869
870         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
871         (gst_base_sink_do_sync), (gst_base_sink_activate_push),
872         (gst_base_sink_activate_pull):
873         Some more comments.
874
875         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
876         (gst_fake_src_create):
877         Fix handoff marshall.
878
879         * gst/elements/gstidentity.c: (gst_identity_class_init),
880         (gst_identity_transform_ip):
881         We're a real inplace element.
882
883         * gst/gstbus.c: (gst_bus_post):
884         Added some comments.
885
886         * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
887         * tests/muxing/case1.c: (main):
888         * tests/sched/dynamic-pipeline.c: (main):
889         * tests/sched/interrupt1.c: (main):
890         * tests/sched/interrupt2.c: (main):
891         * tests/sched/interrupt3.c: (main):
892         * tests/sched/runxml.c: (main):
893         * tests/sched/sched-stress.c: (main):
894         * tests/seeking/seeking1.c: (event_received), (main):
895         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
896         (main):
897         * tests/threadstate/threadstate3.c: (main):
898         * tests/threadstate/threadstate4.c: (main):
899         * tests/threadstate/threadstate5.c: (main):
900         Fix the tests.
901
902 2005-07-21  Wim Taymans  <wim@fluendo.com>
903
904         * docs/design/part-seeking.txt:
905         Some small additions.
906
907         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
908         (gst_base_sink_get_times), (gst_base_sink_do_sync),
909         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
910         * gst/base/gstbasesink.h:
911         discont values are gint64, handle the math correctly.
912
913         * gst/base/gstbasesrc.c: (gst_base_src_loop):
914         Make the basesrc report error if the source pad is not linked.
915
916         * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
917         (gst_queue_loop), (gst_queue_handle_src_query),
918         (gst_queue_src_activate_push):
919         Make queue collect data even if the srcpad is not linked.
920         Start pushing out data as soon as it is linked.
921
922         * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
923         * gst/gstutils.h:
924         Added gst_flow_get_name() to ease error reporting.
925
926 2005-07-20  Wim Taymans  <wim@fluendo.com>
927
928         * gst/gstmessage.c: (gst_message_new_segment_start),
929         (gst_message_new_segment_done), (gst_message_parse_segment_start),
930         (gst_message_parse_segment_done):
931         * gst/gstmessage.h:
932         Added a bunch of messages for advanced seeking.
933
934         * gst/parse/grammar.y:
935         * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
936         (gst_dpman_state_changed):
937         Fix some new-pad -> pad-added signals
938
939 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
940
941         * docs/manual/appendix-porting.xml:
942         * docs/pwg/appendix-porting.xml:
943           Document new-pad/state-change signal renames and the FixedList
944           type rename.
945
946 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
947
948         * docs/manual/advanced-autoplugging.xml:
949         * docs/manual/basics-helloworld.xml:
950         * docs/manual/basics-pads.xml:
951         * docs/random/ds/0.9-suggested-changes:
952         * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
953         * gst/gstelement.h:
954         * gst/gstevent.h:
955         * gst/gstformat.h:
956         * gst/gstquery.h:
957         * gst/gststructure.c: (gst_structure_value_get_generic_type),
958         (gst_structure_parse_array), (gst_structure_parse_value):
959         * gst/gstvalue.c: (gst_type_is_fixed),
960         (gst_value_list_prepend_value), (gst_value_list_append_value),
961         (gst_value_list_get_size), (gst_value_list_get_value),
962         (gst_value_transform_array_string), (gst_value_serialize_array),
963         (gst_value_deserialize_array), (gst_value_intersect_array),
964         (gst_value_is_fixed), (_gst_value_initialize):
965         * gst/gstvalue.h:
966           GstElement::new-pad -> pad-added, GstElement::state-change ->
967           state-changed, GstValueFixedList -> GstValueArray, add format and
968           flags as their own arguments in gst_element_seek() (should improve
969           "bindeability"), remove function generators since they don't work
970           under a whole bunch of compilers (they were deprecated already
971           anyway).
972
973 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
974
975         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
976         (_gst_debug_register_funcptr):
977         * gst/gstinfo.h:
978           Fix illegal cast on some platforms (#309253).
979
980 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
981
982         * gst/gstmessage.c: (gst_message_new_custom):
983         * gst/gstmessage.h:
984           Add _new_custom, make _new_application a macro to _new_custom.
985
986 2005-07-20  Wim Taymans  <wim@fluendo.com>
987
988         * gst/base/gstbasesrc.c: (gst_base_src_init),
989         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
990         * gst/base/gstbasesrc.h:
991         Add a gboolean to decide when to push out a discont.
992
993         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
994         (gst_queue_loop), (gst_queue_handle_src_query),
995         (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
996         (gst_queue_set_property), (gst_queue_get_property):
997         Some cleanups.
998
999         * tests/threadstate/threadstate1.c: (main):
1000         Make a thread test compile and run... very silly..
1001
1002
1003 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1004
1005         * docs/manual/appendix-porting.xml:
1006           Mention removal of libgstgconf-0.9.la and existence of gconf
1007           elements.
1008
1009 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1010
1011         * docs/pwg/advanced-clock.xml:
1012         * docs/pwg/appendix-porting.xml:
1013         * docs/pwg/intro-preface.xml:
1014         * docs/pwg/other-base.xml:
1015         * docs/pwg/other-manager.xml:
1016         * docs/pwg/other-nton.xml:
1017         * docs/pwg/other-ntoone.xml:
1018         * docs/pwg/other-oneton.xml:
1019         * docs/pwg/pwg.xml:
1020           Document base classes, update sections of n-to-1 and 1-to-n (muxer,
1021           demuxer), remove n-to-n (was never written), fix some code examples
1022           and links and update the porting section to include all this.
1023
1024 2005-07-19  Wim Taymans  <wim@fluendo.com>
1025
1026         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
1027         (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
1028         (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
1029         (gst_queue_src_activate_push), (gst_queue_change_state),
1030         (gst_queue_get_property):
1031         * gst/gstqueue.h:
1032         Propagate GstFlowReturn more intelligently upstream and output
1033         an ERROR/EOS when streaming stopped due to fatal error.
1034
1035 2005-07-19  Wim Taymans  <wim@fluendo.com>
1036
1037         * tools/gst-launch.c: (check_intr), (event_loop), (main):
1038         Don't block forever for the state change to complete, the
1039         pipeline already did with a sensible timeout.
1040
1041 2005-07-19  Wim Taymans  <wim@fluendo.com>
1042
1043         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
1044         Make sure we never call the create function is we
1045         got deactivated.
1046
1047 2005-07-19  Andy Wingo  <wingo@pobox.com>
1048
1049         * gst/parse/parse.l: Attempt to solve bug #172815.
1050
1051 2005-07-19  Wim Taymans  <wim@fluendo.com>
1052
1053         * docs/design/part-clocks.txt:
1054         * docs/design/part-events.txt:
1055         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
1056         Small docs updates.
1057         Only update the seeking values when we are not
1058         busy streaming.
1059
1060 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
1061
1062         * gst/base/gstbasesrc.c: (gst_base_src_loop):
1063           Oops, ignore the result of gst_pad_push_event here.
1064
1065 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
1066
1067         * gst/base/gstbasesrc.c: (gst_base_src_loop),
1068         (gst_base_src_activate_push):
1069           Send discont event from the loop function, as pads
1070           aren't activated yet in the activate_push handler.
1071
1072         * gst/gstbin.c: (bin_bus_handler):
1073           Don't leak element name.
1074
1075 2005-07-18  Andy Wingo  <wingo@pobox.com>
1076
1077         * configure.ac: Use AS_LIBTOOL_TAGS.
1078
1079 2005-07-18  Wim Taymans  <wim@fluendo.com>
1080
1081         * docs/gst/gstreamer.types:
1082         Remove deleted types.
1083
1084 2005-07-18  Wim Taymans  <wim@fluendo.com>
1085
1086         * check/elements/gstfakesrc.c: (GST_START_TEST):
1087         * configure.ac:
1088         * gst/Makefile.am:
1089         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
1090         (init_popt_callback):
1091         * gst/gst.h:
1092         * gst/gst_private.h:
1093         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
1094         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
1095         * gst/gstbin.h:
1096         * gst/gstbus.h:
1097         * gst/gstconfig.h.in:
1098         * gst/gstelement.c: (gst_element_class_init),
1099         (gst_element_set_base_time), (gst_element_get_base_time),
1100         (iterator_fold_with_resync), (gst_element_change_state),
1101         (gst_element_dispose), (gst_element_get_bus):
1102         * gst/gstelement.h:
1103         * gst/gstelementfactory.h:
1104         * gst/gsterror.c: (_gst_core_errors_init):
1105         * gst/gsterror.h:
1106         * gst/gstevent.h:
1107         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
1108         * gst/gstindex.c:
1109         * gst/gstinfo.c: (_gst_debug_init):
1110         * gst/gstmessage.c: (_gst_message_copy):
1111         * gst/gstmessage.h:
1112         * gst/gstminiobject.h:
1113         * gst/gstobject.c:
1114         * gst/gstobject.h:
1115         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
1116         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
1117         * gst/gstpad.h:
1118         * gst/gstparse.h:
1119         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
1120         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
1121         (gst_pipeline_get_last_stream_time):
1122         * gst/gstpipeline.h:
1123         * gst/gstpluginfeature.h:
1124         * gst/gstquery.h:
1125         * gst/gstscheduler.c:
1126         * gst/gstscheduler.h:
1127         * gst/gststructure.h:
1128         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
1129         (gst_task_finalize), (gst_task_func), (gst_task_create),
1130         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
1131         (gst_task_stop), (gst_task_pause):
1132         * gst/gsttask.h:
1133         * gst/gsttypefind.h:
1134         * gst/gsttypes.h:
1135         * gst/registries/gstlibxmlregistry.c: (load_feature),
1136         (gst_xml_registry_load), (gst_xml_registry_save_feature):
1137         * gst/registries/gstxmlregistry.c:
1138         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
1139         * gst/schedulers/threadscheduler.c:
1140         * libs/gst/control/dparammanager.h:
1141         * tools/gst-inspect.c: (print_element_list),
1142         (print_plugin_features), (print_element_features):
1143         * tools/gst-xmlinspect.c: (print_element_list),
1144         (print_plugin_info), (main):
1145         Removed plugable schedulers.
1146         Removed Scheduler/Manager from elements.
1147         Removed gsttypes.h, rearranged includes.
1148         Removed dependency pad<->element, element<>pipeline, and
1149         various others,  fix includes.
1150         implement gst_pad_get_parent() with gst_object_get_parent()
1151         Make GstTask sefcontained.
1152         Fix _get_state() on GstBin, it did not return ASYNC with a 0
1153         timeout.
1154         Fix endless loop in iterator_fold_with_resync.
1155
1156
1157 2005-07-18  Wim Taymans  <wim@fluendo.com>
1158
1159         * gst/Makefile.am:
1160         * gst/gstarch.h:
1161         Remove old file.
1162
1163 2005-07-18  Wim Taymans  <wim@fluendo.com>
1164
1165         * gst/Makefile.am:
1166         No more cothreads.h
1167
1168 2005-07-18  Wim Taymans  <wim@fluendo.com>
1169
1170         * gst/cothreads.c:
1171         * gst/cothreads.h:
1172         Let's remove these.
1173
1174 2005-07-18  Wim Taymans  <wim@fluendo.com>
1175
1176         * docs/design/part-dynamic.txt:
1177         * docs/design/part-events.txt:
1178         * docs/design/part-seeking.txt:
1179         Some more docs in the works.
1180
1181         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
1182         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
1183         (gst_base_transform_setcaps), (gst_base_transform_get_size),
1184         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
1185         (gst_base_transform_handle_buffer),
1186         (gst_base_transform_sink_activate_push),
1187         (gst_base_transform_src_activate_pull),
1188         (gst_base_transform_set_passthrough),
1189         (gst_base_transform_is_passthrough):
1190         Refcounting fixes.
1191
1192         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
1193         Cleanups.
1194
1195         * gst/gstevent.c: (gst_event_finalize):
1196         Set SRC to NULL.
1197
1198         * gst/gstutils.c: (gst_element_unlink),
1199         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
1200         (gst_pad_proxy_setcaps):
1201         * gst/gstutils.h:
1202         Add _get_parent_element() to get a pads parent as an element.
1203
1204 2005-07-18  Wim Taymans  <wim@fluendo.com>
1205
1206         * check/gst/gstbin.c: (GST_START_TEST):
1207         Remove bogus test.
1208
1209 2005-07-18  Wim Taymans  <wim@fluendo.com>
1210
1211         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
1212         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
1213         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
1214         (gst_base_sink_event), (gst_base_sink_do_sync),
1215         (gst_base_sink_chain), (gst_base_sink_loop),
1216         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
1217         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
1218         Refcounting fixes.
1219         Fix logic for returning ASYNC when not prerolled.
1220
1221 2005-07-18  Wim Taymans  <wim@fluendo.com>
1222
1223         * gst/gstqueue.c: (gst_queue_handle_sink_event):
1224         Fix nasty refcount bug.
1225
1226 2005-07-16 Philippe Khalaf <burger@speedy.org>
1227         * gst/elements/gstfdsrc.c:
1228         * gst/elements/gstfdsrc.h:
1229         * gst/elements/gstelements.c:
1230         * gst/elements/Makefile.am:
1231         Ported fdsrc to 0.9.
1232
1233 2005-07-16  Wim Taymans  <wim@fluendo.com>
1234
1235         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1236         (gst_base_sink_do_sync):
1237         Fix compile error.
1238
1239 2005-07-16  Wim Taymans  <wim@fluendo.com>
1240
1241         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1242         (gst_base_sink_event), (gst_base_sink_get_times),
1243         (gst_base_sink_do_sync), (gst_base_sink_change_state):
1244         * gst/base/gstbasesink.h:
1245         Store and use discont values when syncing buffers as described
1246         in design docs.
1247         
1248         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
1249         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
1250         (gst_base_src_activate_push):
1251         Push discont event when starting.
1252
1253         * gst/elements/gstidentity.c: (gst_identity_transform):
1254         Small cleanups.
1255
1256         * gst/gstbin.c: (gst_bin_change_state):
1257         Small cleanups in base_time  distribution.
1258
1259         * gst/gstelement.c: (gst_element_set_base_time),
1260         (gst_element_get_base_time), (gst_element_change_state):
1261         * gst/gstelement.h:
1262         Added methods for the base_time of the element.
1263         Some MT fixes.
1264
1265         * gst/gstpipeline.c: (gst_pipeline_send_event),
1266         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
1267         (gst_pipeline_get_last_stream_time):
1268         * gst/gstpipeline.h:
1269         MT fixes.
1270         Handle seeking as described in design doc, remove stream_time
1271         hack.
1272         Cleanups clock and stream_time selection code. Added accessors
1273         for the stream_time.
1274         
1275
1276 2005-07-16  Andy Wingo  <wingo@pobox.com>
1277
1278         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
1279         (#305291).
1280
1281 2005-07-16  Wim Taymans  <wim@fluendo.com>
1282
1283         * check/gst/gstbin.c: (GST_START_TEST):
1284         Make elements silent as the deep_notify refs the
1285         parent, which might make the test fail.
1286
1287         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
1288         Don't hold the lock for too long.
1289
1290 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
1291
1292         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
1293           Don't unref the caps we passed to gst_caps_make_writable() after
1294           passing them. gst_caps_make_writable() will do that for us.
1295
1296 2005-07-15  Andy Wingo  <wingo@pobox.com>
1297
1298         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
1299         (#157311).
1300
1301         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
1302         own marshalling function for the handoff signal. Properly type the
1303         buffer as a buffer. Fixes some warnings. Should do a more general
1304         solution.
1305         (gst_identity_class_init): Plug into the right marshaller.
1306
1307 2005-07-15  Wim Taymans  <wim@fluendo.com>
1308
1309         * docs/design/part-TODO.txt:
1310         * docs/design/part-clocks.txt:
1311         * docs/design/part-element-sink.txt:
1312         * docs/design/part-events.txt:
1313         * docs/design/part-gstpipeline.txt:
1314         Updated docs, mostly DISCONT related.
1315
1316 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
1317
1318         * docs/pwg/building-pads.xml:
1319           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
1320
1321 2005-07-15  Andy Wingo  <wingo@pobox.com>
1322
1323         * tools/gst-typefind.c: Update, add copyright block.
1324
1325         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
1326         Normalize and truncate caps before fixation.
1327
1328         * gst/gstcaps.h:
1329         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
1330         discards all but the first structure from its argument.
1331
1332 2005-07-15  Wim Taymans  <wim@fluendo.com>
1333
1334         * gst/base/gstbasetransform.c: (gst_base_transform_init),
1335         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
1336         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
1337         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
1338         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
1339         (gst_base_transform_chain), (gst_base_transform_change_state),
1340         (gst_base_transform_set_passthrough),
1341         (gst_base_transform_is_passthrough):
1342         * gst/base/gstbasetransform.h:
1343         Make passthrough work using the bufferpools.
1344         Changed API a bit, subclasses have to write into a buffer
1345         provided by the base class.
1346         More debug info in nego functions.
1347         
1348         * gst/elements/gstidentity.c: (gst_identity_init),
1349         (gst_identity_transform):
1350         Port to new base class.
1351
1352 2005-07-15  Wim Taymans  <wim@fluendo.com>
1353
1354         * gst/gstmessage.c: (gst_message_new_state_changed):
1355         * tools/gst-launch.c: (event_loop), (main):
1356         Totally dump messages in -launch with the -m option.
1357         Fix message name for State messages,
1358
1359 2005-07-14  Wim Taymans  <wim@fluendo.com>
1360
1361         * gst/base/gstbasesrc.c: (gst_base_src_loop):
1362         Post error messages on errors.
1363
1364 2005-07-14  Wim Taymans  <wim@fluendo.com>
1365
1366         * gst/gstcaps.c: (gst_caps_do_simplify):
1367         Remove debug info.
1368
1369         * gst/gsterror.h:
1370         Define error for stream stopped.
1371
1372         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1373         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
1374         Do proper return values.
1375
1376         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
1377         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
1378         (gst_pad_get_range):
1379         Better return values.
1380
1381         * gst/gstpad.h:
1382         Reorganise return values, add macro to check for fatal errors.
1383
1384         * gst/gstqueue.c: (gst_queue_chain):
1385         Return proper GstFlowReturn values,
1386
1387 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
1388
1389         * docs/gst/gstreamer-sections.txt:
1390         * docs/gst/gstreamer.types:
1391         * docs/gst/tmpl/gst.sgml:
1392         * docs/gst/tmpl/gstbasesink.sgml:
1393         * docs/gst/tmpl/gstbasesrc.sgml:
1394         * docs/gst/tmpl/gstbasetransform.sgml:
1395         * docs/gst/tmpl/gstbin.sgml:
1396         * docs/gst/tmpl/gstbuffer.sgml:
1397         * docs/gst/tmpl/gstcaps.sgml:
1398         * docs/gst/tmpl/gstclock.sgml:
1399         * docs/gst/tmpl/gstcompat.sgml:
1400         * docs/gst/tmpl/gstconfig.sgml:
1401         * docs/gst/tmpl/gstelement.sgml:
1402         * docs/gst/tmpl/gstelementdetails.sgml:
1403         * docs/gst/tmpl/gstelementfactory.sgml:
1404         * docs/gst/tmpl/gstenumtypes.sgml:
1405         * docs/gst/tmpl/gsterror.sgml:
1406         * docs/gst/tmpl/gstevent.sgml:
1407         * docs/gst/tmpl/gstfakesink.sgml:
1408         * docs/gst/tmpl/gstfakesrc.sgml:
1409         * docs/gst/tmpl/gstfilesink.sgml:
1410         * docs/gst/tmpl/gstfilesrc.sgml:
1411         * docs/gst/tmpl/gstfilter.sgml:
1412         * docs/gst/tmpl/gstformat.sgml:
1413         * docs/gst/tmpl/gstghostpad.sgml:
1414         * docs/gst/tmpl/gstimplementsinterface.sgml:
1415         * docs/gst/tmpl/gstindex.sgml:
1416         * docs/gst/tmpl/gstindexfactory.sgml:
1417         * docs/gst/tmpl/gstinfo.sgml:
1418         * docs/gst/tmpl/gstiterator.sgml:
1419         * docs/gst/tmpl/gstmacros.sgml:
1420         * docs/gst/tmpl/gstmemchunk.sgml:
1421         * docs/gst/tmpl/gstminiobject.sgml:
1422         * docs/gst/tmpl/gstobject.sgml:
1423         * docs/gst/tmpl/gstpad.sgml:
1424         * docs/gst/tmpl/gstpadtemplate.sgml:
1425         * docs/gst/tmpl/gstparse.sgml:
1426         * docs/gst/tmpl/gstpipeline.sgml:
1427         * docs/gst/tmpl/gstplugin.sgml:
1428         * docs/gst/tmpl/gstpluginfeature.sgml:
1429         * docs/gst/tmpl/gstquery.sgml:
1430         * docs/gst/tmpl/gstqueue.sgml:
1431         * docs/gst/tmpl/gstregistry.sgml:
1432         * docs/gst/tmpl/gstregistrypool.sgml:
1433         * docs/gst/tmpl/gstscheduler.sgml:
1434         * docs/gst/tmpl/gstschedulerfactory.sgml:
1435         * docs/gst/tmpl/gststructure.sgml:
1436         * docs/gst/tmpl/gstsystemclock.sgml:
1437         * docs/gst/tmpl/gsttaglist.sgml:
1438         * docs/gst/tmpl/gsttagsetter.sgml:
1439         * docs/gst/tmpl/gsttrace.sgml:
1440         * docs/gst/tmpl/gsttrashstack.sgml:
1441         * docs/gst/tmpl/gsttypefind.sgml:
1442         * docs/gst/tmpl/gsttypefindfactory.sgml:
1443         * docs/gst/tmpl/gsttypes.sgml:
1444         * docs/gst/tmpl/gsturihandler.sgml:
1445         * docs/gst/tmpl/gsturitype.sgml:
1446         * docs/gst/tmpl/gstutils.sgml:
1447         * docs/gst/tmpl/gstvalue.sgml:
1448         * docs/gst/tmpl/gstversion.sgml:
1449         * docs/gst/tmpl/gstxml.sgml:
1450         * docs/libs/tmpl/gstcontrol.sgml:
1451         * docs/libs/tmpl/gstdataprotocol.sgml:
1452         * docs/libs/tmpl/gstdparam.sgml:
1453         * docs/libs/tmpl/gstdplinint.sgml:
1454         * docs/libs/tmpl/gstdpman.sgml:
1455         * docs/libs/tmpl/gstdpsmooth.sgml:
1456         * docs/libs/tmpl/gstgetbits.sgml:
1457         * docs/libs/tmpl/gstunitconvert.sgml:
1458         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
1459         (gst_push_src_base_init), (gst_push_src_class_init),
1460         (gst_push_src_init), (gst_push_src_create):
1461         * gst/base/gstpushsrc.h:
1462         * gst/elements/gstelements.c:
1463         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
1464         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
1465         (gst_fake_sink_init), (gst_fake_sink_set_property),
1466         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
1467         (gst_fake_sink_event), (gst_fake_sink_preroll),
1468         (gst_fake_sink_render), (gst_fake_sink_change_state):
1469         * gst/elements/gstfakesink.h:
1470         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
1471         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
1472         (gst_fake_src_base_init), (gst_fake_src_class_init),
1473         (gst_fake_src_init), (gst_fake_src_event_handler),
1474         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
1475         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
1476         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
1477         (gst_fake_src_create_buffer), (gst_fake_src_create),
1478         (gst_fake_src_start), (gst_fake_src_stop):
1479         * gst/elements/gstfakesrc.h:
1480         * gst/elements/gstfilesink.c: (_do_init),
1481         (gst_file_sink_base_init), (gst_file_sink_class_init),
1482         (gst_file_sink_init), (gst_file_sink_dispose),
1483         (gst_file_sink_set_location), (gst_file_sink_set_property),
1484         (gst_file_sink_get_property), (gst_file_sink_open_file),
1485         (gst_file_sink_close_file), (gst_file_sink_query),
1486         (gst_file_sink_event), (gst_file_sink_render),
1487         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
1488         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
1489         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
1490         * gst/elements/gstfilesink.h:
1491         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
1492         (gst_file_src_class_init), (gst_file_src_init),
1493         (gst_file_src_finalize), (gst_file_src_set_location),
1494         (gst_file_src_set_property), (gst_file_src_get_property),
1495         (gst_file_src_map_region), (gst_file_src_map_small_region),
1496         (gst_file_src_create_mmap), (gst_file_src_create_read),
1497         (gst_file_src_create), (gst_file_src_is_seekable),
1498         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
1499         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
1500         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
1501         (gst_file_src_uri_handler_init):
1502         * gst/elements/gstfilesrc.h:
1503           more autistic cleanliness in functions/names/defines
1504
1505 2005-07-13  Andy Wingo  <wingo@pobox.com>
1506
1507         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
1508         source couldn't negotiate.
1509
1510         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
1511         connections again.
1512
1513         * gst/gstutils.h:
1514         * gst/gstutils.c (gst_element_link_pads_filtered): New old
1515         function. I am channeling Hades. Put your boots on suckers!!!
1516
1517 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
1518
1519         * testsuite/caps/Makefile.am:
1520         * testsuite/caps/value_compare.c:
1521         * testsuite/caps/value_intersect.c:
1522         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
1523           move two testsuite apps over to the check dir
1524
1525 2005-07-12  Wim Taymans  <wim@fluendo.com>
1526
1527         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
1528         Added more debug info in the negotiate process.
1529
1530         * gst/gstmessage.h:
1531         Prepare for segment playback.
1532
1533         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
1534         Better debugging.
1535
1536         * gst/gstutils.c:
1537         Some more docs.
1538
1539         * tools/gst-launch.c: (main):
1540         NULL pipeline on errors.
1541
1542 2005-07-12  Andy Wingo  <wingo@pobox.com>
1543
1544         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
1545         not it comes from a malloc region. Make sure our copy gets freed.
1546
1547 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1548
1549         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
1550         * check/gst/gstmessage.c: (GST_START_TEST):
1551         * check/gst/gststructure.c: (GST_START_TEST),
1552         (gst_structure_suite), (main):
1553           more testing
1554         * gst/gstelement.c: (gst_element_message_full):
1555           clean up GError and debug string now that they get copied
1556         * gst/gstmessage.c: (gst_message_new_error),
1557         (gst_message_new_warning), (gst_message_parse_error),
1558         (gst_message_parse_warning):
1559           use GST_TYPE_G_ERROR for structure_new, and take copies of
1560           arguments, so that we don't mess up refcounting
1561
1562 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1563
1564         * check/Makefile.am:
1565           add per-test valgrind targets
1566         * check/gst-libs/gdp.c: (GST_START_TEST),
1567         (gst_data_protocol_suite), (main):
1568           clean up
1569
1570 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1571
1572         * check/Makefile.am:
1573           instate more valgrindable tests
1574         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1575         (GST_START_TEST), (fakesrc_suite):
1576         * check/gst/gstpad.c: (GST_START_TEST):
1577         * check/gst/gststructure.c: (GST_START_TEST):
1578           fix test leaks
1579         * docs/gst/tmpl/gstminiobject.sgml:
1580         * gst/gstpad.c: (gst_pad_finalize):
1581           fix the static mutex leak
1582
1583 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1584
1585         * check/Makefile.am:
1586           add two more tests for valgrinding
1587         * check/gst/gstvalue.c: (GST_START_TEST):
1588           test refcount of deserialized buffer, found a leak
1589         * docs/gst/gstreamer-docs.sgml:
1590         * docs/gst/gstreamer-sections.txt:
1591         * docs/gst/gstreamer.types:
1592         * docs/gst/tmpl/gstminiobject.sgml:
1593           add miniobject to docs
1594         * gst/gstminiobject.c:
1595           add some docs
1596         * gst/gstvalue.c: (gst_value_deserialize_buffer),
1597         (gst_string_unwrap):
1598           fix a hard-to-find invalid write for one of the tests
1599           fix a leak for deserialized buffers
1600
1601 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1602
1603         * docs/pwg/advanced-events.xml:
1604         * docs/pwg/advanced-request.xml:
1605         * docs/pwg/advanced-scheduling.xml:
1606         * docs/pwg/appendix-porting.xml:
1607         * docs/pwg/building-boiler.xml:
1608         * docs/pwg/intro-preface.xml:
1609         * docs/pwg/other-ntoone.xml:
1610           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
1611           of example code and explanation for pad activation, loop() and
1612           getrange() functions and a bit more. Remove old comments pointing
1613           to loop-functions.
1614         * examples/pwg/Makefile.am:
1615           Add loop/getrange examples.
1616
1617 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1618
1619         * configure.ac:
1620           check for valgrind binary + some fixes
1621         * check/gst.supp:
1622           valgrind suppressions for the tests
1623         * check/Makefile.am:
1624           add a valgrind: target that valgrinds the unit tests
1625         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
1626         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
1627         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1628         * check/gst/gstghostpad.c:
1629           added some cleanup
1630         * check/gst/gstdata.c:
1631           removed
1632         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
1633         (thread_unref), (gst_mini_object_suite), (main):
1634           added
1635         * gst/gst.c: (gst_deinit):
1636         * gst/gst.h:
1637           add a method to clean up.
1638         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1639         (gst_system_clock_obtain):
1640           allow for disposing the system clock.
1641         * tools/gst-launch.c: (main):
1642           deinit
1643
1644 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1645
1646         * docs/gst/tmpl/gstbasesrc.sgml:
1647         * docs/gst/tmpl/gstfakesrc.sgml:
1648         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1649         (gst_base_src_init), (gst_base_src_set_property),
1650         (gst_base_src_get_property), (gst_base_src_get_range),
1651         (gst_base_src_start):
1652         * gst/base/gstbasesrc.h:
1653           add num-buffers property
1654         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1655         (gst_fakesrc_init), (gst_fakesrc_set_property),
1656         (gst_fakesrc_get_property), (gst_fakesrc_create),
1657         (gst_fakesrc_start):
1658           remove num-buffers property
1659
1660 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1661
1662         * docs/gst/gstreamer-sections.txt:
1663         * docs/gst/tmpl/gstbasesink.sgml:
1664         * docs/gst/tmpl/gstbasesrc.sgml:
1665         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
1666         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
1667         (gst_base_sink_finalize), (gst_base_sink_set_clock),
1668         (gst_base_sink_set_property), (gst_base_sink_get_property),
1669         (gst_base_sink_handle_object), (gst_base_sink_event),
1670         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
1671         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
1672         (gst_base_sink_loop), (gst_base_sink_deactivate),
1673         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
1674         (gst_base_sink_change_state):
1675         * gst/base/gstbasesink.h:
1676         * gst/base/gstbasesrc.h:
1677         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
1678         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
1679         (gst_filesink_init):
1680           more macro splitting
1681
1682 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1683
1684         * gst/gstelement.c: (gst_element_get_bus):
1685           add debug
1686         * tools/gst-launch.c: (check_intr), (event_loop):
1687           fix bus leaks
1688
1689 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1690
1691         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
1692           fix a caps leak
1693
1694 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1695
1696         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1697         (gst_base_src_finalize):
1698           add finalize method and clean up properly
1699         * gst/gstpipeline.c: (gst_pipeline_dispose):
1700           add debug
1701
1702 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1703
1704         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
1705         (gst_bin_suite):
1706           add more things to check
1707         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
1708         * gst/gstelement.c:
1709           more debug
1710
1711 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1712
1713         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1714         (GST_START_TEST), (fakesrc_suite):
1715         * check/gst-libs/gdp.c: (GST_START_TEST):
1716         * check/gst/gst.c: (GST_START_TEST):
1717         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
1718         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1719         * check/gst/gstbus.c: (GST_START_TEST):
1720         * check/gst/gstcaps.c: (GST_START_TEST):
1721         * check/gst/gstdata.c: (GST_START_TEST):
1722         * check/gst/gstelement.c: (GST_START_TEST):
1723         * check/gst/gstghostpad.c: (GST_START_TEST):
1724         * check/gst/gstiterator.c: (GST_START_TEST):
1725         * check/gst/gstmessage.c: (GST_START_TEST):
1726         * check/gst/gstobject.c: (GST_START_TEST):
1727         * check/gst/gstpad.c: (GST_START_TEST):
1728         * check/gst/gststructure.c: (GST_START_TEST):
1729         * check/gst/gstsystemclock.c: (GST_START_TEST),
1730         (gst_systemclock_suite):
1731         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
1732         * check/gst/gstvalue.c: (GST_START_TEST):
1733         * check/pipelines/cleanup.c: (GST_START_TEST):
1734         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
1735         * check/states/sinks.c: (GST_START_TEST):
1736         * check/gstcheck.c: (gst_check_init):
1737         * check/gstcheck.h:
1738           add debugging category
1739           use GST_START_TEST now, so we add a debug line
1740
1741 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1742
1743         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
1744           add test for state change message on a bin
1745         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
1746           add another test
1747         * gst/gstbin.c: (gst_bin_init):
1748         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
1749         * gst/gstelement.c: (gst_element_post_message),
1750         (gst_element_set_state):
1751         * gst/gstelementfactory.c: (gst_element_factory_create):
1752         * gst/gstmessage.c: (gst_message_new):
1753         * gst/gstscheduler.c:
1754           various debugging additions and cleanups
1755
1756 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1757
1758         * check/Makefile.am:
1759         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
1760         (main):
1761           adding tests for elements
1762         * gst/gstelement.c: (gst_element_dispose):
1763
1764 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1765
1766         * gst/registries/gstlibxmlregistry.c: (load_feature):
1767           plug more leaks.  A simple gst_init() now is leakfree, yay.
1768
1769 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1770
1771         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
1772         (gst_xml_registry_load):
1773           plug another memleak
1774
1775 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1776
1777         * configure.ac:
1778           use GST_SET_ERROR_CFLAGS
1779         * docs/faq/cvs.xml:
1780           change to ERROR_CFLAGS
1781
1782 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1783
1784         * configure.ac:
1785           make GST_ERROR_CFLAGS overridable and re-enable Werror
1786         * docs/faq/cvs.xml:
1787           add a note about error CFLAGS
1788         * docs/gst/tmpl/gstfakesrc.sgml:
1789         * gst/elements/gstfakesrc.c:
1790           comment out some unused code
1791         * gst/gst.c: (split_and_iterate):
1792         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
1793         (load_feature):
1794           plug some memleaks
1795
1796 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1797
1798         * common/Makefile.am:
1799         * common/gtk-doc.mak:
1800         * docs/gst/Makefile.am:
1801           factor out gtk-doc.mak
1802
1803 2005-07-07  Wim Taymans  <wim@fluendo.com>
1804
1805         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
1806         (gst_thread_scheduler_dispose):
1807         Unlock the STREAM_LOCK completely.
1808
1809 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1810
1811         * check/Makefile.am:
1812         * check/elements/.cvsignore:
1813         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1814         (START_TEST), (fakesrc_suite), (main):
1815         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1816         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
1817         (gst_fakesrc_create), (gst_fakesrc_start):
1818         * gst/elements/gstfakesrc.h:
1819           adding a first element test
1820
1821 2005-07-07  Andy Wingo  <wingo@pobox.com>
1822
1823         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
1824         debug message.
1825
1826 2005-07-07  Wim Taymans  <wim@fluendo.com>
1827
1828         * gst/gstquery.c:
1829         * gst/gstquery.h:
1830         Remove old types
1831
1832 2005-07-07  Wim Taymans  <wim@fluendo.com>
1833
1834         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
1835         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
1836         Allow subclasses to implement their own negotiation.
1837
1838 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1839
1840         * docs/design/part-gstbin.txt:
1841         * docs/design/part-gstpipeline.txt:
1842           Update design notes to reflect the movement of
1843           responsibility for bus handling from GstPipeline to
1844           GstBin
1845
1846 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1847
1848         * configure.ac:
1849           Remove unnecessary queue2/3/4 examples.
1850
1851 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1852
1853         * examples/Makefile.am:
1854         * examples/helloworld/helloworld.c: (event_loop), (main):
1855         * examples/queue/queue.c: (event_loop), (main):
1856         * examples/queue2/queue2.c: (main):
1857           Update a couple of the examples to work again.
1858
1859         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1860         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
1861          Spelling corrections and extra debug.
1862         
1863         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
1864         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
1865         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
1866         * gst/gstbin.h:
1867         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
1868         (gst_pipeline_change_state):
1869         * gst/gstpipeline.h:
1870           Move the bus handler for children to the GstBin, and create a
1871           separate bus for receiving messages from children to the one the
1872           bus sends 'upwards' on.
1873
1874 2005-07-06  Wim Taymans  <wim@fluendo.com>
1875
1876         * gst/base/README:
1877         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1878         (gst_base_sink_handle_object), (gst_base_sink_loop),
1879         (gst_base_sink_change_state):
1880         * gst/base/gstbasesink.h:
1881         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1882         (gst_base_src_init), (gst_base_src_setcaps),
1883         (gst_base_src_getcaps), (gst_base_src_loop),
1884         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
1885         (gst_base_src_start), (gst_base_src_change_state):
1886         * gst/base/gstbasesrc.h:
1887         Make basesrc negotiate.
1888         Handle the case where preroll fails in basesink.
1889         Update README.
1890
1891 2005-07-06  Wim Taymans  <wim@fluendo.com>
1892
1893         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
1894         Implement the fixate function.
1895         Clean up acceptcaps.
1896
1897 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1898
1899         * docs/pwg/building-filterfactory.xml:
1900         * docs/pwg/pwg.xml:
1901           Remove never-written filter-factory chapter; I'll add the various
1902           base classes to part 4 ("other element types") later on.
1903
1904 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1905
1906         * docs/pwg/advanced-negotiation.xml:
1907         * docs/pwg/building-boiler.xml:
1908         * docs/pwg/building-pads.xml:
1909         * docs/pwg/pwg.xml:
1910         * examples/pwg/Makefile.am:
1911           Add a chapter on caps negotiation, simplify the original code
1912           samples a bit w.r.t. caps negotiation, add link to the advanced
1913           section. Add a bunch of examples showing different use cases of
1914           different types of caps negotiation. Upstream renegotiation isn't
1915           fully documented yet since nobody knows how that works.
1916
1917 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
1918
1919         * check/gst/gstpad.c:
1920         * check/gstcheck.c:
1921         * gst/gstpad.c: (gst_pad_get_internal_links_default):
1922           if pad has no parent, return NULL as list of internal links
1923
1924 2005-07-05  Andy Wingo  <wingo@pobox.com>
1925
1926         * gst/elements/gstfilesrc.c:
1927         * gst/elements/gstfakesrc.c: 
1928         * gst/base/gstpushsrc.c:
1929         * gst/base/gstbasesrc.h: 
1930         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
1931         
1932 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
1933
1934         * Makefile.am:
1935           better report generation target (lcov needs a patch)
1936
1937 2005-07-05  Andy Wingo  <wingo@pobox.com>
1938
1939         * gst/elements, testsuite: Null if we got it...
1940
1941 2005-07-05  Wim Taymans  <wim@fluendo.com>
1942
1943         * configure.ac:
1944         * libs/gst/dataprotocol/Makefile.am:
1945         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
1946         * libs/gst/dataprotocol/dataprotocol.h:
1947         * pkgconfig/Makefile.am:
1948         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
1949         * pkgconfig/gstreamer-dataprotocol.pc.in:
1950         Ported dataprotol to 0.9. 
1951         Added pkgconfig files.
1952
1953 2005-07-05  Andy Wingo  <wingo@pobox.com>
1954
1955         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
1956         Default to returning TRUE for the case when tranform_caps returns
1957         a fixed caps, like for identity or volume.
1958
1959         * check/gst/gstbus.c (pound_bus_with_messages): 
1960         * check/gst/gstmessage.c (START_TEST): 
1961         * check/pipelines/simple_launch_lines.c (got_handoff): Application
1962         message API change.
1963
1964         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
1965         logic weaks here: always run transform_caps, trying passthrough
1966         operation only if the original caps intersects with the transform.
1967
1968         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
1969         source and sink caps.
1970
1971         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
1972         Intersect the peer caps with the pad template before going into
1973         transform_caps.
1974         (gst_base_transform_transform_caps): More debugging.
1975
1976         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
1977         src argument.
1978
1979 2005-07-04  Edward Hervey  <edward@fluendo.com>
1980
1981         * gst/gstutils.c:
1982         * gst/gstutils.h:
1983         (gst_pad_add_*_probe): now returns the signal id for better wrapping
1984         in bindings.
1985
1986 2005-07-04  Andy Wingo  <wingo@pobox.com>
1987
1988         * check/gst/gstpad.c: Only set explicit caps on pads.
1989
1990 2005-07-01  Andy Wingo  <wingo@pobox.com>
1991
1992         * tests/network-clock.scm: Commentary update.
1993
1994         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
1995         Didn't really make sense, not implementable with basetransform,
1996         etc.
1997         (gst_identity_transform): Unref inbuf via make_writable. Feeble
1998         attempt at implementing the sync property, needs an unlock method.
1999
2000         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
2001         New func, by default returns the same caps (the identity
2002         transformation).
2003         (gst_base_transform_getcaps): Uses transform_caps to return
2004         something sensible.
2005         (gst_base_transform_setcaps): Complicated logic to get caps on
2006         both pads, even if they are different, and to call set_caps once
2007         for every time both pads get their caps set.
2008         (gst_base_transform_handle_buffer): Give the ref to the transform
2009         function. Allows in-place modification of the buffer.
2010
2011         * gst/base/gstbasetransform.h (transform_caps): New class method.
2012         Given caps on one side, what can I do on the other.
2013         (set_caps): Take two caps, one for each side of the element.
2014
2015         * gst/gstpad.h:
2016         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
2017         caps in place. This is safe because we can check the mutability of
2018         the caps, and a good idea because fixate functions are just called
2019         as a matter of last resort. (Not actually implemented.)
2020         (gst_pad_set_caps): If the caps we're setting is actually the same
2021         as the existing pad caps, just update the pointer without calling
2022         setcaps. Assert that caps is either NULL or fixed, as per the
2023         docs.
2024
2025         * gst/gstghostpad.c: Update for fixate changes.
2026
2027 2005-07-02  Andy Wingo  <wingo@pobox.com>
2028
2029         * gst/gstcaps.c:
2030         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
2031         two refcounts makes it immutable, which is enough. Doc more.
2032
2033 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
2034
2035         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
2036           Put the mini_object into GValue as a mini_object,
2037           not a gpointer, since that's how we declared
2038           the signal.
2039
2040 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2041
2042         * examples/pwg/Makefile.am:
2043           Fix buildbot again.
2044
2045 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2046
2047         * docs/pwg/building-testapp.xml:
2048           Add extra check.
2049         * examples/pwg/Makefile.am:
2050           Fix buildbot.
2051
2052 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2053
2054         * configure.ac:
2055         * examples/Makefile.am:
2056         * examples/pwg/Makefile.am:
2057         * examples/pwg/extract.pl:
2058           Enable building the PWG examples.
2059         * docs/pwg/advanced-interfaces.xml:
2060           Add URI interface stub.
2061         * docs/pwg/advanced-types.xml:
2062         * docs/pwg/other-autoplugger.xml:
2063         * docs/pwg/appendix-porting.xml:
2064         * docs/pwg/pwg.xml:
2065           Add porting guide (mostly stubs), remove autoplugging (see ADM).
2066         * docs/pwg/building-boiler.xml:
2067         * docs/pwg/building-chainfn.xml:
2068         * docs/pwg/building-pads.xml:
2069         * docs/pwg/building-props.xml:
2070         * docs/pwg/building-state.xml:
2071         * docs/pwg/building-testapp.xml:
2072           Update the building-*.xml parts for 0.9 changes. All examples
2073           code blocks compile in examples/pwg/*.
2074
2075 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2076
2077         * docs/manual/advanced-autoplugging.xml:
2078         * docs/manual/appendix-checklist.xml:
2079         * docs/manual/appendix-integration.xml:
2080         * docs/manual/highlevel-components.xml:
2081           Fix playbin/decodebin examples, update docs a bit, mention bus
2082           instead of signals in various places, mention kmplayer and
2083           kaffeine since they have a working GStreamer backend in the KDE
2084           section.
2085
2086 2005-06-30  Wim Taymans  <wim@fluendo.com>
2087
2088         * CHANGES-0.9:
2089         * docs/design/draft-ghostpads.txt:
2090         * docs/design/draft-push-pull.txt:
2091         * docs/design/draft-query.txt:
2092         * docs/design/part-TODO.txt:
2093         * docs/design/part-query.txt:
2094         Added CHANGES-0.9 doc, updated status of other docs.
2095         
2096         * gst/gstquery.h:
2097         Remove "hmm" macro
2098
2099 2005-06-30  Wim Taymans  <wim@fluendo.com>
2100
2101         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
2102         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
2103         (gst_base_sink_change_state):
2104         * gst/base/gstbasesink.h:
2105         Some tweaks, only EOS and a buffer complete a preroll.
2106
2107 2005-06-30  Andy Wingo  <wingo@pobox.com>
2108
2109         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
2110         activate_push down to the internal pad as well.
2111
2112 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
2113
2114         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2115
2116         * gst/gsttaginterface.c:
2117           Some documentation fixes (#307394 and #307397).
2118
2119 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
2120
2121         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2122
2123         * gst/gstvalue.c: (gst_value_intersect_list):
2124           Fix memleak (#309125).
2125
2126 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2127
2128         * docs/manual/advanced-dataaccess.xml:
2129           Fix fakesrc example to compile; doesn't work, bug somewhere...?
2130         * docs/manual/basics-pads.xml:
2131           Add reference for filtered caps to above chapter.
2132
2133 2005-06-30  Wim Taymans  <wim@fluendo.com>
2134
2135         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
2136         (gst_bin_change_state):
2137         Probes are gone.
2138         Lame attempt at making the state change function a bit
2139         more readable.
2140
2141 2005-06-30  Wim Taymans  <wim@fluendo.com>
2142
2143         * docs/design/part-clocks.txt:
2144         * docs/design/part-element-sink.txt:
2145         * docs/design/part-events.txt:
2146         * docs/design/part-preroll.txt:
2147         * docs/design/part-states.txt:
2148         Some more tweeks and additions to the docs.
2149
2150 2005-06-30  Wim Taymans  <wim@fluendo.com>
2151
2152         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
2153         (default_have_data), (gst_pad_class_init), (gst_pad_init),
2154         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
2155         (gst_pad_check_pull_range), (gst_pad_get_range),
2156         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
2157         * gst/gstpad.h:
2158         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
2159         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
2160         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
2161         (gst_pad_remove_buffer_probe):
2162         Removed atomic operations, use existing LOCK.
2163         Move exception handling out of main code path.
2164
2165 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2166
2167         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
2168         (silly_return_true_function), (gst_pad_class_init),
2169         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
2170         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
2171         (gst_pad_send_event):
2172           Fix accumulator, add default value by using _emitv() instead
2173           of _emit() for signal emission.
2174
2175 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2176
2177         * docs/manual/advanced-dataaccess.xml:
2178         * examples/manual/Makefile.am:
2179           Add probe example.
2180         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
2181           Make work (??).
2182
2183 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
2184
2185         * gst/elements/gstfilesink.c: (gst_filesink_render):
2186           Simplify code so that we don't have to handle short
2187           writes and return GST_FLOW_ERROR if an error occured.
2188
2189 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2190
2191         * docs/gst/gstreamer-docs.sgml:
2192           Remove probes more.
2193
2194 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2195
2196         * docs/gst/gstreamer-sections.txt:
2197         * docs/gst/tmpl/gstpad.sgml:
2198         * docs/gst/tmpl/gstprobe.sgml:
2199         * gst/Makefile.am:
2200         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
2201         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
2202         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
2203         (gst_pad_push_event), (gst_pad_send_event):
2204         * gst/gstpad.h:
2205         * gst/gstutils.c: (gst_pad_add_data_probe),
2206         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
2207         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
2208         (gst_pad_remove_buffer_probe):
2209         * gst/gstutils.h:
2210           Remove old probes, add new g-signal-based probes and some utility
2211           functions.
2212
2213 2005-06-29  Edward Hervey  <edward@fluendo.com>
2214
2215         * gst/gstelementfactory.c:
2216         * gst/gstutils.h:
2217         * gst/gstutils.c:
2218         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
2219         the definition to the header file.
2220
2221 2005-06-29  Andy Wingo  <wingo@pobox.com>
2222
2223         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
2224         plugins from the source directory.
2225
2226 2005-06-29  Wim Taymans  <wim@fluendo.com>
2227
2228         * docs/gst/tmpl/gstbuffer.sgml:
2229         * docs/gst/tmpl/gstclock.sgml:
2230         Some fixings for blantently wrong text.
2231
2232 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
2233
2234         * check/Makefile.am:
2235         * gst/gst.c: (add_path_func), (init_pre):
2236         * gst/gstregistry.c: (gst_registry_add_path):
2237           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
2238           only scan the GST_PLUGIN_PATH locations, and not add
2239           system locations
2240
2241 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
2242
2243         * docs/gst/gstreamer-sections.txt:
2244         * docs/gst/tmpl/gstbasesrc.sgml:
2245         * gst/gstelement.c:
2246         * gst/gstelement.h:
2247         * gst/gstevent.c:
2248         * gst/gstutils.c:
2249           doc fixes
2250
2251 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2252
2253         * docs/manual/advanced-autoplugging.xml:
2254           Fix autoplugging example.
2255
2256 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2257
2258         * docs/manual/advanced-autoplugging.xml:
2259         * docs/manual/mime-world.fig:
2260           Try to get autoplugging working, fix type detection. Fix text
2261           in hello-world image.
2262
2263 2005-06-29  Wim Taymans  <wim@fluendo.com>
2264
2265         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
2266         (gst_base_sink_change_state):
2267         Small debug line.
2268
2269         * gst/gstclock.h:
2270         map SIGNAL and BROADCAST to the right function.
2271
2272         * gst/gstobject.h:
2273         Remove redundant braces.
2274
2275         * gst/gstpad.c: (gst_pad_set_caps):
2276         Don't call setcaps function when reseting caps to NULL.
2277
2278         * gst/gstsystemclock.c: (gst_system_clock_dispose),
2279         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
2280         (gst_system_clock_id_unschedule):
2281         Use BROADCAST as this is what we do.
2282
2283 2005-06-29  Wim Taymans  <wim@fluendo.com>
2284
2285         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
2286         We are actually prerolling before commiting the state
2287         change. 
2288
2289 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2290
2291         * docs/manual/advanced-clocks.xml:
2292         * docs/manual/advanced-interfaces.xml:
2293         * docs/manual/advanced-metadata.xml:
2294         * docs/manual/advanced-position.xml:
2295         * docs/manual/advanced-schedulers.xml:
2296         * docs/manual/advanced-threads.xml:
2297         * docs/manual/appendix-porting.xml:
2298         * docs/manual/basics-bins.xml:
2299         * docs/manual/basics-bus.xml:
2300         * docs/manual/basics-elements.xml:
2301         * docs/manual/basics-helloworld.xml:
2302         * docs/manual/basics-pads.xml:
2303         * docs/manual/highlevel-components.xml:
2304         * docs/manual/manual.xml:
2305         * docs/manual/thread.fig:
2306           Update (until threads/scheduling) Application Development Manual;
2307           remove GstThread, add GstBus, add simple porting checklist, add
2308           documentation for tag writing, clocks, make all examples until this
2309           part compile and run.
2310         * examples/manual/Makefile.am:
2311           Update from changes to Application Development Manual; add bus
2312           example, remove thread example.
2313
2314 2005-06-28  Wim Taymans  <wim@fluendo.com>
2315
2316         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
2317         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
2318         (gst_bus_source_dispatch):
2319         Add debugging messages.
2320         Make internal methods static.
2321         Handle the case where the bus is flushed in the handler.
2322         
2323         * gst/gstelement.c: (gst_element_get_bus):
2324         Fix refcount in _get_bus();
2325
2326         * gst/gstpipeline.c: (gst_pipeline_change_state),
2327         (gst_pipeline_get_clock_func):
2328         Clock refcounting fixes.
2329         Handle the case where preroll timed out more gracefully.
2330         
2331         * gst/gstsystemclock.c: (gst_system_clock_dispose):
2332         Clean up the internal thread in dispose. This is needed
2333         for subclasses that actually get disposed.
2334         
2335         * gst/schedulers/threadscheduler.c:
2336         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
2337         (gst_thread_scheduler_dispose):
2338         Free thread pool in dispose.
2339
2340 2005-06-28  Andy Wingo  <wingo@pobox.com>
2341
2342         * tests/network-clock-utils.scm (debug, print-event): New utils.
2343
2344         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
2345         (*packet-loss*): Unified loss probability.
2346         (network-time): Report out-of-band events.
2347
2348         * tests/plot-data: Add support for out-of-band events. Hack it
2349         into this script instead of passing it down the pipe; should fix
2350         this later.
2351
2352 2005-06-28  Wim Taymans  <wim@fluendo.com>
2353
2354         * docs/gst/gstreamer.types:
2355         * docs/gst/tmpl/gstbasesrc.sgml:
2356         * docs/gst/tmpl/gstpad.sgml:
2357         Docs fixes.
2358
2359 2005-06-28  Wim Taymans  <wim@fluendo.com>
2360
2361         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2362         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
2363         (gst_proxy_pad_do_fixatecaps):
2364         Correctly proxy the check_pull_range function.
2365
2366 2005-06-28  Andy Wingo  <wingo@pobox.com>
2367
2368         * tests/network-clock.scm: Removed need for slib.
2369         
2370 2005-06-28  Wim Taymans  <wim@fluendo.com>
2371
2372         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
2373         (gst_basesink_preroll_queue_flush):
2374         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
2375         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
2376         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2377         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
2378         (gst_proxy_pad_set_property):
2379         * gst/gstpad.c:
2380         * gst/gstpad.h:
2381         * gst/gstqueue.c: (gst_queue_init):
2382         The deprecated pad loop function is removed now.
2383
2384 2005-06-28  Andy Wingo  <wingo@pobox.com>
2385
2386         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
2387         New parameters, simulate network packet loss.
2388
2389         * tests/network-clock-utils.scm: Initialize the RNG.
2390
2391 2005-06-28  Wim Taymans  <wim@fluendo.com>
2392
2393         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
2394         (gst_basesink_event), (gst_basesink_deactivate):
2395         Flushing the preroll queue always needs to unlock the waiters.
2396
2397 2005-06-28  Edward Hervey  <edward@fluendo.com>
2398
2399         * gst/gstpipeline.c: (gst_pipeline_send_event): 
2400         Wheen a seek was successful on a pipeline, set the stream_time to the
2401         seek offset in order to have a synchronized stream_time.
2402
2403 2005-06-28  Wim Taymans  <wim@fluendo.com>
2404
2405         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2406         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
2407         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
2408         (gst_proxy_pad_do_fixatecaps):
2409         Call wrapper function instead of just calling the function
2410         pointers. This takes care of any locking and whatmore.
2411
2412 2005-06-28  Wim Taymans  <wim@fluendo.com>
2413
2414         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
2415         (gst_pad_pull_range):
2416         * gst/gstpad.h:
2417         CONNECTED -> LINKED.
2418
2419 2005-06-28  Andy Wingo  <wingo@pobox.com>
2420
2421         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
2422         source-munging commit!!!
2423
2424         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
2425         (gst_object_sink): Take gpointer arguments, not GstObject --
2426         avoids casts. Like GLib.
2427
2428         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
2429         activate.
2430
2431 2005-06-27  Andy Wingo  <wingo@pobox.com>
2432
2433         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
2434         remaining buffer.
2435
2436         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
2437         returns a sorted copy of the trace list.
2438         (gst_alloc_trace_print_live): New API, only prints traces with
2439         live objects. Sort the list.
2440         (gst_alloc_trace_print_all): Sort the list.
2441         (gst_alloc_trace_print): Align columns.
2442
2443         * gst/elements/gstttypefindelement.c:
2444         * gst/elements/gsttee.c:
2445         * gst/base/gstbasesrc.c:
2446         * gst/base/gstbasesink.c:
2447         * gst/base/gstbasetransform.c:
2448         * gst/gstqueue.c: Adapt for pad activation changes.
2449
2450         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
2451         sched.
2452         (gst_pipeline_dispose): Drop ref on sched.
2453
2454         * gst/gstpad.c (gst_pad_init): Set the default activate func.
2455         (gst_pad_activate_default): Push mode by default.
2456         (pre_activate_switch, post_activate_switch): New stubs, things to
2457         do before and after switching activation modes on pads.
2458         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
2459         the pad's activate function to choose which mode to activate.
2460         Shortcut on deactivation and call the right function directly.
2461         (gst_pad_activate_pull): New API, (de)activates a pad in pull
2462         mode.
2463         (gst_pad_activate_push): New API, same for push mode.
2464         (gst_pad_set_activate_function) 
2465         (gst_pad_set_activatepull_function) 
2466         (gst_pad_set_activatepush_function): Setters for new API.
2467
2468         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
2469         Trace all miniobjects.
2470         (gst_mini_object_make_writable): Unref the arg if we copy, like
2471         gst_caps_make_writable.
2472
2473         * gst/gstmessage.c (_gst_message_initialize): No trace init.
2474
2475         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
2476         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
2477         Adapt for new pad API.
2478
2479         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
2480
2481         * gst/gstelement.h:
2482         * gst/gstelement.c (gst_element_iterate_src_pads) 
2483         (gst_element_iterate_sink_pads): New API functions.
2484         
2485         * gst/gstelement.c (iterator_fold_with_resync): New utility,
2486         should fold into gstiterator.c in some form.
2487         (gst_element_pads_activate): Simplified via use of fold and
2488         delegation of decisions to gstpad->activate.
2489
2490         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
2491         help in debugging.
2492
2493         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
2494         class once in init, like gstmessage. Didn't run into this issue
2495         but it seems correct. Don't initialize a trace, gstminiobject does
2496         that.
2497
2498         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
2499         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
2500         to the bus.
2501         (assert_live_count): New util function, uses alloc traces to check
2502         cleanup.
2503
2504         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
2505         To be modified when unlink drops the internal pad.
2506
2507 2005-06-27  Wim Taymans  <wim@fluendo.com>
2508
2509         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
2510         (gst_bin_change_state):
2511         Cleanup the get_state() function a little, make sure it
2512         iterates the same set of elements.
2513         Added stub iterate_state_order().
2514
2515 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
2516
2517         * docs/gst/gstreamer-docs.sgml:
2518         * docs/gst/gstreamer-sections.txt:
2519         * docs/gst/gstreamer.types:
2520         * docs/gst/tmpl/gstbasesink.sgml:
2521         * docs/gst/tmpl/gstbasesrc.sgml:
2522         * docs/gst/tmpl/gstbasetransform.sgml:
2523         * docs/gst/tmpl/gstelement.sgml:
2524         * docs/gst/tmpl/gstiterator.sgml:
2525         * gst/base/gstbasesrc.c:
2526         * gst/base/gstbasesrc.h:
2527         * gst/base/gstbasetransform.h:
2528         * gst/gstelement.c:
2529         * gst/gstiterator.h:
2530           adding basetransform and iterator docs
2531
2532 2005-06-27  Andy Wingo  <wingo@pobox.com>
2533
2534         * docs/design/part-activation.txt: Notes on how activation should
2535         work -- not quite implemented yet.
2536
2537 2005-06-25  Wim Taymans  <wim@fluendo.com>
2538
2539         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
2540         At least get the chain function correct, needs more
2541         fixing.
2542
2543 2005-06-25  Wim Taymans  <wim@fluendo.com>
2544
2545         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2546         (gst_basesink_handle_object), (gst_basesink_event),
2547         (gst_basesink_do_sync), (gst_basesink_handle_event),
2548         (gst_basesink_change_state):
2549         * gst/gsttask.h:
2550         Right, two problems here: ghostpads don't take locks and
2551         glib _rec_mutex_lock_full() with depth==0 still locks.
2552         Catch illegal locking and g_warn them.
2553
2554 2005-06-25  Wim Taymans  <wim@fluendo.com>
2555
2556         * check/states/sinks.c: (START_TEST), (gst_object_suite):
2557         Have to check for completion now...
2558
2559 2005-06-25  Wim Taymans  <wim@fluendo.com>
2560
2561         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2562         (gst_basesink_handle_object), (gst_basesink_event),
2563         (gst_basesink_do_sync), (gst_basesink_handle_event),
2564         (gst_basesink_change_state):
2565         * gst/gstpad.h:
2566         Unlock STREAM_LOCK whatever the recursion was.
2567
2568 2005-06-25  Wim Taymans  <wim@fluendo.com>
2569
2570         * gst/base/gstbasesink.c: (gst_basesink_set_property),
2571         (gst_basesink_preroll_queue_empty),
2572         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
2573         (gst_basesink_event), (gst_basesink_do_sync),
2574         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
2575         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
2576         (gst_basesink_change_state):
2577         Reworked the base sink, handle event and buffer serialisation
2578         correctly and removed possible deadlock.
2579         Handle EOS correctly.
2580
2581 2005-06-25  Wim Taymans  <wim@fluendo.com>
2582
2583         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
2584         (gst_pipeline_change_state):
2585         * tools/gst-launch.c: (check_intr), (event_loop), (main):
2586         Allow elements to post EOS in the state change function.
2587         Fix up -launch, make it exit the poll loop when the
2588         pipeline actually changed state.
2589         Fix up warning parsing in -launch.
2590
2591 2005-06-25  Wim Taymans  <wim@fluendo.com>
2592
2593         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
2594         (gst_tee_sink_activate):
2595         Core takes STREAM_LOCK for us now.
2596
2597 2005-06-25  Wim Taymans  <wim@fluendo.com>
2598
2599         * gst/gstelement.c: (gst_element_get_state_func),
2600         (gst_element_set_state):
2601         * gst/gstelement.h:
2602         * gst/gstmessage.c: (gst_message_parse_error),
2603         (gst_message_parse_warning):
2604         Keep track of current target state while performing a state
2605         change so that subclasses can do something interesting.
2606         Fix parsing of warning/error messages when GError is NULL.
2607
2608 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
2609
2610         * docs/gst/Makefile.am:
2611         * docs/gst/gstreamer-docs.sgml:
2612         * docs/gst/gstreamer-sections.txt:
2613         * docs/gst/gstreamer.types:
2614         * docs/gst/tmpl/gstbasesink.sgml:
2615         * docs/gst/tmpl/gstbasesrc.sgml:
2616         * docs/gst/tmpl/gstbin.sgml:
2617         * docs/gst/tmpl/gstcompat.sgml:
2618         * docs/gst/tmpl/gstfakesink.sgml:
2619         * docs/gst/tmpl/gstfakesrc.sgml:
2620         * docs/gst/tmpl/gstfilesink.sgml:
2621         * docs/gst/tmpl/gstfilesrc.sgml:
2622         * docs/gst/tmpl/gstindex.sgml:
2623         * docs/manual/appendix-quotes.xml:
2624         * gst/base/gstbasesrc.h:
2625         * gst/elements/gstfakesrc.h:
2626         * gst/gstmessage.h:
2627           start pulling in base classes and elements in our docs
2628
2629 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
2630
2631         * docs/gst/Makefile.am:
2632         * docs/libs/Makefile.am:
2633           fixed make distcheck with gtk-doc 1.3
2634
2635 2005-06-23  Wim Taymans  <wim@fluendo.com>
2636
2637         * gst/gstelement.c: (gst_element_get_state_func),
2638         (gst_element_set_state), (gst_element_change_state):
2639         When the state did not change, also report NO_PREROLL
2640         when it matters.
2641
2642 2005-06-23  Wim Taymans  <wim@fluendo.com>
2643
2644         * gst/gstpad.c: (gst_pad_event_default):
2645         * gst/gstqueue.c: (gst_queue_loop):
2646         No unsafe task pausing please.
2647
2648 2005-06-23  Wim Taymans  <wim@fluendo.com>
2649
2650         * gst/schedulers/threadscheduler.c:
2651         (gst_thread_scheduler_task_start),
2652         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
2653         Ref the task before pushing it on the threadpool. This
2654         makes sure that we have a ref when the threadfunction is
2655         actually called.
2656
2657 2005-06-23  Andy Wingo  <wingo@pobox.com>
2658
2659         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
2660         offset is greater than the file's size.
2661
2662         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
2663         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
2664         * gst/gstobject.c (gst_object_class_init): Make the class lock
2665         recursive. Wim won't let me drop deep_notify. Decodebin works
2666         again, whoopdy doo.
2667
2668         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
2669         internal pad, and hacks accordingly. Doesn't do it on the target
2670         pad because we change its caps. Probably catches all cases of
2671         interest tho.
2672         (gst_ghost_pad_set_property): Connect to notify::caps as
2673         appropritate.
2674
2675         * tests/network-clock.scm (plot-simulation): Pipe data to the
2676         elite python skript.
2677
2678         * tests/network-clock-utils.scm (define-parameter): New macro,
2679         defines a parameter that can be set via the command line.
2680         (set-parameter!, parse-parameter-arguments): Command line args
2681         parser.
2682
2683         * tests/plot-data: Simple matplotlib-based plotter, takes input on
2684         stdin.
2685
2686 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
2687
2688         * gst/elements/gsttypefindelement.c:
2689         (gst_type_find_element_handle_event):
2690           Don't restart typefinding on a discont.
2691         * gst/gstelement.c: (gst_element_set_state):
2692           Debug spelling fix.
2693         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
2694           Allow changing mode of an active pad.
2695           Debug output fixes.
2696         * gst/registries/gstlibxmlregistry.c: (load_feature):
2697           Don't cast a static pad template to a normal pad template.
2698
2699 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
2700
2701         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2702         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2703           remove gst_strtoll completely, since it didn't actually do
2704           anything more than what g_ascii_strtoull already does.
2705           check for range errors when deserializing
2706           do a cast for the unsigned cases; but further fixing needs
2707           a decision on what the interpretation of "(int)" and
2708           deserialization should be for values that fall outside the
2709           type's boundaries (ie, refuse, or interpret as casting)
2710
2711 2005-06-23  Wim Taymans  <wim@fluendo.com>
2712
2713         * check/Makefile.am:
2714         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
2715         * docs/design/part-live-source.txt:
2716         * docs/design/part-states.txt:
2717         * gst/base/gstbasesrc.c: (gst_basesrc_init),
2718         (gst_basesrc_set_live), (gst_basesrc_is_live),
2719         (gst_basesrc_get_range), (gst_basesrc_activate),
2720         (gst_basesrc_change_state):
2721         * gst/base/gstbasesrc.h:
2722         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2723         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
2724         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
2725         * gst/gstelement.c: (gst_element_get_state_func),
2726         (gst_element_set_state):
2727         * gst/gstelement.h:
2728         * gst/gsttypes.h:
2729         * tools/gst-launch.c: (event_loop), (main):
2730         Added support for live sources and other elements that
2731         cannot do preroll.
2732         Updated design docs, added live-source design doc.
2733         Implemented live source functionality in basesrc
2734         Fix error condition in _bin_get_state()
2735         Implement live source handling in -launch.
2736         Added check for live sources.
2737         Fixed case in GstBin where elements were changed state
2738         multiple times.
2739
2740
2741 2005-06-23  Andy Wingo  <wingo@pobox.com>
2742
2743         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
2744         borken refcounting.
2745
2746         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
2747         gst_caps_replace takes care of this for us.
2748
2749         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
2750         gst_pad_set_caps on the target, not just its setcaps() function.
2751
2752         * tests/network-clock.scm: 
2753         * tests/network-clock-utils.scm: A network clock simulator.
2754         Something of an algorithmic testbed before doing something in C.
2755
2756 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2757
2758         * check/Makefile.am:
2759         * check/gst/capslist.h:
2760           copy over from 0.8, and add two with bitmasks specified with
2761           (int) 0xFF...
2762         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2763           add test to parse everything from capslist.h
2764         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
2765         (main):
2766           add test for structure deserialization
2767         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2768           add tests for deserialization of strings to int types
2769         * gst/gststructure.c: (gst_structure_nth_field_name):
2770         * gst/gststructure.h:
2771           add a way to get the name of a field referenced by index
2772         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2773           instead of checking if the resulting long long lies between
2774           min and max, we check if the long long would fit into
2775           a number of bytes for the final type.
2776           This fixes cases where a string represents 2^32 - 1, which
2777           when cast to int would be the (valid) -1, but is bigger than
2778           G_MAXINT
2779
2780 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2781
2782         * gst/parse/grammar.y:
2783           add a log line for type deserialization
2784
2785 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2786
2787         * check/gst/gstvalue.c: (START_TEST):
2788         * gst/gstvalue.c: (gst_value_deserialize):
2789           return long long, not int, so gint64 deserialization actually
2790           works.  Is there any flag that makes the compiler check this ?
2791           Fixes #308559
2792
2793 2005-06-22  Wim Taymans  <wim@fluendo.com>
2794
2795         * gst/gstbuffer.h:
2796         Added convenience macros for setting buffers in GValue.
2797
2798 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2799
2800         * check/gst/.cvsignore:
2801         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2802           add a test deserializing int64, and comment part out because
2803           it fails, yay !
2804
2805 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2806
2807         * check/Makefile.am:
2808         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
2809         * testsuite/Makefile.am:
2810         * testsuite/caps/Makefile.am:
2811         * testsuite/caps/value_serialize.c:
2812         * testsuite/test_gst_init.c:
2813           move a value_serialize test over
2814
2815 2005-06-20  Wim Taymans  <wim@fluendo.com>
2816
2817         * gst/gstpad.c:
2818         Small doc updates.
2819         
2820         * gst/gstvalue.c: (gst_value_compare_buffer),
2821         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
2822         (gst_value_compare_flags), (gst_value_serialize_flags),
2823         (gst_value_deserialize_flags), (_gst_value_initialize):
2824         Fix serialisation of buffers, they are not boxed types anymore
2825
2826 2005-06-20  Wim Taymans  <wim@fluendo.com>
2827
2828         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2829         Testcase to show error in buffer-on-caps serialisation.
2830
2831 2005-06-20  Andy Wingo  <wingo@pobox.com>
2832
2833         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
2834         will be adding to later.
2835
2836         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
2837         if its socks fill with rocks.
2838         (gst_system_clock_obtain): Set the name on object construction.
2839         Avoid double-checked locking.
2840
2841 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
2842
2843         * gst/gsturi.c: (gst_element_make_from_uri):
2844           Fix potential endless loop.
2845
2846 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2847
2848         * check/Makefile.am:
2849           add gsttag
2850         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
2851         (main):
2852           move over from testsuite dir and clean up
2853         * configure.ac:
2854         * gst/gsttag.c:
2855         * testsuite/Makefile.am:
2856         * testsuite/tags/.cvsignore:
2857         * testsuite/tags/Makefile.am:
2858         * testsuite/tags/merge.c:
2859           remove testsuite/tags
2860
2861 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2862
2863         * docs/gst/gstreamer-sections.txt:
2864         * docs/gst/tmpl/gstenumtypes.sgml:
2865         * win32/gstenumtypes.c:
2866           clean up documentation build a little
2867
2868 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2869
2870         * check/gstcheck.h:
2871           add macros for checking refcounts on objects and caps
2872         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
2873           add some more unit tests
2874         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
2875         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
2876           fix leaked refcounts (I hope :)) so unittest works
2877         * gst/gstpad.h:
2878           whitespace removal
2879
2880 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2881
2882         * configure.ac: back to HEAD
2883
2884 === release 0.9.1 ===
2885
2886 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2887
2888         * NEWS:
2889         * RELEASE:
2890           updated
2891
2892 2005-06-17  Andy Wingo  <wingo@pobox.com>
2893
2894         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
2895         assert; it's always possible that the pad gets deactivated in
2896         between the checks in gstpad.c and the implementation. Rely on
2897         finish_preroll() to return a FLUSHING or similar instead of on the
2898         assert.
2899         
2900         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
2901         clock and post an EOS message if we come out of finish_preroll in
2902         the playing state.
2903
2904 2005-06-16  David Schleef  <ds@schleef.org>
2905
2906         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
2907         (gst_capsfilter_set_property): Allow NULL as possible value
2908         for filter_caps property, indicating GST_CAPS_ANY.
2909
2910 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2911
2912         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
2913           fix debug output
2914         * gst/schedulers/Makefile.am:
2915           use libgst prefix
2916         * gstreamer.spec.in:
2917           fix spec for it
2918
2919 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2920
2921         * gstreamer.spec.in:
2922           clean up
2923
2924 2005-06-08  Andy Wingo  <wingo@pobox.com>
2925
2926         * gst/gstutils.c: RPAD fixes all around.
2927         (gst_element_link_pads): Refcounting fixes.
2928
2929         * tools/gst-inspect.c:
2930         * tools/gst-xmlinspect.c:
2931         * parse/grammar.y:
2932         * gst/base/gsttypefindhelper.c:
2933         * gst/base/gstbasesink.c:
2934         * gst/gstqueue.c: RPAD fixes.
2935
2936         * gst/gstghostpad.h:
2937         * gst/gstghostpad.c: New ghost pad implementation as full proxy
2938         pads. The tricky thing is they provide both source and sink
2939         interfaces, since they proxy the internal pad for the external
2940         pad, and vice versa. Implement with lower-level ProxyPad objects,
2941         with the interior proxy pad as a child of the exterior ghost pad.
2942         Should write a doc on this.
2943         
2944         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
2945         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
2946         gst_object API.
2947         
2948         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
2949         pads are real pads. No ghost pads in this file. Not documenting
2950         the myriad s/RPAD/PAD/ and REALIZE fixes.
2951         (gst_pad_class_init): Add properties for "direction" and
2952         "template". Both are construct-only, so they can't change during
2953         the life of the pad. Fixes properly deriving from GstPad.
2954         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
2955         derived objects, just set properties when creating the objects via
2956         g_object_new.
2957         (gst_pad_get_parent): Implement as a function, return NULL if the
2958         parent is not an element.
2959         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
2960         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
2961         
2962         * gst/gstobject.c (gst_object_class_init): Make name a construct
2963         property. Don't set it in the object init.
2964
2965         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
2966         with UNKNOWN direction.
2967         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
2968         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
2969         (gst_element_remove_pad): Remove ghost-pad special cases.
2970         (gst_element_pads_activate): Remove rpad cruft.
2971
2972         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
2973         catch the pad's-parent-not-an-element case.
2974
2975         * gst/gst.h: Include gstghostpad.h.
2976
2977         * gst/gst.c (init_post): No more real, ghost pads.
2978
2979         * gst/Makefile.am: Add gstghostpad.[ch].
2980
2981         * check/Makefile.am:
2982         * check/gst/gstbin.c:
2983         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
2984         into a bin creates ghost pads, and that the refcounts are right.
2985         Partly moved from gstbin.c.
2986
2987 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2988
2989         * check/gst-libs/.cvsignore:
2990         * check/gst/.cvsignore:
2991         * check/pipelines/.cvsignore:
2992           ignore more
2993         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
2994         (START_TEST), (cleanup_suite), (main):
2995           add some tests related to cleanup after running pipelines
2996
2997 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2998
2999         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
3000           add a testsuite for GstBuffer
3001
3002 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3003
3004         * gst/gstminiobject.h:
3005           add defines for accessing the refcount
3006
3007 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
3008
3009         * Makefile.am: added support for html unit test coverage reports
3010
3011 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
3012
3013         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
3014           Free existing caps if the capsfilter changes. Add a FIXME about
3015           setting those caps on the pads.
3016
3017         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
3018           Before adding a ghost pad to a parent bin, check that there isn't
3019           already one for the element on the bin. Prevents infinite recursion
3020           when using decodebin in parse pipelines. Andy says he'll rewrite the
3021           way this works anyway, so ignore the hack.
3022
3023 2005-06-02  Andy Wingo  <wingo@pobox.com>
3024
3025         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
3026         file size, pass it on to the type find helper.
3027
3028         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
3029         segment_start and segment_end properly according to the seek
3030         method. Segment_end is still a bit flaky because offset can be
3031         negative for CUR and END cases, but it takes -1 as an "unset"
3032         value.
3033
3034 2005-06-02  Wim Taymans  <wim@fluendo.com>
3035
3036         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
3037         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
3038         (gst_basesink_activate):
3039         * gst/base/gstbasesink.h:
3040         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3041         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
3042         (gst_pad_query), (gst_pad_start_task):
3043         * gst/gstpad.h:
3044         * gst/gstqueue.c: (gst_queue_bufferalloc),
3045         (gst_queue_handle_sink_event), (gst_queue_chain):
3046         Bufferalloc: return GstFlowReturn to more accuratly report
3047         why allocation failed.
3048
3049 2005-06-02  Wim Taymans  <wim@fluendo.com>
3050
3051         * gst/gstpipeline.c: (gst_pipeline_send_event):
3052         Take snapshot of state without blocking.
3053
3054 2005-06-02  Wim Taymans  <wim@fluendo.com>
3055
3056         * docs/design/part-TODO.txt:
3057         * docs/design/part-caps.txt:
3058         * docs/design/part-clocks.txt:
3059         * docs/design/part-negotiation.txt:
3060         * docs/design/part-preroll.txt:
3061         Small doc updates 
3062
3063 2005-05-30  Wim Taymans  <wim@fluendo.com>
3064
3065         * gst/elements/gstidentity.c: (gst_identity_event),
3066         (gst_identity_transform), (gst_identity_get_property):
3067         Protect last_message property as it is accessed from
3068         multiple threads.
3069
3070 2005-05-30  Wim Taymans  <wim@fluendo.com>
3071
3072         * gst/gstelement.c: (gst_element_init),
3073         (gst_element_pads_activate), (gst_element_change_state):
3074         Slicker pad activation code.
3075
3076 2005-05-30  Wim Taymans  <wim@fluendo.com>
3077
3078         * gst/Makefile.am:
3079         * gst/gstelement.h:
3080         * gst/gstelementfactory.h:
3081         * gst/gsttypes.h:
3082         Move elementfactory methods to separate .h file.
3083
3084 2005-05-30  Wim Taymans  <wim@fluendo.com>
3085
3086         * docs/design/part-overview.txt:
3087         * gst/gstsystemclock.h:
3088         Small typo fixes, doc updates.
3089
3090 2005-05-30  Wim Taymans  <wim@fluendo.com>
3091
3092         * gst/gst.c: (gst_init_get_popt_table), (init_post),
3093         (init_popt_callback):
3094         Remove cpu-opt flag.
3095
3096 2005-05-30  Wim Taymans  <wim@fluendo.com>
3097
3098         * gst/gstbuffer.c: (gst_subbuffer_finalize),
3099         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
3100         * gst/gstbuffer.h:
3101         Avoid typechecking in places where not needed.
3102         Added accessor for malloc_data.
3103
3104 2005-05-30  Wim Taymans  <wim@fluendo.com>
3105
3106         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
3107         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
3108         (gst_pad_configure_sink), (gst_pad_configure_src),
3109         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
3110         (gst_pad_start_task):
3111         Propagate errors from _set_caps() in configure_src/sink
3112         functions instead of returning TRUE.
3113         FLUSH events can travel up and downstream
3114
3115
3116 2005-05-30  Wim Taymans  <wim@fluendo.com>
3117
3118         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
3119         (gst_basesink_activate):
3120         Handle EOS in preroll.
3121
3122 2005-05-30  Wim Taymans  <wim@fluendo.com>
3123
3124         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
3125         (gst_queue_loop), (gst_queue_handle_src_event):
3126         Remove old pieces of code
3127         Flushing the queue in an upstream event is a very bad idea.
3128
3129 2005-05-26  Andy Wingo  <wingo@pobox.com>
3130
3131         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
3132         gst_value_set_mini_object so as to add a ref on the object (which
3133         will be removed when the value is unset).
3134
3135         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
3136         arg type in ::handoff.
3137
3138         * gst/gstelement.c (gst_element_change_state): Also deactivate
3139         pads in READY->NULL, just in case the element didn't make it to
3140         PAUSED. Wingo tested, Wim approved.
3141
3142 2005-05-26  Wim Taymans  <wim@fluendo.com>
3143
3144         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3145         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
3146         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
3147         A flushing pad cannot be used to alloc_buffer from.
3148
3149 2005-05-26  Wim Taymans  <wim@fluendo.com>
3150
3151         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
3152         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
3153         (gst_bus_source_dispatch), (gst_bus_source_finalize),
3154         (gst_bus_create_watch), (gst_bus_add_watch_full):
3155         * gst/gstbus.h:
3156         Implement a real GSource and use g_main_context_wakeup() to
3157         signal new messages instead of the socketpair.
3158
3159 2005-05-25  Wim Taymans  <wim@fluendo.com>
3160
3161         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
3162         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
3163         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3164         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
3165         (gst_pad_send_event), (gst_pad_start_task):
3166         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
3167         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
3168         (gst_queue_sink_activate), (gst_queue_src_activate),
3169         (gst_queue_change_state):
3170         * gst/gstqueue.h:
3171         Fix state changes for non sinks. We now change sinks, then elements
3172         with unconnected srcpads, then the rest.
3173         More efficient queue unlocking in flush and state changes.
3174         Set the pad activate mode even if it does not have an activate
3175         function.
3176
3177 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3178
3179         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
3180           Don't go in pull mode for non-seekable sources.
3181         * gst/elements/gsttypefindelement.h:
3182         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3183         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
3184         (free_entry), (stop_typefinding),
3185         (gst_type_find_element_handle_event), (find_peek),
3186         (gst_type_find_element_chain), (do_pull_typefind),
3187         (gst_type_find_element_change_state):
3188           Allow typefinding (w/o seeking) in push-mode, simplified version
3189           of what was in 0.8.
3190         * gst/gstutils.c: (gst_buffer_join):
3191         * gst/gstutils.h:
3192           gst_buffer_join() from 0.8.
3193
3194 2005-05-25  Wim Taymans  <wim@fluendo.com>
3195
3196         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3197         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
3198         (gst_pad_send_event), (gst_pad_start_task):
3199         Disable attempt at mode switching until it is figured out.
3200
3201 2005-05-25  Wim Taymans  <wim@fluendo.com>
3202
3203         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
3204         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
3205         (gst_basesink_finish_preroll), (gst_basesink_chain),
3206         (gst_basesink_loop), (gst_basesink_activate),
3207         (gst_basesink_change_state):
3208         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
3209         (gst_basesrc_get_range), (gst_basesrc_loop),
3210         (gst_basesrc_activate):
3211         * gst/elements/gsttee.c: (gst_tee_sink_activate):
3212         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
3213         (gst_real_pad_init), (gst_real_pad_set_property),
3214         (gst_real_pad_get_property), (gst_pad_set_active),
3215         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
3216         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
3217         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
3218         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
3219         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3220         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
3221         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
3222         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
3223         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
3224         (gst_pad_stop_task):
3225         * gst/gstpad.h:
3226         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
3227         (gst_queue_loop), (gst_queue_src_activate):
3228         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
3229         (gst_task_get_state):
3230         * gst/gsttask.h:
3231         * gst/schedulers/threadscheduler.c:
3232         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
3233         Implement gst_pad_pause/start/stop_task(), take STREAM lock
3234         in task function.
3235         Remove ACTIVE pad flag, use FLUSHING everywhere
3236         Added _pad_chain(), _pad_get_range() to call chain/getrange 
3237         functions.
3238         Add locks around IS_FLUSHING when reading.
3239         Take STREAM lock in chain(), get_range() functions so plugins
3240         don't need to take it anymore.
3241         
3242
3243
3244 2005-05-25  Wim Taymans  <wim@fluendo.com>
3245
3246         * tools/gst-launch.c: (event_loop):
3247         Unref message after using its contents instead of
3248         before.
3249
3250 2005-05-24  Wim Taymans  <wim@fluendo.com>
3251
3252         * docs/design/draft-ghostpads.txt:
3253         * docs/design/draft-push-pull.txt:
3254         * docs/design/draft-query.txt:
3255         * docs/design/part-overview.txt:
3256         Docs updates, added general overview doc.
3257
3258 2005-05-21  David Schleef  <ds@schleef.org>
3259
3260         * docs/gst/tmpl/old/GstBin.sgml:
3261         * docs/gst/tmpl/old/GstBuffer.sgml:
3262         * docs/gst/tmpl/old/GstCaps.sgml:
3263         * docs/gst/tmpl/old/GstClock.sgml:
3264         * docs/gst/tmpl/old/GstCompat.sgml:
3265         * docs/gst/tmpl/old/GstData.sgml:
3266         * docs/gst/tmpl/old/GstElement.sgml:
3267         * docs/gst/tmpl/old/GstEvent.sgml:
3268         * docs/gst/tmpl/old/GstIndex.sgml:
3269         * docs/gst/tmpl/old/GstStructure.sgml:
3270         * docs/gst/tmpl/old/GstTag.sgml:
3271         * docs/gst/tmpl/old/cothreads.sgml:
3272         * docs/gst/tmpl/old/cothreads_compat.sgml:
3273         * docs/gst/tmpl/old/gettext.sgml:
3274         * docs/gst/tmpl/old/gobject2gtk.sgml:
3275         * docs/gst/tmpl/old/grammar.tab.sgml:
3276         * docs/gst/tmpl/old/gst-i18n-app.sgml:
3277         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
3278         * docs/gst/tmpl/old/gst_private.sgml:
3279         * docs/gst/tmpl/old/gstaggregator.sgml:
3280         * docs/gst/tmpl/old/gstarch.sgml:
3281         * docs/gst/tmpl/old/gstatomic_impl.sgml:
3282         * docs/gst/tmpl/old/gstbufferstore.sgml:
3283         * docs/gst/tmpl/old/gstdata_private.sgml:
3284         * docs/gst/tmpl/old/gstdisksink.sgml:
3285         * docs/gst/tmpl/old/gstdisksrc.sgml:
3286         * docs/gst/tmpl/old/gstelementfactory.sgml:
3287         * docs/gst/tmpl/old/gstextratypes.sgml:
3288         * docs/gst/tmpl/old/gstfakesink.sgml:
3289         * docs/gst/tmpl/old/gstfakesrc.sgml:
3290         * docs/gst/tmpl/old/gstfdsink.sgml:
3291         * docs/gst/tmpl/old/gstfdsrc.sgml:
3292         * docs/gst/tmpl/old/gstfilesink.sgml:
3293         * docs/gst/tmpl/old/gstfilesrc.sgml:
3294         * docs/gst/tmpl/old/gsthttpsrc.sgml:
3295         * docs/gst/tmpl/old/gstidentity.sgml:
3296         * docs/gst/tmpl/old/gstindexfactory.sgml:
3297         * docs/gst/tmpl/old/gstmarshal.sgml:
3298         * docs/gst/tmpl/old/gstmd5sink.sgml:
3299         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
3300         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
3301         * docs/gst/tmpl/old/gstpadtemplate.sgml:
3302         * docs/gst/tmpl/old/gstpipefilter.sgml:
3303         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
3304         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
3305         * docs/gst/tmpl/old/gstshaper.sgml:
3306         * docs/gst/tmpl/old/gstspider.sgml:
3307         * docs/gst/tmpl/old/gstspideridentity.sgml:
3308         * docs/gst/tmpl/old/gststatistics.sgml:
3309         * docs/gst/tmpl/old/gsttee.sgml:
3310         * docs/gst/tmpl/old/gsttimecache.sgml:
3311         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
3312         * docs/gst/tmpl/old/gstxmlregistry.sgml:
3313         * docs/gst/tmpl/old/gthread-cothreads.sgml:
3314         * docs/gst/tmpl/old/types.sgml:
3315           I didn't intend to add these or check them in.
3316
3317 2005-05-19  David Schleef  <ds@schleef.org>
3318
3319         * configure.ac: Use -no-common everywhere.  In a sane world, it
3320           would be the default in libtool, because without it, you can't
3321           build DLLs on Windows.
3322         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
3323         * docs/gst/gstreamer-sections.txt:
3324         * docs/gst/tmpl/gstcpu.sgml:
3325         * docs/gst/tmpl/gstdata.sgml:
3326         * docs/gst/tmpl/gstthread.sgml:
3327
3328 2005-05-19  David Schleef  <ds@schleef.org>
3329
3330         * gst/gstminiobject.c: (gst_value_set_mini_object),
3331         (gst_value_take_mini_object), (gst_value_get_mini_object):
3332         * gst/gstminiobject.h: Add GValue set/get functions.
3333
3334 2005-05-19  Wim Taymans  <wim@fluendo.com>
3335
3336         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
3337         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
3338         (gst_subbuffer_init), (gst_buffer_is_span_fast):
3339         * gst/gstbuffer.h:
3340         * gst/gstbus.c: (gst_bus_post):
3341         * gst/gstelement.c: (gst_element_get_random_pad):
3342         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
3343         Make subbufer unref the parent in finalize.
3344         some more debugging info.
3345
3346
3347 2005-05-19  Wim Taymans  <wim@fluendo.com>
3348
3349         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3350         (gst_basesink_init), (gst_basesink_finalize),
3351         (gst_basesink_activate), (gst_basesink_change_state):
3352         Don't free preroll queue too early.
3353
3354 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3355
3356         * gst/Makefile.am:
3357         * gst/ROADMAP:
3358           Hi, I'm outdated. Please shoot me.
3359
3360 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3361
3362         * gst/gstpipeline.c: (gst_pipeline_send_event):
3363           Do not access variables after they have been deleted.
3364
3365 2005-05-19  Wim Taymans  <wim@fluendo.com>
3366
3367         * tools/gst-inspect.c: (print_plugin_features):
3368         A plugin feature does unfortunatly not use the
3369         object name yet...
3370
3371 2005-05-18  Wim Taymans  <wim@fluendo.com>
3372
3373         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
3374         Port _span() functions to new subbuffers.
3375
3376 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3377
3378         * gst/gstbin.c: (gst_bin_add_func):
3379           Fix clock settery in bins when adding kids after the clock has
3380           been selected.
3381
3382 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3383
3384         * gst/elements/gstidentity.c: (gst_identity_class_init):
3385           Workaround until signals support GstMiniObject.
3386
3387 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
3388
3389         * gst/gstbuffer.c:
3390         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
3391
3392 2005-05-18  Wim Taymans  <wim@fluendo.com>
3393
3394         * gst/base/Makefile.am:
3395         * gst/base/gstadapter.c: (gst_adapter_base_init),
3396         (gst_adapter_class_init), (gst_adapter_init),
3397         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
3398         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
3399         (gst_adapter_flush), (gst_adapter_available),
3400         (gst_adapter_available_fast):
3401         * gst/base/gstadapter.h:
3402         Ported and added adapter to the base classes.
3403
3404 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3405
3406         * gst/gst.c:
3407         * gst/gstmessage.c:
3408           Make sure the class is reffed/unreffed once before threads can be
3409           used.  Fixes #304551.
3410
3411 2005-05-17  Wim Taymans  <wim@fluendo.com>
3412
3413         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
3414         (gst_basesink_chain_unlocked), (gst_basesink_activate):
3415         * gst/gstminiobject.c: (gst_mini_object_get_type),
3416         (gst_mini_object_free):
3417         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
3418         (gst_pad_push), (gst_pad_push_event):
3419         * gst/gstqueue.c: (gst_queue_change_state):
3420         Don't queue buffers in basesink when we are flushing.
3421         Unref buffer when flushing in basesink.
3422         Flush queue when going to READY
3423         Unref buffer when _push() returns an error.
3424         Don't free MiniObject instance when refcount is incremented
3425         in _finalize() so that we can recover objects.
3426
3427 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
3428
3429         * docs/manual/advanced-schedulers.xml:
3430         * docs/manual/appendix-checklist.xml:
3431         * docs/pwg/advanced-clock.xml:
3432         * docs/pwg/advanced-interfaces.xml:
3433         * docs/pwg/advanced-request.xml:
3434         * docs/pwg/advanced-types.xml:
3435         * docs/pwg/intro-preface.xml:
3436         * examples/plugins/example.c: (gst_example_get_type),
3437         (gst_example_class_init), (gst_example_chain),
3438         (gst_example_set_property), (gst_example_get_property),
3439         (gst_example_change_state), (plugin_init):
3440         * examples/plugins/example.h:
3441           small doc fixes
3442
3443 2005-05-17  Wim Taymans  <wim@fluendo.com>
3444
3445         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
3446         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
3447         * gst/gstqueue.c: (gst_queue_change_state):
3448         Clear queue when going to READY.
3449         Remove IN_SETCAPS flag too.
3450
3451 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
3452
3453         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
3454           Remove implicit cast from gboolean to GstElementStateReturn;
3455           make sure we still return failure in paused => ready case if
3456           the parent class fails to change state and our own stop 
3457           vfunc succeeds.
3458
3459 2005-05-17  Wim Taymans  <wim@fluendo.com>
3460
3461         * tools/gst-launch.c: (event_loop):
3462         Message was unreffed too soon.
3463
3464 2005-05-16  Andy Wingo  <wingo@pobox.com>
3465
3466         * gst/gstbin.c (sink_iterator_filter): Err... um...
3467
3468         * check/gst/gstbin.c (test_ghost_pads): New test for the
3469         ghosting-if-elements-not-in-same-bin behavior.
3470
3471 2005-05-16  David Schleef  <ds@schleef.org>
3472
3473         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
3474         accessing refcount directly.
3475
3476 2005-05-15  David Schleef  <ds@schleef.org>
3477
3478         * check/Makefile.am: remove GstData checks
3479         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
3480         * gst/Makefile.am: add miniobject, remove data
3481         * gst/gst.h: add miniobject, remove data
3482         * gst/gstdata.c: remove
3483         * gst/gstdata.h: remove
3484         * gst/gstdata_private.h: remove
3485         * gst/gsttypes.h: remove GstEvent and GstMessage
3486         * gst/gstelement.c: (gst_element_post_message): fix for API changes
3487         * gst/gstmarshal.list: change BOXED -> OBJECT
3488
3489         Implement GstMiniObject.
3490         * gst/gstminiobject.c:
3491         * gst/gstminiobject.h:
3492
3493         Modify to be subclasses of GstMiniObject.
3494         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
3495         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
3496         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
3497         (gst_subbuffer_get_type), (gst_subbuffer_init),
3498         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
3499         (gst_buffer_span):
3500         * gst/gstbuffer.h:
3501         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
3502         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
3503         (_gst_event_copy), (gst_event_new):
3504         * gst/gstevent.h:
3505         * gst/gstmessage.c: (_gst_message_initialize),
3506         (gst_message_get_type), (gst_message_class_init),
3507         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
3508         (gst_message_new), (gst_message_new_error),
3509         (gst_message_new_warning), (gst_message_new_tag),
3510         (gst_message_new_state_changed), (gst_message_new_application):
3511         * gst/gstmessage.h:
3512         * gst/gstprobe.c: (gst_probe_perform),
3513         (gst_probe_dispatcher_dispatch):
3514         * gst/gstprobe.h:
3515         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
3516         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
3517         (_gst_query_copy), (gst_query_new):
3518
3519         Update elements for GstData -> GstMiniObject changes
3520         * gst/gstquery.h:
3521         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
3522         (gst_queue_chain), (gst_queue_loop):
3523         * gst/elements/gstbufferstore.c:
3524         (gst_buffer_store_add_buffer_func),
3525         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
3526         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3527         (gst_fakesink_render):
3528         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
3529         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
3530         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
3531         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
3532         (gst_filesrc_create_read):
3533         * gst/elements/gstidentity.c: (gst_identity_class_init):
3534         * gst/elements/gsttypefindelement.c:
3535         (gst_type_find_element_src_event), (free_entry_buffers),
3536         (gst_type_find_element_handle_event):
3537         * libs/gst/dataprotocol/dataprotocol.c:
3538         (gst_dp_header_from_buffer):
3539         * libs/gst/dataprotocol/dataprotocol.h:
3540         * libs/gst/dataprotocol/dp-private.h:
3541
3542 2005-05-15  David Schleef  <ds@schleef.org>
3543
3544         * gst/elements/gstelements.c: Don't include headers that were
3545         just removed.
3546
3547 2005-05-15  David Schleef  <ds@schleef.org>
3548
3549         * gst/elements/Makefile.am: Remove some elements that don't
3550         need to be in the core (or even exist at all).
3551         * gst/elements/gstaggregator.c:
3552         * gst/elements/gstaggregator.h:
3553         * gst/elements/gstmd5sink.c:
3554         * gst/elements/gstmd5sink.h:
3555         * gst/elements/gstmultifilesrc.c:
3556         * gst/elements/gstmultifilesrc.h:
3557         * gst/elements/gstpipefilter.c:
3558         * gst/elements/gstpipefilter.h:
3559         * gst/elements/gstshaper.c:
3560         * gst/elements/gstshaper.h:
3561         * gst/elements/gststatistics.c:
3562         * gst/elements/gststatistics.h:
3563         * po/POTFILES.in: Remove above files.
3564
3565 2005-05-14  Andy Wingo  <wingo@pobox.com>
3566
3567         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
3568         so as to get the refs right.
3569         (sink_iterator_filter): New function, wraps bin_element_is_sink,
3570         unreffing objects that don't pass the filter.
3571
3572         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
3573         gst_element_set_bus.
3574         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
3575         normal cases, this will destroy the bus.
3576
3577         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
3578         object.
3579
3580         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
3581         has no sinks.
3582
3583 2005-05-13  Andy Wingo  <wingo@pobox.com>
3584
3585         * gst/gstutils.c (gst_element_link_pads): Instead of calling
3586         gst_pad_link, call pad_link_maybe_ghosting,
3587         (pad_link_maybe_ghosting): Links pads, making sure that the
3588         elements being linked are in the same bin.
3589         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
3590         Helpers for pad_link_maybe_ghosting.
3591
3592 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3593
3594         * configure.ac:
3595           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
3596
3597 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3598
3599         * docs/design/part-element-source.txt:
3600           Mention GstPushSrc
3601
3602 2005-05-12  Wim Taymans  <wim@fluendo.com>
3603
3604         * gst/base/gstbasesink.c: (gst_basesink_init),
3605         (gst_basesink_activate):
3606         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
3607         (gst_basesrc_is_seekable):
3608         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
3609         (bin_element_is_sink), (gst_bin_change_state):
3610         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3611         * gst/gstelement.h:
3612         Identify sinks by their flag to avoid overly complicated
3613         checks (fow now).
3614         Do state changes even for elements not reachable from the
3615         sinks.
3616         BaseSink is a sink now :)
3617         Some more debugging info in the basesrc.
3618
3619
3620 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3621
3622         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
3623           Implement _query on a bin, similar to _send_event.
3624
3625 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
3626
3627         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
3628           Discont event offset format should be GST_FORMAT_BYTES,
3629           not GST_FORMAT_TIME.
3630
3631 2005-05-12  Wim Taymans  <wim@fluendo.com>
3632
3633         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
3634         Same fix as Ronald's but without the signal. 
3635
3636 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3637
3638         * gst/gstutils.c: (gst_element_query_position):
3639           No, an element is not a pad.
3640
3641 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3642
3643         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
3644         (gst_bin_get_state):
3645           If a child is removed from a bin while we remove the child from
3646           the bin and while we're retrieving its state, signal this to the
3647           get_state function so we abort the wait (instead of waiting for
3648           a timeout) and can immediately re-iterate over all other elements.
3649
3650 2005-05-12  Wim Taymans  <wim@fluendo.com>
3651
3652         * gst/base/Makefile.am:
3653         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
3654         (gst_basesrc_start):
3655         * gst/base/gstbasesrc.h:
3656         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
3657         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
3658         (gst_pushsrc_init), (gst_pushsrc_create):
3659         * gst/base/gstpushsrc.h:
3660         Added is_seekable to BaseSrc
3661         Added simple PushSrc.
3662
3663 2005-05-11  Wim Taymans  <wim@fluendo.com>
3664
3665         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3666         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3667         (gst_element_link_pads), (gst_element_query_position),
3668         (gst_element_query_convert), (intersect_caps_func),
3669         (gst_pad_query_position), (gst_pad_query_convert):
3670         Fix refcounting in utils function.
3671         No point in trying to activate a pad when it's added, it could
3672         be added from the state change function and then we deadlock, the
3673         element has to decide what to do.
3674
3675 2005-05-10  Andy Wingo  <wingo@pobox.com>
3676
3677         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
3678         *all* the arguments.
3679
3680         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
3681         stream lock if it's a FLUSH_DONE; normal flushes don't get the
3682         lock (according to the docs -- if this is wrong change the docs).
3683
3684         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
3685         flush messages in the NULL state.
3686
3687         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
3688         message immediately and return.
3689         (gst_bus_set_flushing): New function. If a bus is flushing, it
3690         flushes out any queued messages and immediately unrefs new
3691         messages. This is so when an element goes to NULL, all of the
3692         unhandled messages coming from it can be freed, and their
3693         references to the element dropped. In other words: message source
3694         ref considered harmful :P
3695
3696         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
3697         we're finished with it.
3698
3699         * gst/gstmessage.c (gst_message_new_state_changed): 
3700
3701 2005-05-10  Wim Taymans  <wim@fluendo.com>
3702
3703         * gst/gstvalue.c: (gst_value_compare_flags),
3704         (gst_value_serialize_flags), (gst_value_deserialize_flags),
3705         (_gst_value_initialize):
3706         Added flags serialize/deserialize/compare code.
3707
3708 2005-05-09  Andy Wingo  <wingo@pobox.com>
3709
3710         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
3711         Intersect the peer's caps with our caps.
3712
3713 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3714
3715         * gst/base/gsttypefindhelper.c: (helper_find_peek):
3716         * gst/elements/gsttypefindelement.c: (find_peek):
3717           Handle negative offsets better. Fixes decodebin.
3718
3719 2005-05-09  Wim Taymans  <wim@fluendo.com>
3720
3721         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
3722         (gst_base_transform_event):
3723         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
3724         Implement accept_caps.
3725         Fix silly lock/unlock mismatch in base class.
3726
3727 2005-05-09  Wim Taymans  <wim@fluendo.com>
3728
3729         * docs/design/draft-push-pull.txt:
3730         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
3731         * gst/elements/gstfilesink.c: (gst_filesink_init),
3732         (gst_filesink_query):
3733         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3734         (gst_type_find_handle_src_query), (find_element_get_length):
3735         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
3736         * gst/gstelement.h:
3737         * gst/gstmessage.c:
3738         * gst/gstmessage.h:
3739         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
3740         (gst_real_pad_get_caps_unlocked),
3741         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
3742         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3743         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
3744         (gst_real_pad_dispose), (gst_real_pad_finalize),
3745         (gst_pad_load_and_link), (gst_pad_save_thyself),
3746         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
3747         (gst_pad_check_pull_range), (gst_pad_pull_range),
3748         (gst_pad_template_get_type), (gst_pad_template_class_init),
3749         (gst_pad_template_init), (gst_pad_template_dispose),
3750         (name_is_valid), (gst_static_pad_template_get),
3751         (gst_pad_template_new), (gst_static_pad_template_get_caps),
3752         (gst_pad_template_get_caps), (gst_pad_set_element_private),
3753         (gst_pad_get_element_private), (gst_pad_start_task),
3754         (gst_pad_pause_task), (gst_pad_stop_task),
3755         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
3756         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
3757         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
3758         (gst_ghost_pad_new):
3759         * gst/gstpad.h:
3760         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
3761         (gst_query_new_position), (gst_query_set_position),
3762         (gst_query_parse_position), (gst_query_new_convert),
3763         (gst_query_set_convert), (gst_query_parse_convert):
3764         * gst/gstquery.h:
3765         * gst/gstqueryutils.c:
3766         * gst/gstqueryutils.h:
3767         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3768         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3769         (gst_queue_handle_src_query):
3770         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3771         (gst_element_query_position), (gst_element_query_convert),
3772         (intersect_caps_func), (gst_pad_query_position),
3773         (gst_pad_query_convert):
3774         * gst/gstutils.h:
3775         * tools/gst-inspect.c: (print_pad_info):
3776         * tools/gst-xmlinspect.c: (print_element_info):
3777         Remove old query functions. Ported old code.
3778         Added position/convert helper functions to gstutils.
3779         Reordered gstpad.c code, grouping relevant things.
3780         Remove gst_message_new(), always need to speficy a specific
3781         message.
3782
3783
3784 2005-05-09  Andy Wingo  <wingo@pobox.com>
3785
3786         * gst/gstiterator.h: Add some includes.
3787
3788         * gst/gstqueryutils.h: Include more headers.
3789
3790         * gst/gstpad.h:
3791         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
3792         some uses of gst_pad_query.
3793
3794         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
3795         NULL out parameters.
3796         (gst_query_new_position): New proc, allocates a new position
3797         query.
3798
3799         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
3800         gstqueryutils.c to the build.
3801
3802         * gst/gststructure.c (gst_structure_set_valist): Implement with
3803         the generic G_VALUE_COLLECT.
3804         
3805 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
3806
3807         * gst/Makefile.am: (gst_headers):
3808         Added gstqueryutils.h to the list of headers to install, that was
3809         a 'nachty' move wingo :)
3810
3811 2005-05-06  Andy Wingo  <wingo@pobox.com>
3812
3813         * gst/gstquery.h
3814         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
3815         GstData, init a memchunk.
3816         (standard_definitions): Add a few query types, deprecate a few.
3817         (gst_query_get_type): New proc.
3818         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
3819         implementation.
3820         (gst_query_new_application, gst_query_get_structure): New public
3821         procs.
3822
3823         * docs/design/draft-query.txt: Removed LINKS from the query types,
3824         because all the rest can be dispatched to other pads -- seemed
3825         ugly to have a query that couldn't be dispatched. internal_links
3826         is fine as a pad method.
3827
3828         * gst/gstpad.h: Add query2 as a pad method, add the new functions
3829         in gstpad.c, but maintain binary compatibility for the moment.
3830         Will fix before 0.9 is out.
3831
3832         * gst/gstqueryutils.c: 
3833         * gst/gstqueryutils.h: New files, implement 3 methods for each
3834         query type: parse_query, parse_response, and set. Probably need an
3835         allocator as well.
3836
3837         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
3838
3839         * gst/elements/gstfilesink.c (gst_filesink_query2):
3840         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
3841         query_types, and formats methods.
3842
3843         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
3844         (gst_pad_set_query2_function): New functions.
3845         (gst_real_pad_init): Set query2_default as the default query2
3846         function. Basically just dispatches to internally linked pads.
3847
3848         Needs review!
3849         
3850         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
3851         without using the atomic operations. Only one thread can possibly
3852         be accessing the data at this point. Changed so as to avoid
3853         gst_atomic operations.
3854
3855 2005-05-06  Wim Taymans  <wim@fluendo.com>
3856
3857         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
3858         Also set caps if we use the fallback buffer alloc.
3859
3860 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
3861
3862         * docs/gst/Makefile.am:
3863         * docs/gst/gstreamer-docs.sgml:
3864         * docs/gst/gstreamer-sections.txt:
3865         * docs/gst/tmpl/gstatomic.sgml:
3866         * docs/gst/tmpl/gstmemchunk.sgml:
3867         * testsuite/elements/struct_i386.h:
3868         * win32/GStreamer.vcproj:
3869         * win32/Makefile:
3870           Purge GstAtomic stuff from docs and win32 makefiles as well
3871
3872 2005-05-06  Wim Taymans  <wim@fluendo.com>
3873
3874         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
3875         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
3876         * gst/gstpad.c: (gst_pad_peer_get_caps):
3877         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3878         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3879         (gst_queue_src_activate), (gst_queue_change_state):
3880         * gst/gstqueue.h:
3881         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3882         (intersect_caps_func):
3883         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
3884         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
3885         Some fixes for the peer_get_caps() change.
3886
3887 2005-05-06  Wim Taymans  <wim@fluendo.com>
3888
3889         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
3890         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
3891         (gst_basesink_activate):
3892         Actually do something with error codes returned from the push
3893         functions.
3894
3895 2005-05-06  Wim Taymans  <wim@fluendo.com>
3896
3897         * docs/design/part-element-sink.txt:
3898         * docs/design/part-element-source.txt:
3899         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3900         (gst_basesink_event), (gst_basesink_activate):
3901         * gst/base/gstbasesink.h:
3902         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
3903         (gst_basesrc_activate):
3904         * gst/base/gstbasesrc.h:
3905         * gst/gstelement.c: (gst_element_pads_activate):
3906         Some more documentation.
3907         Fixed scheduling decision in _pads_activate().
3908
3909 2005-05-05  Andy Wingo  <wingo@pobox.com>
3910
3911         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
3912         the test suite.
3913
3914 2005-05-05  Wim Taymans  <wim@fluendo.com>
3915
3916         * gst/base/Makefile.am:
3917         * gst/base/gstbasesink.h:
3918         * gst/base/gstbasesrc.c: (gst_basesrc_init),
3919         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
3920         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
3921         (gst_collectpads_class_init), (gst_collectpads_init),
3922         (gst_collectpads_finalize), (gst_collectpads_new),
3923         (gst_collectpads_set_function), (gst_collectpads_add_pad),
3924         (find_pad), (gst_collectpads_remove_pad),
3925         (gst_collectpads_is_active), (gst_collectpads_collect),
3926         (gst_collectpads_collect_range), (gst_collectpads_start),
3927         (gst_collectpads_stop), (gst_collectpads_peek),
3928         (gst_collectpads_pop), (gst_collectpads_available),
3929         (gst_collectpads_read), (gst_collectpads_flush),
3930         (gst_collectpads_chain):
3931         * gst/base/gstcollectpads.h:
3932         * gst/elements/Makefile.am:
3933         * gst/elements/gstelements.c:
3934         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3935         (gst_fakesink_get_times), (gst_fakesink_event),
3936         (gst_fakesink_preroll), (gst_fakesink_render):
3937         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
3938         (gst_filesink_init), (gst_filesink_set_location),
3939         (gst_filesink_open_file), (gst_filesink_close_file),
3940         (gst_filesink_pad_query), (gst_filesink_event),
3941         (gst_filesink_render), (gst_filesink_change_state):
3942         * gst/elements/gstfilesink.h:
3943         Added object to help in making collect pad based elements.
3944         Ported filesink.
3945         Make event function in sink baseclass return gboolean.
3946
3947 2005-05-05  Wim Taymans  <wim@fluendo.com>
3948
3949         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
3950         (gst_bin_get_by_name):
3951         * gst/gstbuffer.h:
3952         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
3953         (gst_clock_finalize):
3954         * gst/gstdata.c: (gst_data_replace):
3955         * gst/gstdata.h:
3956         * gst/gstelement.c: (gst_element_request_pad),
3957         (gst_element_pads_activate):
3958         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
3959         (gst_object_unref):
3960         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3961         (gst_pad_set_checkgetrange_function),
3962         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
3963         (gst_pad_check_pull_range), (gst_pad_pull_range),
3964         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3965         (gst_pad_pause_task), (gst_pad_stop_task):
3966         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3967         (gst_element_request_pad), (gst_pad_proxy_getcaps):
3968         Fix name lookup in GstBin.
3969         Added _data_replace() function and _buffer_replace()
3970         Use finalize method to clean up clock.
3971         Fix refcounting on request pads.
3972         Fix pad schedule mode error.
3973         Some more object refcounting debug info,
3974
3975
3976 2005-05-04  Andy Wingo <wingo@pobox.com>
3977
3978         * check/Makefile.am:
3979         * docs/gst/tmpl/gstatomic.sgml:
3980         * docs/gst/tmpl/gstplugin.sgml:
3981         * gst/base/gstbasesink.c: (gst_basesink_activate):
3982         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
3983         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
3984         (gst_basesrc_query), (gst_basesrc_set_property),
3985         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
3986         (gst_basesrc_activate):
3987         * gst/base/gstbasesrc.h:
3988         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
3989         (gst_base_transform_src_activate):
3990         * gst/elements/gstelements.c:
3991         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3992         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
3993         * gst/elements/gsttee.c: (gst_tee_sink_activate):
3994         * gst/elements/gsttypefindelement.c: (find_element_get_length),
3995         (gst_type_find_element_checkgetrange),
3996         (gst_type_find_element_activate):
3997         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
3998         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
3999         (gst_caps_load_thyself):
4000         * gst/gstelement.c: (gst_element_pads_activate),
4001         (gst_element_save_thyself), (gst_element_restore_thyself):
4002         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
4003         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
4004         * gst/gstpad.h:
4005         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
4006         (gst_xml_parse_file), (gst_xml_parse_memory),
4007         (gst_xml_get_element), (gst_xml_make_element):
4008         * gst/indexers/gstfileindex.c: (gst_file_index_load),
4009         (_file_index_id_save_xml), (gst_file_index_commit):
4010         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
4011         (read_enum), (load_pad_template), (load_feature), (load_plugin),
4012         (load_paths):
4013         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
4014         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
4015         * tools/gst-complete.c: (main):
4016         * tools/gst-compprep.c: (main):
4017         * tools/gst-inspect.c: (print_element_properties_info):
4018         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
4019         * tools/gst-xmlinspect.c: (print_element_properties):
4020         GCC 4 fixen.
4021         
4022 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
4023
4024         * gst/gstplugin.c: (gst_plugin_check_module),
4025         (gst_plugin_check_file), (gst_plugin_load_file):
4026             apply patch from #172526 to make register work on MacOSX
4027
4028 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
4029
4030         * docs/gst/tmpl/gstconfig.sgml:
4031         * gst/gstconfig.h.in:
4032           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
4033         * testsuite/debug/printf_extension.c: (main):
4034           Do not use GST_PTR_FORMAT on pointers to types with
4035           sizeof < sizeof(gpointer).  Fixes test on 64-bit
4036         * testsuite/elements/property.h:
4037           use correct printf format
4038
4039 2005-05-02  Wim Taymans  <wim@fluendo.com>
4040
4041         * docs/design/draft-push-pull.txt:
4042         * docs/design/draft-query.txt:
4043         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
4044         (gst_basesrc_start):
4045         Added draft for new query API.
4046         Added draft for better selecting scheduling methods.
4047         Make basesrc ignore length if the subclass does not support
4048         it.
4049
4050 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
4051
4052         * gst/Makefile.am:
4053           possible fixes for automake-1.5 - _LIBADD is reserved
4054
4055 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
4056
4057         * docs/faq/Makefile.am:
4058         * docs/manual/Makefile.am:
4059         * docs/manuals.mak:
4060         * docs/pwg/Makefile.am:
4061         * gst/Makefile.am:
4062           possible fixes for automake-1.5
4063
4064 2005-04-28  Wim Taymans  <wim@fluendo.com>
4065
4066         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4067         (gst_basesink_pad_getcaps), (gst_basesink_init),
4068         (gst_basesink_do_sync):
4069         * gst/gstclock.c: (gst_clock_entry_new):
4070         * gst/gstevent.c: (gst_event_discont_get_value):
4071         * gst/gstpipeline.c: (pipeline_bus_handler),
4072         (gst_pipeline_change_state):
4073         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
4074         Better debugging of clocking info.
4075         Allow NULL values when getting discont values.
4076
4077 2005-04-27  Wim Taymans  <wim@fluendo.com>
4078
4079         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
4080         * check/gst/gstpad.c: (gst_pad_suite):
4081         Increase timeout for checks.
4082
4083 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
4084
4085         * check/Makefile.am:
4086           fix the broken rule for cleanup.  Apparently this rule is
4087           only needed on FC2, so maybe this warrants further autotool
4088           inspection.
4089
4090 2005-04-26  Wim Taymans  <wim@fluendo.com>
4091
4092         * gst/gsttrashstack.h:
4093         Ooohh. a nasty one! After having a failed pop() from the stack,
4094         it's possible that the stack is empty. In that case, don't
4095         follow the NULL pointer.
4096
4097 2005-04-25  Wim Taymans  <wim@fluendo.com>
4098
4099         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4100         (gst_pad_set_checkgetrange_function),
4101         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
4102         (gst_pad_check_pull_range), (gst_pad_pull_range),
4103         (gst_static_pad_template_get_caps), (gst_pad_start_task),
4104         (gst_pad_pause_task), (gst_pad_stop_task):
4105         * gst/gstplugin.c: (gst_plugin_load):
4106         * gst/gstplugin.h:
4107         Remove gst_library_load as it does more harm than good with
4108         the new g_module flags.
4109         Revert bogus caps template check in pad linking, pad caps
4110         are important when linking not the template, which is more
4111         general than the current caps.
4112
4113 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4114
4115         * gst/autoplug/.cvsignore:
4116         * gst/autoplug/Makefile.am:
4117         * gst/autoplug/gstsearchfuncs.c:
4118         * gst/autoplug/gstsearchfuncs.h:
4119         * gst/autoplug/gstspider.c:
4120         * gst/autoplug/gstspider.h:
4121         * gst/autoplug/gstspideridentity.c:
4122         * gst/autoplug/gstspideridentity.h:
4123         * gst/autoplug/spidertest.c:
4124           Die, spider, die.
4125
4126 2005-04-25  Wim Taymans  <wim@fluendo.com>
4127
4128         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4129         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
4130         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
4131         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
4132         * gst/gstpad.h:
4133         Added stubs for unimplemented functions. 
4134
4135 2005-04-24  David Schleef  <ds@schleef.org>
4136
4137         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
4138         please fix.
4139
4140 2005-04-24  David Schleef  <ds@schleef.org>
4141
4142         Convert everything from GstAtomicInt to g_atomic_int_*, and
4143         remove gstatomic.
4144         * gst/Makefile.am:
4145         * gst/gstatomic.c:
4146         * gst/gstatomic.h:
4147         * gst/gstatomic_impl.h:
4148         * gst/gstbuffer.c:
4149         * gst/gstcaps.c:
4150         * gst/gstcaps.h:
4151         * gst/gstclock.c:
4152         * gst/gstclock.h:
4153         * gst/gstdata.c:
4154         * gst/gstdata.h:
4155         * gst/gstdata_private.h:
4156         * gst/gstevent.c:
4157         * gst/gstinfo.c:
4158         * gst/gstinfo.h:
4159         * gst/gstmessage.c:
4160         * gst/gstobject.c:
4161         * gst/gstobject.h:
4162         * gst/gststructure.c:
4163         * gst/gststructure.h:
4164         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
4165         * gst/gstutils.h:
4166
4167 2005-04-24  David Schleef  <ds@schleef.org>
4168
4169         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
4170         make the regressions tests work.  Remove some code that is no
4171         longer true.
4172         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
4173         Disable warning for pads without templates.
4174
4175 2005-04-24  David Schleef  <ds@schleef.org>
4176
4177         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
4178         functions that handle filtered links.
4179         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
4180         removed functions.
4181         * gst/gstutils.c: Fix/remove utility functions that handle
4182         filtered caps.
4183         * gst/gstutils.h:
4184         * gst/gstvalue.c: Add serialization/deserialization of caps
4185         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
4186         requires fixing so that the filter caps notation creates
4187         a capsfilter element and sets the filter_caps property.  I
4188         think everyone probably wants to keep the shorthand notation.
4189         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
4190         * docs/gst/tmpl/gstpad.sgml:
4191
4192         * gst/elements/gstelements.c: Register capsfilter element.
4193         * gst/Makefile.am: fix spacing
4194         * docs/random/ds/0.9-suggested-changes: random
4195
4196 2005-04-23  David Schleef  <ds@schleef.org>
4197
4198         * gst/elements/Makefile.am:
4199         * gst/elements/gstcapsfilter.c: New element that acts like an
4200         identity, but filters caps.  Will eventually replace filtered
4201         caps in pad linking.
4202         * gst/gstutils.c: (gst_element_create_all_pads): New function
4203         to create all the ALWAYS pads that are registered with an
4204         element class.  This functionality should eventually be
4205         merged in with GstElement initialization.
4206         * gst/gstutils.h:
4207         * testsuite/trigger/README: part of trigger test code that should
4208         have been checked in a long time ago.
4209
4210 2005-04-23  David Schleef  <ds@schleef.org>
4211
4212         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
4213         needed with new versions of libtool (nobody will confirm this),
4214         and hard to carry around.
4215         * gst/autoplug/Makefile.am:
4216         * gst/base/Makefile.am:
4217         * gst/elements/Makefile.am:
4218         * gst/indexers/Makefile.am:
4219         * gst/schedulers/Makefile.am:
4220         * libs/gst/bytestream/Makefile.am:
4221         * libs/gst/control/Makefile.am:
4222         * libs/gst/dataprotocol/Makefile.am:
4223         * libs/gst/getbits/Makefile.am:
4224
4225 2005-04-21  Wim Taymans  <wim@fluendo.com>
4226
4227         * docs/design/draft-push-pull.txt:
4228         * docs/design/part-MT-refcounting.txt:
4229         * docs/design/part-TODO.txt:
4230         * docs/design/part-caps.txt:
4231         * docs/design/part-events.txt:
4232         * docs/design/part-gstbus.txt:
4233         * docs/design/part-gstpipeline.txt:
4234         * docs/design/part-messages.txt:
4235         * docs/design/part-push-pull.txt:
4236         * docs/design/part-query.txt:
4237         Some more docs.
4238
4239 2005-04-21  Wim Taymans  <wim@fluendo.com>
4240
4241         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
4242         (gst_message_new), (gst_message_new_error),
4243         (gst_message_new_warning), (gst_message_new_tag),
4244         (gst_message_new_state_changed), (gst_message_new_application),
4245         (gst_message_get_structure):
4246         * gst/gstmessage.h:
4247         * gst/gststructure.c: (gst_structure_set_parent_refcount),
4248         (gst_structure_copy_conditional):
4249         Use parent refcount in GstMessage to ensure GstStructure
4250         consistency.
4251         Cleaned up headers a bit.
4252         
4253
4254 2005-04-20  Wim Taymans  <wim@fluendo.com>
4255
4256         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4257         (gst_basesink_pad_getcaps), (gst_basesink_init),
4258         (gst_basesink_chain_unlocked):
4259         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
4260         (gst_type_find_helper):
4261         * gst/elements/gsttypefindelement.c:
4262         (gst_type_find_element_have_type), (gst_type_find_element_init),
4263         (stop_typefinding), (gst_type_find_element_handle_event),
4264         (find_suggest), (gst_type_find_element_chain),
4265         (gst_type_find_element_checkgetrange),
4266         (gst_type_find_element_getrange), (do_typefind),
4267         (gst_type_find_element_activate):
4268         * gst/gstbuffer.c: (_gst_buffer_sub_free),
4269         (gst_buffer_default_free), (gst_buffer_default_copy),
4270         (gst_buffer_set_caps):
4271         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
4272         (gst_caps_replace):
4273         * gst/gstmessage.c: (gst_message_new),
4274         (gst_message_new_state_changed):
4275         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4276         (gst_pad_set_checkgetrange_function),
4277         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
4278         (gst_pad_set_caps), (gst_pad_check_pull_range),
4279         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
4280         * gst/gstpad.h:
4281         * gst/gsttypefind.c: (gst_type_find_register):
4282         Make gst_caps_replace() work like other _replace() functions.
4283         Use _caps_replace() where possible.
4284         Make sure _message_new() initialises its field.
4285         Add gst_static_pad_template_get_caps()
4286
4287
4288 2005-04-18  Andy Wingo  <wingo@pobox.com>
4289
4290         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
4291         on the peer, not the pad. I think that was a typo. Pass an extra
4292         arg to see if random access is possible. Activate the pads as
4293         PULL_RANGE if possible.
4294
4295         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
4296
4297         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
4298         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
4299         to PROP_....
4300
4301 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4302
4303         * docs/faq/using.xml:
4304           Add note on gstreamer-properties (#154996).
4305
4306 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4307
4308         * docs/random/bbb/optional-properties:
4309           Some analysis on optional properties.
4310
4311 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4312
4313         * docs/gst/tmpl/gstelementfactory.sgml:
4314         * gst/gstelement.h:
4315         * gst/gstelementfactory.c: (gst_element_factory_init),
4316         (gst_element_factory_cleanup), (gst_element_register),
4317         (__gst_element_factory_add_static_pad_template),
4318         (gst_element_factory_get_static_pad_templates),
4319         (gst_element_factory_can_src_caps),
4320         (gst_element_factory_can_sink_caps):
4321         * gst/registries/Makefile.am:
4322         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
4323         (gst_xml_registry_class_init), (gst_xml_registry_init),
4324         (gst_xml_registry_new), (gst_xml_registry_set_property),
4325         (gst_xml_registry_get_property), (get_time), (make_dir),
4326         (gst_xml_registry_get_perms_func),
4327         (plugin_times_older_than_recurse), (plugin_times_older_than),
4328         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
4329         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
4330         (add_to_char_array), (read_string), (read_uint), (read_enum),
4331         (load_pad_template), (load_feature), (load_plugin), (load_paths),
4332         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
4333         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
4334         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
4335         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
4336         (gst_xml_registry_rebuild):
4337         * gst/registries/gstlibxmlregistry.h:
4338         * tools/gst-compprep.c: (main):
4339         * tools/gst-inspect.c: (print_pad_templates_info):
4340         * tools/gst-xmlinspect.c: (print_element_info):
4341           Use libxml2 for registry parsing, use staticpadtemplates in
4342           elementfactories. Makes gst_init() +/- 10x faster.
4343
4344 2005-04-12  Wim Taymans  <wim@fluendo.com>
4345
4346         * gst/base/Makefile.am:
4347         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4348         (gst_basesink_pad_getcaps), (gst_basesink_init),
4349         (gst_basesink_event), (gst_basesink_change_state):
4350         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4351         (gst_basesrc_init), (gst_basesrc_query),
4352         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
4353         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
4354         (gst_basesrc_check_get_range), (gst_basesrc_loop),
4355         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
4356         (gst_basesrc_stop), (gst_basesrc_activate),
4357         (gst_basesrc_change_state):
4358         * gst/base/gsttypefindhelper.c: (helper_find_peek),
4359         (helper_find_suggest), (gst_type_find_helper):
4360         * gst/base/gsttypefindhelper.h:
4361         * gst/elements/Makefile.am:
4362         * gst/elements/gstelements.c:
4363         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
4364         (gst_fakesink_get_times), (gst_fakesink_event),
4365         (gst_fakesink_preroll), (gst_fakesink_render):
4366         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4367         (gst_fakesrc_init), (gst_fakesrc_event_handler),
4368         (gst_fakesrc_get_property), (gst_fakesrc_create),
4369         (gst_fakesrc_start), (gst_fakesrc_stop):
4370         * gst/elements/gstfakesrc.h:
4371         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
4372         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
4373         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
4374         (gst_filesrc_create_read), (gst_filesrc_create),
4375         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
4376         (gst_filesrc_start):
4377         * gst/elements/gsttypefindelement.c:
4378         (gst_type_find_element_have_type), (gst_type_find_element_init),
4379         (start_typefinding), (stop_typefinding), (push_buffer_store),
4380         (gst_type_find_element_handle_event),
4381         (gst_type_find_element_chain),
4382         (gst_type_find_element_checkgetrange),
4383         (gst_type_find_element_getrange), (do_typefind),
4384         (gst_type_find_element_activate),
4385         (gst_type_find_element_change_state):
4386         * gst/elements/gsttypefindelement.h:
4387         * gst/gstpipeline.c: (pipeline_bus_handler):
4388         Added typefind helper.
4389         Small preroll fix in the base sink.
4390         Disable typefind code in basesrc.
4391         Crude port of typefindelement.
4392         Fakesrc cleanups.
4393
4394
4395 2005-04-11  Wim Taymans  <wim@fluendo.com>
4396
4397         * check/gst/gstbus.c: (gstbus_suite):
4398         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
4399         * check/gstcheck.h:
4400           Fix up the timeout so that the test does not fail.
4401
4402 2005-04-06  Wim Taymans  <wim@fluendo.com>
4403
4404         * gst/base/README:
4405         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4406         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
4407         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
4408         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
4409         (gst_basesrc_check_get_range), (gst_basesrc_loop),
4410         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
4411         (gst_basesrc_stop), (gst_basesrc_activate),
4412         (gst_basesrc_change_state), (basesrc_find_peek),
4413         (basesrc_find_suggest), (gst_basesrc_type_find):
4414         * gst/base/gstbasesrc.h:
4415         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
4416         (gst_filesrc_class_init), (gst_filesrc_init),
4417         (gst_filesrc_finalize), (gst_filesrc_set_location),
4418         (gst_filesrc_set_property), (gst_filesrc_get_property),
4419         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
4420         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
4421         (gst_filesrc_create_read), (gst_filesrc_create),
4422         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
4423         * gst/elements/gstfilesrc.h:
4424         * gst/gstelement.c: (gst_element_get_state_func),
4425         (gst_element_lost_state), (gst_element_pads_activate):
4426         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4427         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
4428         (gst_pad_pull_range):
4429         * gst/gstpad.h:
4430         More work on the generic source base class, implement seeking,
4431         query.
4432         Make filesrc extend the base source class.
4433         Added gst_pad_set_checkgetrange_function to GstPad.
4434
4435 2005-04-06  Andy Wingo  <wingo@pobox.com>
4436
4437         * pkgconfig/gstreamer-base.pc.in:
4438         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
4439
4440         * pkgconfig/Makefile.am:
4441         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
4442
4443 2005-04-04  Wim Taymans  <wim@fluendo.com>
4444
4445         * gst/base/Makefile.am:
4446         * gst/base/README:
4447         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4448         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4449         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4450         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
4451         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4452         (gst_basesrc_base_init), (gst_basesrc_class_init),
4453         (gst_basesrc_init), (gst_basesrc_get_formats),
4454         (gst_basesrc_get_query_types), (gst_basesrc_query),
4455         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
4456         (gst_basesrc_set_property), (gst_basesrc_get_property),
4457         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
4458         (gst_basesrc_loop), (gst_basesrc_activate),
4459         (gst_basesrc_change_state):
4460         * gst/base/gstbasesrc.h:
4461         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
4462         (gst_fakesrc_class_init), (gst_fakesrc_init),
4463         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
4464         (gst_fakesrc_get_property), (gst_fakesrc_create):
4465         * gst/elements/gstfakesrc.h:
4466         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
4467         (gst_filesrc_open_file), (gst_filesrc_loop),
4468         (gst_filesrc_activate), (filesrc_find_peek),
4469         (gst_filesrc_type_find):
4470         Made base source class, make fakesrc extend it.
4471         Add comments to basesink class.
4472         Some filesrc cleanup.
4473
4474 2005-03-31  David Schleef  <ds@schleef.org>
4475
4476         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
4477         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
4478         expected to link against libgstreamer.
4479         * gst/base/Makefile.am: link against libgstreamer
4480         * gst/elements/Makefile.am: same
4481
4482 2005-03-31  Andy Wingo  <wingo@pobox.com>
4483
4484         * tests/instantiate/Makefile.am:
4485         * tests/instantiate/caps.c: Add test to test speed of caps copy
4486         and free.
4487
4488         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
4489         GMemChunk to be fair.
4490
4491         * gst/gsttrashstack.h: Remove warning about using the fallback
4492         trash stack implementation, it's still faster than malloc.
4493
4494 2005-03-30  Andy Wingo  <wingo@pobox.com>
4495
4496         * tests/complexity.c: Add a copyright.
4497
4498 2005-03-31  Wim Taymans  <wim@fluendo.com>
4499
4500         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
4501         (gst_base_transform_class_init), (gst_base_transform_init),
4502         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
4503         (gst_base_transform_get_property),
4504         (gst_base_transform_sink_activate),
4505         (gst_base_transform_src_activate),
4506         (gst_base_transform_change_state):
4507         * gst/base/gstbasetransform.h:
4508         * gst/elements/gstidentity.c: (gst_identity_class_init),
4509         (gst_identity_event), (gst_identity_check_perfect),
4510         (gst_identity_transform), (gst_identity_start),
4511         (gst_identity_stop):
4512         Added start/stop methods to transform base class so subclasses 
4513         don't need to deal with state changes even.
4514
4515 2005-03-31  Wim Taymans  <wim@fluendo.com>
4516
4517         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
4518         (gst_event_new_discontinuous), (gst_event_discont_get_value):
4519         * gst/gstevent.h:
4520         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4521         (gst_pad_pull_range):
4522         Added rate to the discont event to prepare for variable speed
4523         and reverse playback.
4524
4525 2005-03-29  David Schleef  <ds@schleef.org>
4526
4527         * configure.ac:
4528         * testsuite/trigger/Makefile.am:
4529         * testsuite/trigger/trigger.c: A little example program to show
4530         how trigger-based elements can work.
4531
4532 2005-03-29  Wim Taymans  <wim@fluendo.com>
4533
4534         * gst/base/Makefile.am:
4535         * gst/base/README:
4536         * gst/base/gstbasesink.c: (gst_basesink_get_type),
4537         (gst_basesink_base_init), (gst_basesink_class_init),
4538         (gst_basesink_pad_getcaps), (gst_basesink_init),
4539         (gst_basesink_activate), (gst_basesink_change_state):
4540         * gst/base/gstbasesink.h:
4541         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
4542         (gst_base_transform_base_init), (gst_base_transform_finalize),
4543         (gst_base_transform_class_init), (gst_base_transform_init),
4544         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
4545         (gst_base_transform_event), (gst_base_transform_getrange),
4546         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
4547         (gst_base_transform_set_property),
4548         (gst_base_transform_get_property),
4549         (gst_base_transform_sink_activate),
4550         (gst_base_transform_src_activate),
4551         (gst_base_transform_change_state):
4552         * gst/base/gstbasetransform.h:
4553         * gst/elements/gstidentity.c: (gst_identity_finalize),
4554         (gst_identity_class_init), (gst_identity_init),
4555         (gst_identity_event), (gst_identity_check_perfect),
4556         (gst_identity_transform), (gst_identity_set_property),
4557         (gst_identity_get_property), (gst_identity_change_state):
4558         * gst/elements/gstidentity.h:
4559         * gst/gstelement.c: (gst_element_get_state_func),
4560         (gst_element_lost_state), (gst_element_pads_activate):
4561         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4562         (gst_pad_check_pull_range), (gst_pad_pull_range):
4563         * gst/gstpad.h:
4564         Simplify pad activation.
4565         Added function to check if pull_range can be performed.
4566         Error out when pulling inactive or flushing pads.
4567         Removed const from refcounted types as it does not make sense.
4568         Simplify pad templates in basesink
4569         Added base class for simple 1-to-1 transforms.
4570         Make identity subclass the base transform.
4571
4572 2005-03-29  Andy Wingo  <wingo@pobox.com>
4573
4574         * docs/libs/gstreamer-libs-overrides.txt: 
4575         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
4576         really don't understand what's going on, but like whatever. I want
4577         green buildbot!
4578
4579         * docs/gst/Makefile.am:
4580         * docs/libs/Makefile.am: Dist the overrides files.
4581
4582         * check/Makefile.am (clean-local): Remove .libs directories.
4583
4584         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
4585         elements to EXTRA_DIST, so po/ files are happy.
4586
4587         * po/POTFILES.in: Er, remove it here.
4588
4589         * po/POTFILES: Remove gstspider.c.
4590
4591         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
4592
4593         * docs/libs/gstreamer-libs-docs.sgml: 
4594         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
4595         bytestream.
4596
4597         * tests/complexity.c (main): Set the length of the preroll queue
4598         on the sinks to prevent a lockup.
4599
4600         * libs/gst/dataprotocol/Makefile.am: 
4601         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
4602         the same as the one in check/gst-libs/gdp.c.
4603
4604         * po/, docs/gst/: Commit automatic changes to docs and po files.
4605
4606         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
4607         the versioned libgstbase.
4608
4609         * check/Makefile.am: Depend on an unversioned gst-register, seems
4610         to make autoconf happier.
4611
4612         * gst/base/Makefile.am: Make libgstbase a versioned lib.
4613
4614 2005-03-28  Wim Taymans  <wim@fluendo.com>
4615
4616         * configure.ac:
4617         * docs/design/part-gstelement.txt:
4618         * docs/design/part-negotiation.txt:
4619         * docs/design/part-preroll.txt:
4620         * docs/design/part-scheduling.txt:
4621         * docs/design/part-states.txt:
4622         * gst/Makefile.am:
4623         * gst/base/Makefile.am:
4624         * gst/base/README:
4625         * gst/base/gstbasesink.c: (gst_basesink_get_template),
4626         (gst_basesink_base_init), (gst_basesink_class_init),
4627         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4628         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4629         (gst_basesink_set_pad_functions),
4630         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
4631         (gst_basesink_set_property), (gst_basesink_get_property),
4632         (gst_base_sink_get_template), (gst_base_sink_get_caps),
4633         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
4634         (gst_basesink_preroll_queue_push),
4635         (gst_basesink_preroll_queue_empty),
4636         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
4637         (gst_basesink_event), (gst_basesink_get_times),
4638         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
4639         (gst_basesink_chain_unlocked), (gst_basesink_chain),
4640         (gst_basesink_loop), (gst_basesink_activate),
4641         (gst_basesink_change_state):
4642         * gst/base/gstbasesink.h:
4643         * gst/elements/Makefile.am:
4644         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
4645         (gst_fakesink_class_init), (gst_fakesink_init),
4646         (gst_fakesink_set_property), (gst_fakesink_get_property),
4647         (gst_fakesink_get_times), (gst_fakesink_event),
4648         (gst_fakesink_preroll), (gst_fakesink_render),
4649         (gst_fakesink_change_state):
4650         * gst/elements/gstfakesink.h:
4651         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4652         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
4653         * gst/gstelement.c: (gst_element_add_pad),
4654         (gst_element_get_state_func), (gst_element_abort_state),
4655         (gst_element_commit_state), (gst_element_lost_state),
4656         (gst_element_set_state), (gst_element_pads_activate):
4657         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
4658         * gst/gstpipeline.c: (gst_pipeline_send_event),
4659         (gst_pipeline_change_state):
4660         Added state change code.
4661         Added/updated docs.
4662         Added sink base class, make fakesink extend the base class.
4663         Small cleanups in GstPipeline.
4664
4665 2005-03-26  David Schleef  <ds@schleef.org>
4666
4667         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
4668         is broken and should be implemented in a different library.
4669         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
4670         * gst/gst.h: remove gstcpu.h
4671         * gst/gstcpu.c: remove
4672         * gst/gstcpu.h: remove
4673         * gst/Makefile.am.future: Remove this file.  It's ancient.
4674
4675 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4676
4677         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4678         (gst_bin_send_event):
4679           Add default event/set_manager handlers. The set_manager handler
4680           takes care that the manager is distributed over kids that were
4681           already in the bin before the manager was set. The event handler
4682           is a utility virtual function that sends the event over all sinks,
4683           so that gst_element_send_event (bin, event); has the expected
4684           behaviour.
4685         * gst/gstpad.c: (gst_pad_event_default):
4686           Re-install default event handling for discontinuities, so that
4687           seeking works without requiring hacks in applications or extra
4688           code in sinks.
4689         * gst/gstpipeline.c: (gst_pipeline_class_init),
4690         (gst_pipeline_send_event):
4691           Half hack, half utility: set a pipeline to PAUSED for seek events,
4692           since that is the only way we can guarantee a/v sync. Means that
4693           you can do gst_element_seek (pipeline, method, pos); on a pipeline
4694           and it "just works".
4695
4696 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4697
4698         * gst/gstpipeline.c: (gst_pipeline_use_clock):
4699           Lock/unlock mismatch.
4700
4701 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
4702
4703         * docs/faq/gst-uninstalled:
4704           add gst-plugins-base
4705         * docs/gst/Makefile.am:
4706           don't error out until docs are fixed
4707         * docs/gst/gstreamer.types:
4708           remove thread
4709
4710 2005-03-22  Wim Taymans  <wim@fluendo.com>
4711
4712         * check/Makefile.am:
4713         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
4714         * gst/gststructure.c: (gst_structure_set_valist),
4715         (gst_structure_copy_conditional):
4716         Activated more tests.
4717         Added message test.
4718         Added G_TYPE_POINTER to GstStructure.
4719         
4720
4721 2005-03-22  Wim Taymans  <wim@fluendo.com>
4722
4723         * docs/design/part-TODO.txt:
4724         * docs/design/part-events.txt:
4725         * docs/design/part-gstbin.txt:
4726         * docs/design/part-gstbus.txt:
4727         * docs/design/part-gstpipeline.txt:
4728         * docs/design/part-messages.txt:
4729         * gst/gstbus.c:
4730         * gst/gstmessage.c:
4731         Docs updates
4732
4733 2005-03-21  Wim Taymans  <wim@fluendo.com>
4734
4735         * gst/gstbus.c: (gst_bus_post):
4736         Fix copy-and-paste error.
4737
4738 2005-03-21  Wim Taymans  <wim@fluendo.com>
4739
4740         * check/Makefile.am:
4741         * gst/Makefile.am:
4742         * gst/elements/Makefile.am:
4743         * gst/elements/gstelements.c:
4744         * gst/elements/gstfakesink.c: (gst_fakesink_init),
4745         (gst_fakesink_event), (gst_fakesink_chain):
4746         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4747         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
4748         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
4749         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
4750         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
4751         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
4752         (gst_fakesrc_loop), (gst_fakesrc_activate),
4753         (gst_fakesrc_change_state):
4754         * gst/elements/gstfakesrc.h:
4755         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
4756         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
4757         (gst_filesrc_open_file), (gst_filesrc_loop),
4758         (gst_filesrc_activate), (gst_filesrc_change_state),
4759         (filesrc_find_peek), (filesrc_find_suggest),
4760         (gst_filesrc_type_find):
4761         * gst/elements/gstidentity.c: (gst_identity_finalize),
4762         (gst_identity_class_init), (gst_identity_init),
4763         (gst_identity_proxy_getcaps), (identity_queue_push),
4764         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
4765         (gst_identity_getrange), (gst_identity_chain),
4766         (gst_identity_sink_loop), (gst_identity_src_loop),
4767         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
4768         (gst_identity_set_property), (gst_identity_get_property),
4769         (gst_identity_change_state):
4770         * gst/elements/gstidentity.h:
4771         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
4772         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
4773         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
4774         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
4775         (gst_tee_sink_activate):
4776         * gst/elements/gsttee.h:
4777         * gst/gst.c: (gst_register_core_elements), (init_post):
4778         * gst/gst.h:
4779         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
4780         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
4781         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
4782         (gst_bin_change_state):
4783         * gst/gstbin.h:
4784         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
4785         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
4786         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
4787         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
4788         (gst_bus_set_sync_handler), (gst_bus_create_watch),
4789         (bus_watch_callback), (bus_watch_destroy),
4790         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
4791         (poll_timeout), (gst_bus_poll):
4792         * gst/gstbus.h:
4793         * gst/gstcaps.h:
4794         * gst/gstdata.h:
4795         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4796         (gst_element_post_message), (gst_element_message_full),
4797         (gst_element_get_state_func), (gst_element_get_state),
4798         (gst_element_abort_state), (gst_element_commit_state),
4799         (gst_element_lost_state), (gst_element_set_state),
4800         (gst_element_pads_activate), (gst_element_change_state),
4801         (gst_element_dispose), (gst_element_set_manager_func),
4802         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
4803         (gst_element_set_manager), (gst_element_get_manager),
4804         (gst_element_set_bus), (gst_element_get_bus),
4805         (gst_element_set_scheduler), (gst_element_get_scheduler):
4806         * gst/gstelement.h:
4807         * gst/gstevent.c: (gst_event_new_segment_seek),
4808         (gst_event_new_flush):
4809         * gst/gstevent.h:
4810         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
4811         (_gst_message_free), (gst_message_get_type), (gst_message_new),
4812         (gst_message_new_eos), (gst_message_new_error),
4813         (gst_message_new_warning), (gst_message_new_tag),
4814         (gst_message_new_state_changed), (gst_message_new_application),
4815         (gst_message_get_structure), (gst_message_parse_tag),
4816         (gst_message_parse_state_changed), (gst_message_parse_error),
4817         (gst_message_parse_warning):
4818         * gst/gstmessage.h:
4819         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
4820         (gst_real_pad_set_property), (gst_pad_set_active),
4821         (gst_pad_is_active), (gst_pad_set_blocked_async),
4822         (gst_pad_set_blocked), (gst_pad_is_blocked),
4823         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
4824         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
4825         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
4826         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
4827         (gst_pad_link_filtered), (gst_pad_relink_filtered),
4828         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
4829         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
4830         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
4831         (gst_pad_set_caps), (gst_pad_configure_sink),
4832         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
4833         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
4834         (gst_real_pad_dispose), (gst_real_pad_finalize),
4835         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
4836         (gst_pad_event_default_dispatch), (gst_pad_event_default),
4837         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
4838         * gst/gstpad.h:
4839         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
4840         (pipeline_bus_handler), (gst_pipeline_change_state),
4841         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
4842         * gst/gstpipeline.h:
4843         * gst/gstprobe.h:
4844         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
4845         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
4846         (gst_queue_link_src), (gst_queue_bufferalloc),
4847         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
4848         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
4849         (gst_queue_loop), (gst_queue_handle_src_event),
4850         (gst_queue_handle_src_query), (gst_queue_src_activate),
4851         (gst_queue_change_state):
4852         * gst/gstqueue.h:
4853         * gst/gstscheduler.c: (gst_scheduler_init),
4854         (gst_scheduler_dispose), (gst_scheduler_create_task),
4855         (gst_scheduler_factory_create):
4856         * gst/gstscheduler.h:
4857         * gst/gststructure.c: (gst_structure_get_type),
4858         (gst_structure_copy_conditional):
4859         * gst/gststructure.h:
4860         * gst/gsttaginterface.h:
4861         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
4862         (gst_task_init), (gst_task_dispose), (gst_task_create),
4863         (gst_task_get_state), (gst_task_start), (gst_task_stop),
4864         (gst_task_pause):
4865         * gst/gsttask.h:
4866         * gst/gstthread.c:
4867         * gst/gstthread.h:
4868         * gst/gsttypes.h:
4869         * gst/schedulers/Makefile.am:
4870         * gst/schedulers/cothreads_compat.h:
4871         * gst/schedulers/entryscheduler.c:
4872         * gst/schedulers/faircothreads.c:
4873         * gst/schedulers/faircothreads.h:
4874         * gst/schedulers/fairscheduler.c:
4875         * gst/schedulers/gstbasicscheduler.c:
4876         * gst/schedulers/gstoptimalscheduler.c:
4877         * gst/schedulers/gthread-cothreads.h:
4878         * gst/schedulers/threadscheduler.c:
4879         (gst_thread_scheduler_task_get_type),
4880         (gst_thread_scheduler_task_class_init),
4881         (gst_thread_scheduler_task_init),
4882         (gst_thread_scheduler_task_start),
4883         (gst_thread_scheduler_task_stop),
4884         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
4885         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
4886         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
4887         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
4888         (plugin_init):
4889         * libs/gst/Makefile.am:
4890         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
4891         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
4892         (gst_file_pad_parent_set):
4893         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
4894         (gst_dp_event_from_packet):
4895         * tests/complexity.c: (main):
4896         * tests/mass_elements.c: (main):
4897         * testsuite/states/locked.c: (message_received), (main):
4898         * testsuite/states/parent.c: (main):
4899         * tools/gst-inspect.c: (print_element_flag_info),
4900         (print_implementation_info), (print_pad_info):
4901         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
4902         (main):
4903         * tools/gst-md5sum.c: (event_loop), (main):
4904         * tools/gst-typefind.c: (main):
4905         * tools/gst-xmlinspect.c: (print_element_info):
4906         Next big merge.
4907         Added GstBus for mainloop integration.
4908         Added GstMessage for sending notifications on the bus.
4909         Added GstTask as an abstraction for pipeline entry points.
4910         Removed GstThread.
4911         Removed Schedulers.
4912         Simplified GstQueue for multithreaded core.
4913         Made _link threadsafe, removed old capsnego.
4914         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
4915         Added pad blocking functions.
4916         Reworked scheduling functions in GstPad to prepare for
4917         scheduling updates soon.
4918         Moved events out of data stream.
4919         Simplified GstEvent types.
4920         Added return values to push/pull.
4921         Removed clocking from GstElement.
4922         Added prototypes for state change function for next merge.
4923         Removed iterate from bins and state change management.
4924         Fixed some elements, disabled others for now.
4925         Fixed -inspect and -launch.
4926         Added check for GstBus.
4927
4928 2005-03-10  Wim Taymans  <wim@fluendo.com>
4929
4930         * docs/design/part-MT-refcounting.txt:
4931         * docs/design/part-clocks.txt:
4932         * docs/design/part-gstelement.txt:
4933         * docs/design/part-gstobject.txt:
4934         * docs/design/part-standards.txt:
4935         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4936         (gst_bin_remove_func), (gst_bin_remove):
4937         * gst/gstbin.h:
4938         * gst/gstbuffer.c:
4939         * gst/gstcaps.h:
4940         * testsuite/clock/clock1.c: (main):
4941         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
4942         (main):
4943         * testsuite/dlopen/loadgst.c: (do_test):
4944         * testsuite/refcounting/bin.c: (add_remove_test1),
4945         (add_remove_test2), (main):
4946         * testsuite/refcounting/element.c: (main):
4947         * testsuite/refcounting/element_pad.c: (main):
4948         * testsuite/refcounting/pad.c: (main):
4949         * tools/gst-launch.c: (sigint_handler_sighandler):
4950         * tools/gst-typefind.c: (main):
4951         Doc updates.
4952         Added doc about clock.
4953         removed gst_bin_iterate_recurse_up(), marked methods
4954         for removal.
4955         Fix more testsuites.
4956
4957 2005-03-09  Wim Taymans  <wim@fluendo.com>
4958
4959         * gst/gstpad.c: (gst_pad_get_direction),
4960         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
4961         (gst_pad_collect_valist):
4962         * testsuite/bins/interface.c: (main):
4963         * testsuite/caps/audioscale.c: (test_caps):
4964         * testsuite/caps/caps.c: (test1), (test2), (test3):
4965         * testsuite/caps/deserialize.c: (main):
4966         * testsuite/caps/enumcaps.c: (main):
4967         * testsuite/caps/filtercaps.c: (main):
4968         * testsuite/caps/intersect2.c: (main):
4969         * testsuite/caps/random.c: (main):
4970         * testsuite/caps/renegotiate.c: (my_fixate), (main):
4971         * testsuite/caps/sets.c: (check_caps):
4972         * testsuite/caps/simplify.c: (check_caps), (main):
4973         * testsuite/caps/subtract.c: (check_caps):
4974         Fix _pad_get_direction wrt ghostpads.
4975         Fix caps testsuite.
4976
4977 2005-03-09  Wim Taymans  <wim@fluendo.com>
4978
4979         * check/Makefile.am:
4980         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
4981         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
4982         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
4983         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
4984         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
4985         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
4986         (gst_bin_remove), (gst_bin_iterate_recurse_up),
4987         (bin_element_is_sink), (gst_bin_iterate_sinks),
4988         (gst_bin_iterate_all_by_interface):
4989         * gst/gstbin.h:
4990         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
4991         (gst_element_change_state), (gst_element_dispose),
4992         (gst_element_finalize), (gst_element_set_loop_function):
4993         * gst/gstelement.h:
4994         * gst/gstiterator.c: (find_custom_fold_func):
4995         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4996         (gst_pad_collectv), (gst_pad_collect_valist),
4997         (gst_pad_template_new):
4998         * gst/gstpipeline.c: (gst_pipeline_class_init),
4999         (gst_pipeline_dispose), (gst_pipeline_set_property),
5000         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
5001         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
5002         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
5003         * gst/gstutils.h:
5004         * gst/schedulers/entryscheduler.c:
5005         * gst/schedulers/gstbasicscheduler.c:
5006         (gst_basic_scheduler_cothreaded_chain),
5007         (gst_basic_scheduler_chain_add_element):
5008         * testsuite/bins/interface.c: (main):
5009         Added GstBin test.
5010         Added GstSystemClock test.
5011         Implemented clock distribution code in GstBin.
5012         Implemented iterate sinks method for future use.
5013         Rearranged gstelement.h
5014         Fix GstIterator comparison bug.
5015         Moved some code to GstPipeline, mostly clocking related.
5016
5017 2005-03-09  Wim Taymans  <wim@fluendo.com>
5018
5019         * configure.ac:
5020         * gst/gst_private.h:
5021         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
5022         (gst_bin_remove_func), (gst_bin_remove),
5023         (gst_bin_get_by_name_recurse_up):
5024         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
5025         (gst_clock_id_compare_func), (gst_clock_id_wait),
5026         (gst_clock_id_wait_async), (gst_clock_init),
5027         (gst_clock_adjust_unlocked), (gst_clock_get_time):
5028         * gst/gstelement.h:
5029         * gst/gstinfo.c: (_gst_debug_init):
5030         * gst/gstobject.h:
5031         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
5032         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
5033         * gst/gstpad.h:
5034         Bump version number, we're now 0.9.0
5035         Add future debugging category.
5036         Fix NULL _unref() in _get_by_name_recurse_up
5037         Rearrange gstpad.h.
5038         Update some docs.
5039
5040 2005-03-08  Wim Taymans  <wim@fluendo.com>
5041
5042         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
5043         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5044         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
5045         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
5046         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
5047         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
5048         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
5049         * gst/elements/gstidentity.c: (gst_identity_class_init):
5050         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
5051         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
5052         * gst/elements/gstshaper.c: (gst_shaper_class_init):
5053         * gst/elements/gststatistics.c: (gst_statistics_class_init):
5054         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
5055         (gst_tee_link):
5056         * gst/gstelement.c: (gst_element_class_init),
5057         (gst_element_base_class_init), (gst_element_init),
5058         (gst_element_get_random_pad), (gst_element_wait_state_change),
5059         (gst_element_change_state), (gst_element_dispose),
5060         (gst_element_finalize), (gst_element_set_loop_function):
5061         * gst/gstelement.h:
5062         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
5063         * gst/gstthread.c: (gst_thread_class_init),
5064         (gst_thread_release_children_locks), (gst_thread_change_state):
5065         * gst/schedulers/gstbasicscheduler.c:
5066         (gst_basic_scheduler_loopfunc_wrapper),
5067         (gst_basic_scheduler_chain_wrapper),
5068         (gst_basic_scheduler_src_wrapper),
5069         (gst_basic_scheduler_remove_element):
5070         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
5071         Remove threadsafe properties. Fix elements because GObject
5072         complains when installing a property before declaring a
5073         set/get_property handler.
5074         Rearrange gstelement.h file, use STATE macros for state locks.
5075         Free mutexes in the finalize method instead of dispose.
5076
5077 2005-03-08  Wim Taymans  <wim@fluendo.com>
5078
5079         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
5080         * gst/gstthread.c: (gst_thread_release_children_locks):
5081         Added parentage check.
5082         Fix build og GstThread again.
5083
5084 2005-03-08  Wim Taymans  <wim@fluendo.com>
5085
5086         * docs/design/part-MT-refcounting.txt:
5087         * docs/design/part-conventions.txt:
5088         * docs/design/part-gstobject.txt:
5089         * docs/design/part-relations.txt:
5090         * docs/design/part-standards.txt:
5091         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
5092         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
5093         (gst_bin_get_by_name), (gst_bin_get_by_interface),
5094         (gst_bin_iterate_all_by_interface):
5095         * gst/gstbuffer.h:
5096         * gst/gstclock.h:
5097         * gst/gstelement.c: (gst_element_class_init),
5098         (gst_element_change_state), (gst_element_set_loop_function):
5099         * gst/gstelement.h:
5100         * gst/gstiterator.c:
5101         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
5102         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
5103         (gst_object_dispatch_properties_changed), (gst_object_set_name),
5104         (gst_object_set_parent), (gst_object_unparent),
5105         (gst_object_check_uniqueness):
5106         * gst/gstobject.h:
5107         Docs updates, clean up some headers.
5108
5109 2005-03-07  Wim Taymans  <wim@fluendo.com>
5110
5111         * check/.cvsignore:
5112         * check/Makefile.am:
5113         * check/gst-libs/.cvsignore:
5114         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
5115         * check/gst/.cvsignore:
5116         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
5117         (START_TEST), (gstbus_suite), (main):
5118         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
5119         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
5120         (gst_data_suite), (main):
5121         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
5122         (add_fold_func), (gstiterator_suite), (main):
5123         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
5124         (thread_name_object), (thread_name_object_default),
5125         (gst_object_name_compare), (gst_object_suite), (main):
5126         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
5127         (gst_pad_suite), (main):
5128         * check/gstcheck.c: (gst_check_log_message_func),
5129         (gst_check_log_critical_func), (gst_check_init):
5130         * check/gstcheck.h:
5131         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
5132         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
5133         Added checks.
5134
5135 2005-03-07  Wim Taymans  <wim@fluendo.com>
5136
5137         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
5138         (gst_list_iterator_next), (gst_list_iterator_resync),
5139         (gst_list_iterator_free), (gst_iterator_new_list),
5140         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
5141         (gst_iterator_free), (gst_iterator_push), (filter_next),
5142         (filter_resync), (filter_uninit), (filter_free),
5143         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
5144         (gst_iterator_foreach), (find_custom_fold_func),
5145         (gst_iterator_find_custom):
5146         * gst/gstiterator.h:
5147         Added missing files.
5148
5149 2005-03-07  Wim Taymans  <wim@fluendo.com>
5150
5151         * Makefile.am:
5152         * configure.ac:
5153         * docs/design/part-MT-refcounting.txt:
5154         * docs/design/part-conventions.txt:
5155         * docs/design/part-gstobject.txt:
5156         * docs/design/part-relations.txt:
5157         * examples/mixer/mixer.c: (main):
5158         * examples/thread/thread.c: (eos), (main):
5159         * gst/Makefile.am:
5160         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
5161         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
5162         (gst_spider_plug_from_srcpad):
5163         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
5164         (gst_spider_identity_change_state),
5165         (gst_spider_identity_sink_loop_type_finding):
5166         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
5167         * gst/elements/gstidentity.c: (gst_identity_init):
5168         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
5169         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
5170         * gst/elements/gsttypefindelement.c: (free_entry):
5171         * gst/gst.c:
5172         * gst/gst.h:
5173         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
5174         (gst_bin_set_clock_func), (gst_bin_auto_clock),
5175         (gst_bin_set_index), (gst_bin_set_element_sched),
5176         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
5177         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
5178         (gst_bin_iterate_elements), (iterate_child_recurse),
5179         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
5180         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
5181         (compare_interface), (gst_bin_get_by_interface),
5182         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
5183         * gst/gstbin.h:
5184         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
5185         (gst_buffer_default_free), (gst_buffer_default_copy),
5186         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
5187         (gst_buffer_create_sub):
5188         * gst/gstbuffer.h:
5189         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
5190         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
5191         (gst_caps_unref), (gst_static_caps_get),
5192         (gst_caps_remove_and_get_structure), (gst_caps_append),
5193         (gst_caps_append_structure), (gst_caps_remove_structure),
5194         (gst_caps_copy_nth), (gst_caps_set_simple),
5195         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
5196         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
5197         (gst_caps_structure_intersect_field), (gst_caps_intersect),
5198         (gst_caps_structure_subtract_field), (gst_caps_subtract),
5199         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
5200         (gst_caps_structure_figure_out_union),
5201         (gst_caps_switch_structures), (gst_caps_do_simplify),
5202         (gst_caps_replace), (gst_caps_from_string),
5203         (gst_caps_copy_conditional):
5204         * gst/gstcaps.h:
5205         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
5206         (_gst_clock_id_free), (gst_clock_id_unref),
5207         (gst_clock_id_compare_func), (gst_clock_id_wait),
5208         (gst_clock_id_wait_async), (gst_clock_class_init),
5209         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
5210         (gst_clock_get_time), (gst_clock_set_time_adjust),
5211         (gst_clock_set_property), (gst_clock_get_property):
5212         * gst/gstclock.h:
5213         * gst/gstcompat.h:
5214         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
5215         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
5216         * gst/gstdata.h:
5217         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
5218         (gst_element_requires_clock), (gst_element_provides_clock),
5219         (gst_element_set_clock), (gst_element_clock_wait),
5220         (gst_element_wait), (gst_element_set_time_delay),
5221         (gst_element_is_indexable), (gst_element_add_pad),
5222         (gst_element_add_ghost_pad), (gst_element_remove_pad),
5223         (pad_compare_name), (gst_element_get_static_pad),
5224         (gst_element_request_pad), (gst_element_get_request_pad),
5225         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
5226         (gst_element_class_get_pad_template_list),
5227         (gst_element_class_get_pad_template), (gst_element_error_func),
5228         (gst_element_get_random_pad), (gst_element_get_event_masks),
5229         (gst_element_send_event), (gst_element_seek),
5230         (gst_element_get_query_types), (gst_element_query),
5231         (gst_element_get_formats), (gst_element_convert),
5232         (gst_element_is_locked_state), (gst_element_set_locked_state),
5233         (gst_element_sync_state_with_parent), (gst_element_change_state),
5234         (gst_element_finalize), (gst_element_yield),
5235         (gst_element_interrupt), (gst_element_set_scheduler),
5236         (gst_element_get_scheduler), (gst_element_set_loop_function):
5237         * gst/gstelement.h:
5238         * gst/gstevent.h:
5239         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
5240         (gst_format_get_by_nick), (gst_format_get_details),
5241         (gst_format_iterate_definitions):
5242         * gst/gstformat.h:
5243         * gst/gstindex.c: (gst_index_gtype_resolver):
5244         * gst/gstinfo.c:
5245         * gst/gstinfo.h:
5246         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
5247         (gst_mem_chunk_free):
5248         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
5249         (gst_object_ref), (gst_object_unref), (gst_object_sink),
5250         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
5251         (gst_object_dispatch_properties_changed),
5252         (gst_object_set_name_default), (gst_object_set_name),
5253         (gst_object_get_name), (gst_object_set_name_prefix),
5254         (gst_object_get_name_prefix), (gst_object_set_parent),
5255         (gst_object_get_parent), (gst_object_unparent),
5256         (gst_object_check_uniqueness), (gst_object_save_thyself),
5257         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
5258         (gst_object_set_property), (gst_object_get_property),
5259         (gst_object_get_path_string):
5260         * gst/gstobject.h:
5261         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
5262         (gst_real_pad_init), (gst_real_pad_get_property),
5263         (gst_pad_custom_new), (gst_pad_get_direction),
5264         (gst_pad_set_active), (gst_pad_is_active),
5265         (gst_pad_set_event_function), (gst_pad_is_linked),
5266         (gst_pad_link_free), (gst_pad_link_intersect),
5267         (gst_pad_link_fixate), (gst_pad_set_caps),
5268         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
5269         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
5270         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
5271         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
5272         (gst_pad_get_caps), (gst_pad_peer_get_caps),
5273         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
5274         (gst_pad_realize), (gst_pad_get_allowed_caps),
5275         (gst_real_pad_dispose), (gst_real_pad_finalize),
5276         (gst_pad_collectv), (gst_pad_collect_valist),
5277         (gst_pad_template_dispose), (gst_pad_template_new),
5278         (gst_pad_get_internal_links):
5279         * gst/gstpad.h:
5280         * gst/gstpipeline.c: (gst_pipeline_dispose),
5281         (gst_pipeline_change_state):
5282         * gst/gstpipeline.h:
5283         * gst/gstplugin.c:
5284         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
5285         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
5286         * gst/gstpluginfeature.h:
5287         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5288         * gst/gstquery.c: (_gst_query_type_initialize),
5289         (gst_query_type_register), (gst_query_type_get_by_nick),
5290         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
5291         * gst/gstquery.h:
5292         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
5293         * gst/gstscheduler.c: (gst_scheduler_add_element),
5294         (gst_scheduler_factory_create):
5295         * gst/gststructure.c: (gst_structure_set_parent_refcount),
5296         (gst_structure_free), (gst_structure_set_name),
5297         (gst_structure_id_set_value), (gst_structure_set_value),
5298         (gst_structure_set_valist), (gst_structure_remove_field),
5299         (gst_structure_remove_fields),
5300         (gst_structure_remove_fields_valist),
5301         (gst_structure_remove_all_fields), (gst_structure_foreach),
5302         (gst_structure_map_in_place),
5303         (gst_caps_structure_fixate_field_nearest_int),
5304         (gst_caps_structure_fixate_field_nearest_double):
5305         * gst/gststructure.h:
5306         * gst/gstsystemclock.c: (gst_system_clock_class_init),
5307         (gst_system_clock_init), (gst_system_clock_dispose),
5308         (gst_system_clock_async_thread),
5309         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
5310         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
5311         * gst/gstsystemclock.h:
5312         * gst/gsttag.c: (gst_tag_list_add_value_internal),
5313         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
5314         * gst/gsttaginterface.c:
5315         * gst/gstthread.c: (gst_thread_dispose),
5316         (gst_thread_release_children_locks), (gst_thread_change_state),
5317         (gst_thread_main_loop):
5318         * gst/gsttrashstack.h:
5319         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
5320         * gst/gsttypes.h:
5321         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
5322         (gst_element_request_pad), (gst_element_get_pad_from_template),
5323         (gst_element_request_compatible_pad),
5324         (gst_element_get_compatible_pad_filtered),
5325         (gst_element_get_compatible_pad), (gst_element_state_get_name),
5326         (gst_element_link_pads_filtered), (gst_element_link_filtered),
5327         (gst_element_link_many), (gst_element_link),
5328         (gst_element_link_pads), (gst_element_unlink_pads),
5329         (gst_element_unlink_many), (gst_element_unlink),
5330         (gst_pad_can_link_filtered), (gst_pad_can_link),
5331         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
5332         (gst_object_default_error), (gst_bin_add_many),
5333         (gst_bin_remove_many), (gst_element_populate_std_props),
5334         (gst_element_class_install_std_props), (gst_buffer_merge),
5335         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
5336         (link_fold_func), (gst_pad_proxy_setcaps):
5337         * gst/gstutils.h:
5338         * gst/gstvalue.c: (gst_value_deserialize_string):
5339         * gst/parse/grammar.y:
5340         * gst/schedulers/gstbasicscheduler.c:
5341         (gst_basic_scheduler_cothreaded_chain),
5342         (gst_basic_scheduler_chain_recursive_add),
5343         (gst_basic_scheduler_pad_link):
5344         * gst/schedulers/gstoptimalscheduler.c:
5345         (get_group_schedule_function),
5346         (gst_opt_scheduler_state_transition),
5347         (gst_opt_scheduler_add_element), (element_get_reachables_func):
5348         * libs/gst/bytestream/bytestream.c:
5349         * libs/gst/dataprotocol/dataprotocol.c:
5350         (gst_dp_header_from_buffer):
5351         * po/nb.po:
5352         * po/ru.po:
5353         * tests/threadstate/threadstate2.c: (eos):
5354         * tools/gst-compprep.c: (main):
5355         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
5356         (print_pad_info), (print_children_info):
5357         * tools/gst-launch.c: (idle_func), (main):
5358         * tools/gst-md5sum.c: (idle_func), (main):
5359         * tools/gst-xmlinspect.c: (print_element_info):
5360         First THREADED backport attempt, focusing on adding locks and
5361         making sure the API is threadsafe. Needs more work. More docs
5362         follow this week.
5363
5364 2005-02-24  Andy Wingo  <wingo@pobox.com>
5365
5366         * tests/bench-complexity.scm:
5367         * tests/complexity.gnuplot: New files, good for running complexity
5368         benchmarks.
5369
5370         * tests/Makefile.am:
5371         * tests/complexity.c: New test, sets up N elements, at each level
5372         teeing into M streams per element. Eeeenteresting.
5373
5374         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
5375         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
5376         running bench-mass_elements.scm.
5377
5378         * tests/bench-mass_elements.scm: New script, runs mass_elements
5379         for various numbers of identities, outputting the results to a
5380         file. Requires guile 1.6. Just for testing.
5381
5382 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5383
5384         * gst/schedulers/fairscheduler.c:
5385           compile with debug disabled
5386
5387 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
5388
5389         * configure.ac:
5390           hunting season on 0.9 is now OPEN
5391
5392 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
5393
5394         * docs/libs/tmpl/gstcontrol.sgml:
5395         * docs/libs/tmpl/gstdparam.sgml:
5396         * docs/libs/tmpl/gstdplinint.sgml:
5397         * docs/libs/tmpl/gstdpman.sgml:
5398         * docs/libs/tmpl/gstdpsmooth.sgml:
5399         * docs/libs/tmpl/gstunitconvert.sgml:
5400           more docs for the state of dparams
5401
5402 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5403
5404         * gst/gstelementfactory.c: (gst_element_factory_create):
5405         * gst/gstobject.c: (gst_object_init),
5406         (gst_object_set_name_default), (gst_object_set_name):
5407           name objects by default, not in gst_element_factory_create. Allows
5408           using elements created with g_object_new. (fixes #167283)
5409
5410 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5411
5412         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
5413           make the time that debugging functions print relative to when
5414           gst_init was called
5415
5416 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
5417
5418         * gst/gsttaginterface.c:
5419           Fix inline docs: tag setter vararg functions are NULL-terminated,
5420           GST_TAG_INVALID doesn't exist any more.
5421
5422 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5423
5424         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
5425         Allocate the 1 byte more memory that was forgotten!!!!!
5426         fixes memory corruption on 64bit platforms
5427
5428 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
5429
5430         * docs/pwg/building-pads.xml:
5431         * docs/pwg/intro-basics.xml:
5432           fixed a few typos, relabeled introductionary list of types
5433         * docs/random/ensonic/dparams.txt:
5434           more notes abut dparam changes
5435         * libs/gst/control/dparam.c: (gst_dparam_attach):
5436         * libs/gst/control/dparammanager.c:
5437         * libs/gst/control/dparammanager.h:
5438           - many comments and notes on dparam implementation
5439           - new dparams are were not initialized to the default value
5440             from param spec
5441
5442 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
5443
5444         submitted by: Peter Astakhov
5445
5446         * po/LINGUAS:
5447         * po/ru.po:
5448           adding Russian translation
5449
5450 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5451
5452         * configure.ac:
5453         * docs/gst/Makefile.am:
5454         * docs/libs/Makefile.am:
5455           make sure popt is added to gtk-doc flags.  Fixes #147782.
5456
5457 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
5458
5459         * docs/faq/using.xml:
5460           Fix typo in FAQ (artssink => artsdsink)
5461
5462 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5463
5464         * tools/gst-launch.1.in:
5465           Fix typo (#166699).
5466
5467 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
5468
5469         * docs/faq/using.xml:
5470           Add -v argument to fakesrc/fakesink gst-launch line,
5471           so that the promised output will actually show up.
5472
5473 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5474
5475         * gst/gstthread.c: (gst_thread_change_state):
5476           Implement state-change error handling (#166073).
5477
5478 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5479
5480         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
5481           Release interrupt after handling (#166250).
5482
5483 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5484
5485         * configure.ac:
5486           back to HEAD
5487
5488 === release 0.8.9 ===
5489
5490 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5491
5492         * NEWS:
5493         * RELEASE:
5494         * configure.ac:
5495           releasing 0.8.9, "Like Eating Glass"
5496
5497 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5498
5499         submitted by: Clytie Siddall
5500
5501         * po/vi.po: Added Vietnamese translation
5502
5503 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5504
5505         patch by: Tim Philipp-Müller
5506
5507         * configure.ac:
5508         * gst/gstpad.c:
5509           unref data when probe function returns FALSE.  Fixes #166362
5510
5511 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5512
5513         * gst/gst.c: (gst_init_get_popt_table):
5514           Fix typo (#166269).
5515
5516 2005-02-04  Andy Wingo  <wingo@pobox.com>
5517
5518         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
5519         the debugging on whether the caps are compatible.
5520
5521 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5522
5523         * docs/manual/basics-elements.xml:
5524           Fix two typos.
5525
5526 2005-02-02  Wim Taymans  <wim@fluendo.com>
5527
5528         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
5529         (schedule_chain), (get_invalid_call), (chain_invalid_call),
5530         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
5531         Remove some FIXMEs after analysing and commenting why they
5532         are not issues.
5533
5534 2005-02-02  Wim Taymans  <wim@fluendo.com>
5535
5536         * gst/schedulers/gstoptimalscheduler.c:
5537         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
5538         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
5539         (get_invalid_call), (chain_invalid_call),
5540         (get_group_schedule_function), (loop_group_schedule_function),
5541         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
5542         (gst_opt_scheduler_state_transition),
5543         (gst_opt_scheduler_add_element),
5544         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
5545         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
5546         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
5547         (gst_opt_scheduler_show):
5548         Added lock to protect scheduler data structures.
5549
5550 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5551
5552         * testsuite/threads/threadi.c: (cb_data):
5553           Fix buglet in test.
5554
5555 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5556
5557         * testsuite/threads/Makefile.am:
5558         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
5559           On Wim's request, split the test in three separately-compiled
5560           tests that each test a very specific bug. Two of them still fail,
5561           will create bugs for those. threadi.c indicates why they fail.
5562
5563 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5564
5565         * gst/schedulers/gstoptimalscheduler.c:
5566         (get_group_schedule_function):
5567           Try to work with the threading mess that queue_link is.
5568
5569 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5570
5571         * gst/gstbin.c: (gst_bin_remove_func):
5572           Explicitely make an element release locks in a group when being
5573           remove from a bin.
5574         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
5575           If there's no scheduler, always return immediately (similar to
5576           gst_element_interrupt).
5577
5578 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5579
5580         * gst/gstbin.c: (gst_bin_child_state_change_func):
5581           Remove a piece of code that could never be reached.
5582         * docs/gst/gstreamer-sections.txt:
5583         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
5584         (gst_pad_call_get_function):
5585         * gst/gstpad.h:
5586         * testsuite/pad/Makefile.am:
5587           Fix #150546, enable tests.
5588
5589 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5590
5591         * docs/pwg/advanced-types.xml:
5592           Fix description for buffer-frames=0.
5593         * docs/gst/tmpl/gstbin.sgml:
5594         * gst/gstbin.c: (gst_bin_child_state_change_func),
5595         (gst_bin_change_state), (gst_bin_change_state_norecurse):
5596         * gst/gstbin.h:
5597         * testsuite/threads/Makefile.am:
5598         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
5599         (cb_state), (cb_play), (main):
5600           Fix non-recursive state changes to *really* change the state
5601           of the object, and not just call parent_class->state_change.
5602           Fix a lot of lockups caused by this. Fixes #132775. Add test
5603           for the problem. Also enable test to show #142588 (fixed).
5604         * gst/gstthread.c: (gst_thread_change_state),
5605         (gst_thread_child_state_change):
5606           Don't exit the thread if we go to NULL and are inside thread
5607           context. Instead, return control to the main thread context
5608           and exit from there.
5609         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
5610           Don't unset virtual functions, since those may still be used.
5611           That's not necessarily correct, but suffices for now.
5612         * configure.ac:
5613         * testsuite/Makefile.am:
5614         * testsuite/pad/Makefile.am:
5615         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
5616         (gst_test_sink_base_init), (gst_test_sink_chain),
5617         (gst_test_sink_init), (main):
5618         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
5619         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
5620         (main):
5621         * testsuite/pad/link.c: (gst_test_element_class_init),
5622         (gst_test_element_base_init), (gst_test_src_get),
5623         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
5624         (gst_test_filter_loop), (gst_test_filter_init),
5625         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
5626         (cb_error), (main):
5627           Add tests to show #150546. Pass, but should fail (currently
5628           disabled from the testsuite).
5629         * gst/gstscheduler.c: (gst_scheduler_dispose):
5630           Dereference child schedulers on dispose (#94464).
5631         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
5632           Fix typo.
5633         * testsuite/threads/thread.c: (main):
5634           Add more debug.
5635
5636 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5637
5638         * gst/gstpad.c: (gst_pad_push):
5639           Oops, revert previous commit, broke testsuite...
5640
5641 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5642
5643         * gst/gstpad.c: (gst_pad_push):
5644           Add check that the pad on which the push is performed is not a
5645           get-based pad (#150546).
5646
5647 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5648
5649         * gst/elements/gsttypefindelement.c:
5650         (gst_type_find_element_handle_event):
5651           Fix buffer pushing if stream EOSes during typefinding.
5652
5653 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
5654
5655         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5656
5657         * gst/gstvalue.c: (gst_string_wrap):
5658           Allow NULL-strings as argument (#165365).
5659
5660 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
5661
5662         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5663
5664         * gst/schedulers/faircothreads.c:
5665         (gst_fair_scheduler_cothread_queue_show):
5666           Fix build without debug enabled.
5667
5668 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
5669
5670         * docs/gst/gstreamer-sections.txt:
5671         * docs/libs/gstreamer-libs-docs.sgml:
5672         * docs/libs/gstreamer-libs-sections.txt:
5673         * docs/libs/tmpl/gstcontrol.sgml:
5674         * docs/libs/tmpl/gstdparam.sgml:
5675         * docs/libs/tmpl/gstdplinint.sgml:
5676         * docs/libs/tmpl/gstdpman.sgml:
5677         * docs/libs/tmpl/gstdpsmooth.sgml:
5678         * docs/libs/tmpl/gstputbits.sgml:
5679         * docs/libs/tmpl/gstunitconvert.sgml:
5680         * libs/gst/control/dparam.c:
5681         * libs/gst/control/dparam.h:
5682         * libs/gst/control/dparammanager.c:
5683         (gst_dpman_add_required_dparam_callback),
5684         (gst_dpman_add_required_dparam_direct),
5685         (gst_dpman_add_required_dparam_array),
5686         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
5687         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
5688         (gst_dpman_get_manager)
5689           restructured DParam docs
5690
5691 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
5692
5693         * gst-element-check.m4:
5694           Only check for gst-inspect if we haven't already
5695           found it in previous element check runs
5696
5697 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
5698
5699         * docs/gst/Makefile.am:
5700         * docs/libs/Makefile.am:
5701           fixed install rules to treat style.css as optional
5702
5703 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
5704
5705         * docs/gst/Makefile.am:
5706         * docs/libs/Makefile.am:
5707           install style.css along with docs
5708         * docs/gst/tmpl/gstbin.sgml:
5709         * docs/gst/tmpl/gstclock.sgml:
5710         * docs/gst/tmpl/gstdata.sgml:
5711         * docs/gst/tmpl/gstelement.sgml:
5712         * gst/gstbin.h:
5713         * gst/gstelement.c: (gst_element_class_init):
5714         * gst/gstelement.h:
5715           fixing incomplete docs
5716
5717 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
5718
5719         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5720           Don't unref seek event twice when fflush() fails
5721           
5722 2005-01-22  David Schleef  <ds@schleef.org>
5723
5724         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
5725
5726 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
5727
5728         * docs/gst/Makefile.am:
5729         * docs/libs/Makefile.am:
5730           added params for deprecation guards
5731         * gst/gst.c:
5732         * gst/gst.h:
5733         * gst/gsterror.c: (_gst_resource_errors_init),
5734         (_gst_stream_errors_init):
5735         * gst/gsterror.h:
5736           documented some more enums
5737
5738 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
5739         * gst/autoplug/gstspideridentity.c:
5740         Cosmetic fix - spider_find_peek should be static
5741         * gst/parse/parse.l:
5742         Applying fix for #164261
5743
5744 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
5745
5746         * docs/gst/gstreamer-sections.txt:
5747         * docs/gst/tmpl/gstplugin.sgml:
5748         * docs/libs/gstreamer-libs-sections.txt:
5749         * docs/libs/tmpl/gstcontrol.sgml:
5750         * gst/gstbuffer.h:
5751         * gst/gsttag.h:
5752         * gst/gstvalue.c:
5753           added docs for the TAG defines
5754
5755 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5756
5757         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
5758           Only unref entry if there is an entry.
5759
5760 2005-01-17  Wim Taymans  <wim@fluendo.com>
5761
5762         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5763         (remove_from_group), (schedule_group), (normalize_group),
5764         (gst_opt_scheduler_iterate):
5765         Also ref/unref decoupled elements before iterating the
5766         group since they are not added to the list of elements.
5767
5768 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5769
5770         * docs/manual/highlevel-components.xml:
5771           Add subtitle/streamselection as new features to playbin.
5772
5773 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5774
5775         * docs/manual/manual.xml:
5776           Re-enable dataaccess docs (oops).
5777
5778 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5779
5780         * docs/pwg/advanced-types.xml:
5781         * docs/random/mimetypes:
5782           Add documentation on libsndfile types (#163309), by Steve Baker
5783           <steve@stevebaker.org>.
5784         * gst/gstelement.c: (gst_element_release_request_pad):
5785           If an element has no explicit function, just remove the pad.
5786
5787 2005-01-17  Luca Ognibene  <luogni@tin.it>
5788
5789         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5790
5791         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
5792           Fix memleak (#163801).
5793
5794 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5795
5796         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
5797           I think this is actually more correct...
5798
5799 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5800
5801         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5802           Another workaround for memory access while destroyed in callback.
5803           Please, someone with refcount knowledge, have a look at this.
5804
5805 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5806
5807         * docs/faq/faq.xml:
5808         * docs/faq/legal.xml:
5809           move the legal Q&A here
5810
5811 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5812
5813         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
5814         (gst_tee_request_new_pad):
5815           Fix negotiation.
5816
5817 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5818
5819         * docs/random/omega/caps2:
5820         * testsuite/caps/caps_strings:
5821           replace framerate aproximations by their real value
5822           (24000/1001, 30000/1001, 60000/1001)
5823           Partially fixes bug #164049
5824
5825 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5826
5827         * docs/gst/Makefile.am:
5828           don't fail on the stupid GstPoptOption
5829
5830 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5831
5832         * gst/gstpad.h:
5833         * gst/gstprobe.c:
5834           allow probes to work on ghost pads by realizing the pad
5835           probe debugging
5836
5837 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5838
5839         * docs/gst/gstreamer-sections.txt:
5840         * docs/gst/tmpl/gstpad.sgml:
5841         * gst/gstpad.c: (gst_pad_set_active_recursive):
5842         * gst/gstpad.h:
5843           Add gst_pad_set_active_recursive().
5844
5845 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5846
5847         * docs/random/release:
5848           updates
5849         * gst/gst_private.h:
5850         * gst/gstinfo.c:
5851         * gst/gstobject.c:
5852           move deep_notify logging to a new category
5853         * gst/gstprobe.c:
5854         * gst/gstprobe.h:
5855           add stuff so bindings can wrap probes
5856
5857 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5858
5859         * gst/gstplugin.c: (gst_plugin_load):
5860           Fix plugin loading if plugin/lib was already loaded. Fixes
5861           #163383
5862
5863 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
5864
5865         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5866
5867         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
5868           Protect plugin loading by a mutex so it's threadsafe. Fixes
5869           #163234.
5870
5871 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5872
5873         * gst/gstevent.c: (_gst_event_copy):
5874           Reference source object when copying events, since it'll be
5875           dereferenced on event dereferencing as well.
5876
5877 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5878
5879         * docs/gst/gstreamer-sections.txt:
5880         * docs/gst/tmpl/gstevent.sgml:
5881         * gst/gstevent.c: (gst_event_new_filler_stamped),
5882         (gst_event_filler_get_duration):
5883         * gst/gstevent.h:
5884           Add two new functions for filler events (which are used to
5885           synchronize streams if one of them is not having any data
5886           for a while) without interrupting the actual data-stream.
5887           Basically a no-op.
5888         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5889         (gst_queue_link_sink), (gst_queue_link_src),
5890         (gst_queue_change_state):
5891           Allow for renegotiation while filled. Required for stream
5892           switching while playing.
5893
5894 2005-01-08  Benjamin Otte  <otte@gnome.org>
5895
5896         * gst/gstelement.c: (gst_element_link_many):
5897           fix up g_return_if_fail's
5898         * po/LINGUAS:
5899         * po/de.po:
5900           add German translation, that was somehow not included
5901
5902 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5903
5904         * docs/random/mimetypes:
5905           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
5906           do not add them to riff-lib as they are not common
5907
5908 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5909
5910         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5911           Check for existence of probe after performing the probe before
5912           re-accessing it to prevent segfaults caused by removal of the
5913           probe in the callback.
5914
5915 2005-01-05  David Schleef  <ds@schleef.org>
5916
5917         * testsuite/registry/Makefile.am:
5918         * testsuite/registry/gst-print-formats.c:
5919         (print_pad_templates_info), (print_element_list),
5920         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
5921         (g_list_uniqify), (get_pad_templates_info),
5922         (get_element_mime_list), (print_mime_list), (main): A little
5923         program that looks through the registry to find elements of
5924         a given type.  Not particularly interesting as a test, except
5925         that there's no other test covering the same area.
5926
5927 2005-01-05  David Schleef  <ds@schleef.org>
5928
5929         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
5930         (fault_handler_sigaction), (fault_spin),
5931         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
5932         in signal.h-type signal handlers by not calling forbidden functions,
5933         including gst_element_set_state().
5934
5935 2005-01-05  David Schleef  <ds@schleef.org>
5936
5937         * gst/gstvalue.h: Mark _gst_reserved[] as private
5938
5939 2005-01-05  David Schleef  <ds@schleef.org>
5940
5941         * gst/gstvalue.c: Fix doc build problem.
5942
5943 2005-01-05  David Schleef  <ds@schleef.org>
5944
5945         * gst/gstvalue.c: Add some documentation
5946
5947 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
5948
5949         * docs/README:
5950           another shell oneliner for empty return value docs
5951         * gst/gstcaps.c:
5952         * gst/gstvalue.c:
5953         * libs/gst/control/dparam.c:
5954           more doc fixes (parameters and return values)
5955
5956 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
5957
5958         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5959
5960         * gst/gstregistry.h:
5961         * gst/registries/gstxmlregistry.c:
5962           Fix macro's for Mingw (fixes #162276).
5963
5964 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
5965
5966         * docs/README:
5967           quick shell oneliner to find undocumented members
5968         * docs/gst/tmpl/gstplugin.sgml:
5969         * docs/gst/tmpl/gstscheduler.sgml:
5970         * docs/gst/tmpl/gstthread.sgml:
5971           more enumtypes cleanup
5972         * gst/gsterror.h:
5973           activated documentation comments, now someone needs to document
5974           the enums :(
5975
5976 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5977
5978         * docs/manual/manual.xml:
5979           Add dataaccess part (doh!).
5980
5981 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5982
5983         * docs/manual/advanced-autoplugging.xml:
5984           Fix typo (intiate -> initiate).
5985
5986 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5987
5988         * docs/random/bbb/streamselection:
5989           Add some notes on how to handle multi-subtitle/-audio streams.
5990
5991 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
5992
5993         * docs/gst/gstreamer-docs.sgml:
5994         * docs/gst/gstreamer-sections.txt:
5995         * docs/gst/tmpl/gstenumtypes.sgml:
5996         * docs/gst/tmpl/gsterror.sgml:
5997         * docs/gst/tmpl/gstevent.sgml:
5998         * docs/gst/tmpl/gstpad.sgml:
5999         * docs/gst/tmpl/gstpadtemplate.sgml:
6000         * docs/gst/tmpl/gstthread.sgml:
6001           removed gstenumtypes section from docs and put all the enums into
6002           their sections
6003
6004 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6005
6006         * gst/gstplugin.c:
6007           document gst_library_load a bit more (riff special case + return
6008           value if already loaded)
6009         * testsuite/bytestream/filepadsink.c:
6010           plugin name is 'gstbytestream', not 'bytestream'
6011
6012 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6013
6014         * docs/random/bbb/subtitles:
6015           Add some first mind rumblings on proper subtitle support.
6016
6017 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
6018
6019         * po/ca.po:
6020         * po/sv.po:
6021           updated translations
6022
6023 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6024
6025         * docs/manual/advanced-dataaccess.xml:
6026           Add section on how to use fakesrc/fakesink/identity in your
6027           application, plus section on how to embed plugins. Also mention
6028           probes.
6029         * docs/manual/appendix-checklist.xml:
6030         * docs/manual/appendix-debugging.xml:
6031         * docs/manual/appendix-gnome.xml:
6032         * docs/manual/appendix-integration.xml:
6033           Debug -> checklist, GNOME -> integration, add sections on Linux,
6034           KDE integration and add other things useful for application
6035           development.
6036         * docs/manual/manual.xml:
6037           Remove some fixmes, update some file pointers.
6038         * docs/pwg/appendix-checklist.xml:
6039           Fix typo.
6040         * docs/pwg/building-boiler.xml:
6041           Remove ugly header and add commented fixme.
6042         * docs/pwg/pwg.xml:
6043           Add fixme.
6044         * examples/manual/Makefile.am:
6045           Add example for added docs.
6046
6047 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
6048
6049         * configure.ac:
6050           back to HEAD
6051
6052 === release 0.8.8 ===
6053
6054 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
6055
6056         * NEWS:
6057         * RELEASE:
6058         * configure.ac:
6059           Releasing 0.8.8, "I'll Take Care Of You"
6060
6061 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
6062
6063         * configure.ac:
6064           second prerelease
6065
6066 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
6067
6068         patch by: Wim Taymans
6069
6070         * gst/gstbin.c:
6071           Fix for #159852 - make iterate emission threadsafe
6072
6073 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
6074
6075         * docs/faq/cvs.xml:
6076           notes about new fdo account request
6077
6078 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
6079
6080         * docs/gst/gstreamer-docs.sgml:
6081         * docs/gst/tmpl/gstenumtypes.sgml:
6082         * docs/gst/tmpl/gstplugin.sgml:
6083         * docs/libs/gstreamer-libs-docs.sgml:
6084           Added missing short docs. Added ids for navigation.
6085
6086 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6087
6088         * docs/manual/advanced-autoplugging.xml:
6089         * docs/manual/advanced-schedulers.xml:
6090         * docs/manual/advanced-threads.xml:
6091           Rewrites. Remove cothreads, go a bit into opt specifically,
6092           document threads and their gotchas, and do some technical stuff
6093           on autoplugging plus add some working examples. Fixes #157395.
6094         * examples/manual/Makefile.am:
6095           Add typefind/autoplugger example (one that actually works).
6096           Remove queue example since it's a duplicate of the thread one.
6097
6098 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6099
6100         * gst/gstvalue.c: (gst_value_deserialize_string):
6101           use deprecated g_value_set_string_take_ownership to keep compatible
6102           with glib 2.2
6103
6104 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6105
6106         * gst/gstvalue.c: (gst_value_deserialize_string):
6107           revert last patch, only dom a g_utf8_validate now before accepting
6108           the string - caps parsing strips " from strings so we can't rely on
6109           them
6110         * testsuite/caps/value_serialize.c: (test_string_deserialization):
6111           disable a test that tested the above and comment it
6112
6113 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
6114
6115         Patch reviewed by David Schleef  <ds@schleef.org>
6116
6117         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
6118         bug #153882)
6119         * win32/gstenumtypes.h: same
6120
6121 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6122
6123         * gst/gstpad.c: (gst_pad_query):
6124           Do query on realized pad, similar to how convert/send_event handle
6125           this. Also makes sense, since this pad belongs to the function to
6126           which this query will be sent. Fixes #158163.
6127
6128 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
6129
6130         * docs/manual/appendix-programs.xml: fix pipeline to actually work
6131
6132 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
6133
6134         * docs/faq/general.xml: fix pipeline to actually work
6135
6136 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6137
6138         * gst/gstvalue.c: (gst_value_deserialize_string):
6139           check that a simple string that gets deserialized does not contain
6140           invalid characters
6141         * testsuite/caps/value_serialize.c: (test_string_deserialization):
6142           remove a test that tested a wring behaviour
6143
6144 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
6145
6146         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6147
6148         * docs/manual/intro-motivation.xml:
6149           Fix typos.
6150
6151 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
6152
6153         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6154
6155         * docs/gst/tmpl/gstprobe.sgml:
6156           Fix documentation of probe callback - it is supposed to return
6157           FALSE, not TRUE, to remove data from the stream (#159087).
6158
6159 2004-12-16  Daniel Gazard  <dany42@free.fr>
6160
6161         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6162
6163         * gst/gstelementfactory.c: (gst_element_factory_create):
6164           Fix compile failure if compiling without libxml2 support (#149936).
6165
6166 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6167
6168         * docs/manual/advanced-autoplugging.xml:
6169         * docs/manual/highlevel-components.xml:
6170           Move spider from autoplugging to components. Autoplugging is for
6171           internals, not for solutions. ;-).
6172
6173 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6174
6175         * docs/random/ds/0.9-suggested-changes:
6176           Make note on device/location/uri property names.
6177
6178 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6179
6180         * docs/manual/advanced-autoplugging.xml:
6181         * docs/manual/advanced-clocks.xml:
6182         * docs/manual/advanced-interfaces.xml:
6183         * docs/manual/advanced-metadata.xml:
6184         * docs/manual/advanced-position.xml:
6185         * docs/manual/advanced-schedulers.xml:
6186         * docs/manual/advanced-threads.xml:
6187         * docs/manual/appendix-gnome.xml:
6188         * docs/manual/appendix-programs.xml:
6189         * docs/manual/appendix-quotes.xml:
6190         * docs/manual/autoplugging.xml:
6191         * docs/manual/basics-bins.xml:
6192         * docs/manual/basics-data.xml:
6193         * docs/manual/basics-elements.xml:
6194         * docs/manual/basics-helloworld.xml:
6195         * docs/manual/basics-init.xml:
6196         * docs/manual/basics-pads.xml:
6197         * docs/manual/basics-plugins.xml:
6198         * docs/manual/bins-api.xml:
6199         * docs/manual/bins.xml:
6200         * docs/manual/buffers-api.xml:
6201         * docs/manual/buffers.xml:
6202         * docs/manual/clocks.xml:
6203         * docs/manual/components.xml:
6204         * docs/manual/cothreads.xml:
6205         * docs/manual/debugging.xml:
6206         * docs/manual/dparams-app.xml:
6207         * docs/manual/dynamic.xml:
6208         * docs/manual/elements-api.xml:
6209         * docs/manual/elements.xml:
6210         * docs/manual/factories.xml:
6211         * docs/manual/gnome.xml:
6212         * docs/manual/goals.xml:
6213         * docs/manual/helloworld.xml:
6214         * docs/manual/helloworld2.xml:
6215         * docs/manual/highlevel-components.xml:
6216         * docs/manual/highlevel-xml.xml:
6217         * docs/manual/init-api.xml:
6218         * docs/manual/intro-basics.xml:
6219         * docs/manual/intro-motivation.xml:
6220         * docs/manual/intro-preface.xml:
6221         * docs/manual/intro.xml:
6222         * docs/manual/links-api.xml:
6223         * docs/manual/links.xml:
6224         * docs/manual/manual.xml:
6225         * docs/manual/motivation.xml:
6226         * docs/manual/pads-api.xml:
6227         * docs/manual/pads.xml:
6228         * docs/manual/plugins-api.xml:
6229         * docs/manual/plugins.xml:
6230         * docs/manual/programs.xml:
6231         * docs/manual/queues.xml:
6232         * docs/manual/quotes.xml:
6233         * docs/manual/schedulers.xml:
6234         * docs/manual/states-api.xml:
6235         * docs/manual/states.xml:
6236         * docs/manual/threads.xml:
6237         * docs/manual/typedetection.xml:
6238         * docs/manual/win32.xml:
6239         * docs/manual/xml.xml:
6240           Try 2. This time, include a short preface as a "general
6241           introduction", also add code blocks around all code samples
6242           so they get compiled. We still need a way to tell readers
6243           the filename of the code sample. In some cases, don't show
6244           all code in the documentation, but do include it in the generated
6245           code. This allows for focussing on specific bits in the docs,
6246           while still having a full test application available.
6247         * examples/manual/Makefile.am:
6248           Fix up examples for new ADM. Add several of the new examples that
6249           were either added or were missing from the build system.
6250         * examples/manual/extract.pl:
6251           Allow nameless blocks.
6252
6253 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6254
6255         * docs/manual/elements-api.xml:
6256         * docs/manual/helloworld.xml:
6257         * examples/manual/extract.pl:
6258           fix last example.  Add example of adding code blocks that are not
6259           shown in docbook output.
6260
6261 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6262
6263         * docs/manual/dynamic.xml:
6264         * docs/manual/elements-api.xml:
6265         * docs/manual/gnome.xml:
6266         * docs/manual/helloworld2.xml:
6267         * docs/manual/init-api.xml:
6268         * docs/manual/queues.xml:
6269         * docs/manual/threads.xml:
6270         * docs/manual/xml.xml:
6271         * examples/manual/extract.pl:
6272           Make it possible to extract example code from separate blocks.
6273           Should make Ronald happy.
6274
6275 2004-12-15  Wim Taymans  <wim@fluendo.com>
6276
6277         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6278         (remove_from_group), (group_elements_set_visited),
6279         (normalize_group), (gst_opt_scheduler_iterate):
6280         Fix bug where a flag was not updated on a decoupled entry point 
6281         because we were just checking the group element list and decoupled
6282         elements are not in that list..
6283
6284 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6285
6286         * docs/manual/advanced-autoplugging.xml:
6287         * docs/manual/advanced-clocks.xml:
6288         * docs/manual/advanced-dparams.xml:
6289         * docs/manual/advanced-interfaces.xml:
6290         * docs/manual/advanced-metadata.xml:
6291         * docs/manual/advanced-position.xml:
6292         * docs/manual/advanced-schedulers.xml:
6293         * docs/manual/advanced-threads.xml:
6294         * docs/manual/appendix-debugging.xml:
6295         * docs/manual/appendix-gnome.xml:
6296         * docs/manual/appendix-programs.xml:
6297         * docs/manual/appendix-quotes.xml:
6298         * docs/manual/appendix-win32.xml:
6299         * docs/manual/autoplugging.xml:
6300         * docs/manual/basics-bins.xml:
6301         * docs/manual/basics-data.xml:
6302         * docs/manual/basics-elements.xml:
6303         * docs/manual/basics-helloworld.xml:
6304         * docs/manual/basics-init.xml:
6305         * docs/manual/basics-pads.xml:
6306         * docs/manual/basics-plugins.xml:
6307         * docs/manual/bins-api.xml:
6308         * docs/manual/bins.xml:
6309         * docs/manual/buffers-api.xml:
6310         * docs/manual/buffers.xml:
6311         * docs/manual/clocks.xml:
6312         * docs/manual/components.xml:
6313         * docs/manual/cothreads.xml:
6314         * docs/manual/debugging.xml:
6315         * docs/manual/dparams-app.xml:
6316         * docs/manual/dynamic.xml:
6317         * docs/manual/elements-api.xml:
6318         * docs/manual/elements.xml:
6319         * docs/manual/factories.xml:
6320         * docs/manual/gnome.xml:
6321         * docs/manual/goals.xml:
6322         * docs/manual/helloworld.xml:
6323         * docs/manual/helloworld2.xml:
6324         * docs/manual/highlevel-components.xml:
6325         * docs/manual/highlevel-xml.xml:
6326         * docs/manual/init-api.xml:
6327         * docs/manual/intro-motivation.xml:
6328         * docs/manual/intro-preface.xml:
6329         * docs/manual/intro.xml:
6330         * docs/manual/links-api.xml:
6331         * docs/manual/links.xml:
6332         * docs/manual/manual.xml:
6333         * docs/manual/motivation.xml:
6334         * docs/manual/pads-api.xml:
6335         * docs/manual/pads.xml:
6336         * docs/manual/plugins-api.xml:
6337         * docs/manual/plugins.xml:
6338         * docs/manual/programs.xml:
6339         * docs/manual/queues.xml:
6340         * docs/manual/quotes.xml:
6341         * docs/manual/schedulers.xml:
6342         * docs/manual/states-api.xml:
6343         * docs/manual/states.xml:
6344         * docs/manual/threads.xml:
6345         * docs/manual/typedetection.xml:
6346         * docs/manual/win32.xml:
6347         * docs/manual/xml.xml:
6348           First try at rewriting the ADM. Needs lotsamore work, but some
6349           parts might already be somewhat useful.
6350         * docs/pwg/advanced-interfaces.xml:
6351           Remove properties interface, it never actually existed (except for
6352           on my HD...).
6353
6354 2004-12-13  David Schleef  <ds@schleef.org>
6355
6356         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
6357         be NULL (bug #160220).
6358
6359 2004-12-13  David Schleef  <ds@schleef.org>
6360
6361         * configure.ac: remove all mmx stuff, because it's not used.
6362         * docs/random/ds/0.9-suggested-changes: additional notes
6363         * include/Makefile.am: we don't use these anymore
6364         * include/mmx.h: remove
6365         * include/sse.h: remove
6366
6367 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6368
6369         * docs/random/mimetypes:
6370           Add FOURCC code for h264 codec (VSSH)
6371           Add alternate FOURCC codes for h263 related codecs
6372
6373 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
6374
6375         * docs/manual/programs.xml:
6376           Added more gst-launch examples.
6377
6378 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6379
6380         * gst/gstqueue.c: (gst_queue_handle_src_query):
6381           Check for availability again.
6382
6383 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6384
6385         * gst/gstcaps.c: (gst_caps_compare_structures):
6386           Simple caps go first. This has the nice side-effect of fixing an
6387           obscure warning.
6388
6389 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6390
6391         * gst/gstversion.h.in:
6392           Protect header.
6393
6394 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6395
6396         * gst/schedulers/gstoptimalscheduler.c:
6397         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
6398         (gst_opt_scheduler_get_wrapper):
6399           When we're recursing into a chain run, only run the directly
6400           related group, not all queued ones. This will fix a possible
6401           deadlock in chains with more than two groups.
6402
6403 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6404
6405         * autogen.sh:
6406           remove patch if autopoint fails
6407
6408 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6409
6410         * docs/gst/gstreamer-sections.txt:
6411           Document Thomas' addition, fix build, make Luis the sheriff happy.
6412
6413 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
6414
6415         * gst/gstplugin.c:
6416         * gst/gstplugin.h:
6417           add accessor for version field
6418
6419 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6420
6421         submitted by: Luca Ferretti <elle.uca@infinito.it>
6422
6423         * po/LINGUAS:
6424         * po/it.po:
6425           New tranlation added: Italian
6426
6427 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6428
6429         * gst/gstpad.c: (gst_pad_is_negotiated),
6430         (gst_pad_get_negotiated_caps):
6431           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
6432           it doesn't actually check the contents), so be sure to hand it
6433           a RealPad else we'll crash.
6434
6435 2004-12-03  Wim Taymans  <wim@fluendo.com>
6436
6437         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
6438         (gst_queue_link), (gst_queue_handle_src_query):
6439         Reverted to 1.110 until this makes the testsuite and various
6440         apps work.
6441
6442 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
6443
6444         * docs/upload.mak: fix included CVS conflict strings
6445
6446 2004-12-01  William Jon McCann  <mccann@jhu.edu>
6447
6448         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6449
6450         * gst/gstelement.c: (gst_element_error_full):
6451           Use g_error_new_literal because error text may have
6452           percentage signs in it. Fixes #160019.
6453
6454 2004-12-01  Benjamin Otte  <otte@gnome.org>
6455
6456         * gst/elements/gstbufferstore.c:
6457         (gst_buffer_store_add_buffer_func):
6458           don't try to make subbuffers bigger than they can be. (fixes
6459           #159970)
6460
6461 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6462
6463         * docs/gst/gstreamer-sections.txt:
6464         * docs/gst/tmpl/gstvalue.sgml:
6465           Add new function to docs to fix build.
6466
6467 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6468
6469         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
6470         * gst/gstpad.c: (_gst_pad_default_fixate_value),
6471         (_gst_pad_default_fixate_foreach):
6472         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
6473         * gst/gstvalue.h:
6474           Deprecate _type_is_fixed, use _value_is_fixed instead, since
6475           in some cases (arrays), the fixedness depends on the content.
6476         * gst/gstqueue.c: (gst_queue_handle_src_query):
6477           Check for availability before doing something.
6478
6479 2004-11-29  Wim Taymans  <wim@fluendo.com>
6480
6481         * testsuite/threads/Makefile.am:
6482         * testsuite/threads/signals.c: (gst_test_get_type),
6483         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
6484         (gst_test_set_property), (gst_test_get_property),
6485         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
6486         (gst_test_do_prop), (run_thread), (main):
6487         Added a bunch of testcases that show threadsafety bugs in glib.
6488
6489 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
6490
6491         * docs/manual/programs.xml:
6492           Added a first batch of gst-launch examples, as provided by Ronald
6493           and others from the devel-mlist
6494
6495 2004-11-28  Benjamin Otte  <otte@gnome.org>
6496
6497         * gst/gstelement.c: (gst_element_negotiate_pads):
6498           simplify
6499         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
6500         (gst_value_serialize_string), (gst_value_deserialize_string):
6501           add unwrapping of previously wrapped strings. Fix bug in wrapping
6502           while at it.
6503         * testsuite/caps/value_serialize.c: (test1),
6504         (test_string_serialization), (test_string_deserialization), (main):
6505           add tests for string (de)serialization
6506
6507 2004-11-26  Wim Taymans  <wim@fluendo.com>
6508
6509         * testsuite/threads/159566.c: (object_deep_notify), (main):
6510         * testsuite/threads/Makefile.am:
6511         Added testsuite to show bug #159566
6512
6513 2004-11-25  Wim Taymans  <wim@fluendo.com>
6514
6515         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
6516         (gst_thread_child_state_change), (gst_thread_main_loop):
6517         Ref the thread object in the GThread mainloop. Break out of the
6518         thread mainloop if it holds the last ref. This properly exits
6519         the threads when disposing the thread from its own context. It
6520         also avoids possible deadlocks in the dispose function.
6521
6522 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
6523
6524         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
6525         it is necessary to wait.
6526
6527 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6528
6529         * docs/pwg/building-boiler.xml:
6530           Make description somewhat clearer.
6531
6532 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6533
6534         * docs/upload.mak:
6535           Apparently docs changed location on FDO's server.
6536
6537 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6538
6539         * docs/pwg/appendix-checklist.xml:
6540           Add some random notes on things to check when writing an element.
6541           This list can be extended as people see fit.
6542
6543 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
6544
6545         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
6546         (gst_queue_link_src): Allow for renegotiating the caps of the sink
6547         pad. The queue will now wait until it is empty and forward the new
6548         caps to the source.
6549         * gst/gstbin.c (gst_bin_set_element_sched)
6550         (gst_bin_unset_element_sched): Make sure that all elements and
6551         links are registered and unregistered with the scheduler exactly
6552         once. This elaborates on a fix by Benjamin Otte, but
6553         guarantees that decoupled elements are also registered.
6554
6555 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
6556
6557         * docs/manual/quotes.xml:
6558           add a quote
6559         * configure.ac:
6560         * gst/gst.c:
6561         * gst/gstinfo.c:
6562           add LIBDIR and move init message higher up so it's at the start
6563
6564 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
6565
6566         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
6567         * gstreamer.spec.in: add fair
6568
6569 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6570
6571         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6572         * gst/elements/gstidentity.c: (gst_identity_class_init):
6573           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
6574           <teuf@gnome.org> (#157263).
6575         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
6576         (gst_type_find_handle_src_query):
6577           Subtract size of internally stored data from position queries.
6578
6579 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
6580
6581         * gst/schedulers/fairscheduler.c:
6582         * gst/schedulers/faircothreads.c:
6583         * gst/schedulers/faircothreads.h:
6584         New cothread based scheduler: Fair scheduler.
6585         * gst/schedulers/gthread-cothreads.h: 
6586         Add the standard #if around the whole file.
6587         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
6588         compilation of the functions defined in this file. This is
6589         necessary to be able to use this file as a normal header.
6590         * gst/schedulers/Makefile.am: Add compiling support for fair
6591         scheduler.
6592         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
6593         scheduler cothreads layer from documentation generation.
6594
6595 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6596
6597         * gst/autoplug/gstspideridentity.c:
6598         (gst_spider_identity_sink_loop_type_finding):
6599           Don't crash if that function is not implemented.
6600
6601 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6602
6603         * docs/pwg/advanced-types.xml:
6604           Another typo.
6605
6606 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6607
6608         * docs/pwg/intro-preface.xml:
6609           Hm, ok, so the brackets weren't really useful...
6610         * docs/pwg/other-ntoone.xml:
6611           Fix embarassing typo.
6612
6613 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6614
6615         * docs/pwg/intro-preface.xml:
6616           Rewrite preface.
6617
6618 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6619
6620         * docs/pwg/advanced-scheduling.xml:
6621         * docs/pwg/advanced-tagging.xml:
6622         * docs/pwg/advanced-types.xml:
6623         * docs/pwg/building-boiler.xml:
6624         * docs/pwg/building-chainfn.xml:
6625         * docs/pwg/building-signals.xml:
6626         * docs/pwg/building-state.xml:
6627         * docs/pwg/building-testapp.xml:
6628         * docs/pwg/intro-basics.xml:
6629         * docs/pwg/other-manager.xml:
6630         * docs/pwg/other-source.xml:
6631           Typo fixes.
6632         * docs/pwg/other-manager.xml:
6633           Add some first content. No example code yet.
6634         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
6635           Remove double newlines.
6636
6637 2004-11-04  Wim Taymans  <wim@fluendo.com>
6638
6639         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6640         (remove_from_group), (normalize_group), (group_migrate_connected),
6641         (gst_opt_scheduler_iterate):
6642         * testsuite/schedulers/.cvsignore:
6643         * testsuite/schedulers/Makefile.am:
6644         * testsuite/schedulers/queue_link.c: (main):
6645         Added testcase for scheduler segfault.
6646         Fix scheduler segfault when removing a decoupled
6647         entry point as the last element from a group.
6648
6649 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6650
6651         * gst/gstmarshal.list: add missing marshaller, fixes build
6652
6653 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6654
6655         * docs/random/signal: added notes about using BOXED for GstBuffer
6656         signal marshallers, not POINTER
6657
6658 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6659
6660         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6661         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
6662         POINTER=>BOXED changes to marshal GstBuffers
6663
6664 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6665
6666         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
6667         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
6668
6669 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
6670
6671         * docs/gst/gstreamer-sections.txt:
6672         * docs/gst/tmpl/gstcaps.sgml:
6673         * docs/gst/tmpl/gsterror.sgml:
6674         * docs/gst/tmpl/gstinfo.sgml:
6675         * docs/gst/tmpl/gstmacros.sgml:
6676         * docs/gst/tmpl/gstutils.sgml:
6677         * docs/random/ensonic/interfaces.txt:
6678         * gst/gstinfo.h:
6679           added some more docs, removed two obsolete defines
6680
6681 2004-11-02  Kjartan Maraas <as at gnome.org>
6682
6683         reviewed by: Wim Taymans, Ronald Bultje.
6684
6685         * gst/cothreads.c: (cothread_create):
6686         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
6687         (gst_bin_child_state_change_func):
6688         * gst/gstbuffer.c: (gst_buffer_span):
6689         * gst/gstelement.c: (gst_element_get_index),
6690         (gst_element_get_event_masks), (gst_element_get_query_types),
6691         (gst_element_get_formats):
6692         * gst/gsterror.c: (_gst_core_errors_init),
6693         (_gst_library_errors_init), (_gst_resource_errors_init),
6694         (_gst_stream_errors_init):
6695         * gst/gstobject.c: (gst_object_default_deep_notify):
6696         * gst/gstpad.c: (gst_pad_get_event_masks),
6697         (gst_pad_get_internal_links_default):
6698         * gst/gstplugin.c: (gst_plugin_register_func),
6699         (gst_plugin_get_module):
6700         * gst/gststructure.c: (gst_structure_get_string),
6701         (gst_structure_get_abbrs), (gst_structure_from_abbr),
6702         (gst_structure_to_abbr):
6703         * gst/gstutils.c: (gst_print_element_args):
6704         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6705         (setup_group_scheduler), (gst_opt_scheduler_iterate):
6706         Aplied part of patch #157127: Cleanup of issues reported by 
6707         sparse.
6708         Also do not try to use cothreads when there is no cothread
6709         context yet.
6710
6711 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
6712
6713         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6714         (gst_opt_scheduler_iterate):
6715         Applied patch #154061. Running a pipeline in which an element 
6716         calls GST_ELEMENT_ERROR in the chain function, the opt 
6717         scheduler doesn't unref the chain so it never gets freed.
6718
6719 2004-11-02  Wim Taymans  <wim@fluendo.com>
6720
6721         * gst/gststructure.c: (gst_structure_get_abbrs),
6722         (gst_structure_from_abbr), (gst_structure_to_abbr):
6723         Remove that ugly if-then thing in the code that converts
6724         between strings and types.
6725
6726 2004-11-02  Wim Taymans  <wim@fluendo.com>
6727
6728         * gst/gstscheduler.c: (gst_scheduler_add_element),
6729         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
6730         Aplied clock distribution patch, this should fix bug
6731         #148787.
6732
6733 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
6734
6735         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
6736
6737         * po/LINGUAS:
6738         * po/nb.po:
6739           Added Norwegian Bokmaal translation
6740
6741 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6742
6743         * tools/gst-inspect.c: (print_signal_info):
6744           print signal arguments as pointers if they are
6745
6746 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
6747
6748         * docs/pwg/building-boiler.xml:
6749           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
6750
6751 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6752
6753         * gst/parse/parse.l:
6754         * testsuite/parse/parse1.c: (main):
6755         Since parse can do 'element name=a:b' make 'a:b.' work as
6756         well. 
6757         Added testcase to verify fix.
6758
6759 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6760
6761         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
6762         Use the realpad when printing the direction.
6763         Add extra \n when printing extensions of typefind factories.
6764
6765 2004-10-13  David Schleef  <ds@schleef.org>
6766
6767         * examples/manual/Makefile.am: $< isn't portable in Makefile
6768         rules.
6769
6770 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
6771
6772         * docs/gst/tmpl/gstobject.sgml:
6773         * docs/gst/tmpl/gstplugin.sgml:
6774         * docs/gst/tmpl/gstpluginfeature.sgml:
6775         * docs/gst/tmpl/gstregistry.sgml:
6776         * docs/gst/tmpl/gstversion.sgml:
6777         * gst/gstbin.c:
6778           more api documentation
6779         * gst/gstplugin.c: (gst_plugin_register_func),
6780         (gst_plugin_check_file), (gst_plugin_load_file):
6781           better error signaling and logging
6782
6783 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6784
6785         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
6786           Subtract current queue contents from position queries.
6787
6788 2004-10-11  Johan Dahlin  <johan@gnome.org>
6789
6790         * gst/gsturi.c (gst_uri_get_location): unescape string
6791         (gst_uri_construct): escape string.
6792
6793 2004-10-11  Benjamin Otte  <otte@gnome.org>
6794
6795         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
6796         (gst_pad_try_set_caps_nonfixed):
6797           allow renegotiation of unconnected pads (as inside spider). Simply
6798           return OK if unconnected - mimic try_set_caps there.
6799
6800 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6801
6802         * gst/gstbin.c: (gst_bin_sync_children_state):
6803           Add missing break.
6804
6805 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6806
6807         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
6808         Set element to EOS before sending EOS event
6809
6810 2004-10-08  Wim Taymans  <wim at fluendo dot com>
6811
6812         * gst/elements/gsttypefindelement.c:
6813         (gst_type_find_element_handle_event):
6814         Handle EOS events when doing the transition from
6815         typefind to data passing. This should fix the
6816         infinite loops in short files.
6817
6818 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6819
6820         * gst/gstthread.c: (gst_thread_change_state),
6821         (gst_thread_child_state_change):
6822         Make sure no iteration happens while performing
6823         the state change as it could mess up the internal
6824         consistency of the thread state.
6825
6826 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6827
6828         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
6829         (gst_thread_change_state), (gst_thread_child_state_change):
6830         Do not try to grab the iterate lock in the state change method
6831         when we are in the same thread as the iterate or else we
6832         could deadlock. Some other cleanups.
6833
6834 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6835
6836         * configure.ac:
6837           bump nano to cvs
6838
6839 === release 0.8.7 ===
6840
6841 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6842
6843         * configure.ac:
6844         * NEWS:
6845         * RELEASE:
6846         * configure.ac:
6847           releasing 0.8.7, "A Cruise"
6848
6849 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6850
6851         * docs/random/mimetypes:
6852         Add an entry for Sony ATRAC3 audio format with mime-type
6853         used by rmdemux et riff-read
6854
6855 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6856
6857         * gst/elements/gsttypefindelement.c: (stop_typefinding):
6858         Push the buffer store instead of clearing it in case that
6859         the stream is not seekable.
6860
6861 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6862
6863         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
6864         (gst_thread_main_loop):
6865         Lock the iteration and the state change so that automatic
6866         negotiation and fixation does not happen at the same time
6867         as the in stream negotiation.
6868
6869 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6870
6871         * configure.ac:
6872           bump nano to cvs
6873
6874 === release 0.8.6 ===
6875
6876 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6877
6878         * configure.ac:
6879         * NEWS:
6880         * RELEASE:
6881         * configure.ac:
6882           releasing 0.8.6, "Narc"
6883
6884 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6885
6886         * configure.ac:
6887           prerel bump
6888
6889 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6890
6891         patch by: Steve Lhomme
6892
6893         * gst/elements/gstfakesrc.c:
6894         * gst/elements/gstidentity.c:
6895         * gst/gstthread.c:
6896           Fix for #153881
6897
6898 2004-10-01  Wim Taymans  <wim at fluendo dot com>
6899
6900         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
6901         Fix threadsafety of the crc checking function.
6902
6903 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6904
6905         patch by: Ronald Bultje
6906
6907         * gst/elements/gsttypefindelement.c: (stop_typefinding),
6908         (gst_type_find_element_handle_event),
6909         (gst_type_find_element_chain):
6910         * gst/elements/gsttypefindelement.h:
6911          #153657.
6912          Filter out discont event from seekable sources when typefind
6913          asks them to seek.  Fixes typefind with demuxers for
6914          avi, asf and matroska.
6915
6916 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6917
6918         * docs/gst/gstreamer-sections.txt:
6919         * gst/gstcaps.c:
6920         * gst/gstcaps.h:
6921         * gst/gstpad.c:
6922           Revert preferred caps: (#147789)
6923
6924 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
6925
6926         * win32/dirent.c:
6927           fix a memory leak
6928
6929 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6930
6931         * configure.ac:
6932           bump for prerelease
6933
6934 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6935
6936         * docs/Makefile.am:
6937         * docs/manual/elements-api.xml:
6938           restructure so that common stuff is shown first
6939         * docs/manual/init-api.xml:
6940           convert to examples
6941         * docs/manual/manual.xml:
6942         * docs/manuals.mak:
6943         * docs/url.entities:
6944           link to API on the website, possibly override later in build
6945         * examples/manual/.cvsignore:
6946           ignore more
6947         * examples/manual/Makefile.am:
6948           add more examples
6949         * examples/manual/extract.pl:
6950           error out on failure
6951
6952 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6953
6954         * docs/gst/tmpl/gstthread.sgml:
6955         * docs/manual/init-api.xml:
6956         * examples/manual/Makefile.am:
6957           convert two code bits to examples
6958
6959 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6960
6961         * gst/gstelement.c: (gst_element_change_state):
6962           Well, actually, I was about to remove this insane assert when
6963           I noticed Wim already did that. A warning is nice so we can
6964           fix actual ugs (using --g-fatal-warnings and backtraces), so
6965           I added that instead.
6966
6967 2004-09-06  Wim Taymans  <wim@fluendo.com>
6968
6969         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
6970         (gst_element_threadsafe_properties_post_run),
6971         (gst_element_set_state), (gst_element_change_state):
6972         Added extra refcounting around various places. 
6973
6974 2004-09-06  Wim Taymans  <wim@fluendo.com>
6975
6976         * gst/gstpad.c: (gst_pad_link_call_link_functions):
6977         Fix debug info.
6978
6979 2004-09-06  Wim Taymans  <wim@fluendo.com>
6980
6981         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6982         (remove_from_group):
6983         Some more debug info.
6984
6985 2004-09-03  Wim Taymans  <wim@fluendo.com>
6986
6987         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
6988         (gst_fakesrc_init), (gst_fakesrc_set_clock),
6989         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
6990         (gst_fakesrc_get), (gst_fakesrc_change_state):
6991         * gst/elements/gstfakesrc.h:
6992         * gst/elements/gstidentity.c: (gst_identity_class_init),
6993         (gst_identity_init), (gst_identity_chain),
6994         (gst_identity_set_property), (gst_identity_get_property),
6995         (gst_identity_change_state):
6996         * gst/elements/gstidentity.h:
6997         Added datarate properties to limit the datarate.
6998
6999 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7000
7001         * gst/autoplug/gstspider.c: (plugin_init):
7002           don't set a rank. We don't want to autoplug by inserting spiders.
7003
7004 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7005
7006         * gst/autoplug/gstspider.c: (gst_spider_class_init),
7007         (gst_spider_identity_plug):
7008           add a template for spider's sink
7009         * gst/gst.c: (gst_register_core_elements):
7010           queue's rank should be NULL, we don't want spider to add it.
7011
7012 2004-08-18  David Schleef  <ds@schleef.org>
7013
7014         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
7015         * docs/libs/Makefile.am: same
7016         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
7017         * docs/random/ds/0.9-planning: random additions
7018         * docs/random/ds/0.9-suggested-changes: same
7019         * gst/gstxml.h: remove vestigal GstXMLNs definition
7020
7021         Preferred caps: (#147789)
7022         * docs/gst/gstreamer-sections.txt: Add symbols
7023         * docs/gst/tmpl/gstcaps.sgml: Add symbols
7024         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
7025         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
7026         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
7027         (gst_caps_get_preferred), (gst_caps_set_preferred),
7028         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
7029         (gst_caps_use_preferred): Handle caps preferences
7030         * gst/gstcaps.h: Add caps preferences
7031         * gst/gstpad.c: (gst_pad_link_get_preferred),
7032         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
7033         (gst_pad_renegotiate), (gst_pad_guess_preferred),
7034         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
7035         negotiation.
7036
7037 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7038
7039         * gst/autoplug/gstspideridentity.c:
7040         (gst_spider_identity_request_new_pad):
7041         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
7042         (gst_aggregator_init):
7043         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
7044         (gst_fakesink_init):
7045         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
7046         (gst_fakesrc_init):
7047         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
7048         (gst_fdsink_init):
7049         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
7050         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
7051         (gst_filesink_init):
7052         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
7053         (gst_filesrc_init):
7054         * gst/elements/gstidentity.c: (gst_identity_base_init),
7055         (gst_identity_init):
7056         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
7057         (gst_multifilesrc_init):
7058         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
7059         (gst_pipefilter_init):
7060         * gst/elements/gststatistics.c: (gst_statistics_base_init),
7061         (gst_statistics_init):
7062         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
7063         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
7064           s/gst_pad_new/&_from_template/
7065           register pad templates in the base_init function
7066           add static pad template definitions
7067
7068 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7069
7070         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
7071         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
7072         * testsuite/refcounting/pad.c: (main):
7073         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
7074           s/gst_pad_new/&_from_template/
7075           prepare deprecation of gst_pad_new
7076
7077 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
7078
7079         patch by: Luca Ognibene <skaboy81@virgilio.it>
7080
7081         * gst/gstcaps.c:
7082         * gst/gstelement.c:
7083         * gst/gstpad.c:
7084         * gst/gstxml.c:
7085           fix memleaks.  Fixes #150001
7086
7087 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7088
7089         * docs/random/ds/0.9-suggested-changes:
7090           add notes - mostly about pad templates
7091
7092 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
7093
7094         * win32/GStreamer.vcproj:
7095           temporary locale files are .gmo not .mo
7096
7097 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7098
7099         * configure.ac: bump nano to cvs
7100
7101 === release 0.8.5 ===
7102
7103 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7104
7105         * configure.ac:
7106           releasing 0.8.5, "Stuttgart"
7107         * NEWS:
7108         * RELEASE:
7109         * configure.ac:
7110         * docs/random/release:
7111           updates for release
7112
7113 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7114
7115         patch by: Wim Taymans (wim@fluendo.com)
7116
7117         * gst/gstbuffer.c:
7118         * gst/gstindex.h:
7119         * libs/gst/dataprotocol/dataprotocol.c:
7120           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
7121
7122 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7123
7124         * Makefile.am:
7125         * win32/MANIFEST:
7126           add win32 dir to the build.  Fixes #149981.
7127
7128 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7129
7130         * configure.ac:
7131           bump libtool versioning
7132         * gst/gststructure.c:
7133           mark function as static
7134         * po/af.po:
7135         * po/az.po:
7136         * po/ca.po:
7137         * po/cs.po:
7138         * po/en_GB.po:
7139         * po/fr.po:
7140         * po/nl.po:
7141         * po/sq.po:
7142         * po/sr.po:
7143         * po/sv.po:
7144         * po/tr.po:
7145         * po/uk.po:
7146           translations update
7147         * win32/README.txt:
7148           trademark protection
7149
7150 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7151
7152         * configure.ac:
7153           fix GST_ORIGIN
7154           set GST_PACKAGE to source, and distinguish between release and other
7155         * tools/gst-inspect.c:
7156           print out plugin an element factory is part of so we see this info
7157
7158 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7159
7160         * docs/gst/gstreamer-sections.txt:
7161         * docs/gst/tmpl/gstbuffer.sgml:
7162         * docs/gst/tmpl/gstschedulerfactory.sgml:
7163           reorder docs a little, make GstBuffer's more sensible.
7164         * gst/gstbuffer.h:
7165           API: added GST_BUFFER_FLAG_DELTA_UNIT
7166         * gst/gstscheduler.c:
7167           comment API addition
7168
7169 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7170
7171         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
7172           work with non-regular files that can be mmapped (like /dev/zero)
7173         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
7174           get rid of typefinds that require a seek when we can't seek instead
7175           of trying them over and over again
7176         * tools/gst-launch.c: (idle_func), (error_cb), (main):
7177           return non-zero failure value when the pipeline was interrupted or
7178           an error occurred
7179
7180 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
7181
7182         * win32/config.h:
7183         * win32/GStreamer.vcproj:
7184           compile and install the locales
7185
7186 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
7187
7188         * gst/gstvalue.c:
7189           fix a possible memory leak under Windows
7190
7191 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
7192
7193         * win32/GStreamer.vcproj:
7194           fix a memory leak that occured under Windows
7195         * win32/gstreamer.def:
7196           add gst_scheduler_register
7197
7198 2004-08-11  Benjamin Otte  <otte@gnome.org>
7199
7200         * docs/gst/gstreamer-sections.txt:
7201         * gst/gstscheduler.c: (gst_scheduler_register):
7202         * gst/gstscheduler.h:
7203           API:
7204           add gst_scheduler_register shortcut similar to gst_element_register
7205         * gst/schedulers/entryscheduler.c: (plugin_init):
7206         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
7207         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
7208           use it
7209
7210 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
7211
7212         * gst/gstvalue.h:
7213           fix a memory leak that occured under Windows
7214
7215 2004-08-10  Colin Walters  <walters@redhat.com>
7216
7217         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
7218         Don't use O_EXCL to open temporary registry.  It will prevent
7219         registry creation if a temporary one already exists, which
7220         is unnecessary.
7221
7222 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7223
7224         * docs/gst/gstreamer-sections.txt:
7225         * docs/gst/tmpl/gstvalue.sgml:
7226           remove some valuable stuff from the documentation due to the use of GST_EXPORT
7227
7228 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7229
7230         * win32/gstbytestream.vcproj:
7231         * win32/gstelements.vcproj:
7232         * win32/gstgetbits.vcproj:
7233         * win32/gst-inspect.vcproj:
7234         * win32/gst-launch.vcproj:
7235         * win32/gstoptimalscheduler.vcproj:
7236         * win32/GStreamer.vcproj:
7237         * win32/gst-register.vcproj:
7238         * win32/gstspider.vcproj:
7239           update the include and lib dirs to fit standard libraries as
7240           described in the Win32 manual
7241
7242 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7243
7244         * win32/config.h:
7245         * win32/gstversion.h:
7246           enable NLS again, push the version number for the coming 0.8.5 release
7247
7248 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7249
7250         * gst/gstvalue.h:
7251           export gst_type_XXX for windows DLLs
7252
7253 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7254
7255         * docs/faq/gst-uninstalled:
7256           fix PKG_CONFIG_PATH and PYTHONPATH
7257         * gst/schedulers/Makefile.am:
7258           cleanup
7259         * libs/gst/bytestream/bytestream.c:
7260           remove newline
7261         * po/LINGUAS:
7262         * po/sq.po:
7263           adding Albanian translation (Laurent Dhima)
7264         * po/cs.po:
7265           updated
7266
7267 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7268
7269         * po/ca.po:
7270         * po/sv.po:
7271           updated translations
7272
7273 2004-08-04  Benjamin Otte  <otte@gnome.org>
7274
7275         * tests/mass_elements.c: (main):
7276           allow specifying src and sink element explicitly, so I can test
7277           videotestsrc instead of fakesrc
7278
7279 2004-08-04  Benjamin Otte  <otte@gnome.org>
7280
7281         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
7282         (gst_structure_id_empty_new), (gst_structure_empty_new),
7283         (gst_structure_copy):
7284           add gst_structure_id_empty_new_with_size to allow preallocating
7285           value array sizes. Use this in gst_structure_copy to get rid of
7286           reallocs.
7287           don't do quark=>string=>quark when copying structures
7288
7289 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
7290
7291         * docs/manual/win32.xml:
7292         * win32/README.txt:
7293           update documentation with the clean version of dependencies
7294
7295 2004-08-03  Benjamin Otte  <otte@gnome.org>
7296
7297         * gst/schedulers/entryscheduler.c:
7298         (gst_entry_scheduler_remove_element):
7299           fix for GST_DISABLE_DEBUG
7300         * tools/gst-launch.c: (print_tag):
7301           fixes for G_DISABLE_ASSERT
7302
7303 2004-08-03  Benjamin Otte  <otte@gnome.org>
7304
7305         * gst/gst.c: (gst_register_core_elements):
7306           fix for G_DISABLE_ASSERT
7307         * gst/gstinfo.c: (__gst_in_valgrind):
7308           add for GST_DISABLE_DEBUG
7309
7310 2004-08-03  Benjamin Otte  <otte@gnome.org>
7311
7312         * gst/parse/parse.l:
7313           fix for G_DISABLE_ASSERT
7314
7315 2004-08-03  Wim Taymans  <wim@fluendo.com>
7316
7317         * gst/gstbin.c: (gst_bin_get_type),
7318         (gst_bin_child_state_change_func):
7319         * gst/gstthread.c: (gst_thread_change_state):
7320         Backported some debug logging from a reverted patch
7321         Don't try to destroy the thread twice. Added some more
7322         debugging in GstThread. Unlock and signal even if we
7323         are in the thread context.
7324
7325 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7326
7327         * po/uk.po:
7328           updated translation
7329
7330 2004-07-30  David Schleef  <ds@schleef.org>
7331
7332         * gst/gstatomic_impl.h: Enable atomic code for x86_64
7333
7334 2004-07-29  David Schleef  <ds@schleef.org>
7335
7336         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
7337         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
7338
7339 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
7340
7341         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7342         (gst_bin_add_func), (gst_bin_remove_func),
7343         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
7344         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
7345         (gst_bin_change_state_norecurse), (gst_bin_dispose),
7346         (gst_bin_sync_children_state):
7347         * gst/gstbin.h:
7348         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
7349         (gst_thread_change_state):
7350         * testsuite/states/Makefile.am:
7351           revert state change patches as agreed so we can rework them
7352           gradually
7353
7354 2004-07-29  Benjamin Otte  <otte@gnome.org>
7355
7356         * libs/gst/control/Makefile.am:
7357           link to libgstreamer (fixes Debian bug 262019, see
7358           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
7359
7360 2004-07-29  Wim Taymans  <wim@fluendo.com>
7361
7362         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
7363         (check_from_fraction_convert), (transform_test), (main):
7364         Make the test less pedantic about float roundoff errors.
7365
7366 2004-07-29  Benjamin Otte  <otte@gnome.org>
7367
7368         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
7369         (gst_filesrc_srcpad_event):
7370           make seek events to before start/after end of file not fail, but
7371           seek to start/end instead
7372         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
7373           add more output
7374
7375 2004-07-29  Benjamin Otte  <otte@gnome.org>
7376
7377         * gst/gstpad.c: (gst_pad_set_explicit_caps):
7378           check that caps are fixed
7379         * gst/gstpad.c: (gst_pad_template_new):
7380           don't try to simplify caps, costs too much time on gst_init
7381         * gst/gstplugin.c: (gst_plugin_add_feature):
7382           G_ERROR if features are added twice
7383         * gst/gsttypefind.c: (gst_type_find_register):
7384         * gst/gstelementfactory.c: (gst_element_register):
7385           don't add features twice
7386         * docs/random/ds/0.9-suggested-changes:
7387           add note about possible gst_init optimization
7388
7389 2004-07-28  David Schleef  <ds@schleef.org>
7390
7391         * testsuite/elements/Makefile.am:
7392         * testsuite/elements/struct_i386.h:
7393         * testsuite/elements/struct_size.c: (main):  A little test
7394         to keep distcheck from working if someone changes a structure
7395         size accidentally.
7396
7397 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7398
7399         * docs/libs/Makefile.am:
7400         * docs/libs/gstreamer-libs-docs.sgml:
7401         * docs/libs/gstreamer-libs-sections.txt:
7402         * docs/libs/tmpl/gstbytestream.sgml:
7403         * docs/libs/tmpl/gstcontrol.sgml:
7404         * docs/libs/tmpl/gstdataprotocol.sgml:
7405         * docs/libs/tmpl/gstgetbits.sgml:
7406         * libs/gst/bytestream/Makefile.am:
7407         * libs/gst/bytestream/bytestream.c:
7408         * libs/gst/bytestream/bytestream.h:
7409         * libs/gst/control/Makefile.am:
7410         * libs/gst/dataprotocol/Makefile.am:
7411         * libs/gst/getbits/Makefile.am:
7412         * libs/gst/getbits/getbits.h:
7413           various doc and style fixes, adding bytestream to libs docs.
7414
7415 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7416
7417         * docs/gst/gstreamer-docs.sgml:
7418         * docs/libs/Makefile.am:
7419         * docs/libs/gstreamer-libs-docs.sgml:
7420         * docs/libs/gstreamer-libs-sections.txt:
7421         * libs/gst/control/dparam.c:
7422           more doc fixes.  gst-libs docs now build the same way as gst.
7423
7424 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7425
7426         * configure.ac:
7427         * testsuite/Makefile.am:
7428         * testsuite/bins/Makefile.am:
7429         * testsuite/caps/Makefile.am:
7430         * testsuite/cleanup/Makefile.am:
7431         * testsuite/clock/Makefile.am:
7432         * testsuite/debug/Makefile.am:
7433         * testsuite/dlopen/Makefile.am:
7434         * testsuite/dynparams/Makefile.am:
7435         * testsuite/elements/.cvsignore:
7436         * testsuite/elements/Makefile.am:
7437         * testsuite/enumcaps/Makefile.am:
7438         * testsuite/enumcaps/enumcaps.c:
7439         * testsuite/ghostpads/Makefile.am:
7440         * testsuite/indexers/Makefile.am:
7441         * testsuite/negotiation/Makefile.am:
7442         * testsuite/parse/Makefile.am:
7443         * testsuite/plugin/Makefile.am:
7444         * testsuite/refcounting/Makefile.am:
7445         * testsuite/schedulers/.cvsignore:
7446         * testsuite/states/Makefile.am:
7447         * testsuite/tags/Makefile.am:
7448         * testsuite/threads/Makefile.am:
7449           fold enumcaps into caps dir
7450           clean up Makefile.am's for testsuite
7451
7452 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7453
7454         * docs/gst/Makefile.am:
7455         * docs/libs/Makefile.am:
7456           clean up docs build.  Fixes needless rebuilding of template files.
7457
7458 2004-07-28  Wim Taymans  <wim@fluendo.com>
7459
7460         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
7461         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
7462         Make sure that a bin state change tries to keep the children
7463         in sync. 
7464         Added debug logging to the thread.
7465
7466 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
7467
7468         * win32/GStreamer.vcproj:
7469         * win32/gstreamer.def:
7470           more exports for the plugins
7471
7472 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
7473
7474         * win32/gstgetbits.vcproj:
7475         * win32/gstgetbits.def:
7476         * win32/msvc71.sln:
7477           add support for the getbits plugin
7478
7479 2004-07-27  Wim Taymans  <wim@fluendo.com>
7480
7481         * gst/gstvalue.c: (gst_value_transform_double_fraction),
7482         (gst_value_transform_fraction_double), (_gst_value_initialize):
7483         * testsuite/caps/Makefile.am:
7484         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
7485         (check_from_fraction_convert), (transform_test), (main):
7486         Added transform functions between double and fraction.
7487         Added testcase to verify transforms
7488
7489 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7490
7491         * win32/GStreamer.vcproj:
7492           rename GStreamer-0.8.lib to libgstreamer.lib
7493
7494 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7495
7496         * win32/gstelements.vcproj:
7497         * win32/gstoptimalscheduler.vcproj:
7498           fixes for the Release build
7499
7500 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7501
7502         * win32/config.h:
7503           update the version number
7504
7505 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7506
7507         * win32/GStreamer.vcproj:
7508           add gstinterface to the build
7509
7510 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7511
7512         * win32/gstreamer.def:
7513           add many definitions needed by plugins,
7514           GST_CAT_DEFAULT only available in the Debug build ?
7515
7516 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7517
7518         * gst/gstelement.c: (gst_element_set_eos_recursive):
7519           various whitespace fixes.
7520           doc fix, fixes #148497
7521
7522 2004-07-25  Benjamin Otte  <otte@gnome.org>
7523
7524         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
7525           don't delay links on the sink elements, it causes unnegotiated
7526           links.
7527         * gst/elements/gsttypefindelement.c:
7528         (gst_type_find_element_base_init):
7529           add our padtemplates, we indeed do have some.
7530         * gst/elements/gsttypefindelement.c:
7531         (gst_type_find_element_handle_event),
7532         (gst_type_find_element_chain):
7533           don't push data when typefinding failed.
7534         * gst/gstpad.c: (gst_pad_link_fixate):
7535           check that no fixate function returns empty caps.
7536         * gst/gstpad.c: (gst_pad_push):
7537           check that the link is negotiated before data gets pushed.
7538         * tools/gst-register.c: (main):
7539           don't assert (fixes #148283)
7540
7541 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7542
7543         * docs/gst/gstreamer-sections.txt:
7544         * docs/gst/tmpl/gstconfig.sgml:
7545           add GST_PLUGIN_EXPORT definition
7546
7547 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7548
7549         * gst/gstplugin.h:
7550         * gst/gstconfig.h.in:
7551         * win32/gstconfig.h:
7552         * win32/gstelements.def:
7553         * win32/gstelements.vcproj:
7554         * win32/gstoptimalscheduler.def:
7555         * win32/gstoptimalscheduler.vcproj:
7556         * win32/gstspider.def:
7557         * win32/gstspider.vcproj:
7558           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
7559
7560 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7561
7562         * docs/gst/gstreamer-sections.txt:
7563           remove GST_CAT_DEFAULT because the type has changed
7564
7565 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7566
7567         * win32/gstbytestream.vcproj:
7568         * win32/gstelements.vcproj:
7569         * win32/gst-inspect.vcproj:
7570         * win32/gst-launch.vcproj:
7571         * win32/gstoptimalscheduler.vcproj:
7572         * win32/GStreamer.vcproj:
7573         * win32/gst-register.vcproj:
7574         * win32/gstspider.vcproj:
7575         * win32/msvc71.sln:
7576           Copy the files where needed after building, The testsuite will be
7577           built separately
7578
7579 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7580
7581         * win32/config.h:
7582         * win32/README.txt:
7583         * docs/manual/win32.xml:
7584         Fixed the plugin and GStreamer location
7585
7586 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7587
7588         * win32/gstreamer.def:
7589         More exports for the plugins
7590
7591 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7592
7593         * gst/gstinfo.h:
7594         Marc was right, we need to export literally GST_CAT_DEFAULT
7595
7596 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7597
7598         * win32/config.h:
7599         NLS crashes in gettext, disabled until this is solved
7600
7601 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7602
7603         * win32/gst-inspect.vcproj:
7604         * win32/gst-launch.vcproj:
7605         Should use NLS when available
7606
7607 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7608
7609         * gst/registries/gstxmlregistry.c:
7610         removing the file doesn't seem to be a good idea on Linux
7611
7612 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7613
7614         * gst/registries/gstxmlregistry.c:
7615         Remove the registry before renaming the tempfile (needed for Windows)
7616
7617 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7618
7619         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
7620         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
7621         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
7622         * gst/elements/gstmultifilesrc.h:
7623         Added newmedia property so it generates newmedia events between each
7624         file when property is set, as well as fixed eos handling
7625
7626 2004-07-22  David Schleef  <ds@schleef.org>
7627
7628         * gst/gststructure.c: (gst_structure_id_empty_new),
7629         (gst_structure_empty_new):  Set type field correctly.
7630         * gst/gststructure.h: Check type field correctly.
7631         * testsuite/caps/Makefile.am:
7632         * testsuite/caps/structure.c: (test1), (main): Add a very small
7633         test for structures.
7634
7635 2004-07-22  David Schleef  <ds@schleef.org>
7636
7637         * docs/random/ds/0.9-suggested-changes: more comments
7638         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
7639
7640 2004-07-22  Benjamin Otte  <otte@gnome.org>
7641
7642         * gst/gstelementfactory.c: (gst_element_register):
7643           set the factory in the class struct, so gst_element_get_factory
7644           actually works
7645         * gst/parse/grammar.y:
7646           set element to playing when it gets unlocked as we can't rely on the
7647           bin state - all elements in the bin state might still be locked in
7648           NULL)
7649
7650 2004-07-22  Benjamin Otte  <otte@gnome.org>
7651
7652         * gst/gstelement.c: (gst_element_set_state_func):
7653           make this a static function
7654
7655 2004-07-22  Wim Taymans  <wim@fluendo.com>
7656
7657         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
7658         (gst_opt_scheduler_pad_link):
7659         fix 147894-2 and the group_link problem.
7660
7661 2004-07-22  Wim Taymans  <wim@fluendo.com>
7662
7663         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7664         (handoff_identity), (main):
7665         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7666         (handoff_identity), (main):
7667         * testsuite/schedulers/Makefile.am:
7668         * testsuite/schedulers/group_link.c: (main):
7669         Show bug in scheduler when linking chain and loop based element 
7670         where the chain based element was not yet in a group.
7671
7672 2004-07-21  Benjamin Otte  <otte@gnome.org>
7673
7674         * gst/.cvsignore:
7675         * gst/autoplug/.cvsignore:
7676         * gst/elements/.cvsignore:
7677         * gst/indexers/.cvsignore:
7678         * libs/gst/bytestream/.cvsignore:
7679         * libs/gst/control/.cvsignore:
7680         * libs/gst/getbits/.cvsignore:
7681         * testsuite/states/.cvsignore:
7682         * testsuite/threads/.cvsignore:
7683           keep this up to date, since I seem to be the only one who cares
7684           about not missing files on commits (editor's note: no you don't,
7685           but feel free to change them at the time you add stuff instead
7686           of later on)
7687
7688 2004-07-21  Benjamin Otte  <otte@gnome.org>
7689
7690         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7691         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
7692         (gst_bin_child_state_change_func), (set_kid_state_func),
7693         (gst_bin_set_state), (gst_bin_change_state_norecurse):
7694           make state changes work correctly and reentrant (so removing
7695           elements from bins during state changes of bins doesn't cause
7696           segfaults or even wrong states)
7697           add debugging category and debugging output to print children states
7698         * gst/gstbin.c: (gst_bin_dispose): 
7699           add some assertion checks
7700         * gst/gstbin.h:
7701         * gst/gstbin.c: (gst_bin_sync_children_state):
7702           deprecate this function - it just does gst_bin_set_state (bin,
7703           GST_STATE (bin)) 
7704         * testsuite/threads/queue.c: (main):
7705           don't use gst_bin_sync_children_state anymore
7706         * testsuite/states/Makefile.am:
7707         * testsuite/states/bin.c:
7708           test that the state changes of bins work as expected
7709         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
7710           some adjustments to change states correctly, too
7711         * gst/gstthread.c: (gst_thread_change_state):
7712           don't enable/disable "threadsafe" properties, they're unused and
7713           cause random segfaults
7714         * testsuite/threads/Makefile.am:
7715           the queue check randomly passes now, ignore it
7716
7717 2004-07-21  Benjamin Otte  <otte@gnome.org>
7718
7719         * gst/gstpad.c:
7720           check if data is NULL before outputting debug info. (fixes #145100)
7721
7722 2004-07-21  Benjamin Otte  <otte@gnome.org>
7723
7724         * gst/schedulers/entryscheduler.c:
7725         (gst_entry_scheduler_loop_wrapper),
7726         (gst_entry_scheduler_chain_wrapper),
7727         (gst_entry_scheduler_get_wrapper):
7728           reset the state when the cothread starts, so we don't get assertion
7729           failures on restarting of cothreads
7730
7731 2004-07-20  Benjamin Otte  <otte@gnome.org>
7732
7733         * gst/gstelement.c: (gst_element_link_pads_filtered):
7734           use correct sinkpad, if only sinkpad is specified, but not srcpad
7735           (fixes #147889)
7736         * gst/gstelement.c: (gst_element_set_state_func),
7737         (gst_element_change_state): ref/unref the element, signal handlers
7738         could get rid of the element otherwise
7739
7740 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7741
7742         * docs/random/ds/0.9-suggested-changes:
7743           Make note about renaming fixed-list to array.
7744         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
7745         (_gst_value_initialize):
7746           Add array intersections.
7747         * testsuite/caps/intersect2.c: (main):
7748           Add test for array intersections.
7749
7750 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7751
7752         * configure.ac: back to cvs
7753
7754 === release 0.8.4 ===
7755
7756 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7757
7758         * configure.ac:
7759           releasing 0.8.4, "Paella"
7760           bump libtool versioning
7761
7762 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7763
7764         * po/LINGUAS:
7765         * po/ca.po:
7766           adding Catalan translation (Jordi Mallach)
7767
7768 2004-07-20  Wim Taymans  <wim@fluendo.com>
7769
7770         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7771         (handoff_identity), (main):
7772         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7773         (handoff_identity), (main):
7774         * testsuite/schedulers/Makefile.am:
7775         Added failing testcase for variant of #147894
7776
7777 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7778
7779         patch by: David Moore
7780
7781         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7782         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
7783         (group_migrate_connected):
7784         * testsuite/schedulers/Makefile.am:
7785           fix for #142813 (Deadlock in optimal scheduler)
7786
7787 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7788
7789         patch by: Wim Taymans
7790
7791         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7792         (gst_opt_scheduler_schedule_run_queue),
7793         (gst_opt_scheduler_get_wrapper), (get_group),
7794         (group_migrate_connected):
7795         * testsuite/schedulers/Makefile.am:
7796           fix for #147819 (Add some checks in the opt scheduler)
7797
7798 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7799
7800         patch by: Benjamin Otte
7801
7802         * gst/gstelementfactory.c: (__gst_element_details_set):
7803           fix for #147929: running gst-register in non-utf8 locale can cause
7804           invalid registry
7805
7806 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7807
7808         patch by: Wim Taymans
7809
7810         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
7811         (group_has_element), (element_get_reachables_func),
7812         (group_migrate_connected):
7813           fix for #147894 (opt scheduler decoupled elements mismanagement)
7814         * testsuite/schedulers/Makefile.am:
7815           testsuite app now passes
7816
7817 2004-07-19  Wim Taymans  <wim@fluendo.com>
7818
7819         * testsuite/schedulers/147819.c: (handoff_identity1),
7820         (handoff_identity2), (main):
7821         * testsuite/schedulers/Makefile.am:
7822         Added testcase for bug 147819
7823
7824 2004-07-19  Wim Taymans  <wim@fluendo.com>
7825
7826         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7827         (handoff_identity), (main):
7828         * testsuite/schedulers/Makefile.am:
7829         Added testcase for bug 147894
7830
7831 2004-07-16  Wim Taymans  <wim@fluendo.com>
7832
7833         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
7834         * testsuite/schedulers/142183.c: (handoff_identity), (main):
7835         * testsuite/schedulers/Makefile.am:
7836         Added testsuite for bug 142183 in its two incarnations. Refcount
7837         is not increased for scheduled elements and threadsafe properties
7838         mutexes are not properly unlocked.
7839
7840 2004-07-16  Wim Taymans  <wim@fluendo.com>
7841
7842         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
7843         (create_chain), (destroy_chain), (create_group), (destroy_group),
7844         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
7845         (group_dec_link), (gst_opt_scheduler_pad_link),
7846         (group_inc_links_for_element), (group_migrate_connected):
7847         Call group_inc_link with the proper src->sink ordering -- 
7848         break this, and we break sort_chain. patch from wingo for bug
7849         147713.
7850         Partially revert patch 1.89. When adding a loop based element to 
7851         the scheduler, the links to other groups are automatically followed
7852         and incremented. This should not happen because the bin will call
7853         pad_link explicitly for those connection, resulting in them counted 
7854         twice. Results in assertion failure on pipeline cleanup.
7855
7856 2004-07-16  Wim Taymans  <wim@fluendo.com>
7857
7858         * testsuite/schedulers/143777-2.c: (main):
7859         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
7860         (main):
7861         * testsuite/schedulers/Makefile.am:
7862         Added cleanup code to testcase 143777-2.
7863         Added testcase to show bug 147713, does not really show the
7864         deadlock as I can't figure out how to trigger it, but it does
7865         demonstrate bad ordering in the scheduler.
7866
7867 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7868
7869         * gst/gstvalue.c: (gst_value_deserialize_fraction):
7870           change strndup to g_strndup.  Fixes #147707
7871
7872 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7873
7874         * po/af.po:
7875         * po/az.po:
7876         * po/cs.po:
7877         * po/en_GB.po:
7878         * po/fr.po:
7879         * po/nl.po:
7880         * po/sr.po:
7881         * po/sv.po:
7882         * po/tr.po:
7883         * po/uk.po:
7884           updated translations
7885
7886 2004-07-16  Benjamin Otte  <otte@gnome.org>
7887
7888         * gst/gstvalue.c: (gst_greatest_common_divisor):
7889           use ints and return ints, fractions only use ints, too, so this
7890           avoids accidently casting multiplications to unsigned
7891         (gst_value_lcopy_fraction): it's ints, not uint32
7892         (gst_value_set_fraction): disallow minint, multiplying and negation
7893           are broken with it
7894         (gst_value_fraction_multiply): fix to make large numbers work and get
7895         rid of the assumption that the multiplication of two ints fits an
7896         int64 - dunno if that's true for all systems
7897         * testsuite/caps/Makefile.am:
7898         * testsuite/caps/fraction-multiply-and-zero.c:
7899         (check_multiplication), (check_equal), (zero_test), (main):
7900           add tests for all the stuff above
7901         * testsuite/caps/value_compare.c: (test1):
7902           fix comment
7903         * tests/.cvsignore:
7904         * testsuite/caps/.cvsignore:
7905         * testsuite/debug/.cvsignore:
7906         * testsuite/dlopen/.cvsignore:
7907         * testsuite/states/.cvsignore:
7908           get up to date
7909
7910 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7911
7912         * docs/manual/bins-api.xml:
7913         * docs/manual/factories.xml:
7914         * docs/manual/helloworld.xml:
7915         * docs/manual/links-api.xml: 
7916           fixes for out of date info, incorrect info and grammar
7917
7918 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7919
7920         * docs/manual/pads.xml:
7921         * docs/manual/pads-api.xml: grammar fix
7922
7923 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7924
7925         * docs/manual/pads-api.xml: typo + grammar fix
7926
7927 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7928
7929         * docs/gst/gstreamer-sections.txt:
7930           add new symbols
7931         * docs/gst/tmpl/gstelement.sgml:
7932         * docs/gst/tmpl/gstpad.sgml:
7933         * docs/gst/tmpl/gsttypes.sgml:
7934         * docs/gst/tmpl/gstvalue.sgml:
7935           update docs
7936         * gst/gststructure.c: (gst_structure_set_valist),
7937         (gst_structure_from_abbr), (gst_structure_to_abbr):
7938         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
7939         (gst_greatest_common_divisor), (gst_value_init_fraction),
7940         (gst_value_copy_fraction), (gst_value_collect_fraction),
7941         (gst_value_lcopy_fraction), (gst_value_set_fraction),
7942         (gst_value_get_fraction_numerator),
7943         (gst_value_get_fraction_denominator),
7944         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
7945         (gst_value_deserialize_fraction),
7946         (gst_value_transform_fraction_string),
7947         (gst_value_transform_string_fraction),
7948         (gst_value_compare_fraction), (_gst_value_initialize):
7949         * gst/gstvalue.h:
7950           adding GstFraction GValue type, get/set, and multiply
7951         * testsuite/caps/Makefile.am:
7952         * testsuite/caps/fraction.c: (test), (main):
7953         * testsuite/caps/string-conversions.c: (main):
7954         * testsuite/caps/value_compare.c: (test1), (main):
7955           add regression tests for GstFraction
7956
7957 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7958         
7959         * docs/manual/init-api.xml: Grammar fix
7960
7961 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7962
7963         * docs/manual/states.xml: Fix inconsistent information
7964
7965 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7966
7967         * gst/gstelement.c: (gst_element_set_state):
7968         * gst/gstpad.c: (gst_pad_try_set_caps):
7969         * gst/gststructure.c:
7970         * gst/gstthread.c: (gst_thread_child_state_change):
7971         * gst/gstvalue.c: (gst_value_compare_double):
7972         * gst/gstvalue.h:
7973         * testsuite/parse/parse1.c: (main):
7974           debugging additions and style cleanups
7975
7976 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7977
7978         * docs/manual/states.xml: Grammar fix
7979
7980 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7981
7982         * docs/manual/pads.xml: Grammar fix
7983
7984 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7985
7986         * docs/manual/elements.xml: Fixed image reference
7987
7988 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7989
7990         * docs/manual/goals.xml: Grammar fix
7991
7992 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7993
7994         * docs/manual/motivation.xml:
7995         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
7996
7997 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7998
7999         * docs/manual/motivation.xml: Fix spelling
8000
8001 2004-07-15  Benjamin Otte  <otte@gnome.org>
8002
8003         * gst/gstelement.h: 
8004           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
8005           strings.
8006         * gst/gstelement.c (gst_element_class_init):
8007           GError's are boxed, not objects
8008         * gst/gstmarshal.list:
8009           update list for the fixed error signal
8010
8011 2004-07-14  Andy Wingo  <wingo@pobox.com>
8012
8013         * gst/gsttag.c: Add a tag merge func for pointers. The header was
8014         there all along, but the function wasn't. (guile-gstreamer's build
8015         system uses the address of the function -- I wasn't actually
8016         trying to use this.)
8017
8018 2004-07-14  Andy Wingo  <wingo@pobox.com>
8019
8020         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
8021         as gst_pad_proxy_pad_link) just link to every other pad when they
8022         are called. In the case where the graph has cycles, this will mean
8023         that a call to try_set_caps will recurse. Allow this recursion
8024         and return OK, while we wait for the first try_set_caps to give a
8025         proper return value.
8026         (gst_pad_link_call_link_functions): Since this function is the
8027         only one to set the NEGOTIATING flag on a pad, if the flag is set
8028         it means that the link functions have indirectly recursed. If this
8029         happens, error out to avoid infinite recursion and an eventual
8030         SEGV.
8031         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
8032         (gst_pad_proxy_getcaps): Intersect the result with the template
8033         caps to ensure that the return value is valid.
8034
8035 2004-07-14  Andy Wingo  <wingo@pobox.com>
8036
8037         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
8038         one refcount, the calling function is the owner of the buffer.
8039
8040 2004-07-14  Wim Taymans  <wim@fluendo.com>
8041
8042         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
8043         (gst_opt_scheduler_pad_link), (group_migrate_connected):
8044         Fix stupid warning when an element is to be migrated but
8045         is already migrated.
8046
8047 2004-07-14  Wim Taymans  <wim@fluendo.com>
8048
8049         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
8050         (gst_opt_scheduler_pad_link), (group_migrate_connected):
8051         Make sure that a single non-loop-based element does not 
8052         end up in a group. This fixes the testsuite again.
8053
8054 2004-07-14  Wim Taymans  <wim@fluendo.com>
8055
8056         * gst/schedulers/gstoptimalscheduler.c: (create_group),
8057         (add_to_group), (merge_groups), (schedule_group),
8058         (gst_opt_scheduler_get_wrapper), (group_elements),
8059         (group_dec_link), (gst_opt_scheduler_pad_link),
8060         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
8061         (gst_opt_scheduler_iterate):
8062         move isolated groups to a new chain.
8063         Emit a warning instead of segfaulting in some error cases.
8064         Fix a bug where the link count between groups was not calculated 
8065         correctly. Fixes #144510.
8066
8067 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
8068         * gst/elements/gstfilesrc.c:
8069           Binary files support under Windows now OK
8070       
8071 2004-07-13  Benjamin Otte  <otte@gnome.org>
8072
8073           compatibility fixes for Solaris 8/gcc 2.95
8074         * configure.ac:
8075           include libintl libs in LDFLAGS
8076         * gstvalue.c (gst_value_deserialize_buffer):
8077           cast isxdigit stuff to int to silence compiler warning
8078
8079 2004-07-12  Benjamin Otte  <otte@gnome.org>
8080
8081         * gst/gsttypes.h:
8082           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
8083           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
8084           just causes support madness
8085         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
8086           make it work without this
8087         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
8088         (gst_file_index_commit):
8089           glib IO channels don't want binary mode
8090         * testsuite/bytestream/filepadsink.c: (main):
8091         * testsuite/bytestream/test1.c: (read_param_file):
8092           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
8093
8094 2004-07-12  Benjamin Otte  <otte@gnome.org>
8095
8096         * gst/gstelement.c: (gst_element_class_init),
8097         (gst_element_set_state), (gst_element_set_state_func):
8098           virutalize gst_element_set_state, use set_state member in class
8099           struct that was already added in 0.7 for this.
8100         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
8101         (gst_bin_change_state):
8102           make gst_bin_foreach works similar to other foreach functions, plug
8103           memleaks in it. Make functions using it work with the new approach.
8104           Document gst_bin_foreach, so it can be exported if we want to
8105         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
8106           use virtualized set_state to make set_state on bins set the state of
8107           all its children.
8108
8109 2004-07-12  Benjamin Otte  <otte@gnome.org>
8110
8111         * configure.ac:
8112           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
8113           http://bugs.gentoo.org/show_bug.cgi?id=53967)
8114         * gst/gstpad.c: (gst_pad_alloc_buffer):
8115           allow buffer_alloc functions to return NULL and allocate a normal
8116           buffer in that case
8117
8118 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
8119         * gst/elements/gstfilesink.c:
8120         * gst/elements/gstfilesrc.c:
8121         * gst/indexers/gstfileindex.c:
8122         * gst/gsttypes.h:
8123         * testsuite/bytestream/filepadsink.c:
8124         * testsuite/bytestream/test1.c:
8125           Handle binary files under Windows
8126
8127 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
8128         * docs/manual/win32.xml:
8129         * win32/config.h:
8130         * win32/gst-register.vcproj:
8131         * win32/gstreamer.def:
8132           Update to another gettext public build
8133
8134 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
8135         * gst/gstplugin.c:
8136           Fix an impossible C syntax
8137         * win32/config.h:
8138           Disable i18n under Windows for the moment
8139         * win32/gst-register.vcproj:
8140           Use this configuration
8141
8142 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
8143         * docs/manual/quotes.xml:
8144           Keep the quotes file alive
8145         * docs/random/ds/0.9-suggested-changes:
8146           Add the suggestion of including a 'rowstride' as part of video
8147           format caps
8148
8149 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8150
8151         * gst/gstelement.c: (gst_element_set_state),
8152         (gst_element_change_state):
8153           d'oh.  Set PENDING state correctly before forcing bin to change.
8154         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8155         (gst_structure_parse_fixed_list):
8156         * gst/schedulers/gstoptimalscheduler.c:
8157         (gst_opt_scheduler_state_transition):
8158         * testsuite/states/parent.c: (main):
8159           remove comment now that it's fixed.
8160
8161 2004-07-11  Benjamin Otte  <otte@gnome.org>
8162
8163         * gst/gstclock.h:
8164           GST_SECOND shouldn't cause a conversion to unsigned.
8165         * testsuite/clock/.cvsignore:
8166         * testsuite/clock/Makefile.am:
8167         * testsuite/clock/signedness.c: (main):
8168           make sure it never will again
8169
8170 2004-07-11  Andy Wingo  <wingo@pobox.com>
8171
8172         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
8173         whose state is higher than the bin state, raise the bin state to
8174         ensure that bin state := highest child state.
8175         
8176 2004-07-11  Andy Wingo  <wingo@pobox.com>
8177
8178         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
8179         procedure on the children of a bin. Assumes that the procedure can
8180         change the set of children.
8181         (set_kid_state_func): New static function.
8182         (gst_bin_change_state): Use gst_bin_foreach to call
8183         set_kid_state_func. Fixes a bug: if a child had a state-change
8184         handler that removes it from the bin, there would be a segfault.
8185         Hopefully it should also work in the case where the state-change
8186         handler on one child adds or removes other children. In any case,
8187         fixes should go to gst_bin_foreach.
8188
8189 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
8190
8191         * gst/gstelement.c: (gst_element_set_state):
8192           compatibility fix for latest plugins release.  Change loop back
8193           to while {}
8194
8195 2004-07-09  Wim Taymans  <wim@fluendo.com>
8196
8197         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
8198         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
8199         (gst_thread_main_loop):
8200         Since remove is virtual in GstBin we must not assume the 
8201         elements GList to have anothing useful.
8202         Add some more logging to GstThread and be a bit more paranoid
8203         when resetting the scheduler.
8204         Set the state of the bin to NULL before removing the children.
8205
8206 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8207
8208         * testsuite/threads/Makefile.am:
8209         * testsuite/threads/threadg.c:
8210           added test to check if problem when removing all elements from a
8211           GstThread before setting GstThread state to NULL
8212
8213 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8214
8215         * docs/gst/tmpl/gstelement.sgml:
8216         * docs/gst/tmpl/gsttypes.sgml:
8217         * gst/gstbin.c: (gst_bin_change_state):
8218         * gst/gstelement.c: (gst_element_set_state),
8219         (gst_element_change_state):
8220           rework so that for bins we try to set the state on all children
8221           as well even if the bin is in the correct state already.
8222           change while to do so at least one iteration is done.
8223           For regular elements, we fall back to the previous behaviour for
8224           now since we first need a new plugins release.
8225         * testsuite/states/parent.c: (main):
8226           test for this case
8227           Fixes #123774
8228
8229 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8230
8231         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
8232         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
8233         (gst_queue_release_locks), (gst_queue_change_state),
8234         (gst_queue_set_property):
8235           add proper lock debugging.  Change dispose to finalize, since
8236           we're freeing mutexes and other stuff which should happen only once.
8237
8238 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8239
8240         * docs/gst/tmpl/gstelement.sgml:
8241         * docs/gst/tmpl/gstplugin.sgml:
8242         * docs/gst/tmpl/gsttypes.sgml:
8243         * docs/pwg/building-state.xml:
8244         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
8245         * gst/gstelement.c: (gst_element_change_state):
8246         * gst/gstthread.c: (gst_thread_change_state):
8247           catch wrong state changes in element base class.
8248
8249 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8250
8251         * gst/gstinfo.h:
8252           clean up layout a little.
8253
8254 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8255
8256         * configure.ac:
8257         * testsuite/Makefile.am:
8258         * testsuite/states/Makefile.am:
8259         * testsuite/states/parent.c: (main):
8260           re-enable states testsuite dir.  Add test for state changes and
8261           parent behaviour
8262
8263 2004-07-09  Wim Taymans  <wim@fluendo.com>
8264
8265         * gst/schedulers/gstoptimalscheduler.c:
8266         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
8267         (element_get_reachables_func), (element_get_reachables),
8268         (debug_element), (rechain_group), (group_migrate_connected),
8269         (gst_opt_scheduler_pad_unlink):
8270         Do not try to migrate decoupled elements to a new group since
8271         they are not added to groups.
8272
8273 2004-07-08  Benjamin Otte  <otte@gnome.org>
8274
8275         * gst/gstelement.c: (gst_element_error_func):
8276           make reentrant (= allow removing elements in error handler)
8277
8278 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8279
8280         * gst/gstpad.c: (gst_pad_event_default_dispatch),
8281         (gst_pad_send_event), (gst_pad_call_chain_function):
8282           events sent to elements below PAUSED cannot be handled, so
8283           don't try to
8284
8285 2004-07-08  Wim Taymans  <wim@fluendo.com>
8286
8287         * gst/schedulers/gstoptimalscheduler.c:
8288         (chain_recursively_migrate_group), (create_group),
8289         (schedule_group), (gst_opt_scheduler_pad_link),
8290         (group_elements_set_visited), (element_get_reachables_func),
8291         (element_get_reachables), (group_can_reach_group), (debug_element),
8292         (rechain_group), (group_migrate_connected),
8293         (gst_opt_scheduler_pad_unlink):
8294         * testsuite/schedulers/Makefile.am:
8295         Implemented group splitting and rechaining.
8296         Fixes 143777 and 143777-2 in the testsuite.
8297
8298 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8299
8300         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
8301           extra debugging
8302         * gst/gstevent.h:
8303         * gst/gstinfo.c: (gst_debug_log_default):
8304           print time nicely.  add thread pointer until someone figures out
8305           a completely portable way of getting at thread id's.
8306         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
8307         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
8308         (gst_pad_call_chain_function):
8309           extra debugging
8310         * gst/schedulers/gstoptimalscheduler.c:
8311         (get_group_schedule_function), (loop_group_schedule_function),
8312         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
8313         (pad_clear_queued), (gst_opt_scheduler_iterate):
8314           rename BUFPEN and friends to DATAPEN since that's what they are.
8315
8316 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8317
8318         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
8319         * gst/gstbuffer.h:
8320         * gst/gstpad.c:
8321           cleanups and debugging
8322
8323 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8324
8325         * configure.ac:
8326         * gst/gstvalue.c: (gst_value_compare_enum),
8327         (gst_value_serialize_enum), (gst_value_deserialize_enum),
8328         (gst_value_can_compare), (gst_value_compare):
8329         * testsuite/Makefile.am:
8330         * testsuite/enumcaps/Makefile.am:
8331         * testsuite/enumcaps/enumcaps.c:
8332           Fix enum serialization, deserialization, comparison in caps, add
8333           a test to ensure that this continues working in the future.
8334
8335 2004-07-06  David Schleef  <ds@schleef.org>
8336
8337         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
8338         Fix memleak.
8339
8340 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8341
8342         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
8343         * gst/gstplugin.h:
8344         * gst/registries/gstxmlregistry.c:
8345         (plugin_times_older_than_recurse), (plugin_times_older_than),
8346         (gst_xml_registry_parse_padtemplate):
8347           only rebuild registry when actual plugins have a newer time than
8348           the registry.  Fixes #145520
8349
8350 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8351
8352         * docs/manual/manual.xml:
8353         * docs/manual/win32.xml:
8354           add chapter on win32 building.  fixes #142422
8355
8356 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8357
8358         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
8359
8360         * gst/autoplug/gstspider.c: (gst_spider_init),
8361         (gst_spider_dispose):
8362           fix spider memleaks.  fixes #137863
8363
8364 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8365
8366         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
8367
8368         * gst/schedulers/gstoptimalscheduler.c:
8369         (gst_opt_scheduler_pad_unlink):
8370           fix SIGBUS error, fixes #145338
8371
8372 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8373
8374         * gst/gstobject.c: (gst_object_replace):
8375         * gst/gstscheduler.c: (gst_scheduler_get_clock):
8376         * gst/gstsystemclock.c: (gst_system_clock_obtain):
8377           clean up clock lifecycle.  Fixes #109831
8378
8379 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8380
8381         * po/LINGUAS:
8382         * po/cs.po:
8383           added Czech translation (Miloslav Trmac)
8384
8385 2004-07-04  David Schleef  <ds@schleef.org>
8386
8387         * tools/Makefile.am:
8388         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
8389
8390 2004-07-04  David Schleef  <ds@schleef.org>
8391
8392         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
8393
8394 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8395
8396         * gst/gstbin.c: (gst_bin_restore_thyself):
8397           chain to parent restore so the bins get restored correctly
8398           in the editor
8399
8400 2004-07-03  David Schleef  <ds@schleef.org>
8401
8402         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
8403         Actually do something in these functions, like before the big
8404         caps change.  (bug #145137)
8405
8406 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8407
8408         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
8409         (gst_element_get_compatible_pad_filtered):
8410         * gst/gstthread.c: (gst_thread_main_loop):
8411           more debugging
8412
8413 2004-07-02  David Schleef  <ds@schleef.org>
8414
8415         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
8416         * gst/gstobject.h:
8417         * gst/gstparse.h:
8418         * gst/gsttrace.h:
8419         * gst/gstxml.h:
8420
8421 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8422
8423         * gst/gstpad.c: (gst_pad_check_schedulers),
8424         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
8425         (gst_pad_link_prepare):
8426           revert until testsuite is fixed
8427
8428 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8429
8430         * testsuite/Makefile.am:
8431         * testsuite/caps/filtercaps.c: (main):
8432         * testsuite/clock/clock1.c: (main):
8433         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
8434           fix some more tests
8435
8436 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8437
8438         * testsuite/cleanup/cleanup1.c: (create_pipeline):
8439         * testsuite/cleanup/cleanup2.c: (create_pipeline):
8440         * testsuite/cleanup/cleanup4.c: (main):
8441           fix testsuite
8442
8443 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8444
8445         * libs/gst/control/control.c:
8446         * libs/gst/control/dparam.c:
8447         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
8448         * libs/gst/control/dparammanager.c:
8449         * libs/gst/control/dparammanager.h:
8450         * testsuite/dynparams/Makefile.am:
8451         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
8452         (gst_dptest_change_state), (gst_dptest_chain), (main):
8453           fix testcase for dparams
8454           add debugging category
8455
8456 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8457
8458         * testsuite/Rules:
8459           change path
8460
8461 2004-07-02  Benjamin Otte  <otte@gnome.org>
8462
8463         * tests/.cvsignore:
8464         * tests/Makefile.am:
8465         * tests/mass_elements.c: (gst_get_current_time), (main):
8466           add simple benchmark to test various speeds of fakesrc ! identity !
8467           identity ! ... ! fakesink.
8468           Usage: mass_elements [num_identities] [num_buffers]
8469           If not specified they default to 1000.
8470
8471 2004-07-02  Benjamin Otte  <otte@gnome.org>
8472
8473         * gst/gstpad.c: (gst_pad_check_schedulers),
8474         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
8475         (gst_pad_link_prepare):
8476           check that pads that get linked belong to the same manager. The old
8477           code allowed linking elements before putting them into bins, so it
8478           worked to link them and then put them in different threads, which
8479           lead to weird behaviour.
8480           Since this effectively disallows linking elements before putting
8481           them in a bin, some applications might not work after this and error
8482           out. If these applications are too critical, we might need to revert
8483           that patch. Please test this before the next release...
8484
8485 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8486
8487         * gst/gstpad.c: (gst_pad_get_caps):
8488           throw an error if the getcaps function does not return a subset of
8489           the template caps.
8490         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
8491           make disconts without position info an error in debugging
8492         * tests/spidey_bench.c: (handoff), (main):
8493           don't count first try when averaging
8494
8495 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8496
8497         * gst/gstplugin.c: (gst_plugin_load_file):
8498           figure out problem with dynamic test
8499
8500 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8501
8502         * docs/gst/Makefile.am:
8503           fix docs build
8504
8505 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8506
8507         * po/POTFILES.in:
8508         * po/af.po:
8509         * po/az.po:
8510         * po/en_GB.po:
8511         * po/fr.po:
8512         * po/nl.po:
8513         * po/sr.po:
8514         * po/sv.po:
8515         * po/tr.po:
8516         * po/uk.po:
8517         * tools/gst-register.c: (plugin_added_func), (main):
8518           i18n-ize -register, fix plural
8519
8520 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8521
8522         * gst/elements/gstidentity.c: (gst_identity_class_init),
8523         (gst_identity_init), (gst_identity_chain),
8524         (gst_identity_set_property), (gst_identity_get_property):
8525         * gst/elements/gstidentity.h:
8526           check for perfect stream
8527
8528 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8529
8530         * gst/elements/gstidentity.c: (gst_identity_chain):
8531           print offset_end
8532
8533 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8534
8535         * docs/gst/Makefile.am:
8536         * docs/gst/gstreamer-docs.sgml:
8537           doc fixes
8538
8539 2004-06-24  David Schleef  <ds@schleef.org>
8540
8541         * autogen.sh:  Remove call to env, since the buildbot isn't
8542         broken anymore.
8543
8544 2004-06-24  Wim Taymans  <wim@fluendo.com>
8545
8546         * gst/elements/Makefile.am:
8547         * gst/elements/gstelements.c:
8548         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
8549         (gst_multifdsink_class_init), (gst_multifdsink_init),
8550         (gst_multifdsink_add), (gst_multifdsink_remove),
8551         (gst_multifdsink_clear), (gst_multifdsink_chain),
8552         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
8553         * gst/elements/gstmultifdsink.h:
8554         Added an element that writes to multiple filedescriptors at once.
8555
8556 2004-06-24  Benjamin Otte  <otte@gnome.org>
8557
8558         * gst/parse/grammar.y:
8559           don't try to link elements before they have been added to bins
8560
8561 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8562
8563         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
8564         (gst_file_pad_get_length):
8565         * libs/gst/bytestream/filepad.h:
8566           add 2 new functions
8567
8568 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8569
8570         * docs/gst/gstreamer-sections.txt:
8571         remove from docs, the define that Benjamin removed from gstelement.h
8572
8573 2004-06-22  Benjamin Otte  <otte@gnome.org>
8574
8575         * gst/gstelement.h:
8576           remove define that referenced a nonexisting GstElement struct member
8577
8578 2004-06-20  Benjamin Otte  <otte@gnome.org>
8579
8580         * gst/gstdata.c: (gst_data_is_writable):
8581           whoops, return values were wrong, so writable data was marked as
8582           non-writable and vice versa. (fixes #143953, spotted by Francis
8583           Labonte)
8584           Shows how rarely we need to copy data ;)
8585
8586 2004-06-20  Benjamin Otte  <otte@gnome.org>
8587
8588         * testsuite/schedulers/.cvsignore:
8589         * testsuite/schedulers/Makefile.am:
8590         * testsuite/schedulers/143777-2.c: (main):
8591           add test for opt breakage in bug #143777
8592
8593 2004-06-20  Benjamin Otte  <otte@gnome.org>
8594
8595         * gst/gstpad.c: (gst_pad_call_chain_function):
8596           check for if we were unlinked while inside the chainfunction (fixes
8597           entrygthread having issues with #143777)
8598         * testsuite/schedulers/143777.c: (main):
8599         * testsuite/schedulers/Makefile.am:
8600           add a test for that fix
8601
8602 2004-06-20  Benjamin Otte  <otte@gnome.org>
8603
8604         * gst/gstvalue.c: (gst_value_set_int_range):
8605           test that start is smaller then end
8606         * libs/gst/bytestream/Makefile.am:
8607         * libs/gst/bytestream/filepad.c: 
8608         * libs/gst/bytestream/filepad.h:
8609           add GstFilePad - a pad that behaves like a FILE*
8610         * testsuite/bytestream/.cvsignore:
8611         * testsuite/bytestream/Makefile.am:
8612         * testsuite/bytestream/filepadsink.c: 
8613           test for the GstFilePad
8614
8615 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8616
8617         * gst/elements/gstidentity.c: (gst_identity_class_init),
8618         (gst_identity_init), (gst_identity_set_clock),
8619         (gst_identity_chain), (gst_identity_set_property),
8620         (gst_identity_get_property):
8621         * gst/elements/gstidentity.h:
8622         * gst/gstclock.c: (gst_clock_id_wait):
8623           add a "sync" property to sync to the clock
8624
8625 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8626
8627         * gst/gstelementfactory.c: (gst_element_factory_create):
8628           make the freakin "elementfactory bla has no type" message more
8629           useful. So we actually can do something when someone shows up
8630           complaining about it.
8631
8632 2004-06-15  Johan Dahlin  <johan@gnome.org>
8633
8634         * tools/gst-inspect.c (main): Fallback to plugin if no element is
8635         found. This matches the old behavior better. Thanks to Thomas for
8636         pointing out.
8637
8638 2004-06-14  David Schleef  <ds@schleef.org>
8639
8640         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
8641         -fomit-frame-pointer.  Appears to generate correct code in
8642         other cases as well.
8643
8644 2004-06-14  Johan Dahlin  <johan@gnome.org>
8645
8646         * tools/gst-inspect.c (main): Add two new command line options: -a
8647         to print all elements and -n to print the name on each line. Also
8648         fix some error reporting.
8649         (main): Simplify, remove -n and always print names if -a is specified
8650
8651 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
8652
8653         * win32/gstconfig.h:
8654         * win32/GSTreamer.vcproj:
8655         * win32/Makefile:
8656         * gst/gstconfig.h.in:
8657         * gst/gst.h:
8658         * gst/gstbin.h:
8659         * gst/gstelement.h:
8660         * gst/gstevent.h:
8661         * gst/gstobject.h:
8662         * gst/gstpad.h:
8663         * docs/gst/gstreamer-sections.txt:
8664         * docs/gst/tmpl/gstconfig.sgml:
8665           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
8666
8667 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8668         * docs/gst/gstreamer-sections.txt:
8669         * docs/gst/tmpl/gstconfig.sgml:
8670         Add the GSTREAMER_EXPORT macro to the docs
8671
8672 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8673
8674         * tools/gst-compprep.c: (handle_xmlerror), (main):
8675         Add a check for the version that introduced SetStructuredError to fix
8676         the build on FC1
8677
8678 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8679
8680         * win32/msvc71.sln:
8681         * win32/testsuite/:
8682           prepare to compile the testsuite with MSVC
8683
8684 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8685
8686         * docs/manual/win32.xml:
8687           attempt to transform the Win32 README into an XML doc
8688
8689 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8690
8691         * gst/gst.c:
8692         * gst/gstbin.*:
8693         * gst/config.h.in:
8694         * gst/gstelement.*:
8695         * gst/gstevent.h:
8696         * gst/gstobject.*:
8697         * gst/gstpad.h:
8698         * tools/gst-register.c:
8699         * win32/gstreamer.def:
8700           extern symbols are now exported for the Windows DLL
8701
8702 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8703
8704         * gst/gstinfo.h:
8705           fix a problem to enable/disable DEBUG under MSVC
8706
8707 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8708
8709         * win32/:
8710           enable more debug code in DEBUG build
8711
8712 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8713
8714         * win32/config.h:
8715         * gst/gst-i18n-app.h:
8716           enable NLS under Windows
8717
8718 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
8719         * tools/gst-compprep.c: (handle_xmlerror), (main):
8720           Make an error that baffled me a bit clearer
8721
8722 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8723
8724         * gst/gstqueue.c:
8725           don't use g_queue_get_length () because it's 2.4, use ->length
8726
8727 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
8728
8729         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
8730
8731         * tools/gst-inspect.c: (print_signal_info):
8732           don't free random data twice. (fixes #144185)
8733
8734 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
8735
8736         * gst/gstqueue.c:
8737         * gst/gstqueue.h:
8738           fix removing from the wrong queue on event timeout
8739           fix disposing of the event queue by casting correctly
8740           add mutexes for handling the event queue
8741           someone was sleeping when fixing queue last time around :)
8742
8743 2004-06-10  Johan Dahlin  <johan@gnome.org>
8744
8745         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
8746         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
8747
8748 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8749
8750         * docs/random/gdp:
8751         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
8752         * libs/gst/dataprotocol/dataprotocol.c:
8753         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8754         (gst_dp_buffer_from_header):
8755         * libs/gst/dataprotocol/dataprotocol.h:
8756         * libs/gst/dataprotocol/dp-private.h:
8757           rev version to 0.1, add buffer flags and copy them
8758
8759 2004-06-09  Johan Dahlin  <johan@gnome.org>
8760
8761         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
8762         the flags from the buffer we're copying.
8763
8764 2004-06-09  Wim Taymans  <wim@fluendo.com>
8765
8766         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
8767         * gst/elements/gstidentity.c: (gst_identity_init),
8768         (gst_identity_chain):
8769         Print more buffer info in fakesink.
8770         Make identity output similar to fakesink.
8771
8772 2004-06-07  Daniel Gazard  <dany42@free.fr>
8773
8774         reviewed by Benjamin Otte  <otte@gnome.org>
8775
8776         * configure.ac:
8777           fix cross compiling not working. (fixes #143741)
8778
8779 2004-06-07  Benjamin Otte  <otte@gnome.org>
8780
8781         * gst/gstelement.c: (gst_element_set_time_delay):
8782           add failure check
8783         * gst/gstinfo.h:
8784           put brackets around macro arguments of GST_TIME_ARGS, add note to
8785           move it to correct header in 0.9
8786
8787 2004-06-07  Benjamin Otte  <otte@gnome.org>
8788
8789         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
8790         (gst_file_index_load), (_file_index_id_save_entries),
8791         (gst_file_index_commit), (gst_file_index_add_association),
8792         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
8793         (gst_file_index_plugin_init):
8794           make debugging use a default category
8795
8796 2004-06-06  David Moore  <dcm@acm.org>
8797
8798         reviewed by Benjamin Otte  <otte@gnome.org>
8799
8800         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
8801         (gst_fdsrc_change_state):
8802           reset offset counter when going READY => PAUSED. (fixes #142903)
8803
8804 2004-06-06  ed@catmur.co.uk
8805
8806         reviewed by Benjamin Otte  <otte@gnome.org>
8807
8808         * gst/registries/gstxmlregistry.c:
8809         (gst_xml_registry_rebuild_recurse):
8810           don't rely on g_dir_open to figure out if a file is a directory, use
8811           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
8812           directories. (fixes #142850)
8813
8814 2004-06-06  Benjamin Otte  <otte@gnome.org>
8815
8816         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
8817           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
8818         * libs/gst/bytestream/adapter.c:
8819         * libs/gst/bytestream/adapter.h:
8820           fix copyright in header and typo in debugging category name
8821
8822 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8823
8824         * configure.ac:
8825           bump nano to cvs
8826
8827 === release 0.8.3 ===
8828
8829 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8830
8831         * configure.ac:
8832           update libtool versioning
8833           do a new release
8834         * docs/gst/tmpl/gstelement.sgml:
8835         * docs/gst/tmpl/gsttypes.sgml:
8836         * gst/gstinfo.c: (_gst_debug_init):
8837           put back GST_CAT_DATAFLOW to fix API breakage
8838
8839 2004-06-04  David Schleef  <ds@schleef.org>
8840
8841         * autogen.sh: Add a temporary 'env' to test buildbot problems.
8842
8843 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8844
8845         * configure.ac:
8846           bump nano to cvs
8847
8848 === release 0.8.2 ===
8849
8850 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8851
8852         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
8853           check GST_DEBUG environment variable which is parsed the same way
8854           as --gst-debug=
8855
8856 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8857
8858         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
8859                             gstmd5sink.c gstshaper.c gsttee.c
8860                             gsttypefindelement.c
8861         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
8862
8863           - removing trailing commas at end of enums
8864             it is correct C99 code but C90 compilers would complain
8865             (AIX, Forte, ...)
8866             ('should' fix #143290, at least partially)
8867
8868 2004-05-27  Wim Taymans  <wim@fluendo.com>
8869
8870         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
8871         (chain_group_set_enabled), (create_group), (add_to_group),
8872         (merge_groups), (setup_group_scheduler), (group_elements),
8873         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
8874         Don't try to follow the pad connections with other groups
8875         when a loop based element is added to the scheduler because
8876         the bin will inform the scheduler about the pad links a little
8877         later.
8878
8879 2004-05-27  Wim Taymans  <wim@fluendo.com>
8880
8881         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8882         (remove_from_chain), (chain_group_set_enabled),
8883         (setup_group_scheduler), (group_element_set_enabled),
8884         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
8885         (gst_opt_scheduler_show):
8886         Elements without a group can do a state change as well, just wait
8887         with the setup of the scheduling function when it is added to a
8888         chain.
8889
8890 2004-05-27  Wim Taymans  <wim@fluendo.com>
8891
8892         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8893         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
8894         (merge_groups), (setup_group_scheduler),
8895         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
8896         (gst_opt_scheduler_show):
8897         Fixes to maintain internal consistency of the scheduler data
8898         structures. 
8899          - adding an enabled group to a chain should increment the
8900            number of enabled elements in that chain.
8901          - removing an enabled group from a chain could disable the
8902            chain.
8903          - removing a disabled group from a chain could enable the
8904            chain.
8905          - add g_assert when internal inconsistency is detected.
8906          - adding an element to a group could increase the number of
8907            links this group has with other groups.
8908          - merging two groups also merges the chains.
8909          - also show group links in the _show method.
8910            
8911
8912 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8913
8914         * gst/gstcaps.c: (gst_caps_structure_simplify):
8915           don't print error messages when there is no error
8916         * gst/gstvalue.c: (gst_value_compare_int_range):
8917           compare the second value, too
8918         * testsuite/caps/Makefile.am:
8919         * testsuite/caps/random.c: (assert_on_error), (main):
8920           add tests to make sure the two things above are checked for
8921
8922 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8923
8924         * configure.ac:
8925         * libs/gst/dataprotocol/Makefile.am:
8926         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
8927         * libs/gst/dataprotocol/dataprotocol.h:
8928           wrap header in GST_ENABLE_NEW.  make code use it
8929
8930 2004-05-23  Johan Dahlin  <johan@gnome.org>
8931
8932         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
8933         so verbose and print GstElement signal names all the time.
8934
8935 2004-05-22  David Schleef  <ds@schleef.org>
8936
8937         * gst/registries/gstxmlregistry.c:
8938         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
8939         (bug #142957)
8940
8941 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
8942
8943         * configure.ac:
8944           scrub cflags for glib2 so gcc doesn't complain when glib is in
8945           /usr/local
8946
8947 2004-05-21  Johan Dahlin  <johan@gnome.org>
8948
8949         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
8950         __GNUC__, patch from Brian Cameron, fixes bug #142804
8951
8952 2004-05-20  David Schleef  <ds@schleef.org>
8953
8954         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
8955         comparison code.  (bug #142819)
8956
8957 2004-05-20  Wim Taymans  <wim@fluendo.com>
8958
8959         * gst/gstbuffer.c: (gst_buffer_default_copy):
8960         * gst/gstbuffer.h:
8961         Added Comment to a flag.
8962         copy relevant flags in _buffer_copy.
8963
8964 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8965
8966         reviewed by: Wim Taymans <wim at fluendo dot com>
8967
8968         * gst/gstbuffer.h:
8969           add GST_BUFFER_IN_CAPS buffer flag
8970         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8971         (gst_structure_parse_any_list), (gst_structure_parse_list),
8972         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
8973         * gst/gstvalue.c: (gst_value_serialize_any_list),
8974         (gst_value_transform_any_list_string),
8975         (gst_value_list_prepend_value), (gst_value_list_append_value),
8976         (gst_value_list_get_size), (gst_value_list_get_value),
8977         (gst_value_transform_list_string),
8978         (gst_value_transform_fixed_list_string),
8979         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
8980         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
8981         (_gst_value_initialize):
8982         * gst/gstvalue.h:
8983           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
8984           < , > as a format.
8985         * testsuite/caps/string-conversions.c: (main):
8986           add regression tests for < >
8987
8988 2004-05-20  Johan Dahlin  <johan@gnome.org>
8989
8990         * docs/gst/Makefile.am (all-local): Re-add
8991
8992 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8993
8994         * docs/gst/Makefile.am:
8995         * docs/gst/gstreamer-docs.sgml:
8996         * docs/libs/Makefile.am:
8997         * docs/libs/gstreamer-libs-docs.sgml:
8998           fix distcheck issues
8999
9000 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9001
9002         * libs/gst/dataprotocol/Makefile.am:
9003           add to autotest
9004
9005 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9006
9007         * libs/gst/dataprotocol/Makefile.am:
9008         * libs/gst/dataprotocol/dataprotocol.c:
9009         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
9010         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
9011         * libs/gst/dataprotocol/dp-private.h:
9012           use GST macros to read/write fixed length ints
9013           add some more asserts
9014
9015 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9016
9017         * docs/libs/gstreamer-libs-docs.sgml:
9018         * docs/libs/gstreamer-libs-sections.txt:
9019           remove idct and putbits
9020         * configure.ac:
9021         * docs/libs/tmpl/gstdataprotocol.sgml:
9022         * libs/gst/Makefile.am:
9023         * libs/gst/dataprotocol/Makefile.am:
9024         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
9025         (buffer_test), (caps_test), (event_test), (main):
9026         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
9027         (gst_dp_dump_byte_array), (gst_dp_init),
9028         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
9029         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
9030         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
9031         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
9032         (gst_dp_validate_header), (gst_dp_validate_payload),
9033         (gst_dp_validate_packet), (plugin_init):
9034         * libs/gst/dataprotocol/dataprotocol.h:
9035         * libs/gst/dataprotocol/dp-private.h:
9036           add dataprotocol
9037
9038 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9039
9040         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
9041           fix int variable deserialization and add a helper so we can actually
9042           debug this.
9043
9044 2004-05-18  David Schleef  <ds@schleef.org>
9045
9046         * testsuite/debug/commandline.c: (main): Call ./commandline, not
9047           argv[0].  Calling yourself is probably not the best way to
9048           construct a test like this, btw.
9049
9050 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9051
9052         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
9053           don't claim to be more intelligent than a scheduler when the
9054           scheduler claims the pipeline is stopped
9055         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
9056         (safe_cothread_destroy),
9057         (gst_entry_scheduler_remove_all_cothreads),
9058         (gst_entry_scheduler_reset), (_remove_cothread),
9059         (gst_entry_scheduler_state_transition):
9060           hold off cothread destruction if we're not in main cothread
9061         * configure.ac:
9062         * testsuite/Makefile.am:
9063           add new test dir
9064         * testsuite/schedulers/.cvsignore:
9065         * testsuite/schedulers/Makefile.am:
9066           add tests
9067         * testsuite/schedulers/relink.c: (cb_handoff), (main):
9068           check relinking and adding/removing elements from a running pipeline
9069         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
9070           check unlinking in a running pipeline
9071         * testsuite/schedulers/unref.c: (cb_handoff), (main):
9072           check unreffing a running pipeline
9073         * testsuite/schedulers/useless_iteration.c: (main):
9074           check iterating a pipeline that contains running threads works
9075
9076 2004-05-18  David Schleef  <ds@schleef.org>
9077
9078         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
9079           is false.
9080
9081 2004-05-18  Wim Taymans  <wim@fluendo.com>
9082
9083         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
9084         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
9085         Fixed an error introduced with patch for 1.63. When setting
9086         a get based element as the entry point in a group, make sure
9087         to mark the group as GET based.
9088
9089 2004-05-18  Wim Taymans  <wim@fluendo.com>
9090
9091         * gst/schedulers/gstoptimalscheduler.c: (create_group),
9092         (setup_group_scheduler), (loop_group_schedule_function),
9093         (gst_opt_scheduler_pad_link):
9094         Added some more debug info and fixed a bug where the group
9095         type was set to LOOP but it was in fact unknown.
9096
9097 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9098
9099         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
9100           make resetting scheduler work twice in a row
9101
9102 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9103
9104         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
9105         (CREATE_USERIALIZATION), (_gst_value_initialize),
9106         (gst_value_compare_float), (gst_value_serialize_float),
9107         (gst_value_deserialize_float), (gst_value_compare_enum),
9108         (gst_value_serialize_enum), (gst_value_deserialize_enum):
9109           add serialization and comparison functions for long, int64, enum and
9110           float values
9111         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
9112           use best serialization function in type hierarchy instead of only a
9113           matching one. This is required for enums to work.
9114         * gst/parse/grammar.y:
9115           use gst_caps_deserialize
9116         * testsuite/parse/Makefile.am:
9117           parse1 now works
9118         * testsuite/parse/parse1.c: (main):
9119           remove aggregator check, aggregator is broken, this test works now
9120           but fails because of bug #138012
9121         * testsuite/parse/parse2.c: (main):
9122           s/xvideosink/xvimagesink - this test looks a lot like we should
9123           disable it
9124
9125 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9126
9127         * gst/gstelement.c: (gst_element_class_init):
9128           whoops, store the signal id correctly
9129         * gst/schedulers/gstbasicscheduler.c:
9130         (gst_basic_scheduler_chain_wrapper):
9131           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
9132           chain function isn't linked
9133
9134 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
9135         * configure.ac:
9136         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
9137         support until we decide where the flags should be used
9138         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
9139         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
9140         * gst/gstpad.c: (gst_pad_link_call_link_functions):
9141         Output refused caps in the debug info
9142
9143 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9144
9145         * gst/elements/gstidentity.c: (gst_identity_chain):
9146           add duration debug
9147         * gst/gstinfo.c: (gst_debug_log_default):
9148           add timestamp
9149
9150 2004-05-13  Benjamin Otte  <otte@gnome.org>
9151
9152         * gst/gstpipeline.c: (gst_pipeline_dispose),
9153         (gst_pipeline_change_state):
9154           call gst_scheduler_reset on dispose (fixes #141416)
9155
9156 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9157
9158         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
9159           compute mapsize correctly
9160         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
9161           use correct datatypes when calling a varargs function
9162         * gst/elements/gsttypefindelement.c: (stop_typefinding):
9163           push a DISCONT event as first thing
9164         * gst/gst_private.h:
9165         * gst/gstinfo.c: (_gst_debug_init):
9166           remove GST_DATAFLOW debugging category
9167         * gst/gstbin.c: (gst_bin_iterate):
9168           use GST_SCHEDULING category
9169         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
9170         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
9171         (gst_pad_call_get_function):
9172           add GST_DATAFLOW to easily track flow of buffers or events.
9173         * gst/gstqueue.c: (gst_queue_get_type),
9174         (gst_queue_handle_pending_events), (gst_queue_chain),
9175         (gst_queue_get), (gst_queue_handle_src_event):
9176           use own static debugging category GST_DATAFLOW for dataflow,
9177           use DEBUG category for showing which path events go, use LOG
9178           category for buffers.
9179
9180 2004-05-10  David Schleef  <ds@schleef.org>
9181
9182         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
9183
9184 2004-05-10  David Schleef  <ds@schleef.org>
9185
9186         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
9187         symbols, because otherwise we don't know what they are.  Thanks,
9188         the GStreamer team.
9189         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
9190
9191 2004-05-10  David Schleef  <ds@schleef.org>
9192
9193         (from Steve Lhomme)
9194         * win32/Makefile: When using make clean the MS Visual Studio makefiles
9195         are deleted.  Fix.
9196         * win32/Makefile.inspect:
9197         * win32/Makefile.launch:
9198         * win32/Makefile.register:
9199
9200 2004-05-10  David Schleef  <ds@schleef.org>
9201
9202         * gst/gstinfo.h: Add missing inline function.
9203         * gst/gsttrace.c: add include
9204         * gst/parse/grammar.y: remove unused code
9205         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
9206         more portable.
9207         * tools/gst-register.c: wrap unistd.h
9208         
9209         More additions/fixes from Steve for the MSVC build.
9210         * win32/GStreamer.vcproj:
9211         * win32/Makefile:
9212         * win32/Makefile.inspect:
9213         * win32/Makefile.launch:
9214         * win32/Makefile.register:
9215         * win32/README.txt:
9216         * win32/gst-inspect.vcproj:
9217         * win32/gst-launch.vcproj:
9218         * win32/gst-register.vcproj:
9219         * win32/gstbytestream.def:
9220         * win32/gstbytestream.vcproj:
9221         * win32/gstconfig.h:
9222         * win32/gstelements.def:
9223         * win32/gstelements.vcproj:
9224         * win32/gstenumtypes.c:
9225         * win32/gstenumtypes.h:
9226         * win32/gstoptimalscheduler.def:
9227         * win32/gstoptimalscheduler.vcproj:
9228         * win32/gstreamer.def:
9229         * win32/gstspider.def:
9230         * win32/gstspider.vcproj:
9231         * win32/gstversion.h:
9232         * win32/msvc71.sln:
9233
9234 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9235
9236         * gst/gstelement.c: (gst_element_class_init),
9237         (gst_element_no_more_pads):
9238         * gst/gstelement.h:
9239           add gst_element_no_more_pads and the "no-more-pads" signal
9240
9241 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9242
9243         * gst/gstregistry.c: (gst_registry_add_plugin):
9244           refuse to add plugins when a plugin with same name is already
9245           registered. Fixes a bunch of "How to remove plugins?" issues.
9246           May lead to other problems though, let's test
9247
9248 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9249
9250         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
9251         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
9252         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
9253
9254 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9255
9256         * tests/Makefile.am: fix am16 issue
9257
9258 2004-05-09  Benjamin Otte  <otte@gnome.org>
9259
9260         * libs/gst/bytestream/Makefile.am:
9261           we should indeed add .c files to makefiles or they won't be built
9262           (d'oh)
9263
9264 2004-05-08  Benjamin Otte  <otte@gnome.org>
9265
9266         * gst/gstpad.c: (gst_pad_proxy_fixate):
9267           really reduce the set of caps
9268
9269 2004-05-08  Benjamin Otte  <otte@gnome.org>
9270
9271         * tests/Makefile.am:
9272         * tests/spidey_bench.c: (handoff), (main):
9273           add benchmark to test how long spider needs to create a pipeline
9274
9275 2004-05-08  Benjamin Otte  <otte@gnome.org>
9276
9277         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
9278           mark links as unengaged when unnegotiating instead of deactivating.
9279           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
9280
9281 2004-05-08  Benjamin Otte  <otte@gnome.org>
9282
9283         * docs/manual/helloworld.xml:
9284           s/audiosink/osssink (patch by Patrick Guimond)
9285
9286 2004-05-07  David Schleef  <ds@schleef.org>
9287
9288         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
9289         since it contains important stuff.
9290
9291 2004-05-07  David Schleef  <ds@schleef.org>
9292
9293         * testsuite/caps/caps.c: (test3), (main): A check for appending
9294         ANY caps.
9295
9296 2004-05-07  David Schleef  <ds@schleef.org>
9297
9298         * common/m4/as-compiler-flag.m4: Properly quote arguments,
9299         which may contain commas.  Fixes detection of -Wa,-mregnames
9300
9301 2004-05-06  David Schleef  <ds@schleef.org>
9302
9303         Changes to handle compilers that don't have variadic macro
9304         support.  In particular, glib headers define some inlines
9305         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
9306         builds.
9307         * gst/Makefile.am:
9308         * gst/cothreads.c:
9309         * gst/elements/gstfdsink.c:
9310         * gst/elements/gstfdsrc.c:
9311         * gst/elements/gstfilesink.c:
9312         * gst/elements/gstfilesrc.c:
9313         * gst/gst_private.h:
9314         * gst/gstatomic.c:
9315         * gst/gstcaps.c: (gst_caps_append):
9316         * gst/gstcpu.c: (gst_cpuid_i386):
9317         * gst/gstelement.c:
9318         * gst/gsterror.c:
9319         * gst/gstfilter.c:
9320         * gst/gstinfo.h:
9321         * gst/gstprobe.c:
9322         * gst/gstquery.c:
9323         * gst/gstregistry.c:
9324         * gst/gststructure.c:
9325         * gst/gsttaginterface.c:
9326         * gst/gsttrace.c: (gst_trace_new):
9327         * gst/gsttrashstack.c:
9328         * gst/gsturi.c:
9329         * gst/gstvalue.c:
9330         * gst/parse/grammar.y:
9331         * gst/parse/parse.l:
9332         * tools/gst-inspect.c: (main):
9333         * tools/gst-launch.c: (main):
9334         * tools/gst-xmlinspect.c: (PUT_STRING):
9335
9336 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9337
9338         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9339         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9340         * gst/elements/gstfilesrc.h:
9341           send NEW_MEDIA events correctly
9342         * gst/elements/gsttypefindelement.c: (start_typefinding),
9343         (gst_type_find_element_handle_event):
9344           restart typefinding when we get a NEW_MEDIA event
9345         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
9346         (gst_bin_dispose):
9347           don't die when someone removes elements in callbacks
9348         * gst/gstelement.c: (gst_element_change_state):
9349           improve debugging
9350         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
9351           we need a NEW_MEDIA event to engage a link
9352         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
9353           don't g_print debugging stuff
9354         * testsuite/caps/simplify.c: (check_caps):
9355
9356 2004-05-04  Benjamin Otte  <otte@gnome.org>
9357
9358         * gst/parse/grammar.y:
9359           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
9360
9361 2004-05-04  Benjamin Otte  <otte@gnome.org>
9362
9363         * testsuite/caps/renegotiate.c: (main):
9364           improve output in error case
9365
9366 2004-05-04  Benjamin Otte  <otte@gnome.org>
9367
9368         * gst/parse/grammar.y:
9369           fix assert to not trigger when there's no error argument
9370         * gst/parse/parse.l:
9371           fix definition of caps to allow more than two structures
9372         * testsuite/caps/Makefile.am:
9373         * testsuite/caps/renegotiate.c: (main):
9374           it's sinesrc and works in that case
9375
9376 2004-05-04  Wim Taymans  <wim@fluendo.com>
9377
9378         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
9379         (group_dec_link), (gst_opt_scheduler_pad_unlink):
9380         when removing an element from a group, we always need to
9381         decrement the link count that this group had with other 
9382         groups through the element.
9383         added an extra assert to catch inconsistencies when decrementing
9384         the link count.
9385
9386 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9387
9388         * configure.ac:
9389         * docs/gst/Makefile.am:
9390         * docs/gst/gstreamer-sections.txt:
9391         * docs/gst/tmpl/gstcompat.sgml:
9392         * examples/appreader/Makefile.am:
9393         * examples/cutter/Makefile.am:
9394         * examples/events/Makefile.am:
9395         * examples/helloworld/Makefile.am:
9396         * examples/helloworld2/Makefile.am:
9397         * examples/launch/Makefile.am:
9398         * examples/manual/Makefile.am:
9399         * examples/mixer/Makefile.am:
9400         * examples/pingpong/Makefile.am:
9401         * examples/plugins/Makefile.am:
9402         * examples/queue/Makefile.am:
9403         * examples/queue2/Makefile.am:
9404         * examples/queue3/Makefile.am:
9405         * examples/queue4/Makefile.am:
9406         * examples/retag/Makefile.am:
9407         * examples/thread/Makefile.am:
9408         * examples/typefind/Makefile.am:
9409         * examples/xml/Makefile.am:
9410         * gst/Makefile.am:
9411         * gst/autoplug/Makefile.am:
9412         * gst/elements/Makefile.am:
9413         * gst/gstcompat.h:
9414         * gst/indexers/Makefile.am:
9415         * gst/parse/Makefile.am:
9416         * gst/registries/Makefile.am:
9417         * gst/schedulers/Makefile.am:
9418         * libs/gst/bytestream/Makefile.am:
9419         * libs/gst/control/Makefile.am:
9420         * libs/gst/getbits/Makefile.am:
9421         * po/af.po:
9422         * po/az.po:
9423         * po/en_GB.po:
9424         * po/fr.po:
9425         * po/nl.po:
9426         * po/sr.po:
9427         * po/sv.po:
9428         * po/tr.po:
9429         * po/uk.po:
9430         * tests/Makefile.am:
9431         * tests/bufspeed/Makefile.am:
9432         * tests/instantiate/Makefile.am:
9433         * tests/memchunk/Makefile.am:
9434         * tests/muxing/Makefile.am:
9435         * tests/negotiation/Makefile.am:
9436         * tests/probes/Makefile.am:
9437         * tests/sched/Makefile.am:
9438         * tests/seeking/Makefile.am:
9439         * tests/threadstate/Makefile.am:
9440         * testsuite/caps/Makefile.am:
9441         * testsuite/cleanup/Makefile.am:
9442         * testsuite/dlopen/Makefile.am:
9443         * testsuite/dynparams/Makefile.am:
9444         * testsuite/plugin/Makefile.am:
9445         * testsuite/states/Makefile.am:
9446         * tools/Makefile.am:
9447           reorganize compile/link flags to be consistent
9448           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
9449
9450 2004-05-04  David Schleef  <ds@schleef.org>
9451
9452         The "once more, with feeling" check-in.
9453         * testsuite/caps/Makefile.am: dist caps_strings
9454         * testsuite/caps/renegotiate.c: (main): This test triggers a
9455           segfault in the core.  Marking as failing.
9456
9457 2004-05-03  David Schleef  <ds@schleef.org>
9458
9459         * testsuite/caps/deserialize.c: (main): Fix problems noticed
9460           by the build bots.
9461         * testsuite/caps/renegotiate.c: (main): Same.
9462
9463 2004-05-03  David Schleef  <ds@schleef.org>
9464
9465         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
9466
9467 2004-05-03  David Schleef  <ds@schleef.org>
9468
9469         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
9470           variable to find our source file.
9471
9472 2004-05-03  David Schleef  <ds@schleef.org>
9473
9474         * configure.ac:  Link plugins with libgstreamer and dependent
9475           libraries
9476         * testsuite/caps/Makefile.am:
9477         * testsuite/caps/caps_strings:
9478         * testsuite/caps/deserialize.c: (main): Add a little test to slog
9479           through a file of caps strings and test each one
9480
9481 2004-05-04  Benjamin Otte  <otte@gnome.org>
9482
9483         * libs/gst/bytestream/Makefile.am:
9484         * libs/gst/bytestream/adapter.c: 
9485         * libs/gst/bytestream/adapter.h:
9486           add GstAdapter, similar to bytestream, but doesn't require ugly event
9487           handling or uglier loopbased elements
9488
9489 2004-05-03  David Schleef  <ds@schleef.org>
9490
9491         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
9492         * testsuite/caps/erathostenes.c:
9493         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
9494
9495 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9496
9497         * docs/pwg/pwg.xml:
9498           remove hardcoded stylesheet path (duh)
9499         * docs/random/release:
9500         * docs/gst/gstreamer-sections.txt:
9501         * gst/Makefile.am:
9502         * gst/gst.h:
9503         * gst/gst_private.h:
9504         * gst/gstcaps.c:
9505         * gst/gstevent.c:
9506         * gst/gstformat.c:
9507         * gst/gstinfo.c:
9508         * gst/gstinfo.h:
9509         * gst/gstinterface.c:
9510         * gst/gstmemchunk.c:
9511         * gst/gstprobe.c:
9512         * gst/gstquery.c:
9513         * gst/gstregistry.c:
9514         * gst/gstregistrypool.c:
9515         * gst/gststructure.c:
9516         * gst/gsttaginterface.c:
9517         * gst/gstthread.c:
9518         * gst/gsttrace.c:
9519         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
9520         * gst/gsturi.c:
9521         * gst/gstvalue.c:
9522           deprecate gst_info; remove gstlog.h
9523    
9524
9525 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9526
9527         * Makefile.am:
9528         * po/en_GB.po:
9529         * po/sv.po:
9530         * po/uk.po:
9531           updated translations
9532
9533 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9534
9535         * gst/gstbin.c: (gst_bin_dispose):
9536           better debugging
9537
9538 2004-05-03  Johan Dahlin  <johan@gnome.org>
9539
9540         * gst/schedulers/gstoptimalscheduler.c
9541         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
9542         really is a GstElement. Avoids critical when running gst-launch -v
9543         and a oggdemux/decoding pipeline.
9544
9545 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9546
9547         * docs/gst/tmpl/gstpipeline.sgml :
9548         * docs/manual/elements-api.xml :
9549                 doc fix by Patrick Guimond (Protector) from devel ML
9550                 reviewed by ronald
9551
9552 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9553
9554         * docs/gst/Makefile.am :
9555         * docs/libs/Makefile.am :
9556                 apply a patch from Arwed v. Merkatz so that gtk-doc
9557                 generated docs install (same for .devhelp file)
9558                 (fixes part 1 of #138836)
9559
9560 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9561
9562         * docs/faq/dependencies.xml: typo
9563         * docs/faq/getting.xml :
9564             - fix download URL for new gstreamer site
9565             - hide sf.net download page as latest version aren't there
9566             - fix apt URLs
9567             - fill "get via CVS" paragraph (link to dev page on the site)
9568         * docs/faq/general.xml:
9569             hide status tables as they no more exists
9570             change case on plugins license file to reflect reality
9571         * docs/faq/troubleshooting.xml:
9572             remove the wiki question/answer as there is no more wiki
9573
9574 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9575
9576         * gst/gsterror.h:
9577           include the headers needed for declarations used in this header
9578
9579 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9580
9581         * docs/random/uraeus/gstreamer_and_midi.txt :
9582           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
9583           (fixes #132288)
9584
9585 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
9586
9587         reviewed by Benjamin Otte  <otte@gnome.org>
9588
9589         * gst/schedulers/gthread-cothreads.h:
9590           free allocated data for main cothread, too when destroying context
9591           (fixes #141417)
9592
9593 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9594
9595         * docs/manual/goals.xml : remove duplicated paragraph at end 
9596         of doc page (fixes #141448)
9597
9598 2004-04-29  David Schleef  <ds@schleef.org>
9599
9600         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
9601         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
9602
9603 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9604
9605         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
9606           fix property
9607         * gst/gstcaps.c:
9608           fix doc string
9609         * po/POTFILES.in:
9610           rename typefind source file
9611
9612 2004-04-28  David Schleef  <ds@schleef.org>
9613
9614         Several new files from Steve Lhomme's MSVC patch (bug #141317):
9615         * win32/GStreamer.vcproj:
9616         * win32/Makefile:
9617         * win32/config.h:
9618         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
9619         (_trewinddir), (_ttelldir), (_tseekdir):
9620         * win32/dirent.h:
9621         * win32/gst-inspect.vcproj:
9622         * win32/gst-launch.vcproj:
9623         * win32/gst-register.vcproj:
9624         * win32/gstbytestream.vcproj:
9625         * win32/gstelements.vcproj:
9626         * win32/gstoptimalscheduler.vcproj:
9627         * win32/gstspider.vcproj:
9628         * win32/gtchar.h:
9629         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
9630         * win32/mman.h:
9631         * win32/mman.inl:
9632         * win32/msvc71.sln:
9633
9634 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9635
9636         * gst/gst.c: (init_post):
9637         * gst/gstinfo.c:
9638           remove useless _gst_progname stuff
9639         * tools/gst-inspect.c: (print_field), (print_caps):
9640           improve caps output
9641
9642 2004-04-28  David Schleef  <ds@schleef.org>
9643
9644         Disable parsing of a lot of files that aren't part of the
9645         exported API.  Move corresponding template files to old/,
9646         waiting for removal when they don't contain anything
9647         interesting.
9648         * docs/gst/Makefile.am:
9649         * docs/gst/gstreamer-sections.txt:
9650         * docs/gst/tmpl/cothreads.sgml:
9651         * docs/gst/tmpl/cothreads_compat.sgml:
9652         * docs/gst/tmpl/gettext.sgml:
9653         * docs/gst/tmpl/gobject2gtk.sgml:
9654         * docs/gst/tmpl/grammar.tab.sgml:
9655         * docs/gst/tmpl/gst-i18n-app.sgml:
9656         * docs/gst/tmpl/gst-i18n-lib.sgml:
9657         * docs/gst/tmpl/gst_private.sgml:
9658         * docs/gst/tmpl/gstaggregator.sgml:
9659         * docs/gst/tmpl/gstarch.sgml:
9660         * docs/gst/tmpl/gstatomic_impl.sgml:
9661         * docs/gst/tmpl/gstbufferstore.sgml:
9662         * docs/gst/tmpl/gstdata_private.sgml:
9663         * docs/gst/tmpl/gstdisksink.sgml:
9664         * docs/gst/tmpl/gstdisksrc.sgml:
9665         * docs/gst/tmpl/gstelementfactory.sgml:
9666         * docs/gst/tmpl/gstextratypes.sgml:
9667         * docs/gst/tmpl/gstfakesink.sgml:
9668         * docs/gst/tmpl/gstfakesrc.sgml:
9669         * docs/gst/tmpl/gstfdsink.sgml:
9670         * docs/gst/tmpl/gstfdsrc.sgml:
9671         * docs/gst/tmpl/gstfilesink.sgml:
9672         * docs/gst/tmpl/gstfilesrc.sgml:
9673         * docs/gst/tmpl/gsthttpsrc.sgml:
9674         * docs/gst/tmpl/gstidentity.sgml:
9675         * docs/gst/tmpl/gstindexfactory.sgml:
9676         * docs/gst/tmpl/gstmarshal.sgml:
9677         * docs/gst/tmpl/gstmd5sink.sgml:
9678         * docs/gst/tmpl/gstmultidisksrc.sgml:
9679         * docs/gst/tmpl/gstmultifilesrc.sgml:
9680         * docs/gst/tmpl/gstpadtemplate.sgml:
9681         * docs/gst/tmpl/gstpipefilter.sgml:
9682         * docs/gst/tmpl/gstschedulerfactory.sgml:
9683         * docs/gst/tmpl/gstsearchfuncs.sgml:
9684         * docs/gst/tmpl/gstshaper.sgml:
9685         * docs/gst/tmpl/gstspider.sgml:
9686         * docs/gst/tmpl/gstspideridentity.sgml:
9687         * docs/gst/tmpl/gststatistics.sgml:
9688         * docs/gst/tmpl/gsttee.sgml:
9689         * docs/gst/tmpl/gsttimecache.sgml:
9690         * docs/gst/tmpl/gsttypefind.sgml:
9691         * docs/gst/tmpl/gsttypefindfactory.sgml:
9692         * docs/gst/tmpl/gstxmlregistry.sgml:
9693         * docs/gst/tmpl/gthread-cothreads.sgml:
9694         * docs/gst/tmpl/old/cothreads.sgml:
9695         * docs/gst/tmpl/old/cothreads_compat.sgml:
9696         * docs/gst/tmpl/old/gettext.sgml:
9697         * docs/gst/tmpl/old/gobject2gtk.sgml:
9698         * docs/gst/tmpl/old/grammar.tab.sgml:
9699         * docs/gst/tmpl/old/gst-i18n-app.sgml:
9700         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
9701         * docs/gst/tmpl/old/gst_private.sgml:
9702         * docs/gst/tmpl/old/gstaggregator.sgml:
9703         * docs/gst/tmpl/old/gstarch.sgml:
9704         * docs/gst/tmpl/old/gstatomic_impl.sgml:
9705         * docs/gst/tmpl/old/gstbufferstore.sgml:
9706         * docs/gst/tmpl/old/gstdata_private.sgml:
9707         * docs/gst/tmpl/old/gstdisksink.sgml:
9708         * docs/gst/tmpl/old/gstdisksrc.sgml:
9709         * docs/gst/tmpl/old/gstelementfactory.sgml:
9710         * docs/gst/tmpl/old/gstextratypes.sgml:
9711         * docs/gst/tmpl/old/gstfakesink.sgml:
9712         * docs/gst/tmpl/old/gstfakesrc.sgml:
9713         * docs/gst/tmpl/old/gstfdsink.sgml:
9714         * docs/gst/tmpl/old/gstfdsrc.sgml:
9715         * docs/gst/tmpl/old/gstfilesink.sgml:
9716         * docs/gst/tmpl/old/gstfilesrc.sgml:
9717         * docs/gst/tmpl/old/gsthttpsrc.sgml:
9718         * docs/gst/tmpl/old/gstidentity.sgml:
9719         * docs/gst/tmpl/old/gstindexfactory.sgml:
9720         * docs/gst/tmpl/old/gstmarshal.sgml:
9721         * docs/gst/tmpl/old/gstmd5sink.sgml:
9722         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
9723         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
9724         * docs/gst/tmpl/old/gstpadtemplate.sgml:
9725         * docs/gst/tmpl/old/gstpipefilter.sgml:
9726         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
9727         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
9728         * docs/gst/tmpl/old/gstshaper.sgml:
9729         * docs/gst/tmpl/old/gstspider.sgml:
9730         * docs/gst/tmpl/old/gstspideridentity.sgml:
9731         * docs/gst/tmpl/old/gststatistics.sgml:
9732         * docs/gst/tmpl/old/gsttee.sgml:
9733         * docs/gst/tmpl/old/gsttimecache.sgml:
9734         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
9735         * docs/gst/tmpl/old/gstxmlregistry.sgml:
9736         * docs/gst/tmpl/old/gthread-cothreads.sgml:
9737         * docs/gst/tmpl/old/types.sgml:
9738         * docs/gst/tmpl/types.sgml:
9739
9740         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
9741         gtkdoc-scan doesn't like files with the same name in different
9742         directories.
9743         * gst/elements/Makefile.am:
9744         * gst/elements/gstelements.c:
9745         * gst/elements/gsttypefind.c: 
9746         * gst/elements/gsttypefind.h:
9747         * gst/elements/gsttypefindelement.c:
9748         * gst/elements/gsttypefindelement.h:
9749
9750 2004-04-28  David Schleef  <ds@schleef.org>
9751
9752         A bunch of portability fixes, derived from Steve Lhomme's MSVC
9753         patch (bug #141317):
9754         * gst/gst-i18n-lib.h: Allow disabling gettext.
9755         * gst/gstatomic_impl.h: disable warning when it's dumb.
9756         * gst/gstclock.c: fix include
9757         * gst/gstcompat.h: fix variadic macro
9758         * gst/gstinfo.c: fix include
9759         * gst/gstmacros.h: add defines for inlines on MSVC
9760         * gst/gstplugin.c: fix includes
9761         * gst/gstregistry.c: fix includes
9762         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
9763         * gst/gstsystemclock.c: fix include
9764         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
9765         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
9766         * gst/registries/gstxmlregistry.c:
9767         (gst_xml_registry_parse_element_factory): fix use of non-portable
9768         functions
9769         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
9770         * libs/gst/control/dparammanager.h: same
9771
9772 2004-04-28  David Schleef  <ds@schleef.org>
9773
9774         Move a bunch of unused files to old/ with names that are
9775         not case-insensitive-unique.  These files still contain some
9776         useful information that needs to be merged into gstbin.sgml,
9777         etc., so they shouldn't be deleted yet.
9778         * docs/gst/tmpl/GstBin.sgml:
9779         * docs/gst/tmpl/GstBuffer.sgml:
9780         * docs/gst/tmpl/GstCaps.sgml:
9781         * docs/gst/tmpl/GstClock.sgml:
9782         * docs/gst/tmpl/GstCompat.sgml:
9783         * docs/gst/tmpl/GstData.sgml:
9784         * docs/gst/tmpl/GstElement.sgml:
9785         * docs/gst/tmpl/GstEvent.sgml:
9786         * docs/gst/tmpl/GstIndex.sgml:
9787         * docs/gst/tmpl/GstStructure.sgml:
9788         * docs/gst/tmpl/GstTag.sgml:
9789         * docs/gst/tmpl/old/GstBin.sgml:
9790         * docs/gst/tmpl/old/GstBuffer.sgml:
9791         * docs/gst/tmpl/old/GstCaps.sgml:
9792         * docs/gst/tmpl/old/GstClock.sgml:
9793         * docs/gst/tmpl/old/GstCompat.sgml:
9794         * docs/gst/tmpl/old/GstData.sgml:
9795         * docs/gst/tmpl/old/GstElement.sgml:
9796         * docs/gst/tmpl/old/GstEvent.sgml:
9797         * docs/gst/tmpl/old/GstIndex.sgml:
9798         * docs/gst/tmpl/old/GstStructure.sgml:
9799         * docs/gst/tmpl/old/GstTag.sgml:
9800
9801 2004-04-28  David Schleef  <ds@schleef.org>
9802
9803         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
9804         (gst_caps_append), (gst_caps_append_structure),
9805         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
9806         (gst_caps_set_simple), (gst_caps_set_simple_valist),
9807         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
9808         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
9809         (gst_caps_intersect), (gst_caps_normalize),
9810         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
9811         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
9812         * gst/gstcaps.h: use GST_IS_CAPS().
9813
9814 2004-04-26  David Schleef  <ds@schleef.org>
9815
9816         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
9817         assembly.  gcc doesn't handle it correctly. (bug #141083)
9818         * gst/gsttrashstack.h: same
9819
9820 2004-04-25  Benjamin Otte  <otte@gnome.org>
9821
9822         * gst/gstelement.c: (gst_element_change_state):
9823           fix assertion to do an int comparison
9824
9825 2004-04-25  Benjamin Otte  <otte@gnome.org>
9826
9827         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9828           better debugging output on error
9829
9830 2004-04-25  Benjamin Otte  <otte@gnome.org>
9831
9832         * gst/gstcaps.c: (gst_caps_subtract):
9833           fix memleak
9834
9835 2004-04-23  Benjamin Otte  <otte@gnome.org>
9836
9837         * gst/gstvalue.c: (gst_value_compare_buffer),
9838         (_gst_value_initialize):
9839           add comparison function for buffers
9840
9841 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9842
9843         * docs/pwg/pwg.xml:
9844           Just found out that this so-called "ima-wav" format is really
9845           just "dvi adpcm" (according to the MS WAV documentation). So
9846           renaming it. We didn't use it yet anyway.
9847
9848 2004-04-23  Benjamin Otte  <otte@gnome.org>
9849
9850         * gst/gstcaps.c: (gst_caps_is_always_compatible):
9851           call gst_caps_is_subset
9852
9853 2004-04-23  Benjamin Otte  <otte@gnome.org>
9854
9855         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
9856         (gst_caps_is_subset):
9857           add documentation
9858
9859 2004-04-23  Benjamin Otte  <otte@gnome.org>
9860           
9861         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
9862         (gst_caps_structure_subtract), (gst_caps_subtract),
9863         (gst_caps_structure_figure_out_union),
9864         (gst_caps_structure_simplify), (gst_caps_do_simplify):
9865           fix simplifying and subtracting not working correctly with optional
9866           properties
9867           solve assorted problems that make it now simplify ebven more
9868         * docs/gst/tmpl/gstcaps.sgml:
9869         * gst/gstcaps.h:
9870           make gst_caps_do_simplify return a bool to indicate if it simplified
9871         * testsuite/caps/simplify.c: (main):
9872           add more checks. The tests is quite a bit useless right now because
9873           the core is heavily simplifying itself.
9874         * testsuite/caps/caps.h:
9875           fix caps to contain all optional properties
9876
9877 2004-04-22  Benjamin Otte  <otte@gnome.org>
9878
9879         * docs/gst/tmpl/gstcaps.sgml:
9880         * docs/gst/tmpl/gstfilesrc.sgml:
9881         * docs/gst/tmpl/gststructure.sgml:
9882         * docs/gst/tmpl/gstvalue.sgml:
9883           update for recent API changes
9884         * gst/gstcaps.c: (gst_caps_do_simplify):
9885           fix to stop trying with a freed structure
9886         * gst/gstpad.c: (gst_pad_link_fixate):
9887           simplify caps
9888         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
9889           remove C++ comment
9890         * gst/gstpad.h:
9891           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
9892         * gst/gststructure.c: (gst_structure_value_get_generic_type),
9893         (gst_structure_to_string):
9894           keep the correct type when using lists of ranges
9895         * gst/gstvalue.c: (gst_value_list_prepend_value),
9896         (gst_value_list_append_value):
9897           copy the value before adding to the list (d'oh)
9898         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
9899         (gst_value_subtract_int_range_int_range):
9900           handle overflows correctly
9901         * gst/gstvalue.c: (gst_value_subtract_from_list):
9902           fix memleak
9903         * testsuite/caps/caps.h:
9904           add a caps that caused segfaults
9905
9906 2004-04-22  Benjamin Otte  <otte@gnome.org>
9907
9908         * testsuite/refcounting/pad.c: (main):
9909           fix test
9910
9911 2004-04-22  Benjamin Otte  <otte@gnome.org>
9912
9913         * gst/gstcaps.c: (gst_caps_subtract):
9914           allow subtracting ANY and EMPTY from ANY caps
9915
9916 2004-04-22  Benjamin Otte  <otte@gnome.org>
9917
9918         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
9919         (gst_caps_union):
9920           only simplify in functions that create new caps. Simplifying in
9921           gst_caps_append breaks tests.
9922
9923 2004-04-22  Benjamin Otte  <otte@gnome.org>
9924
9925         * gst/gstcaps.c: (gst_caps_structure_simplify):
9926           unset GValue after use
9927         * gst/gstcaps.c: (gst_caps_append), 
9928         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
9929           use gst_caps_simplify (reduces registry size by 30%)
9930         * gst/gstpad.c: (gst_pad_template_new):
9931           don't allow NULL caps
9932
9933 2004-04-22  Benjamin Otte  <otte@gnome.org>
9934
9935         * docs/gst/gstreamer-sections.txt:
9936           add gst_caps_do_simplify
9937         * gst/gstcaps.c:
9938           add documentation for gst_caps_do_simplify
9939         * gst/gstvalue.h:
9940           fix typo in gst_value_register_subtract_func declaration for gst-doc
9941
9942 2004-04-22  Benjamin Otte  <otte@gnome.org>
9943
9944         * gst/gstcaps.c: (gst_caps_from_string_inplace):
9945           fix bug when converting from empty string.
9946         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
9947         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
9948           use gst_caps_new_empty to allocate a new caps. Only that function
9949           allocates memory for caps now.
9950         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
9951         (gst_caps_remove_structure):
9952           add ability to remove one structure (but not to header yet)
9953         * gst/gstcaps.c: (gst_caps_compare_structures),
9954         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
9955         (gst_caps_structure_simplify), (gst_caps_do_simplify),
9956         * gst/gstcaps.h:
9957           add gst_caps_do_simplify that tries to simplify a caps in place.
9958           Deprecate old gst_caps_simplify function.
9959         * testsuite/caps/caps.h:
9960           add caps.h containing a common set of caps to test against.
9961         * testsuite/caps/sets.c: (check_caps), (main):
9962           use it.
9963         * testsuite/caps/.cvsignore:
9964         * testsuite/caps/Makefile.am:
9965         * testsuite/caps/simplify.c: (check_caps), (main):
9966           add test to check correctness and efficency of caps simplification.
9967
9968 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
9969
9970         reviewed by Benjamin Otte  <otte@gnome.org>
9971
9972         * gst/gstparse.c: (_gst_parse_escape):
9973           Free the GString used in _gst_parse_escape()
9974
9975 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9976
9977         * gst/gstpad.c: (gst_pad_link_negotiate):
9978           refuse to link if the link is not possible
9979         * configure.ac:
9980         * testsuite/Makefile.am:
9981         * testsuite/negotiation/.cvsignore:
9982         * testsuite/negotiation/Makefile.am:
9983         * testsuite/negotiation/pad_link.c: (main):
9984           add test that checks the above behaviour
9985
9986 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9987
9988         * docs/gst/gstreamer-sections.txt:
9989           add newly added API
9990
9991 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9992
9993         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9994         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
9995         (gst_filesrc_open_file), (gst_filesrc_close_file),
9996         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
9997         * gst/elements/gstfilesrc.h:
9998           add support for non-regular files (#140734)
9999
10000 2004-04-21  Benjamin Otte  <otte@gnome.org>
10001
10002         * gst/gstpad.c: (gst_pad_link_fixate):
10003           add sophisticated error checking code to see if fixation functions
10004           did their fixation right
10005
10006 2004-04-21  Benjamin Otte  <otte@gnome.org>
10007
10008         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
10009           check for ANY caps before appending/unioning
10010         * gst/gstcaps.c: (gst_caps_is_subset),
10011         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
10012         (gst_caps_structure_subtract), (gst_caps_subtract):
10013         * gst/gstcaps.h:
10014           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
10015           the API. deprecate gst_caps_is_equal_fixed
10016         * gst/gstpad.c: (gst_pad_try_set_caps):
10017         * gst/gstqueue.c: (gst_queue_link):
10018           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
10019         * gst/gststructure.c: (gst_structure_get_name_id):
10020         * gst/gststructure.h:
10021           add function gst_structure_get_name_id
10022         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
10023         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
10024         (gst_value_subtract_int_range_int_range),
10025         (gst_value_subtract_double_double_range),
10026         (gst_value_subtract_double_range_double),
10027         (gst_value_subtract_double_range_double_range),
10028         (gst_value_subtract_from_list), (gst_value_subtract_list),
10029         (gst_value_can_intersect), (gst_value_subtract),
10030         (gst_value_can_subtract), (gst_value_register_subtract_func),
10031         (_gst_value_initialize):
10032         * gst/gstvalue.h:
10033           add support for subtracting values from each other. Note that
10034           subtracting means subtracting as in set theory. Required for caps
10035           stuff above.
10036         * testsuite/caps/.cvsignore:
10037         * testsuite/caps/Makefile.am:
10038         * testsuite/caps/erathostenes.c: (erathostenes), (main):
10039         * testsuite/caps/sets.c: (check_caps), (main):
10040         * testsuite/caps/subtract.c: (check_caps), (main):
10041           add tests for subtraction and equality code.
10042
10043 2004-04-20  David Schleef  <ds@schleef.org>
10044
10045         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
10046         * gst/indexers/Makefile.am:
10047         * gst/schedulers/Makefile.am:
10048         * libs/gst/bytestream/Makefile.am:
10049         * libs/gst/control/Makefile.am:
10050         * libs/gst/getbits/Makefile.am:
10051
10052 2004-04-20  David Schleef  <ds@schleef.org>
10053
10054         * common/as-libtool.mak: Fine-tune DLL building.
10055         * configure.ac: Link plugins against libgstreamer.  Define plugindir
10056         (like gst-plugins)
10057         * examples/plugins/Makefile.am: remove plugindir
10058         * gst/autoplug/Makefile.am: DLL building fixes
10059         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
10060         Windows.
10061         * gst/elements/gstelements.c: Conditionally disable pipefilter.
10062         * gst/indexers/Makefile.am: DLL building fixes
10063         * gst/schedulers/Makefile.am: DLL building fixes.
10064         * libs/gst/bytestream/Makefile.am: DLL building fixes.
10065         * libs/gst/control/Makefile.am: same
10066         * libs/gst/getbits/Makefile.am: same
10067         * testsuite/Makefile.am: New dlopen directory
10068         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
10069         when dlopened.
10070         * testsuite/dlopen/dlopen_gst.c: (main): same
10071         * testsuite/dlopen/loadgst.c: (do_test): same
10072
10073 2004-04-20  David Schleef  <ds@schleef.org>
10074
10075         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
10076         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
10077
10078 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10079
10080         * gst/gstelement.c: (gst_element_wait),
10081         (gst_element_set_time_delay), (gst_element_change_state):
10082           Use GST_TIME_*
10083
10084 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10085
10086         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
10087         (gst_spider_identity_plug):
10088           improve debugging messages
10089         * gst/gstbin.c: (gst_bin_remove_func):
10090           make sure the state_change function is only called with simple state
10091           transitions
10092
10093 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10094
10095         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
10096         (gst_fakesink_set_property), (gst_fakesink_chain):
10097         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
10098         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
10099         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
10100         * gst/elements/gstidentity.c: (gst_identity_chain),
10101         (gst_identity_set_property):
10102         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
10103         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
10104           add warnings to _set_property for unknown arguments
10105           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
10106
10107 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10108
10109         * Makefile.am:
10110         * docs/manuals.mak:
10111           add .po file download snippet
10112           fix a bug in the doc makefile
10113
10114 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10115
10116         * Makefile.am:
10117         * po/LINGUAS:
10118         * po/en_GB.po:
10119           Added en_GB translation (Gareth Owen)
10120
10121 2004-04-20  Johan Dahlin  <johan@gnome.org>
10122
10123         * gst/gstpad.c (_invent_event): Clean up
10124
10125 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10126
10127         * testsuite/caps/filtercaps.c: (main):
10128           fix test to test things correctly (caps are complicated)
10129
10130 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10131
10132         * testsuite/caps/Makefile.am:
10133         * testsuite/caps/filtercaps.c: (main):
10134           add test (that doesn't work right now, but should)
10135
10136 2004-04-19  David Schleef  <ds@schleef.org>
10137
10138         * configure.ac: Add test for allowing unaligned access.  Add define
10139         to put in gstconfig.h.
10140         * docs/gst/gstreamer-sections.txt: New symbols
10141         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
10142         * docs/gst/tmpl/gstfilesrc.sgml:
10143         * docs/gst/tmpl/gstparse.sgml:
10144         * docs/gst/tmpl/gsttypes.sgml:
10145         * docs/gst/tmpl/gstutils.sgml:
10146         * docs/gst/tmpl/gstvalue.sgml:
10147         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
10148         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
10149         on most !i386/!powerpc architectures.  From Daniel Gazard
10150         <daniel.gazard@free.fr>.  (bug #140156)
10151         * po/af.po: Check in changes made by gettext.
10152         * po/az.po:
10153         * po/fr.po:
10154         * po/nl.po:
10155         * po/sr.po:
10156         * po/sv.po:
10157
10158 2004-04-20  Benjamin Otte  <otte@gnome.org>
10159
10160         * gst/schedulers/entryscheduler.c: 
10161         (gst_entry_scheduler_yield):
10162           refuse to yield when decoupled elements insist on doing that.
10163           At least it's better than crashing
10164
10165 2004-04-19  David Schleef  <ds@schleef.org>
10166
10167         * docs/libs/Makefile.am: Change sinclude to include
10168         * docs/gst/Makefile.am: same
10169         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
10170
10171 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10172
10173         * po/LINGUAS:
10174         * po/uk.po:
10175           Added Ukrainian translation (Maxim V. Dziumanenko)
10176
10177 2004-04-19  Johan Dahlin  <johan@gnome.org>
10178
10179         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
10180         checking here, do it before calling the function.
10181         Clean up, use for loops instead of while loops while iterating
10182         over lists.
10183
10184         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
10185         in debug message.
10186         (gst_spider_create_and_plug): Improve debug message.
10187         General: Replace while loops which iterates over GLists with for
10188         loops. Which are much cleaner, improves readability, especially
10189         for gst_spider_identity_plug
10190
10191         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
10192         fixes bug 140477
10193
10194 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10195
10196         * po/LINGUAS:
10197         * po/tr.po:
10198           Added Turkish translation (Baris Cicek)
10199
10200 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10201
10202         * docs/faq/troubleshooting.xml:
10203           Mention gst-register in the FAQ (fixes 139045).
10204
10205 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10206
10207         * docs/gst/gstreamer-sections.txt:
10208
10209 2004-04-17  Benjamin Otte  <otte@gnome.org>
10210
10211         * gst/gstelement.c: (gst_element_dispose):
10212           simplify
10213         * gst/gstpad.c: (gst_pad_call_chain_function):
10214           don't create loads of events due to bad macro usage
10215
10216 2004-04-16  David Schleef  <ds@schleef.org>
10217
10218         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
10219         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
10220         * gst/gstvalue.c: (gst_value_serialize_buffer),
10221         (gst_value_deserialize_buffer), (gst_type_is_fixed),
10222         (_gst_value_initialize): Create a new function gst_type_is_fixed()
10223         to indicate types that are fixed wrt caps or not.  Switching to
10224         this function fixes (bug #140298).
10225         * gst/gstvalue.h:
10226
10227 2004-04-16  David Schleef  <ds@schleef.org>
10228
10229         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
10230         for GST_UNALIGNED_ACESS, since we essentially know which archs
10231         are ok.
10232
10233 2004-04-17  Benjamin Otte  <otte@gnome.org>
10234
10235         * docs/gst/Makefile.am:
10236           ignore gst/parse directory when building docs (fixes #140205)
10237
10238 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10239
10240         * testsuite/refcounting/mem.c: (vmsize):
10241           do error checking
10242
10243 2004-04-16  Johan Dahlin  <johan@gnome.org>
10244
10245         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
10246         and gst_pad_call_get_function.
10247
10248 2004-04-15  David Schleef  <ds@schleef.org>
10249
10250         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
10251         checks if we can access unaligned memory.
10252         * configure.ac: Use it.
10253
10254 2004-04-16  Benjamin Otte  <otte@gnome.org>
10255
10256         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
10257         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
10258         * gst/elements/gstfilesrc.h:
10259           s/seek_happened/need_discont/ and require discont before sending any
10260           data
10261
10262 2004-04-15  David Schleef  <ds@schleef.org>
10263
10264         * gst/gstvalue.c: (gst_value_serialize_buffer),
10265         (gst_value_deserialize_buffer), (_gst_value_initialize):
10266         Register these types as fundamental types. (bug #140015)
10267
10268 2004-04-16  Benjamin Otte  <otte@gnome.org>
10269
10270         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
10271         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
10272         (gst_pad_pull):
10273           implement enforcing discont events before buffers are passed. This
10274           allows state changes of only some elements and later correctly going
10275           on where they left off (or in short: you can now set audio sinks to
10276           NULL to release the device when the pipeline is paused)
10277         * gst/gstpad.c: (gst_pad_call_chain_function),
10278         (gst_pad_call_get_function):
10279         * gst/gstpad.h:
10280           add gst_pad_call_chain_function and gst_pad_call_get_function for
10281           scheduler interaction. They are required because of the changes
10282           above.
10283         * gst/schedulers/entryscheduler.c: (get_buffer),
10284         (gst_entry_scheduler_chain_wrapper),
10285         (gst_entry_scheduler_get_wrapper),
10286         (gst_entry_scheduler_state_transition),
10287         (gst_entry_scheduler_pad_link):
10288         * gst/schedulers/gstbasicscheduler.c:
10289         (gst_basic_scheduler_chain_wrapper),
10290         (gst_basic_scheduler_src_wrapper),
10291         (gst_basic_scheduler_chainhandler_proxy),
10292         (gst_basic_scheduler_gethandler_proxy),
10293         (gst_basic_scheduler_cothreaded_chain),
10294         (gst_basic_scheduler_chain_elements):
10295         * gst/schedulers/gstoptimalscheduler.c:
10296         (get_group_schedule_function), (pad_clear_queued),
10297         (gst_opt_scheduler_pad_link):
10298           use the new functions instead of calling get/chain-functions
10299           directly.
10300
10301 2004-04-15  David Schleef  <ds@schleef.org>
10302
10303         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
10304         * docs/gst/tmpl/gstinfo.sgml: same
10305         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
10306         gtk-doc put here.
10307         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
10308         * examples/queue/queue.c: (main):  We iterate pipelines, not
10309         bins.  (bug #139996)
10310
10311 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10312
10313         * docs/pwg/advanced-types.xml:
10314           Add MS RLE support. Also document Qt RLE although I have no sample
10315           files for that yet. And document an extra property for ADPCM.
10316
10317 2004-04-15  David Schleef  <ds@schleef.org>
10318
10319         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
10320         (_gst_plugin_fault_handler_setup):  Disable more stuff on
10321         Windows.
10322
10323 2004-04-15  David Schleef  <ds@schleef.org>
10324
10325         * gst/gstinfo.c: (_gst_debug_init): Change some internal
10326         symbol names to not conflict with new gstinfo.h symbols.
10327         * gst/gstinfo.h: Add inline functions for all those crazy
10328         compilers that don't know how to handle variadic macros (MSVC).
10329
10330 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10331
10332         * configure.ac: bump nano to 1
10333
10334 === release 0.8.1 ===
10335
10336 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10337
10338         * NEWS:
10339         * RELEASE:
10340         * configure.ac:
10341           releasing 0.8.1, "Snow Brigade"
10342
10343 2004-04-14  David Schleef  <ds@schleef.org>
10344
10345         * testsuite/Makefile.am: define tests_ignore
10346         * testsuite/Rules: Added new tests_ignore, which get compiled,
10347         but not run (generally because they're inconsistent or have
10348         heisenbugs).  Now we can ensure all the .c files compile in
10349         testsuite/.
10350         * testsuite/bins/Makefile.am: define tests_ignore
10351         * testsuite/bytestream/Makefile.am:
10352         * testsuite/caps/Makefile.am:
10353         * testsuite/clock/Makefile.am:
10354         * testsuite/debug/Makefile.am:
10355         * testsuite/debug/global.c: (gst_debug_log_one),
10356         (gst_debug_log_two): Fix compilation problem.
10357         * testsuite/dynparams/Makefile.am:
10358         * testsuite/elements/Makefile.am:
10359         * testsuite/ghostpads/Makefile.am:
10360         * testsuite/indexers/Makefile.am:
10361         * testsuite/parse/Makefile.am:
10362         * testsuite/plugin/Makefile.am:
10363         * testsuite/refcounting/Makefile.am:
10364         * testsuite/refcounting/element_pad.c: (main): Don't return leak
10365         results, because it's not calculated correctly.
10366         * testsuite/refcounting/pad.c: (main): same
10367         * testsuite/states/Makefile.am:
10368         * testsuite/tags/Makefile.am:
10369         * testsuite/threads/Makefile.am:
10370
10371 2004-04-14  David Schleef  <ds@schleef.org>
10372
10373         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
10374         generating bad code around the cpu detection asm code.
10375
10376 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10377
10378         * tools/gst-inspect.c: (print_element_info):
10379           print numeric version of rank as well, since we added some - 1
10380           rank values to elements
10381
10382 2004-04-13  David Schleef  <ds@schleef.org>
10383
10384         * configure.ac:  Disable various code when compiling for MinGW.
10385         * gst/elements/Makefile.am:
10386         * gst/elements/gstelements.c:
10387         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10388         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
10389         * gst/registries/gstxmlregistry.c: (make_dir):
10390
10391 2004-04-13  David Schleef  <ds@schleef.org>
10392
10393         * gst/Makefile.am:
10394         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
10395         assembly.
10396         * gst/gstcpuid_i386.s: remove
10397
10398 2004-04-13  David Schleef  <ds@schleef.org>
10399
10400         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
10401         seems to think it needs to be done.
10402         * docs/gst/tmpl/gstfakesink.sgml:
10403         * docs/gst/tmpl/gstfakesrc.sgml:
10404         * docs/gst/tmpl/gstfdsink.sgml:
10405         * docs/gst/tmpl/gstfdsrc.sgml:
10406         * docs/gst/tmpl/gstfilesink.sgml:
10407         * docs/gst/tmpl/gstfilesrc.sgml:
10408         * docs/gst/tmpl/gstidentity.sgml:
10409         * docs/gst/tmpl/gstmd5sink.sgml:
10410         * docs/gst/tmpl/gstmultifilesrc.sgml:
10411         * docs/gst/tmpl/gstpipefilter.sgml:
10412         * docs/gst/tmpl/gstshaper.sgml:
10413         * docs/gst/tmpl/gstspider.sgml:
10414         * docs/gst/tmpl/gstspideridentity.sgml:
10415         * docs/gst/tmpl/gststatistics.sgml:
10416         * docs/gst/tmpl/gsttee.sgml:
10417         * docs/gst/tmpl/gsttypefind.sgml:
10418         * docs/gst/tmpl/gstutils.sgml:
10419
10420 2004-04-13  David Schleef  <ds@schleef.org>
10421
10422         * configure.ac: Changes to remove POSIXisms (mmap in this case)
10423         and to build DLLs on Windows.
10424         * gst/Makefile.am:
10425         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
10426         (gst_filesrc_open_file):
10427         * gst/schedulers/Makefile.am:
10428
10429 2004-04-13  David Schleef  <ds@schleef.org>
10430
10431         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
10432         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
10433         fixating lists.
10434
10435 2004-04-12  David Schleef  <ds@schleef.org>
10436
10437         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
10438         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
10439         to using it.
10440         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
10441         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
10442         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
10443         * gst/gststructure.c: (gst_structure_set_valist),
10444         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
10445         support for buffers.
10446         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
10447         intended to be const.
10448         * gst/gsttag.h: same
10449         * gst/gstvalue.c: (gst_value_serialize_buffer),
10450         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
10451         to (de)serialize buffers.
10452         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
10453         * testsuite/caps/string-conversions.c: (main):
10454         * testsuite/caps/value_serialize.c: add new test
10455
10456 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10457
10458         * docs/pwg/advanced-types.xml:
10459           Document MS video 1 (video/x-msvideocodec) mimetype/format.
10460
10461 2004-04-11  Benjamin Otte  <otte@gnome.org>
10462
10463         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
10464           rename categories to basic_*
10465         * gst/schedulers/gstbasicscheduler.c: 
10466         (gst_basic_scheduler_chain_wrapper),
10467         (gst_basic_scheduler_chainhandler_proxy),
10468         (gst_basic_scheduler_gethandler_proxy),
10469         (gst_basic_scheduler_eventhandler_proxy):
10470           debugging category fixes - put common stuff in log category
10471         * gst/schedulers/gstbasicscheduler.c: 
10472         (gst_basic_scheduler_chain_elements):
10473           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
10474           active and linking two active chains
10475
10476 2004-04-10  Benjamin Otte  <otte@gnome.org>
10477
10478         * docs/pwg/intro-preface.xml:
10479           fix dead links and remove reference to Wiki
10480
10481 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10482
10483         * gst/schedulers/gstbasicscheduler.c:
10484           make sure we can switch back to the main function if we're still in
10485           the main function (supposed to fix #139617)
10486         * gst/schedulers/gthread-cothreads.h:
10487           don't throw an error when switching to the same cothread
10488
10489 2004-04-09  Benjamin Otte  <otte@gnome.org>
10490
10491         * gst/gstbin.c: (gst_bin_get_type):
10492         * gst/gstclock.c: (gst_clock_get_type):
10493         * gst/gstindex.c: (gst_index_get_type):
10494         * gst/gstobject.c: (gst_object_get_type),
10495         (gst_signal_object_get_type):
10496         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
10497         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
10498         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
10499         * gst/gstqueue.c: (gst_queue_get_type):
10500         * gst/gstregistry.c: (gst_registry_get_type):
10501         * gst/gstsystemclock.c: (gst_system_clock_get_type):
10502         * gst/gstthread.c: (gst_thread_get_type):
10503           don't use memchunks for these objects, use malloc instead
10504
10505 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10506
10507         * docs/gst/.cvsignore:
10508         * docs/gst/Makefile.am:
10509         * docs/gst/gstreamer-sections.txt:
10510         * docs/gst/tmpl/gstaggregator.sgml:
10511         * docs/gst/tmpl/gstbuffer.sgml:
10512         * docs/gst/tmpl/gstclock.sgml:
10513         * docs/gst/tmpl/gstelement.sgml:
10514         * docs/gst/tmpl/gstfakesink.sgml:
10515         * docs/gst/tmpl/gstfakesrc.sgml:
10516         * docs/gst/tmpl/gstfdsink.sgml:
10517         * docs/gst/tmpl/gstfdsrc.sgml:
10518         * docs/gst/tmpl/gstfilesink.sgml:
10519         * docs/gst/tmpl/gstfilesrc.sgml:
10520         * docs/gst/tmpl/gstidentity.sgml:
10521         * docs/gst/tmpl/gstindex.sgml:
10522         * docs/gst/tmpl/gstinfo.sgml:
10523         * docs/gst/tmpl/gstmd5sink.sgml:
10524         * docs/gst/tmpl/gstmultifilesrc.sgml:
10525         * docs/gst/tmpl/gstpad.sgml:
10526         * docs/gst/tmpl/gstpipefilter.sgml:
10527         * docs/gst/tmpl/gstpipeline.sgml:
10528         * docs/gst/tmpl/gstpluginfeature.sgml:
10529         * docs/gst/tmpl/gstqueue.sgml:
10530         * docs/gst/tmpl/gstregistry.sgml:
10531         * docs/gst/tmpl/gstscheduler.sgml:
10532         * docs/gst/tmpl/gstshaper.sgml:
10533         * docs/gst/tmpl/gstspider.sgml:
10534         * docs/gst/tmpl/gstspideridentity.sgml:
10535         * docs/gst/tmpl/gststatistics.sgml:
10536         * docs/gst/tmpl/gstsystemclock.sgml:
10537         * docs/gst/tmpl/gsttee.sgml:
10538         * docs/gst/tmpl/gstthread.sgml:
10539         * docs/gst/tmpl/gsttypefind.sgml:
10540         * docs/gst/tmpl/gstutils.sgml:
10541           further doc build fixes
10542
10543 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10544
10545         * docs/gst/Makefile.am:
10546           make docs exit on scanning problems
10547           fix nonsrcdir build issues
10548         * docs/gst/gstreamer-sections.txt:
10549           adding stuff from -unused
10550         * gst/gstqueue.h:
10551           create GstQueueSize
10552         * gst/schedulers/cothreads_compat.h:
10553           fix cothread warnings
10554
10555 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10556
10557         * docs/gst/gstreamer-sections.txt:
10558           remove defines deprecated by Benjamin
10559
10560 2004-04-07  Benjamin Otte  <otte@gnome.org>
10561
10562         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10563           when the buffer is complete, don't check if other buffers are needed
10564         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
10565           check that the offset is >0 so we don't try to read before the
10566           beginning of the file
10567         * gst/gstpad.c: (gst_pad_set_pad_template):
10568           sink the template, so we don't end up with 130k pad templates
10569
10570 2004-04-06  Benjamin Otte  <otte@gnome.org>
10571
10572         * gst/autoplug/gstspider.c: (gst_spider_link_add):
10573           don't ref the element, adding already reffed it. And we didn't unref
10574           it later anyway... (huge memleak when you used many spider elements)
10575         * gst/gstelement.c: (gst_element_base_class_finalize):
10576         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
10577         (gst_element_register):
10578         * gst/gsturi.c: (gst_element_make_from_uri):
10579           use gst_object_(un)ref instead of g_object(un)ref
10580
10581 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10582
10583         * gst/gstbuffer.h:
10584           remove macro that wouldn't work anymore because struct member has
10585           been removed.
10586         * gst/schedulers/entryscheduler.c: (schedule_forward):
10587           fix segfault for unconnected pads
10588         
10589 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10590
10591         reviewed by David Schleef <ds@schleef.org>
10592
10593         * gst/gstinfo.h:
10594           *_FORMAT modifiers should require putting a % in front of them for
10595           consistency reasons.
10596
10597 2004-04-05  Colin Walters  <walters@redhat.com>
10598
10599         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
10600         space.
10601
10602 2004-04-05  Benjamin Otte  <otte@gnome.org>
10603
10604         * configure.ac:
10605         * gst/Makefile.am:
10606         * gst/gst_private.h:
10607         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
10608           add support for detecting if GStreamer runs inside valgrind.
10609           requires valgrind (d'oh) and --enable-debug for correct cdetection.
10610           print a big message in valgrind that GStreamer has detected it's
10611           running inside and might now use different code.
10612         * gst/gstmemchunk.c: (populate), (free_area),
10613         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
10614         (gst_mem_chunk_free):
10615           flag memchunks for valgrind, so it can detect leaking of chunks.
10616           This allows detecting leaks of GstBuffer and GstEvent correctly
10617           inside valgrind.
10618
10619 2004-04-05  David Schleef  <ds@schleef.org>
10620
10621         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
10622           jensgr@gmx.net (Jens Granseuer)
10623
10624 2004-04-05  David Schleef  <ds@schleef.org>
10625
10626         * gst/gstbuffer.c: (_gst_buffer_sub_free),
10627         (gst_buffer_default_free), (gst_buffer_default_copy),
10628         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
10629         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
10630         structures in one place.
10631
10632 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10633
10634         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
10635           (GST_TIME_FORMAT, GST_TIME_ARGS)
10636
10637 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10638
10639         * testsuite/elements/Makefile.am:
10640           disable test until it stops breaking make distcheck
10641
10642 2004-04-05  Johan Dahlin  <johan@gnome.org>
10643
10644         * po/sv.po: Updated translation
10645
10646 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10647
10648         * gst/gstplugin.c: (gst_plugin_load_file):
10649           fix segfault for when original plugin was loaded statically
10650
10651 2004-04-05  Benjamin Otte  <otte@gnome.org>
10652
10653         * testsuite/debug/category.c: (main):
10654         * testsuite/debug/commandline.c: (main):
10655         * testsuite/debug/output.c: (main):
10656           fix tests to work again with debugging enabled
10657
10658 2004-04-05  Benjamin Otte  <otte@gnome.org>
10659
10660         * gst/schedulers/gstbasicscheduler.c:
10661         (gst_basic_scheduler_pad_link):
10662           fix to work with recent scheduling changes
10663
10664 2004-04-05  Benjamin Otte  <otte@gnome.org>
10665
10666         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
10667         prepareChangeLog doesn't work when cvs indents):
10668           don't throw an error when no element can be scheduled, there's too
10669           many weird reasons why it doesn't work. Return STOPPED instead.
10670           decoupled elemts' schedulability doesn't depend on bufpens.
10671
10672 2004-04-04  Benjamin Otte  <otte@gnome.org>
10673
10674         * gst/schedulers/gstbasicscheduler.c:
10675         (gst_basic_scheduler_pad_select):
10676           fix uninitialized variable warnings
10677
10678 2004-04-04  Benjamin Otte  <otte@gnome.org>
10679
10680         * gst/gstpad.c: (gst_pad_collect_valist):
10681           fix uninitialized variable warning
10682         * gst/schedulers/entryscheduler.c: (schedule_forward):
10683           fix shadowed variable
10684
10685 2004-04-04  Benjamin Otte  <otte@gnome.org>
10686
10687         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
10688         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
10689         (gst_pad_select):
10690         * gst/gstpad.h:
10691         * gst/gstscheduler.c: (gst_scheduler_pad_select),
10692         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
10693         * gst/gstscheduler.h:
10694           implement gst_pad_collect as replacement for gst_pad_select.
10695           deprecate gst_pad_select and gst_scheduler_(un)lock_element
10696           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
10697           new pad_select, lock and unlock calls.
10698         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
10699         * gst/cothreads.h:
10700         * gst/schedulers/cothreads_compat.h:
10701         * gst/schedulers/gthread-cothreads.h:
10702           remove unused cothread_lock and cothread_unlock calls
10703         * gst/schedulers/entryscheduler.c:
10704         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
10705         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
10706         (gst_entry_scheduler_pad_select):
10707           update to new API
10708         * gst/schedulers/gstbasicscheduler.c:
10709         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
10710         (gst_basic_scheduler_pad_select):
10711           remove useless lock and unlock calls, update pad_select to new API
10712           (untested)
10713         * gst/schedulers/gstoptimalscheduler.c:
10714         (gst_opt_scheduler_class_init):
10715           remove useless select, lock and unlock function calls
10716         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
10717           use gst_pad_collect instead of gst_pad_select
10718
10719 2004-04-04  Benjamin Otte  <otte@gnome.org>
10720
10721         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
10722         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
10723         (schedule_next_element), (print_entry):
10724           add can_schedule_pad to handle element states.
10725           add schedule_forward to select the correct entry to schedule next
10726
10727 2004-04-03  Benjamin Otte  <otte@gnome.org>
10728
10729         * gst/schedulers/entryscheduler.c: 
10730           remove unused variable, fix error inside Rb, fix compile warning in
10731           unreachable code
10732
10733 2004-04-03  Benjamin Otte  <otte@gnome.org>
10734
10735         * gst/schedulers/entryscheduler.c:
10736           completely revamp the inner workings, so it's a lot easier to
10737           understand and extend
10738
10739 2004-04-03  Andy Wingo  <wingo@pobox.com>
10740
10741         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
10742         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
10743         This allows better introspection of pipeline topology.
10744         (add_to_chain): Don't do trickery to put loop elements first;
10745         rather, queue a chain sort by marking the chain as dirty.
10746         (remove_from_chain): Mark the chain dirty.
10747         (sort_chain): New function. Sorts the group list so that terminal
10748         sinks are first. This means elements on the sink side will be
10749         preferentially sscheduled before elements on the src side of the
10750         pipeline.
10751         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
10752         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
10753         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
10754         (group_inc_link): Change argument and variable names to match the
10755         new link structure member names (src and sink).
10756         (group_dec_link): Add some description
10757
10758 2004-04-03  Benjamin Otte  <otte@gnome.org>
10759
10760         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
10761         * gst/gstinfo.h:
10762         * testsuite/debug/category.c: (main):
10763         * testsuite/debug/commandline.c: (main):
10764         * testsuite/debug/output.c: (main):
10765         * testsuite/debug/printf_extension.c: (main):
10766           fix to successfully build and test with --disable-gst-debug
10767           configure switch (fixes #138705)
10768
10769 2004-04-03  Benjamin Otte  <otte@gnome.org>
10770
10771         * docs/pwg/building-boiler.xml:
10772           add cvs login line and s/anonymous/anoncvs/
10773
10774 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
10775
10776         reviewed by Benjamin Otte  <otte@gnome.org>
10777
10778         * gst/gststructure.c: (gst_structure_free):
10779           memleak fix: free fields array (partial fix for #134839)
10780
10781 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10782
10783         * docs/random/ds/0.9-suggested-changes:
10784           Add a note to change handoff use in fakesrc to be usable in
10785           a more generic way (fakesrc should be renamed to appsrc or so).
10786         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
10787           Change signal type to scope, so we can fill the buffer in the
10788           handoff handler (that's the whole use of this signal...).
10789
10790 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10791
10792         * docs/pwg/other-ntoone.xml:
10793           Document muxers and n-to-1 elements.
10794
10795 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
10796
10797         * gst/registries/gstxmlregistry.c
10798         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
10799         determine if a file is a G_MODULE. The old one discards paths
10800         containing "so" somewhere in the middle. My home directory is
10801         called "soto". Go figure...
10802
10803 2004-03-31  David Schleef  <ds@schleef.org>
10804
10805         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
10806         to eventually deprecate gst_buffer_merge().  (bug: #136408)
10807         * gst/gstbuffer.h:
10808
10809 2004-03-31  David Schleef  <ds@schleef.org>
10810
10811         * gst/gstvalue.c: (gst_value_union_int_int_range),
10812         (gst_value_union_int_range_int_range), (gst_value_can_union),
10813         (gst_value_union), (_gst_value_initialize):  Add some union
10814         implementations.  We didn't have any previously.
10815         * testsuite/caps/Makefile.am:
10816         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
10817         (gst_audioscale_getcaps), (test_caps), (main): A little test
10818         that is the same as the caps manipulation in audioscale.
10819
10820 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10821
10822         * docs/faq/general.xml:
10823           add entry about "does gst support format X?"
10824
10825 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10826
10827         * gst/gstthread.c:
10828           fix docs
10829         * gst/gstutils.h:
10830           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
10831
10832 2004-03-30  Benjamin Otte  <otte@gnome.org>
10833
10834         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10835           set the offset of the buffer to the requested offset
10836         * gst/elements/gsttypefind.c: (stop_typefinding):
10837           revert patch 1.18 (which I unfortunately don't know the reason for).
10838           This is needed to allow downstream elements to seek. Otherwise
10839           typefind might overwrite a previous seek by downstream elements.
10840           This lead to errors with id3tag and typefind on some mp3s.
10841         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10842         (gst_entry_scheduler_iterate):
10843           be more verbose when debugging
10844
10845 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10846
10847         * gst/gstcaps.c: (gst_caps_from_string_inplace):
10848           make sure we don't get NULL strings
10849
10850 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10851
10852         * gst/gstcaps.c:
10853         * gst/gstelement.c:
10854         * gst/gstelementfactory.c: (gst_element_factory_get_type):
10855         * gst/gstindex.c: (gst_index_resolver_get_type),
10856         (gst_index_get_type), (gst_index_factory_get_type):
10857         * gst/gstinfo.c:
10858         * gst/gstpad.c:
10859         * gst/gstplugin.c:
10860         * gst/gsturi.c: (gst_uri_handler_get_type):
10861         * gst/gstvalue.c:
10862           first batch of documentation fixes
10863
10864 2004-03-29  David Schleef  <ds@schleef.org>
10865
10866         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
10867         * docs/gst/gstreamer-docs.sgml:  More hacking
10868         * docs/gst/gstreamer-sections.txt:
10869         * docs/gst/tmpl/cothreads_compat.sgml:
10870         * docs/gst/tmpl/gstcaps.sgml:
10871         * docs/gst/tmpl/gstclock.sgml:
10872         * docs/gst/tmpl/gstelement.sgml:
10873         * docs/gst/tmpl/gstevent.sgml:
10874         * docs/gst/tmpl/gstpad.sgml:
10875         * docs/gst/tmpl/gstutils.sgml:
10876         * docs/gst/tmpl/gstxml.sgml:
10877         * docs/gst/tmpl/gthread-cothreads.sgml:
10878         * docs/random/ds/0.9-suggested-changes:
10879         * gst/elements/gstfakesink.h: doc fixes
10880         * gst/elements/gstfakesrc.h: doc fixes
10881         * gst/gstcaps.c: doc fixes
10882         * gst/gstcaps.h: doc fixes
10883         * gst/gstelement.c: doc fixes
10884         * gst/gstelement.h: doc fixes
10885         * gst/gstindex.c: doc fixes
10886         * gst/gstinfo.c: doc fixes
10887         * gst/gstpad.c: doc fixes
10888         * gst/gstpad.h: doc fixes
10889         * gst/gstplugin.c: doc fixes
10890         * gst/gsttypefind.h: doc fixes
10891         * gst/gsturi.c: doc fixes
10892         * gst/gstvalue.c: doc fixes
10893
10894 2004-03-29  Colin Walters  <walters@redhat.com>
10895
10896         * gst/registries/gstxmlregistry.c (get_time)
10897         (plugin_times_older_than_recurse):
10898         Use the result of stat to determine whether a path is a file,
10899         so we don't attempt to opendir() files.
10900
10901 2004-03-29  Benjamin Otte  <otte@gnome.org>
10902
10903         * gst/gstpad.c: (gst_pad_set_explicit_caps):
10904           print caps in debugging output when setting caps failed
10905         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10906         (schedule_next_element), (get_buffer), (run_chainhandler),
10907         (element_may_start), (gst_entry_scheduler_chain_handler),
10908         (gst_entry_scheduler_get_handler),
10909         (gst_entry_scheduler_state_transition),
10910         (gst_entry_scheduler_pad_link):
10911           make this scheduler a testcase for mandatory
10912           discont-before-first-buffer which is needed if we want to allow apps
10913           to release the sound device.
10914           add SCHED_ASSERT macro to print scheduler state before an assertion
10915           triggers.
10916
10917 2004-03-29  Benjamin Otte  <otte@gnome.org>
10918
10919         * COPYING:
10920           replace by LGPL (former COPYING.LIB). The core is completely
10921           licensed LGPL.
10922         * COPYING.LIB:
10923           remove
10924
10925 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10926
10927         * po/af.po:
10928         * po/sv.po:
10929           updated Afrikaans and Swedish
10930
10931 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10932
10933         * po/LINGUAS:
10934         * po/az.po:
10935           adding Azerbaijani (Mətin Əmirov)
10936
10937 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
10938
10939         * gst/gstelement.h: 
10940         * gst/gstelement.c (gst_element_set_time_delay): New function for
10941         setting element time taking into account a hardware buffering
10942         delay.
10943         (gst_element_set_time): Now just an invocation of
10944         gst_element_set_time_delay.
10945         * gst/gstclock.h: 
10946         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
10947         allowing to set event times in the future.
10948         (gst_clock_get_event_time): Now just an invocation of
10949         gst_clock_get_event_time_delay.
10950
10951 2004-03-28  Benjamin Otte  <otte@gnome.org>
10952
10953         * gst/gstbin.c: (gst_bin_set_element_sched),
10954         (gst_bin_unset_element_sched):
10955           don't add decoupled elements to schedulers - otherwise it's
10956           impossible to control if a link to a decoupled element was already
10957           removed from a scheduler or not.
10958         * gst/schedulers/cothreads_compat.h:
10959         * gst/schedulers/gthread-cothreads.h:
10960           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
10961           is no "unused" warning.
10962         * gst/schedulers/Makefile.am:
10963         * gst/schedulers/entryscheduler.c:
10964           add new scheduler, based on ideas from talking to David and Martin.
10965           It's supposed to be small and correct. Currently it's also slow (but
10966           it's not noticable)
10967         * examples/retag/retag.c: (main):
10968         * testsuite/bytestream/test1.c: (main):
10969           fix missing NULLs at end of variadic functions
10970         * testsuite/elements/.cvsignore:
10971           update
10972
10973 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
10974
10975         * gst/gstevent.h:
10976         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
10977
10978 2004-03-25  David Schleef  <ds@schleef.org>
10979
10980         * docs/gst/gstreamer-sections.txt:  More doc hacking.
10981         * docs/gst/tmpl/gstaggregator.sgml:
10982         * docs/gst/tmpl/gstautoplugfactory.sgml:
10983         * docs/gst/tmpl/gstbin.sgml:
10984         * docs/gst/tmpl/gstbuffer.sgml:
10985         * docs/gst/tmpl/gstbufferstore.sgml:
10986         * docs/gst/tmpl/gstfakesink.sgml:
10987         * docs/gst/tmpl/gstfakesrc.sgml:
10988         * docs/gst/tmpl/gstmd5sink.sgml:
10989         * docs/gst/tmpl/gstreamer-unused.sgml:
10990         * docs/gst/tmpl/gstsearchfuncs.sgml:
10991         * docs/gst/tmpl/gstshaper.sgml:
10992         * docs/gst/tmpl/gstspider.sgml:
10993         * docs/gst/tmpl/gsttee.sgml:
10994         * docs/gst/tmpl/gstutils.sgml:
10995         * docs/gst/tmpl/gstvalue.sgml:
10996         * docs/gst/tmpl/gstxml.sgml:
10997         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
10998         and we don't support it.
10999         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
11000         (gst_use_threads), (gst_has_threads): same
11001         * gst/gstthreaddummy.c: same
11002         * gst/autoplug/gstspider.c: Make gst_spider_details static.
11003         * gst/autoplug/gstspider.h: same
11004         * gst/elements/gstaggregator.h: Remove bogus function from header
11005         * gst/elements/gstfakesink.h: same
11006         * gst/elements/gstfakesrc.h: same
11007         * gst/elements/gstmd5sink.h: same
11008         * gst/elements/gstshaper.h: same
11009         * gst/elements/gsttee.h: same
11010         * gst/gstbin.c: doc fixes
11011         * gst/gstbin.h: Remove unused definition.
11012         * gst/gstbuffer.c: doc fixes
11013         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
11014         * gst/gstfilter.c: doc fixes
11015         * gst/gsttag.c: doc fixes
11016         * gst/gstvalue.c: doc fixes
11017
11018 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11019
11020         * docs/pwg/advanced-types.xml:
11021           Document typefinding.
11022         * docs/pwg/other-oneton.xml:
11023           Document one-to-n elements, demuxers and parsers.
11024
11025 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
11026
11027         reviewed by: David Schleef  <ds@schleef.org>
11028
11029         * configure.ac: Check bison version (bug #127838)
11030
11031 2004-03-25  David Schleef  <ds@schleef.org>
11032
11033         * docs/gst/gstreamer-docs.sgml: More fine tuning.
11034         * docs/gst/gstreamer-sections.txt:
11035         * docs/gst/tmpl/gstautoplug.sgml:
11036         * docs/gst/tmpl/gststaticautoplug.sgml:
11037         * docs/gst/tmpl/gststaticautoplugrender.sgml:
11038         * docs/gst/tmpl/gstutils.sgml:
11039         * docs/gst/tmpl/gstxml.sgml:
11040
11041 2004-03-24  David Schleef  <ds@schleef.org>
11042
11043         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
11044         manual being such complete crap, that I decided to do major
11045         hacking of it.  This checkin replaces any fine tuning that
11046         may have been done previously, with the benefit of actually
11047         being complete for much of the API that was changed since
11048         0.6.  Further fine tuning will occur shortly.  (bug #134721)
11049         * docs/gst/gstreamer-sections.txt:
11050         * docs/gst/tmpl/GstBin.sgml:
11051         * docs/gst/tmpl/GstBuffer.sgml:
11052         * docs/gst/tmpl/GstCaps.sgml:
11053         * docs/gst/tmpl/GstClock.sgml:
11054         * docs/gst/tmpl/GstCompat.sgml:
11055         * docs/gst/tmpl/GstData.sgml:
11056         * docs/gst/tmpl/GstElement.sgml:
11057         * docs/gst/tmpl/GstEvent.sgml:
11058         * docs/gst/tmpl/GstIndex.sgml:
11059         * docs/gst/tmpl/GstStructure.sgml:
11060         * docs/gst/tmpl/GstTag.sgml:
11061         * docs/gst/tmpl/cothreads.sgml:
11062         * docs/gst/tmpl/cothreads_compat.sgml:
11063         * docs/gst/tmpl/gettext.sgml:
11064         * docs/gst/tmpl/grammar.tab.sgml:
11065         * docs/gst/tmpl/gst-i18n-app.sgml:
11066         * docs/gst/tmpl/gst-i18n-lib.sgml:
11067         * docs/gst/tmpl/gst.sgml:
11068         * docs/gst/tmpl/gst_private.sgml:
11069         * docs/gst/tmpl/gstaggregator.sgml:
11070         * docs/gst/tmpl/gstarch.sgml:
11071         * docs/gst/tmpl/gstatomic.sgml:
11072         * docs/gst/tmpl/gstatomic_impl.sgml:
11073         * docs/gst/tmpl/gstbin.sgml:
11074         * docs/gst/tmpl/gstbuffer.sgml:
11075         * docs/gst/tmpl/gstbufferstore.sgml:
11076         * docs/gst/tmpl/gstcaps.sgml:
11077         * docs/gst/tmpl/gstclock.sgml:
11078         * docs/gst/tmpl/gstcompat.sgml:
11079         * docs/gst/tmpl/gstconfig.sgml:
11080         * docs/gst/tmpl/gstcpu.sgml:
11081         * docs/gst/tmpl/gstdata.sgml:
11082         * docs/gst/tmpl/gstdata_private.sgml:
11083         * docs/gst/tmpl/gstelement.sgml:
11084         * docs/gst/tmpl/gstenumtypes.sgml:
11085         * docs/gst/tmpl/gsterror.sgml:
11086         * docs/gst/tmpl/gstevent.sgml:
11087         * docs/gst/tmpl/gstfakesink.sgml:
11088         * docs/gst/tmpl/gstfakesrc.sgml:
11089         * docs/gst/tmpl/gstfilesink.sgml:
11090         * docs/gst/tmpl/gstfilter.sgml:
11091         * docs/gst/tmpl/gstindex.sgml:
11092         * docs/gst/tmpl/gstinfo.sgml:
11093         * docs/gst/tmpl/gstinterface.sgml:
11094         * docs/gst/tmpl/gstlog.sgml:
11095         * docs/gst/tmpl/gstmacros.sgml:
11096         * docs/gst/tmpl/gstmarshal.sgml:
11097         * docs/gst/tmpl/gstmd5sink.sgml:
11098         * docs/gst/tmpl/gstmultifilesrc.sgml:
11099         * docs/gst/tmpl/gstobject.sgml:
11100         * docs/gst/tmpl/gstpad.sgml:
11101         * docs/gst/tmpl/gstparse.sgml:
11102         * docs/gst/tmpl/gstpipeline.sgml:
11103         * docs/gst/tmpl/gstplugin.sgml:
11104         * docs/gst/tmpl/gstpluginfeature.sgml:
11105         * docs/gst/tmpl/gstqueue.sgml:
11106         * docs/gst/tmpl/gstreamer-unused.sgml:
11107         * docs/gst/tmpl/gstregistry.sgml:
11108         * docs/gst/tmpl/gstregistrypool.sgml:
11109         * docs/gst/tmpl/gstscheduler.sgml:
11110         * docs/gst/tmpl/gstsearchfuncs.sgml:
11111         * docs/gst/tmpl/gstshaper.sgml:
11112         * docs/gst/tmpl/gstspider.sgml:
11113         * docs/gst/tmpl/gstspideridentity.sgml:
11114         * docs/gst/tmpl/gststructure.sgml:
11115         * docs/gst/tmpl/gstsystemclock.sgml:
11116         * docs/gst/tmpl/gsttag.sgml:
11117         * docs/gst/tmpl/gsttaginterface.sgml:
11118         * docs/gst/tmpl/gsttee.sgml:
11119         * docs/gst/tmpl/gstthread.sgml:
11120         * docs/gst/tmpl/gsttrace.sgml:
11121         * docs/gst/tmpl/gsttrashstack.sgml:
11122         * docs/gst/tmpl/gsttypefind.sgml:
11123         * docs/gst/tmpl/gsttypes.sgml:
11124         * docs/gst/tmpl/gsturi.sgml:
11125         * docs/gst/tmpl/gsturitype.sgml:
11126         * docs/gst/tmpl/gstutils.sgml:
11127         * docs/gst/tmpl/gstvalue.sgml:
11128         * docs/gst/tmpl/gstversion.sgml:
11129         * docs/gst/tmpl/gstxml.sgml:
11130         * docs/gst/tmpl/gstxmlregistry.sgml:
11131         * docs/gst/tmpl/gthread-cothreads.sgml:
11132         * docs/gst/tmpl/types.sgml:
11133
11134 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11135
11136         * docs/pwg/other-sink.xml:
11137         * docs/pwg/other-source.xml:
11138           Documentation on how to write source and sink elements. Other
11139           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
11140           manager, autoplugger) are all still pending.
11141
11142 2004-03-25  Benjamin Otte  <otte@gnome.org>
11143
11144         * testsuite/elements/Makefile.am:
11145         * testsuite/elements/gst-compprep-check:
11146           add check to make sure gst-compprep works
11147         * testsuite/elements/gst-inspect-check.in:
11148           improve initialization output
11149         * testsuite/Makefile.am:
11150         * testsuite/gst-inspect-check:
11151           remove old file
11152
11153 2004-03-24  David Schleef  <ds@schleef.org>
11154
11155         * testsuite/elements/Makefile.am:
11156         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
11157         to the testsuite.
11158
11159 2004-03-24  Benjamin Otte  <otte@gnome.org>
11160
11161         * libs/gst/control/dparam.c: (gst_dparam_attach),
11162         (gst_dparam_detach):
11163         * libs/gst/control/dparammanager.c: (gst_dpman_init):
11164           fix lvalue casts for real
11165
11166 2004-03-24  Benjamin Otte  <otte@gnome.org>
11167
11168         * gst/schedulers/gstbasicscheduler.c:
11169         (gst_basic_scheduler_src_wrapper):
11170         * gst/schedulers/gstoptimalscheduler.c:
11171         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
11172         (pad_clear_queued), (gst_opt_scheduler_add_element),
11173         (gst_opt_scheduler_remove_element):
11174           fix GStreamer to not have issues with lvalue casts anymore (fixes
11175           #136841)
11176
11177 2004-03-24  Benjamin Otte  <otte@gnome.org>
11178
11179         * gst/gstelement.c:
11180           add documentation about a gobject quirk where the object hasn't the
11181           correct class pointer set on initialization
11182         * gst/schedulers/gstbasicscheduler.c:
11183         (gst_basic_scheduler_src_wrapper):
11184           make sure to not run into an infinite loop
11185
11186 2004-03-22  Benjamin Otte  <otte@gnome.org>
11187
11188         * gst/gstutils.c: (gst_util_dump_mem):
11189         * gst/gstutils.h:
11190           first argument of gst_util_dump_mem should be const
11191
11192 2004-03-22  Johan Dahlin  <johan@gnome.org>
11193
11194         * gst/gstvalue.h: Clean up a little bit.
11195
11196 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
11197
11198         reviewed by Benjamin Otte  <otte@gnome.org>
11199
11200         * gst/autoplug/gstspider.c: (gst_spider_dispose):
11201         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
11202         (gst_aggregator_class_init), (gst_aggregator_init):
11203         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
11204         (gst_filesrc_dispose), (gst_filesrc_set_location):
11205         * gst/elements/gstidentity.c: (gst_identity_finalize),
11206         (gst_identity_class_init), (gst_identity_chain):
11207         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11208         * gst/elements/gststatistics.c: (gst_statistics_finalize),
11209         (gst_statistics_class_init):
11210         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
11211         (gst_tee_get_property):
11212           clean up used memory in this elements correctly on teardown (closes
11213           #137279)
11214
11215 2004-03-20  Colin Walters  <walters@redhat.com>
11216
11217         * gst/registries/gstxmlregistry.c:
11218         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
11219         registry saving atomic.
11220
11221 2004-03-20  Colin Walters  <walters@redhat.com>
11222
11223         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
11224         Just use
11225         access() instead of actually creating and deleting files.
11226
11227 2004-03-18  David Schleef  <ds@schleef.org>
11228
11229         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
11230         (bug #137625)
11231
11232 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11233
11234         * po/sv.po: updated translation (Christian Rose)
11235
11236 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11237
11238         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
11239         (gst_filesink_get_query_types), (_do_init),
11240         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
11241           return FALSE silently
11242         * po/af.po: updated translation (Petri Jooste)
11243
11244 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11245
11246         * Makefile.am:
11247         * configure.ac:
11248           dist common properly
11249         * po/af.po:
11250         * po/fr.po:
11251         * po/nl.po:
11252         * po/sr.po:
11253         * po/sv.po:
11254           refreshing translations
11255
11256 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11257
11258         * po/LINGUAS:
11259         * po/sv.po:
11260         * po/af.po:
11261           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
11262
11263 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11264
11265         * Makefile.am: use common/release.mak
11266
11267 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11268
11269         * docs/faq/gst-uninstalled:
11270           adding gst-monkeysaudio to the list of possible plugin dirs
11271
11272 2004-03-16  David Schleef  <ds@schleef.org>
11273
11274         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
11275         (gst_init_check_with_popt_table):  Fix some gettext strings to
11276         make them easier to translate.  Required making the strings
11277         non-const.
11278
11279 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11280
11281         * configure.ac: bump nano to 1
11282
11283 === release 0.8.0 ===
11284
11285 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11286
11287         * configure.ac: release 0.8.0, "Executive Slacks"
11288
11289 2004-03-16  Johan Dahlin  <johan@gnome.org>
11290
11291         * gst/schedulers/gstoptimalscheduler.c
11292         (gst_opt_scheduler_pad_unlink): Remove double ;,
11293         spotted by Scott Wheeler
11294
11295 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11296
11297         * configure.ac: bump libtool version
11298
11299 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11300
11301         * gst/gstcaps.h:
11302         * gst/gststructure.h:
11303           add reserved padding
11304
11305 2004-03-15  Benjamin Otte  <otte@gnome.org>
11306
11307         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
11308           set the first parameter for select call correctly.
11309           (fixes #137230)
11310
11311 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11312
11313         * *.c,*.h: don't mix tabs and spaces
11314
11315 2004-03-15  Johan Dahlin  <johan@gnome.org>
11316
11317         * gst/schedulers/gstoptimalscheduler.c
11318         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
11319         crash on MPEG playback. My boolean arithmetic is a bit rusty.
11320
11321         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
11322         
11323 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11324
11325         * testsuite/Rules:
11326           fix gst-register rules
11327
11328 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11329
11330         * testsuite/Rules:
11331           use versioned gst-register
11332
11333 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11334
11335         * docs/libs/gstreamer-libs-sections.txt:
11336           remove </SUBSECTION>
11337         * gst/gstplugin.c:
11338         * gst/gstregistry.c: (gst_registry_add_plugin):
11339         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
11340         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
11341           add debugging and fix some comment blocks
11342
11343 2004-03-15  Johan Dahlin  <johan@gnome.org>
11344
11345         * *.h: Revert indent changes.
11346         
11347 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
11348
11349         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
11350           g_error_free the g_error
11351         * tools/gst-feedback-m.m:
11352           check for other versions of gstreamer
11353         * tools/gst-indent:
11354           use sh, not bash
11355
11356 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
11357
11358         * tools/gst-register.c: do not spill paths when registries are not
11359           writable, until we fix the "user running gst-register" case.
11360
11361 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11362
11363         * *.c, *.h: commit of gst-indent run on core
11364
11365 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11366
11367         * tools/gst-indent:
11368         * tools/Makefile.am:
11369           add our indentation style as a script
11370
11371 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11372
11373         * po/sr.po:
11374         * po/LINGUAS:
11375           added Serbian translation
11376
11377 2004-03-13  Benjamin Otte  <otte@gnome.org>
11378
11379         * gst/gstelement.c:
11380           add documentation note about gst_element_found_tags_for_pad not
11381           being usable in getfunctions. (see #137042)
11382
11383 2004-03-12  David Schleef  <ds@schleef.org>
11384
11385         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
11386         change API right now!  Readd gst_caps_is_simple() macro.
11387         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
11388         uninitialized variable.  I'd bet this caused crashes.
11389         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
11390
11391 2004-03-12  Johan Dahlin  <johan@gnome.org>
11392
11393         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
11394         * gst/gstcaps.h: Clean up
11395
11396         * gst/gst.c (init_post): call gst_caps_get_type() instead of
11397         _gst_caps_initalize()
11398
11399         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
11400         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
11401
11402         * gst/gststructure.c (gst_structure_get_type): Ditto
11403
11404         * gst/gststructure.h: Ditto
11405         
11406 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11407
11408         * gst/gstqueue.c: (gst_queue_init):
11409           Reset default max. values in queues. Reason is simply to avoid
11410           braindead use. If you want wider values, use the properties. The
11411           default is supposed to always work. Wider values would make this
11412           beast a memory hog by default (250 full-PAL RGB32 video frames?
11413           That's 440 MB! No thank you).
11414
11415 2004-03-10  David Schleef  <ds@schleef.org>
11416
11417         * tools/gst-run.c: (main):  Fix crash when no relevant tools
11418         were found.  (bug #136793)
11419
11420 2004-03-10  Johan Dahlin  <johan@gnome.org>
11421
11422         * gst/schedulers/gstoptimalscheduler.c
11423         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
11424         links to elements within the same group, so we can finally remove
11425         that annoying warning. Refactor the code a little bit
11426         (group_dec_links_for_element): Split out
11427
11428 2004-03-09  David Schleef  <ds@schleef.org>
11429
11430         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
11431         (bug #134863)
11432
11433 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11434
11435         * configure.ac: first bug fix due to major/minor bump
11436
11437 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11438
11439         * configure.ac: bump nano to 1
11440
11441 === release 0.7.6 ===
11442
11443 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11444
11445         * NEWS:
11446         * RELEASE:
11447         * configure.ac:
11448           releasing 0.7.6, "Almost"
11449         * po/fr.po:
11450         * po/nl.po:
11451         * tools/Makefile.am:
11452         * tools/gst-feedback-m.m:
11453           unversioned source
11454
11455 2004-03-09  Johan Dahlin  <johan@gnome.org>
11456
11457         Reviewed by: Thomas Vander Stichele
11458
11459         * gst/gstelement.c (gst_element_class_init): register second
11460         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
11461         language bindings can (de)marshall correctly.
11462
11463         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
11464
11465         * gst/gsterror.c (gst_g_error_get_type): New function
11466
11467         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
11468         with VOID:OBJECT,OBJECT,STRING 
11469
11470 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
11471
11472         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
11473         Free a leaked g_timer on early returns.
11474
11475 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11476
11477         * docs/pwg/advanced-types.xml:
11478           Add cinepak description.
11479
11480 2004-03-07  David Schleef  <ds@schleef.org>
11481
11482         * docs/random/mimetypes:  Added cinepak description
11483
11484 2004-03-07  Andy Wingo  <wingo@pobox.com>
11485
11486         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
11487
11488         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
11489         there are no links to other groups when a group is destroyed.
11490         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
11491         removed from a group, make sure the link count to elements linked
11492         to other pads is appropriately decremented. This really fixes
11493         #135672.
11494
11495         The 1.60->1.61 patch has been reapplied in light of this fix.
11496
11497         * gst/gstelement.c (gst_element_dispose): Really protect against
11498         multiple invocations this time.
11499
11500 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11501
11502         * docs/gst/gstreamer-sections.txt:
11503         * docs/gst/tmpl/gsttag.sgml:
11504           remove some deprecated functions, document some existing ones
11505         * gst/gsttag.c: (gst_tag_get_flag):
11506         * gst/gsttag.h:
11507           add accessor function
11508
11509 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11510
11511         * docs/gst/gstreamer-sections.txt:
11512         * docs/gst/tmpl/gsttag.sgml:
11513         * docs/gst/tmpl/gstxml.sgml:
11514         * gst/gsttag.c: (gst_tag_get_flag):
11515         * gst/gsttag.h:
11516
11517 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
11518
11519         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
11520         leak
11521
11522 2004-03-05  David Schleef  <ds@schleef.org>
11523
11524         * REQUIREMENTS: Add bison and flex.
11525         * configure.ac: Fix comment about bison.
11526         * docs/random/ds/0.9-suggested-changes: yer ma
11527         * tools/gst-inspect.c: (print_element_info):  Fix warning.
11528
11529 2004-03-05  Benjamin Otte  <otte@gnome.org>
11530
11531         * gst/gstelement.c: (gst_element_error_full):
11532           revert recent recursive state changing commit - messing with other
11533           elements' states is evil and should be done by apps only.
11534
11535 2004-03-05  Benjamin Otte  <otte@gnome.org>
11536
11537         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
11538           check for empty intersection instead of NULL caps
11539         (gst_element_get_compatible_pad_filtered):
11540           remove old workaround that is only a bug nowadays
11541
11542 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11543
11544         * gst/gstelement.c: (gst_element_error_full):
11545           make elements try to recursively change state to PAUSED on all
11546           parents after an error to suppress ensuing warnings
11547         * gst/parse/grammar.y:
11548           make it check if it was able to sync the state, and throw an error
11549           if not, so stuff like
11550           oggdemux ! vorbisdec ! osssink gets caught
11551
11552 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11553
11554         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
11555           it contains lib64; use AS_AC_EXPAND to handle it properly
11556
11557 2004-03-05  David Schleef  <ds@schleef.org>
11558
11559         * gst/gstcpuid_i386.s:  Remove unused code
11560         * libs/gst/getbits/getbits.c: (gst_getbits_init),
11561         (gst_getbits_newbuf): Remove MMX code
11562         * libs/gst/getbits/getbits.h: Remove MMX code
11563
11564 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
11565
11566         * debian/.cvsignore:
11567         * debian/README.Debian:
11568         * debian/changelog:
11569         * debian/control:
11570         * debian/control.in:
11571         * debian/copyright:
11572         * debian/gstreamer-core-libs-dev.files:
11573         * debian/gstreamer-core-libs.files:
11574         * debian/gstreamer-core.files:
11575         * debian/gstreamer-core.postinst:
11576         * debian/gstreamer-core.postrm:
11577         * debian/gstreamer-doc.files:
11578         * debian/gstreamer-doc.links:
11579         * debian/gstreamer-doc.lintian:
11580         * debian/gstreamer-runtime.files:
11581         * debian/gstreamer-runtime.manpages:
11582         * debian/gstreamer-runtime.postinst:
11583         * debian/gstreamer-runtime.postrm:
11584         * debian/gstreamer-tools.files:
11585         * debian/gstreamer-tools.manpages:
11586         * debian/libgstreamer-dev.files:
11587         * debian/libgstreamer0.4.1.files:
11588         * debian/libgstreamerVERSION.files:
11589         * debian/rules:
11590         Debian package info not maintained here.
11591
11592 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11593
11594         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11595         * gst/gstbin.c: (gst_bin_class_init):
11596         * gst/gstelement.c: (gst_element_class_init):
11597         * gst/gstindex.c: (gst_index_class_init):
11598         * gst/gstobject.c: (gst_object_class_init),
11599         (gst_signal_object_class_init):
11600         * gst/gstpad.c: (gst_pad_template_class_init):
11601         * gst/gstregistry.c: (gst_registry_class_init):
11602         * gst/gsturi.c: (gst_uri_handler_base_init):
11603         * gst/gstxml.c: (gst_xml_class_init):
11604         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11605         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
11606           make all signal names use dashes instead of underscore
11607
11608 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11609
11610         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
11611
11612 2004-03-03  Benjamin Otte  <otte@gnome.org>
11613
11614         * gst/schedulers/gstoptimalscheduler.c:
11615           revert last commit by Andy Wingo. It causes segfaults on unreffing
11616           in Rhythmbox. (see bug #135672)
11617
11618 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11619
11620         * po/fr.po: fix typo
11621
11622 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11623
11624         * tools/gst-inspect.c: (main): 
11625         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
11626
11627 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11628
11629         * configure.ac:
11630           get GLIB_ONLY and POPT flags for the nonversioned binaries
11631         * tools/Makefile.am:
11632           use them
11633
11634 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11635
11636         * gst/gst.c: (init_post):
11637           change so that GST_REGISTRY now is where the global registry gets
11638           saved, since that is where plugins now get attached to first, and
11639           spilled over to the user registry.  Note that in the case of using
11640           GST_REGISTRY env var, we don't want to affect any real registries
11641           beyond the one given by this var, and thus we don't set a user
11642           registry to spill to.  So make sure GST_REGISTRY is writable.
11643
11644 2004-03-01  David Schleef  <ds@schleef.org>
11645
11646         * AUTHORS:  Added some names.  Add yourself if you're missing.
11647
11648 2004-03-01  David Schleef  <ds@schleef.org>
11649
11650         * MAINTAINERS: Add
11651
11652 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
11653
11654         * configure.ac:
11655           remove whitespace
11656         * docs/gst/tmpl/gstbuffer.sgml:
11657         * docs/gst/tmpl/gstdata.sgml:
11658         * docs/gst/tmpl/gstreamer-unused.sgml:
11659         * docs/gst/tmpl/gstxml.sgml:
11660           doc update
11661         * docs/manuals.mak:
11662           add a FIXME
11663         * docs/pwg/intro-preface.xml:
11664         * docs/pwg/pwg.xml:
11665           remove GNOME
11666         * gst/gst.c: (init_post):
11667           try GST_PLUGIN_PATH paths for the _global_registry first
11668         * gst/gstelement.h:
11669           add the error message as well, otherwise (null) debug info doesn't
11670           make much sense
11671         * tools/gst-register.c: (main):
11672           spill paths to next registry if this registry is not writable
11673         * po/fr.po:
11674         * po/nl.po:
11675           translation updates
11676
11677 2004-03-01  Johan Dahlin  <johan@gnome.org>
11678
11679         * gst/gstbuffer.c (_gst_buffer_initialize): 
11680         * gst/gstdata.c (gst_data_get_type): 
11681         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
11682         instead of ref, since some applications that uses GBoxed
11683         routines depends on a function that actually returns a copy.
11684
11685 2004-02-27  Benjamin Otte  <otte@gnome.org>
11686
11687         * gst/gstbuffer.h:
11688           remove gst_buffer_free, use gst_data_unref
11689         * gst/gstdata.c: (gst_data_get_type):
11690           use refcounting in GstData GBoxed registration
11691         * gst/gstdata.h:
11692           remove gst_data_free, use gst_data_unref
11693
11694 2004-02-27  Johan Dahlin  <johan@gnome.org>
11695
11696         * gst/gstdata.c (gst_data_get_type): New function, register
11697         GstData as a GBoxed type.
11698
11699         * gst/gstdata.h (GST_TYPE_DATA): New macro
11700
11701 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
11702
11703         * Makefile.am:
11704         * gstreamer.spec.in:
11705           put back RELEASE
11706         * gst/Makefile.am:
11707           clean up non-disting of built files
11708         * testsuite/debug/commandline.c:
11709           test fix for option rename
11710
11711 2004-02-26  David Schleef  <ds@schleef.org>
11712
11713         * configure.ac:  We don't really need glib-2.3.  Also remove
11714         some unneeded checks for library functions.
11715         * gst/Makefile.am:  Instead, we need to not dist files created
11716         by glib-genmarshal.
11717
11718 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11719
11720         * configure.ac:
11721           bump glib required version to 2.3.0 for g_value_takes_boxed
11722
11723  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
11724
11725         * common/m4/gst-docs.m4
11726         change flavour text from enable to disable as enable is our default
11727         closes bug Bug 135304
11728
11729 === release 0.7.5 ===
11730  
11731  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11732  
11733         * NEWS:
11734           instate NEWS file
11735         * Makefile.am:
11736         * gstreamer.spec.in:
11737         * RELEASE:
11738           put back release
11739         * configure.ac:
11740         * docs/random/release:
11741           more updates
11742
11743 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11744
11745         * gst/gsttag.c: (_gst_tag_initialize):
11746         * po/fr.po:
11747         * po/nl.po:
11748           remove hyphen from codec tags
11749
11750 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11751
11752         * gst/parse/Makefile.am:
11753           fix dependency so that a make from a clean build works the first
11754           time
11755
11756 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11757
11758         * docs/random/release:
11759           update release strategy
11760         * po/fr.po:
11761           auto-update po file
11762         * po/nl.po:
11763           update dutch translation
11764
11765 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11766
11767         * docs/manual/debugging.xml:
11768         fix manual for new debugging system
11769
11770 2004-02-25  Andy Wingo  <wingo@pobox.com>
11771
11772         * gst/gstpad.c (gst_pad_link_prepare): Re-add
11773         gst_pad_link_prepare. Please email the list with specific reasons
11774         for reverting.
11775
11776 2004-02-24  Andy Wingo  <wingo@pobox.com>
11777
11778         * gst/gstelement.c (gst_element_dispose): Protect against multiple
11779         invocations.
11780
11781         * gst/schedulers/gstoptimalscheduler.c:
11782         I added a mess of prototypes at the top of the file by way of
11783         documentation. Some of the operations on chains and groups were
11784         re-organized.
11785
11786         (create_group): Added a type argument so if the group is enabled,
11787         the setup_group_scheduler knows what to do.
11788         (group_elements): Added a type argument here, too, to be passed on
11789         to create_group.
11790         (group_element_set_enabled): If an unlinked PLAYING element is
11791         added to a bin, we have to create a new group to hold the element,
11792         and this function will be called before the group is added to the
11793         chain. Thus we have a valid case for group->chain==NULL. Instead
11794         of calling chain_group_set_enabled, just set the flag on the group
11795         (the chain's status will be set when the group is added to it).
11796         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
11797         Setup the group scheduler when the group is enabled, not
11798         specifically when an element goes PAUSED->PLAYING. This means
11799         PLAYING elements can be added, linked, and scheduled into a
11800         PLAYING pipeline, as was intended.
11801         (add_to_group): Don't ref the group twice. I don't know when this
11802         double-ref got in here. Removing it has the potential to cause
11803         segfaults if other parts of the scheduler are buggy. If you find
11804         that the scheduler is segfaulting for you, put in an extra ref
11805         here and see if that hacks over the underlying issue. Of course,
11806         then find out what code is unreffing a group it doesn't own...
11807         (create_group): Make the extra refcount floating, and remove it
11808         after adding the element. This means that...
11809         (unref_group): Destroy when the refcount reaches 0, not 1, like
11810         every other refcounted object in the known universe.
11811         (remove_from_group): When a group becomes empty, set it to be not
11812         active, and remove it from its chain. Don't unref it again,
11813         there's no floating reference any more.
11814         (destroy_group): We have to remove the group from the chain in
11815         remove_from_group (rather than here) to break refcounting cycles
11816         (the chain always has a ref on the group). So assert that
11817         group->chain==NULL.
11818         (ref_group_by_count): Removed, it was commented out anyway.
11819         (merge_chains): Use the remove_from_chain and add_to_chain
11820         primitives to do the reparenting, instead of rolling our own
11821         implementation.
11822         (add_to_chain): The first non-disabled group in the chain's group
11823         list will be the entry point for the chain. Because buffers can
11824         accumulate in loop elements' peer bufpens, we preferentially
11825         schedule loop groups before get groups to avoid unnecessary
11826         execution of get-based groups when the bufpens are already full.
11827         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
11828         (get_group_schedule_function): Ditto.
11829         (loop_group_schedule_function): Ditto.
11830         (gst_opt_scheduler_loop_wrapper): Ditto.
11831         (gst_opt_scheduler_iterate): Ditto.
11832
11833         I understand the opt scheduler now, yippee!
11834
11835         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
11836         (gst_pad_get_name, gst_pad_set_chain_function) 
11837         (gst_pad_set_get_function, gst_pad_set_event_function) 
11838         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
11839         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
11840         (gst_pad_set_query_function, gst_pad_get_query_types) 
11841         (gst_pad_get_query_types_default) 
11842         (gst_pad_set_internal_link_function) 
11843         (gst_pad_set_formats_function, gst_pad_set_link_function) 
11844         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
11845         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
11846         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
11847         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
11848         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
11849         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
11850         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
11851         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
11852         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
11853         (gst_pad_event_default_dispatch, gst_pad_event_default) 
11854         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
11855         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
11856         (gst_pad_get_formats_default, gst_pad_get_formats): Better
11857         argument checks, and some doc fixes.
11858
11859         (gst_pad_custom_new_from_template): Um, does anyone
11860         use these functions? Actually make a custom pad instead of a
11861         normal one.
11862         (gst_pad_try_set_caps): Transpose some checks.
11863         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
11864         the pad is in negotiation.
11865         (gst_pad_try_relink_filtered): Use pad_link_prepare.
11866         
11867         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
11868
11869         * gst/gstelement.h: 
11870         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
11871         on the list.
11872
11873 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11874
11875         * gst/gstbin.c: (gst_bin_add):
11876           add error for not being able to add elements
11877
11878 2004-02-22  Julien MOUTTE <julien@moutte.net>
11879
11880         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
11881         audio-codec and video-codec.
11882
11883 2004-02-22  Benjamin Otte  <otte@gnome.org>
11884
11885         reported by: Padraig O'Briain <padraig.obriain@sun.com>
11886
11887         * autogen.sh:
11888           replace test -e with test -x for mkinstalldirs to be more portable.
11889           (fixes #134816)
11890
11891 2004-02-22  Benjamin Otte  <otte@gnome.org>
11892
11893         * gst/gstpad.c:
11894           revert last patch from Andy, it makes gst_pad_can_link_filtered much
11895           too noisy
11896         * gst/gsttag.c: (_gst_tag_initialize):
11897         * gst/gsttag.h:
11898           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
11899         * libs/gst/control/dparam.c: (gst_dparam_attach):
11900         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
11901           check that types for attached dparams match
11902
11903 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11904
11905         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
11906         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11907         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11908           fix errors
11909
11910 2004-02-20  Andy Wingo  <wingo@pobox.com>
11911
11912         * gst/gstbin.c:
11913         * gst/gstbuffer.c:
11914         * gst/gstplugin.c:
11915         * gst/registries/gstxmlregistry.c: 
11916         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
11917
11918         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
11919         (gst_element_add_pad): DEBUG->INFO, some fixes.
11920         (gst_element_get_compatible_pad_template): Just see if the
11921         templates' caps intersect, not if one is a strict subset of the
11922         other. This conforms more to what gst_pad_link_intersect() does.
11923         (gst_element_class_add_pad_template): Don't memcpy the pad
11924         template, just ref it.
11925         (gst_element_get_compatible_pad_filtered): Clean up debug messages
11926
11927         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
11928         (gst_pad_link_filtered): Debug changes.
11929         (gst_pad_link_prepare): New function, consolidated from
11930         can_link_filtered and link_filtered.
11931
11932         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
11933         look more like that of the functions in gstelement.c
11934
11935         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
11936         object, and return the empty string if object is NULL.
11937
11938         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
11939         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
11940         LOG, not DEBUG. We still get flex info on debug.
11941
11942         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
11943         debug string more verbose.
11944         (plugin_times_older_than): DEBUG->LOG.
11945
11946 2004-02-20  Julien MOUTTE <julien@moutte.net>
11947
11948         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
11949         will emit found_tag for each stream they demux with the codec.
11950
11951 2004-02-20  Benjamin Otte  <otte@gnome.org>
11952
11953         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
11954           copy navigation event correctly. Check freeing tag lists. 
11955         * gst/gstthread.c: (gst_thread_change_state):
11956           don't abort() on state changing mess - it might happen because of
11957           bugs.
11958         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
11959           use boxed functions
11960         * gst/gstvalue.h:
11961           fix GST_VALUE_HOLDS_CAPS
11962
11963 2004-02-19  David Schleef  <ds@schleef.org>
11964
11965         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
11966         and use it for GST_FUNCTION.  (bug #134750)
11967
11968 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11969
11970         * po/fr.po:
11971         * po/nl.po:
11972           updating translations
11973
11974 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11975
11976         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
11977
11978 2004-02-18  kost@imn.htwk-leipzig.de
11979
11980         reviewed by: David Schleef  <ds@schleef.org>
11981
11982         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
11983         for libgstcontrol.
11984
11985 2004-02-18  David Schleef  <ds@schleef.org>
11986
11987         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11988         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11989         (gst_dpsmooth_new): Additional fixes to get double dparams working.
11990         * tools/gst-inspect.c: (print_element_info): Support dumping of
11991         double dparam information.
11992
11993 2004-02-17  David Schleef  <ds@schleef.org>
11994
11995         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11996         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
11997         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
11998         Use GST_TYPE_CAPS in signal prototype.
11999         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
12000         Convert GST_TYPE_CAPS to boxed.
12001         * gst/gstelement.c: (gst_element_class_init):
12002         Use GST_TYPE_TAG_LIST in signal prototype.
12003         * gst/gstindex.c: (gst_index_class_init):
12004         * gst/gstindex.h:
12005         Add GST_TYPE_INDEX_ENTRY type.
12006         * gst/gstmarshal.list:
12007         Add necessary marshal types.
12008         * gst/gstpad.c: (gst_real_pad_class_init),
12009         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
12010         (gst_pad_recover_caps_error):
12011         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
12012         * gst/gststructure.c: (_gst_structure_initialize),
12013         (gst_structure_copy), (_gst_structure_copy_conditional):
12014         * gst/gststructure.h:
12015         Convert GST_TYPE_STRUCTURE to boxed.
12016         * gst/gsttag.c: (gst_tag_list_get_type):
12017         * gst/gsttag.h:
12018         Add GST_TYPE_TAG_LIST type.
12019
12020 2004-02-17  Julien MOUTTE  <julien@moutte.net>
12021
12022         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
12023         to what we agreed with david.
12024         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
12025
12026 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
12027
12028         * po/nl.po: update translation
12029
12030 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
12031
12032         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
12033           throw an error if spider is trying to play a mime type there is
12034           no decoder for
12035         * po/POTFILES.in:
12036           add gst/autoplug/gstspider.c for translation
12037
12038 2004-02-17  Julien MOUTTE  <julien@moutte.net>
12039
12040         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
12041         silently when the pad is negotiating.
12042
12043 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
12044
12045         * docs/faq/Makefile.am:
12046           add script to run gstreamer uninstalled 
12047         * docs/faq/faq.xml:
12048         * docs/faq/developing.xml:
12049         * docs/faq/gst-uninstalled:
12050           extract script to run gstreamer uninstalled
12051         * docs/manuals.mak:
12052           add EXTRA_SOURCES variable for Makefile.am's to set to
12053           use additional SOURCE files for the doc build
12054
12055 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
12056
12057         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
12058
12059 2004-02-15  Julien MOUTTE  <julien@moutte.net>
12060
12061         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
12062         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
12063         an error was thrown by osssink. Basically a state change failure for
12064         an element in a different scheduling group was considered as
12065         successful, which means that caps nego was going on and weird stuff
12066         happened. Like I wrote in the comment there, if someone wants to
12067         revert that please drop me a mail explaining why because I really see
12068         no point in keeping that broken behaviour there.
12069         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
12070         be empty, we then return NULL which will trigger a nice error when 
12071         pulling from the pad.
12072
12073 2004-02-13  David Schleef  <ds@schleef.org>
12074
12075         * libs/gst/control/dparam.c: (gst_dparam_class_init),
12076         (gst_dparam_get_property), (gst_dparam_set_property),
12077         (gst_dparam_do_update_default):
12078         * libs/gst/control/dparam.h:
12079         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
12080         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
12081         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
12082         (gst_dpsmooth_do_update_double):
12083         * libs/gst/control/dparam_smooth.h:
12084         * libs/gst/control/dparammanager.c:
12085         (gst_dpman_inline_direct_update):
12086         Add support for double dparams.
12087
12088 2004-02-13  David Schleef  <ds@schleef.org>
12089
12090         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
12091         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
12092
12093 2004-02-13  Mattias Wadman  <mattias@sudac.org>
12094
12095         reviewed by: David Schleef  <ds@schleef.org>
12096
12097         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
12098         (gst_fdsrc_init), (gst_fdsrc_set_property),
12099         (gst_fdsrc_get_property), (gst_fdsrc_get):
12100         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
12101         and sends an EOS event if file descriptor reading times out.
12102
12103 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12104
12105         * configure.ac:
12106           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
12107
12108 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12109
12110         * configure.ac: pass required libxml version as argument
12111         (bug reported by Christophe Fergeau)
12112
12113 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12114   
12115         * docs/gst/gstreamer-docs.sgml:
12116         * docs/gst/tmpl/gstxml.sgml:
12117         * docs/libs/gstreamer-libs-docs.sgml:
12118           version API docs
12119
12120 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12121
12122         * gst/gstinfo.c:
12123         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
12124         (gst_registry_pool_feature_filter):
12125         * gst/gstthread.c: (gst_thread_class_init):
12126         * gst/gstvalue.c:
12127           add includes exposed by building without libxml
12128         * gst/indexers/Makefile.am:
12129           do not build fileindex when LOADSAVE disabled; we should have
12130           a better libxml check later since fileindex depends on xml, not
12131           LOADSAVE or REGISTRY
12132         * libs/gst/control/Makefile.am:
12133           link with m
12134         * tools/Makefile.am:
12135           fix wrong source code for gst-xmlinspect
12136
12137 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12138
12139         * configure.ac:
12140           fix gcov help output
12141           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
12142         * docs/random/release:
12143           some updated releasing notes
12144         * gstreamer.spec.in:
12145           more updates
12146
12147 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12148
12149         * docs/faq/faq.xml:
12150         * docs/manual/manual.xml:
12151         * docs/pwg/pwg.xml:
12152         * docs/pwg/titlepage.xml:
12153           put version in documentation
12154
12155 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12156
12157         * tools/Makefile.am: fix man page installation
12158
12159 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12160
12161         * configure.ac:
12162           don't check for libxml when load/save and registry disabled (#105844)
12163         * gstreamer.spec.in:
12164           sync with fedora candidate spec
12165
12166 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12167
12168         * po/fr.po:
12169         * po/nl.po:
12170           replace multidisksrc with multifilesrc
12171
12172 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12173
12174         * po/POTFILES.in:
12175           update to multidisksrc => multifilesrc file renaming (#134145)
12176
12177 2004-02-11  David Schleef  <ds@schleef.org>
12178
12179         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
12180         * docs/gst/tmpl/gstpadtemplate.sgml: same
12181         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
12182         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
12183         fixing dance.
12184         * gst/gstutils.c: Remove disabled code that uses GstProps.
12185         * gst/registries/gstxmlregistry.h: same
12186         * docs/random/ds/0.9-suggested-changes: random notes
12187
12188 2004-02-11  kost@imn.htwk-leipzig.de
12189
12190         reviewed by: David Schleef  <ds@schleef.org>
12191
12192         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
12193         initialisation of clock (bug #134128)
12194
12195 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12196
12197         * configure.ac:
12198         * gst/elements/Makefile.am:
12199         * gst/elements/gstelements.c:
12200         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
12201         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
12202         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
12203         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
12204         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
12205         * gst/elements/gstmultifilesrc.h:
12206           rename multidisksrc to multifilesrc (part of #122200)
12207
12208 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12209
12210         * docs/manuals.mak:
12211           fix automake complaints
12212         * gst-element-check.m4:
12213           fix unquotedness
12214
12215 2004-02-11  David Schleef  <ds@schleef.org>
12216
12217         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
12218         * gst/gstatomic_impl.h: Disable sparc implementation.
12219
12220 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12221
12222         * gst-element-check.m4:
12223           fix underquoted macros as reported by automake 1.8.x (#133800)
12224         * configure.ac:
12225           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
12226           by autopoint (fixes #132996)
12227
12228 2004-02-10  Andy Wingo  <wingo@pobox.com>
12229
12230         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
12231         way to do inheritance.
12232         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
12233         (gst_pad_get_query_types, gst_pad_get_query_types_default):
12234         Routine docs.
12235         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
12236         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
12237         doc.
12238         (gst_pad_unlink, gst_pad_is_linked): Docs.
12239         (gst_pad_renegotiate): A brief description of capsnego.
12240         (gst_pad_try_set_caps): Document.
12241         (gst_pad_try_set_caps_nonfixed): Document.
12242         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
12243         (gst_pad_set_parent): Deprecated (although not out of the API).
12244         (gst_pad_get_parent): Deprecated, although many plugins use this.
12245         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
12246         are private and will go away in 0.9.
12247         (gst_pad_perform_negotiate): Doc.
12248         (gst_pad_link_unnegotiate): I think this is meant to be static.
12249         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
12250         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
12251         (gst_pad_get_peer): Doc updates.
12252         (gst_pad_caps_change_notify): Doc.
12253         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
12254         (gst_ghost_pad_new): Doc fixes.
12255
12256         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
12257         (gst_object_check_uniqueness): 
12258
12259         * gst/gstelement.c (gst_element_add_pad) 
12260         (gst_element_add_ghost_pad, gst_element_remove_pad) 
12261         (gst_element_remove_ghost_pad, gst_element_get_pad) 
12262         (gst_element_get_static_pad, gst_element_get_pad_list) 
12263         (gst_element_class_get_pad_template_list) 
12264         (gst_element_class_get_pad_template): Work on the docs.
12265         (gst_element_get_pad_template_list): Uses the class method.
12266         (gst_element_get_compatible_pad_template): Docs, and consolidate
12267         some test conditions. 
12268         (gst_element_get_pad_from_template): New static function.
12269         (gst_element_request_compatible_pad): Docs, and work with
12270         non-request compatible templates. 
12271         (gst_element_get_compatible_pad_filtered): Docs and remove
12272         redundant checks.
12273         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
12274         (gst_element_link_filtered, gst_element_link_many) 
12275         (gst_element_link, gst_element_link_pads) 
12276         (gst_element_unlink_many): Docs.
12277
12278 2004-02-05  Andy Wingo  <wingo@pobox.com>
12279
12280         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
12281         s/pointer/boxed/.
12282
12283         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
12284
12285         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
12286         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
12287         with the type=GST_TYPE_CAPS. This allows language bindings to know
12288         what kind of data they're dealing with.
12289
12290         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
12291         to NULL when g_value_init is called. GstCaps, which rolls its own
12292         type implementation, now does the same instead of allocating empty
12293         caps.
12294         (_gst_caps_initialize, _gst_caps_collect_value,
12295         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
12296         table methods. This allows G_VALUE_COLLECT to work.
12297
12298 2004-02-05  Andy Wingo  <wingo@pobox.com>
12299
12300         * configure.ac:
12301         * testsuite/Makefile.am (SUBDIRS): 
12302         * testsuite/ghostpads/Makefile.am: 
12303         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
12304
12305         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
12306         These two routines are the only ones that set
12307         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
12308         pad template. They should be made static, depending on ABI needs.
12309         (gst_real_pad_dispose): Handle the case of ghost pads without a
12310         parent. Assert after dealing with ghost pads that the ghost pad
12311         list is empty.
12312         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
12313         set after creation.
12314         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
12315         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
12316         functions. set_property will call add_ghost_pad/remove_ghost_pad
12317         as appropriate.
12318         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
12319
12320         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
12321         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
12322         (gst_element_remove_pad): Handle ghost pads as well.
12323         (gst_element_remove_ghost_pad): Deprecated (could be removed,
12324         depending on API-stability needs).
12325
12326 2004-02-05  Andy Wingo  <wingo@pobox.com>
12327
12328         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
12329         of course they're const
12330
12331 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12332
12333         * tools/Makefile.am:
12334         * tools/gst-feedback:
12335         * tools/gst-feedback-0.7:
12336           make gst-feedback versioned too for consistency
12337
12338 2004-02-11  David Schleef  <ds@schleef.org>
12339
12340         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12341         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
12342
12343 2004-02-10  Julien MOUTTE <julien@moutte.net>
12344
12345         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
12346         the structure does not contain a valid tag list. Adding a safety check
12347         to remove a noisy warning in that case.
12348
12349 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
12350
12351         * gst/gst.c: fix name to be in line with others
12352
12353 2004-02-09  Julien MOUTTE <julien@moutte.net>
12354
12355         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
12356         not shout that loud when len is 0. Just return 0 silently.
12357
12358 2004-02-09  Julien MOUTTE  <julien@moutte.net>
12359
12360         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
12361         because data_unref has one and I prefer the debug to be symetric.
12362         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
12363         were refed when added to the queue and unrefed only once when the queue
12364         was flushed. Now the flush handler unref the buffers two times : first
12365         unref for the ref added when pushing in the queue's tail and second
12366         unref to destroy the flushed buffer.
12367
12368 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
12369
12370         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
12371
12372 2004-02-06  David Schleef  <ds@schleef.org>
12373
12374         * docs/random/ds/0.9-suggested-changes: Random ramblings
12375         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
12376         to int before printing.
12377         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
12378         * gst/parse/parse.l: same.  See bug #129600
12379
12380 2004-02-06  David Schleef  <ds@schleef.org>
12381
12382         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
12383         (gst_index_add_entry), (gst_index_add_associationv),
12384         (gst_index_add_association): Add gst_index_add_associationv()
12385         and clean up gst_index_add_association(). #127133
12386
12387 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12388
12389         * autogen.sh: check out common with right tag if CVS/Tag exists
12390
12391 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12392
12393         * testsuite/ghostpads/ghostpads.c: (main):
12394           fix testsuite from segfaulting
12395
12396 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12397
12398         * Makefile.am: add release target
12399         * configure.ac: bump nano to 1
12400         * docs/random/release:
12401
12402 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12403
12404         * gst/gstcaps.h:
12405         * gst/gstelement.c: (gst_element_base_class_init),
12406         (gst_element_class_set_details), (gst_element_clear_pad_caps):
12407         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12408         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
12409         (gst_real_pad_dispose):
12410         * gst/gststructure.c: (gst_structure_free),
12411         (gst_structure_from_string):
12412           put reverted patch back in
12413         * gst/gstelement.c: (gst_element_remove_pad):
12414           free explicit caps if they're set
12415         * gst/gstpad.c: (_gst_pad_default_fixate_func):
12416           copy the structure when fixating
12417
12418 2004-02-05  David Schleef  <ds@schleef.org>
12419
12420         * gst/gstmarshal.list:
12421         * gst/gstpad.c: (gst_real_pad_class_init),
12422         (_gst_real_pad_fixate_accumulator):
12423         Revert POINTER->BOXED change in signal marshaller.
12424
12425 === release 0.7.4 ===
12426                                                                                 
12427 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12428                                                                                 
12429         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
12430         * configure.ac: changed for release
12431
12432 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
12433
12434         * gstreamer.spec.in:
12435           bump required version of gtk-doc
12436
12437 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
12438
12439         * gst/gstcaps.h:
12440         * gst/gstelement.c: (gst_element_base_class_init),
12441         (gst_element_class_set_details), (gst_element_clear_pad_caps):
12442         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12443         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
12444         (gst_real_pad_dispose):
12445         * gst/gststructure.c: (gst_structure_free),
12446         (gst_structure_from_string):
12447           revert patch that breaks applications, reapply after release
12448           to get this fixed properly
12449
12450 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12451
12452         * gst/gsttag.c: (_gst_tag_initialize):
12453         * gst/gsttag.h:
12454           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
12455
12456 2004-02-04  David Schleef  <ds@schleef.org>
12457
12458         Fix some memleaks:
12459         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
12460         (gst_spider_plug_from_srcpad):
12461         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
12462
12463 2004-02-04  David Schleef  <ds@schleef.org>
12464
12465         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
12466         a GstRealPad before accessing its structure members.
12467
12468 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12469
12470         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
12471         (gst_clock_get_speed):
12472         * gst/gstclock.h:
12473           reset padding, remove unused fields
12474
12475 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12476
12477         * gst/autoplug/gstspideridentity.c:
12478         (gst_spider_identity_sink_loop_type_finding):
12479           use get_allowed_caps, not get_caps (fixes #132519)
12480         * gst/elements/gsttypefind.c: (stop_typefinding):
12481           use correct order when sending buffers and seeking
12482
12483 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12484
12485         * configure.ac:
12486         * gst/gstelement.h:
12487         * gst/gstpad.h:
12488         * gst/gstqueue.h:
12489           upgrade libtool CURRENT, reset padding
12490
12491 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12492
12493         * configure.ac:
12494           bump to prerelease
12495           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
12496
12497 2004-02-04  David Schleef  <ds@schleef.org>
12498
12499         * docs/random/ds/0.9-suggested-changes: random notes
12500         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
12501         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
12502         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
12503         expansion.
12504         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
12505         (gst_filesink_get_query_types): same
12506         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
12507         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
12508         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
12509         to use new GST_PTR_FORMAT.
12510         * gst/gstelement.h: deprecate function factory macros
12511         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
12512         These are our last variadic macros that can't be replaced with
12513         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
12514         attempting to deprecate gst_element_clock_wait().
12515         * gst/gstevent.h: same
12516         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12517         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
12518         * gst/gstpad.h: deprecate function factory macros similar to above.
12519
12520 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12521
12522         * configure.ac:
12523         * tools/Makefile.am:
12524         * tools/gst-run.c: (popt_callback), (hash_print_key),
12525         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
12526         (get_candidates), (main):
12527           add new source file to generate non-versioned wrapper binaries
12528           for our tools.
12529
12530 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12531
12532         * gst/gstevent.c: (_gst_event_free):
12533           actually break; inside the switch statement
12534         * gst/parse/grammar.y:
12535           fix memleak where GValues weren't unset
12536
12537 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12538
12539         * gst/gststructure.c: (gst_structure_from_string):
12540           fix huge memleak
12541         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12542         (new_entry), (gst_type_find_element_chain):
12543         * gst/gstelement.c: (gst_element_base_class_init),
12544         (gst_element_class_set_details):
12545         * gst/gstpad.c: (gst_pad_can_link_filtered):
12546           fix smaller memleaks
12547         * gst/gstpad.c: (gst_real_pad_dispose):
12548           check that explicit caps are gone
12549         * gst/gststructure.c: (gst_structure_free):
12550           actually free the structure
12551         * gst/gstelement.c: (gst_element_clear_pad_caps):
12552           unset explicit caps
12553
12554 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12555
12556         * tools/Makefile.am:
12557           use AM_CFLAGS since all the CFLAGS are the same
12558           use AM_LDFAGS
12559
12560 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12561
12562         * docs/manual/gnome.xml:
12563           expand example a little
12564         * gst/gst.c: (gst_init_with_popt_table),
12565         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
12566           make sure popt option displays are done with right textdomain
12567           use GstPoptOption type
12568         * gst/gst.h:
12569           create GstPoptOption type
12570
12571 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12572
12573         * gst/gsterror.c: (_gst_stream_errors_init):
12574         * gst/gsterror.h:
12575           adding error type for no codec
12576         * po/POTFILES.in:
12577           add gst-inspect
12578         * po/nl.po:
12579           update dutch translation
12580         * tools/gst-inspect.c: (print_element_list), (main):
12581           do proper internationalization
12582         * tools/gst-launch.c: (idle_func):
12583           remove commented out function call
12584
12585 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12586
12587         * docs/README:
12588           add some error fixing notes
12589         * docs/gst/gstreamer-sections.txt:
12590           remove double entries
12591         * docs/gst/tmpl/gstbin.sgml:
12592         * docs/gst/tmpl/gstclock.sgml:
12593           remove override
12594         * docs/gst/tmpl/gstelement.sgml:
12595         * docs/gst/tmpl/gstindex.sgml:
12596         * docs/gst/tmpl/gstobject.sgml:
12597         * docs/gst/tmpl/gstpadtemplate.sgml:
12598         * docs/gst/tmpl/gstreamer-unused.sgml:
12599         * docs/gst/tmpl/gsttag.sgml:
12600         * docs/gst/tmpl/gstthread.sgml:
12601         * docs/gst/tmpl/gstxml.sgml:
12602         * gst/gsttag.h:
12603           sync header prototypes with c decls
12604         * gst/gsttaginterface.c:
12605           fix doc headers
12606
12607 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12608
12609         * gst/parse/Makefile.am:
12610         * gst/gstobject.h:
12611           get rid of gstmarshal.h dependency. It's not needed.
12612         * gst/gst.h:
12613         * gst/elements/gstfakesink.c:
12614         * gst/elements/gstfakesrc.c:
12615         * gst/elements/gstidentity.c:
12616         * gst/gstbin.c:
12617         * gst/gstelement.c:
12618         * gst/gstindex.c:
12619         * gst/gstobject.c:
12620         * gst/gstpad.c:
12621         * gst/gstthread.c:
12622         * gst/gstxml.c:
12623         * libs/gst/control/dparam.c:
12624         * libs/gst/control/dparammanager.c:
12625           include gstmarshal.h.
12626         Fixes #132045
12627
12628 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12629
12630         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
12631         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
12632         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
12633         * gst/elements/gstfilesrc.h:
12634           don't ref the filesrc when creating mmaped buffers. Don't keep a
12635           list of not-yet-destroyed buffers.
12636         * gst/gstbuffer.h:
12637           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
12638
12639 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12640
12641         * gst/gst.c: (init_pre):
12642           remove textdomain
12643
12644 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12645
12646         * docs/pwg/advanced-events.xml:
12647         * docs/pwg/advanced-scheduling.xml:
12648         * docs/pwg/intro-basics.xml:
12649         * docs/pwg/other-manager.xml:
12650         * docs/pwg/other-nton.xml:
12651         * docs/pwg/other-ntoone.xml:
12652         * docs/pwg/other-oneton.xml:
12653         * docs/pwg/pwg.xml:
12654           All sort of documentation... Forgot what. Point is that I want this
12655           in before I leave. The 'other-*' will be the last section and will
12656           explain issues specific to these type of elements.
12657
12658 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12659
12660         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12661         (gst_filesrc_get_read):
12662           set all the values on buffers that we can
12663
12664 2004-02-02  David Schleef  <ds@schleef.org>
12665
12666         Change usage of isblah() to g_ascii_isblah() to be more locale
12667         independent.  (#133076)
12668         * gst/gsturi.c: (gst_uri_protocol_check_internal):
12669         * gst/gstutils.c:
12670         * gst/parse/parse.l:
12671
12672 2004-02-02  Jon Trowbridge  <trow@gnu.org>
12673
12674         reviewed by: David Schleef  <ds@schleef.org>
12675
12676         Fix memory leaks:
12677         * gst/gstcaps.c: (gst_caps_to_string):
12678         * gst/registries/gstxmlregistry.c:
12679         (gst_xml_registry_add_path_list_func),
12680         (gst_xml_registry_parse_padtemplate):
12681
12682 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12683
12684         * gst/gstelement.c: (gst_element_default_error):
12685           suffix error messages with period
12686
12687 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12688
12689         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12690         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12691         * gst/gsterror.c: (gst_error_get_message):
12692           Suffix with dots
12693         * po/fr.po:
12694         * po/nl.po:
12695           Update translation files
12696
12697 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12698
12699         * gst/autoplug/gstspideridentity.c:
12700         (gst_spider_identity_sink_loop_type_finding):
12701         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12702         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12703         (gst_filesink_close_file), (gst_filesink_handle_event),
12704         (gst_filesink_chain):
12705         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12706         (gst_filesrc_get_read), (gst_filesrc_open_file):
12707         * gst/elements/gstidentity.c: (gst_identity_chain):
12708         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12709         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12710         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12711         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12712         * gst/gsterror.c: (_gst_core_errors_init),
12713         (_gst_library_errors_init), (_gst_resource_errors_init),
12714         (_gst_stream_errors_init), (gst_error_get_message):
12715         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12716         (gst_pad_recover_caps_error), (gst_pad_pull):
12717         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12718         * gst/schedulers/gstbasicscheduler.c:
12719         (gst_basic_scheduler_chainhandler_proxy),
12720         (gst_basic_scheduler_gethandler_proxy),
12721         (gst_basic_scheduler_cothreaded_chain):
12722           Suffix error messages with period.
12723           Use (NULL) instead of NULL
12724
12725 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12726
12727         * docs/gst/tmpl/gstelement.sgml:
12728         * docs/gst/tmpl/gstxml.sgml:
12729         * gst/gstelement.c: (gst_element_error_full):
12730           add element path to error
12731
12732 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12733
12734         * docs/random/mimetypes:
12735           update raw int/float info
12736         * gst/gsttag.c: (_gst_tag_initialize):
12737         * gst/gsttag.h:
12738           add GST_TAG_ENCODER
12739
12740 2004-01-30  David Schleef  <ds@schleef.org>
12741
12742         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
12743           missing (#132991)
12744
12745 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
12746
12747         reviewed by Benjamin Otte 
12748           parts of the patch submitted in bug #113913
12749
12750         * configure.ac:
12751           use AC_C_INLINE. Use = instead of == with test
12752         * examples/plugins/example.c:
12753         * gst/autoplug/gstspideridentity.c:
12754         * gst/elements/gstfdsrc.c:
12755         * gst/elements/gstfilesrc.c:
12756         * gst/elements/gstidentity.c:
12757         * gst/elements/gstmultidisksrc.c:
12758         * gst/elements/gststatistics.c:
12759         * gst/gstelement.c:
12760         * gst/gstobject.c:
12761         * gst/gstpad.c:
12762         * gst/gstpipeline.c:
12763         * gst/gstthread.c:
12764           don't end enums with a comma
12765         * gst/gstindex.c: (gst_index_compare_func):
12766           do explicit casting to gint
12767         * gst/gsttrace.c: (gst_trace_text_flush):
12768           #define strsize as a macro
12769
12770 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
12771
12772         * docs/README:
12773         * docs/gst/gstreamer-docs.sgml:
12774         * docs/gst/gstreamer-sections.txt:
12775         * docs/gst/tmpl/gstelement.sgml:
12776         * docs/gst/tmpl/gsterror.sgml:
12777         * docs/gst/tmpl/gstinterface.sgml:
12778         * docs/gst/tmpl/gstreamer-unused.sgml:
12779         * docs/gst/tmpl/gststructure.sgml:
12780         * docs/gst/tmpl/gsttag.sgml:
12781         * docs/gst/tmpl/gsttaginterface.sgml:
12782         * docs/gst/tmpl/gstvalue.sgml:
12783         make sure all API ends up in the built docs
12784         * gst/gstinterface.c:
12785         * gst/gststructure.c: (gst_structure_id_set_value),
12786         (gst_structure_set_value), (gst_structure_id_get_value):
12787         * gst/gststructure.h:
12788         * gst/gstvalue.h:
12789         sync .h with .c declarations
12790
12791 2004-01-30  Julien Moutte  <julien@moutte.net>
12792
12793         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
12794         Ronald will fix riffread.
12795
12796 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12797
12798         * docs/pwg/advanced-interfaces.xml:
12799           Added tuner interface docs.
12800
12801 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12802
12803         * docs/random/mimetypes:
12804           correct Theora information
12805         * gst/gstelement.h:
12806           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
12807
12808 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12809
12810         * gst/gstelement.c: (gst_element_error_full):
12811         * gst/gstelement.h:
12812           GST_ELEMENT_ERROR in enum -> _IN_ERROR
12813
12814 2004-01-29  Julien MOUTTE  <julien@moutte.net>
12815
12816         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
12817         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
12818         again and even before DISCONT.
12819         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
12820         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
12821         bytestream so that it's not stopping to fill the bytestream if events
12822         different than EOS or DISCONT are received. Instead it process them so
12823         that they go downstream.
12824
12825 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12826
12827         * docs/gst/tmpl/gstelement.sgml:
12828         * docs/gst/tmpl/gstreamer-unused.sgml:
12829         * docs/gst/tmpl/gstxml.sgml:
12830         * gst/autoplug/gstspideridentity.c:
12831         (gst_spider_identity_sink_loop_type_finding):
12832         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12833         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12834         (gst_filesink_close_file), (gst_filesink_handle_event),
12835         (gst_filesink_chain):
12836         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12837         (gst_filesrc_get_read), (gst_filesrc_open_file):
12838         * gst/elements/gstidentity.c: (gst_identity_chain):
12839         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12840         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12841         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12842         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12843         * gst/gstelement.h:
12844         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12845         (gst_pad_recover_caps_error), (gst_pad_pull):
12846         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12847         * gst/schedulers/gstbasicscheduler.c:
12848         (gst_basic_scheduler_chainhandler_proxy),
12849         (gst_basic_scheduler_gethandler_proxy),
12850         (gst_basic_scheduler_cothreaded_chain):
12851           gst_element_error -> GST_ELEMENT_ERROR
12852
12853 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12854
12855         * docs/Makefile.am:
12856         * docs/gst/tmpl/gstelement.sgml:
12857         * docs/gst/tmpl/gstxml.sgml:
12858         * docs/manuals.mak:
12859         * docs/pwg/advanced-request.xml:
12860         * docs/pwg/advanced-scheduling.xml:
12861         * docs/pwg/advanced-tagging.xml:
12862           fix non-validating docbook using CDATA
12863           make sure make check-local gets run first to check if it validates
12864
12865 2004-01-29  Julien MOUTTE <julien@moutte.net>
12866
12867         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
12868         handling (up and downstream).
12869         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
12870         my_filter thing.
12871
12872 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12873
12874         * docs/pwg/advanced-tagging.xml:
12875           Add docs about tag writing.
12876
12877 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12878
12879         * docs/pwg/advanced-tagging.xml:
12880           Add a part about tag reading and application signalling... Tag
12881           writing still needs to be documented.
12882         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12883           We can set file locations in READY, too.
12884
12885 2004-01-29  Julien MOUTTE <julien@moutte.net>
12886
12887         * docs/random/ds/element-checklist: Adding some notes about src
12888         events.
12889
12890 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12891
12892         * docs/random/mimetypes:
12893           Update docs to point to correct elements for various mimetypes, and
12894           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
12895           <stephane.loeuillet@tiscali.fr>.
12896
12897 2004-01-28  David Schleef  <ds@schleef.org>
12898
12899         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
12900
12901 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12902
12903         * docs/random/mimetypes:
12904           update docs for audio/x-raw-float. Add "buffer-frames=0 means
12905           undefined"
12906         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12907           make it only work in NULL.
12908         * gst/gstcaps.c:
12909           don't posion NULL caps
12910         * gst/gstelement.c: (gst_element_set_time):
12911           add debugging statement
12912         * gst/gstelement.c: (gst_element_emit_found_tag),
12913         (gst_element_found_tag_func), (gst_element_found_tags):
12914         * gst/gstelement.h:
12915           These functions take const taglists
12916         * gst/gstpad.c: (gst_pad_proxy_getcaps):
12917           fix memleak
12918         * gst/gstpad.c: (gst_pad_event_default):
12919           make more effort on handling discont and clocks, g_warn if everything
12920           fails
12921         * gst/gststructure.c: (gst_structure_remove_fields),
12922         (gst_structure_remove_fields_valist):
12923         * gst/gststructure.h:
12924           add gst_structure_remove_fields(_valist)
12925         * gst/gsttag.c:
12926           fix doc glitch
12927
12928 2004-01-28  David Schleef  <ds@schleef.org>
12929
12930         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
12931         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
12932         Fix memory leakage of gst_caps_to_string().
12933
12934         Use GST_PTR_FORMAT instead of gst_caps_to_string():
12935         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
12936         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
12937         (gst_spider_identity_sink_loop_type_finding):
12938         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12939         (find_suggest):
12940         * gst/gstpad.c: (gst_pad_try_relink_filtered),
12941         (gst_pad_set_explicit_caps):
12942         * gst/parse/grammar.y:
12943
12944 2004-01-28  David Schleef  <ds@schleef.org>
12945
12946         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
12947         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
12948         * docs/random/ds/0.9-suggested-changes: Notes from Company.
12949         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
12950         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
12951         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
12952         (gst_debug_log_default), (_gst_info_printf_extension),
12953         (_gst_info_printf_extension_arginfo):  Add printf extension.
12954         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
12955         * gst/gststructure.c: (gst_structure_to_string),
12956         (_gst_structure_parse_value): Use gst_value_deserialize() and
12957         remove old code.
12958         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
12959         (gst_value_deserialize_boolean), (gst_strtoi),
12960         (gst_value_deserialize_int), (gst_value_deserialize_double),
12961         (gst_value_deserialize_string), (gst_value_deserialize): Implement
12962         a bunch of deserialize functions and gst_value_deserialize.
12963         * gst/gstvalue.h: er, _de_serialize, not unserialize
12964         * testsuite/caps/string-conversions.c: (main): We don't currently
12965         handle (float) in caps, so convert these to (double).
12966         * testsuite/debug/Makefile.am: Add new test for the printf extension
12967         * testsuite/debug/printf_extension.c: (main): same
12968
12969 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12970
12971         * docs/random/company/time:
12972           Add some docs about clocking and time
12973
12974 2004-01-28  Julien MOUTTE <julien@moutte.net>
12975
12976         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
12977
12978 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12979
12980         * docs/pwg/advanced-clock.xml:
12981         * docs/pwg/advanced-dparams.xml:
12982         * docs/pwg/advanced-events.xml:
12983         * docs/pwg/advanced-interfaces.xml:
12984         * docs/pwg/advanced-midi.xml:
12985         * docs/pwg/advanced-request.xml:
12986         * docs/pwg/advanced-scheduling.xml:
12987         * docs/pwg/advanced-tagging.xml:
12988         * docs/pwg/advanced-types.xml:
12989         * docs/pwg/appendix-checklist.xml:
12990         * docs/pwg/building-boiler.xml:
12991         * docs/pwg/building-chainfn.xml:
12992         * docs/pwg/building-filterfactory.xml:
12993         * docs/pwg/building-pads.xml:
12994         * docs/pwg/building-props.xml:
12995         * docs/pwg/building-signals.xml:
12996         * docs/pwg/building-state.xml:
12997         * docs/pwg/building-testapp.xml:
12998         * docs/pwg/intro-basics.xml:
12999         * docs/pwg/intro-preface.xml:
13000         * docs/pwg/other-autoplugger.xml:
13001         * docs/pwg/other-sink.xml:
13002         * docs/pwg/other-source.xml:
13003         * docs/pwg/titlepage.xml:
13004           fix up id's
13005
13006 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13007
13008         * docs/95NonPath:
13009         * docs/HACKING:
13010         * docs/README:
13011         * docs/building-the-docs-on-debian:
13012           collect relevant bits of doc info
13013
13014 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13015
13016         * docs/pwg/advanced_tagging.xml:
13017           Half-assed commit so Thomas can re-arrange document IDs here to be
13018           consistent, too.
13019
13020 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13021
13022         * docs/manual/autoplugging.xml:
13023         * docs/manual/bins-api.xml:
13024         * docs/manual/bins.xml:
13025         * docs/manual/buffers-api.xml:
13026         * docs/manual/buffers.xml:
13027         * docs/manual/clocks.xml:
13028         * docs/manual/components.xml:
13029         * docs/manual/cothreads.xml:
13030         * docs/manual/debugging.xml:
13031         * docs/manual/dparams-app.xml:
13032         * docs/manual/dynamic.xml:
13033         * docs/manual/elements-api.xml:
13034         * docs/manual/elements.xml:
13035         * docs/manual/factories.xml:
13036         * docs/manual/gnome.xml:
13037         * docs/manual/goals.xml:
13038         * docs/manual/helloworld.xml:
13039         * docs/manual/helloworld2.xml:
13040         * docs/manual/init-api.xml:
13041         * docs/manual/intro.xml:
13042         * docs/manual/links-api.xml:
13043         * docs/manual/links.xml:
13044         * docs/manual/manual.xml:
13045         * docs/manual/motivation.xml:
13046         * docs/manual/pads-api.xml:
13047         * docs/manual/pads.xml:
13048         * docs/manual/plugins-api.xml:
13049         * docs/manual/plugins.xml:
13050         * docs/manual/programs.xml:
13051         * docs/manual/queues.xml:
13052         * docs/manual/quotes.xml:
13053         * docs/manual/schedulers.xml:
13054         * docs/manual/states-api.xml:
13055         * docs/manual/states.xml:
13056         * docs/manual/threads.xml:
13057         * docs/manual/typedetection.xml:
13058         * docs/manual/xml.xml:
13059           use chapter, part, section or misc as id starts for all bits
13060
13061 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13062
13063         * docs/gst/gstreamer-sections.txt:
13064           Fix up TITLE of the sections
13065
13066 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13067
13068         * docs/pwg/advanced_interfaces.xml:
13069           Add documentation on propertyprobing.
13070         * docs/pwg/advanced_events.xml:
13071         * docs/pwg/advanced_tagging.xml:
13072         * docs/pwg/building_boiler.xml:
13073         * docs/pwg/building_filterfactory.xml:
13074         * docs/pwg/pwg.xml:
13075           Move filterfactory and tagging into their own chapter, add a chapter
13076           on events. all these are empty placeholders that will be filled in
13077           some day.
13078
13079 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13080
13081         * docs/pwg/advanced_interfaces.xml:
13082           Docs for mixer interface. Also a check for website uploading.
13083
13084 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13085
13086         * docs/HACKING:
13087         * docs/Makefile.am:
13088         * docs/faq/Makefile.am:
13089         * docs/gst/Makefile.am:
13090         * docs/gst/tmpl/gstelement.sgml:
13091         * docs/gst/tmpl/gstplugin.sgml:
13092         * docs/gst/tmpl/gstreamer-unused.sgml:
13093         * docs/libs/Makefile.am:
13094         * docs/manual/Makefile.am:
13095         * docs/manuals.mak:
13096         * docs/pwg/Makefile.am:
13097         * docs/upload.mak:
13098           Separate out upload target and make it similar for
13099           both docbook and gtk-doc docs
13100
13101 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13102
13103         * docs/manuals.mak:
13104           Fix upload target to work with freedesktop
13105
13106 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13107
13108         * docs/pwg/advanced_types.xml:
13109           Add notes on creating your own types.
13110         * docs/pwg/building_boiler.xml:
13111         * docs/pwg/building_pads.xml:
13112         * docs/pwg/building_state.xml:
13113           Add some stuff about how to retrieve values from structures, how
13114           that relates to types and change layout slightly again to be almost
13115           perfect.
13116
13117 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13118
13119         * docs/pwg/advanced_dparams.xml:
13120         * docs/pwg/advanced_scheduling.xml:
13121           Change index layout slightly.
13122
13123 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13124
13125         * docs/pwg/advanced_clock.xml:
13126         * docs/pwg/advanced_interfaces.xml:
13127         * docs/pwg/advanced_midi.xml:
13128           General placeholders for now.
13129         * docs/pwg/advanced_request.xml:
13130           Explanation about sometimes and request pads.
13131         * docs/pwg/advanced_scheduling.xml:
13132           Concept of bytestream, loopfunctions and schedulers.
13133         * docs/pwg/building_boiler.xml:
13134           Add something about plugin-init.
13135
13136 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13137
13138         * docs/pwg/building_pads.xml:
13139           Fix broken docbook
13140
13141 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13142
13143         * docs/pwg/advanced_interfaces.xml:
13144         * docs/pwg/pwg.xml:
13145           Add as a placeholder for future filling-in.
13146         * docs/pwg/basics_autoplugging.xml:
13147         * docs/pwg/basics_buffers.xml:
13148         * docs/pwg/basics_elements.xml:
13149         * docs/pwg/basics_events.xml:
13150         * docs/pwg/basics_plugins.xml:
13151         * docs/pwg/basics_types.xml:
13152           Remove, because unused (this is all in intro_basics.xml).
13153         * docs/pwg/building_signals.xml:
13154           Short intro to signals + reference to GObject docs - we really
13155           shouldn't go into these sort of things to deply because we don't
13156           use them that extensively anyway.
13157         * docs/pwg/building_state.xml:
13158           Explanation of states. Benjamin, please check.
13159         * docs/pwg/building_testapp.xml:
13160           Put everything in one page - putting only a few lines of content
13161           per page doesn't really make sense.
13162
13163           Time to get into the advanced topics. ;).
13164
13165 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13166
13167         * docs/pwg/advanced_types.xml:
13168           Finish documenting the current state of mimetypes.
13169         * docs/pwg/building_boiler.xml:
13170         * docs/pwg/building_chainfn.xml:
13171         * docs/pwg/building_pads.xml:
13172         * docs/pwg/building_props.xml:
13173         * docs/pwg/building_testapp.xml:
13174           Start documenting the "how to build a simple audio filter" part
13175           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
13176           states and (maybe?) a short introduction to capsnego in the chapter
13177           on pads (building_pads.xml). Capsnego should probably be explained
13178           fully in advanced_capsnego.xml or so.
13179
13180 2004-01-26  David Schleef  <ds@schleef.org>
13181
13182         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
13183         * gst/gstpad.h: Add new function to allow element to (somewhat)
13184         specify non-fixed caps on a pad.
13185         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
13186         that I added a few weeks ago.
13187
13188 2004-01-26  David Schleef  <ds@schleef.org>
13189
13190         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
13191           making try_set_caps() work with non-fixed caps.
13192
13193 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13194
13195         * docs/pwg/advanced_types.xml:
13196         * docs/pwg/intro_basics.xml:
13197         * docs/pwg/intro_preface.xml:
13198         * docs/pwg/pwg.xml:
13199         * docs/pwg/titlepage.xml:
13200           First try to resurrect the PWG. I'm halfway integrating the mimetypes
13201           in here (docs/random/mimetypes), and will from there on work on both
13202           updating outdated parts and adding missing parts.
13203           That doesn't mean I'll fix it completely, but I'll try at least. ;).
13204
13205 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
13206
13207         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
13208           policy is set
13209
13210 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13211
13212         * gst/gstelement.h:
13213           remove gst_element_factory_get_version. It doesn't exist anymore.
13214         * gst/gstplugin.c:
13215         * gst/gstplugin.h:
13216           remove gst_plugin_set_name and change gst_plugin_get_longname to
13217           gst_plugin_get_description to match code.
13218         * gst/gsterror.h:
13219           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
13220         * gst/gstpad.c: (gst_pad_try_set_caps):
13221           make it work with nonfixed caps.
13222           Note that even in the nonfixed case the link function of the pad
13223           that tries to set caps isn't called.
13224
13225 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13226
13227         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
13228           fix bug where buffer was not assembled correctly
13229         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
13230           silence by default
13231         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
13232           only seek if there's no more buffers that could work without seeking
13233
13234 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13235
13236         * gst/gsttag.c: (_gst_tag_initialize):
13237         * gst/gsttag.h:
13238           Add application tag (for encoding/muxing app).
13239
13240 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13241
13242         * autogen.sh:
13243           make autopoint force, and libtoolize not copy
13244         * common/m4/as-docbook.m4:
13245           added docbook xml catalog setup check
13246         * common/m4/gst-doc.m4:
13247           use docbook check
13248
13249 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
13250
13251         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
13252         * gst/gsttag.h:
13253           add GstTagFlag
13254
13255 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13256
13257         * docs/gst/gstreamer-sections.txt:
13258         * docs/gst/tmpl/gst.sgml:
13259         * docs/gst/tmpl/gstbuffer.sgml:
13260         * docs/gst/tmpl/gstclock.sgml:
13261         * docs/gst/tmpl/gstelement.sgml:
13262         * docs/gst/tmpl/gstreamer-unused.sgml:
13263         * docs/gst/tmpl/gstxml.sgml:
13264           sync latest API changes to docs
13265
13266 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13267
13268         * gst/gstpluginfeature.c:
13269           fix doc snippet
13270         * tools/gst-inspect.c: (print_element_list):
13271           fix output of typefind
13272           add GPL header
13273         * tools/gst-launch.c:
13274           add GPL header
13275
13276 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13277
13278         * gst/elements/Makefile.am:
13279         * gst/elements/gstelements.c:
13280         * gst/elements/gsttypefindelement.c:
13281         * gst/elements/gsttypefindelement.h:
13282         * po/POTFILES.in:
13283         * po/fr.po:
13284         * po/nl.po:
13285           renamed gsttypefindelement to gsttypefind, conserving CVS history
13286
13287 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13288
13289         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
13290         * gst/gsttag.h:
13291           add some tags used in ogg as well
13292           fix _ in replaygain tags
13293
13294 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13295
13296         * gst/gsterror.h:
13297           fix wrong GST_LIBRARY_ERROR_ENCODE addition
13298
13299 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13300
13301         * gst/gstelement.c: (gst_element_error_full):
13302         * gst/gstelement.h:
13303           change _extended to _full
13304
13305 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13306
13307         reviewed by: <delete if not using a buddy>
13308
13309         * docs/gst/tmpl/gst.sgml:
13310         * docs/gst/tmpl/gstbuffer.sgml:
13311         * docs/gst/tmpl/gstclock.sgml:
13312         * docs/gst/tmpl/gstelement.sgml:
13313         * docs/gst/tmpl/gstreamer-unused.sgml:
13314         * docs/gst/tmpl/gstxml.sgml:
13315         * gst/gstelement.c: (gst_element_error_full):
13316         * gst/gstelement.h:
13317
13318 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13319
13320         * gst/gstelement.h: fix _gst_element_error_printf prototype
13321
13322 2004-01-20  David Schleef  <ds@schleef.org>
13323
13324         * gst/gststructure.c: (gst_structure_to_string):
13325         Convert function to use gst_value_serialize().
13326         * gst/gstvalue.c: (gst_value_serialize_list),
13327         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
13328         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
13329         (gst_value_serialize_int), (gst_value_serialize_double),
13330         (gst_string_wrap), (gst_value_serialize_string),
13331         (gst_value_serialize), (gst_value_deserialize):
13332         * gst/gstvalue.h:
13333         Add implementations for serialize.
13334
13335 2004-01-20  Julien MOUTTE  <julien@moutte.net>
13336
13337         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
13338         we want to keep that one in the future or change xvidenc.c to use 
13339         another error.
13340
13341 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13342
13343         * gst/gstelement.c: (_gst_element_error_printf):
13344         * gst/gstelement.h:
13345           privatise function
13346
13347 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13348
13349         * docs/random/error:
13350           doc explaining error system
13351         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
13352           cleanup
13353
13354 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13355
13356         * gst/gst-i18n-app.h:
13357         * gst/gst-i18n-lib.h:
13358           remove inclusion of config.h
13359         * po/POTFILES.in:
13360         * po/nl.po:
13361           add gst/gstelement.c
13362
13363 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13364
13365         * po/nl.po: updated Dutch translation
13366
13367 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13368
13369         * gst/gsterror.c: (_gst_core_errors_init),
13370         (_gst_library_errors_init), (_gst_resource_errors_init),
13371         (_gst_stream_errors_init):
13372         remove ending punctuation dots
13373
13374 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13375
13376         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
13377         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
13378         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13379         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13380         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13381         use GST_ERROR_SYSTEM
13382
13383 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13384
13385         * gst/gstelement.c: (gst_element_error_printf),
13386         (gst_element_error_extended):
13387         * gst/gstelement.h:
13388           add a helper printf function so we can have NULL values passed.
13389
13390 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13391
13392         * gst/gstelement.h:
13393           add G_STMT macros to gst_element_error, which isn't strictly
13394           necessary but people tell me to anyway.
13395
13396 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
13397
13398         * gst/Makefile.am:
13399         * gst/autoplug/gstspideridentity.c:
13400         (gst_spider_identity_sink_loop_type_finding):
13401         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
13402         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
13403         (gst_filesink_close_file), (gst_filesink_handle_event),
13404         (gst_filesink_chain):
13405         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
13406         (gst_filesrc_map_region), (gst_filesrc_get_read),
13407         (gst_filesrc_open_file):
13408         * gst/elements/gstidentity.c: (gst_identity_chain):
13409         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13410         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13411         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13412         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
13413         * gst/gst.h:
13414         * gst/gst_private.h:
13415         * gst/gstelement.c: (gst_element_class_init),
13416         (gst_element_default_error), (gst_element_error_func),
13417         (gst_element_error_extended):
13418         * gst/gstelement.h:
13419         * gst/gsterror.c: (_gst_core_errors_init),
13420         (_gst_library_errors_init), (_gst_resource_errors_init),
13421         (_gst_stream_errors_init), (gst_error_get_message):
13422         * gst/gsterror.h:
13423         * gst/gstinfo.c: (_gst_debug_init):
13424         * gst/gstmarshal.list:
13425         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13426         (gst_pad_recover_caps_error), (gst_pad_pull):
13427         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
13428         * gst/schedulers/gstbasicscheduler.c:
13429         (gst_basic_scheduler_chainhandler_proxy),
13430         (gst_basic_scheduler_gethandler_proxy),
13431         (gst_basic_scheduler_cothreaded_chain):
13432         * po/POTFILES.in:
13433         * po/fr.po:
13434         * po/nl.po:
13435           change error signal
13436           add error categories
13437
13438 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
13439
13440         * gst/gsttag.c: (_gst_tag_initialize):
13441         * gst/gsttag.h:
13442         Add replaygain tag
13443
13444 2004-01-18  Colin Walters  <walters@verbum.org>
13445
13446         * examples/retag/retag.c: Call gst_init before processing
13447         program args.  Add g_assert to _link_many call.
13448
13449 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13450
13451         * gst/gstpad.c: (gst_pad_alloc_buffer):
13452           Return a newly allocated buffer when the pad has no peer.
13453
13454 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13455
13456         * gst/gstclock.c: (gst_clock_get_time):
13457           make it compile with gcc 2.95 again.
13458           Patch by Scott Wheeler
13459
13460 2004-01-15  David Schleef  <ds@schleef.org>
13461
13462         * gst/gstcaps.h:
13463         Added gst_caps_is_simple() macro.
13464         * testsuite/caps/caps.c: (test1):
13465         * testsuite/caps/intersect2.c: (main):
13466         * testsuite/caps/intersection.c: (main):
13467         Fixes to make 'make check' work again after removing
13468         gst_caps_is_chained().
13469
13470 2004-01-15  Leif Johnson <leif@ambient.2y.net>
13471
13472         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
13473         and additions to the MIDI document.
13474
13475 2004-01-15  David Schleef  <ds@schleef.org>
13476
13477         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
13478         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
13479         of GST_RPAD_, since we don't know if it's a real or ghost pad.
13480
13481 2004-01-15  David Schleef  <ds@schleef.org>
13482
13483         * gst/gstqueue.c:
13484         * gst/gstqueue.h:
13485         Fix the spelling of "treshold" and make min_threshold actually
13486         affect the queue.
13487
13488 2004-01-15  David Schleef  <ds@schleef.org>
13489
13490         * gst/gstcaps.c:
13491         Add lots of documentation.
13492         * gst/gstcaps.h:
13493         Deprecate a few functions.
13494         * gst/gstpad.c:
13495         Removed use of deprecated functions.
13496
13497 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13498
13499         * gst/gstpad.c: (gst_pad_is_linked):
13500         * gst/gstpad.h:
13501           implement gst_pad_is_linked
13502         * gst/gstelement.h:
13503           reserve space for initiate_state_change
13504
13505 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13506
13507         * gst/autoplug/gstspideridentity.c:
13508         (gst_spider_identity_sink_loop_type_finding):
13509           break infinite loop by just returning instead of looping
13510         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
13511           set event time difference correctly. Set it to 1 second instead
13512           of 100ms to be more tolerant
13513         * gst/gstelement.c: (gst_element_set_time):
13514           add debugging output
13515
13516 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13517
13518         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
13519           query if buffers are inside the pool, ignore events
13520
13521 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13522
13523         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
13524         (gst_clock_set_speed), (gst_clock_set_active),
13525         (gst_clock_is_active), (gst_clock_reset),
13526         (gst_clock_handle_discont):
13527         * gst/gstclock.h:
13528           deprecate old interface and disable functions that aren't in use
13529           anymore.
13530         * gst/gstelement.h:
13531         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
13532         (gst_element_set_time), (gst_element_adjust_time):
13533           add concept of "element time" and functions to get/set this time.
13534         * gst/gstelement.c: (gst_element_change_state):
13535           update element time correctly.
13536         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13537           This is a debug message, not a g_critical.
13538         * gst/gstpad.c: (gst_pad_event_default):
13539           handle discontinuous events right with element time.
13540         * gst/gstscheduler.c: (gst_scheduler_state_transition):
13541           update to clocking fixes.
13542           set clocks on elements in READY=>PAUSED. The old behaviour caused
13543           a wrong element time on the first element that started playing.
13544         * gst/schedulers/gstbasicscheduler.c:
13545         (gst_basic_scheduler_class_init):
13546         * gst/schedulers/gstoptimalscheduler.c:
13547         (gst_opt_scheduler_class_init):
13548           remove code that just implements the default behaviour.
13549         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
13550           update to use new clocking functions
13551         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
13552         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
13553           update to test new element time.
13554         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
13555           use _get_allowed_caps instead of _get_caps. This catches filtered
13556           caps correctly.
13557         * testsuite/debug/commandline.c:
13558           update for new GST_DEBUG syntax.
13559         * testsuite/threads/Makefile.am:
13560           disable a test that only works sometimes.
13561
13562 2004-01-13  Julien MOUTTE <julien@moutte.net>
13563
13564         * po/LINGUAS: Adding fr.
13565         * po/fr.po: Adding french translation.
13566
13567 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13568
13569         * gst/parse/grammar.y:
13570         * po/POTFILES.in:
13571         * po/nl.po:
13572         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
13573           translate parsing error messages
13574
13575 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13576
13577         * po/POTFILES.in: adding gst-launch
13578         * po/nl.po: updated translation, all 99 strings translated
13579         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
13580         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
13581           fix strings for translation
13582
13583 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13584
13585         * gst/gst.c:
13586           - capitalize beginnings of popt options
13587           - fix strings for translation
13588           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
13589
13590 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13591
13592         * po/README: add some notes on how to update translations
13593
13594 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13595
13596         * ABOUT-NLS: removed, is autogenerated from autopoint
13597         * autogen.sh: add autopoint stuff
13598         * configure.ac: fix up gettext stuff
13599         * gst/Makefile.am: add i18n headers to noinst_HEADERS
13600         * gst/elements/gsttypefindelement.c: add header include
13601         * gst/gettext.h: add header, copy from system-installed header
13602         * gst/gst-i18n-app.h: to be included by each app having translations
13603         * gst/gst-i18n-lib.h: to be included by each lib having translations
13604         * gst/gst.c: (init_pre): fix up gettext calls
13605         * gst/gst_private.h: remove i18n stuff, moving to separate headers
13606         * po/LINGUAS: the new way to specify translations present
13607         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
13608         * po/Makevars: the variables filled in for GStreamer
13609         * po/POTFILES.in: added new files with translations
13610         * po/de.po: has new strings
13611         * po/nl.po: readded, has new strings
13612
13613 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13614
13615         * gst/gsttag.c: fix some strings marked for translation
13616
13617 2004-01-13  Iain <iain@prettypeople.org>
13618
13619         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
13620         group when we add an element to it, cos we unref it when we remove one
13621
13622 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
13623
13624         * testsuite/debug/commandline.c: (debug_not_reached):
13625         * testsuite/debug/output.c: (check_message):
13626           fix testsuite
13627
13628 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13629
13630         * examples/cutter/.cvsignore:
13631         * examples/helloworld/.cvsignore:
13632         * examples/launch/.cvsignore:
13633         * examples/manual/.cvsignore:
13634         * examples/mixer/.cvsignore:
13635         * examples/pingpong/.cvsignore:
13636         * examples/plugins/.cvsignore:
13637         * examples/queue/.cvsignore:
13638         * examples/queue2/.cvsignore:
13639         * examples/queue3/.cvsignore:
13640         * examples/queue4/.cvsignore:
13641         * examples/retag/.cvsignore:
13642         * examples/thread/.cvsignore:
13643         * examples/typefind/.cvsignore:
13644         * examples/xml/.cvsignore:
13645         * gst/.cvsignore:
13646         * gst/autoplug/.cvsignore:
13647         * gst/elements/.cvsignore:
13648         * gst/indexers/.cvsignore:
13649         * gst/parse/.cvsignore:
13650         * gst/registries/.cvsignore:
13651         * gst/schedulers/.cvsignore:
13652         * libs/gst/bytestream/.cvsignore:
13653         * libs/gst/control/.cvsignore:
13654         * libs/gst/getbits/.cvsignore:
13655         * tests/.cvsignore:
13656         * tests/bufspeed/.cvsignore:
13657         * tests/instantiate/.cvsignore:
13658         * tests/memchunk/.cvsignore:
13659         * tests/muxing/.cvsignore:
13660         * tests/sched/.cvsignore:
13661         * tests/seeking/.cvsignore:
13662         * tests/threadstate/.cvsignore:
13663         * testsuite/.cvsignore:
13664         * testsuite/caps/.cvsignore:
13665         * testsuite/cleanup/.cvsignore:
13666         * testsuite/dynparams/.cvsignore:
13667         * testsuite/plugin/.cvsignore:
13668         * tools/.cvsignore:
13669           update - this is huge, because it includes *.bb, *.bbg and *.da files
13670           which are generated for gcov.
13671
13672 2004-01-11  David Schleef  <ds@schleef.org>
13673
13674         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
13675         a function to parse integers in ways that strto[u]l() does not.
13676
13677 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13678
13679         * tools/gst-inspect.c: (print_caps):
13680           improve output of caps a bit
13681
13682 2004-01-11  David Schleef  <ds@schleef.org>
13683
13684         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
13685         inherit correct flags (READONLY and DONTKEEP).
13686
13687 2004-01-11  David Schleef  <ds@schleef.org>
13688
13689         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
13690         (gst_filesrc_map_region):
13691         * gst/gstbuffer.c: (_gst_buffer_initialize),
13692         (_gst_buffer_sub_free), (gst_buffer_default_copy),
13693         (gst_buffer_new), (gst_buffer_create_sub),
13694         (gst_buffer_is_span_fast), (gst_buffer_span):
13695         * gst/gstbuffer.h:
13696         Change GstBuffer private structure element names. (all files)
13697         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
13698         (gst_queue_link):
13699         * gst/gstqueue.h:
13700         Implement getcaps/pad_link functions that handle the case where
13701         there are data in the queue.
13702
13703 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13704
13705         * gst/elements/gstbufferstore.c:
13706           initialize debugging structure correctly
13707         * gst/elements/gsttee.c: (gst_tee_set_property):
13708           g_object_notify when property was changed
13709         * gst/elements/gsttypefindelement.c:
13710         (gst_type_find_element_change_state):
13711           clear caps correctly
13712
13713 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13714
13715         * gst/gstqueue.c: (gst_queue_init):
13716           Use better defaults for when a queue should block. This
13717           gets rid of jerky playback for quite a few files.
13718           It takes more memory.
13719
13720 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
13721
13722         (gst_xml_registry_parse_padtemplate):
13723           make critical message slightly more useful
13724
13725 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13726
13727         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
13728         (gst_debug_message_get), (gst_debug_log_default):
13729         * gst/gstinfo.h:
13730           Change gst_debug_log(_valist) to take a const format string.
13731           Change prototype of log function and functions using those to 
13732           take a GstDebugMessage instead of a string that requires using
13733           gst_debug_message_get.
13734
13735 2004-01-08  David Schleef  <ds@schleef.org>
13736
13737         * Makefile.am:
13738         * configure.ac:
13739         Add option --enable-gcov to build GStreamer with -fprofile-arcs
13740         and -ftest-coverage, which allows gcov to show information about
13741         testsuite coverage.
13742
13743 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13744
13745         * gst/gstutils.h:
13746           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
13747           GST_PARENT_CALL_WITH_DEFAULT
13748         * gst/elements/gstaggregator.c: 
13749         * gst/elements/gstbufferstore.c: 
13750         * gst/elements/gstfakesink.c: 
13751         * gst/elements/gstfakesrc.c: 
13752         * gst/elements/gstfdsink.c: 
13753         * gst/elements/gstfdsrc.c: 
13754         * gst/elements/gstfilesink.c: 
13755         * gst/elements/gstfilesrc.c: 
13756         * gst/elements/gstidentity.c: 
13757         * gst/elements/gstmd5sink.c: 
13758         * gst/elements/gstmultidisksrc.c:
13759         * gst/elements/gstpipefilter.c: 
13760         * gst/elements/gstshaper.c:
13761         * gst/elements/gststatistics.c:
13762         * gst/elements/gsttee.c:
13763         * gst/elements/gsttypefindelement.c:
13764           use them.
13765
13766 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
13767
13768         * docs/gst/gstreamer-docs.sgml: remove props
13769         * docs/gst/gstreamer-sections.txt: remove props
13770         * docs/gst/tmpl/gst.sgml:
13771         * docs/gst/tmpl/gstbin.sgml:
13772         * docs/gst/tmpl/gstbuffer.sgml:
13773         * docs/gst/tmpl/gstcaps.sgml:
13774         * docs/gst/tmpl/gstclock.sgml:
13775         * docs/gst/tmpl/gstelement.sgml:
13776         * docs/gst/tmpl/gstindex.sgml:
13777         * docs/gst/tmpl/gstobject.sgml:
13778         * docs/gst/tmpl/gstpad.sgml:
13779         * docs/gst/tmpl/gstpadtemplate.sgml:
13780         * docs/gst/tmpl/gstreamer-unused.sgml:
13781         * docs/gst/tmpl/gstthread.sgml:
13782         * docs/gst/tmpl/gstxml.sgml:
13783           sync with code reorganization
13784
13785 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
13786
13787         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13788         Make the 'Could not find compatible pad' message more informative.
13789
13790 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13791                                                                                 
13792         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
13793           Fix for if we pass NULL as property to location.
13794         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
13795         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
13796           Fix for instantiate-test (see below).
13797         * gst/gststructure.c: (_gst_structure_parse_value):
13798           Fix compile error on gcc-2.96.
13799         * configure.ac:
13800         * tests/Makefile.am:
13801         * tests/instantiate/Makefile.am:
13802         * tests/instantiate/create.c: (create_all_elements), (main):
13803           Add a test that instantiates all elements. This makes it easy to
13804           track dead code for old API/design (like setting event functions
13805           on sink pads and so on).
13806
13807 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
13808
13809         * gst/gstcaps.c: (gst_caps_append_structure):
13810           Move the poisoning to allow a NULL structure
13811         * gst/gstevent.c: (_gst_event_free):
13812           When freeing a navigation event, free the structure
13813           also
13814
13815 2004-01-04  David Schleef  <ds@schleef.org>
13816
13817         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13818         Remove usage of gst_pad_proxy_fixate.
13819         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
13820         (gst_caps_split_one), (gst_caps_replace):
13821         Add poisoning code.
13822         * gst/gstmarshal.list:
13823         Add pointer__pointer for fixate signal
13824         * gst/gstpad.c: (gst_real_pad_class_init),
13825         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
13826         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
13827         (gst_pad_set_explicit_caps), (gst_pad_template_new):
13828         Add poisoning code. Add fixate signal on RealPad. Change
13829         set_explicit_caps() to take const GstCaps, like try_set_caps().
13830         * gst/gstpad.h:
13831         * testsuite/caps/Makefile.am:
13832         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
13833
13834 2004-01-03  David Schleef  <ds@schleef.org>
13835
13836         * gst/elements/gsttypefindelement.c:
13837         (gst_type_find_element_have_type), (gst_type_find_element_init):
13838         Use gst_pad_use_explicit_caps for src pad.
13839         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
13840         before using it.
13841
13842 2004-01-03  David Schleef  <ds@schleef.org>
13843
13844         * gst/gstelement.c: (gst_element_link_pads_filtered),
13845         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
13846         that linking was successful.
13847         * gst/gstpad.c: (gst_pad_link_free),
13848         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
13849         (gst_pad_link_try), (gst_pad_link_unnegotiate),
13850         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
13851         GstPadLinkReturn correctly between functions, and don't fail
13852         when DELAYED is used (DELAYED is very important).  Better
13853         cleanup on unlinking and unnegotiation.  Should fix some spider
13854         bugs.
13855
13856 2004-01-02  David Schleef  <ds@schleef.org>
13857
13858         * gst/gstelement.c: (gst_element_class_init),
13859         (gst_element_base_class_init): ->padtemplates should be cleared
13860         in base_init, since we need to have a fresh list for every
13861         class.  (Alternately, we chould copy the list and share the
13862         actual pad templates (not the list), but that would require
13863         changing every plugin to move pad template registration from
13864         base_init to class_init.)
13865
13866 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13867
13868         * gst/gstelement.c: (gst_element_class_add_pad_template):
13869           Refuse registering a pad template if another pad template
13870           with the same name already exists (#114715).
13871
13872 2004-01-02  David Schleef  <ds@schleef.org>
13873
13874         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
13875         (gst_caps_is_equal_fixed): Add new function.
13876         * gst/gstcaps.h: ditto.
13877         * gst/gstpad.c: (gst_real_pad_class_init),
13878         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
13879         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
13880         check new caps against existing caps -- if they're the same, return
13881         OK without renegotiating.  caps-nego-failed signal fixed so that
13882         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
13883         to save an extra caps copy.  Don't complete negotiation if a pad
13884         link function returns DELAYED.
13885
13886 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13887
13888         * gst/gstpad.c: (gst_pad_try_relink_filtered):
13889           Fix wrong g_return_if_fail
13890
13891 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
13892
13893         * gst/gstbin.c: (gst_bin_class_init):
13894         Change the marshalling of element_added/element_removed
13895         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
13896         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
13897
13898 2004-01-01  David Schleef  <ds@schleef.org>
13899
13900         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13901         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
13902         (gst_pad_use_explicit_caps):
13903         * gst/gstpad.h:
13904         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
13905         to use an internal getcaps and link fuction so that negotiation
13906         always results in the explicitly set caps.
13907         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
13908         are particularly useful for decoders.
13909
13910 2003-12-31  David Schleef  <ds@schleef.org>
13911
13912         * gst/elements/gstidentity.c: (gst_identity_class_init),
13913         (gst_identity_init), (gst_identity_chain),
13914         (gst_identity_set_property), (gst_identity_get_property):
13915         * gst/elements/gstidentity.h:
13916         * gst/gstqueue.c: (gst_queue_init):
13917           Negotiation fixes.
13918
13919 2003-12-31  David Schleef  <ds@schleef.org>
13920
13921         * gst/gstcaps.c: (gst_caps_intersect),
13922         (_gst_caps_normalize_foreach), (gst_caps_normalize):
13923           Implement gst_caps_normalize().
13924         * testsuite/caps/normalisation.c: (main):
13925           Add an additional test
13926
13927 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13928
13929         * gst/gstqueue.c: (gst_queue_init):
13930           use gst_pad_proxy_getcaps()
13931
13932 2003-12-31  David Schleef  <ds@schleef.org>
13933
13934         * gst/elements/gstshaper.c: (gst_shaper_link):
13935         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13936         * gst/gstqueue.c: (gst_queue_link):
13937           Negotiation fixes.
13938
13939 2003-12-31  David Schleef  <ds@schleef.org>
13940
13941         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
13942         * gst/gstpad.h: Add functions that are useful as default pad
13943         link and fixate functions for elements.
13944
13945 2003-12-30  David Schleef  <ds@schleef.org>
13946
13947         * gst/gstpad.c: (gst_pad_link_try):
13948           Fix segfault when attempting to return to old caps
13949
13950 2003-12-29  David Schleef  <ds@schleef.org>
13951
13952         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
13953         (gst_caps_structure_simplify), (gst_caps_simplify):
13954         * gst/gstcaps.h:
13955           Add simplify function
13956         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
13957         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
13958         * gst/gstpad.h:
13959           Copy over srcnotify, sinknotify when calling old pad_link
13960           functions.  Add new is_negotiated() function.
13961         * gst/gststructure.c: (gst_structure_copy):
13962           Fix an incredibly stupid bug that should have been noticed
13963           weeks ago.  _copy() returned the argument, not the new copy.
13964
13965 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13966
13967         * gst/gstcaps.c: (gst_caps_append):
13968           add sanity checks
13969         * gst/gstcaps.h: (gst_caps_debug):
13970           remove, it doesn't exist anymore.
13971         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
13972         (gst_element_threadsafe_properties_post_run):
13973           make debugging messages not clutter up THREAD debug category
13974         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
13975         (gst_element_change_state):
13976           update to new caps API
13977         * gst/gstinterface.c: (gst_implements_interface_cast):
13978           don't put vital code in g_return_if_fail
13979         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
13980         (gst_pad_link_filtered):
13981           add pst_pad_try_link and use it.
13982         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
13983           implement correctly, deprecate first one.
13984         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
13985           add and implement.
13986         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
13987           implement.
13988         (gst_pad_get_negotiated_caps):
13989           add and implement. Make GST_PAD_CAPS call this function.
13990         (gst_pad_get_caps):
13991           remove unneeded check..
13992         (gst_pad_recover_caps_error):
13993           disable, always return FALSE.
13994         (gst_real_pad_dispose):
13995           don't free caps and appfilter anymore, they're unused.
13996         * gst/gstpad.h:
13997           Reflect changes mentioned above.
13998         * gst/gstsystemclock.c: (gst_system_clock_wait):
13999           Make 'clock is way behind' a debugging message.
14000         * gst/gstthread.c: (gst_thread_change_state):
14001           Fix debugging message
14002
14003 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
14004
14005         * gst/gstinfo.h:
14006           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
14007         * docs/gst/tmpl/gstreamer-unused.sgml:
14008           removed all traces of cvs conflicts
14009
14010 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
14011
14012         * configure.ac:
14013         * gst/schedulers/cothreads_compat.h:
14014         * libs/Makefile.am:
14015           remove last instances of wingo cothread usage
14016
14017 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
14018
14019         * gst/gstplugin.c:
14020         * gst/gstversion.h.in:
14021         * gst/parse/grammar.y:
14022           change comment block from /** to /* when not gtk-doc comments
14023
14024 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
14025
14026         * gst/gst.c: whitespace and doc style fixes
14027
14028 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
14029
14030         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
14031
14032 2003-12-24  Colin Walters  <walters@verbum.org>
14033
14034         * gst/elements/gsttypefindelement.c:
14035           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
14036           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
14037           Don't double-free caps.
14038
14039 2003-12-23  David Schleef  <ds@schleef.org>
14040
14041         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
14042           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
14043           Many little fixes and additions of debug statements to
14044           get rhythmbox working.
14045
14046 2003-12-23  Colin Walters  <walters@verbum.org>
14047
14048         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
14049         Use GST_PAD_LINK_SUCCESSFUL.
14050
14051 2003-12-23  David Schleef  <ds@schleef.org>
14052
14053         * gst/elements/gstaggregator.c:
14054         * gst/elements/gsttee.c:
14055           Use gst_pad_proxy_getcaps().
14056         * gst/gstpad.c:
14057         * gst/gstpad.h:
14058           Add gst_pad_proxy_getcaps(), which filter elements can use
14059           as a generic getcaps implementation.
14060           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
14061           was advertised.
14062
14063 2003-12-23  David Schleef  <ds@schleef.org>
14064
14065         * gst/gstpad.c:
14066           Rearrange/rewrite much of the pad negotiation code, since it
14067           resembled pasta.  This actually changes the way some
14068           negotiation works, since the previous code was inconsistent
14069           depending on how it was invoked.  Add (internal) structure
14070           GstPadLink, which is used to hold some information (more in
14071           the future) about the link between two pads.  Fixes a number
14072           of bugs, including random lossage of filter caps when the
14073           initial negotiation is delayed.  A few functions are still
14074           unimplemented.
14075         * gst/gstpad.h:
14076           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
14077           these when testing GstPadLinkReturn values instead of comparing
14078           directly.
14079
14080 2003-12-23  David Schleef  <ds@schleef.org>
14081
14082         * gst/gstvalue.c: 
14083         * gst/gstvalue.h:
14084           Rearrange lots of code.  Change registration of compare function
14085           into registration of compare/serialize/deserialize functions.
14086           Doesn't include implementation of gst_value_[de]serialize(),
14087           but that should be easy.
14088
14089 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
14090
14091         * docs/gst/gstreamer-sections.txt:
14092         * docs/gst/tmpl/gstprops.sgml: removed
14093         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
14094           David removed props and caps code, so let's remove their docs as well.
14095           Removed all no longer existing symbols from gstreamer-sections.txt
14096           
14097 2003-12-22  Colin Walters  <walters@verbum.org>
14098
14099         * gst/gsttaginterface.c, gst/gsttaginterface.h,
14100           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
14101           of tags directly.
14102
14103 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14104
14105         * gst/elements/gstelements.c:
14106           Set ranks of elements to NONE, so the autoplugger doesn't use them.
14107         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
14108           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
14109           gst_caps (peer).
14110
14111 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14112
14113         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
14114         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
14115         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
14116         (gst_spider_identity_sink_loop_type_finding):
14117         * gst/autoplug/gstspideridentity.h:
14118           Fix autoplugging in spider element, so it works with new caps.
14119           This was mainly caused by identifying empty caps incorrectly.
14120
14121 2003-12-22  David Schleef  <ds@schleef.org>
14122
14123         * gststructure.c, gstvalue.c, gstvalue.h: Add
14124           gst_value_init_and_copy() and use it, to avoid silly mistakes in
14125           using g_value_copy()
14126
14127 2003-12-21  David Schleef  <ds@schleef.org>
14128
14129         * many, many files: Merge CAPS branch.  This includes:
14130           - implemention of GstValue and several GstValue types
14131           - implemention of GstStructure
14132           - entire rewrite of GstCaps
14133           - removal of GstProps
14134           - many changes to GstPad to compensate for new caps paradigm
14135           - removal of GstBufferpool
14136         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
14137         gstvalue.h, gst/gstcaps[2]*.[ch]:
14138           - rename gstcaps2.[ch] to gstcaps.[ch]
14139
14140 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
14141
14142         * gst/gstqueue.c: (gst_queue_handle_pending_events),
14143         (gst_queue_chain), (gst_queue_handle_src_event):
14144           implement timeout for sending events. Workaround for if the
14145           pipeline on this queue is not passing any data.
14146
14147 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
14148                                                                                 
14149         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
14150         * moved CVS to freedesktop.org