valgrind more tests
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
2
3         * check/Makefile.am:
4         * check/gst/gstiterator.c: (GST_START_TEST):
5         * check/gst/gstsystemclock.c: (GST_START_TEST),
6         (gst_systemclock_suite):
7         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
8         * gst/gstclock.c:
9           valgrind more tests
10
11 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12
13         * check/elements/.cvsignore:
14         * check/elements/gstfakesrc.c:
15           rename to name of element
16         * check/elements/identity.c: (chain_func), (event_func),
17         (setup_identity), (cleanup_identity), (GST_START_TEST),
18         (identity_suite), (main):
19           add a test for identity
20         * check/Makefile.am:
21         * pkgconfig/Makefile.am:
22         * pkgconfig/gstreamer-check.pc.in:
23         * pkgconfig/gstreamer-check-uninstalled.pc.in:
24         * gst/check:
25         * gst/Makefile.am:
26         * configure.ac:
27           move the check stuff to a library that gets installed
28         * check/gst-libs/controller.c: (GST_START_TEST):
29         * check/gst-libs/gdp.c:
30         * check/gst/gst.c: (GST_START_TEST):
31         * check/gst/gstbin.c:
32         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
33         * check/gst/gstbus.c:
34         * check/gst/gstcaps.c: (GST_START_TEST):
35         * check/gst/gstelement.c:
36         * check/gst/gstghostpad.c:
37         * check/gst/gstiterator.c:
38         * check/gst/gstmessage.c:
39         * check/gst/gstminiobject.c: (thread_ref), (GST_START_TEST):
40         * check/gst/gstobject.c:
41         * check/gst/gstpad.c: (GST_START_TEST):
42         * check/gst/gststructure.c: (GST_START_TEST):
43         * check/gst/gstsystemclock.c: (GST_START_TEST),
44         (gst_systemclock_suite):
45         * check/gst/gsttag.c: (gst_tag_suite):
46         * check/gst/gstvalue.c:
47         * check/pipelines/cleanup.c:
48         * check/pipelines/simple_launch_lines.c:
49         * check/states/sinks.c:
50           change include statement
51
52         * docs/gst/gstreamer-sections.txt:
53         * docs/gst/tmpl/gstpad.sgml:
54           document more pad stuff
55         * gst/gstminiobject.c: (gst_mini_object_ref),
56         (gst_mini_object_unref):
57           debug refcounting
58
59 2005-08-19  Stefan Kost  <ensonic@users.sf.net>
60
61         * docs/gst/tmpl/gst.sgml:
62         * gst/gst.c:
63           eliminate another tmpl file, fix spelling in the long-description
64
65 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
66
67         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
68         (test_event), (timediff), (gstevents_suite):
69           Should fix build on 64-bit arch's
70
71 2005-08-18  Andy Wingo  <wingo@pobox.com>
72
73         Make sure that when a pipeline goes to PLAYING, that data has
74         actually hit the sink.
75
76         * check/states/sinks.c (test_sink): A sink that doesn't get any
77         data shouldn't return SUCCESS for going to either PLAYING or
78         PAUSED. Test also the return values on the way back down.
79
80         * gst/gstelement.c (gst_element_set_state): When changing the
81         state of an element currently changing state asynchronously, go to
82         lost-state after commiting the pending state. Makes future calls
83         to get_state continue to return ASYNC.
84
85         * gst/base/gstbasesink.c (gst_base_sink_change_state): Return
86         ASYNC when going to PLAYING if we still don't have preroll, as can
87         happen with live sources.
88
89 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
90
91         * docs/pwg/advanced-types.xml:
92           Hack long paragraph into 2 chunks as a workaround for buggy
93           jadetex version in sid and breezy that loops infinitely and
94           eats all RAM.
95
96 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
97
98         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
99         (test_event), (timediff), (gstevents_suite):
100           Provide more error margin in clock measurements to allow for 
101           g_get_current_time inaccuracies.
102
103 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
104
105         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
106         (test_event), (timediff), (gstevents_suite):
107            Fix error message output so I might be able to tell why the
108            test works here but fails on the build farm.
109
110 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
111
112         * check/Makefile.am:
113         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
114         (test_event), (timediff), (gstevents_suite), (main):
115           I wrote a test!
116
117         * docs/design/part-seeking.txt:
118           Spelling correction
119
120         * docs/gst/tmpl/gstevent.sgml:
121         * docs/gst/tmpl/gstfakesrc.sgml:
122           Docs updates.
123
124         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
125           Treat a buffer-without-newsegment the same as a receiving 
126           a newsegment not in time format, and disable syncing to the clock
127           with a warning.
128
129         * gst/gstbus.c: (gst_bus_set_sync_handler):
130           Assert if anyone tries to replace the existing sync_handler for bus, 
131           as only the owner should be setting it.
132
133         * gst/gstevent.h:
134           Have a fixed set of custom event enums with events identified by
135           their structure name (as in 0.8), rather than a free-for-all
136           allowing collisions between enum values from different plugins.
137
138         * gst/gstpad.c: (gst_pad_class_init):
139           Docs change.
140           
141         * gst/gstqueue.c: (gst_queue_handle_sink_event):
142           Handle out-of-band downstream events from the sending thread.
143
144 2005-08-17  Andy Wingo  <wingo@pobox.com>
145
146         * gst/gstpipeline.c (gst_pipeline_change_state): Interpret
147         play-timeout==0 to mean no timeout at all. In that case, don't
148         bother with a get_state or a warning, just return directly, even
149         if it's ASYNC.
150
151         * gst/base/gstbasetransform.c: Debug changes.
152
153         * gst/gstutils.h:
154         * gst/gstutils.c (gst_bin_watch_for_state_change): Add function to
155         ensure bins post state change messages. A bit of a hack but I can't
156         think of a way to avoid it.
157
158         * check/gst/gstbin.c (test_watch_for_state_change): Added test.
159
160 2005-08-16  Andy Wingo  <wingo@pobox.com>
161
162         * gst/base/gstadapter.h:
163         * gst/base/gstadapter.c (gst_adapter_take): New function, like
164         peek() but you own the data. Not terribly efficient atm.
165
166 2005-08-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
167
168         * gst/gstutils.c: (gst_element_found_tags_for_pad), (push_and_ref),
169         (gst_element_found_tags):
170         * gst/gstutils.h:
171           Add two utility functions for tag handling.
172
173 2005-08-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
174
175         * docs/manual/advanced-dataaccess.xml:
176         * docs/manual/basics-helloworld.xml:
177           Fix docs to use _bin_add() before _link(), which fixes the examples
178           with recent core versions (reported by Madhan Raj M
179           <raj_madan@rediffmail.com>, #313199).
180
181 2005-08-16  Wim Taymans  <wim@fluendo.com>
182
183         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
184         Added subtract checks.
185
186         * docs/design/part-events.txt:
187         Some more docs about newsegment
188
189         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
190         Fix FIXME
191
192         * gst/gstcaps.c: (gst_caps_to_string):
193         Add comments, cleanups.
194         
195         * gst/gstelement.c: (gst_element_save_thyself):
196         cleanups
197         
198         * gst/gstvalue.c: (gst_value_collect_int_range),
199         (gst_string_unwrap), (gst_value_union_int_int_range),
200         (gst_value_union_int_range_int_range),
201         (gst_value_intersect_int_int_range),
202         (gst_value_intersect_int_range_int_range),
203         (gst_value_intersect_double_double_range),
204         (gst_value_intersect_double_range_double_range),
205         (gst_value_intersect_list), (gst_value_subtract_int_int_range),
206         (gst_value_subtract_int_range_int),
207         (gst_value_subtract_double_range_double),
208         (gst_value_subtract_double_range_double_range),
209         (gst_value_subtract_from_list), (gst_value_subtract_list),
210         (gst_value_can_compare), (gst_value_compare_fraction):
211         Cleanups, add comments, remove unneeded asserts.
212
213 2005-08-15  Thomas Vander Stichele  <thomas at apestaart dot org>
214
215         * tools/gst-launch.c: (event_loop):
216           don't convert NULL structures to strings
217
218 2005-08-15  Stefan Kost  <ensonic@users.sf.net>
219
220         * docs/gst/gstreamer-sections.txt:
221           made some defines private
222         * docs/gst/tmpl/gstconfig.sgml:
223         * docs/gst/tmpl/gstqueue.sgml:
224         * docs/gst/tmpl/gsttaglist.sgml:
225         * docs/gst/tmpl/gsttypes.sgml:
226         * docs/gst/tmpl/gstutils.sgml:
227         * docs/pwg/appendix-porting.xml:
228         * gst/base/gstbasesink.h:
229         * gst/base/gstbasesrc.c:
230         * gst/base/gstbasesrc.h:
231         * gst/elements/gstfakesink.c: (gst_fake_sink_class_init):
232         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init):
233         * gst/gstelement.c: (gst_element_class_init):
234         * gst/gstpad.c: (gst_pad_class_init):
235         * gst/gstqueue.c: (gst_queue_class_init):
236         * gst/gstxml.c: (gst_xml_class_init):
237           documented all undocumented signal inline
238         * libs/gst/controller/gst-controller.h:
239           added padding
240
241 2005-08-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
242
243         * docs/pwg/appendix-porting.xml:
244           Document _set_link_function -> _set_setcaps_function.
245
246 2005-08-15  Thomas Vander Stichele  <thomas at apestaart dot org>
247
248         * check/Makefile.am:
249           add a .check target for running the check
250         * check/gst-libs/controller.c: (GST_START_TEST):
251           cosmetic fixups
252         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
253           complete checks for gstbuffer; would be nice if I could get the
254           gcov stuff to work so I can see if I actually completed gstbuffer.c
255         * check/gstcheck.h:
256           add ASSERT_BUFFER_REFCOUNT
257
258 2005-08-13  Tim-Philipp Müller  <tim at centricular dot net>
259
260         * docs/gst/gstreamer-sections.txt:
261         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
262         * gst/gsttag.h:
263           Add GST_TAG_LANGUAGE_CODE as we have in 0.8, and don't
264           spew out a warning if a tag that is already registered
265           is re-registered, unless it is re-registered with a 
266           different type (#308438).
267
268 2005-08-12  Tim-Philipp Müller  <tim at centricular dot net>
269
270         * docs/pwg/appendix-porting.xml:
271         * docs/pwg/building-state.xml:
272           Add some paragraphs about state changes in 0.9 to the PWG
273           and the porting guide, in particular about the new meaning
274           of GST_STATE_PAUSED and how to write state change functions
275           with concurrent access by multiple threads in mind.
276
277 2005-08-11  Stefan Kost  <ensonic@users.sf.net>
278
279         * docs/gst/gstreamer-docs.sgml:
280         * docs/libs/gstreamer-libs-docs.sgml:
281           added deprecation and since indexes
282         * libs/gst/controller/gst-controller.c:
283         * libs/gst/controller/gst-helper.c:
284           added since tags
285
286
287 2005-08-11  Wim Taymans  <wim@fluendo.com>
288
289         * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked),
290         (gst_proxy_pad_set_target), (gst_proxy_pad_get_target),
291         (gst_proxy_pad_dispose), (gst_ghost_pad_do_activate_push),
292         (gst_ghost_pad_do_link), (gst_ghost_pad_set_internal),
293         (gst_ghost_pad_new_notarget), (gst_ghost_pad_get_target),
294         (gst_ghost_pad_set_target):
295         Actually implement (re)setting the target on a ghostpad
296         as described in the docs.
297
298 2005-08-10  Tim-Philipp Müller  <tim at centricular dot net>
299
300         * gst/gst.c: (gst_init_check_with_popt_table), (init_pre):
301           Check whether GST_DEBUG_NO_COLOR environment variable is
302           set and disable coloured debug output if that is the case.
303
304 2005-08-10  Tim-Philipp Müller  <tim at centricular dot net>
305
306         * gst/base/gsttypefindhelper.c: (helper_find_peek),
307         (gst_type_find_helper):
308           The memory returned by gst_type_find_peek() needs to
309           stay valid until the end of a typefind function, and
310           typefind functions may keep results from different 
311           offsets around, so we can't just unref the buffer from
312           the previous _peek(), but have to save all buffers 
313           returned by _peek() until typefinding is done and only
314           free them then.
315
316 2005-08-09  Tim-Philipp Müller  <tim at centricular dot net>
317
318         * docs/gst/gstreamer-sections.txt:
319         * gst/gstutils.h:
320           New macros: GST_ROUND_UP_2() through GST_ROUND_UP_64().
321
322 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
323
324         * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
325           Fix a pretty good memleak.
326
327 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
328
329         * gst/gstiterator.h:
330           Fix wrong include and 'make distcheck'.
331
332 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
333
334         * gst/gstbin.c: (bin_bus_handler):
335           Use gst_element_post_message() instead.
336
337 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
338
339         * gst/base/gstadapter.h:
340         * gst/base/gstbasesink.h:
341         * gst/base/gstbasesrc.h:
342         * gst/base/gstbasetransform.h:
343         * gst/base/gstcollectpads.h:
344         * gst/base/gstpushsrc.h:
345         * gst/gstiterator.h:
346           Add padding to our base elements' class and instance structs and
347           to GstIterator (you will need to rebuild all plugins and apps!)
348
349 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
350
351         * gst/gstbin.c: (bin_bus_handler):
352           Make default message forwarding from child->bus to bin->bus
353           threadsafe and make it not emit warnings if the parent has no bus.
354
355 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
356
357         * gst/gstelement.c: (activate_pads):
358           On paused->ready, set pad->caps to NULL, as is the documented
359           behaviour in this state change. Fixes playback of series of
360           media files when visualization is enabled in Totem.
361
362 2005-08-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
363
364         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
365           Allow NULL as filter-caps (which means "any").
366
367 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
368
369         * docs/libs/gstreamer-libs-sections.txt:
370         * libs/gst/controller/gst-controller.c:
371         * libs/gst/controller/gst-controller.h:
372         * libs/gst/controller/gst-helper.c:
373           adding more entries to the docs and fix small doc-bugs
374
375 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
376
377         * docs/gst/gstreamer-docs.sgml:
378         * docs/gst/gstreamer-sections.txt:
379         * docs/gst/gstreamer.types:
380         * docs/gst/tmpl/gstbasesink.sgml:
381         * docs/gst/tmpl/gstbasesrc.sgml:
382         * docs/gst/tmpl/gstbasetransform.sgml:
383         * docs/gst/tmpl/gstfakesrc.sgml:
384         * gst/base/gstcollectpads.c:
385         * gst/base/gstcollectpads.h:
386         * libs/gst/controller/gst-controller.c:
387         * libs/gst/controller/gst-controller.h:
388         * libs/gst/controller/gst-helper.c:
389         * libs/gst/controller/gst-interpolation.c:
390         * libs/gst/controller/lib.c:
391           added long/short desc for controller docs
392           added collectpads base class docs
393           added correct includes to base-class docs
394
395 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
396
397         * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
398         (gst_test_mono_source_set_property),
399         (gst_test_mono_source_class_init), (GST_START_TEST),
400         (gst_controller_suite):
401         * docs/gst/gstreamer-docs.sgml:
402         * docs/gst/gstreamer-sections.txt:
403         * docs/gst/gstreamer.types:
404         * docs/libs/gstreamer-libs-docs.sgml:
405         * docs/libs/gstreamer-libs-sections.txt:
406         * gst/base/gstadapter.c:
407         * libs/gst/controller/gst-controller.c:
408         (gst_controlled_property_new), (gst_controlled_property_free),
409         (gst_controller_new_valist),
410         (gst_controller_remove_properties_valist),
411         (gst_controller_sink_values), (_gst_controller_finalize):
412         * libs/gst/controller/gst-controller.h:
413         * libs/gst/controller/gst-helper.c:
414         (gst_object_control_properties), (gst_object_uncontrol_properties),
415         (gst_object_get_controller), (gst_object_set_controller),
416         (gst_object_sink_values), (gst_object_get_value_arrays),
417         (gst_object_get_value_array):
418           more tests (and fixes) for the controller
419           more docs for the controller
420           integrated companies docs for the adapter 
421
422 2005-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
423
424         * check/elements/gstfakesrc.c: (setup_fakesrc), (cleanup_fakesrc),
425         (GST_START_TEST), (fakesrc_suite):
426           add tests for sizetype
427
428 2005-08-04  Andy Wingo  <wingo@pobox.com>
429
430         * gst/elements/gstcapsfilter.c: Reimplement using basetransform,
431         fixes buffer_alloc proxying among other things.
432
433         * gst/base/gstbasetransform.c:
434         * gst/base/gstbasetransform.h:
435         Revert patch to gstbasetransform from 7-28 removing
436         delay_configure.
437
438         * gst/base/gstbasetransform.h (GstBaseTransformClass.get_size):
439         * gst/base/gstbasetransform.c (gst_base_transform_get_size):
440         Semantics changed, should return not the size of the output buffer
441         but the byte size of a buffer with a given caps.
442
443         * gst/base/gstbasetransform.c (gst_base_transform_getcaps): Better
444         debug object.
445         (gst_base_transform_configure_caps): Don't set out_size here: (in,
446         out) are not the pad caps until setcaps finishes.
447         (gst_base_transform_buffer_alloc): Proxy the buffer_alloc for the
448         not-in-place case as well. Deal with changing from in-place to
449         not-in-place within calling pad_alloc_buffer. Still a bit
450         concerned about the overhead here...
451
452 2005-08-03  Andy Wingo  <wingo@pobox.com>
453
454         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): Not
455         fixating is an error.
456
457 2005-08-04  Edward Hervey  <edward@fluendo.com>
458
459         * gst/base/gstadapter.h: 
460         Added gst_adapter_get_type() to the header
461
462 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
463
464         * check/Makefile.am:
465         * check/gst-libs/controller.c:
466         * libs/gst/controller/gst-controller.c:
467         (gst_controller_new_valist):
468           added check test suite for the controller
469         * gst/base/gstpushsrc.c:
470           fixed a doc typo
471
472 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
473
474         * docs/gst/Makefile.am:
475         * docs/gst/gstreamer-docs.sgml:
476         * docs/gst/gstreamer-sections.txt:
477         * docs/gst/gstreamer.types:
478         * docs/gst/tmpl/gstfakesrc.sgml:
479         * gst/base/README:
480         * gst/base/gstbasesink.c:
481         * gst/base/gstbasesink.h:
482         * gst/base/gstbasesrc.c:
483         * gst/base/gstbasesrc.h:
484         * gst/base/gstbasetransform.c:
485         * gst/base/gstpushsrc.c:
486         * gst/base/gstpushsrc.h:
487           add short/long description docs to base classes
488           add pushsrc to the docs
489           remove consolidated doc fragments
490
491 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
492
493         * configure.ac:
494         * docs/libs/Makefile.am:
495         * docs/libs/gstreamer-libs-docs.sgml:
496         * docs/libs/gstreamer-libs-sections.txt:
497         * docs/libs/gstreamer-libs.types:
498         * examples/Makefile.am:
499         * examples/controller/.cvsignore:
500         * examples/controller/Makefile.am:
501         * examples/controller/audio-example.c: (main):
502         * libs/gst/Makefile.am:
503         * libs/gst/controller/.cvsignore:
504         * libs/gst/controller/Makefile.am:
505         * libs/gst/controller/gst-controller.c:
506         (on_object_controlled_property_changed), (gst_timed_value_compare),
507         (gst_timed_value_find),
508         (gst_controlled_property_set_interpolation_mode),
509         (gst_controlled_property_new), (gst_controlled_property_free),
510         (gst_controller_find_controlled_property),
511         (gst_controller_new_valist), (gst_controller_new),
512         (gst_controller_remove_properties_valist),
513         (gst_controller_remove_properties), (gst_controller_set),
514         (gst_controller_set_from_list), (gst_controller_unset),
515         (gst_controller_get), (gst_controller_get_all),
516         (gst_controller_sink_values), (gst_controller_get_value_arrays),
517         (gst_controller_get_value_array),
518         (gst_controller_set_interpolation_mode),
519         (_gst_controller_finalize), (_gst_controller_init),
520         (_gst_controller_class_init), (gst_controller_get_type):
521         * libs/gst/controller/gst-controller.h:
522         * libs/gst/controller/gst-helper.c: (g_object_control_properties),
523         (g_object_uncontrol_properties), (g_object_get_controller),
524         (g_object_set_controller), (g_object_sink_values),
525         (g_object_get_value_arrays), (g_object_get_value_array):
526         * libs/gst/controller/gst-interpolation.c:
527         (gst_controlled_property_find_timed_value_node),
528         (interpolate_none_get), (interpolate_trigger_get),
529         (interpolate_trigger_get_value_array):
530         * libs/gst/controller/lib.c: (gst_controller_init):
531         * pkgconfig/Makefile.am:
532         * pkgconfig/gstreamer-control-uninstalled.pc.in:
533         * pkgconfig/gstreamer-control.pc.in:
534         * testsuite/Makefile.am:
535         * testsuite/controller/.cvsignore:
536         * testsuite/controller/Makefile.am:
537         * testsuite/controller/interpolator.c: (main):
538           added controller code
539           removed dparam pc files
540
541 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
542         * gst/base/gstcollectpads.c: (gst_collectpads_finalize),
543         (gst_collectpads_stop):
544           Broadcast the condition when shutting down, to make sure we wake all
545           threads up. Shut down pads on finalize, for safety.
546
547 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
548         * gst/base/gstbasetransform.c: (gst_base_transform_init),
549         (gst_base_transform_handle_buffer),
550         (gst_base_transform_change_state):
551           Handle PAUSED->READY->PAUSED transition after negotiation
552           occurred already.
553         * gst/gstmessage.c: (gst_message_init):
554           Extra piece of debug for new messages.
555
556 2005-08-01  Stefan Kost  <ensonic@users.sf.net>
557
558         * configure.ac:
559         * docs/gst/tmpl/gstbasesrc.sgml:
560         * docs/gst/tmpl/gstelement.sgml:
561         * docs/gst/tmpl/gstevent.sgml:
562         * docs/gst/tmpl/gstfakesrc.sgml:
563         * docs/gst/tmpl/gstformat.sgml:
564         * docs/gst/tmpl/gstghostpad.sgml:
565         * docs/gst/tmpl/gstpad.sgml:
566         * docs/gst/tmpl/gstquery.sgml:
567         * docs/gst/tmpl/gststructure.sgml:
568         * docs/gst/tmpl/gsttaglist.sgml:
569         * docs/gst/tmpl/gstvalue.sgml:
570         * docs/libs/gstreamer-libs-docs.sgml:
571         * docs/libs/gstreamer-libs-sections.txt:
572         * docs/libs/gstreamer-libs.types:
573         * libs/gst/Makefile.am:
574         * libs/gst/control/.cvsignore:
575         * libs/gst/control/Makefile.am:
576         * libs/gst/control/control.c:
577         * libs/gst/control/control.h:
578         * libs/gst/control/dparam.c:
579         * libs/gst/control/dparam.h:
580         * libs/gst/control/dparam_smooth.c:
581         * libs/gst/control/dparam_smooth.h:
582         * libs/gst/control/dparamcommon.h:
583         * libs/gst/control/dparammanager.c:
584         * libs/gst/control/dparammanager.h:
585         * libs/gst/control/dplinearinterp.c:
586         * libs/gst/control/dplinearinterp.h:
587         * libs/gst/control/unitconvert.c:
588         * libs/gst/control/unitconvert.h:
589         * testsuite/Makefile.am:
590         * testsuite/dynparams/.cvsignore:
591         * testsuite/dynparams/Makefile.am:
592         * testsuite/dynparams/dparamstest.c:
593         * tools/Makefile.am:
594         * tools/gst-inspect.c: (print_element_info), (main):
595         * tools/gst-xmlinspect.c: (print_element_info), (main):
596           deactivate and remove dparams (libgstcontrol)
597
598 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
599
600         * gst/elements/gsttypefindelement.c:
601         (gst_type_find_element_have_type), (gst_type_find_element_init),
602         (stop_typefinding), (gst_type_find_element_handle_event),
603         (gst_type_find_element_chain), (gst_type_find_element_getrange):
604         * gst/elements/gsttypefindelement.h:
605           Set caps on all outgoing buffers, not just the first one.
606
607 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
608
609         * gst/elements/gsttypefindelement.c:
610         (gst_type_find_element_have_type),
611         (gst_type_find_element_check_set_buffer_caps),
612         (gst_type_find_element_init), (stop_typefinding),
613         (gst_type_find_element_handle_event),
614         (gst_type_find_element_chain), (gst_type_find_element_getrange):
615         * gst/elements/gsttypefindelement.h:
616           Set caps on first outgoing buffer when we've found the type.
617
618 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
619
620         * docs/gst/gstreamer-docs.sgml:
621         * docs/gst/gstreamer-sections.txt:
622         * docs/gst/tmpl/gstscheduler.sgml:
623         * docs/gst/tmpl/gstschedulerfactory.sgml:
624           Remove some old cruft from docs.
625
626 2005-07-31  Tim-Philipp Müller  <tim at centricular dot net>
627
628         * gst/gstpad.h:
629           Fix inline docs for GstPadLinkReturn.
630           
631         * gst/gststructure.c: (gst_structure_has_name):
632         * gst/gststructure.h:
633         * docs/gst/gstreamer-sections.txt:
634           New API: gst_structure_has_name().
635
636 2005-07-30  Tim-Philipp Müller  <tim at centricular dot net>
637
638         * configure.ac:
639           Use AC_SYS_LARGEFILE, which will set _FILE_OFFSET_BITS=64
640           and _LARGEFILE_SOURCE in config.h as required. Do not 
641           export those flags in our .pc files any longer (#142209).
642
643           Remove unused GST_DISABLE_OMEGA_COTHREADS stuff.
644
645         * gst/elements/gstfilesink.c: (gst_file_sink_class_init),
646         (gst_file_sink_do_seek), (gst_file_sink_event),
647         (gst_file_sink_get_current_offset), (gst_file_sink_render):
648           Redo seek/tell calls with large file support in mind; add some
649           debugging messages; add log message that tells us when large
650           file support is unavailable or not enabled for some reason.
651
652         * gst/elements/gstfilesrc.c: (gst_file_src_class_init):
653           Add log message that tells us when large file support 
654           is unavailable or not enabled for some reason.
655
656 2005-07-29  Wim Taymans  <wim@fluendo.com>
657
658         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
659         Added test for removing an element with ghostpad from a bin.
660         Fixed test as current implementation does the right thing.
661
662         * gst/gstghostpad.c: (gst_proxy_pad_class_init),
663         (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
664         (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
665         (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
666         (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
667         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
668         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
669         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
670         (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
671         (gst_proxy_pad_get_target), (gst_proxy_pad_init),
672         (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
673         (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
674         (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
675         (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
676         (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
677         (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
678         * gst/gstghostpad.h:
679         Clean up ghostpads, remove properties for internal stuff.
680         Make threadsafe.
681         Fix refcounting.
682         Prepare for switching targets, not all use cases work yet.
683
684 2005-07-29  Wim Taymans  <wim@fluendo.com>
685
686         * docs/design/part-gstghostpad.txt:
687         Small update.
688
689         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
690         (gst_bin_remove_func):
691         Unlinking pads while holding the bin LOCK is not a good
692         idea.
693
694         * gst/gstpad.c: (gst_pad_class_init),
695         (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
696         (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
697         No prob setting template after creating the pad.
698
699 2005-07-29  Jan Schmidt  <thaytan@mad.scientist.com>
700
701         * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
702         (gst_bus_peek), (gst_bus_source_dispatch),
703         (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
704         (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
705           gst_bus_poll may be called from other threads. Handle
706           this nicely by not making poll_data disappear off the
707           stack once gst_bus_poll returns.
708           gst_bus_peek now increments the refcount on the returned
709           message.
710
711 2005-07-29  Wim Taymans  <wim@fluendo.com>
712
713         * docs/design/part-gstghostpad.txt:
714         Overview of current GhostPad datastructures and use
715         cases for changing the target.
716
717 2005-07-28  Wim Taymans  <wim@fluendo.com>
718
719         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
720         Added checks for hierarchy consistency whan adding linked
721         elements to bins.
722
723         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
724         Added check to test element scheduling without bin/pipeline.
725
726         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
727         First add elements to bin, then link.
728         
729         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
730         (gst_bin_remove_func):
731         Unlink pads from elements added/removed from bin to maintain
732         hierarchy consistency.
733
734 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
735
736         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
737         (gst_base_transform_handle_buffer):
738         * gst/base/gstbasetransform.h:
739           Remove broken delay_configure (fixes renegotiation of software
740           scaling pipelines); remove some leftover printf()s.
741
742 2005-07-28  Wim Taymans  <wim@fluendo.com>
743
744         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
745         Added some more tests for wrong hierarchy
746
747         * docs/design/part-overview.txt:
748         Some updates.
749
750         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
751         Cleanups.
752
753         * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
754         (gst_element_dispose):
755         Some more cleanups.
756
757         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
758         (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
759         (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
760         (gst_pad_set_caps), (gst_pad_send_event):
761         Check for correct hierarchy when linking pads. Moving to
762         strict requirement for ghostpads when linking elements in
763         different bins.
764
765         * gst/gstpad.h:
766         Clean ups. Added WRONG_HIERARCHY return value.
767
768 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
769
770         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
771           Better debug if no transform is possible.
772
773 2005-07-27  Wim Taymans  <wim@fluendo.com>
774
775         * docs/random/wtay/network-transp:
776         Some old doc I had.
777
778 2005-07-27  Wim Taymans  <wim@fluendo.com>
779
780         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
781         (gst_dp_event_from_packet):
782         Fix serialization of seek events.
783
784 2005-07-27  Wim Taymans  <wim@fluendo.com>
785
786         * check/gst-libs/gdp.c: (GST_START_TEST):
787         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
788         Fix compilation and fix event serialization.
789
790 2005-07-27  Wim Taymans  <wim@fluendo.com>
791
792         * CHANGES-0.9:
793         * docs/design/part-TODO.txt:
794         * docs/design/part-events.txt:
795         Some docs updates
796
797         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
798         (gst_base_sink_event), (gst_base_sink_do_sync),
799         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
800         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
801         (gst_base_src_do_seek), (gst_base_src_event_handler),
802         (gst_base_src_loop):
803         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
804         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
805         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
806         (gst_base_transform_event), (gst_base_transform_handle_buffer),
807         (gst_base_transform_set_passthrough),
808         (gst_base_transform_is_passthrough):
809         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
810         * gst/elements/gstfilesink.c: (gst_file_sink_event):
811         Event updates.
812
813         * gst/gstbuffer.h:
814         Use faster casts.
815
816         * gst/gstelement.c: (gst_element_seek):
817         * gst/gstelement.h:
818         Update gst_element_seek.
819
820         * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
821         (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
822         (gst_event_new_flush_start), (gst_event_new_flush_stop),
823         (gst_event_new_eos), (gst_event_new_newsegment),
824         (gst_event_parse_newsegment), (gst_event_new_tag),
825         (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
826         (gst_event_parse_qos), (gst_event_new_seek),
827         (gst_event_parse_seek), (gst_event_new_navigation):
828         * gst/gstevent.h:
829         Make GstEvent use GstStructure. Add parsing code, make sure the
830         API is sufficiently generic.
831         Mark possible directions of events and serialization.
832
833         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
834         (_gst_message_copy), (gst_message_new_segment_start),
835         (gst_message_new_segment_done), (gst_message_new_custom),
836         (gst_message_parse_segment_start),
837         (gst_message_parse_segment_done):
838         Small cleanups.
839
840         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
841         (gst_pad_set_caps), (gst_pad_send_event):
842         Update for new events. 
843         Catch events sent in wrong directions.
844
845         * gst/gstqueue.c: (gst_queue_link_src),
846         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
847         (gst_queue_handle_src_query):
848         Event updates.
849
850         * gst/gsttag.c:
851         * gst/gsttag.h:
852         Remove event code from this file.
853
854         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
855         (gst_dp_event_from_packet):
856         Event updates.
857
858 2005-07-27  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
859
860         * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
861         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
862         (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
863           Make debugging actually useful.
864
865 2005-07-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
866
867         * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
868         (gst_pad_fixate_caps):
869           Implement default fixation once again, so that gst_pad_fixate()
870           actually does anything at all. This probably needs to be some
871           sort of a last resort, and use profile-based fixation first, but
872           since that doesn't exist yet, this is the best we have. Fixes
873           visualization in Totem.
874
875 2005-07-22  Wim Taymans  <wim@fluendo.com>
876
877         * docs/design/part-events.txt:
878         Small update.
879
880         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
881         (gst_base_sink_do_sync), (gst_base_sink_activate_push),
882         (gst_base_sink_activate_pull):
883         Some more comments.
884
885         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
886         (gst_fake_src_create):
887         Fix handoff marshall.
888
889         * gst/elements/gstidentity.c: (gst_identity_class_init),
890         (gst_identity_transform_ip):
891         We're a real inplace element.
892
893         * gst/gstbus.c: (gst_bus_post):
894         Added some comments.
895
896         * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
897         * tests/muxing/case1.c: (main):
898         * tests/sched/dynamic-pipeline.c: (main):
899         * tests/sched/interrupt1.c: (main):
900         * tests/sched/interrupt2.c: (main):
901         * tests/sched/interrupt3.c: (main):
902         * tests/sched/runxml.c: (main):
903         * tests/sched/sched-stress.c: (main):
904         * tests/seeking/seeking1.c: (event_received), (main):
905         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
906         (main):
907         * tests/threadstate/threadstate3.c: (main):
908         * tests/threadstate/threadstate4.c: (main):
909         * tests/threadstate/threadstate5.c: (main):
910         Fix the tests.
911
912 2005-07-21  Wim Taymans  <wim@fluendo.com>
913
914         * docs/design/part-seeking.txt:
915         Some small additions.
916
917         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
918         (gst_base_sink_get_times), (gst_base_sink_do_sync),
919         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
920         * gst/base/gstbasesink.h:
921         discont values are gint64, handle the math correctly.
922
923         * gst/base/gstbasesrc.c: (gst_base_src_loop):
924         Make the basesrc report error if the source pad is not linked.
925
926         * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
927         (gst_queue_loop), (gst_queue_handle_src_query),
928         (gst_queue_src_activate_push):
929         Make queue collect data even if the srcpad is not linked.
930         Start pushing out data as soon as it is linked.
931
932         * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
933         * gst/gstutils.h:
934         Added gst_flow_get_name() to ease error reporting.
935
936 2005-07-20  Wim Taymans  <wim@fluendo.com>
937
938         * gst/gstmessage.c: (gst_message_new_segment_start),
939         (gst_message_new_segment_done), (gst_message_parse_segment_start),
940         (gst_message_parse_segment_done):
941         * gst/gstmessage.h:
942         Added a bunch of messages for advanced seeking.
943
944         * gst/parse/grammar.y:
945         * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
946         (gst_dpman_state_changed):
947         Fix some new-pad -> pad-added signals
948
949 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
950
951         * docs/manual/appendix-porting.xml:
952         * docs/pwg/appendix-porting.xml:
953           Document new-pad/state-change signal renames and the FixedList
954           type rename.
955
956 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
957
958         * docs/manual/advanced-autoplugging.xml:
959         * docs/manual/basics-helloworld.xml:
960         * docs/manual/basics-pads.xml:
961         * docs/random/ds/0.9-suggested-changes:
962         * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
963         * gst/gstelement.h:
964         * gst/gstevent.h:
965         * gst/gstformat.h:
966         * gst/gstquery.h:
967         * gst/gststructure.c: (gst_structure_value_get_generic_type),
968         (gst_structure_parse_array), (gst_structure_parse_value):
969         * gst/gstvalue.c: (gst_type_is_fixed),
970         (gst_value_list_prepend_value), (gst_value_list_append_value),
971         (gst_value_list_get_size), (gst_value_list_get_value),
972         (gst_value_transform_array_string), (gst_value_serialize_array),
973         (gst_value_deserialize_array), (gst_value_intersect_array),
974         (gst_value_is_fixed), (_gst_value_initialize):
975         * gst/gstvalue.h:
976           GstElement::new-pad -> pad-added, GstElement::state-change ->
977           state-changed, GstValueFixedList -> GstValueArray, add format and
978           flags as their own arguments in gst_element_seek() (should improve
979           "bindeability"), remove function generators since they don't work
980           under a whole bunch of compilers (they were deprecated already
981           anyway).
982
983 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
984
985         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
986         (_gst_debug_register_funcptr):
987         * gst/gstinfo.h:
988           Fix illegal cast on some platforms (#309253).
989
990 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
991
992         * gst/gstmessage.c: (gst_message_new_custom):
993         * gst/gstmessage.h:
994           Add _new_custom, make _new_application a macro to _new_custom.
995
996 2005-07-20  Wim Taymans  <wim@fluendo.com>
997
998         * gst/base/gstbasesrc.c: (gst_base_src_init),
999         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
1000         * gst/base/gstbasesrc.h:
1001         Add a gboolean to decide when to push out a discont.
1002
1003         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
1004         (gst_queue_loop), (gst_queue_handle_src_query),
1005         (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
1006         (gst_queue_set_property), (gst_queue_get_property):
1007         Some cleanups.
1008
1009         * tests/threadstate/threadstate1.c: (main):
1010         Make a thread test compile and run... very silly..
1011
1012
1013 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1014
1015         * docs/manual/appendix-porting.xml:
1016           Mention removal of libgstgconf-0.9.la and existence of gconf
1017           elements.
1018
1019 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1020
1021         * docs/pwg/advanced-clock.xml:
1022         * docs/pwg/appendix-porting.xml:
1023         * docs/pwg/intro-preface.xml:
1024         * docs/pwg/other-base.xml:
1025         * docs/pwg/other-manager.xml:
1026         * docs/pwg/other-nton.xml:
1027         * docs/pwg/other-ntoone.xml:
1028         * docs/pwg/other-oneton.xml:
1029         * docs/pwg/pwg.xml:
1030           Document base classes, update sections of n-to-1 and 1-to-n (muxer,
1031           demuxer), remove n-to-n (was never written), fix some code examples
1032           and links and update the porting section to include all this.
1033
1034 2005-07-19  Wim Taymans  <wim@fluendo.com>
1035
1036         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
1037         (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
1038         (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
1039         (gst_queue_src_activate_push), (gst_queue_change_state),
1040         (gst_queue_get_property):
1041         * gst/gstqueue.h:
1042         Propagate GstFlowReturn more intelligently upstream and output
1043         an ERROR/EOS when streaming stopped due to fatal error.
1044
1045 2005-07-19  Wim Taymans  <wim@fluendo.com>
1046
1047         * tools/gst-launch.c: (check_intr), (event_loop), (main):
1048         Don't block forever for the state change to complete, the
1049         pipeline already did with a sensible timeout.
1050
1051 2005-07-19  Wim Taymans  <wim@fluendo.com>
1052
1053         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
1054         Make sure we never call the create function is we
1055         got deactivated.
1056
1057 2005-07-19  Andy Wingo  <wingo@pobox.com>
1058
1059         * gst/parse/parse.l: Attempt to solve bug #172815.
1060
1061 2005-07-19  Wim Taymans  <wim@fluendo.com>
1062
1063         * docs/design/part-clocks.txt:
1064         * docs/design/part-events.txt:
1065         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
1066         Small docs updates.
1067         Only update the seeking values when we are not
1068         busy streaming.
1069
1070 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
1071
1072         * gst/base/gstbasesrc.c: (gst_base_src_loop):
1073           Oops, ignore the result of gst_pad_push_event here.
1074
1075 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
1076
1077         * gst/base/gstbasesrc.c: (gst_base_src_loop),
1078         (gst_base_src_activate_push):
1079           Send discont event from the loop function, as pads
1080           aren't activated yet in the activate_push handler.
1081
1082         * gst/gstbin.c: (bin_bus_handler):
1083           Don't leak element name.
1084
1085 2005-07-18  Andy Wingo  <wingo@pobox.com>
1086
1087         * configure.ac: Use AS_LIBTOOL_TAGS.
1088
1089 2005-07-18  Wim Taymans  <wim@fluendo.com>
1090
1091         * docs/gst/gstreamer.types:
1092         Remove deleted types.
1093
1094 2005-07-18  Wim Taymans  <wim@fluendo.com>
1095
1096         * check/elements/gstfakesrc.c: (GST_START_TEST):
1097         * configure.ac:
1098         * gst/Makefile.am:
1099         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
1100         (init_popt_callback):
1101         * gst/gst.h:
1102         * gst/gst_private.h:
1103         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
1104         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
1105         * gst/gstbin.h:
1106         * gst/gstbus.h:
1107         * gst/gstconfig.h.in:
1108         * gst/gstelement.c: (gst_element_class_init),
1109         (gst_element_set_base_time), (gst_element_get_base_time),
1110         (iterator_fold_with_resync), (gst_element_change_state),
1111         (gst_element_dispose), (gst_element_get_bus):
1112         * gst/gstelement.h:
1113         * gst/gstelementfactory.h:
1114         * gst/gsterror.c: (_gst_core_errors_init):
1115         * gst/gsterror.h:
1116         * gst/gstevent.h:
1117         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
1118         * gst/gstindex.c:
1119         * gst/gstinfo.c: (_gst_debug_init):
1120         * gst/gstmessage.c: (_gst_message_copy):
1121         * gst/gstmessage.h:
1122         * gst/gstminiobject.h:
1123         * gst/gstobject.c:
1124         * gst/gstobject.h:
1125         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
1126         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
1127         * gst/gstpad.h:
1128         * gst/gstparse.h:
1129         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
1130         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
1131         (gst_pipeline_get_last_stream_time):
1132         * gst/gstpipeline.h:
1133         * gst/gstpluginfeature.h:
1134         * gst/gstquery.h:
1135         * gst/gstscheduler.c:
1136         * gst/gstscheduler.h:
1137         * gst/gststructure.h:
1138         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
1139         (gst_task_finalize), (gst_task_func), (gst_task_create),
1140         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
1141         (gst_task_stop), (gst_task_pause):
1142         * gst/gsttask.h:
1143         * gst/gsttypefind.h:
1144         * gst/gsttypes.h:
1145         * gst/registries/gstlibxmlregistry.c: (load_feature),
1146         (gst_xml_registry_load), (gst_xml_registry_save_feature):
1147         * gst/registries/gstxmlregistry.c:
1148         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
1149         * gst/schedulers/threadscheduler.c:
1150         * libs/gst/control/dparammanager.h:
1151         * tools/gst-inspect.c: (print_element_list),
1152         (print_plugin_features), (print_element_features):
1153         * tools/gst-xmlinspect.c: (print_element_list),
1154         (print_plugin_info), (main):
1155         Removed plugable schedulers.
1156         Removed Scheduler/Manager from elements.
1157         Removed gsttypes.h, rearranged includes.
1158         Removed dependency pad<->element, element<>pipeline, and
1159         various others,  fix includes.
1160         implement gst_pad_get_parent() with gst_object_get_parent()
1161         Make GstTask sefcontained.
1162         Fix _get_state() on GstBin, it did not return ASYNC with a 0
1163         timeout.
1164         Fix endless loop in iterator_fold_with_resync.
1165
1166
1167 2005-07-18  Wim Taymans  <wim@fluendo.com>
1168
1169         * gst/Makefile.am:
1170         * gst/gstarch.h:
1171         Remove old file.
1172
1173 2005-07-18  Wim Taymans  <wim@fluendo.com>
1174
1175         * gst/Makefile.am:
1176         No more cothreads.h
1177
1178 2005-07-18  Wim Taymans  <wim@fluendo.com>
1179
1180         * gst/cothreads.c:
1181         * gst/cothreads.h:
1182         Let's remove these.
1183
1184 2005-07-18  Wim Taymans  <wim@fluendo.com>
1185
1186         * docs/design/part-dynamic.txt:
1187         * docs/design/part-events.txt:
1188         * docs/design/part-seeking.txt:
1189         Some more docs in the works.
1190
1191         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
1192         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
1193         (gst_base_transform_setcaps), (gst_base_transform_get_size),
1194         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
1195         (gst_base_transform_handle_buffer),
1196         (gst_base_transform_sink_activate_push),
1197         (gst_base_transform_src_activate_pull),
1198         (gst_base_transform_set_passthrough),
1199         (gst_base_transform_is_passthrough):
1200         Refcounting fixes.
1201
1202         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
1203         Cleanups.
1204
1205         * gst/gstevent.c: (gst_event_finalize):
1206         Set SRC to NULL.
1207
1208         * gst/gstutils.c: (gst_element_unlink),
1209         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
1210         (gst_pad_proxy_setcaps):
1211         * gst/gstutils.h:
1212         Add _get_parent_element() to get a pads parent as an element.
1213
1214 2005-07-18  Wim Taymans  <wim@fluendo.com>
1215
1216         * check/gst/gstbin.c: (GST_START_TEST):
1217         Remove bogus test.
1218
1219 2005-07-18  Wim Taymans  <wim@fluendo.com>
1220
1221         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
1222         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
1223         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
1224         (gst_base_sink_event), (gst_base_sink_do_sync),
1225         (gst_base_sink_chain), (gst_base_sink_loop),
1226         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
1227         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
1228         Refcounting fixes.
1229         Fix logic for returning ASYNC when not prerolled.
1230
1231 2005-07-18  Wim Taymans  <wim@fluendo.com>
1232
1233         * gst/gstqueue.c: (gst_queue_handle_sink_event):
1234         Fix nasty refcount bug.
1235
1236 2005-07-16 Philippe Khalaf <burger@speedy.org>
1237         * gst/elements/gstfdsrc.c:
1238         * gst/elements/gstfdsrc.h:
1239         * gst/elements/gstelements.c:
1240         * gst/elements/Makefile.am:
1241         Ported fdsrc to 0.9.
1242
1243 2005-07-16  Wim Taymans  <wim@fluendo.com>
1244
1245         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1246         (gst_base_sink_do_sync):
1247         Fix compile error.
1248
1249 2005-07-16  Wim Taymans  <wim@fluendo.com>
1250
1251         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1252         (gst_base_sink_event), (gst_base_sink_get_times),
1253         (gst_base_sink_do_sync), (gst_base_sink_change_state):
1254         * gst/base/gstbasesink.h:
1255         Store and use discont values when syncing buffers as described
1256         in design docs.
1257         
1258         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
1259         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
1260         (gst_base_src_activate_push):
1261         Push discont event when starting.
1262
1263         * gst/elements/gstidentity.c: (gst_identity_transform):
1264         Small cleanups.
1265
1266         * gst/gstbin.c: (gst_bin_change_state):
1267         Small cleanups in base_time  distribution.
1268
1269         * gst/gstelement.c: (gst_element_set_base_time),
1270         (gst_element_get_base_time), (gst_element_change_state):
1271         * gst/gstelement.h:
1272         Added methods for the base_time of the element.
1273         Some MT fixes.
1274
1275         * gst/gstpipeline.c: (gst_pipeline_send_event),
1276         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
1277         (gst_pipeline_get_last_stream_time):
1278         * gst/gstpipeline.h:
1279         MT fixes.
1280         Handle seeking as described in design doc, remove stream_time
1281         hack.
1282         Cleanups clock and stream_time selection code. Added accessors
1283         for the stream_time.
1284         
1285
1286 2005-07-16  Andy Wingo  <wingo@pobox.com>
1287
1288         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
1289         (#305291).
1290
1291 2005-07-16  Wim Taymans  <wim@fluendo.com>
1292
1293         * check/gst/gstbin.c: (GST_START_TEST):
1294         Make elements silent as the deep_notify refs the
1295         parent, which might make the test fail.
1296
1297         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
1298         Don't hold the lock for too long.
1299
1300 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
1301
1302         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
1303           Don't unref the caps we passed to gst_caps_make_writable() after
1304           passing them. gst_caps_make_writable() will do that for us.
1305
1306 2005-07-15  Andy Wingo  <wingo@pobox.com>
1307
1308         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
1309         (#157311).
1310
1311         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
1312         own marshalling function for the handoff signal. Properly type the
1313         buffer as a buffer. Fixes some warnings. Should do a more general
1314         solution.
1315         (gst_identity_class_init): Plug into the right marshaller.
1316
1317 2005-07-15  Wim Taymans  <wim@fluendo.com>
1318
1319         * docs/design/part-TODO.txt:
1320         * docs/design/part-clocks.txt:
1321         * docs/design/part-element-sink.txt:
1322         * docs/design/part-events.txt:
1323         * docs/design/part-gstpipeline.txt:
1324         Updated docs, mostly DISCONT related.
1325
1326 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
1327
1328         * docs/pwg/building-pads.xml:
1329           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
1330
1331 2005-07-15  Andy Wingo  <wingo@pobox.com>
1332
1333         * tools/gst-typefind.c: Update, add copyright block.
1334
1335         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
1336         Normalize and truncate caps before fixation.
1337
1338         * gst/gstcaps.h:
1339         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
1340         discards all but the first structure from its argument.
1341
1342 2005-07-15  Wim Taymans  <wim@fluendo.com>
1343
1344         * gst/base/gstbasetransform.c: (gst_base_transform_init),
1345         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
1346         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
1347         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
1348         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
1349         (gst_base_transform_chain), (gst_base_transform_change_state),
1350         (gst_base_transform_set_passthrough),
1351         (gst_base_transform_is_passthrough):
1352         * gst/base/gstbasetransform.h:
1353         Make passthrough work using the bufferpools.
1354         Changed API a bit, subclasses have to write into a buffer
1355         provided by the base class.
1356         More debug info in nego functions.
1357         
1358         * gst/elements/gstidentity.c: (gst_identity_init),
1359         (gst_identity_transform):
1360         Port to new base class.
1361
1362 2005-07-15  Wim Taymans  <wim@fluendo.com>
1363
1364         * gst/gstmessage.c: (gst_message_new_state_changed):
1365         * tools/gst-launch.c: (event_loop), (main):
1366         Totally dump messages in -launch with the -m option.
1367         Fix message name for State messages,
1368
1369 2005-07-14  Wim Taymans  <wim@fluendo.com>
1370
1371         * gst/base/gstbasesrc.c: (gst_base_src_loop):
1372         Post error messages on errors.
1373
1374 2005-07-14  Wim Taymans  <wim@fluendo.com>
1375
1376         * gst/gstcaps.c: (gst_caps_do_simplify):
1377         Remove debug info.
1378
1379         * gst/gsterror.h:
1380         Define error for stream stopped.
1381
1382         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1383         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
1384         Do proper return values.
1385
1386         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
1387         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
1388         (gst_pad_get_range):
1389         Better return values.
1390
1391         * gst/gstpad.h:
1392         Reorganise return values, add macro to check for fatal errors.
1393
1394         * gst/gstqueue.c: (gst_queue_chain):
1395         Return proper GstFlowReturn values,
1396
1397 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
1398
1399         * docs/gst/gstreamer-sections.txt:
1400         * docs/gst/gstreamer.types:
1401         * docs/gst/tmpl/gst.sgml:
1402         * docs/gst/tmpl/gstbasesink.sgml:
1403         * docs/gst/tmpl/gstbasesrc.sgml:
1404         * docs/gst/tmpl/gstbasetransform.sgml:
1405         * docs/gst/tmpl/gstbin.sgml:
1406         * docs/gst/tmpl/gstbuffer.sgml:
1407         * docs/gst/tmpl/gstcaps.sgml:
1408         * docs/gst/tmpl/gstclock.sgml:
1409         * docs/gst/tmpl/gstcompat.sgml:
1410         * docs/gst/tmpl/gstconfig.sgml:
1411         * docs/gst/tmpl/gstelement.sgml:
1412         * docs/gst/tmpl/gstelementdetails.sgml:
1413         * docs/gst/tmpl/gstelementfactory.sgml:
1414         * docs/gst/tmpl/gstenumtypes.sgml:
1415         * docs/gst/tmpl/gsterror.sgml:
1416         * docs/gst/tmpl/gstevent.sgml:
1417         * docs/gst/tmpl/gstfakesink.sgml:
1418         * docs/gst/tmpl/gstfakesrc.sgml:
1419         * docs/gst/tmpl/gstfilesink.sgml:
1420         * docs/gst/tmpl/gstfilesrc.sgml:
1421         * docs/gst/tmpl/gstfilter.sgml:
1422         * docs/gst/tmpl/gstformat.sgml:
1423         * docs/gst/tmpl/gstghostpad.sgml:
1424         * docs/gst/tmpl/gstimplementsinterface.sgml:
1425         * docs/gst/tmpl/gstindex.sgml:
1426         * docs/gst/tmpl/gstindexfactory.sgml:
1427         * docs/gst/tmpl/gstinfo.sgml:
1428         * docs/gst/tmpl/gstiterator.sgml:
1429         * docs/gst/tmpl/gstmacros.sgml:
1430         * docs/gst/tmpl/gstmemchunk.sgml:
1431         * docs/gst/tmpl/gstminiobject.sgml:
1432         * docs/gst/tmpl/gstobject.sgml:
1433         * docs/gst/tmpl/gstpad.sgml:
1434         * docs/gst/tmpl/gstpadtemplate.sgml:
1435         * docs/gst/tmpl/gstparse.sgml:
1436         * docs/gst/tmpl/gstpipeline.sgml:
1437         * docs/gst/tmpl/gstplugin.sgml:
1438         * docs/gst/tmpl/gstpluginfeature.sgml:
1439         * docs/gst/tmpl/gstquery.sgml:
1440         * docs/gst/tmpl/gstqueue.sgml:
1441         * docs/gst/tmpl/gstregistry.sgml:
1442         * docs/gst/tmpl/gstregistrypool.sgml:
1443         * docs/gst/tmpl/gstscheduler.sgml:
1444         * docs/gst/tmpl/gstschedulerfactory.sgml:
1445         * docs/gst/tmpl/gststructure.sgml:
1446         * docs/gst/tmpl/gstsystemclock.sgml:
1447         * docs/gst/tmpl/gsttaglist.sgml:
1448         * docs/gst/tmpl/gsttagsetter.sgml:
1449         * docs/gst/tmpl/gsttrace.sgml:
1450         * docs/gst/tmpl/gsttrashstack.sgml:
1451         * docs/gst/tmpl/gsttypefind.sgml:
1452         * docs/gst/tmpl/gsttypefindfactory.sgml:
1453         * docs/gst/tmpl/gsttypes.sgml:
1454         * docs/gst/tmpl/gsturihandler.sgml:
1455         * docs/gst/tmpl/gsturitype.sgml:
1456         * docs/gst/tmpl/gstutils.sgml:
1457         * docs/gst/tmpl/gstvalue.sgml:
1458         * docs/gst/tmpl/gstversion.sgml:
1459         * docs/gst/tmpl/gstxml.sgml:
1460         * docs/libs/tmpl/gstcontrol.sgml:
1461         * docs/libs/tmpl/gstdataprotocol.sgml:
1462         * docs/libs/tmpl/gstdparam.sgml:
1463         * docs/libs/tmpl/gstdplinint.sgml:
1464         * docs/libs/tmpl/gstdpman.sgml:
1465         * docs/libs/tmpl/gstdpsmooth.sgml:
1466         * docs/libs/tmpl/gstgetbits.sgml:
1467         * docs/libs/tmpl/gstunitconvert.sgml:
1468         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
1469         (gst_push_src_base_init), (gst_push_src_class_init),
1470         (gst_push_src_init), (gst_push_src_create):
1471         * gst/base/gstpushsrc.h:
1472         * gst/elements/gstelements.c:
1473         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
1474         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
1475         (gst_fake_sink_init), (gst_fake_sink_set_property),
1476         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
1477         (gst_fake_sink_event), (gst_fake_sink_preroll),
1478         (gst_fake_sink_render), (gst_fake_sink_change_state):
1479         * gst/elements/gstfakesink.h:
1480         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
1481         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
1482         (gst_fake_src_base_init), (gst_fake_src_class_init),
1483         (gst_fake_src_init), (gst_fake_src_event_handler),
1484         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
1485         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
1486         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
1487         (gst_fake_src_create_buffer), (gst_fake_src_create),
1488         (gst_fake_src_start), (gst_fake_src_stop):
1489         * gst/elements/gstfakesrc.h:
1490         * gst/elements/gstfilesink.c: (_do_init),
1491         (gst_file_sink_base_init), (gst_file_sink_class_init),
1492         (gst_file_sink_init), (gst_file_sink_dispose),
1493         (gst_file_sink_set_location), (gst_file_sink_set_property),
1494         (gst_file_sink_get_property), (gst_file_sink_open_file),
1495         (gst_file_sink_close_file), (gst_file_sink_query),
1496         (gst_file_sink_event), (gst_file_sink_render),
1497         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
1498         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
1499         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
1500         * gst/elements/gstfilesink.h:
1501         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
1502         (gst_file_src_class_init), (gst_file_src_init),
1503         (gst_file_src_finalize), (gst_file_src_set_location),
1504         (gst_file_src_set_property), (gst_file_src_get_property),
1505         (gst_file_src_map_region), (gst_file_src_map_small_region),
1506         (gst_file_src_create_mmap), (gst_file_src_create_read),
1507         (gst_file_src_create), (gst_file_src_is_seekable),
1508         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
1509         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
1510         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
1511         (gst_file_src_uri_handler_init):
1512         * gst/elements/gstfilesrc.h:
1513           more autistic cleanliness in functions/names/defines
1514
1515 2005-07-13  Andy Wingo  <wingo@pobox.com>
1516
1517         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
1518         source couldn't negotiate.
1519
1520         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
1521         connections again.
1522
1523         * gst/gstutils.h:
1524         * gst/gstutils.c (gst_element_link_pads_filtered): New old
1525         function. I am channeling Hades. Put your boots on suckers!!!
1526
1527 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
1528
1529         * testsuite/caps/Makefile.am:
1530         * testsuite/caps/value_compare.c:
1531         * testsuite/caps/value_intersect.c:
1532         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
1533           move two testsuite apps over to the check dir
1534
1535 2005-07-12  Wim Taymans  <wim@fluendo.com>
1536
1537         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
1538         Added more debug info in the negotiate process.
1539
1540         * gst/gstmessage.h:
1541         Prepare for segment playback.
1542
1543         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
1544         Better debugging.
1545
1546         * gst/gstutils.c:
1547         Some more docs.
1548
1549         * tools/gst-launch.c: (main):
1550         NULL pipeline on errors.
1551
1552 2005-07-12  Andy Wingo  <wingo@pobox.com>
1553
1554         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
1555         not it comes from a malloc region. Make sure our copy gets freed.
1556
1557 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1558
1559         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
1560         * check/gst/gstmessage.c: (GST_START_TEST):
1561         * check/gst/gststructure.c: (GST_START_TEST),
1562         (gst_structure_suite), (main):
1563           more testing
1564         * gst/gstelement.c: (gst_element_message_full):
1565           clean up GError and debug string now that they get copied
1566         * gst/gstmessage.c: (gst_message_new_error),
1567         (gst_message_new_warning), (gst_message_parse_error),
1568         (gst_message_parse_warning):
1569           use GST_TYPE_G_ERROR for structure_new, and take copies of
1570           arguments, so that we don't mess up refcounting
1571
1572 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1573
1574         * check/Makefile.am:
1575           add per-test valgrind targets
1576         * check/gst-libs/gdp.c: (GST_START_TEST),
1577         (gst_data_protocol_suite), (main):
1578           clean up
1579
1580 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1581
1582         * check/Makefile.am:
1583           instate more valgrindable tests
1584         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1585         (GST_START_TEST), (fakesrc_suite):
1586         * check/gst/gstpad.c: (GST_START_TEST):
1587         * check/gst/gststructure.c: (GST_START_TEST):
1588           fix test leaks
1589         * docs/gst/tmpl/gstminiobject.sgml:
1590         * gst/gstpad.c: (gst_pad_finalize):
1591           fix the static mutex leak
1592
1593 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1594
1595         * check/Makefile.am:
1596           add two more tests for valgrinding
1597         * check/gst/gstvalue.c: (GST_START_TEST):
1598           test refcount of deserialized buffer, found a leak
1599         * docs/gst/gstreamer-docs.sgml:
1600         * docs/gst/gstreamer-sections.txt:
1601         * docs/gst/gstreamer.types:
1602         * docs/gst/tmpl/gstminiobject.sgml:
1603           add miniobject to docs
1604         * gst/gstminiobject.c:
1605           add some docs
1606         * gst/gstvalue.c: (gst_value_deserialize_buffer),
1607         (gst_string_unwrap):
1608           fix a hard-to-find invalid write for one of the tests
1609           fix a leak for deserialized buffers
1610
1611 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1612
1613         * docs/pwg/advanced-events.xml:
1614         * docs/pwg/advanced-request.xml:
1615         * docs/pwg/advanced-scheduling.xml:
1616         * docs/pwg/appendix-porting.xml:
1617         * docs/pwg/building-boiler.xml:
1618         * docs/pwg/intro-preface.xml:
1619         * docs/pwg/other-ntoone.xml:
1620           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
1621           of example code and explanation for pad activation, loop() and
1622           getrange() functions and a bit more. Remove old comments pointing
1623           to loop-functions.
1624         * examples/pwg/Makefile.am:
1625           Add loop/getrange examples.
1626
1627 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1628
1629         * configure.ac:
1630           check for valgrind binary + some fixes
1631         * check/gst.supp:
1632           valgrind suppressions for the tests
1633         * check/Makefile.am:
1634           add a valgrind: target that valgrinds the unit tests
1635         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
1636         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
1637         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1638         * check/gst/gstghostpad.c:
1639           added some cleanup
1640         * check/gst/gstdata.c:
1641           removed
1642         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
1643         (thread_unref), (gst_mini_object_suite), (main):
1644           added
1645         * gst/gst.c: (gst_deinit):
1646         * gst/gst.h:
1647           add a method to clean up.
1648         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1649         (gst_system_clock_obtain):
1650           allow for disposing the system clock.
1651         * tools/gst-launch.c: (main):
1652           deinit
1653
1654 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1655
1656         * docs/gst/tmpl/gstbasesrc.sgml:
1657         * docs/gst/tmpl/gstfakesrc.sgml:
1658         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1659         (gst_base_src_init), (gst_base_src_set_property),
1660         (gst_base_src_get_property), (gst_base_src_get_range),
1661         (gst_base_src_start):
1662         * gst/base/gstbasesrc.h:
1663           add num-buffers property
1664         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1665         (gst_fakesrc_init), (gst_fakesrc_set_property),
1666         (gst_fakesrc_get_property), (gst_fakesrc_create),
1667         (gst_fakesrc_start):
1668           remove num-buffers property
1669
1670 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1671
1672         * docs/gst/gstreamer-sections.txt:
1673         * docs/gst/tmpl/gstbasesink.sgml:
1674         * docs/gst/tmpl/gstbasesrc.sgml:
1675         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
1676         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
1677         (gst_base_sink_finalize), (gst_base_sink_set_clock),
1678         (gst_base_sink_set_property), (gst_base_sink_get_property),
1679         (gst_base_sink_handle_object), (gst_base_sink_event),
1680         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
1681         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
1682         (gst_base_sink_loop), (gst_base_sink_deactivate),
1683         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
1684         (gst_base_sink_change_state):
1685         * gst/base/gstbasesink.h:
1686         * gst/base/gstbasesrc.h:
1687         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
1688         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
1689         (gst_filesink_init):
1690           more macro splitting
1691
1692 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1693
1694         * gst/gstelement.c: (gst_element_get_bus):
1695           add debug
1696         * tools/gst-launch.c: (check_intr), (event_loop):
1697           fix bus leaks
1698
1699 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1700
1701         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
1702           fix a caps leak
1703
1704 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1705
1706         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1707         (gst_base_src_finalize):
1708           add finalize method and clean up properly
1709         * gst/gstpipeline.c: (gst_pipeline_dispose):
1710           add debug
1711
1712 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1713
1714         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
1715         (gst_bin_suite):
1716           add more things to check
1717         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
1718         * gst/gstelement.c:
1719           more debug
1720
1721 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1722
1723         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1724         (GST_START_TEST), (fakesrc_suite):
1725         * check/gst-libs/gdp.c: (GST_START_TEST):
1726         * check/gst/gst.c: (GST_START_TEST):
1727         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
1728         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1729         * check/gst/gstbus.c: (GST_START_TEST):
1730         * check/gst/gstcaps.c: (GST_START_TEST):
1731         * check/gst/gstdata.c: (GST_START_TEST):
1732         * check/gst/gstelement.c: (GST_START_TEST):
1733         * check/gst/gstghostpad.c: (GST_START_TEST):
1734         * check/gst/gstiterator.c: (GST_START_TEST):
1735         * check/gst/gstmessage.c: (GST_START_TEST):
1736         * check/gst/gstobject.c: (GST_START_TEST):
1737         * check/gst/gstpad.c: (GST_START_TEST):
1738         * check/gst/gststructure.c: (GST_START_TEST):
1739         * check/gst/gstsystemclock.c: (GST_START_TEST),
1740         (gst_systemclock_suite):
1741         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
1742         * check/gst/gstvalue.c: (GST_START_TEST):
1743         * check/pipelines/cleanup.c: (GST_START_TEST):
1744         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
1745         * check/states/sinks.c: (GST_START_TEST):
1746         * check/gstcheck.c: (gst_check_init):
1747         * check/gstcheck.h:
1748           add debugging category
1749           use GST_START_TEST now, so we add a debug line
1750
1751 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1752
1753         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
1754           add test for state change message on a bin
1755         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
1756           add another test
1757         * gst/gstbin.c: (gst_bin_init):
1758         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
1759         * gst/gstelement.c: (gst_element_post_message),
1760         (gst_element_set_state):
1761         * gst/gstelementfactory.c: (gst_element_factory_create):
1762         * gst/gstmessage.c: (gst_message_new):
1763         * gst/gstscheduler.c:
1764           various debugging additions and cleanups
1765
1766 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1767
1768         * check/Makefile.am:
1769         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
1770         (main):
1771           adding tests for elements
1772         * gst/gstelement.c: (gst_element_dispose):
1773
1774 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1775
1776         * gst/registries/gstlibxmlregistry.c: (load_feature):
1777           plug more leaks.  A simple gst_init() now is leakfree, yay.
1778
1779 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1780
1781         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
1782         (gst_xml_registry_load):
1783           plug another memleak
1784
1785 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1786
1787         * configure.ac:
1788           use GST_SET_ERROR_CFLAGS
1789         * docs/faq/cvs.xml:
1790           change to ERROR_CFLAGS
1791
1792 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1793
1794         * configure.ac:
1795           make GST_ERROR_CFLAGS overridable and re-enable Werror
1796         * docs/faq/cvs.xml:
1797           add a note about error CFLAGS
1798         * docs/gst/tmpl/gstfakesrc.sgml:
1799         * gst/elements/gstfakesrc.c:
1800           comment out some unused code
1801         * gst/gst.c: (split_and_iterate):
1802         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
1803         (load_feature):
1804           plug some memleaks
1805
1806 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1807
1808         * common/Makefile.am:
1809         * common/gtk-doc.mak:
1810         * docs/gst/Makefile.am:
1811           factor out gtk-doc.mak
1812
1813 2005-07-07  Wim Taymans  <wim@fluendo.com>
1814
1815         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
1816         (gst_thread_scheduler_dispose):
1817         Unlock the STREAM_LOCK completely.
1818
1819 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1820
1821         * check/Makefile.am:
1822         * check/elements/.cvsignore:
1823         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1824         (START_TEST), (fakesrc_suite), (main):
1825         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1826         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
1827         (gst_fakesrc_create), (gst_fakesrc_start):
1828         * gst/elements/gstfakesrc.h:
1829           adding a first element test
1830
1831 2005-07-07  Andy Wingo  <wingo@pobox.com>
1832
1833         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
1834         debug message.
1835
1836 2005-07-07  Wim Taymans  <wim@fluendo.com>
1837
1838         * gst/gstquery.c:
1839         * gst/gstquery.h:
1840         Remove old types
1841
1842 2005-07-07  Wim Taymans  <wim@fluendo.com>
1843
1844         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
1845         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
1846         Allow subclasses to implement their own negotiation.
1847
1848 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1849
1850         * docs/design/part-gstbin.txt:
1851         * docs/design/part-gstpipeline.txt:
1852           Update design notes to reflect the movement of
1853           responsibility for bus handling from GstPipeline to
1854           GstBin
1855
1856 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1857
1858         * configure.ac:
1859           Remove unnecessary queue2/3/4 examples.
1860
1861 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1862
1863         * examples/Makefile.am:
1864         * examples/helloworld/helloworld.c: (event_loop), (main):
1865         * examples/queue/queue.c: (event_loop), (main):
1866         * examples/queue2/queue2.c: (main):
1867           Update a couple of the examples to work again.
1868
1869         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1870         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
1871          Spelling corrections and extra debug.
1872         
1873         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
1874         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
1875         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
1876         * gst/gstbin.h:
1877         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
1878         (gst_pipeline_change_state):
1879         * gst/gstpipeline.h:
1880           Move the bus handler for children to the GstBin, and create a
1881           separate bus for receiving messages from children to the one the
1882           bus sends 'upwards' on.
1883
1884 2005-07-06  Wim Taymans  <wim@fluendo.com>
1885
1886         * gst/base/README:
1887         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1888         (gst_base_sink_handle_object), (gst_base_sink_loop),
1889         (gst_base_sink_change_state):
1890         * gst/base/gstbasesink.h:
1891         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1892         (gst_base_src_init), (gst_base_src_setcaps),
1893         (gst_base_src_getcaps), (gst_base_src_loop),
1894         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
1895         (gst_base_src_start), (gst_base_src_change_state):
1896         * gst/base/gstbasesrc.h:
1897         Make basesrc negotiate.
1898         Handle the case where preroll fails in basesink.
1899         Update README.
1900
1901 2005-07-06  Wim Taymans  <wim@fluendo.com>
1902
1903         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
1904         Implement the fixate function.
1905         Clean up acceptcaps.
1906
1907 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1908
1909         * docs/pwg/building-filterfactory.xml:
1910         * docs/pwg/pwg.xml:
1911           Remove never-written filter-factory chapter; I'll add the various
1912           base classes to part 4 ("other element types") later on.
1913
1914 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1915
1916         * docs/pwg/advanced-negotiation.xml:
1917         * docs/pwg/building-boiler.xml:
1918         * docs/pwg/building-pads.xml:
1919         * docs/pwg/pwg.xml:
1920         * examples/pwg/Makefile.am:
1921           Add a chapter on caps negotiation, simplify the original code
1922           samples a bit w.r.t. caps negotiation, add link to the advanced
1923           section. Add a bunch of examples showing different use cases of
1924           different types of caps negotiation. Upstream renegotiation isn't
1925           fully documented yet since nobody knows how that works.
1926
1927 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
1928
1929         * check/gst/gstpad.c:
1930         * check/gstcheck.c:
1931         * gst/gstpad.c: (gst_pad_get_internal_links_default):
1932           if pad has no parent, return NULL as list of internal links
1933
1934 2005-07-05  Andy Wingo  <wingo@pobox.com>
1935
1936         * gst/elements/gstfilesrc.c:
1937         * gst/elements/gstfakesrc.c: 
1938         * gst/base/gstpushsrc.c:
1939         * gst/base/gstbasesrc.h: 
1940         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
1941         
1942 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
1943
1944         * Makefile.am:
1945           better report generation target (lcov needs a patch)
1946
1947 2005-07-05  Andy Wingo  <wingo@pobox.com>
1948
1949         * gst/elements, testsuite: Null if we got it...
1950
1951 2005-07-05  Wim Taymans  <wim@fluendo.com>
1952
1953         * configure.ac:
1954         * libs/gst/dataprotocol/Makefile.am:
1955         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
1956         * libs/gst/dataprotocol/dataprotocol.h:
1957         * pkgconfig/Makefile.am:
1958         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
1959         * pkgconfig/gstreamer-dataprotocol.pc.in:
1960         Ported dataprotol to 0.9. 
1961         Added pkgconfig files.
1962
1963 2005-07-05  Andy Wingo  <wingo@pobox.com>
1964
1965         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
1966         Default to returning TRUE for the case when tranform_caps returns
1967         a fixed caps, like for identity or volume.
1968
1969         * check/gst/gstbus.c (pound_bus_with_messages): 
1970         * check/gst/gstmessage.c (START_TEST): 
1971         * check/pipelines/simple_launch_lines.c (got_handoff): Application
1972         message API change.
1973
1974         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
1975         logic weaks here: always run transform_caps, trying passthrough
1976         operation only if the original caps intersects with the transform.
1977
1978         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
1979         source and sink caps.
1980
1981         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
1982         Intersect the peer caps with the pad template before going into
1983         transform_caps.
1984         (gst_base_transform_transform_caps): More debugging.
1985
1986         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
1987         src argument.
1988
1989 2005-07-04  Edward Hervey  <edward@fluendo.com>
1990
1991         * gst/gstutils.c:
1992         * gst/gstutils.h:
1993         (gst_pad_add_*_probe): now returns the signal id for better wrapping
1994         in bindings.
1995
1996 2005-07-04  Andy Wingo  <wingo@pobox.com>
1997
1998         * check/gst/gstpad.c: Only set explicit caps on pads.
1999
2000 2005-07-01  Andy Wingo  <wingo@pobox.com>
2001
2002         * tests/network-clock.scm: Commentary update.
2003
2004         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
2005         Didn't really make sense, not implementable with basetransform,
2006         etc.
2007         (gst_identity_transform): Unref inbuf via make_writable. Feeble
2008         attempt at implementing the sync property, needs an unlock method.
2009
2010         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
2011         New func, by default returns the same caps (the identity
2012         transformation).
2013         (gst_base_transform_getcaps): Uses transform_caps to return
2014         something sensible.
2015         (gst_base_transform_setcaps): Complicated logic to get caps on
2016         both pads, even if they are different, and to call set_caps once
2017         for every time both pads get their caps set.
2018         (gst_base_transform_handle_buffer): Give the ref to the transform
2019         function. Allows in-place modification of the buffer.
2020
2021         * gst/base/gstbasetransform.h (transform_caps): New class method.
2022         Given caps on one side, what can I do on the other.
2023         (set_caps): Take two caps, one for each side of the element.
2024
2025         * gst/gstpad.h:
2026         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
2027         caps in place. This is safe because we can check the mutability of
2028         the caps, and a good idea because fixate functions are just called
2029         as a matter of last resort. (Not actually implemented.)
2030         (gst_pad_set_caps): If the caps we're setting is actually the same
2031         as the existing pad caps, just update the pointer without calling
2032         setcaps. Assert that caps is either NULL or fixed, as per the
2033         docs.
2034
2035         * gst/gstghostpad.c: Update for fixate changes.
2036
2037 2005-07-02  Andy Wingo  <wingo@pobox.com>
2038
2039         * gst/gstcaps.c:
2040         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
2041         two refcounts makes it immutable, which is enough. Doc more.
2042
2043 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
2044
2045         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
2046           Put the mini_object into GValue as a mini_object,
2047           not a gpointer, since that's how we declared
2048           the signal.
2049
2050 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2051
2052         * examples/pwg/Makefile.am:
2053           Fix buildbot again.
2054
2055 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2056
2057         * docs/pwg/building-testapp.xml:
2058           Add extra check.
2059         * examples/pwg/Makefile.am:
2060           Fix buildbot.
2061
2062 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2063
2064         * configure.ac:
2065         * examples/Makefile.am:
2066         * examples/pwg/Makefile.am:
2067         * examples/pwg/extract.pl:
2068           Enable building the PWG examples.
2069         * docs/pwg/advanced-interfaces.xml:
2070           Add URI interface stub.
2071         * docs/pwg/advanced-types.xml:
2072         * docs/pwg/other-autoplugger.xml:
2073         * docs/pwg/appendix-porting.xml:
2074         * docs/pwg/pwg.xml:
2075           Add porting guide (mostly stubs), remove autoplugging (see ADM).
2076         * docs/pwg/building-boiler.xml:
2077         * docs/pwg/building-chainfn.xml:
2078         * docs/pwg/building-pads.xml:
2079         * docs/pwg/building-props.xml:
2080         * docs/pwg/building-state.xml:
2081         * docs/pwg/building-testapp.xml:
2082           Update the building-*.xml parts for 0.9 changes. All examples
2083           code blocks compile in examples/pwg/*.
2084
2085 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2086
2087         * docs/manual/advanced-autoplugging.xml:
2088         * docs/manual/appendix-checklist.xml:
2089         * docs/manual/appendix-integration.xml:
2090         * docs/manual/highlevel-components.xml:
2091           Fix playbin/decodebin examples, update docs a bit, mention bus
2092           instead of signals in various places, mention kmplayer and
2093           kaffeine since they have a working GStreamer backend in the KDE
2094           section.
2095
2096 2005-06-30  Wim Taymans  <wim@fluendo.com>
2097
2098         * CHANGES-0.9:
2099         * docs/design/draft-ghostpads.txt:
2100         * docs/design/draft-push-pull.txt:
2101         * docs/design/draft-query.txt:
2102         * docs/design/part-TODO.txt:
2103         * docs/design/part-query.txt:
2104         Added CHANGES-0.9 doc, updated status of other docs.
2105         
2106         * gst/gstquery.h:
2107         Remove "hmm" macro
2108
2109 2005-06-30  Wim Taymans  <wim@fluendo.com>
2110
2111         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
2112         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
2113         (gst_base_sink_change_state):
2114         * gst/base/gstbasesink.h:
2115         Some tweaks, only EOS and a buffer complete a preroll.
2116
2117 2005-06-30  Andy Wingo  <wingo@pobox.com>
2118
2119         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
2120         activate_push down to the internal pad as well.
2121
2122 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
2123
2124         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2125
2126         * gst/gsttaginterface.c:
2127           Some documentation fixes (#307394 and #307397).
2128
2129 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
2130
2131         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2132
2133         * gst/gstvalue.c: (gst_value_intersect_list):
2134           Fix memleak (#309125).
2135
2136 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2137
2138         * docs/manual/advanced-dataaccess.xml:
2139           Fix fakesrc example to compile; doesn't work, bug somewhere...?
2140         * docs/manual/basics-pads.xml:
2141           Add reference for filtered caps to above chapter.
2142
2143 2005-06-30  Wim Taymans  <wim@fluendo.com>
2144
2145         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
2146         (gst_bin_change_state):
2147         Probes are gone.
2148         Lame attempt at making the state change function a bit
2149         more readable.
2150
2151 2005-06-30  Wim Taymans  <wim@fluendo.com>
2152
2153         * docs/design/part-clocks.txt:
2154         * docs/design/part-element-sink.txt:
2155         * docs/design/part-events.txt:
2156         * docs/design/part-preroll.txt:
2157         * docs/design/part-states.txt:
2158         Some more tweeks and additions to the docs.
2159
2160 2005-06-30  Wim Taymans  <wim@fluendo.com>
2161
2162         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
2163         (default_have_data), (gst_pad_class_init), (gst_pad_init),
2164         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
2165         (gst_pad_check_pull_range), (gst_pad_get_range),
2166         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
2167         * gst/gstpad.h:
2168         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
2169         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
2170         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
2171         (gst_pad_remove_buffer_probe):
2172         Removed atomic operations, use existing LOCK.
2173         Move exception handling out of main code path.
2174
2175 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2176
2177         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
2178         (silly_return_true_function), (gst_pad_class_init),
2179         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
2180         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
2181         (gst_pad_send_event):
2182           Fix accumulator, add default value by using _emitv() instead
2183           of _emit() for signal emission.
2184
2185 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2186
2187         * docs/manual/advanced-dataaccess.xml:
2188         * examples/manual/Makefile.am:
2189           Add probe example.
2190         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
2191           Make work (??).
2192
2193 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
2194
2195         * gst/elements/gstfilesink.c: (gst_filesink_render):
2196           Simplify code so that we don't have to handle short
2197           writes and return GST_FLOW_ERROR if an error occured.
2198
2199 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2200
2201         * docs/gst/gstreamer-docs.sgml:
2202           Remove probes more.
2203
2204 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2205
2206         * docs/gst/gstreamer-sections.txt:
2207         * docs/gst/tmpl/gstpad.sgml:
2208         * docs/gst/tmpl/gstprobe.sgml:
2209         * gst/Makefile.am:
2210         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
2211         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
2212         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
2213         (gst_pad_push_event), (gst_pad_send_event):
2214         * gst/gstpad.h:
2215         * gst/gstutils.c: (gst_pad_add_data_probe),
2216         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
2217         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
2218         (gst_pad_remove_buffer_probe):
2219         * gst/gstutils.h:
2220           Remove old probes, add new g-signal-based probes and some utility
2221           functions.
2222
2223 2005-06-29  Edward Hervey  <edward@fluendo.com>
2224
2225         * gst/gstelementfactory.c:
2226         * gst/gstutils.h:
2227         * gst/gstutils.c:
2228         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
2229         the definition to the header file.
2230
2231 2005-06-29  Andy Wingo  <wingo@pobox.com>
2232
2233         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
2234         plugins from the source directory.
2235
2236 2005-06-29  Wim Taymans  <wim@fluendo.com>
2237
2238         * docs/gst/tmpl/gstbuffer.sgml:
2239         * docs/gst/tmpl/gstclock.sgml:
2240         Some fixings for blantently wrong text.
2241
2242 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
2243
2244         * check/Makefile.am:
2245         * gst/gst.c: (add_path_func), (init_pre):
2246         * gst/gstregistry.c: (gst_registry_add_path):
2247           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
2248           only scan the GST_PLUGIN_PATH locations, and not add
2249           system locations
2250
2251 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
2252
2253         * docs/gst/gstreamer-sections.txt:
2254         * docs/gst/tmpl/gstbasesrc.sgml:
2255         * gst/gstelement.c:
2256         * gst/gstelement.h:
2257         * gst/gstevent.c:
2258         * gst/gstutils.c:
2259           doc fixes
2260
2261 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2262
2263         * docs/manual/advanced-autoplugging.xml:
2264           Fix autoplugging example.
2265
2266 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2267
2268         * docs/manual/advanced-autoplugging.xml:
2269         * docs/manual/mime-world.fig:
2270           Try to get autoplugging working, fix type detection. Fix text
2271           in hello-world image.
2272
2273 2005-06-29  Wim Taymans  <wim@fluendo.com>
2274
2275         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
2276         (gst_base_sink_change_state):
2277         Small debug line.
2278
2279         * gst/gstclock.h:
2280         map SIGNAL and BROADCAST to the right function.
2281
2282         * gst/gstobject.h:
2283         Remove redundant braces.
2284
2285         * gst/gstpad.c: (gst_pad_set_caps):
2286         Don't call setcaps function when reseting caps to NULL.
2287
2288         * gst/gstsystemclock.c: (gst_system_clock_dispose),
2289         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
2290         (gst_system_clock_id_unschedule):
2291         Use BROADCAST as this is what we do.
2292
2293 2005-06-29  Wim Taymans  <wim@fluendo.com>
2294
2295         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
2296         We are actually prerolling before commiting the state
2297         change. 
2298
2299 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2300
2301         * docs/manual/advanced-clocks.xml:
2302         * docs/manual/advanced-interfaces.xml:
2303         * docs/manual/advanced-metadata.xml:
2304         * docs/manual/advanced-position.xml:
2305         * docs/manual/advanced-schedulers.xml:
2306         * docs/manual/advanced-threads.xml:
2307         * docs/manual/appendix-porting.xml:
2308         * docs/manual/basics-bins.xml:
2309         * docs/manual/basics-bus.xml:
2310         * docs/manual/basics-elements.xml:
2311         * docs/manual/basics-helloworld.xml:
2312         * docs/manual/basics-pads.xml:
2313         * docs/manual/highlevel-components.xml:
2314         * docs/manual/manual.xml:
2315         * docs/manual/thread.fig:
2316           Update (until threads/scheduling) Application Development Manual;
2317           remove GstThread, add GstBus, add simple porting checklist, add
2318           documentation for tag writing, clocks, make all examples until this
2319           part compile and run.
2320         * examples/manual/Makefile.am:
2321           Update from changes to Application Development Manual; add bus
2322           example, remove thread example.
2323
2324 2005-06-28  Wim Taymans  <wim@fluendo.com>
2325
2326         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
2327         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
2328         (gst_bus_source_dispatch):
2329         Add debugging messages.
2330         Make internal methods static.
2331         Handle the case where the bus is flushed in the handler.
2332         
2333         * gst/gstelement.c: (gst_element_get_bus):
2334         Fix refcount in _get_bus();
2335
2336         * gst/gstpipeline.c: (gst_pipeline_change_state),
2337         (gst_pipeline_get_clock_func):
2338         Clock refcounting fixes.
2339         Handle the case where preroll timed out more gracefully.
2340         
2341         * gst/gstsystemclock.c: (gst_system_clock_dispose):
2342         Clean up the internal thread in dispose. This is needed
2343         for subclasses that actually get disposed.
2344         
2345         * gst/schedulers/threadscheduler.c:
2346         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
2347         (gst_thread_scheduler_dispose):
2348         Free thread pool in dispose.
2349
2350 2005-06-28  Andy Wingo  <wingo@pobox.com>
2351
2352         * tests/network-clock-utils.scm (debug, print-event): New utils.
2353
2354         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
2355         (*packet-loss*): Unified loss probability.
2356         (network-time): Report out-of-band events.
2357
2358         * tests/plot-data: Add support for out-of-band events. Hack it
2359         into this script instead of passing it down the pipe; should fix
2360         this later.
2361
2362 2005-06-28  Wim Taymans  <wim@fluendo.com>
2363
2364         * docs/gst/gstreamer.types:
2365         * docs/gst/tmpl/gstbasesrc.sgml:
2366         * docs/gst/tmpl/gstpad.sgml:
2367         Docs fixes.
2368
2369 2005-06-28  Wim Taymans  <wim@fluendo.com>
2370
2371         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2372         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
2373         (gst_proxy_pad_do_fixatecaps):
2374         Correctly proxy the check_pull_range function.
2375
2376 2005-06-28  Andy Wingo  <wingo@pobox.com>
2377
2378         * tests/network-clock.scm: Removed need for slib.
2379         
2380 2005-06-28  Wim Taymans  <wim@fluendo.com>
2381
2382         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
2383         (gst_basesink_preroll_queue_flush):
2384         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
2385         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
2386         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2387         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
2388         (gst_proxy_pad_set_property):
2389         * gst/gstpad.c:
2390         * gst/gstpad.h:
2391         * gst/gstqueue.c: (gst_queue_init):
2392         The deprecated pad loop function is removed now.
2393
2394 2005-06-28  Andy Wingo  <wingo@pobox.com>
2395
2396         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
2397         New parameters, simulate network packet loss.
2398
2399         * tests/network-clock-utils.scm: Initialize the RNG.
2400
2401 2005-06-28  Wim Taymans  <wim@fluendo.com>
2402
2403         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
2404         (gst_basesink_event), (gst_basesink_deactivate):
2405         Flushing the preroll queue always needs to unlock the waiters.
2406
2407 2005-06-28  Edward Hervey  <edward@fluendo.com>
2408
2409         * gst/gstpipeline.c: (gst_pipeline_send_event): 
2410         Wheen a seek was successful on a pipeline, set the stream_time to the
2411         seek offset in order to have a synchronized stream_time.
2412
2413 2005-06-28  Wim Taymans  <wim@fluendo.com>
2414
2415         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2416         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
2417         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
2418         (gst_proxy_pad_do_fixatecaps):
2419         Call wrapper function instead of just calling the function
2420         pointers. This takes care of any locking and whatmore.
2421
2422 2005-06-28  Wim Taymans  <wim@fluendo.com>
2423
2424         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
2425         (gst_pad_pull_range):
2426         * gst/gstpad.h:
2427         CONNECTED -> LINKED.
2428
2429 2005-06-28  Andy Wingo  <wingo@pobox.com>
2430
2431         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
2432         source-munging commit!!!
2433
2434         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
2435         (gst_object_sink): Take gpointer arguments, not GstObject --
2436         avoids casts. Like GLib.
2437
2438         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
2439         activate.
2440
2441 2005-06-27  Andy Wingo  <wingo@pobox.com>
2442
2443         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
2444         remaining buffer.
2445
2446         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
2447         returns a sorted copy of the trace list.
2448         (gst_alloc_trace_print_live): New API, only prints traces with
2449         live objects. Sort the list.
2450         (gst_alloc_trace_print_all): Sort the list.
2451         (gst_alloc_trace_print): Align columns.
2452
2453         * gst/elements/gstttypefindelement.c:
2454         * gst/elements/gsttee.c:
2455         * gst/base/gstbasesrc.c:
2456         * gst/base/gstbasesink.c:
2457         * gst/base/gstbasetransform.c:
2458         * gst/gstqueue.c: Adapt for pad activation changes.
2459
2460         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
2461         sched.
2462         (gst_pipeline_dispose): Drop ref on sched.
2463
2464         * gst/gstpad.c (gst_pad_init): Set the default activate func.
2465         (gst_pad_activate_default): Push mode by default.
2466         (pre_activate_switch, post_activate_switch): New stubs, things to
2467         do before and after switching activation modes on pads.
2468         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
2469         the pad's activate function to choose which mode to activate.
2470         Shortcut on deactivation and call the right function directly.
2471         (gst_pad_activate_pull): New API, (de)activates a pad in pull
2472         mode.
2473         (gst_pad_activate_push): New API, same for push mode.
2474         (gst_pad_set_activate_function) 
2475         (gst_pad_set_activatepull_function) 
2476         (gst_pad_set_activatepush_function): Setters for new API.
2477
2478         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
2479         Trace all miniobjects.
2480         (gst_mini_object_make_writable): Unref the arg if we copy, like
2481         gst_caps_make_writable.
2482
2483         * gst/gstmessage.c (_gst_message_initialize): No trace init.
2484
2485         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
2486         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
2487         Adapt for new pad API.
2488
2489         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
2490
2491         * gst/gstelement.h:
2492         * gst/gstelement.c (gst_element_iterate_src_pads) 
2493         (gst_element_iterate_sink_pads): New API functions.
2494         
2495         * gst/gstelement.c (iterator_fold_with_resync): New utility,
2496         should fold into gstiterator.c in some form.
2497         (gst_element_pads_activate): Simplified via use of fold and
2498         delegation of decisions to gstpad->activate.
2499
2500         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
2501         help in debugging.
2502
2503         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
2504         class once in init, like gstmessage. Didn't run into this issue
2505         but it seems correct. Don't initialize a trace, gstminiobject does
2506         that.
2507
2508         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
2509         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
2510         to the bus.
2511         (assert_live_count): New util function, uses alloc traces to check
2512         cleanup.
2513
2514         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
2515         To be modified when unlink drops the internal pad.
2516
2517 2005-06-27  Wim Taymans  <wim@fluendo.com>
2518
2519         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
2520         (gst_bin_change_state):
2521         Cleanup the get_state() function a little, make sure it
2522         iterates the same set of elements.
2523         Added stub iterate_state_order().
2524
2525 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
2526
2527         * docs/gst/gstreamer-docs.sgml:
2528         * docs/gst/gstreamer-sections.txt:
2529         * docs/gst/gstreamer.types:
2530         * docs/gst/tmpl/gstbasesink.sgml:
2531         * docs/gst/tmpl/gstbasesrc.sgml:
2532         * docs/gst/tmpl/gstbasetransform.sgml:
2533         * docs/gst/tmpl/gstelement.sgml:
2534         * docs/gst/tmpl/gstiterator.sgml:
2535         * gst/base/gstbasesrc.c:
2536         * gst/base/gstbasesrc.h:
2537         * gst/base/gstbasetransform.h:
2538         * gst/gstelement.c:
2539         * gst/gstiterator.h:
2540           adding basetransform and iterator docs
2541
2542 2005-06-27  Andy Wingo  <wingo@pobox.com>
2543
2544         * docs/design/part-activation.txt: Notes on how activation should
2545         work -- not quite implemented yet.
2546
2547 2005-06-25  Wim Taymans  <wim@fluendo.com>
2548
2549         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
2550         At least get the chain function correct, needs more
2551         fixing.
2552
2553 2005-06-25  Wim Taymans  <wim@fluendo.com>
2554
2555         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2556         (gst_basesink_handle_object), (gst_basesink_event),
2557         (gst_basesink_do_sync), (gst_basesink_handle_event),
2558         (gst_basesink_change_state):
2559         * gst/gsttask.h:
2560         Right, two problems here: ghostpads don't take locks and
2561         glib _rec_mutex_lock_full() with depth==0 still locks.
2562         Catch illegal locking and g_warn them.
2563
2564 2005-06-25  Wim Taymans  <wim@fluendo.com>
2565
2566         * check/states/sinks.c: (START_TEST), (gst_object_suite):
2567         Have to check for completion now...
2568
2569 2005-06-25  Wim Taymans  <wim@fluendo.com>
2570
2571         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2572         (gst_basesink_handle_object), (gst_basesink_event),
2573         (gst_basesink_do_sync), (gst_basesink_handle_event),
2574         (gst_basesink_change_state):
2575         * gst/gstpad.h:
2576         Unlock STREAM_LOCK whatever the recursion was.
2577
2578 2005-06-25  Wim Taymans  <wim@fluendo.com>
2579
2580         * gst/base/gstbasesink.c: (gst_basesink_set_property),
2581         (gst_basesink_preroll_queue_empty),
2582         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
2583         (gst_basesink_event), (gst_basesink_do_sync),
2584         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
2585         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
2586         (gst_basesink_change_state):
2587         Reworked the base sink, handle event and buffer serialisation
2588         correctly and removed possible deadlock.
2589         Handle EOS correctly.
2590
2591 2005-06-25  Wim Taymans  <wim@fluendo.com>
2592
2593         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
2594         (gst_pipeline_change_state):
2595         * tools/gst-launch.c: (check_intr), (event_loop), (main):
2596         Allow elements to post EOS in the state change function.
2597         Fix up -launch, make it exit the poll loop when the
2598         pipeline actually changed state.
2599         Fix up warning parsing in -launch.
2600
2601 2005-06-25  Wim Taymans  <wim@fluendo.com>
2602
2603         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
2604         (gst_tee_sink_activate):
2605         Core takes STREAM_LOCK for us now.
2606
2607 2005-06-25  Wim Taymans  <wim@fluendo.com>
2608
2609         * gst/gstelement.c: (gst_element_get_state_func),
2610         (gst_element_set_state):
2611         * gst/gstelement.h:
2612         * gst/gstmessage.c: (gst_message_parse_error),
2613         (gst_message_parse_warning):
2614         Keep track of current target state while performing a state
2615         change so that subclasses can do something interesting.
2616         Fix parsing of warning/error messages when GError is NULL.
2617
2618 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
2619
2620         * docs/gst/Makefile.am:
2621         * docs/gst/gstreamer-docs.sgml:
2622         * docs/gst/gstreamer-sections.txt:
2623         * docs/gst/gstreamer.types:
2624         * docs/gst/tmpl/gstbasesink.sgml:
2625         * docs/gst/tmpl/gstbasesrc.sgml:
2626         * docs/gst/tmpl/gstbin.sgml:
2627         * docs/gst/tmpl/gstcompat.sgml:
2628         * docs/gst/tmpl/gstfakesink.sgml:
2629         * docs/gst/tmpl/gstfakesrc.sgml:
2630         * docs/gst/tmpl/gstfilesink.sgml:
2631         * docs/gst/tmpl/gstfilesrc.sgml:
2632         * docs/gst/tmpl/gstindex.sgml:
2633         * docs/manual/appendix-quotes.xml:
2634         * gst/base/gstbasesrc.h:
2635         * gst/elements/gstfakesrc.h:
2636         * gst/gstmessage.h:
2637           start pulling in base classes and elements in our docs
2638
2639 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
2640
2641         * docs/gst/Makefile.am:
2642         * docs/libs/Makefile.am:
2643           fixed make distcheck with gtk-doc 1.3
2644
2645 2005-06-23  Wim Taymans  <wim@fluendo.com>
2646
2647         * gst/gstelement.c: (gst_element_get_state_func),
2648         (gst_element_set_state), (gst_element_change_state):
2649         When the state did not change, also report NO_PREROLL
2650         when it matters.
2651
2652 2005-06-23  Wim Taymans  <wim@fluendo.com>
2653
2654         * gst/gstpad.c: (gst_pad_event_default):
2655         * gst/gstqueue.c: (gst_queue_loop):
2656         No unsafe task pausing please.
2657
2658 2005-06-23  Wim Taymans  <wim@fluendo.com>
2659
2660         * gst/schedulers/threadscheduler.c:
2661         (gst_thread_scheduler_task_start),
2662         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
2663         Ref the task before pushing it on the threadpool. This
2664         makes sure that we have a ref when the threadfunction is
2665         actually called.
2666
2667 2005-06-23  Andy Wingo  <wingo@pobox.com>
2668
2669         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
2670         offset is greater than the file's size.
2671
2672         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
2673         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
2674         * gst/gstobject.c (gst_object_class_init): Make the class lock
2675         recursive. Wim won't let me drop deep_notify. Decodebin works
2676         again, whoopdy doo.
2677
2678         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
2679         internal pad, and hacks accordingly. Doesn't do it on the target
2680         pad because we change its caps. Probably catches all cases of
2681         interest tho.
2682         (gst_ghost_pad_set_property): Connect to notify::caps as
2683         appropritate.
2684
2685         * tests/network-clock.scm (plot-simulation): Pipe data to the
2686         elite python skript.
2687
2688         * tests/network-clock-utils.scm (define-parameter): New macro,
2689         defines a parameter that can be set via the command line.
2690         (set-parameter!, parse-parameter-arguments): Command line args
2691         parser.
2692
2693         * tests/plot-data: Simple matplotlib-based plotter, takes input on
2694         stdin.
2695
2696 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
2697
2698         * gst/elements/gsttypefindelement.c:
2699         (gst_type_find_element_handle_event):
2700           Don't restart typefinding on a discont.
2701         * gst/gstelement.c: (gst_element_set_state):
2702           Debug spelling fix.
2703         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
2704           Allow changing mode of an active pad.
2705           Debug output fixes.
2706         * gst/registries/gstlibxmlregistry.c: (load_feature):
2707           Don't cast a static pad template to a normal pad template.
2708
2709 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
2710
2711         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2712         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2713           remove gst_strtoll completely, since it didn't actually do
2714           anything more than what g_ascii_strtoull already does.
2715           check for range errors when deserializing
2716           do a cast for the unsigned cases; but further fixing needs
2717           a decision on what the interpretation of "(int)" and
2718           deserialization should be for values that fall outside the
2719           type's boundaries (ie, refuse, or interpret as casting)
2720
2721 2005-06-23  Wim Taymans  <wim@fluendo.com>
2722
2723         * check/Makefile.am:
2724         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
2725         * docs/design/part-live-source.txt:
2726         * docs/design/part-states.txt:
2727         * gst/base/gstbasesrc.c: (gst_basesrc_init),
2728         (gst_basesrc_set_live), (gst_basesrc_is_live),
2729         (gst_basesrc_get_range), (gst_basesrc_activate),
2730         (gst_basesrc_change_state):
2731         * gst/base/gstbasesrc.h:
2732         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2733         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
2734         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
2735         * gst/gstelement.c: (gst_element_get_state_func),
2736         (gst_element_set_state):
2737         * gst/gstelement.h:
2738         * gst/gsttypes.h:
2739         * tools/gst-launch.c: (event_loop), (main):
2740         Added support for live sources and other elements that
2741         cannot do preroll.
2742         Updated design docs, added live-source design doc.
2743         Implemented live source functionality in basesrc
2744         Fix error condition in _bin_get_state()
2745         Implement live source handling in -launch.
2746         Added check for live sources.
2747         Fixed case in GstBin where elements were changed state
2748         multiple times.
2749
2750
2751 2005-06-23  Andy Wingo  <wingo@pobox.com>
2752
2753         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
2754         borken refcounting.
2755
2756         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
2757         gst_caps_replace takes care of this for us.
2758
2759         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
2760         gst_pad_set_caps on the target, not just its setcaps() function.
2761
2762         * tests/network-clock.scm: 
2763         * tests/network-clock-utils.scm: A network clock simulator.
2764         Something of an algorithmic testbed before doing something in C.
2765
2766 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2767
2768         * check/Makefile.am:
2769         * check/gst/capslist.h:
2770           copy over from 0.8, and add two with bitmasks specified with
2771           (int) 0xFF...
2772         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2773           add test to parse everything from capslist.h
2774         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
2775         (main):
2776           add test for structure deserialization
2777         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2778           add tests for deserialization of strings to int types
2779         * gst/gststructure.c: (gst_structure_nth_field_name):
2780         * gst/gststructure.h:
2781           add a way to get the name of a field referenced by index
2782         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2783           instead of checking if the resulting long long lies between
2784           min and max, we check if the long long would fit into
2785           a number of bytes for the final type.
2786           This fixes cases where a string represents 2^32 - 1, which
2787           when cast to int would be the (valid) -1, but is bigger than
2788           G_MAXINT
2789
2790 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2791
2792         * gst/parse/grammar.y:
2793           add a log line for type deserialization
2794
2795 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2796
2797         * check/gst/gstvalue.c: (START_TEST):
2798         * gst/gstvalue.c: (gst_value_deserialize):
2799           return long long, not int, so gint64 deserialization actually
2800           works.  Is there any flag that makes the compiler check this ?
2801           Fixes #308559
2802
2803 2005-06-22  Wim Taymans  <wim@fluendo.com>
2804
2805         * gst/gstbuffer.h:
2806         Added convenience macros for setting buffers in GValue.
2807
2808 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2809
2810         * check/gst/.cvsignore:
2811         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2812           add a test deserializing int64, and comment part out because
2813           it fails, yay !
2814
2815 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2816
2817         * check/Makefile.am:
2818         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
2819         * testsuite/Makefile.am:
2820         * testsuite/caps/Makefile.am:
2821         * testsuite/caps/value_serialize.c:
2822         * testsuite/test_gst_init.c:
2823           move a value_serialize test over
2824
2825 2005-06-20  Wim Taymans  <wim@fluendo.com>
2826
2827         * gst/gstpad.c:
2828         Small doc updates.
2829         
2830         * gst/gstvalue.c: (gst_value_compare_buffer),
2831         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
2832         (gst_value_compare_flags), (gst_value_serialize_flags),
2833         (gst_value_deserialize_flags), (_gst_value_initialize):
2834         Fix serialisation of buffers, they are not boxed types anymore
2835
2836 2005-06-20  Wim Taymans  <wim@fluendo.com>
2837
2838         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2839         Testcase to show error in buffer-on-caps serialisation.
2840
2841 2005-06-20  Andy Wingo  <wingo@pobox.com>
2842
2843         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
2844         will be adding to later.
2845
2846         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
2847         if its socks fill with rocks.
2848         (gst_system_clock_obtain): Set the name on object construction.
2849         Avoid double-checked locking.
2850
2851 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
2852
2853         * gst/gsturi.c: (gst_element_make_from_uri):
2854           Fix potential endless loop.
2855
2856 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2857
2858         * check/Makefile.am:
2859           add gsttag
2860         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
2861         (main):
2862           move over from testsuite dir and clean up
2863         * configure.ac:
2864         * gst/gsttag.c:
2865         * testsuite/Makefile.am:
2866         * testsuite/tags/.cvsignore:
2867         * testsuite/tags/Makefile.am:
2868         * testsuite/tags/merge.c:
2869           remove testsuite/tags
2870
2871 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2872
2873         * docs/gst/gstreamer-sections.txt:
2874         * docs/gst/tmpl/gstenumtypes.sgml:
2875         * win32/gstenumtypes.c:
2876           clean up documentation build a little
2877
2878 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2879
2880         * check/gstcheck.h:
2881           add macros for checking refcounts on objects and caps
2882         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
2883           add some more unit tests
2884         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
2885         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
2886           fix leaked refcounts (I hope :)) so unittest works
2887         * gst/gstpad.h:
2888           whitespace removal
2889
2890 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2891
2892         * configure.ac: back to HEAD
2893
2894 === release 0.9.1 ===
2895
2896 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2897
2898         * NEWS:
2899         * RELEASE:
2900           updated
2901
2902 2005-06-17  Andy Wingo  <wingo@pobox.com>
2903
2904         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
2905         assert; it's always possible that the pad gets deactivated in
2906         between the checks in gstpad.c and the implementation. Rely on
2907         finish_preroll() to return a FLUSHING or similar instead of on the
2908         assert.
2909         
2910         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
2911         clock and post an EOS message if we come out of finish_preroll in
2912         the playing state.
2913
2914 2005-06-16  David Schleef  <ds@schleef.org>
2915
2916         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
2917         (gst_capsfilter_set_property): Allow NULL as possible value
2918         for filter_caps property, indicating GST_CAPS_ANY.
2919
2920 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2921
2922         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
2923           fix debug output
2924         * gst/schedulers/Makefile.am:
2925           use libgst prefix
2926         * gstreamer.spec.in:
2927           fix spec for it
2928
2929 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2930
2931         * gstreamer.spec.in:
2932           clean up
2933
2934 2005-06-08  Andy Wingo  <wingo@pobox.com>
2935
2936         * gst/gstutils.c: RPAD fixes all around.
2937         (gst_element_link_pads): Refcounting fixes.
2938
2939         * tools/gst-inspect.c:
2940         * tools/gst-xmlinspect.c:
2941         * parse/grammar.y:
2942         * gst/base/gsttypefindhelper.c:
2943         * gst/base/gstbasesink.c:
2944         * gst/gstqueue.c: RPAD fixes.
2945
2946         * gst/gstghostpad.h:
2947         * gst/gstghostpad.c: New ghost pad implementation as full proxy
2948         pads. The tricky thing is they provide both source and sink
2949         interfaces, since they proxy the internal pad for the external
2950         pad, and vice versa. Implement with lower-level ProxyPad objects,
2951         with the interior proxy pad as a child of the exterior ghost pad.
2952         Should write a doc on this.
2953         
2954         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
2955         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
2956         gst_object API.
2957         
2958         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
2959         pads are real pads. No ghost pads in this file. Not documenting
2960         the myriad s/RPAD/PAD/ and REALIZE fixes.
2961         (gst_pad_class_init): Add properties for "direction" and
2962         "template". Both are construct-only, so they can't change during
2963         the life of the pad. Fixes properly deriving from GstPad.
2964         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
2965         derived objects, just set properties when creating the objects via
2966         g_object_new.
2967         (gst_pad_get_parent): Implement as a function, return NULL if the
2968         parent is not an element.
2969         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
2970         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
2971         
2972         * gst/gstobject.c (gst_object_class_init): Make name a construct
2973         property. Don't set it in the object init.
2974
2975         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
2976         with UNKNOWN direction.
2977         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
2978         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
2979         (gst_element_remove_pad): Remove ghost-pad special cases.
2980         (gst_element_pads_activate): Remove rpad cruft.
2981
2982         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
2983         catch the pad's-parent-not-an-element case.
2984
2985         * gst/gst.h: Include gstghostpad.h.
2986
2987         * gst/gst.c (init_post): No more real, ghost pads.
2988
2989         * gst/Makefile.am: Add gstghostpad.[ch].
2990
2991         * check/Makefile.am:
2992         * check/gst/gstbin.c:
2993         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
2994         into a bin creates ghost pads, and that the refcounts are right.
2995         Partly moved from gstbin.c.
2996
2997 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2998
2999         * check/gst-libs/.cvsignore:
3000         * check/gst/.cvsignore:
3001         * check/pipelines/.cvsignore:
3002           ignore more
3003         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
3004         (START_TEST), (cleanup_suite), (main):
3005           add some tests related to cleanup after running pipelines
3006
3007 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3008
3009         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
3010           add a testsuite for GstBuffer
3011
3012 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3013
3014         * gst/gstminiobject.h:
3015           add defines for accessing the refcount
3016
3017 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
3018
3019         * Makefile.am: added support for html unit test coverage reports
3020
3021 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
3022
3023         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
3024           Free existing caps if the capsfilter changes. Add a FIXME about
3025           setting those caps on the pads.
3026
3027         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
3028           Before adding a ghost pad to a parent bin, check that there isn't
3029           already one for the element on the bin. Prevents infinite recursion
3030           when using decodebin in parse pipelines. Andy says he'll rewrite the
3031           way this works anyway, so ignore the hack.
3032
3033 2005-06-02  Andy Wingo  <wingo@pobox.com>
3034
3035         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
3036         file size, pass it on to the type find helper.
3037
3038         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
3039         segment_start and segment_end properly according to the seek
3040         method. Segment_end is still a bit flaky because offset can be
3041         negative for CUR and END cases, but it takes -1 as an "unset"
3042         value.
3043
3044 2005-06-02  Wim Taymans  <wim@fluendo.com>
3045
3046         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
3047         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
3048         (gst_basesink_activate):
3049         * gst/base/gstbasesink.h:
3050         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3051         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
3052         (gst_pad_query), (gst_pad_start_task):
3053         * gst/gstpad.h:
3054         * gst/gstqueue.c: (gst_queue_bufferalloc),
3055         (gst_queue_handle_sink_event), (gst_queue_chain):
3056         Bufferalloc: return GstFlowReturn to more accuratly report
3057         why allocation failed.
3058
3059 2005-06-02  Wim Taymans  <wim@fluendo.com>
3060
3061         * gst/gstpipeline.c: (gst_pipeline_send_event):
3062         Take snapshot of state without blocking.
3063
3064 2005-06-02  Wim Taymans  <wim@fluendo.com>
3065
3066         * docs/design/part-TODO.txt:
3067         * docs/design/part-caps.txt:
3068         * docs/design/part-clocks.txt:
3069         * docs/design/part-negotiation.txt:
3070         * docs/design/part-preroll.txt:
3071         Small doc updates 
3072
3073 2005-05-30  Wim Taymans  <wim@fluendo.com>
3074
3075         * gst/elements/gstidentity.c: (gst_identity_event),
3076         (gst_identity_transform), (gst_identity_get_property):
3077         Protect last_message property as it is accessed from
3078         multiple threads.
3079
3080 2005-05-30  Wim Taymans  <wim@fluendo.com>
3081
3082         * gst/gstelement.c: (gst_element_init),
3083         (gst_element_pads_activate), (gst_element_change_state):
3084         Slicker pad activation code.
3085
3086 2005-05-30  Wim Taymans  <wim@fluendo.com>
3087
3088         * gst/Makefile.am:
3089         * gst/gstelement.h:
3090         * gst/gstelementfactory.h:
3091         * gst/gsttypes.h:
3092         Move elementfactory methods to separate .h file.
3093
3094 2005-05-30  Wim Taymans  <wim@fluendo.com>
3095
3096         * docs/design/part-overview.txt:
3097         * gst/gstsystemclock.h:
3098         Small typo fixes, doc updates.
3099
3100 2005-05-30  Wim Taymans  <wim@fluendo.com>
3101
3102         * gst/gst.c: (gst_init_get_popt_table), (init_post),
3103         (init_popt_callback):
3104         Remove cpu-opt flag.
3105
3106 2005-05-30  Wim Taymans  <wim@fluendo.com>
3107
3108         * gst/gstbuffer.c: (gst_subbuffer_finalize),
3109         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
3110         * gst/gstbuffer.h:
3111         Avoid typechecking in places where not needed.
3112         Added accessor for malloc_data.
3113
3114 2005-05-30  Wim Taymans  <wim@fluendo.com>
3115
3116         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
3117         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
3118         (gst_pad_configure_sink), (gst_pad_configure_src),
3119         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
3120         (gst_pad_start_task):
3121         Propagate errors from _set_caps() in configure_src/sink
3122         functions instead of returning TRUE.
3123         FLUSH events can travel up and downstream
3124
3125
3126 2005-05-30  Wim Taymans  <wim@fluendo.com>
3127
3128         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
3129         (gst_basesink_activate):
3130         Handle EOS in preroll.
3131
3132 2005-05-30  Wim Taymans  <wim@fluendo.com>
3133
3134         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
3135         (gst_queue_loop), (gst_queue_handle_src_event):
3136         Remove old pieces of code
3137         Flushing the queue in an upstream event is a very bad idea.
3138
3139 2005-05-26  Andy Wingo  <wingo@pobox.com>
3140
3141         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
3142         gst_value_set_mini_object so as to add a ref on the object (which
3143         will be removed when the value is unset).
3144
3145         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
3146         arg type in ::handoff.
3147
3148         * gst/gstelement.c (gst_element_change_state): Also deactivate
3149         pads in READY->NULL, just in case the element didn't make it to
3150         PAUSED. Wingo tested, Wim approved.
3151
3152 2005-05-26  Wim Taymans  <wim@fluendo.com>
3153
3154         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3155         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
3156         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
3157         A flushing pad cannot be used to alloc_buffer from.
3158
3159 2005-05-26  Wim Taymans  <wim@fluendo.com>
3160
3161         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
3162         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
3163         (gst_bus_source_dispatch), (gst_bus_source_finalize),
3164         (gst_bus_create_watch), (gst_bus_add_watch_full):
3165         * gst/gstbus.h:
3166         Implement a real GSource and use g_main_context_wakeup() to
3167         signal new messages instead of the socketpair.
3168
3169 2005-05-25  Wim Taymans  <wim@fluendo.com>
3170
3171         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
3172         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
3173         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3174         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
3175         (gst_pad_send_event), (gst_pad_start_task):
3176         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
3177         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
3178         (gst_queue_sink_activate), (gst_queue_src_activate),
3179         (gst_queue_change_state):
3180         * gst/gstqueue.h:
3181         Fix state changes for non sinks. We now change sinks, then elements
3182         with unconnected srcpads, then the rest.
3183         More efficient queue unlocking in flush and state changes.
3184         Set the pad activate mode even if it does not have an activate
3185         function.
3186
3187 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3188
3189         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
3190           Don't go in pull mode for non-seekable sources.
3191         * gst/elements/gsttypefindelement.h:
3192         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3193         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
3194         (free_entry), (stop_typefinding),
3195         (gst_type_find_element_handle_event), (find_peek),
3196         (gst_type_find_element_chain), (do_pull_typefind),
3197         (gst_type_find_element_change_state):
3198           Allow typefinding (w/o seeking) in push-mode, simplified version
3199           of what was in 0.8.
3200         * gst/gstutils.c: (gst_buffer_join):
3201         * gst/gstutils.h:
3202           gst_buffer_join() from 0.8.
3203
3204 2005-05-25  Wim Taymans  <wim@fluendo.com>
3205
3206         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3207         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
3208         (gst_pad_send_event), (gst_pad_start_task):
3209         Disable attempt at mode switching until it is figured out.
3210
3211 2005-05-25  Wim Taymans  <wim@fluendo.com>
3212
3213         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
3214         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
3215         (gst_basesink_finish_preroll), (gst_basesink_chain),
3216         (gst_basesink_loop), (gst_basesink_activate),
3217         (gst_basesink_change_state):
3218         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
3219         (gst_basesrc_get_range), (gst_basesrc_loop),
3220         (gst_basesrc_activate):
3221         * gst/elements/gsttee.c: (gst_tee_sink_activate):
3222         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
3223         (gst_real_pad_init), (gst_real_pad_set_property),
3224         (gst_real_pad_get_property), (gst_pad_set_active),
3225         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
3226         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
3227         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
3228         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
3229         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3230         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
3231         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
3232         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
3233         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
3234         (gst_pad_stop_task):
3235         * gst/gstpad.h:
3236         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
3237         (gst_queue_loop), (gst_queue_src_activate):
3238         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
3239         (gst_task_get_state):
3240         * gst/gsttask.h:
3241         * gst/schedulers/threadscheduler.c:
3242         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
3243         Implement gst_pad_pause/start/stop_task(), take STREAM lock
3244         in task function.
3245         Remove ACTIVE pad flag, use FLUSHING everywhere
3246         Added _pad_chain(), _pad_get_range() to call chain/getrange 
3247         functions.
3248         Add locks around IS_FLUSHING when reading.
3249         Take STREAM lock in chain(), get_range() functions so plugins
3250         don't need to take it anymore.
3251         
3252
3253
3254 2005-05-25  Wim Taymans  <wim@fluendo.com>
3255
3256         * tools/gst-launch.c: (event_loop):
3257         Unref message after using its contents instead of
3258         before.
3259
3260 2005-05-24  Wim Taymans  <wim@fluendo.com>
3261
3262         * docs/design/draft-ghostpads.txt:
3263         * docs/design/draft-push-pull.txt:
3264         * docs/design/draft-query.txt:
3265         * docs/design/part-overview.txt:
3266         Docs updates, added general overview doc.
3267
3268 2005-05-21  David Schleef  <ds@schleef.org>
3269
3270         * docs/gst/tmpl/old/GstBin.sgml:
3271         * docs/gst/tmpl/old/GstBuffer.sgml:
3272         * docs/gst/tmpl/old/GstCaps.sgml:
3273         * docs/gst/tmpl/old/GstClock.sgml:
3274         * docs/gst/tmpl/old/GstCompat.sgml:
3275         * docs/gst/tmpl/old/GstData.sgml:
3276         * docs/gst/tmpl/old/GstElement.sgml:
3277         * docs/gst/tmpl/old/GstEvent.sgml:
3278         * docs/gst/tmpl/old/GstIndex.sgml:
3279         * docs/gst/tmpl/old/GstStructure.sgml:
3280         * docs/gst/tmpl/old/GstTag.sgml:
3281         * docs/gst/tmpl/old/cothreads.sgml:
3282         * docs/gst/tmpl/old/cothreads_compat.sgml:
3283         * docs/gst/tmpl/old/gettext.sgml:
3284         * docs/gst/tmpl/old/gobject2gtk.sgml:
3285         * docs/gst/tmpl/old/grammar.tab.sgml:
3286         * docs/gst/tmpl/old/gst-i18n-app.sgml:
3287         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
3288         * docs/gst/tmpl/old/gst_private.sgml:
3289         * docs/gst/tmpl/old/gstaggregator.sgml:
3290         * docs/gst/tmpl/old/gstarch.sgml:
3291         * docs/gst/tmpl/old/gstatomic_impl.sgml:
3292         * docs/gst/tmpl/old/gstbufferstore.sgml:
3293         * docs/gst/tmpl/old/gstdata_private.sgml:
3294         * docs/gst/tmpl/old/gstdisksink.sgml:
3295         * docs/gst/tmpl/old/gstdisksrc.sgml:
3296         * docs/gst/tmpl/old/gstelementfactory.sgml:
3297         * docs/gst/tmpl/old/gstextratypes.sgml:
3298         * docs/gst/tmpl/old/gstfakesink.sgml:
3299         * docs/gst/tmpl/old/gstfakesrc.sgml:
3300         * docs/gst/tmpl/old/gstfdsink.sgml:
3301         * docs/gst/tmpl/old/gstfdsrc.sgml:
3302         * docs/gst/tmpl/old/gstfilesink.sgml:
3303         * docs/gst/tmpl/old/gstfilesrc.sgml:
3304         * docs/gst/tmpl/old/gsthttpsrc.sgml:
3305         * docs/gst/tmpl/old/gstidentity.sgml:
3306         * docs/gst/tmpl/old/gstindexfactory.sgml:
3307         * docs/gst/tmpl/old/gstmarshal.sgml:
3308         * docs/gst/tmpl/old/gstmd5sink.sgml:
3309         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
3310         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
3311         * docs/gst/tmpl/old/gstpadtemplate.sgml:
3312         * docs/gst/tmpl/old/gstpipefilter.sgml:
3313         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
3314         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
3315         * docs/gst/tmpl/old/gstshaper.sgml:
3316         * docs/gst/tmpl/old/gstspider.sgml:
3317         * docs/gst/tmpl/old/gstspideridentity.sgml:
3318         * docs/gst/tmpl/old/gststatistics.sgml:
3319         * docs/gst/tmpl/old/gsttee.sgml:
3320         * docs/gst/tmpl/old/gsttimecache.sgml:
3321         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
3322         * docs/gst/tmpl/old/gstxmlregistry.sgml:
3323         * docs/gst/tmpl/old/gthread-cothreads.sgml:
3324         * docs/gst/tmpl/old/types.sgml:
3325           I didn't intend to add these or check them in.
3326
3327 2005-05-19  David Schleef  <ds@schleef.org>
3328
3329         * configure.ac: Use -no-common everywhere.  In a sane world, it
3330           would be the default in libtool, because without it, you can't
3331           build DLLs on Windows.
3332         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
3333         * docs/gst/gstreamer-sections.txt:
3334         * docs/gst/tmpl/gstcpu.sgml:
3335         * docs/gst/tmpl/gstdata.sgml:
3336         * docs/gst/tmpl/gstthread.sgml:
3337
3338 2005-05-19  David Schleef  <ds@schleef.org>
3339
3340         * gst/gstminiobject.c: (gst_value_set_mini_object),
3341         (gst_value_take_mini_object), (gst_value_get_mini_object):
3342         * gst/gstminiobject.h: Add GValue set/get functions.
3343
3344 2005-05-19  Wim Taymans  <wim@fluendo.com>
3345
3346         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
3347         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
3348         (gst_subbuffer_init), (gst_buffer_is_span_fast):
3349         * gst/gstbuffer.h:
3350         * gst/gstbus.c: (gst_bus_post):
3351         * gst/gstelement.c: (gst_element_get_random_pad):
3352         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
3353         Make subbufer unref the parent in finalize.
3354         some more debugging info.
3355
3356
3357 2005-05-19  Wim Taymans  <wim@fluendo.com>
3358
3359         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3360         (gst_basesink_init), (gst_basesink_finalize),
3361         (gst_basesink_activate), (gst_basesink_change_state):
3362         Don't free preroll queue too early.
3363
3364 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3365
3366         * gst/Makefile.am:
3367         * gst/ROADMAP:
3368           Hi, I'm outdated. Please shoot me.
3369
3370 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3371
3372         * gst/gstpipeline.c: (gst_pipeline_send_event):
3373           Do not access variables after they have been deleted.
3374
3375 2005-05-19  Wim Taymans  <wim@fluendo.com>
3376
3377         * tools/gst-inspect.c: (print_plugin_features):
3378         A plugin feature does unfortunatly not use the
3379         object name yet...
3380
3381 2005-05-18  Wim Taymans  <wim@fluendo.com>
3382
3383         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
3384         Port _span() functions to new subbuffers.
3385
3386 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3387
3388         * gst/gstbin.c: (gst_bin_add_func):
3389           Fix clock settery in bins when adding kids after the clock has
3390           been selected.
3391
3392 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3393
3394         * gst/elements/gstidentity.c: (gst_identity_class_init):
3395           Workaround until signals support GstMiniObject.
3396
3397 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
3398
3399         * gst/gstbuffer.c:
3400         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
3401
3402 2005-05-18  Wim Taymans  <wim@fluendo.com>
3403
3404         * gst/base/Makefile.am:
3405         * gst/base/gstadapter.c: (gst_adapter_base_init),
3406         (gst_adapter_class_init), (gst_adapter_init),
3407         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
3408         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
3409         (gst_adapter_flush), (gst_adapter_available),
3410         (gst_adapter_available_fast):
3411         * gst/base/gstadapter.h:
3412         Ported and added adapter to the base classes.
3413
3414 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3415
3416         * gst/gst.c:
3417         * gst/gstmessage.c:
3418           Make sure the class is reffed/unreffed once before threads can be
3419           used.  Fixes #304551.
3420
3421 2005-05-17  Wim Taymans  <wim@fluendo.com>
3422
3423         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
3424         (gst_basesink_chain_unlocked), (gst_basesink_activate):
3425         * gst/gstminiobject.c: (gst_mini_object_get_type),
3426         (gst_mini_object_free):
3427         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
3428         (gst_pad_push), (gst_pad_push_event):
3429         * gst/gstqueue.c: (gst_queue_change_state):
3430         Don't queue buffers in basesink when we are flushing.
3431         Unref buffer when flushing in basesink.
3432         Flush queue when going to READY
3433         Unref buffer when _push() returns an error.
3434         Don't free MiniObject instance when refcount is incremented
3435         in _finalize() so that we can recover objects.
3436
3437 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
3438
3439         * docs/manual/advanced-schedulers.xml:
3440         * docs/manual/appendix-checklist.xml:
3441         * docs/pwg/advanced-clock.xml:
3442         * docs/pwg/advanced-interfaces.xml:
3443         * docs/pwg/advanced-request.xml:
3444         * docs/pwg/advanced-types.xml:
3445         * docs/pwg/intro-preface.xml:
3446         * examples/plugins/example.c: (gst_example_get_type),
3447         (gst_example_class_init), (gst_example_chain),
3448         (gst_example_set_property), (gst_example_get_property),
3449         (gst_example_change_state), (plugin_init):
3450         * examples/plugins/example.h:
3451           small doc fixes
3452
3453 2005-05-17  Wim Taymans  <wim@fluendo.com>
3454
3455         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
3456         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
3457         * gst/gstqueue.c: (gst_queue_change_state):
3458         Clear queue when going to READY.
3459         Remove IN_SETCAPS flag too.
3460
3461 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
3462
3463         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
3464           Remove implicit cast from gboolean to GstElementStateReturn;
3465           make sure we still return failure in paused => ready case if
3466           the parent class fails to change state and our own stop 
3467           vfunc succeeds.
3468
3469 2005-05-17  Wim Taymans  <wim@fluendo.com>
3470
3471         * tools/gst-launch.c: (event_loop):
3472         Message was unreffed too soon.
3473
3474 2005-05-16  Andy Wingo  <wingo@pobox.com>
3475
3476         * gst/gstbin.c (sink_iterator_filter): Err... um...
3477
3478         * check/gst/gstbin.c (test_ghost_pads): New test for the
3479         ghosting-if-elements-not-in-same-bin behavior.
3480
3481 2005-05-16  David Schleef  <ds@schleef.org>
3482
3483         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
3484         accessing refcount directly.
3485
3486 2005-05-15  David Schleef  <ds@schleef.org>
3487
3488         * check/Makefile.am: remove GstData checks
3489         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
3490         * gst/Makefile.am: add miniobject, remove data
3491         * gst/gst.h: add miniobject, remove data
3492         * gst/gstdata.c: remove
3493         * gst/gstdata.h: remove
3494         * gst/gstdata_private.h: remove
3495         * gst/gsttypes.h: remove GstEvent and GstMessage
3496         * gst/gstelement.c: (gst_element_post_message): fix for API changes
3497         * gst/gstmarshal.list: change BOXED -> OBJECT
3498
3499         Implement GstMiniObject.
3500         * gst/gstminiobject.c:
3501         * gst/gstminiobject.h:
3502
3503         Modify to be subclasses of GstMiniObject.
3504         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
3505         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
3506         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
3507         (gst_subbuffer_get_type), (gst_subbuffer_init),
3508         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
3509         (gst_buffer_span):
3510         * gst/gstbuffer.h:
3511         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
3512         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
3513         (_gst_event_copy), (gst_event_new):
3514         * gst/gstevent.h:
3515         * gst/gstmessage.c: (_gst_message_initialize),
3516         (gst_message_get_type), (gst_message_class_init),
3517         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
3518         (gst_message_new), (gst_message_new_error),
3519         (gst_message_new_warning), (gst_message_new_tag),
3520         (gst_message_new_state_changed), (gst_message_new_application):
3521         * gst/gstmessage.h:
3522         * gst/gstprobe.c: (gst_probe_perform),
3523         (gst_probe_dispatcher_dispatch):
3524         * gst/gstprobe.h:
3525         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
3526         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
3527         (_gst_query_copy), (gst_query_new):
3528
3529         Update elements for GstData -> GstMiniObject changes
3530         * gst/gstquery.h:
3531         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
3532         (gst_queue_chain), (gst_queue_loop):
3533         * gst/elements/gstbufferstore.c:
3534         (gst_buffer_store_add_buffer_func),
3535         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
3536         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3537         (gst_fakesink_render):
3538         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
3539         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
3540         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
3541         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
3542         (gst_filesrc_create_read):
3543         * gst/elements/gstidentity.c: (gst_identity_class_init):
3544         * gst/elements/gsttypefindelement.c:
3545         (gst_type_find_element_src_event), (free_entry_buffers),
3546         (gst_type_find_element_handle_event):
3547         * libs/gst/dataprotocol/dataprotocol.c:
3548         (gst_dp_header_from_buffer):
3549         * libs/gst/dataprotocol/dataprotocol.h:
3550         * libs/gst/dataprotocol/dp-private.h:
3551
3552 2005-05-15  David Schleef  <ds@schleef.org>
3553
3554         * gst/elements/gstelements.c: Don't include headers that were
3555         just removed.
3556
3557 2005-05-15  David Schleef  <ds@schleef.org>
3558
3559         * gst/elements/Makefile.am: Remove some elements that don't
3560         need to be in the core (or even exist at all).
3561         * gst/elements/gstaggregator.c:
3562         * gst/elements/gstaggregator.h:
3563         * gst/elements/gstmd5sink.c:
3564         * gst/elements/gstmd5sink.h:
3565         * gst/elements/gstmultifilesrc.c:
3566         * gst/elements/gstmultifilesrc.h:
3567         * gst/elements/gstpipefilter.c:
3568         * gst/elements/gstpipefilter.h:
3569         * gst/elements/gstshaper.c:
3570         * gst/elements/gstshaper.h:
3571         * gst/elements/gststatistics.c:
3572         * gst/elements/gststatistics.h:
3573         * po/POTFILES.in: Remove above files.
3574
3575 2005-05-14  Andy Wingo  <wingo@pobox.com>
3576
3577         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
3578         so as to get the refs right.
3579         (sink_iterator_filter): New function, wraps bin_element_is_sink,
3580         unreffing objects that don't pass the filter.
3581
3582         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
3583         gst_element_set_bus.
3584         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
3585         normal cases, this will destroy the bus.
3586
3587         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
3588         object.
3589
3590         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
3591         has no sinks.
3592
3593 2005-05-13  Andy Wingo  <wingo@pobox.com>
3594
3595         * gst/gstutils.c (gst_element_link_pads): Instead of calling
3596         gst_pad_link, call pad_link_maybe_ghosting,
3597         (pad_link_maybe_ghosting): Links pads, making sure that the
3598         elements being linked are in the same bin.
3599         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
3600         Helpers for pad_link_maybe_ghosting.
3601
3602 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3603
3604         * configure.ac:
3605           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
3606
3607 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3608
3609         * docs/design/part-element-source.txt:
3610           Mention GstPushSrc
3611
3612 2005-05-12  Wim Taymans  <wim@fluendo.com>
3613
3614         * gst/base/gstbasesink.c: (gst_basesink_init),
3615         (gst_basesink_activate):
3616         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
3617         (gst_basesrc_is_seekable):
3618         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
3619         (bin_element_is_sink), (gst_bin_change_state):
3620         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3621         * gst/gstelement.h:
3622         Identify sinks by their flag to avoid overly complicated
3623         checks (fow now).
3624         Do state changes even for elements not reachable from the
3625         sinks.
3626         BaseSink is a sink now :)
3627         Some more debugging info in the basesrc.
3628
3629
3630 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3631
3632         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
3633           Implement _query on a bin, similar to _send_event.
3634
3635 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
3636
3637         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
3638           Discont event offset format should be GST_FORMAT_BYTES,
3639           not GST_FORMAT_TIME.
3640
3641 2005-05-12  Wim Taymans  <wim@fluendo.com>
3642
3643         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
3644         Same fix as Ronald's but without the signal. 
3645
3646 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3647
3648         * gst/gstutils.c: (gst_element_query_position):
3649           No, an element is not a pad.
3650
3651 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3652
3653         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
3654         (gst_bin_get_state):
3655           If a child is removed from a bin while we remove the child from
3656           the bin and while we're retrieving its state, signal this to the
3657           get_state function so we abort the wait (instead of waiting for
3658           a timeout) and can immediately re-iterate over all other elements.
3659
3660 2005-05-12  Wim Taymans  <wim@fluendo.com>
3661
3662         * gst/base/Makefile.am:
3663         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
3664         (gst_basesrc_start):
3665         * gst/base/gstbasesrc.h:
3666         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
3667         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
3668         (gst_pushsrc_init), (gst_pushsrc_create):
3669         * gst/base/gstpushsrc.h:
3670         Added is_seekable to BaseSrc
3671         Added simple PushSrc.
3672
3673 2005-05-11  Wim Taymans  <wim@fluendo.com>
3674
3675         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3676         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3677         (gst_element_link_pads), (gst_element_query_position),
3678         (gst_element_query_convert), (intersect_caps_func),
3679         (gst_pad_query_position), (gst_pad_query_convert):
3680         Fix refcounting in utils function.
3681         No point in trying to activate a pad when it's added, it could
3682         be added from the state change function and then we deadlock, the
3683         element has to decide what to do.
3684
3685 2005-05-10  Andy Wingo  <wingo@pobox.com>
3686
3687         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
3688         *all* the arguments.
3689
3690         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
3691         stream lock if it's a FLUSH_DONE; normal flushes don't get the
3692         lock (according to the docs -- if this is wrong change the docs).
3693
3694         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
3695         flush messages in the NULL state.
3696
3697         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
3698         message immediately and return.
3699         (gst_bus_set_flushing): New function. If a bus is flushing, it
3700         flushes out any queued messages and immediately unrefs new
3701         messages. This is so when an element goes to NULL, all of the
3702         unhandled messages coming from it can be freed, and their
3703         references to the element dropped. In other words: message source
3704         ref considered harmful :P
3705
3706         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
3707         we're finished with it.
3708
3709         * gst/gstmessage.c (gst_message_new_state_changed): 
3710
3711 2005-05-10  Wim Taymans  <wim@fluendo.com>
3712
3713         * gst/gstvalue.c: (gst_value_compare_flags),
3714         (gst_value_serialize_flags), (gst_value_deserialize_flags),
3715         (_gst_value_initialize):
3716         Added flags serialize/deserialize/compare code.
3717
3718 2005-05-09  Andy Wingo  <wingo@pobox.com>
3719
3720         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
3721         Intersect the peer's caps with our caps.
3722
3723 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3724
3725         * gst/base/gsttypefindhelper.c: (helper_find_peek):
3726         * gst/elements/gsttypefindelement.c: (find_peek):
3727           Handle negative offsets better. Fixes decodebin.
3728
3729 2005-05-09  Wim Taymans  <wim@fluendo.com>
3730
3731         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
3732         (gst_base_transform_event):
3733         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
3734         Implement accept_caps.
3735         Fix silly lock/unlock mismatch in base class.
3736
3737 2005-05-09  Wim Taymans  <wim@fluendo.com>
3738
3739         * docs/design/draft-push-pull.txt:
3740         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
3741         * gst/elements/gstfilesink.c: (gst_filesink_init),
3742         (gst_filesink_query):
3743         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3744         (gst_type_find_handle_src_query), (find_element_get_length):
3745         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
3746         * gst/gstelement.h:
3747         * gst/gstmessage.c:
3748         * gst/gstmessage.h:
3749         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
3750         (gst_real_pad_get_caps_unlocked),
3751         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
3752         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3753         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
3754         (gst_real_pad_dispose), (gst_real_pad_finalize),
3755         (gst_pad_load_and_link), (gst_pad_save_thyself),
3756         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
3757         (gst_pad_check_pull_range), (gst_pad_pull_range),
3758         (gst_pad_template_get_type), (gst_pad_template_class_init),
3759         (gst_pad_template_init), (gst_pad_template_dispose),
3760         (name_is_valid), (gst_static_pad_template_get),
3761         (gst_pad_template_new), (gst_static_pad_template_get_caps),
3762         (gst_pad_template_get_caps), (gst_pad_set_element_private),
3763         (gst_pad_get_element_private), (gst_pad_start_task),
3764         (gst_pad_pause_task), (gst_pad_stop_task),
3765         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
3766         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
3767         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
3768         (gst_ghost_pad_new):
3769         * gst/gstpad.h:
3770         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
3771         (gst_query_new_position), (gst_query_set_position),
3772         (gst_query_parse_position), (gst_query_new_convert),
3773         (gst_query_set_convert), (gst_query_parse_convert):
3774         * gst/gstquery.h:
3775         * gst/gstqueryutils.c:
3776         * gst/gstqueryutils.h:
3777         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3778         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3779         (gst_queue_handle_src_query):
3780         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3781         (gst_element_query_position), (gst_element_query_convert),
3782         (intersect_caps_func), (gst_pad_query_position),
3783         (gst_pad_query_convert):
3784         * gst/gstutils.h:
3785         * tools/gst-inspect.c: (print_pad_info):
3786         * tools/gst-xmlinspect.c: (print_element_info):
3787         Remove old query functions. Ported old code.
3788         Added position/convert helper functions to gstutils.
3789         Reordered gstpad.c code, grouping relevant things.
3790         Remove gst_message_new(), always need to speficy a specific
3791         message.
3792
3793
3794 2005-05-09  Andy Wingo  <wingo@pobox.com>
3795
3796         * gst/gstiterator.h: Add some includes.
3797
3798         * gst/gstqueryutils.h: Include more headers.
3799
3800         * gst/gstpad.h:
3801         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
3802         some uses of gst_pad_query.
3803
3804         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
3805         NULL out parameters.
3806         (gst_query_new_position): New proc, allocates a new position
3807         query.
3808
3809         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
3810         gstqueryutils.c to the build.
3811
3812         * gst/gststructure.c (gst_structure_set_valist): Implement with
3813         the generic G_VALUE_COLLECT.
3814         
3815 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
3816
3817         * gst/Makefile.am: (gst_headers):
3818         Added gstqueryutils.h to the list of headers to install, that was
3819         a 'nachty' move wingo :)
3820
3821 2005-05-06  Andy Wingo  <wingo@pobox.com>
3822
3823         * gst/gstquery.h
3824         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
3825         GstData, init a memchunk.
3826         (standard_definitions): Add a few query types, deprecate a few.
3827         (gst_query_get_type): New proc.
3828         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
3829         implementation.
3830         (gst_query_new_application, gst_query_get_structure): New public
3831         procs.
3832
3833         * docs/design/draft-query.txt: Removed LINKS from the query types,
3834         because all the rest can be dispatched to other pads -- seemed
3835         ugly to have a query that couldn't be dispatched. internal_links
3836         is fine as a pad method.
3837
3838         * gst/gstpad.h: Add query2 as a pad method, add the new functions
3839         in gstpad.c, but maintain binary compatibility for the moment.
3840         Will fix before 0.9 is out.
3841
3842         * gst/gstqueryutils.c: 
3843         * gst/gstqueryutils.h: New files, implement 3 methods for each
3844         query type: parse_query, parse_response, and set. Probably need an
3845         allocator as well.
3846
3847         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
3848
3849         * gst/elements/gstfilesink.c (gst_filesink_query2):
3850         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
3851         query_types, and formats methods.
3852
3853         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
3854         (gst_pad_set_query2_function): New functions.
3855         (gst_real_pad_init): Set query2_default as the default query2
3856         function. Basically just dispatches to internally linked pads.
3857
3858         Needs review!
3859         
3860         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
3861         without using the atomic operations. Only one thread can possibly
3862         be accessing the data at this point. Changed so as to avoid
3863         gst_atomic operations.
3864
3865 2005-05-06  Wim Taymans  <wim@fluendo.com>
3866
3867         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
3868         Also set caps if we use the fallback buffer alloc.
3869
3870 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
3871
3872         * docs/gst/Makefile.am:
3873         * docs/gst/gstreamer-docs.sgml:
3874         * docs/gst/gstreamer-sections.txt:
3875         * docs/gst/tmpl/gstatomic.sgml:
3876         * docs/gst/tmpl/gstmemchunk.sgml:
3877         * testsuite/elements/struct_i386.h:
3878         * win32/GStreamer.vcproj:
3879         * win32/Makefile:
3880           Purge GstAtomic stuff from docs and win32 makefiles as well
3881
3882 2005-05-06  Wim Taymans  <wim@fluendo.com>
3883
3884         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
3885         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
3886         * gst/gstpad.c: (gst_pad_peer_get_caps):
3887         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3888         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3889         (gst_queue_src_activate), (gst_queue_change_state):
3890         * gst/gstqueue.h:
3891         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3892         (intersect_caps_func):
3893         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
3894         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
3895         Some fixes for the peer_get_caps() change.
3896
3897 2005-05-06  Wim Taymans  <wim@fluendo.com>
3898
3899         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
3900         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
3901         (gst_basesink_activate):
3902         Actually do something with error codes returned from the push
3903         functions.
3904
3905 2005-05-06  Wim Taymans  <wim@fluendo.com>
3906
3907         * docs/design/part-element-sink.txt:
3908         * docs/design/part-element-source.txt:
3909         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3910         (gst_basesink_event), (gst_basesink_activate):
3911         * gst/base/gstbasesink.h:
3912         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
3913         (gst_basesrc_activate):
3914         * gst/base/gstbasesrc.h:
3915         * gst/gstelement.c: (gst_element_pads_activate):
3916         Some more documentation.
3917         Fixed scheduling decision in _pads_activate().
3918
3919 2005-05-05  Andy Wingo  <wingo@pobox.com>
3920
3921         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
3922         the test suite.
3923
3924 2005-05-05  Wim Taymans  <wim@fluendo.com>
3925
3926         * gst/base/Makefile.am:
3927         * gst/base/gstbasesink.h:
3928         * gst/base/gstbasesrc.c: (gst_basesrc_init),
3929         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
3930         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
3931         (gst_collectpads_class_init), (gst_collectpads_init),
3932         (gst_collectpads_finalize), (gst_collectpads_new),
3933         (gst_collectpads_set_function), (gst_collectpads_add_pad),
3934         (find_pad), (gst_collectpads_remove_pad),
3935         (gst_collectpads_is_active), (gst_collectpads_collect),
3936         (gst_collectpads_collect_range), (gst_collectpads_start),
3937         (gst_collectpads_stop), (gst_collectpads_peek),
3938         (gst_collectpads_pop), (gst_collectpads_available),
3939         (gst_collectpads_read), (gst_collectpads_flush),
3940         (gst_collectpads_chain):
3941         * gst/base/gstcollectpads.h:
3942         * gst/elements/Makefile.am:
3943         * gst/elements/gstelements.c:
3944         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3945         (gst_fakesink_get_times), (gst_fakesink_event),
3946         (gst_fakesink_preroll), (gst_fakesink_render):
3947         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
3948         (gst_filesink_init), (gst_filesink_set_location),
3949         (gst_filesink_open_file), (gst_filesink_close_file),
3950         (gst_filesink_pad_query), (gst_filesink_event),
3951         (gst_filesink_render), (gst_filesink_change_state):
3952         * gst/elements/gstfilesink.h:
3953         Added object to help in making collect pad based elements.
3954         Ported filesink.
3955         Make event function in sink baseclass return gboolean.
3956
3957 2005-05-05  Wim Taymans  <wim@fluendo.com>
3958
3959         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
3960         (gst_bin_get_by_name):
3961         * gst/gstbuffer.h:
3962         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
3963         (gst_clock_finalize):
3964         * gst/gstdata.c: (gst_data_replace):
3965         * gst/gstdata.h:
3966         * gst/gstelement.c: (gst_element_request_pad),
3967         (gst_element_pads_activate):
3968         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
3969         (gst_object_unref):
3970         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3971         (gst_pad_set_checkgetrange_function),
3972         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
3973         (gst_pad_check_pull_range), (gst_pad_pull_range),
3974         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3975         (gst_pad_pause_task), (gst_pad_stop_task):
3976         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3977         (gst_element_request_pad), (gst_pad_proxy_getcaps):
3978         Fix name lookup in GstBin.
3979         Added _data_replace() function and _buffer_replace()
3980         Use finalize method to clean up clock.
3981         Fix refcounting on request pads.
3982         Fix pad schedule mode error.
3983         Some more object refcounting debug info,
3984
3985
3986 2005-05-04  Andy Wingo <wingo@pobox.com>
3987
3988         * check/Makefile.am:
3989         * docs/gst/tmpl/gstatomic.sgml:
3990         * docs/gst/tmpl/gstplugin.sgml:
3991         * gst/base/gstbasesink.c: (gst_basesink_activate):
3992         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
3993         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
3994         (gst_basesrc_query), (gst_basesrc_set_property),
3995         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
3996         (gst_basesrc_activate):
3997         * gst/base/gstbasesrc.h:
3998         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
3999         (gst_base_transform_src_activate):
4000         * gst/elements/gstelements.c:
4001         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4002         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
4003         * gst/elements/gsttee.c: (gst_tee_sink_activate):
4004         * gst/elements/gsttypefindelement.c: (find_element_get_length),
4005         (gst_type_find_element_checkgetrange),
4006         (gst_type_find_element_activate):
4007         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
4008         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
4009         (gst_caps_load_thyself):
4010         * gst/gstelement.c: (gst_element_pads_activate),
4011         (gst_element_save_thyself), (gst_element_restore_thyself):
4012         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
4013         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
4014         * gst/gstpad.h:
4015         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
4016         (gst_xml_parse_file), (gst_xml_parse_memory),
4017         (gst_xml_get_element), (gst_xml_make_element):
4018         * gst/indexers/gstfileindex.c: (gst_file_index_load),
4019         (_file_index_id_save_xml), (gst_file_index_commit):
4020         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
4021         (read_enum), (load_pad_template), (load_feature), (load_plugin),
4022         (load_paths):
4023         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
4024         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
4025         * tools/gst-complete.c: (main):
4026         * tools/gst-compprep.c: (main):
4027         * tools/gst-inspect.c: (print_element_properties_info):
4028         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
4029         * tools/gst-xmlinspect.c: (print_element_properties):
4030         GCC 4 fixen.
4031         
4032 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
4033
4034         * gst/gstplugin.c: (gst_plugin_check_module),
4035         (gst_plugin_check_file), (gst_plugin_load_file):
4036             apply patch from #172526 to make register work on MacOSX
4037
4038 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
4039
4040         * docs/gst/tmpl/gstconfig.sgml:
4041         * gst/gstconfig.h.in:
4042           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
4043         * testsuite/debug/printf_extension.c: (main):
4044           Do not use GST_PTR_FORMAT on pointers to types with
4045           sizeof < sizeof(gpointer).  Fixes test on 64-bit
4046         * testsuite/elements/property.h:
4047           use correct printf format
4048
4049 2005-05-02  Wim Taymans  <wim@fluendo.com>
4050
4051         * docs/design/draft-push-pull.txt:
4052         * docs/design/draft-query.txt:
4053         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
4054         (gst_basesrc_start):
4055         Added draft for new query API.
4056         Added draft for better selecting scheduling methods.
4057         Make basesrc ignore length if the subclass does not support
4058         it.
4059
4060 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
4061
4062         * gst/Makefile.am:
4063           possible fixes for automake-1.5 - _LIBADD is reserved
4064
4065 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
4066
4067         * docs/faq/Makefile.am:
4068         * docs/manual/Makefile.am:
4069         * docs/manuals.mak:
4070         * docs/pwg/Makefile.am:
4071         * gst/Makefile.am:
4072           possible fixes for automake-1.5
4073
4074 2005-04-28  Wim Taymans  <wim@fluendo.com>
4075
4076         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4077         (gst_basesink_pad_getcaps), (gst_basesink_init),
4078         (gst_basesink_do_sync):
4079         * gst/gstclock.c: (gst_clock_entry_new):
4080         * gst/gstevent.c: (gst_event_discont_get_value):
4081         * gst/gstpipeline.c: (pipeline_bus_handler),
4082         (gst_pipeline_change_state):
4083         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
4084         Better debugging of clocking info.
4085         Allow NULL values when getting discont values.
4086
4087 2005-04-27  Wim Taymans  <wim@fluendo.com>
4088
4089         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
4090         * check/gst/gstpad.c: (gst_pad_suite):
4091         Increase timeout for checks.
4092
4093 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
4094
4095         * check/Makefile.am:
4096           fix the broken rule for cleanup.  Apparently this rule is
4097           only needed on FC2, so maybe this warrants further autotool
4098           inspection.
4099
4100 2005-04-26  Wim Taymans  <wim@fluendo.com>
4101
4102         * gst/gsttrashstack.h:
4103         Ooohh. a nasty one! After having a failed pop() from the stack,
4104         it's possible that the stack is empty. In that case, don't
4105         follow the NULL pointer.
4106
4107 2005-04-25  Wim Taymans  <wim@fluendo.com>
4108
4109         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4110         (gst_pad_set_checkgetrange_function),
4111         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
4112         (gst_pad_check_pull_range), (gst_pad_pull_range),
4113         (gst_static_pad_template_get_caps), (gst_pad_start_task),
4114         (gst_pad_pause_task), (gst_pad_stop_task):
4115         * gst/gstplugin.c: (gst_plugin_load):
4116         * gst/gstplugin.h:
4117         Remove gst_library_load as it does more harm than good with
4118         the new g_module flags.
4119         Revert bogus caps template check in pad linking, pad caps
4120         are important when linking not the template, which is more
4121         general than the current caps.
4122
4123 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4124
4125         * gst/autoplug/.cvsignore:
4126         * gst/autoplug/Makefile.am:
4127         * gst/autoplug/gstsearchfuncs.c:
4128         * gst/autoplug/gstsearchfuncs.h:
4129         * gst/autoplug/gstspider.c:
4130         * gst/autoplug/gstspider.h:
4131         * gst/autoplug/gstspideridentity.c:
4132         * gst/autoplug/gstspideridentity.h:
4133         * gst/autoplug/spidertest.c:
4134           Die, spider, die.
4135
4136 2005-04-25  Wim Taymans  <wim@fluendo.com>
4137
4138         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4139         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
4140         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
4141         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
4142         * gst/gstpad.h:
4143         Added stubs for unimplemented functions. 
4144
4145 2005-04-24  David Schleef  <ds@schleef.org>
4146
4147         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
4148         please fix.
4149
4150 2005-04-24  David Schleef  <ds@schleef.org>
4151
4152         Convert everything from GstAtomicInt to g_atomic_int_*, and
4153         remove gstatomic.
4154         * gst/Makefile.am:
4155         * gst/gstatomic.c:
4156         * gst/gstatomic.h:
4157         * gst/gstatomic_impl.h:
4158         * gst/gstbuffer.c:
4159         * gst/gstcaps.c:
4160         * gst/gstcaps.h:
4161         * gst/gstclock.c:
4162         * gst/gstclock.h:
4163         * gst/gstdata.c:
4164         * gst/gstdata.h:
4165         * gst/gstdata_private.h:
4166         * gst/gstevent.c:
4167         * gst/gstinfo.c:
4168         * gst/gstinfo.h:
4169         * gst/gstmessage.c:
4170         * gst/gstobject.c:
4171         * gst/gstobject.h:
4172         * gst/gststructure.c:
4173         * gst/gststructure.h:
4174         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
4175         * gst/gstutils.h:
4176
4177 2005-04-24  David Schleef  <ds@schleef.org>
4178
4179         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
4180         make the regressions tests work.  Remove some code that is no
4181         longer true.
4182         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
4183         Disable warning for pads without templates.
4184
4185 2005-04-24  David Schleef  <ds@schleef.org>
4186
4187         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
4188         functions that handle filtered links.
4189         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
4190         removed functions.
4191         * gst/gstutils.c: Fix/remove utility functions that handle
4192         filtered caps.
4193         * gst/gstutils.h:
4194         * gst/gstvalue.c: Add serialization/deserialization of caps
4195         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
4196         requires fixing so that the filter caps notation creates
4197         a capsfilter element and sets the filter_caps property.  I
4198         think everyone probably wants to keep the shorthand notation.
4199         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
4200         * docs/gst/tmpl/gstpad.sgml:
4201
4202         * gst/elements/gstelements.c: Register capsfilter element.
4203         * gst/Makefile.am: fix spacing
4204         * docs/random/ds/0.9-suggested-changes: random
4205
4206 2005-04-23  David Schleef  <ds@schleef.org>
4207
4208         * gst/elements/Makefile.am:
4209         * gst/elements/gstcapsfilter.c: New element that acts like an
4210         identity, but filters caps.  Will eventually replace filtered
4211         caps in pad linking.
4212         * gst/gstutils.c: (gst_element_create_all_pads): New function
4213         to create all the ALWAYS pads that are registered with an
4214         element class.  This functionality should eventually be
4215         merged in with GstElement initialization.
4216         * gst/gstutils.h:
4217         * testsuite/trigger/README: part of trigger test code that should
4218         have been checked in a long time ago.
4219
4220 2005-04-23  David Schleef  <ds@schleef.org>
4221
4222         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
4223         needed with new versions of libtool (nobody will confirm this),
4224         and hard to carry around.
4225         * gst/autoplug/Makefile.am:
4226         * gst/base/Makefile.am:
4227         * gst/elements/Makefile.am:
4228         * gst/indexers/Makefile.am:
4229         * gst/schedulers/Makefile.am:
4230         * libs/gst/bytestream/Makefile.am:
4231         * libs/gst/control/Makefile.am:
4232         * libs/gst/dataprotocol/Makefile.am:
4233         * libs/gst/getbits/Makefile.am:
4234
4235 2005-04-21  Wim Taymans  <wim@fluendo.com>
4236
4237         * docs/design/draft-push-pull.txt:
4238         * docs/design/part-MT-refcounting.txt:
4239         * docs/design/part-TODO.txt:
4240         * docs/design/part-caps.txt:
4241         * docs/design/part-events.txt:
4242         * docs/design/part-gstbus.txt:
4243         * docs/design/part-gstpipeline.txt:
4244         * docs/design/part-messages.txt:
4245         * docs/design/part-push-pull.txt:
4246         * docs/design/part-query.txt:
4247         Some more docs.
4248
4249 2005-04-21  Wim Taymans  <wim@fluendo.com>
4250
4251         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
4252         (gst_message_new), (gst_message_new_error),
4253         (gst_message_new_warning), (gst_message_new_tag),
4254         (gst_message_new_state_changed), (gst_message_new_application),
4255         (gst_message_get_structure):
4256         * gst/gstmessage.h:
4257         * gst/gststructure.c: (gst_structure_set_parent_refcount),
4258         (gst_structure_copy_conditional):
4259         Use parent refcount in GstMessage to ensure GstStructure
4260         consistency.
4261         Cleaned up headers a bit.
4262         
4263
4264 2005-04-20  Wim Taymans  <wim@fluendo.com>
4265
4266         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4267         (gst_basesink_pad_getcaps), (gst_basesink_init),
4268         (gst_basesink_chain_unlocked):
4269         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
4270         (gst_type_find_helper):
4271         * gst/elements/gsttypefindelement.c:
4272         (gst_type_find_element_have_type), (gst_type_find_element_init),
4273         (stop_typefinding), (gst_type_find_element_handle_event),
4274         (find_suggest), (gst_type_find_element_chain),
4275         (gst_type_find_element_checkgetrange),
4276         (gst_type_find_element_getrange), (do_typefind),
4277         (gst_type_find_element_activate):
4278         * gst/gstbuffer.c: (_gst_buffer_sub_free),
4279         (gst_buffer_default_free), (gst_buffer_default_copy),
4280         (gst_buffer_set_caps):
4281         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
4282         (gst_caps_replace):
4283         * gst/gstmessage.c: (gst_message_new),
4284         (gst_message_new_state_changed):
4285         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4286         (gst_pad_set_checkgetrange_function),
4287         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
4288         (gst_pad_set_caps), (gst_pad_check_pull_range),
4289         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
4290         * gst/gstpad.h:
4291         * gst/gsttypefind.c: (gst_type_find_register):
4292         Make gst_caps_replace() work like other _replace() functions.
4293         Use _caps_replace() where possible.
4294         Make sure _message_new() initialises its field.
4295         Add gst_static_pad_template_get_caps()
4296
4297
4298 2005-04-18  Andy Wingo  <wingo@pobox.com>
4299
4300         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
4301         on the peer, not the pad. I think that was a typo. Pass an extra
4302         arg to see if random access is possible. Activate the pads as
4303         PULL_RANGE if possible.
4304
4305         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
4306
4307         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
4308         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
4309         to PROP_....
4310
4311 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4312
4313         * docs/faq/using.xml:
4314           Add note on gstreamer-properties (#154996).
4315
4316 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4317
4318         * docs/random/bbb/optional-properties:
4319           Some analysis on optional properties.
4320
4321 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4322
4323         * docs/gst/tmpl/gstelementfactory.sgml:
4324         * gst/gstelement.h:
4325         * gst/gstelementfactory.c: (gst_element_factory_init),
4326         (gst_element_factory_cleanup), (gst_element_register),
4327         (__gst_element_factory_add_static_pad_template),
4328         (gst_element_factory_get_static_pad_templates),
4329         (gst_element_factory_can_src_caps),
4330         (gst_element_factory_can_sink_caps):
4331         * gst/registries/Makefile.am:
4332         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
4333         (gst_xml_registry_class_init), (gst_xml_registry_init),
4334         (gst_xml_registry_new), (gst_xml_registry_set_property),
4335         (gst_xml_registry_get_property), (get_time), (make_dir),
4336         (gst_xml_registry_get_perms_func),
4337         (plugin_times_older_than_recurse), (plugin_times_older_than),
4338         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
4339         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
4340         (add_to_char_array), (read_string), (read_uint), (read_enum),
4341         (load_pad_template), (load_feature), (load_plugin), (load_paths),
4342         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
4343         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
4344         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
4345         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
4346         (gst_xml_registry_rebuild):
4347         * gst/registries/gstlibxmlregistry.h:
4348         * tools/gst-compprep.c: (main):
4349         * tools/gst-inspect.c: (print_pad_templates_info):
4350         * tools/gst-xmlinspect.c: (print_element_info):
4351           Use libxml2 for registry parsing, use staticpadtemplates in
4352           elementfactories. Makes gst_init() +/- 10x faster.
4353
4354 2005-04-12  Wim Taymans  <wim@fluendo.com>
4355
4356         * gst/base/Makefile.am:
4357         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4358         (gst_basesink_pad_getcaps), (gst_basesink_init),
4359         (gst_basesink_event), (gst_basesink_change_state):
4360         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4361         (gst_basesrc_init), (gst_basesrc_query),
4362         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
4363         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
4364         (gst_basesrc_check_get_range), (gst_basesrc_loop),
4365         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
4366         (gst_basesrc_stop), (gst_basesrc_activate),
4367         (gst_basesrc_change_state):
4368         * gst/base/gsttypefindhelper.c: (helper_find_peek),
4369         (helper_find_suggest), (gst_type_find_helper):
4370         * gst/base/gsttypefindhelper.h:
4371         * gst/elements/Makefile.am:
4372         * gst/elements/gstelements.c:
4373         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
4374         (gst_fakesink_get_times), (gst_fakesink_event),
4375         (gst_fakesink_preroll), (gst_fakesink_render):
4376         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4377         (gst_fakesrc_init), (gst_fakesrc_event_handler),
4378         (gst_fakesrc_get_property), (gst_fakesrc_create),
4379         (gst_fakesrc_start), (gst_fakesrc_stop):
4380         * gst/elements/gstfakesrc.h:
4381         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
4382         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
4383         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
4384         (gst_filesrc_create_read), (gst_filesrc_create),
4385         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
4386         (gst_filesrc_start):
4387         * gst/elements/gsttypefindelement.c:
4388         (gst_type_find_element_have_type), (gst_type_find_element_init),
4389         (start_typefinding), (stop_typefinding), (push_buffer_store),
4390         (gst_type_find_element_handle_event),
4391         (gst_type_find_element_chain),
4392         (gst_type_find_element_checkgetrange),
4393         (gst_type_find_element_getrange), (do_typefind),
4394         (gst_type_find_element_activate),
4395         (gst_type_find_element_change_state):
4396         * gst/elements/gsttypefindelement.h:
4397         * gst/gstpipeline.c: (pipeline_bus_handler):
4398         Added typefind helper.
4399         Small preroll fix in the base sink.
4400         Disable typefind code in basesrc.
4401         Crude port of typefindelement.
4402         Fakesrc cleanups.
4403
4404
4405 2005-04-11  Wim Taymans  <wim@fluendo.com>
4406
4407         * check/gst/gstbus.c: (gstbus_suite):
4408         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
4409         * check/gstcheck.h:
4410           Fix up the timeout so that the test does not fail.
4411
4412 2005-04-06  Wim Taymans  <wim@fluendo.com>
4413
4414         * gst/base/README:
4415         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4416         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
4417         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
4418         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
4419         (gst_basesrc_check_get_range), (gst_basesrc_loop),
4420         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
4421         (gst_basesrc_stop), (gst_basesrc_activate),
4422         (gst_basesrc_change_state), (basesrc_find_peek),
4423         (basesrc_find_suggest), (gst_basesrc_type_find):
4424         * gst/base/gstbasesrc.h:
4425         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
4426         (gst_filesrc_class_init), (gst_filesrc_init),
4427         (gst_filesrc_finalize), (gst_filesrc_set_location),
4428         (gst_filesrc_set_property), (gst_filesrc_get_property),
4429         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
4430         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
4431         (gst_filesrc_create_read), (gst_filesrc_create),
4432         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
4433         * gst/elements/gstfilesrc.h:
4434         * gst/gstelement.c: (gst_element_get_state_func),
4435         (gst_element_lost_state), (gst_element_pads_activate):
4436         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4437         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
4438         (gst_pad_pull_range):
4439         * gst/gstpad.h:
4440         More work on the generic source base class, implement seeking,
4441         query.
4442         Make filesrc extend the base source class.
4443         Added gst_pad_set_checkgetrange_function to GstPad.
4444
4445 2005-04-06  Andy Wingo  <wingo@pobox.com>
4446
4447         * pkgconfig/gstreamer-base.pc.in:
4448         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
4449
4450         * pkgconfig/Makefile.am:
4451         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
4452
4453 2005-04-04  Wim Taymans  <wim@fluendo.com>
4454
4455         * gst/base/Makefile.am:
4456         * gst/base/README:
4457         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4458         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4459         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4460         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
4461         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4462         (gst_basesrc_base_init), (gst_basesrc_class_init),
4463         (gst_basesrc_init), (gst_basesrc_get_formats),
4464         (gst_basesrc_get_query_types), (gst_basesrc_query),
4465         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
4466         (gst_basesrc_set_property), (gst_basesrc_get_property),
4467         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
4468         (gst_basesrc_loop), (gst_basesrc_activate),
4469         (gst_basesrc_change_state):
4470         * gst/base/gstbasesrc.h:
4471         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
4472         (gst_fakesrc_class_init), (gst_fakesrc_init),
4473         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
4474         (gst_fakesrc_get_property), (gst_fakesrc_create):
4475         * gst/elements/gstfakesrc.h:
4476         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
4477         (gst_filesrc_open_file), (gst_filesrc_loop),
4478         (gst_filesrc_activate), (filesrc_find_peek),
4479         (gst_filesrc_type_find):
4480         Made base source class, make fakesrc extend it.
4481         Add comments to basesink class.
4482         Some filesrc cleanup.
4483
4484 2005-03-31  David Schleef  <ds@schleef.org>
4485
4486         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
4487         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
4488         expected to link against libgstreamer.
4489         * gst/base/Makefile.am: link against libgstreamer
4490         * gst/elements/Makefile.am: same
4491
4492 2005-03-31  Andy Wingo  <wingo@pobox.com>
4493
4494         * tests/instantiate/Makefile.am:
4495         * tests/instantiate/caps.c: Add test to test speed of caps copy
4496         and free.
4497
4498         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
4499         GMemChunk to be fair.
4500
4501         * gst/gsttrashstack.h: Remove warning about using the fallback
4502         trash stack implementation, it's still faster than malloc.
4503
4504 2005-03-30  Andy Wingo  <wingo@pobox.com>
4505
4506         * tests/complexity.c: Add a copyright.
4507
4508 2005-03-31  Wim Taymans  <wim@fluendo.com>
4509
4510         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
4511         (gst_base_transform_class_init), (gst_base_transform_init),
4512         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
4513         (gst_base_transform_get_property),
4514         (gst_base_transform_sink_activate),
4515         (gst_base_transform_src_activate),
4516         (gst_base_transform_change_state):
4517         * gst/base/gstbasetransform.h:
4518         * gst/elements/gstidentity.c: (gst_identity_class_init),
4519         (gst_identity_event), (gst_identity_check_perfect),
4520         (gst_identity_transform), (gst_identity_start),
4521         (gst_identity_stop):
4522         Added start/stop methods to transform base class so subclasses 
4523         don't need to deal with state changes even.
4524
4525 2005-03-31  Wim Taymans  <wim@fluendo.com>
4526
4527         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
4528         (gst_event_new_discontinuous), (gst_event_discont_get_value):
4529         * gst/gstevent.h:
4530         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4531         (gst_pad_pull_range):
4532         Added rate to the discont event to prepare for variable speed
4533         and reverse playback.
4534
4535 2005-03-29  David Schleef  <ds@schleef.org>
4536
4537         * configure.ac:
4538         * testsuite/trigger/Makefile.am:
4539         * testsuite/trigger/trigger.c: A little example program to show
4540         how trigger-based elements can work.
4541
4542 2005-03-29  Wim Taymans  <wim@fluendo.com>
4543
4544         * gst/base/Makefile.am:
4545         * gst/base/README:
4546         * gst/base/gstbasesink.c: (gst_basesink_get_type),
4547         (gst_basesink_base_init), (gst_basesink_class_init),
4548         (gst_basesink_pad_getcaps), (gst_basesink_init),
4549         (gst_basesink_activate), (gst_basesink_change_state):
4550         * gst/base/gstbasesink.h:
4551         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
4552         (gst_base_transform_base_init), (gst_base_transform_finalize),
4553         (gst_base_transform_class_init), (gst_base_transform_init),
4554         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
4555         (gst_base_transform_event), (gst_base_transform_getrange),
4556         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
4557         (gst_base_transform_set_property),
4558         (gst_base_transform_get_property),
4559         (gst_base_transform_sink_activate),
4560         (gst_base_transform_src_activate),
4561         (gst_base_transform_change_state):
4562         * gst/base/gstbasetransform.h:
4563         * gst/elements/gstidentity.c: (gst_identity_finalize),
4564         (gst_identity_class_init), (gst_identity_init),
4565         (gst_identity_event), (gst_identity_check_perfect),
4566         (gst_identity_transform), (gst_identity_set_property),
4567         (gst_identity_get_property), (gst_identity_change_state):
4568         * gst/elements/gstidentity.h:
4569         * gst/gstelement.c: (gst_element_get_state_func),
4570         (gst_element_lost_state), (gst_element_pads_activate):
4571         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4572         (gst_pad_check_pull_range), (gst_pad_pull_range):
4573         * gst/gstpad.h:
4574         Simplify pad activation.
4575         Added function to check if pull_range can be performed.
4576         Error out when pulling inactive or flushing pads.
4577         Removed const from refcounted types as it does not make sense.
4578         Simplify pad templates in basesink
4579         Added base class for simple 1-to-1 transforms.
4580         Make identity subclass the base transform.
4581
4582 2005-03-29  Andy Wingo  <wingo@pobox.com>
4583
4584         * docs/libs/gstreamer-libs-overrides.txt: 
4585         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
4586         really don't understand what's going on, but like whatever. I want
4587         green buildbot!
4588
4589         * docs/gst/Makefile.am:
4590         * docs/libs/Makefile.am: Dist the overrides files.
4591
4592         * check/Makefile.am (clean-local): Remove .libs directories.
4593
4594         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
4595         elements to EXTRA_DIST, so po/ files are happy.
4596
4597         * po/POTFILES.in: Er, remove it here.
4598
4599         * po/POTFILES: Remove gstspider.c.
4600
4601         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
4602
4603         * docs/libs/gstreamer-libs-docs.sgml: 
4604         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
4605         bytestream.
4606
4607         * tests/complexity.c (main): Set the length of the preroll queue
4608         on the sinks to prevent a lockup.
4609
4610         * libs/gst/dataprotocol/Makefile.am: 
4611         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
4612         the same as the one in check/gst-libs/gdp.c.
4613
4614         * po/, docs/gst/: Commit automatic changes to docs and po files.
4615
4616         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
4617         the versioned libgstbase.
4618
4619         * check/Makefile.am: Depend on an unversioned gst-register, seems
4620         to make autoconf happier.
4621
4622         * gst/base/Makefile.am: Make libgstbase a versioned lib.
4623
4624 2005-03-28  Wim Taymans  <wim@fluendo.com>
4625
4626         * configure.ac:
4627         * docs/design/part-gstelement.txt:
4628         * docs/design/part-negotiation.txt:
4629         * docs/design/part-preroll.txt:
4630         * docs/design/part-scheduling.txt:
4631         * docs/design/part-states.txt:
4632         * gst/Makefile.am:
4633         * gst/base/Makefile.am:
4634         * gst/base/README:
4635         * gst/base/gstbasesink.c: (gst_basesink_get_template),
4636         (gst_basesink_base_init), (gst_basesink_class_init),
4637         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4638         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4639         (gst_basesink_set_pad_functions),
4640         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
4641         (gst_basesink_set_property), (gst_basesink_get_property),
4642         (gst_base_sink_get_template), (gst_base_sink_get_caps),
4643         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
4644         (gst_basesink_preroll_queue_push),
4645         (gst_basesink_preroll_queue_empty),
4646         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
4647         (gst_basesink_event), (gst_basesink_get_times),
4648         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
4649         (gst_basesink_chain_unlocked), (gst_basesink_chain),
4650         (gst_basesink_loop), (gst_basesink_activate),
4651         (gst_basesink_change_state):
4652         * gst/base/gstbasesink.h:
4653         * gst/elements/Makefile.am:
4654         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
4655         (gst_fakesink_class_init), (gst_fakesink_init),
4656         (gst_fakesink_set_property), (gst_fakesink_get_property),
4657         (gst_fakesink_get_times), (gst_fakesink_event),
4658         (gst_fakesink_preroll), (gst_fakesink_render),
4659         (gst_fakesink_change_state):
4660         * gst/elements/gstfakesink.h:
4661         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4662         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
4663         * gst/gstelement.c: (gst_element_add_pad),
4664         (gst_element_get_state_func), (gst_element_abort_state),
4665         (gst_element_commit_state), (gst_element_lost_state),
4666         (gst_element_set_state), (gst_element_pads_activate):
4667         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
4668         * gst/gstpipeline.c: (gst_pipeline_send_event),
4669         (gst_pipeline_change_state):
4670         Added state change code.
4671         Added/updated docs.
4672         Added sink base class, make fakesink extend the base class.
4673         Small cleanups in GstPipeline.
4674
4675 2005-03-26  David Schleef  <ds@schleef.org>
4676
4677         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
4678         is broken and should be implemented in a different library.
4679         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
4680         * gst/gst.h: remove gstcpu.h
4681         * gst/gstcpu.c: remove
4682         * gst/gstcpu.h: remove
4683         * gst/Makefile.am.future: Remove this file.  It's ancient.
4684
4685 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4686
4687         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4688         (gst_bin_send_event):
4689           Add default event/set_manager handlers. The set_manager handler
4690           takes care that the manager is distributed over kids that were
4691           already in the bin before the manager was set. The event handler
4692           is a utility virtual function that sends the event over all sinks,
4693           so that gst_element_send_event (bin, event); has the expected
4694           behaviour.
4695         * gst/gstpad.c: (gst_pad_event_default):
4696           Re-install default event handling for discontinuities, so that
4697           seeking works without requiring hacks in applications or extra
4698           code in sinks.
4699         * gst/gstpipeline.c: (gst_pipeline_class_init),
4700         (gst_pipeline_send_event):
4701           Half hack, half utility: set a pipeline to PAUSED for seek events,
4702           since that is the only way we can guarantee a/v sync. Means that
4703           you can do gst_element_seek (pipeline, method, pos); on a pipeline
4704           and it "just works".
4705
4706 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4707
4708         * gst/gstpipeline.c: (gst_pipeline_use_clock):
4709           Lock/unlock mismatch.
4710
4711 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
4712
4713         * docs/faq/gst-uninstalled:
4714           add gst-plugins-base
4715         * docs/gst/Makefile.am:
4716           don't error out until docs are fixed
4717         * docs/gst/gstreamer.types:
4718           remove thread
4719
4720 2005-03-22  Wim Taymans  <wim@fluendo.com>
4721
4722         * check/Makefile.am:
4723         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
4724         * gst/gststructure.c: (gst_structure_set_valist),
4725         (gst_structure_copy_conditional):
4726         Activated more tests.
4727         Added message test.
4728         Added G_TYPE_POINTER to GstStructure.
4729         
4730
4731 2005-03-22  Wim Taymans  <wim@fluendo.com>
4732
4733         * docs/design/part-TODO.txt:
4734         * docs/design/part-events.txt:
4735         * docs/design/part-gstbin.txt:
4736         * docs/design/part-gstbus.txt:
4737         * docs/design/part-gstpipeline.txt:
4738         * docs/design/part-messages.txt:
4739         * gst/gstbus.c:
4740         * gst/gstmessage.c:
4741         Docs updates
4742
4743 2005-03-21  Wim Taymans  <wim@fluendo.com>
4744
4745         * gst/gstbus.c: (gst_bus_post):
4746         Fix copy-and-paste error.
4747
4748 2005-03-21  Wim Taymans  <wim@fluendo.com>
4749
4750         * check/Makefile.am:
4751         * gst/Makefile.am:
4752         * gst/elements/Makefile.am:
4753         * gst/elements/gstelements.c:
4754         * gst/elements/gstfakesink.c: (gst_fakesink_init),
4755         (gst_fakesink_event), (gst_fakesink_chain):
4756         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4757         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
4758         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
4759         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
4760         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
4761         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
4762         (gst_fakesrc_loop), (gst_fakesrc_activate),
4763         (gst_fakesrc_change_state):
4764         * gst/elements/gstfakesrc.h:
4765         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
4766         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
4767         (gst_filesrc_open_file), (gst_filesrc_loop),
4768         (gst_filesrc_activate), (gst_filesrc_change_state),
4769         (filesrc_find_peek), (filesrc_find_suggest),
4770         (gst_filesrc_type_find):
4771         * gst/elements/gstidentity.c: (gst_identity_finalize),
4772         (gst_identity_class_init), (gst_identity_init),
4773         (gst_identity_proxy_getcaps), (identity_queue_push),
4774         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
4775         (gst_identity_getrange), (gst_identity_chain),
4776         (gst_identity_sink_loop), (gst_identity_src_loop),
4777         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
4778         (gst_identity_set_property), (gst_identity_get_property),
4779         (gst_identity_change_state):
4780         * gst/elements/gstidentity.h:
4781         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
4782         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
4783         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
4784         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
4785         (gst_tee_sink_activate):
4786         * gst/elements/gsttee.h:
4787         * gst/gst.c: (gst_register_core_elements), (init_post):
4788         * gst/gst.h:
4789         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
4790         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
4791         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
4792         (gst_bin_change_state):
4793         * gst/gstbin.h:
4794         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
4795         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
4796         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
4797         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
4798         (gst_bus_set_sync_handler), (gst_bus_create_watch),
4799         (bus_watch_callback), (bus_watch_destroy),
4800         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
4801         (poll_timeout), (gst_bus_poll):
4802         * gst/gstbus.h:
4803         * gst/gstcaps.h:
4804         * gst/gstdata.h:
4805         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4806         (gst_element_post_message), (gst_element_message_full),
4807         (gst_element_get_state_func), (gst_element_get_state),
4808         (gst_element_abort_state), (gst_element_commit_state),
4809         (gst_element_lost_state), (gst_element_set_state),
4810         (gst_element_pads_activate), (gst_element_change_state),
4811         (gst_element_dispose), (gst_element_set_manager_func),
4812         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
4813         (gst_element_set_manager), (gst_element_get_manager),
4814         (gst_element_set_bus), (gst_element_get_bus),
4815         (gst_element_set_scheduler), (gst_element_get_scheduler):
4816         * gst/gstelement.h:
4817         * gst/gstevent.c: (gst_event_new_segment_seek),
4818         (gst_event_new_flush):
4819         * gst/gstevent.h:
4820         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
4821         (_gst_message_free), (gst_message_get_type), (gst_message_new),
4822         (gst_message_new_eos), (gst_message_new_error),
4823         (gst_message_new_warning), (gst_message_new_tag),
4824         (gst_message_new_state_changed), (gst_message_new_application),
4825         (gst_message_get_structure), (gst_message_parse_tag),
4826         (gst_message_parse_state_changed), (gst_message_parse_error),
4827         (gst_message_parse_warning):
4828         * gst/gstmessage.h:
4829         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
4830         (gst_real_pad_set_property), (gst_pad_set_active),
4831         (gst_pad_is_active), (gst_pad_set_blocked_async),
4832         (gst_pad_set_blocked), (gst_pad_is_blocked),
4833         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
4834         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
4835         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
4836         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
4837         (gst_pad_link_filtered), (gst_pad_relink_filtered),
4838         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
4839         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
4840         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
4841         (gst_pad_set_caps), (gst_pad_configure_sink),
4842         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
4843         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
4844         (gst_real_pad_dispose), (gst_real_pad_finalize),
4845         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
4846         (gst_pad_event_default_dispatch), (gst_pad_event_default),
4847         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
4848         * gst/gstpad.h:
4849         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
4850         (pipeline_bus_handler), (gst_pipeline_change_state),
4851         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
4852         * gst/gstpipeline.h:
4853         * gst/gstprobe.h:
4854         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
4855         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
4856         (gst_queue_link_src), (gst_queue_bufferalloc),
4857         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
4858         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
4859         (gst_queue_loop), (gst_queue_handle_src_event),
4860         (gst_queue_handle_src_query), (gst_queue_src_activate),
4861         (gst_queue_change_state):
4862         * gst/gstqueue.h:
4863         * gst/gstscheduler.c: (gst_scheduler_init),
4864         (gst_scheduler_dispose), (gst_scheduler_create_task),
4865         (gst_scheduler_factory_create):
4866         * gst/gstscheduler.h:
4867         * gst/gststructure.c: (gst_structure_get_type),
4868         (gst_structure_copy_conditional):
4869         * gst/gststructure.h:
4870         * gst/gsttaginterface.h:
4871         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
4872         (gst_task_init), (gst_task_dispose), (gst_task_create),
4873         (gst_task_get_state), (gst_task_start), (gst_task_stop),
4874         (gst_task_pause):
4875         * gst/gsttask.h:
4876         * gst/gstthread.c:
4877         * gst/gstthread.h:
4878         * gst/gsttypes.h:
4879         * gst/schedulers/Makefile.am:
4880         * gst/schedulers/cothreads_compat.h:
4881         * gst/schedulers/entryscheduler.c:
4882         * gst/schedulers/faircothreads.c:
4883         * gst/schedulers/faircothreads.h:
4884         * gst/schedulers/fairscheduler.c:
4885         * gst/schedulers/gstbasicscheduler.c:
4886         * gst/schedulers/gstoptimalscheduler.c:
4887         * gst/schedulers/gthread-cothreads.h:
4888         * gst/schedulers/threadscheduler.c:
4889         (gst_thread_scheduler_task_get_type),
4890         (gst_thread_scheduler_task_class_init),
4891         (gst_thread_scheduler_task_init),
4892         (gst_thread_scheduler_task_start),
4893         (gst_thread_scheduler_task_stop),
4894         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
4895         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
4896         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
4897         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
4898         (plugin_init):
4899         * libs/gst/Makefile.am:
4900         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
4901         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
4902         (gst_file_pad_parent_set):
4903         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
4904         (gst_dp_event_from_packet):
4905         * tests/complexity.c: (main):
4906         * tests/mass_elements.c: (main):
4907         * testsuite/states/locked.c: (message_received), (main):
4908         * testsuite/states/parent.c: (main):
4909         * tools/gst-inspect.c: (print_element_flag_info),
4910         (print_implementation_info), (print_pad_info):
4911         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
4912         (main):
4913         * tools/gst-md5sum.c: (event_loop), (main):
4914         * tools/gst-typefind.c: (main):
4915         * tools/gst-xmlinspect.c: (print_element_info):
4916         Next big merge.
4917         Added GstBus for mainloop integration.
4918         Added GstMessage for sending notifications on the bus.
4919         Added GstTask as an abstraction for pipeline entry points.
4920         Removed GstThread.
4921         Removed Schedulers.
4922         Simplified GstQueue for multithreaded core.
4923         Made _link threadsafe, removed old capsnego.
4924         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
4925         Added pad blocking functions.
4926         Reworked scheduling functions in GstPad to prepare for
4927         scheduling updates soon.
4928         Moved events out of data stream.
4929         Simplified GstEvent types.
4930         Added return values to push/pull.
4931         Removed clocking from GstElement.
4932         Added prototypes for state change function for next merge.
4933         Removed iterate from bins and state change management.
4934         Fixed some elements, disabled others for now.
4935         Fixed -inspect and -launch.
4936         Added check for GstBus.
4937
4938 2005-03-10  Wim Taymans  <wim@fluendo.com>
4939
4940         * docs/design/part-MT-refcounting.txt:
4941         * docs/design/part-clocks.txt:
4942         * docs/design/part-gstelement.txt:
4943         * docs/design/part-gstobject.txt:
4944         * docs/design/part-standards.txt:
4945         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4946         (gst_bin_remove_func), (gst_bin_remove):
4947         * gst/gstbin.h:
4948         * gst/gstbuffer.c:
4949         * gst/gstcaps.h:
4950         * testsuite/clock/clock1.c: (main):
4951         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
4952         (main):
4953         * testsuite/dlopen/loadgst.c: (do_test):
4954         * testsuite/refcounting/bin.c: (add_remove_test1),
4955         (add_remove_test2), (main):
4956         * testsuite/refcounting/element.c: (main):
4957         * testsuite/refcounting/element_pad.c: (main):
4958         * testsuite/refcounting/pad.c: (main):
4959         * tools/gst-launch.c: (sigint_handler_sighandler):
4960         * tools/gst-typefind.c: (main):
4961         Doc updates.
4962         Added doc about clock.
4963         removed gst_bin_iterate_recurse_up(), marked methods
4964         for removal.
4965         Fix more testsuites.
4966
4967 2005-03-09  Wim Taymans  <wim@fluendo.com>
4968
4969         * gst/gstpad.c: (gst_pad_get_direction),
4970         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
4971         (gst_pad_collect_valist):
4972         * testsuite/bins/interface.c: (main):
4973         * testsuite/caps/audioscale.c: (test_caps):
4974         * testsuite/caps/caps.c: (test1), (test2), (test3):
4975         * testsuite/caps/deserialize.c: (main):
4976         * testsuite/caps/enumcaps.c: (main):
4977         * testsuite/caps/filtercaps.c: (main):
4978         * testsuite/caps/intersect2.c: (main):
4979         * testsuite/caps/random.c: (main):
4980         * testsuite/caps/renegotiate.c: (my_fixate), (main):
4981         * testsuite/caps/sets.c: (check_caps):
4982         * testsuite/caps/simplify.c: (check_caps), (main):
4983         * testsuite/caps/subtract.c: (check_caps):
4984         Fix _pad_get_direction wrt ghostpads.
4985         Fix caps testsuite.
4986
4987 2005-03-09  Wim Taymans  <wim@fluendo.com>
4988
4989         * check/Makefile.am:
4990         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
4991         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
4992         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
4993         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
4994         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
4995         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
4996         (gst_bin_remove), (gst_bin_iterate_recurse_up),
4997         (bin_element_is_sink), (gst_bin_iterate_sinks),
4998         (gst_bin_iterate_all_by_interface):
4999         * gst/gstbin.h:
5000         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
5001         (gst_element_change_state), (gst_element_dispose),
5002         (gst_element_finalize), (gst_element_set_loop_function):
5003         * gst/gstelement.h:
5004         * gst/gstiterator.c: (find_custom_fold_func):
5005         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
5006         (gst_pad_collectv), (gst_pad_collect_valist),
5007         (gst_pad_template_new):
5008         * gst/gstpipeline.c: (gst_pipeline_class_init),
5009         (gst_pipeline_dispose), (gst_pipeline_set_property),
5010         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
5011         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
5012         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
5013         * gst/gstutils.h:
5014         * gst/schedulers/entryscheduler.c:
5015         * gst/schedulers/gstbasicscheduler.c:
5016         (gst_basic_scheduler_cothreaded_chain),
5017         (gst_basic_scheduler_chain_add_element):
5018         * testsuite/bins/interface.c: (main):
5019         Added GstBin test.
5020         Added GstSystemClock test.
5021         Implemented clock distribution code in GstBin.
5022         Implemented iterate sinks method for future use.
5023         Rearranged gstelement.h
5024         Fix GstIterator comparison bug.
5025         Moved some code to GstPipeline, mostly clocking related.
5026
5027 2005-03-09  Wim Taymans  <wim@fluendo.com>
5028
5029         * configure.ac:
5030         * gst/gst_private.h:
5031         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
5032         (gst_bin_remove_func), (gst_bin_remove),
5033         (gst_bin_get_by_name_recurse_up):
5034         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
5035         (gst_clock_id_compare_func), (gst_clock_id_wait),
5036         (gst_clock_id_wait_async), (gst_clock_init),
5037         (gst_clock_adjust_unlocked), (gst_clock_get_time):
5038         * gst/gstelement.h:
5039         * gst/gstinfo.c: (_gst_debug_init):
5040         * gst/gstobject.h:
5041         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
5042         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
5043         * gst/gstpad.h:
5044         Bump version number, we're now 0.9.0
5045         Add future debugging category.
5046         Fix NULL _unref() in _get_by_name_recurse_up
5047         Rearrange gstpad.h.
5048         Update some docs.
5049
5050 2005-03-08  Wim Taymans  <wim@fluendo.com>
5051
5052         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
5053         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5054         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
5055         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
5056         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
5057         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
5058         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
5059         * gst/elements/gstidentity.c: (gst_identity_class_init):
5060         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
5061         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
5062         * gst/elements/gstshaper.c: (gst_shaper_class_init):
5063         * gst/elements/gststatistics.c: (gst_statistics_class_init):
5064         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
5065         (gst_tee_link):
5066         * gst/gstelement.c: (gst_element_class_init),
5067         (gst_element_base_class_init), (gst_element_init),
5068         (gst_element_get_random_pad), (gst_element_wait_state_change),
5069         (gst_element_change_state), (gst_element_dispose),
5070         (gst_element_finalize), (gst_element_set_loop_function):
5071         * gst/gstelement.h:
5072         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
5073         * gst/gstthread.c: (gst_thread_class_init),
5074         (gst_thread_release_children_locks), (gst_thread_change_state):
5075         * gst/schedulers/gstbasicscheduler.c:
5076         (gst_basic_scheduler_loopfunc_wrapper),
5077         (gst_basic_scheduler_chain_wrapper),
5078         (gst_basic_scheduler_src_wrapper),
5079         (gst_basic_scheduler_remove_element):
5080         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
5081         Remove threadsafe properties. Fix elements because GObject
5082         complains when installing a property before declaring a
5083         set/get_property handler.
5084         Rearrange gstelement.h file, use STATE macros for state locks.
5085         Free mutexes in the finalize method instead of dispose.
5086
5087 2005-03-08  Wim Taymans  <wim@fluendo.com>
5088
5089         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
5090         * gst/gstthread.c: (gst_thread_release_children_locks):
5091         Added parentage check.
5092         Fix build og GstThread again.
5093
5094 2005-03-08  Wim Taymans  <wim@fluendo.com>
5095
5096         * docs/design/part-MT-refcounting.txt:
5097         * docs/design/part-conventions.txt:
5098         * docs/design/part-gstobject.txt:
5099         * docs/design/part-relations.txt:
5100         * docs/design/part-standards.txt:
5101         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
5102         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
5103         (gst_bin_get_by_name), (gst_bin_get_by_interface),
5104         (gst_bin_iterate_all_by_interface):
5105         * gst/gstbuffer.h:
5106         * gst/gstclock.h:
5107         * gst/gstelement.c: (gst_element_class_init),
5108         (gst_element_change_state), (gst_element_set_loop_function):
5109         * gst/gstelement.h:
5110         * gst/gstiterator.c:
5111         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
5112         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
5113         (gst_object_dispatch_properties_changed), (gst_object_set_name),
5114         (gst_object_set_parent), (gst_object_unparent),
5115         (gst_object_check_uniqueness):
5116         * gst/gstobject.h:
5117         Docs updates, clean up some headers.
5118
5119 2005-03-07  Wim Taymans  <wim@fluendo.com>
5120
5121         * check/.cvsignore:
5122         * check/Makefile.am:
5123         * check/gst-libs/.cvsignore:
5124         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
5125         * check/gst/.cvsignore:
5126         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
5127         (START_TEST), (gstbus_suite), (main):
5128         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
5129         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
5130         (gst_data_suite), (main):
5131         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
5132         (add_fold_func), (gstiterator_suite), (main):
5133         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
5134         (thread_name_object), (thread_name_object_default),
5135         (gst_object_name_compare), (gst_object_suite), (main):
5136         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
5137         (gst_pad_suite), (main):
5138         * check/gstcheck.c: (gst_check_log_message_func),
5139         (gst_check_log_critical_func), (gst_check_init):
5140         * check/gstcheck.h:
5141         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
5142         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
5143         Added checks.
5144
5145 2005-03-07  Wim Taymans  <wim@fluendo.com>
5146
5147         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
5148         (gst_list_iterator_next), (gst_list_iterator_resync),
5149         (gst_list_iterator_free), (gst_iterator_new_list),
5150         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
5151         (gst_iterator_free), (gst_iterator_push), (filter_next),
5152         (filter_resync), (filter_uninit), (filter_free),
5153         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
5154         (gst_iterator_foreach), (find_custom_fold_func),
5155         (gst_iterator_find_custom):
5156         * gst/gstiterator.h:
5157         Added missing files.
5158
5159 2005-03-07  Wim Taymans  <wim@fluendo.com>
5160
5161         * Makefile.am:
5162         * configure.ac:
5163         * docs/design/part-MT-refcounting.txt:
5164         * docs/design/part-conventions.txt:
5165         * docs/design/part-gstobject.txt:
5166         * docs/design/part-relations.txt:
5167         * examples/mixer/mixer.c: (main):
5168         * examples/thread/thread.c: (eos), (main):
5169         * gst/Makefile.am:
5170         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
5171         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
5172         (gst_spider_plug_from_srcpad):
5173         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
5174         (gst_spider_identity_change_state),
5175         (gst_spider_identity_sink_loop_type_finding):
5176         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
5177         * gst/elements/gstidentity.c: (gst_identity_init):
5178         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
5179         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
5180         * gst/elements/gsttypefindelement.c: (free_entry):
5181         * gst/gst.c:
5182         * gst/gst.h:
5183         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
5184         (gst_bin_set_clock_func), (gst_bin_auto_clock),
5185         (gst_bin_set_index), (gst_bin_set_element_sched),
5186         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
5187         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
5188         (gst_bin_iterate_elements), (iterate_child_recurse),
5189         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
5190         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
5191         (compare_interface), (gst_bin_get_by_interface),
5192         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
5193         * gst/gstbin.h:
5194         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
5195         (gst_buffer_default_free), (gst_buffer_default_copy),
5196         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
5197         (gst_buffer_create_sub):
5198         * gst/gstbuffer.h:
5199         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
5200         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
5201         (gst_caps_unref), (gst_static_caps_get),
5202         (gst_caps_remove_and_get_structure), (gst_caps_append),
5203         (gst_caps_append_structure), (gst_caps_remove_structure),
5204         (gst_caps_copy_nth), (gst_caps_set_simple),
5205         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
5206         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
5207         (gst_caps_structure_intersect_field), (gst_caps_intersect),
5208         (gst_caps_structure_subtract_field), (gst_caps_subtract),
5209         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
5210         (gst_caps_structure_figure_out_union),
5211         (gst_caps_switch_structures), (gst_caps_do_simplify),
5212         (gst_caps_replace), (gst_caps_from_string),
5213         (gst_caps_copy_conditional):
5214         * gst/gstcaps.h:
5215         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
5216         (_gst_clock_id_free), (gst_clock_id_unref),
5217         (gst_clock_id_compare_func), (gst_clock_id_wait),
5218         (gst_clock_id_wait_async), (gst_clock_class_init),
5219         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
5220         (gst_clock_get_time), (gst_clock_set_time_adjust),
5221         (gst_clock_set_property), (gst_clock_get_property):
5222         * gst/gstclock.h:
5223         * gst/gstcompat.h:
5224         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
5225         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
5226         * gst/gstdata.h:
5227         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
5228         (gst_element_requires_clock), (gst_element_provides_clock),
5229         (gst_element_set_clock), (gst_element_clock_wait),
5230         (gst_element_wait), (gst_element_set_time_delay),
5231         (gst_element_is_indexable), (gst_element_add_pad),
5232         (gst_element_add_ghost_pad), (gst_element_remove_pad),
5233         (pad_compare_name), (gst_element_get_static_pad),
5234         (gst_element_request_pad), (gst_element_get_request_pad),
5235         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
5236         (gst_element_class_get_pad_template_list),
5237         (gst_element_class_get_pad_template), (gst_element_error_func),
5238         (gst_element_get_random_pad), (gst_element_get_event_masks),
5239         (gst_element_send_event), (gst_element_seek),
5240         (gst_element_get_query_types), (gst_element_query),
5241         (gst_element_get_formats), (gst_element_convert),
5242         (gst_element_is_locked_state), (gst_element_set_locked_state),
5243         (gst_element_sync_state_with_parent), (gst_element_change_state),
5244         (gst_element_finalize), (gst_element_yield),
5245         (gst_element_interrupt), (gst_element_set_scheduler),
5246         (gst_element_get_scheduler), (gst_element_set_loop_function):
5247         * gst/gstelement.h:
5248         * gst/gstevent.h:
5249         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
5250         (gst_format_get_by_nick), (gst_format_get_details),
5251         (gst_format_iterate_definitions):
5252         * gst/gstformat.h:
5253         * gst/gstindex.c: (gst_index_gtype_resolver):
5254         * gst/gstinfo.c:
5255         * gst/gstinfo.h:
5256         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
5257         (gst_mem_chunk_free):
5258         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
5259         (gst_object_ref), (gst_object_unref), (gst_object_sink),
5260         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
5261         (gst_object_dispatch_properties_changed),
5262         (gst_object_set_name_default), (gst_object_set_name),
5263         (gst_object_get_name), (gst_object_set_name_prefix),
5264         (gst_object_get_name_prefix), (gst_object_set_parent),
5265         (gst_object_get_parent), (gst_object_unparent),
5266         (gst_object_check_uniqueness), (gst_object_save_thyself),
5267         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
5268         (gst_object_set_property), (gst_object_get_property),
5269         (gst_object_get_path_string):
5270         * gst/gstobject.h:
5271         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
5272         (gst_real_pad_init), (gst_real_pad_get_property),
5273         (gst_pad_custom_new), (gst_pad_get_direction),
5274         (gst_pad_set_active), (gst_pad_is_active),
5275         (gst_pad_set_event_function), (gst_pad_is_linked),
5276         (gst_pad_link_free), (gst_pad_link_intersect),
5277         (gst_pad_link_fixate), (gst_pad_set_caps),
5278         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
5279         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
5280         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
5281         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
5282         (gst_pad_get_caps), (gst_pad_peer_get_caps),
5283         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
5284         (gst_pad_realize), (gst_pad_get_allowed_caps),
5285         (gst_real_pad_dispose), (gst_real_pad_finalize),
5286         (gst_pad_collectv), (gst_pad_collect_valist),
5287         (gst_pad_template_dispose), (gst_pad_template_new),
5288         (gst_pad_get_internal_links):
5289         * gst/gstpad.h:
5290         * gst/gstpipeline.c: (gst_pipeline_dispose),
5291         (gst_pipeline_change_state):
5292         * gst/gstpipeline.h:
5293         * gst/gstplugin.c:
5294         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
5295         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
5296         * gst/gstpluginfeature.h:
5297         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5298         * gst/gstquery.c: (_gst_query_type_initialize),
5299         (gst_query_type_register), (gst_query_type_get_by_nick),
5300         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
5301         * gst/gstquery.h:
5302         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
5303         * gst/gstscheduler.c: (gst_scheduler_add_element),
5304         (gst_scheduler_factory_create):
5305         * gst/gststructure.c: (gst_structure_set_parent_refcount),
5306         (gst_structure_free), (gst_structure_set_name),
5307         (gst_structure_id_set_value), (gst_structure_set_value),
5308         (gst_structure_set_valist), (gst_structure_remove_field),
5309         (gst_structure_remove_fields),
5310         (gst_structure_remove_fields_valist),
5311         (gst_structure_remove_all_fields), (gst_structure_foreach),
5312         (gst_structure_map_in_place),
5313         (gst_caps_structure_fixate_field_nearest_int),
5314         (gst_caps_structure_fixate_field_nearest_double):
5315         * gst/gststructure.h:
5316         * gst/gstsystemclock.c: (gst_system_clock_class_init),
5317         (gst_system_clock_init), (gst_system_clock_dispose),
5318         (gst_system_clock_async_thread),
5319         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
5320         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
5321         * gst/gstsystemclock.h:
5322         * gst/gsttag.c: (gst_tag_list_add_value_internal),
5323         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
5324         * gst/gsttaginterface.c:
5325         * gst/gstthread.c: (gst_thread_dispose),
5326         (gst_thread_release_children_locks), (gst_thread_change_state),
5327         (gst_thread_main_loop):
5328         * gst/gsttrashstack.h:
5329         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
5330         * gst/gsttypes.h:
5331         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
5332         (gst_element_request_pad), (gst_element_get_pad_from_template),
5333         (gst_element_request_compatible_pad),
5334         (gst_element_get_compatible_pad_filtered),
5335         (gst_element_get_compatible_pad), (gst_element_state_get_name),
5336         (gst_element_link_pads_filtered), (gst_element_link_filtered),
5337         (gst_element_link_many), (gst_element_link),
5338         (gst_element_link_pads), (gst_element_unlink_pads),
5339         (gst_element_unlink_many), (gst_element_unlink),
5340         (gst_pad_can_link_filtered), (gst_pad_can_link),
5341         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
5342         (gst_object_default_error), (gst_bin_add_many),
5343         (gst_bin_remove_many), (gst_element_populate_std_props),
5344         (gst_element_class_install_std_props), (gst_buffer_merge),
5345         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
5346         (link_fold_func), (gst_pad_proxy_setcaps):
5347         * gst/gstutils.h:
5348         * gst/gstvalue.c: (gst_value_deserialize_string):
5349         * gst/parse/grammar.y:
5350         * gst/schedulers/gstbasicscheduler.c:
5351         (gst_basic_scheduler_cothreaded_chain),
5352         (gst_basic_scheduler_chain_recursive_add),
5353         (gst_basic_scheduler_pad_link):
5354         * gst/schedulers/gstoptimalscheduler.c:
5355         (get_group_schedule_function),
5356         (gst_opt_scheduler_state_transition),
5357         (gst_opt_scheduler_add_element), (element_get_reachables_func):
5358         * libs/gst/bytestream/bytestream.c:
5359         * libs/gst/dataprotocol/dataprotocol.c:
5360         (gst_dp_header_from_buffer):
5361         * po/nb.po:
5362         * po/ru.po:
5363         * tests/threadstate/threadstate2.c: (eos):
5364         * tools/gst-compprep.c: (main):
5365         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
5366         (print_pad_info), (print_children_info):
5367         * tools/gst-launch.c: (idle_func), (main):
5368         * tools/gst-md5sum.c: (idle_func), (main):
5369         * tools/gst-xmlinspect.c: (print_element_info):
5370         First THREADED backport attempt, focusing on adding locks and
5371         making sure the API is threadsafe. Needs more work. More docs
5372         follow this week.
5373
5374 2005-02-24  Andy Wingo  <wingo@pobox.com>
5375
5376         * tests/bench-complexity.scm:
5377         * tests/complexity.gnuplot: New files, good for running complexity
5378         benchmarks.
5379
5380         * tests/Makefile.am:
5381         * tests/complexity.c: New test, sets up N elements, at each level
5382         teeing into M streams per element. Eeeenteresting.
5383
5384         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
5385         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
5386         running bench-mass_elements.scm.
5387
5388         * tests/bench-mass_elements.scm: New script, runs mass_elements
5389         for various numbers of identities, outputting the results to a
5390         file. Requires guile 1.6. Just for testing.
5391
5392 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5393
5394         * gst/schedulers/fairscheduler.c:
5395           compile with debug disabled
5396
5397 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
5398
5399         * configure.ac:
5400           hunting season on 0.9 is now OPEN
5401
5402 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
5403
5404         * docs/libs/tmpl/gstcontrol.sgml:
5405         * docs/libs/tmpl/gstdparam.sgml:
5406         * docs/libs/tmpl/gstdplinint.sgml:
5407         * docs/libs/tmpl/gstdpman.sgml:
5408         * docs/libs/tmpl/gstdpsmooth.sgml:
5409         * docs/libs/tmpl/gstunitconvert.sgml:
5410           more docs for the state of dparams
5411
5412 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5413
5414         * gst/gstelementfactory.c: (gst_element_factory_create):
5415         * gst/gstobject.c: (gst_object_init),
5416         (gst_object_set_name_default), (gst_object_set_name):
5417           name objects by default, not in gst_element_factory_create. Allows
5418           using elements created with g_object_new. (fixes #167283)
5419
5420 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5421
5422         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
5423           make the time that debugging functions print relative to when
5424           gst_init was called
5425
5426 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
5427
5428         * gst/gsttaginterface.c:
5429           Fix inline docs: tag setter vararg functions are NULL-terminated,
5430           GST_TAG_INVALID doesn't exist any more.
5431
5432 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5433
5434         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
5435         Allocate the 1 byte more memory that was forgotten!!!!!
5436         fixes memory corruption on 64bit platforms
5437
5438 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
5439
5440         * docs/pwg/building-pads.xml:
5441         * docs/pwg/intro-basics.xml:
5442           fixed a few typos, relabeled introductionary list of types
5443         * docs/random/ensonic/dparams.txt:
5444           more notes abut dparam changes
5445         * libs/gst/control/dparam.c: (gst_dparam_attach):
5446         * libs/gst/control/dparammanager.c:
5447         * libs/gst/control/dparammanager.h:
5448           - many comments and notes on dparam implementation
5449           - new dparams are were not initialized to the default value
5450             from param spec
5451
5452 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
5453
5454         submitted by: Peter Astakhov
5455
5456         * po/LINGUAS:
5457         * po/ru.po:
5458           adding Russian translation
5459
5460 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5461
5462         * configure.ac:
5463         * docs/gst/Makefile.am:
5464         * docs/libs/Makefile.am:
5465           make sure popt is added to gtk-doc flags.  Fixes #147782.
5466
5467 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
5468
5469         * docs/faq/using.xml:
5470           Fix typo in FAQ (artssink => artsdsink)
5471
5472 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5473
5474         * tools/gst-launch.1.in:
5475           Fix typo (#166699).
5476
5477 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
5478
5479         * docs/faq/using.xml:
5480           Add -v argument to fakesrc/fakesink gst-launch line,
5481           so that the promised output will actually show up.
5482
5483 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5484
5485         * gst/gstthread.c: (gst_thread_change_state):
5486           Implement state-change error handling (#166073).
5487
5488 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5489
5490         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
5491           Release interrupt after handling (#166250).
5492
5493 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5494
5495         * configure.ac:
5496           back to HEAD
5497
5498 === release 0.8.9 ===
5499
5500 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5501
5502         * NEWS:
5503         * RELEASE:
5504         * configure.ac:
5505           releasing 0.8.9, "Like Eating Glass"
5506
5507 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5508
5509         submitted by: Clytie Siddall
5510
5511         * po/vi.po: Added Vietnamese translation
5512
5513 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5514
5515         patch by: Tim Philipp-Müller
5516
5517         * configure.ac:
5518         * gst/gstpad.c:
5519           unref data when probe function returns FALSE.  Fixes #166362
5520
5521 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5522
5523         * gst/gst.c: (gst_init_get_popt_table):
5524           Fix typo (#166269).
5525
5526 2005-02-04  Andy Wingo  <wingo@pobox.com>
5527
5528         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
5529         the debugging on whether the caps are compatible.
5530
5531 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5532
5533         * docs/manual/basics-elements.xml:
5534           Fix two typos.
5535
5536 2005-02-02  Wim Taymans  <wim@fluendo.com>
5537
5538         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
5539         (schedule_chain), (get_invalid_call), (chain_invalid_call),
5540         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
5541         Remove some FIXMEs after analysing and commenting why they
5542         are not issues.
5543
5544 2005-02-02  Wim Taymans  <wim@fluendo.com>
5545
5546         * gst/schedulers/gstoptimalscheduler.c:
5547         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
5548         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
5549         (get_invalid_call), (chain_invalid_call),
5550         (get_group_schedule_function), (loop_group_schedule_function),
5551         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
5552         (gst_opt_scheduler_state_transition),
5553         (gst_opt_scheduler_add_element),
5554         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
5555         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
5556         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
5557         (gst_opt_scheduler_show):
5558         Added lock to protect scheduler data structures.
5559
5560 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5561
5562         * testsuite/threads/threadi.c: (cb_data):
5563           Fix buglet in test.
5564
5565 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5566
5567         * testsuite/threads/Makefile.am:
5568         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
5569           On Wim's request, split the test in three separately-compiled
5570           tests that each test a very specific bug. Two of them still fail,
5571           will create bugs for those. threadi.c indicates why they fail.
5572
5573 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5574
5575         * gst/schedulers/gstoptimalscheduler.c:
5576         (get_group_schedule_function):
5577           Try to work with the threading mess that queue_link is.
5578
5579 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5580
5581         * gst/gstbin.c: (gst_bin_remove_func):
5582           Explicitely make an element release locks in a group when being
5583           remove from a bin.
5584         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
5585           If there's no scheduler, always return immediately (similar to
5586           gst_element_interrupt).
5587
5588 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5589
5590         * gst/gstbin.c: (gst_bin_child_state_change_func):
5591           Remove a piece of code that could never be reached.
5592         * docs/gst/gstreamer-sections.txt:
5593         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
5594         (gst_pad_call_get_function):
5595         * gst/gstpad.h:
5596         * testsuite/pad/Makefile.am:
5597           Fix #150546, enable tests.
5598
5599 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5600
5601         * docs/pwg/advanced-types.xml:
5602           Fix description for buffer-frames=0.
5603         * docs/gst/tmpl/gstbin.sgml:
5604         * gst/gstbin.c: (gst_bin_child_state_change_func),
5605         (gst_bin_change_state), (gst_bin_change_state_norecurse):
5606         * gst/gstbin.h:
5607         * testsuite/threads/Makefile.am:
5608         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
5609         (cb_state), (cb_play), (main):
5610           Fix non-recursive state changes to *really* change the state
5611           of the object, and not just call parent_class->state_change.
5612           Fix a lot of lockups caused by this. Fixes #132775. Add test
5613           for the problem. Also enable test to show #142588 (fixed).
5614         * gst/gstthread.c: (gst_thread_change_state),
5615         (gst_thread_child_state_change):
5616           Don't exit the thread if we go to NULL and are inside thread
5617           context. Instead, return control to the main thread context
5618           and exit from there.
5619         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
5620           Don't unset virtual functions, since those may still be used.
5621           That's not necessarily correct, but suffices for now.
5622         * configure.ac:
5623         * testsuite/Makefile.am:
5624         * testsuite/pad/Makefile.am:
5625         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
5626         (gst_test_sink_base_init), (gst_test_sink_chain),
5627         (gst_test_sink_init), (main):
5628         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
5629         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
5630         (main):
5631         * testsuite/pad/link.c: (gst_test_element_class_init),
5632         (gst_test_element_base_init), (gst_test_src_get),
5633         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
5634         (gst_test_filter_loop), (gst_test_filter_init),
5635         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
5636         (cb_error), (main):
5637           Add tests to show #150546. Pass, but should fail (currently
5638           disabled from the testsuite).
5639         * gst/gstscheduler.c: (gst_scheduler_dispose):
5640           Dereference child schedulers on dispose (#94464).
5641         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
5642           Fix typo.
5643         * testsuite/threads/thread.c: (main):
5644           Add more debug.
5645
5646 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5647
5648         * gst/gstpad.c: (gst_pad_push):
5649           Oops, revert previous commit, broke testsuite...
5650
5651 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5652
5653         * gst/gstpad.c: (gst_pad_push):
5654           Add check that the pad on which the push is performed is not a
5655           get-based pad (#150546).
5656
5657 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5658
5659         * gst/elements/gsttypefindelement.c:
5660         (gst_type_find_element_handle_event):
5661           Fix buffer pushing if stream EOSes during typefinding.
5662
5663 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
5664
5665         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5666
5667         * gst/gstvalue.c: (gst_string_wrap):
5668           Allow NULL-strings as argument (#165365).
5669
5670 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
5671
5672         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5673
5674         * gst/schedulers/faircothreads.c:
5675         (gst_fair_scheduler_cothread_queue_show):
5676           Fix build without debug enabled.
5677
5678 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
5679
5680         * docs/gst/gstreamer-sections.txt:
5681         * docs/libs/gstreamer-libs-docs.sgml:
5682         * docs/libs/gstreamer-libs-sections.txt:
5683         * docs/libs/tmpl/gstcontrol.sgml:
5684         * docs/libs/tmpl/gstdparam.sgml:
5685         * docs/libs/tmpl/gstdplinint.sgml:
5686         * docs/libs/tmpl/gstdpman.sgml:
5687         * docs/libs/tmpl/gstdpsmooth.sgml:
5688         * docs/libs/tmpl/gstputbits.sgml:
5689         * docs/libs/tmpl/gstunitconvert.sgml:
5690         * libs/gst/control/dparam.c:
5691         * libs/gst/control/dparam.h:
5692         * libs/gst/control/dparammanager.c:
5693         (gst_dpman_add_required_dparam_callback),
5694         (gst_dpman_add_required_dparam_direct),
5695         (gst_dpman_add_required_dparam_array),
5696         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
5697         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
5698         (gst_dpman_get_manager)
5699           restructured DParam docs
5700
5701 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
5702
5703         * gst-element-check.m4:
5704           Only check for gst-inspect if we haven't already
5705           found it in previous element check runs
5706
5707 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
5708
5709         * docs/gst/Makefile.am:
5710         * docs/libs/Makefile.am:
5711           fixed install rules to treat style.css as optional
5712
5713 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
5714
5715         * docs/gst/Makefile.am:
5716         * docs/libs/Makefile.am:
5717           install style.css along with docs
5718         * docs/gst/tmpl/gstbin.sgml:
5719         * docs/gst/tmpl/gstclock.sgml:
5720         * docs/gst/tmpl/gstdata.sgml:
5721         * docs/gst/tmpl/gstelement.sgml:
5722         * gst/gstbin.h:
5723         * gst/gstelement.c: (gst_element_class_init):
5724         * gst/gstelement.h:
5725           fixing incomplete docs
5726
5727 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
5728
5729         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5730           Don't unref seek event twice when fflush() fails
5731           
5732 2005-01-22  David Schleef  <ds@schleef.org>
5733
5734         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
5735
5736 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
5737
5738         * docs/gst/Makefile.am:
5739         * docs/libs/Makefile.am:
5740           added params for deprecation guards
5741         * gst/gst.c:
5742         * gst/gst.h:
5743         * gst/gsterror.c: (_gst_resource_errors_init),
5744         (_gst_stream_errors_init):
5745         * gst/gsterror.h:
5746           documented some more enums
5747
5748 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
5749         * gst/autoplug/gstspideridentity.c:
5750         Cosmetic fix - spider_find_peek should be static
5751         * gst/parse/parse.l:
5752         Applying fix for #164261
5753
5754 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
5755
5756         * docs/gst/gstreamer-sections.txt:
5757         * docs/gst/tmpl/gstplugin.sgml:
5758         * docs/libs/gstreamer-libs-sections.txt:
5759         * docs/libs/tmpl/gstcontrol.sgml:
5760         * gst/gstbuffer.h:
5761         * gst/gsttag.h:
5762         * gst/gstvalue.c:
5763           added docs for the TAG defines
5764
5765 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5766
5767         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
5768           Only unref entry if there is an entry.
5769
5770 2005-01-17  Wim Taymans  <wim@fluendo.com>
5771
5772         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5773         (remove_from_group), (schedule_group), (normalize_group),
5774         (gst_opt_scheduler_iterate):
5775         Also ref/unref decoupled elements before iterating the
5776         group since they are not added to the list of elements.
5777
5778 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5779
5780         * docs/manual/highlevel-components.xml:
5781           Add subtitle/streamselection as new features to playbin.
5782
5783 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5784
5785         * docs/manual/manual.xml:
5786           Re-enable dataaccess docs (oops).
5787
5788 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5789
5790         * docs/pwg/advanced-types.xml:
5791         * docs/random/mimetypes:
5792           Add documentation on libsndfile types (#163309), by Steve Baker
5793           <steve@stevebaker.org>.
5794         * gst/gstelement.c: (gst_element_release_request_pad):
5795           If an element has no explicit function, just remove the pad.
5796
5797 2005-01-17  Luca Ognibene  <luogni@tin.it>
5798
5799         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5800
5801         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
5802           Fix memleak (#163801).
5803
5804 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5805
5806         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
5807           I think this is actually more correct...
5808
5809 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5810
5811         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5812           Another workaround for memory access while destroyed in callback.
5813           Please, someone with refcount knowledge, have a look at this.
5814
5815 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5816
5817         * docs/faq/faq.xml:
5818         * docs/faq/legal.xml:
5819           move the legal Q&A here
5820
5821 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5822
5823         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
5824         (gst_tee_request_new_pad):
5825           Fix negotiation.
5826
5827 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5828
5829         * docs/random/omega/caps2:
5830         * testsuite/caps/caps_strings:
5831           replace framerate aproximations by their real value
5832           (24000/1001, 30000/1001, 60000/1001)
5833           Partially fixes bug #164049
5834
5835 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5836
5837         * docs/gst/Makefile.am:
5838           don't fail on the stupid GstPoptOption
5839
5840 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5841
5842         * gst/gstpad.h:
5843         * gst/gstprobe.c:
5844           allow probes to work on ghost pads by realizing the pad
5845           probe debugging
5846
5847 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5848
5849         * docs/gst/gstreamer-sections.txt:
5850         * docs/gst/tmpl/gstpad.sgml:
5851         * gst/gstpad.c: (gst_pad_set_active_recursive):
5852         * gst/gstpad.h:
5853           Add gst_pad_set_active_recursive().
5854
5855 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5856
5857         * docs/random/release:
5858           updates
5859         * gst/gst_private.h:
5860         * gst/gstinfo.c:
5861         * gst/gstobject.c:
5862           move deep_notify logging to a new category
5863         * gst/gstprobe.c:
5864         * gst/gstprobe.h:
5865           add stuff so bindings can wrap probes
5866
5867 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5868
5869         * gst/gstplugin.c: (gst_plugin_load):
5870           Fix plugin loading if plugin/lib was already loaded. Fixes
5871           #163383
5872
5873 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
5874
5875         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5876
5877         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
5878           Protect plugin loading by a mutex so it's threadsafe. Fixes
5879           #163234.
5880
5881 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5882
5883         * gst/gstevent.c: (_gst_event_copy):
5884           Reference source object when copying events, since it'll be
5885           dereferenced on event dereferencing as well.
5886
5887 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5888
5889         * docs/gst/gstreamer-sections.txt:
5890         * docs/gst/tmpl/gstevent.sgml:
5891         * gst/gstevent.c: (gst_event_new_filler_stamped),
5892         (gst_event_filler_get_duration):
5893         * gst/gstevent.h:
5894           Add two new functions for filler events (which are used to
5895           synchronize streams if one of them is not having any data
5896           for a while) without interrupting the actual data-stream.
5897           Basically a no-op.
5898         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5899         (gst_queue_link_sink), (gst_queue_link_src),
5900         (gst_queue_change_state):
5901           Allow for renegotiation while filled. Required for stream
5902           switching while playing.
5903
5904 2005-01-08  Benjamin Otte  <otte@gnome.org>
5905
5906         * gst/gstelement.c: (gst_element_link_many):
5907           fix up g_return_if_fail's
5908         * po/LINGUAS:
5909         * po/de.po:
5910           add German translation, that was somehow not included
5911
5912 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5913
5914         * docs/random/mimetypes:
5915           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
5916           do not add them to riff-lib as they are not common
5917
5918 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5919
5920         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5921           Check for existence of probe after performing the probe before
5922           re-accessing it to prevent segfaults caused by removal of the
5923           probe in the callback.
5924
5925 2005-01-05  David Schleef  <ds@schleef.org>
5926
5927         * testsuite/registry/Makefile.am:
5928         * testsuite/registry/gst-print-formats.c:
5929         (print_pad_templates_info), (print_element_list),
5930         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
5931         (g_list_uniqify), (get_pad_templates_info),
5932         (get_element_mime_list), (print_mime_list), (main): A little
5933         program that looks through the registry to find elements of
5934         a given type.  Not particularly interesting as a test, except
5935         that there's no other test covering the same area.
5936
5937 2005-01-05  David Schleef  <ds@schleef.org>
5938
5939         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
5940         (fault_handler_sigaction), (fault_spin),
5941         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
5942         in signal.h-type signal handlers by not calling forbidden functions,
5943         including gst_element_set_state().
5944
5945 2005-01-05  David Schleef  <ds@schleef.org>
5946
5947         * gst/gstvalue.h: Mark _gst_reserved[] as private
5948
5949 2005-01-05  David Schleef  <ds@schleef.org>
5950
5951         * gst/gstvalue.c: Fix doc build problem.
5952
5953 2005-01-05  David Schleef  <ds@schleef.org>
5954
5955         * gst/gstvalue.c: Add some documentation
5956
5957 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
5958
5959         * docs/README:
5960           another shell oneliner for empty return value docs
5961         * gst/gstcaps.c:
5962         * gst/gstvalue.c:
5963         * libs/gst/control/dparam.c:
5964           more doc fixes (parameters and return values)
5965
5966 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
5967
5968         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5969
5970         * gst/gstregistry.h:
5971         * gst/registries/gstxmlregistry.c:
5972           Fix macro's for Mingw (fixes #162276).
5973
5974 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
5975
5976         * docs/README:
5977           quick shell oneliner to find undocumented members
5978         * docs/gst/tmpl/gstplugin.sgml:
5979         * docs/gst/tmpl/gstscheduler.sgml:
5980         * docs/gst/tmpl/gstthread.sgml:
5981           more enumtypes cleanup
5982         * gst/gsterror.h:
5983           activated documentation comments, now someone needs to document
5984           the enums :(
5985
5986 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5987
5988         * docs/manual/manual.xml:
5989           Add dataaccess part (doh!).
5990
5991 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5992
5993         * docs/manual/advanced-autoplugging.xml:
5994           Fix typo (intiate -> initiate).
5995
5996 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5997
5998         * docs/random/bbb/streamselection:
5999           Add some notes on how to handle multi-subtitle/-audio streams.
6000
6001 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
6002
6003         * docs/gst/gstreamer-docs.sgml:
6004         * docs/gst/gstreamer-sections.txt:
6005         * docs/gst/tmpl/gstenumtypes.sgml:
6006         * docs/gst/tmpl/gsterror.sgml:
6007         * docs/gst/tmpl/gstevent.sgml:
6008         * docs/gst/tmpl/gstpad.sgml:
6009         * docs/gst/tmpl/gstpadtemplate.sgml:
6010         * docs/gst/tmpl/gstthread.sgml:
6011           removed gstenumtypes section from docs and put all the enums into
6012           their sections
6013
6014 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6015
6016         * gst/gstplugin.c:
6017           document gst_library_load a bit more (riff special case + return
6018           value if already loaded)
6019         * testsuite/bytestream/filepadsink.c:
6020           plugin name is 'gstbytestream', not 'bytestream'
6021
6022 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6023
6024         * docs/random/bbb/subtitles:
6025           Add some first mind rumblings on proper subtitle support.
6026
6027 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
6028
6029         * po/ca.po:
6030         * po/sv.po:
6031           updated translations
6032
6033 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6034
6035         * docs/manual/advanced-dataaccess.xml:
6036           Add section on how to use fakesrc/fakesink/identity in your
6037           application, plus section on how to embed plugins. Also mention
6038           probes.
6039         * docs/manual/appendix-checklist.xml:
6040         * docs/manual/appendix-debugging.xml:
6041         * docs/manual/appendix-gnome.xml:
6042         * docs/manual/appendix-integration.xml:
6043           Debug -> checklist, GNOME -> integration, add sections on Linux,
6044           KDE integration and add other things useful for application
6045           development.
6046         * docs/manual/manual.xml:
6047           Remove some fixmes, update some file pointers.
6048         * docs/pwg/appendix-checklist.xml:
6049           Fix typo.
6050         * docs/pwg/building-boiler.xml:
6051           Remove ugly header and add commented fixme.
6052         * docs/pwg/pwg.xml:
6053           Add fixme.
6054         * examples/manual/Makefile.am:
6055           Add example for added docs.
6056
6057 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
6058
6059         * configure.ac:
6060           back to HEAD
6061
6062 === release 0.8.8 ===
6063
6064 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
6065
6066         * NEWS:
6067         * RELEASE:
6068         * configure.ac:
6069           Releasing 0.8.8, "I'll Take Care Of You"
6070
6071 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
6072
6073         * configure.ac:
6074           second prerelease
6075
6076 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
6077
6078         patch by: Wim Taymans
6079
6080         * gst/gstbin.c:
6081           Fix for #159852 - make iterate emission threadsafe
6082
6083 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
6084
6085         * docs/faq/cvs.xml:
6086           notes about new fdo account request
6087
6088 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
6089
6090         * docs/gst/gstreamer-docs.sgml:
6091         * docs/gst/tmpl/gstenumtypes.sgml:
6092         * docs/gst/tmpl/gstplugin.sgml:
6093         * docs/libs/gstreamer-libs-docs.sgml:
6094           Added missing short docs. Added ids for navigation.
6095
6096 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6097
6098         * docs/manual/advanced-autoplugging.xml:
6099         * docs/manual/advanced-schedulers.xml:
6100         * docs/manual/advanced-threads.xml:
6101           Rewrites. Remove cothreads, go a bit into opt specifically,
6102           document threads and their gotchas, and do some technical stuff
6103           on autoplugging plus add some working examples. Fixes #157395.
6104         * examples/manual/Makefile.am:
6105           Add typefind/autoplugger example (one that actually works).
6106           Remove queue example since it's a duplicate of the thread one.
6107
6108 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6109
6110         * gst/gstvalue.c: (gst_value_deserialize_string):
6111           use deprecated g_value_set_string_take_ownership to keep compatible
6112           with glib 2.2
6113
6114 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6115
6116         * gst/gstvalue.c: (gst_value_deserialize_string):
6117           revert last patch, only dom a g_utf8_validate now before accepting
6118           the string - caps parsing strips " from strings so we can't rely on
6119           them
6120         * testsuite/caps/value_serialize.c: (test_string_deserialization):
6121           disable a test that tested the above and comment it
6122
6123 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
6124
6125         Patch reviewed by David Schleef  <ds@schleef.org>
6126
6127         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
6128         bug #153882)
6129         * win32/gstenumtypes.h: same
6130
6131 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6132
6133         * gst/gstpad.c: (gst_pad_query):
6134           Do query on realized pad, similar to how convert/send_event handle
6135           this. Also makes sense, since this pad belongs to the function to
6136           which this query will be sent. Fixes #158163.
6137
6138 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
6139
6140         * docs/manual/appendix-programs.xml: fix pipeline to actually work
6141
6142 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
6143
6144         * docs/faq/general.xml: fix pipeline to actually work
6145
6146 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6147
6148         * gst/gstvalue.c: (gst_value_deserialize_string):
6149           check that a simple string that gets deserialized does not contain
6150           invalid characters
6151         * testsuite/caps/value_serialize.c: (test_string_deserialization):
6152           remove a test that tested a wring behaviour
6153
6154 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
6155
6156         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6157
6158         * docs/manual/intro-motivation.xml:
6159           Fix typos.
6160
6161 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
6162
6163         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6164
6165         * docs/gst/tmpl/gstprobe.sgml:
6166           Fix documentation of probe callback - it is supposed to return
6167           FALSE, not TRUE, to remove data from the stream (#159087).
6168
6169 2004-12-16  Daniel Gazard  <dany42@free.fr>
6170
6171         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6172
6173         * gst/gstelementfactory.c: (gst_element_factory_create):
6174           Fix compile failure if compiling without libxml2 support (#149936).
6175
6176 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6177
6178         * docs/manual/advanced-autoplugging.xml:
6179         * docs/manual/highlevel-components.xml:
6180           Move spider from autoplugging to components. Autoplugging is for
6181           internals, not for solutions. ;-).
6182
6183 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6184
6185         * docs/random/ds/0.9-suggested-changes:
6186           Make note on device/location/uri property names.
6187
6188 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6189
6190         * docs/manual/advanced-autoplugging.xml:
6191         * docs/manual/advanced-clocks.xml:
6192         * docs/manual/advanced-interfaces.xml:
6193         * docs/manual/advanced-metadata.xml:
6194         * docs/manual/advanced-position.xml:
6195         * docs/manual/advanced-schedulers.xml:
6196         * docs/manual/advanced-threads.xml:
6197         * docs/manual/appendix-gnome.xml:
6198         * docs/manual/appendix-programs.xml:
6199         * docs/manual/appendix-quotes.xml:
6200         * docs/manual/autoplugging.xml:
6201         * docs/manual/basics-bins.xml:
6202         * docs/manual/basics-data.xml:
6203         * docs/manual/basics-elements.xml:
6204         * docs/manual/basics-helloworld.xml:
6205         * docs/manual/basics-init.xml:
6206         * docs/manual/basics-pads.xml:
6207         * docs/manual/basics-plugins.xml:
6208         * docs/manual/bins-api.xml:
6209         * docs/manual/bins.xml:
6210         * docs/manual/buffers-api.xml:
6211         * docs/manual/buffers.xml:
6212         * docs/manual/clocks.xml:
6213         * docs/manual/components.xml:
6214         * docs/manual/cothreads.xml:
6215         * docs/manual/debugging.xml:
6216         * docs/manual/dparams-app.xml:
6217         * docs/manual/dynamic.xml:
6218         * docs/manual/elements-api.xml:
6219         * docs/manual/elements.xml:
6220         * docs/manual/factories.xml:
6221         * docs/manual/gnome.xml:
6222         * docs/manual/goals.xml:
6223         * docs/manual/helloworld.xml:
6224         * docs/manual/helloworld2.xml:
6225         * docs/manual/highlevel-components.xml:
6226         * docs/manual/highlevel-xml.xml:
6227         * docs/manual/init-api.xml:
6228         * docs/manual/intro-basics.xml:
6229         * docs/manual/intro-motivation.xml:
6230         * docs/manual/intro-preface.xml:
6231         * docs/manual/intro.xml:
6232         * docs/manual/links-api.xml:
6233         * docs/manual/links.xml:
6234         * docs/manual/manual.xml:
6235         * docs/manual/motivation.xml:
6236         * docs/manual/pads-api.xml:
6237         * docs/manual/pads.xml:
6238         * docs/manual/plugins-api.xml:
6239         * docs/manual/plugins.xml:
6240         * docs/manual/programs.xml:
6241         * docs/manual/queues.xml:
6242         * docs/manual/quotes.xml:
6243         * docs/manual/schedulers.xml:
6244         * docs/manual/states-api.xml:
6245         * docs/manual/states.xml:
6246         * docs/manual/threads.xml:
6247         * docs/manual/typedetection.xml:
6248         * docs/manual/win32.xml:
6249         * docs/manual/xml.xml:
6250           Try 2. This time, include a short preface as a "general
6251           introduction", also add code blocks around all code samples
6252           so they get compiled. We still need a way to tell readers
6253           the filename of the code sample. In some cases, don't show
6254           all code in the documentation, but do include it in the generated
6255           code. This allows for focussing on specific bits in the docs,
6256           while still having a full test application available.
6257         * examples/manual/Makefile.am:
6258           Fix up examples for new ADM. Add several of the new examples that
6259           were either added or were missing from the build system.
6260         * examples/manual/extract.pl:
6261           Allow nameless blocks.
6262
6263 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6264
6265         * docs/manual/elements-api.xml:
6266         * docs/manual/helloworld.xml:
6267         * examples/manual/extract.pl:
6268           fix last example.  Add example of adding code blocks that are not
6269           shown in docbook output.
6270
6271 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6272
6273         * docs/manual/dynamic.xml:
6274         * docs/manual/elements-api.xml:
6275         * docs/manual/gnome.xml:
6276         * docs/manual/helloworld2.xml:
6277         * docs/manual/init-api.xml:
6278         * docs/manual/queues.xml:
6279         * docs/manual/threads.xml:
6280         * docs/manual/xml.xml:
6281         * examples/manual/extract.pl:
6282           Make it possible to extract example code from separate blocks.
6283           Should make Ronald happy.
6284
6285 2004-12-15  Wim Taymans  <wim@fluendo.com>
6286
6287         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6288         (remove_from_group), (group_elements_set_visited),
6289         (normalize_group), (gst_opt_scheduler_iterate):
6290         Fix bug where a flag was not updated on a decoupled entry point 
6291         because we were just checking the group element list and decoupled
6292         elements are not in that list..
6293
6294 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6295
6296         * docs/manual/advanced-autoplugging.xml:
6297         * docs/manual/advanced-clocks.xml:
6298         * docs/manual/advanced-dparams.xml:
6299         * docs/manual/advanced-interfaces.xml:
6300         * docs/manual/advanced-metadata.xml:
6301         * docs/manual/advanced-position.xml:
6302         * docs/manual/advanced-schedulers.xml:
6303         * docs/manual/advanced-threads.xml:
6304         * docs/manual/appendix-debugging.xml:
6305         * docs/manual/appendix-gnome.xml:
6306         * docs/manual/appendix-programs.xml:
6307         * docs/manual/appendix-quotes.xml:
6308         * docs/manual/appendix-win32.xml:
6309         * docs/manual/autoplugging.xml:
6310         * docs/manual/basics-bins.xml:
6311         * docs/manual/basics-data.xml:
6312         * docs/manual/basics-elements.xml:
6313         * docs/manual/basics-helloworld.xml:
6314         * docs/manual/basics-init.xml:
6315         * docs/manual/basics-pads.xml:
6316         * docs/manual/basics-plugins.xml:
6317         * docs/manual/bins-api.xml:
6318         * docs/manual/bins.xml:
6319         * docs/manual/buffers-api.xml:
6320         * docs/manual/buffers.xml:
6321         * docs/manual/clocks.xml:
6322         * docs/manual/components.xml:
6323         * docs/manual/cothreads.xml:
6324         * docs/manual/debugging.xml:
6325         * docs/manual/dparams-app.xml:
6326         * docs/manual/dynamic.xml:
6327         * docs/manual/elements-api.xml:
6328         * docs/manual/elements.xml:
6329         * docs/manual/factories.xml:
6330         * docs/manual/gnome.xml:
6331         * docs/manual/goals.xml:
6332         * docs/manual/helloworld.xml:
6333         * docs/manual/helloworld2.xml:
6334         * docs/manual/highlevel-components.xml:
6335         * docs/manual/highlevel-xml.xml:
6336         * docs/manual/init-api.xml:
6337         * docs/manual/intro-motivation.xml:
6338         * docs/manual/intro-preface.xml:
6339         * docs/manual/intro.xml:
6340         * docs/manual/links-api.xml:
6341         * docs/manual/links.xml:
6342         * docs/manual/manual.xml:
6343         * docs/manual/motivation.xml:
6344         * docs/manual/pads-api.xml:
6345         * docs/manual/pads.xml:
6346         * docs/manual/plugins-api.xml:
6347         * docs/manual/plugins.xml:
6348         * docs/manual/programs.xml:
6349         * docs/manual/queues.xml:
6350         * docs/manual/quotes.xml:
6351         * docs/manual/schedulers.xml:
6352         * docs/manual/states-api.xml:
6353         * docs/manual/states.xml:
6354         * docs/manual/threads.xml:
6355         * docs/manual/typedetection.xml:
6356         * docs/manual/win32.xml:
6357         * docs/manual/xml.xml:
6358           First try at rewriting the ADM. Needs lotsamore work, but some
6359           parts might already be somewhat useful.
6360         * docs/pwg/advanced-interfaces.xml:
6361           Remove properties interface, it never actually existed (except for
6362           on my HD...).
6363
6364 2004-12-13  David Schleef  <ds@schleef.org>
6365
6366         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
6367         be NULL (bug #160220).
6368
6369 2004-12-13  David Schleef  <ds@schleef.org>
6370
6371         * configure.ac: remove all mmx stuff, because it's not used.
6372         * docs/random/ds/0.9-suggested-changes: additional notes
6373         * include/Makefile.am: we don't use these anymore
6374         * include/mmx.h: remove
6375         * include/sse.h: remove
6376
6377 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6378
6379         * docs/random/mimetypes:
6380           Add FOURCC code for h264 codec (VSSH)
6381           Add alternate FOURCC codes for h263 related codecs
6382
6383 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
6384
6385         * docs/manual/programs.xml:
6386           Added more gst-launch examples.
6387
6388 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6389
6390         * gst/gstqueue.c: (gst_queue_handle_src_query):
6391           Check for availability again.
6392
6393 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6394
6395         * gst/gstcaps.c: (gst_caps_compare_structures):
6396           Simple caps go first. This has the nice side-effect of fixing an
6397           obscure warning.
6398
6399 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6400
6401         * gst/gstversion.h.in:
6402           Protect header.
6403
6404 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6405
6406         * gst/schedulers/gstoptimalscheduler.c:
6407         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
6408         (gst_opt_scheduler_get_wrapper):
6409           When we're recursing into a chain run, only run the directly
6410           related group, not all queued ones. This will fix a possible
6411           deadlock in chains with more than two groups.
6412
6413 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6414
6415         * autogen.sh:
6416           remove patch if autopoint fails
6417
6418 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6419
6420         * docs/gst/gstreamer-sections.txt:
6421           Document Thomas' addition, fix build, make Luis the sheriff happy.
6422
6423 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
6424
6425         * gst/gstplugin.c:
6426         * gst/gstplugin.h:
6427           add accessor for version field
6428
6429 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6430
6431         submitted by: Luca Ferretti <elle.uca@infinito.it>
6432
6433         * po/LINGUAS:
6434         * po/it.po:
6435           New tranlation added: Italian
6436
6437 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6438
6439         * gst/gstpad.c: (gst_pad_is_negotiated),
6440         (gst_pad_get_negotiated_caps):
6441           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
6442           it doesn't actually check the contents), so be sure to hand it
6443           a RealPad else we'll crash.
6444
6445 2004-12-03  Wim Taymans  <wim@fluendo.com>
6446
6447         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
6448         (gst_queue_link), (gst_queue_handle_src_query):
6449         Reverted to 1.110 until this makes the testsuite and various
6450         apps work.
6451
6452 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
6453
6454         * docs/upload.mak: fix included CVS conflict strings
6455
6456 2004-12-01  William Jon McCann  <mccann@jhu.edu>
6457
6458         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6459
6460         * gst/gstelement.c: (gst_element_error_full):
6461           Use g_error_new_literal because error text may have
6462           percentage signs in it. Fixes #160019.
6463
6464 2004-12-01  Benjamin Otte  <otte@gnome.org>
6465
6466         * gst/elements/gstbufferstore.c:
6467         (gst_buffer_store_add_buffer_func):
6468           don't try to make subbuffers bigger than they can be. (fixes
6469           #159970)
6470
6471 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6472
6473         * docs/gst/gstreamer-sections.txt:
6474         * docs/gst/tmpl/gstvalue.sgml:
6475           Add new function to docs to fix build.
6476
6477 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6478
6479         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
6480         * gst/gstpad.c: (_gst_pad_default_fixate_value),
6481         (_gst_pad_default_fixate_foreach):
6482         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
6483         * gst/gstvalue.h:
6484           Deprecate _type_is_fixed, use _value_is_fixed instead, since
6485           in some cases (arrays), the fixedness depends on the content.
6486         * gst/gstqueue.c: (gst_queue_handle_src_query):
6487           Check for availability before doing something.
6488
6489 2004-11-29  Wim Taymans  <wim@fluendo.com>
6490
6491         * testsuite/threads/Makefile.am:
6492         * testsuite/threads/signals.c: (gst_test_get_type),
6493         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
6494         (gst_test_set_property), (gst_test_get_property),
6495         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
6496         (gst_test_do_prop), (run_thread), (main):
6497         Added a bunch of testcases that show threadsafety bugs in glib.
6498
6499 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
6500
6501         * docs/manual/programs.xml:
6502           Added a first batch of gst-launch examples, as provided by Ronald
6503           and others from the devel-mlist
6504
6505 2004-11-28  Benjamin Otte  <otte@gnome.org>
6506
6507         * gst/gstelement.c: (gst_element_negotiate_pads):
6508           simplify
6509         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
6510         (gst_value_serialize_string), (gst_value_deserialize_string):
6511           add unwrapping of previously wrapped strings. Fix bug in wrapping
6512           while at it.
6513         * testsuite/caps/value_serialize.c: (test1),
6514         (test_string_serialization), (test_string_deserialization), (main):
6515           add tests for string (de)serialization
6516
6517 2004-11-26  Wim Taymans  <wim@fluendo.com>
6518
6519         * testsuite/threads/159566.c: (object_deep_notify), (main):
6520         * testsuite/threads/Makefile.am:
6521         Added testsuite to show bug #159566
6522
6523 2004-11-25  Wim Taymans  <wim@fluendo.com>
6524
6525         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
6526         (gst_thread_child_state_change), (gst_thread_main_loop):
6527         Ref the thread object in the GThread mainloop. Break out of the
6528         thread mainloop if it holds the last ref. This properly exits
6529         the threads when disposing the thread from its own context. It
6530         also avoids possible deadlocks in the dispose function.
6531
6532 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
6533
6534         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
6535         it is necessary to wait.
6536
6537 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6538
6539         * docs/pwg/building-boiler.xml:
6540           Make description somewhat clearer.
6541
6542 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6543
6544         * docs/upload.mak:
6545           Apparently docs changed location on FDO's server.
6546
6547 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6548
6549         * docs/pwg/appendix-checklist.xml:
6550           Add some random notes on things to check when writing an element.
6551           This list can be extended as people see fit.
6552
6553 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
6554
6555         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
6556         (gst_queue_link_src): Allow for renegotiating the caps of the sink
6557         pad. The queue will now wait until it is empty and forward the new
6558         caps to the source.
6559         * gst/gstbin.c (gst_bin_set_element_sched)
6560         (gst_bin_unset_element_sched): Make sure that all elements and
6561         links are registered and unregistered with the scheduler exactly
6562         once. This elaborates on a fix by Benjamin Otte, but
6563         guarantees that decoupled elements are also registered.
6564
6565 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
6566
6567         * docs/manual/quotes.xml:
6568           add a quote
6569         * configure.ac:
6570         * gst/gst.c:
6571         * gst/gstinfo.c:
6572           add LIBDIR and move init message higher up so it's at the start
6573
6574 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
6575
6576         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
6577         * gstreamer.spec.in: add fair
6578
6579 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6580
6581         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6582         * gst/elements/gstidentity.c: (gst_identity_class_init):
6583           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
6584           <teuf@gnome.org> (#157263).
6585         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
6586         (gst_type_find_handle_src_query):
6587           Subtract size of internally stored data from position queries.
6588
6589 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
6590
6591         * gst/schedulers/fairscheduler.c:
6592         * gst/schedulers/faircothreads.c:
6593         * gst/schedulers/faircothreads.h:
6594         New cothread based scheduler: Fair scheduler.
6595         * gst/schedulers/gthread-cothreads.h: 
6596         Add the standard #if around the whole file.
6597         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
6598         compilation of the functions defined in this file. This is
6599         necessary to be able to use this file as a normal header.
6600         * gst/schedulers/Makefile.am: Add compiling support for fair
6601         scheduler.
6602         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
6603         scheduler cothreads layer from documentation generation.
6604
6605 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6606
6607         * gst/autoplug/gstspideridentity.c:
6608         (gst_spider_identity_sink_loop_type_finding):
6609           Don't crash if that function is not implemented.
6610
6611 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6612
6613         * docs/pwg/advanced-types.xml:
6614           Another typo.
6615
6616 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6617
6618         * docs/pwg/intro-preface.xml:
6619           Hm, ok, so the brackets weren't really useful...
6620         * docs/pwg/other-ntoone.xml:
6621           Fix embarassing typo.
6622
6623 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6624
6625         * docs/pwg/intro-preface.xml:
6626           Rewrite preface.
6627
6628 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6629
6630         * docs/pwg/advanced-scheduling.xml:
6631         * docs/pwg/advanced-tagging.xml:
6632         * docs/pwg/advanced-types.xml:
6633         * docs/pwg/building-boiler.xml:
6634         * docs/pwg/building-chainfn.xml:
6635         * docs/pwg/building-signals.xml:
6636         * docs/pwg/building-state.xml:
6637         * docs/pwg/building-testapp.xml:
6638         * docs/pwg/intro-basics.xml:
6639         * docs/pwg/other-manager.xml:
6640         * docs/pwg/other-source.xml:
6641           Typo fixes.
6642         * docs/pwg/other-manager.xml:
6643           Add some first content. No example code yet.
6644         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
6645           Remove double newlines.
6646
6647 2004-11-04  Wim Taymans  <wim@fluendo.com>
6648
6649         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6650         (remove_from_group), (normalize_group), (group_migrate_connected),
6651         (gst_opt_scheduler_iterate):
6652         * testsuite/schedulers/.cvsignore:
6653         * testsuite/schedulers/Makefile.am:
6654         * testsuite/schedulers/queue_link.c: (main):
6655         Added testcase for scheduler segfault.
6656         Fix scheduler segfault when removing a decoupled
6657         entry point as the last element from a group.
6658
6659 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6660
6661         * gst/gstmarshal.list: add missing marshaller, fixes build
6662
6663 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6664
6665         * docs/random/signal: added notes about using BOXED for GstBuffer
6666         signal marshallers, not POINTER
6667
6668 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6669
6670         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6671         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
6672         POINTER=>BOXED changes to marshal GstBuffers
6673
6674 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6675
6676         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
6677         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
6678
6679 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
6680
6681         * docs/gst/gstreamer-sections.txt:
6682         * docs/gst/tmpl/gstcaps.sgml:
6683         * docs/gst/tmpl/gsterror.sgml:
6684         * docs/gst/tmpl/gstinfo.sgml:
6685         * docs/gst/tmpl/gstmacros.sgml:
6686         * docs/gst/tmpl/gstutils.sgml:
6687         * docs/random/ensonic/interfaces.txt:
6688         * gst/gstinfo.h:
6689           added some more docs, removed two obsolete defines
6690
6691 2004-11-02  Kjartan Maraas <as at gnome.org>
6692
6693         reviewed by: Wim Taymans, Ronald Bultje.
6694
6695         * gst/cothreads.c: (cothread_create):
6696         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
6697         (gst_bin_child_state_change_func):
6698         * gst/gstbuffer.c: (gst_buffer_span):
6699         * gst/gstelement.c: (gst_element_get_index),
6700         (gst_element_get_event_masks), (gst_element_get_query_types),
6701         (gst_element_get_formats):
6702         * gst/gsterror.c: (_gst_core_errors_init),
6703         (_gst_library_errors_init), (_gst_resource_errors_init),
6704         (_gst_stream_errors_init):
6705         * gst/gstobject.c: (gst_object_default_deep_notify):
6706         * gst/gstpad.c: (gst_pad_get_event_masks),
6707         (gst_pad_get_internal_links_default):
6708         * gst/gstplugin.c: (gst_plugin_register_func),
6709         (gst_plugin_get_module):
6710         * gst/gststructure.c: (gst_structure_get_string),
6711         (gst_structure_get_abbrs), (gst_structure_from_abbr),
6712         (gst_structure_to_abbr):
6713         * gst/gstutils.c: (gst_print_element_args):
6714         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6715         (setup_group_scheduler), (gst_opt_scheduler_iterate):
6716         Aplied part of patch #157127: Cleanup of issues reported by 
6717         sparse.
6718         Also do not try to use cothreads when there is no cothread
6719         context yet.
6720
6721 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
6722
6723         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6724         (gst_opt_scheduler_iterate):
6725         Applied patch #154061. Running a pipeline in which an element 
6726         calls GST_ELEMENT_ERROR in the chain function, the opt 
6727         scheduler doesn't unref the chain so it never gets freed.
6728
6729 2004-11-02  Wim Taymans  <wim@fluendo.com>
6730
6731         * gst/gststructure.c: (gst_structure_get_abbrs),
6732         (gst_structure_from_abbr), (gst_structure_to_abbr):
6733         Remove that ugly if-then thing in the code that converts
6734         between strings and types.
6735
6736 2004-11-02  Wim Taymans  <wim@fluendo.com>
6737
6738         * gst/gstscheduler.c: (gst_scheduler_add_element),
6739         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
6740         Aplied clock distribution patch, this should fix bug
6741         #148787.
6742
6743 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
6744
6745         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
6746
6747         * po/LINGUAS:
6748         * po/nb.po:
6749           Added Norwegian Bokmaal translation
6750
6751 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6752
6753         * tools/gst-inspect.c: (print_signal_info):
6754           print signal arguments as pointers if they are
6755
6756 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
6757
6758         * docs/pwg/building-boiler.xml:
6759           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
6760
6761 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6762
6763         * gst/parse/parse.l:
6764         * testsuite/parse/parse1.c: (main):
6765         Since parse can do 'element name=a:b' make 'a:b.' work as
6766         well. 
6767         Added testcase to verify fix.
6768
6769 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6770
6771         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
6772         Use the realpad when printing the direction.
6773         Add extra \n when printing extensions of typefind factories.
6774
6775 2004-10-13  David Schleef  <ds@schleef.org>
6776
6777         * examples/manual/Makefile.am: $< isn't portable in Makefile
6778         rules.
6779
6780 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
6781
6782         * docs/gst/tmpl/gstobject.sgml:
6783         * docs/gst/tmpl/gstplugin.sgml:
6784         * docs/gst/tmpl/gstpluginfeature.sgml:
6785         * docs/gst/tmpl/gstregistry.sgml:
6786         * docs/gst/tmpl/gstversion.sgml:
6787         * gst/gstbin.c:
6788           more api documentation
6789         * gst/gstplugin.c: (gst_plugin_register_func),
6790         (gst_plugin_check_file), (gst_plugin_load_file):
6791           better error signaling and logging
6792
6793 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6794
6795         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
6796           Subtract current queue contents from position queries.
6797
6798 2004-10-11  Johan Dahlin  <johan@gnome.org>
6799
6800         * gst/gsturi.c (gst_uri_get_location): unescape string
6801         (gst_uri_construct): escape string.
6802
6803 2004-10-11  Benjamin Otte  <otte@gnome.org>
6804
6805         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
6806         (gst_pad_try_set_caps_nonfixed):
6807           allow renegotiation of unconnected pads (as inside spider). Simply
6808           return OK if unconnected - mimic try_set_caps there.
6809
6810 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6811
6812         * gst/gstbin.c: (gst_bin_sync_children_state):
6813           Add missing break.
6814
6815 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6816
6817         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
6818         Set element to EOS before sending EOS event
6819
6820 2004-10-08  Wim Taymans  <wim at fluendo dot com>
6821
6822         * gst/elements/gsttypefindelement.c:
6823         (gst_type_find_element_handle_event):
6824         Handle EOS events when doing the transition from
6825         typefind to data passing. This should fix the
6826         infinite loops in short files.
6827
6828 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6829
6830         * gst/gstthread.c: (gst_thread_change_state),
6831         (gst_thread_child_state_change):
6832         Make sure no iteration happens while performing
6833         the state change as it could mess up the internal
6834         consistency of the thread state.
6835
6836 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6837
6838         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
6839         (gst_thread_change_state), (gst_thread_child_state_change):
6840         Do not try to grab the iterate lock in the state change method
6841         when we are in the same thread as the iterate or else we
6842         could deadlock. Some other cleanups.
6843
6844 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6845
6846         * configure.ac:
6847           bump nano to cvs
6848
6849 === release 0.8.7 ===
6850
6851 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6852
6853         * configure.ac:
6854         * NEWS:
6855         * RELEASE:
6856         * configure.ac:
6857           releasing 0.8.7, "A Cruise"
6858
6859 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6860
6861         * docs/random/mimetypes:
6862         Add an entry for Sony ATRAC3 audio format with mime-type
6863         used by rmdemux et riff-read
6864
6865 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6866
6867         * gst/elements/gsttypefindelement.c: (stop_typefinding):
6868         Push the buffer store instead of clearing it in case that
6869         the stream is not seekable.
6870
6871 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6872
6873         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
6874         (gst_thread_main_loop):
6875         Lock the iteration and the state change so that automatic
6876         negotiation and fixation does not happen at the same time
6877         as the in stream negotiation.
6878
6879 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6880
6881         * configure.ac:
6882           bump nano to cvs
6883
6884 === release 0.8.6 ===
6885
6886 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6887
6888         * configure.ac:
6889         * NEWS:
6890         * RELEASE:
6891         * configure.ac:
6892           releasing 0.8.6, "Narc"
6893
6894 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6895
6896         * configure.ac:
6897           prerel bump
6898
6899 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6900
6901         patch by: Steve Lhomme
6902
6903         * gst/elements/gstfakesrc.c:
6904         * gst/elements/gstidentity.c:
6905         * gst/gstthread.c:
6906           Fix for #153881
6907
6908 2004-10-01  Wim Taymans  <wim at fluendo dot com>
6909
6910         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
6911         Fix threadsafety of the crc checking function.
6912
6913 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6914
6915         patch by: Ronald Bultje
6916
6917         * gst/elements/gsttypefindelement.c: (stop_typefinding),
6918         (gst_type_find_element_handle_event),
6919         (gst_type_find_element_chain):
6920         * gst/elements/gsttypefindelement.h:
6921          #153657.
6922          Filter out discont event from seekable sources when typefind
6923          asks them to seek.  Fixes typefind with demuxers for
6924          avi, asf and matroska.
6925
6926 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6927
6928         * docs/gst/gstreamer-sections.txt:
6929         * gst/gstcaps.c:
6930         * gst/gstcaps.h:
6931         * gst/gstpad.c:
6932           Revert preferred caps: (#147789)
6933
6934 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
6935
6936         * win32/dirent.c:
6937           fix a memory leak
6938
6939 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6940
6941         * configure.ac:
6942           bump for prerelease
6943
6944 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6945
6946         * docs/Makefile.am:
6947         * docs/manual/elements-api.xml:
6948           restructure so that common stuff is shown first
6949         * docs/manual/init-api.xml:
6950           convert to examples
6951         * docs/manual/manual.xml:
6952         * docs/manuals.mak:
6953         * docs/url.entities:
6954           link to API on the website, possibly override later in build
6955         * examples/manual/.cvsignore:
6956           ignore more
6957         * examples/manual/Makefile.am:
6958           add more examples
6959         * examples/manual/extract.pl:
6960           error out on failure
6961
6962 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6963
6964         * docs/gst/tmpl/gstthread.sgml:
6965         * docs/manual/init-api.xml:
6966         * examples/manual/Makefile.am:
6967           convert two code bits to examples
6968
6969 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6970
6971         * gst/gstelement.c: (gst_element_change_state):
6972           Well, actually, I was about to remove this insane assert when
6973           I noticed Wim already did that. A warning is nice so we can
6974           fix actual ugs (using --g-fatal-warnings and backtraces), so
6975           I added that instead.
6976
6977 2004-09-06  Wim Taymans  <wim@fluendo.com>
6978
6979         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
6980         (gst_element_threadsafe_properties_post_run),
6981         (gst_element_set_state), (gst_element_change_state):
6982         Added extra refcounting around various places. 
6983
6984 2004-09-06  Wim Taymans  <wim@fluendo.com>
6985
6986         * gst/gstpad.c: (gst_pad_link_call_link_functions):
6987         Fix debug info.
6988
6989 2004-09-06  Wim Taymans  <wim@fluendo.com>
6990
6991         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6992         (remove_from_group):
6993         Some more debug info.
6994
6995 2004-09-03  Wim Taymans  <wim@fluendo.com>
6996
6997         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
6998         (gst_fakesrc_init), (gst_fakesrc_set_clock),
6999         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
7000         (gst_fakesrc_get), (gst_fakesrc_change_state):
7001         * gst/elements/gstfakesrc.h:
7002         * gst/elements/gstidentity.c: (gst_identity_class_init),
7003         (gst_identity_init), (gst_identity_chain),
7004         (gst_identity_set_property), (gst_identity_get_property),
7005         (gst_identity_change_state):
7006         * gst/elements/gstidentity.h:
7007         Added datarate properties to limit the datarate.
7008
7009 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7010
7011         * gst/autoplug/gstspider.c: (plugin_init):
7012           don't set a rank. We don't want to autoplug by inserting spiders.
7013
7014 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7015
7016         * gst/autoplug/gstspider.c: (gst_spider_class_init),
7017         (gst_spider_identity_plug):
7018           add a template for spider's sink
7019         * gst/gst.c: (gst_register_core_elements):
7020           queue's rank should be NULL, we don't want spider to add it.
7021
7022 2004-08-18  David Schleef  <ds@schleef.org>
7023
7024         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
7025         * docs/libs/Makefile.am: same
7026         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
7027         * docs/random/ds/0.9-planning: random additions
7028         * docs/random/ds/0.9-suggested-changes: same
7029         * gst/gstxml.h: remove vestigal GstXMLNs definition
7030
7031         Preferred caps: (#147789)
7032         * docs/gst/gstreamer-sections.txt: Add symbols
7033         * docs/gst/tmpl/gstcaps.sgml: Add symbols
7034         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
7035         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
7036         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
7037         (gst_caps_get_preferred), (gst_caps_set_preferred),
7038         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
7039         (gst_caps_use_preferred): Handle caps preferences
7040         * gst/gstcaps.h: Add caps preferences
7041         * gst/gstpad.c: (gst_pad_link_get_preferred),
7042         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
7043         (gst_pad_renegotiate), (gst_pad_guess_preferred),
7044         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
7045         negotiation.
7046
7047 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7048
7049         * gst/autoplug/gstspideridentity.c:
7050         (gst_spider_identity_request_new_pad):
7051         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
7052         (gst_aggregator_init):
7053         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
7054         (gst_fakesink_init):
7055         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
7056         (gst_fakesrc_init):
7057         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
7058         (gst_fdsink_init):
7059         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
7060         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
7061         (gst_filesink_init):
7062         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
7063         (gst_filesrc_init):
7064         * gst/elements/gstidentity.c: (gst_identity_base_init),
7065         (gst_identity_init):
7066         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
7067         (gst_multifilesrc_init):
7068         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
7069         (gst_pipefilter_init):
7070         * gst/elements/gststatistics.c: (gst_statistics_base_init),
7071         (gst_statistics_init):
7072         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
7073         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
7074           s/gst_pad_new/&_from_template/
7075           register pad templates in the base_init function
7076           add static pad template definitions
7077
7078 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7079
7080         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
7081         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
7082         * testsuite/refcounting/pad.c: (main):
7083         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
7084           s/gst_pad_new/&_from_template/
7085           prepare deprecation of gst_pad_new
7086
7087 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
7088
7089         patch by: Luca Ognibene <skaboy81@virgilio.it>
7090
7091         * gst/gstcaps.c:
7092         * gst/gstelement.c:
7093         * gst/gstpad.c:
7094         * gst/gstxml.c:
7095           fix memleaks.  Fixes #150001
7096
7097 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7098
7099         * docs/random/ds/0.9-suggested-changes:
7100           add notes - mostly about pad templates
7101
7102 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
7103
7104         * win32/GStreamer.vcproj:
7105           temporary locale files are .gmo not .mo
7106
7107 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7108
7109         * configure.ac: bump nano to cvs
7110
7111 === release 0.8.5 ===
7112
7113 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7114
7115         * configure.ac:
7116           releasing 0.8.5, "Stuttgart"
7117         * NEWS:
7118         * RELEASE:
7119         * configure.ac:
7120         * docs/random/release:
7121           updates for release
7122
7123 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7124
7125         patch by: Wim Taymans (wim@fluendo.com)
7126
7127         * gst/gstbuffer.c:
7128         * gst/gstindex.h:
7129         * libs/gst/dataprotocol/dataprotocol.c:
7130           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
7131
7132 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7133
7134         * Makefile.am:
7135         * win32/MANIFEST:
7136           add win32 dir to the build.  Fixes #149981.
7137
7138 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7139
7140         * configure.ac:
7141           bump libtool versioning
7142         * gst/gststructure.c:
7143           mark function as static
7144         * po/af.po:
7145         * po/az.po:
7146         * po/ca.po:
7147         * po/cs.po:
7148         * po/en_GB.po:
7149         * po/fr.po:
7150         * po/nl.po:
7151         * po/sq.po:
7152         * po/sr.po:
7153         * po/sv.po:
7154         * po/tr.po:
7155         * po/uk.po:
7156           translations update
7157         * win32/README.txt:
7158           trademark protection
7159
7160 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7161
7162         * configure.ac:
7163           fix GST_ORIGIN
7164           set GST_PACKAGE to source, and distinguish between release and other
7165         * tools/gst-inspect.c:
7166           print out plugin an element factory is part of so we see this info
7167
7168 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7169
7170         * docs/gst/gstreamer-sections.txt:
7171         * docs/gst/tmpl/gstbuffer.sgml:
7172         * docs/gst/tmpl/gstschedulerfactory.sgml:
7173           reorder docs a little, make GstBuffer's more sensible.
7174         * gst/gstbuffer.h:
7175           API: added GST_BUFFER_FLAG_DELTA_UNIT
7176         * gst/gstscheduler.c:
7177           comment API addition
7178
7179 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7180
7181         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
7182           work with non-regular files that can be mmapped (like /dev/zero)
7183         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
7184           get rid of typefinds that require a seek when we can't seek instead
7185           of trying them over and over again
7186         * tools/gst-launch.c: (idle_func), (error_cb), (main):
7187           return non-zero failure value when the pipeline was interrupted or
7188           an error occurred
7189
7190 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
7191
7192         * win32/config.h:
7193         * win32/GStreamer.vcproj:
7194           compile and install the locales
7195
7196 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
7197
7198         * gst/gstvalue.c:
7199           fix a possible memory leak under Windows
7200
7201 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
7202
7203         * win32/GStreamer.vcproj:
7204           fix a memory leak that occured under Windows
7205         * win32/gstreamer.def:
7206           add gst_scheduler_register
7207
7208 2004-08-11  Benjamin Otte  <otte@gnome.org>
7209
7210         * docs/gst/gstreamer-sections.txt:
7211         * gst/gstscheduler.c: (gst_scheduler_register):
7212         * gst/gstscheduler.h:
7213           API:
7214           add gst_scheduler_register shortcut similar to gst_element_register
7215         * gst/schedulers/entryscheduler.c: (plugin_init):
7216         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
7217         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
7218           use it
7219
7220 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
7221
7222         * gst/gstvalue.h:
7223           fix a memory leak that occured under Windows
7224
7225 2004-08-10  Colin Walters  <walters@redhat.com>
7226
7227         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
7228         Don't use O_EXCL to open temporary registry.  It will prevent
7229         registry creation if a temporary one already exists, which
7230         is unnecessary.
7231
7232 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7233
7234         * docs/gst/gstreamer-sections.txt:
7235         * docs/gst/tmpl/gstvalue.sgml:
7236           remove some valuable stuff from the documentation due to the use of GST_EXPORT
7237
7238 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7239
7240         * win32/gstbytestream.vcproj:
7241         * win32/gstelements.vcproj:
7242         * win32/gstgetbits.vcproj:
7243         * win32/gst-inspect.vcproj:
7244         * win32/gst-launch.vcproj:
7245         * win32/gstoptimalscheduler.vcproj:
7246         * win32/GStreamer.vcproj:
7247         * win32/gst-register.vcproj:
7248         * win32/gstspider.vcproj:
7249           update the include and lib dirs to fit standard libraries as
7250           described in the Win32 manual
7251
7252 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7253
7254         * win32/config.h:
7255         * win32/gstversion.h:
7256           enable NLS again, push the version number for the coming 0.8.5 release
7257
7258 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7259
7260         * gst/gstvalue.h:
7261           export gst_type_XXX for windows DLLs
7262
7263 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7264
7265         * docs/faq/gst-uninstalled:
7266           fix PKG_CONFIG_PATH and PYTHONPATH
7267         * gst/schedulers/Makefile.am:
7268           cleanup
7269         * libs/gst/bytestream/bytestream.c:
7270           remove newline
7271         * po/LINGUAS:
7272         * po/sq.po:
7273           adding Albanian translation (Laurent Dhima)
7274         * po/cs.po:
7275           updated
7276
7277 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7278
7279         * po/ca.po:
7280         * po/sv.po:
7281           updated translations
7282
7283 2004-08-04  Benjamin Otte  <otte@gnome.org>
7284
7285         * tests/mass_elements.c: (main):
7286           allow specifying src and sink element explicitly, so I can test
7287           videotestsrc instead of fakesrc
7288
7289 2004-08-04  Benjamin Otte  <otte@gnome.org>
7290
7291         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
7292         (gst_structure_id_empty_new), (gst_structure_empty_new),
7293         (gst_structure_copy):
7294           add gst_structure_id_empty_new_with_size to allow preallocating
7295           value array sizes. Use this in gst_structure_copy to get rid of
7296           reallocs.
7297           don't do quark=>string=>quark when copying structures
7298
7299 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
7300
7301         * docs/manual/win32.xml:
7302         * win32/README.txt:
7303           update documentation with the clean version of dependencies
7304
7305 2004-08-03  Benjamin Otte  <otte@gnome.org>
7306
7307         * gst/schedulers/entryscheduler.c:
7308         (gst_entry_scheduler_remove_element):
7309           fix for GST_DISABLE_DEBUG
7310         * tools/gst-launch.c: (print_tag):
7311           fixes for G_DISABLE_ASSERT
7312
7313 2004-08-03  Benjamin Otte  <otte@gnome.org>
7314
7315         * gst/gst.c: (gst_register_core_elements):
7316           fix for G_DISABLE_ASSERT
7317         * gst/gstinfo.c: (__gst_in_valgrind):
7318           add for GST_DISABLE_DEBUG
7319
7320 2004-08-03  Benjamin Otte  <otte@gnome.org>
7321
7322         * gst/parse/parse.l:
7323           fix for G_DISABLE_ASSERT
7324
7325 2004-08-03  Wim Taymans  <wim@fluendo.com>
7326
7327         * gst/gstbin.c: (gst_bin_get_type),
7328         (gst_bin_child_state_change_func):
7329         * gst/gstthread.c: (gst_thread_change_state):
7330         Backported some debug logging from a reverted patch
7331         Don't try to destroy the thread twice. Added some more
7332         debugging in GstThread. Unlock and signal even if we
7333         are in the thread context.
7334
7335 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7336
7337         * po/uk.po:
7338           updated translation
7339
7340 2004-07-30  David Schleef  <ds@schleef.org>
7341
7342         * gst/gstatomic_impl.h: Enable atomic code for x86_64
7343
7344 2004-07-29  David Schleef  <ds@schleef.org>
7345
7346         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
7347         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
7348
7349 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
7350
7351         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7352         (gst_bin_add_func), (gst_bin_remove_func),
7353         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
7354         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
7355         (gst_bin_change_state_norecurse), (gst_bin_dispose),
7356         (gst_bin_sync_children_state):
7357         * gst/gstbin.h:
7358         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
7359         (gst_thread_change_state):
7360         * testsuite/states/Makefile.am:
7361           revert state change patches as agreed so we can rework them
7362           gradually
7363
7364 2004-07-29  Benjamin Otte  <otte@gnome.org>
7365
7366         * libs/gst/control/Makefile.am:
7367           link to libgstreamer (fixes Debian bug 262019, see
7368           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
7369
7370 2004-07-29  Wim Taymans  <wim@fluendo.com>
7371
7372         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
7373         (check_from_fraction_convert), (transform_test), (main):
7374         Make the test less pedantic about float roundoff errors.
7375
7376 2004-07-29  Benjamin Otte  <otte@gnome.org>
7377
7378         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
7379         (gst_filesrc_srcpad_event):
7380           make seek events to before start/after end of file not fail, but
7381           seek to start/end instead
7382         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
7383           add more output
7384
7385 2004-07-29  Benjamin Otte  <otte@gnome.org>
7386
7387         * gst/gstpad.c: (gst_pad_set_explicit_caps):
7388           check that caps are fixed
7389         * gst/gstpad.c: (gst_pad_template_new):
7390           don't try to simplify caps, costs too much time on gst_init
7391         * gst/gstplugin.c: (gst_plugin_add_feature):
7392           G_ERROR if features are added twice
7393         * gst/gsttypefind.c: (gst_type_find_register):
7394         * gst/gstelementfactory.c: (gst_element_register):
7395           don't add features twice
7396         * docs/random/ds/0.9-suggested-changes:
7397           add note about possible gst_init optimization
7398
7399 2004-07-28  David Schleef  <ds@schleef.org>
7400
7401         * testsuite/elements/Makefile.am:
7402         * testsuite/elements/struct_i386.h:
7403         * testsuite/elements/struct_size.c: (main):  A little test
7404         to keep distcheck from working if someone changes a structure
7405         size accidentally.
7406
7407 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7408
7409         * docs/libs/Makefile.am:
7410         * docs/libs/gstreamer-libs-docs.sgml:
7411         * docs/libs/gstreamer-libs-sections.txt:
7412         * docs/libs/tmpl/gstbytestream.sgml:
7413         * docs/libs/tmpl/gstcontrol.sgml:
7414         * docs/libs/tmpl/gstdataprotocol.sgml:
7415         * docs/libs/tmpl/gstgetbits.sgml:
7416         * libs/gst/bytestream/Makefile.am:
7417         * libs/gst/bytestream/bytestream.c:
7418         * libs/gst/bytestream/bytestream.h:
7419         * libs/gst/control/Makefile.am:
7420         * libs/gst/dataprotocol/Makefile.am:
7421         * libs/gst/getbits/Makefile.am:
7422         * libs/gst/getbits/getbits.h:
7423           various doc and style fixes, adding bytestream to libs docs.
7424
7425 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7426
7427         * docs/gst/gstreamer-docs.sgml:
7428         * docs/libs/Makefile.am:
7429         * docs/libs/gstreamer-libs-docs.sgml:
7430         * docs/libs/gstreamer-libs-sections.txt:
7431         * libs/gst/control/dparam.c:
7432           more doc fixes.  gst-libs docs now build the same way as gst.
7433
7434 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7435
7436         * configure.ac:
7437         * testsuite/Makefile.am:
7438         * testsuite/bins/Makefile.am:
7439         * testsuite/caps/Makefile.am:
7440         * testsuite/cleanup/Makefile.am:
7441         * testsuite/clock/Makefile.am:
7442         * testsuite/debug/Makefile.am:
7443         * testsuite/dlopen/Makefile.am:
7444         * testsuite/dynparams/Makefile.am:
7445         * testsuite/elements/.cvsignore:
7446         * testsuite/elements/Makefile.am:
7447         * testsuite/enumcaps/Makefile.am:
7448         * testsuite/enumcaps/enumcaps.c:
7449         * testsuite/ghostpads/Makefile.am:
7450         * testsuite/indexers/Makefile.am:
7451         * testsuite/negotiation/Makefile.am:
7452         * testsuite/parse/Makefile.am:
7453         * testsuite/plugin/Makefile.am:
7454         * testsuite/refcounting/Makefile.am:
7455         * testsuite/schedulers/.cvsignore:
7456         * testsuite/states/Makefile.am:
7457         * testsuite/tags/Makefile.am:
7458         * testsuite/threads/Makefile.am:
7459           fold enumcaps into caps dir
7460           clean up Makefile.am's for testsuite
7461
7462 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7463
7464         * docs/gst/Makefile.am:
7465         * docs/libs/Makefile.am:
7466           clean up docs build.  Fixes needless rebuilding of template files.
7467
7468 2004-07-28  Wim Taymans  <wim@fluendo.com>
7469
7470         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
7471         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
7472         Make sure that a bin state change tries to keep the children
7473         in sync. 
7474         Added debug logging to the thread.
7475
7476 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
7477
7478         * win32/GStreamer.vcproj:
7479         * win32/gstreamer.def:
7480           more exports for the plugins
7481
7482 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
7483
7484         * win32/gstgetbits.vcproj:
7485         * win32/gstgetbits.def:
7486         * win32/msvc71.sln:
7487           add support for the getbits plugin
7488
7489 2004-07-27  Wim Taymans  <wim@fluendo.com>
7490
7491         * gst/gstvalue.c: (gst_value_transform_double_fraction),
7492         (gst_value_transform_fraction_double), (_gst_value_initialize):
7493         * testsuite/caps/Makefile.am:
7494         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
7495         (check_from_fraction_convert), (transform_test), (main):
7496         Added transform functions between double and fraction.
7497         Added testcase to verify transforms
7498
7499 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7500
7501         * win32/GStreamer.vcproj:
7502           rename GStreamer-0.8.lib to libgstreamer.lib
7503
7504 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7505
7506         * win32/gstelements.vcproj:
7507         * win32/gstoptimalscheduler.vcproj:
7508           fixes for the Release build
7509
7510 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7511
7512         * win32/config.h:
7513           update the version number
7514
7515 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7516
7517         * win32/GStreamer.vcproj:
7518           add gstinterface to the build
7519
7520 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7521
7522         * win32/gstreamer.def:
7523           add many definitions needed by plugins,
7524           GST_CAT_DEFAULT only available in the Debug build ?
7525
7526 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7527
7528         * gst/gstelement.c: (gst_element_set_eos_recursive):
7529           various whitespace fixes.
7530           doc fix, fixes #148497
7531
7532 2004-07-25  Benjamin Otte  <otte@gnome.org>
7533
7534         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
7535           don't delay links on the sink elements, it causes unnegotiated
7536           links.
7537         * gst/elements/gsttypefindelement.c:
7538         (gst_type_find_element_base_init):
7539           add our padtemplates, we indeed do have some.
7540         * gst/elements/gsttypefindelement.c:
7541         (gst_type_find_element_handle_event),
7542         (gst_type_find_element_chain):
7543           don't push data when typefinding failed.
7544         * gst/gstpad.c: (gst_pad_link_fixate):
7545           check that no fixate function returns empty caps.
7546         * gst/gstpad.c: (gst_pad_push):
7547           check that the link is negotiated before data gets pushed.
7548         * tools/gst-register.c: (main):
7549           don't assert (fixes #148283)
7550
7551 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7552
7553         * docs/gst/gstreamer-sections.txt:
7554         * docs/gst/tmpl/gstconfig.sgml:
7555           add GST_PLUGIN_EXPORT definition
7556
7557 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7558
7559         * gst/gstplugin.h:
7560         * gst/gstconfig.h.in:
7561         * win32/gstconfig.h:
7562         * win32/gstelements.def:
7563         * win32/gstelements.vcproj:
7564         * win32/gstoptimalscheduler.def:
7565         * win32/gstoptimalscheduler.vcproj:
7566         * win32/gstspider.def:
7567         * win32/gstspider.vcproj:
7568           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
7569
7570 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7571
7572         * docs/gst/gstreamer-sections.txt:
7573           remove GST_CAT_DEFAULT because the type has changed
7574
7575 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7576
7577         * win32/gstbytestream.vcproj:
7578         * win32/gstelements.vcproj:
7579         * win32/gst-inspect.vcproj:
7580         * win32/gst-launch.vcproj:
7581         * win32/gstoptimalscheduler.vcproj:
7582         * win32/GStreamer.vcproj:
7583         * win32/gst-register.vcproj:
7584         * win32/gstspider.vcproj:
7585         * win32/msvc71.sln:
7586           Copy the files where needed after building, The testsuite will be
7587           built separately
7588
7589 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7590
7591         * win32/config.h:
7592         * win32/README.txt:
7593         * docs/manual/win32.xml:
7594         Fixed the plugin and GStreamer location
7595
7596 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7597
7598         * win32/gstreamer.def:
7599         More exports for the plugins
7600
7601 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7602
7603         * gst/gstinfo.h:
7604         Marc was right, we need to export literally GST_CAT_DEFAULT
7605
7606 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7607
7608         * win32/config.h:
7609         NLS crashes in gettext, disabled until this is solved
7610
7611 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7612
7613         * win32/gst-inspect.vcproj:
7614         * win32/gst-launch.vcproj:
7615         Should use NLS when available
7616
7617 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7618
7619         * gst/registries/gstxmlregistry.c:
7620         removing the file doesn't seem to be a good idea on Linux
7621
7622 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7623
7624         * gst/registries/gstxmlregistry.c:
7625         Remove the registry before renaming the tempfile (needed for Windows)
7626
7627 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7628
7629         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
7630         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
7631         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
7632         * gst/elements/gstmultifilesrc.h:
7633         Added newmedia property so it generates newmedia events between each
7634         file when property is set, as well as fixed eos handling
7635
7636 2004-07-22  David Schleef  <ds@schleef.org>
7637
7638         * gst/gststructure.c: (gst_structure_id_empty_new),
7639         (gst_structure_empty_new):  Set type field correctly.
7640         * gst/gststructure.h: Check type field correctly.
7641         * testsuite/caps/Makefile.am:
7642         * testsuite/caps/structure.c: (test1), (main): Add a very small
7643         test for structures.
7644
7645 2004-07-22  David Schleef  <ds@schleef.org>
7646
7647         * docs/random/ds/0.9-suggested-changes: more comments
7648         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
7649
7650 2004-07-22  Benjamin Otte  <otte@gnome.org>
7651
7652         * gst/gstelementfactory.c: (gst_element_register):
7653           set the factory in the class struct, so gst_element_get_factory
7654           actually works
7655         * gst/parse/grammar.y:
7656           set element to playing when it gets unlocked as we can't rely on the
7657           bin state - all elements in the bin state might still be locked in
7658           NULL)
7659
7660 2004-07-22  Benjamin Otte  <otte@gnome.org>
7661
7662         * gst/gstelement.c: (gst_element_set_state_func):
7663           make this a static function
7664
7665 2004-07-22  Wim Taymans  <wim@fluendo.com>
7666
7667         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
7668         (gst_opt_scheduler_pad_link):
7669         fix 147894-2 and the group_link problem.
7670
7671 2004-07-22  Wim Taymans  <wim@fluendo.com>
7672
7673         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7674         (handoff_identity), (main):
7675         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7676         (handoff_identity), (main):
7677         * testsuite/schedulers/Makefile.am:
7678         * testsuite/schedulers/group_link.c: (main):
7679         Show bug in scheduler when linking chain and loop based element 
7680         where the chain based element was not yet in a group.
7681
7682 2004-07-21  Benjamin Otte  <otte@gnome.org>
7683
7684         * gst/.cvsignore:
7685         * gst/autoplug/.cvsignore:
7686         * gst/elements/.cvsignore:
7687         * gst/indexers/.cvsignore:
7688         * libs/gst/bytestream/.cvsignore:
7689         * libs/gst/control/.cvsignore:
7690         * libs/gst/getbits/.cvsignore:
7691         * testsuite/states/.cvsignore:
7692         * testsuite/threads/.cvsignore:
7693           keep this up to date, since I seem to be the only one who cares
7694           about not missing files on commits (editor's note: no you don't,
7695           but feel free to change them at the time you add stuff instead
7696           of later on)
7697
7698 2004-07-21  Benjamin Otte  <otte@gnome.org>
7699
7700         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7701         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
7702         (gst_bin_child_state_change_func), (set_kid_state_func),
7703         (gst_bin_set_state), (gst_bin_change_state_norecurse):
7704           make state changes work correctly and reentrant (so removing
7705           elements from bins during state changes of bins doesn't cause
7706           segfaults or even wrong states)
7707           add debugging category and debugging output to print children states
7708         * gst/gstbin.c: (gst_bin_dispose): 
7709           add some assertion checks
7710         * gst/gstbin.h:
7711         * gst/gstbin.c: (gst_bin_sync_children_state):
7712           deprecate this function - it just does gst_bin_set_state (bin,
7713           GST_STATE (bin)) 
7714         * testsuite/threads/queue.c: (main):
7715           don't use gst_bin_sync_children_state anymore
7716         * testsuite/states/Makefile.am:
7717         * testsuite/states/bin.c:
7718           test that the state changes of bins work as expected
7719         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
7720           some adjustments to change states correctly, too
7721         * gst/gstthread.c: (gst_thread_change_state):
7722           don't enable/disable "threadsafe" properties, they're unused and
7723           cause random segfaults
7724         * testsuite/threads/Makefile.am:
7725           the queue check randomly passes now, ignore it
7726
7727 2004-07-21  Benjamin Otte  <otte@gnome.org>
7728
7729         * gst/gstpad.c:
7730           check if data is NULL before outputting debug info. (fixes #145100)
7731
7732 2004-07-21  Benjamin Otte  <otte@gnome.org>
7733
7734         * gst/schedulers/entryscheduler.c:
7735         (gst_entry_scheduler_loop_wrapper),
7736         (gst_entry_scheduler_chain_wrapper),
7737         (gst_entry_scheduler_get_wrapper):
7738           reset the state when the cothread starts, so we don't get assertion
7739           failures on restarting of cothreads
7740
7741 2004-07-20  Benjamin Otte  <otte@gnome.org>
7742
7743         * gst/gstelement.c: (gst_element_link_pads_filtered):
7744           use correct sinkpad, if only sinkpad is specified, but not srcpad
7745           (fixes #147889)
7746         * gst/gstelement.c: (gst_element_set_state_func),
7747         (gst_element_change_state): ref/unref the element, signal handlers
7748         could get rid of the element otherwise
7749
7750 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7751
7752         * docs/random/ds/0.9-suggested-changes:
7753           Make note about renaming fixed-list to array.
7754         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
7755         (_gst_value_initialize):
7756           Add array intersections.
7757         * testsuite/caps/intersect2.c: (main):
7758           Add test for array intersections.
7759
7760 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7761
7762         * configure.ac: back to cvs
7763
7764 === release 0.8.4 ===
7765
7766 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7767
7768         * configure.ac:
7769           releasing 0.8.4, "Paella"
7770           bump libtool versioning
7771
7772 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7773
7774         * po/LINGUAS:
7775         * po/ca.po:
7776           adding Catalan translation (Jordi Mallach)
7777
7778 2004-07-20  Wim Taymans  <wim@fluendo.com>
7779
7780         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7781         (handoff_identity), (main):
7782         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7783         (handoff_identity), (main):
7784         * testsuite/schedulers/Makefile.am:
7785         Added failing testcase for variant of #147894
7786
7787 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7788
7789         patch by: David Moore
7790
7791         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7792         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
7793         (group_migrate_connected):
7794         * testsuite/schedulers/Makefile.am:
7795           fix for #142813 (Deadlock in optimal scheduler)
7796
7797 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7798
7799         patch by: Wim Taymans
7800
7801         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7802         (gst_opt_scheduler_schedule_run_queue),
7803         (gst_opt_scheduler_get_wrapper), (get_group),
7804         (group_migrate_connected):
7805         * testsuite/schedulers/Makefile.am:
7806           fix for #147819 (Add some checks in the opt scheduler)
7807
7808 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7809
7810         patch by: Benjamin Otte
7811
7812         * gst/gstelementfactory.c: (__gst_element_details_set):
7813           fix for #147929: running gst-register in non-utf8 locale can cause
7814           invalid registry
7815
7816 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7817
7818         patch by: Wim Taymans
7819
7820         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
7821         (group_has_element), (element_get_reachables_func),
7822         (group_migrate_connected):
7823           fix for #147894 (opt scheduler decoupled elements mismanagement)
7824         * testsuite/schedulers/Makefile.am:
7825           testsuite app now passes
7826
7827 2004-07-19  Wim Taymans  <wim@fluendo.com>
7828
7829         * testsuite/schedulers/147819.c: (handoff_identity1),
7830         (handoff_identity2), (main):
7831         * testsuite/schedulers/Makefile.am:
7832         Added testcase for bug 147819
7833
7834 2004-07-19  Wim Taymans  <wim@fluendo.com>
7835
7836         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7837         (handoff_identity), (main):
7838         * testsuite/schedulers/Makefile.am:
7839         Added testcase for bug 147894
7840
7841 2004-07-16  Wim Taymans  <wim@fluendo.com>
7842
7843         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
7844         * testsuite/schedulers/142183.c: (handoff_identity), (main):
7845         * testsuite/schedulers/Makefile.am:
7846         Added testsuite for bug 142183 in its two incarnations. Refcount
7847         is not increased for scheduled elements and threadsafe properties
7848         mutexes are not properly unlocked.
7849
7850 2004-07-16  Wim Taymans  <wim@fluendo.com>
7851
7852         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
7853         (create_chain), (destroy_chain), (create_group), (destroy_group),
7854         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
7855         (group_dec_link), (gst_opt_scheduler_pad_link),
7856         (group_inc_links_for_element), (group_migrate_connected):
7857         Call group_inc_link with the proper src->sink ordering -- 
7858         break this, and we break sort_chain. patch from wingo for bug
7859         147713.
7860         Partially revert patch 1.89. When adding a loop based element to 
7861         the scheduler, the links to other groups are automatically followed
7862         and incremented. This should not happen because the bin will call
7863         pad_link explicitly for those connection, resulting in them counted 
7864         twice. Results in assertion failure on pipeline cleanup.
7865
7866 2004-07-16  Wim Taymans  <wim@fluendo.com>
7867
7868         * testsuite/schedulers/143777-2.c: (main):
7869         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
7870         (main):
7871         * testsuite/schedulers/Makefile.am:
7872         Added cleanup code to testcase 143777-2.
7873         Added testcase to show bug 147713, does not really show the
7874         deadlock as I can't figure out how to trigger it, but it does
7875         demonstrate bad ordering in the scheduler.
7876
7877 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7878
7879         * gst/gstvalue.c: (gst_value_deserialize_fraction):
7880           change strndup to g_strndup.  Fixes #147707
7881
7882 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7883
7884         * po/af.po:
7885         * po/az.po:
7886         * po/cs.po:
7887         * po/en_GB.po:
7888         * po/fr.po:
7889         * po/nl.po:
7890         * po/sr.po:
7891         * po/sv.po:
7892         * po/tr.po:
7893         * po/uk.po:
7894           updated translations
7895
7896 2004-07-16  Benjamin Otte  <otte@gnome.org>
7897
7898         * gst/gstvalue.c: (gst_greatest_common_divisor):
7899           use ints and return ints, fractions only use ints, too, so this
7900           avoids accidently casting multiplications to unsigned
7901         (gst_value_lcopy_fraction): it's ints, not uint32
7902         (gst_value_set_fraction): disallow minint, multiplying and negation
7903           are broken with it
7904         (gst_value_fraction_multiply): fix to make large numbers work and get
7905         rid of the assumption that the multiplication of two ints fits an
7906         int64 - dunno if that's true for all systems
7907         * testsuite/caps/Makefile.am:
7908         * testsuite/caps/fraction-multiply-and-zero.c:
7909         (check_multiplication), (check_equal), (zero_test), (main):
7910           add tests for all the stuff above
7911         * testsuite/caps/value_compare.c: (test1):
7912           fix comment
7913         * tests/.cvsignore:
7914         * testsuite/caps/.cvsignore:
7915         * testsuite/debug/.cvsignore:
7916         * testsuite/dlopen/.cvsignore:
7917         * testsuite/states/.cvsignore:
7918           get up to date
7919
7920 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7921
7922         * docs/manual/bins-api.xml:
7923         * docs/manual/factories.xml:
7924         * docs/manual/helloworld.xml:
7925         * docs/manual/links-api.xml: 
7926           fixes for out of date info, incorrect info and grammar
7927
7928 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7929
7930         * docs/manual/pads.xml:
7931         * docs/manual/pads-api.xml: grammar fix
7932
7933 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7934
7935         * docs/manual/pads-api.xml: typo + grammar fix
7936
7937 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7938
7939         * docs/gst/gstreamer-sections.txt:
7940           add new symbols
7941         * docs/gst/tmpl/gstelement.sgml:
7942         * docs/gst/tmpl/gstpad.sgml:
7943         * docs/gst/tmpl/gsttypes.sgml:
7944         * docs/gst/tmpl/gstvalue.sgml:
7945           update docs
7946         * gst/gststructure.c: (gst_structure_set_valist),
7947         (gst_structure_from_abbr), (gst_structure_to_abbr):
7948         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
7949         (gst_greatest_common_divisor), (gst_value_init_fraction),
7950         (gst_value_copy_fraction), (gst_value_collect_fraction),
7951         (gst_value_lcopy_fraction), (gst_value_set_fraction),
7952         (gst_value_get_fraction_numerator),
7953         (gst_value_get_fraction_denominator),
7954         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
7955         (gst_value_deserialize_fraction),
7956         (gst_value_transform_fraction_string),
7957         (gst_value_transform_string_fraction),
7958         (gst_value_compare_fraction), (_gst_value_initialize):
7959         * gst/gstvalue.h:
7960           adding GstFraction GValue type, get/set, and multiply
7961         * testsuite/caps/Makefile.am:
7962         * testsuite/caps/fraction.c: (test), (main):
7963         * testsuite/caps/string-conversions.c: (main):
7964         * testsuite/caps/value_compare.c: (test1), (main):
7965           add regression tests for GstFraction
7966
7967 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7968         
7969         * docs/manual/init-api.xml: Grammar fix
7970
7971 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7972
7973         * docs/manual/states.xml: Fix inconsistent information
7974
7975 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7976
7977         * gst/gstelement.c: (gst_element_set_state):
7978         * gst/gstpad.c: (gst_pad_try_set_caps):
7979         * gst/gststructure.c:
7980         * gst/gstthread.c: (gst_thread_child_state_change):
7981         * gst/gstvalue.c: (gst_value_compare_double):
7982         * gst/gstvalue.h:
7983         * testsuite/parse/parse1.c: (main):
7984           debugging additions and style cleanups
7985
7986 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7987
7988         * docs/manual/states.xml: Grammar fix
7989
7990 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7991
7992         * docs/manual/pads.xml: Grammar fix
7993
7994 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7995
7996         * docs/manual/elements.xml: Fixed image reference
7997
7998 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7999
8000         * docs/manual/goals.xml: Grammar fix
8001
8002 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8003
8004         * docs/manual/motivation.xml:
8005         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
8006
8007 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8008
8009         * docs/manual/motivation.xml: Fix spelling
8010
8011 2004-07-15  Benjamin Otte  <otte@gnome.org>
8012
8013         * gst/gstelement.h: 
8014           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
8015           strings.
8016         * gst/gstelement.c (gst_element_class_init):
8017           GError's are boxed, not objects
8018         * gst/gstmarshal.list:
8019           update list for the fixed error signal
8020
8021 2004-07-14  Andy Wingo  <wingo@pobox.com>
8022
8023         * gst/gsttag.c: Add a tag merge func for pointers. The header was
8024         there all along, but the function wasn't. (guile-gstreamer's build
8025         system uses the address of the function -- I wasn't actually
8026         trying to use this.)
8027
8028 2004-07-14  Andy Wingo  <wingo@pobox.com>
8029
8030         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
8031         as gst_pad_proxy_pad_link) just link to every other pad when they
8032         are called. In the case where the graph has cycles, this will mean
8033         that a call to try_set_caps will recurse. Allow this recursion
8034         and return OK, while we wait for the first try_set_caps to give a
8035         proper return value.
8036         (gst_pad_link_call_link_functions): Since this function is the
8037         only one to set the NEGOTIATING flag on a pad, if the flag is set
8038         it means that the link functions have indirectly recursed. If this
8039         happens, error out to avoid infinite recursion and an eventual
8040         SEGV.
8041         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
8042         (gst_pad_proxy_getcaps): Intersect the result with the template
8043         caps to ensure that the return value is valid.
8044
8045 2004-07-14  Andy Wingo  <wingo@pobox.com>
8046
8047         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
8048         one refcount, the calling function is the owner of the buffer.
8049
8050 2004-07-14  Wim Taymans  <wim@fluendo.com>
8051
8052         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
8053         (gst_opt_scheduler_pad_link), (group_migrate_connected):
8054         Fix stupid warning when an element is to be migrated but
8055         is already migrated.
8056
8057 2004-07-14  Wim Taymans  <wim@fluendo.com>
8058
8059         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
8060         (gst_opt_scheduler_pad_link), (group_migrate_connected):
8061         Make sure that a single non-loop-based element does not 
8062         end up in a group. This fixes the testsuite again.
8063
8064 2004-07-14  Wim Taymans  <wim@fluendo.com>
8065
8066         * gst/schedulers/gstoptimalscheduler.c: (create_group),
8067         (add_to_group), (merge_groups), (schedule_group),
8068         (gst_opt_scheduler_get_wrapper), (group_elements),
8069         (group_dec_link), (gst_opt_scheduler_pad_link),
8070         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
8071         (gst_opt_scheduler_iterate):
8072         move isolated groups to a new chain.
8073         Emit a warning instead of segfaulting in some error cases.
8074         Fix a bug where the link count between groups was not calculated 
8075         correctly. Fixes #144510.
8076
8077 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
8078         * gst/elements/gstfilesrc.c:
8079           Binary files support under Windows now OK
8080       
8081 2004-07-13  Benjamin Otte  <otte@gnome.org>
8082
8083           compatibility fixes for Solaris 8/gcc 2.95
8084         * configure.ac:
8085           include libintl libs in LDFLAGS
8086         * gstvalue.c (gst_value_deserialize_buffer):
8087           cast isxdigit stuff to int to silence compiler warning
8088
8089 2004-07-12  Benjamin Otte  <otte@gnome.org>
8090
8091         * gst/gsttypes.h:
8092           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
8093           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
8094           just causes support madness
8095         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
8096           make it work without this
8097         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
8098         (gst_file_index_commit):
8099           glib IO channels don't want binary mode
8100         * testsuite/bytestream/filepadsink.c: (main):
8101         * testsuite/bytestream/test1.c: (read_param_file):
8102           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
8103
8104 2004-07-12  Benjamin Otte  <otte@gnome.org>
8105
8106         * gst/gstelement.c: (gst_element_class_init),
8107         (gst_element_set_state), (gst_element_set_state_func):
8108           virutalize gst_element_set_state, use set_state member in class
8109           struct that was already added in 0.7 for this.
8110         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
8111         (gst_bin_change_state):
8112           make gst_bin_foreach works similar to other foreach functions, plug
8113           memleaks in it. Make functions using it work with the new approach.
8114           Document gst_bin_foreach, so it can be exported if we want to
8115         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
8116           use virtualized set_state to make set_state on bins set the state of
8117           all its children.
8118
8119 2004-07-12  Benjamin Otte  <otte@gnome.org>
8120
8121         * configure.ac:
8122           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
8123           http://bugs.gentoo.org/show_bug.cgi?id=53967)
8124         * gst/gstpad.c: (gst_pad_alloc_buffer):
8125           allow buffer_alloc functions to return NULL and allocate a normal
8126           buffer in that case
8127
8128 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
8129         * gst/elements/gstfilesink.c:
8130         * gst/elements/gstfilesrc.c:
8131         * gst/indexers/gstfileindex.c:
8132         * gst/gsttypes.h:
8133         * testsuite/bytestream/filepadsink.c:
8134         * testsuite/bytestream/test1.c:
8135           Handle binary files under Windows
8136
8137 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
8138         * docs/manual/win32.xml:
8139         * win32/config.h:
8140         * win32/gst-register.vcproj:
8141         * win32/gstreamer.def:
8142           Update to another gettext public build
8143
8144 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
8145         * gst/gstplugin.c:
8146           Fix an impossible C syntax
8147         * win32/config.h:
8148           Disable i18n under Windows for the moment
8149         * win32/gst-register.vcproj:
8150           Use this configuration
8151
8152 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
8153         * docs/manual/quotes.xml:
8154           Keep the quotes file alive
8155         * docs/random/ds/0.9-suggested-changes:
8156           Add the suggestion of including a 'rowstride' as part of video
8157           format caps
8158
8159 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8160
8161         * gst/gstelement.c: (gst_element_set_state),
8162         (gst_element_change_state):
8163           d'oh.  Set PENDING state correctly before forcing bin to change.
8164         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8165         (gst_structure_parse_fixed_list):
8166         * gst/schedulers/gstoptimalscheduler.c:
8167         (gst_opt_scheduler_state_transition):
8168         * testsuite/states/parent.c: (main):
8169           remove comment now that it's fixed.
8170
8171 2004-07-11  Benjamin Otte  <otte@gnome.org>
8172
8173         * gst/gstclock.h:
8174           GST_SECOND shouldn't cause a conversion to unsigned.
8175         * testsuite/clock/.cvsignore:
8176         * testsuite/clock/Makefile.am:
8177         * testsuite/clock/signedness.c: (main):
8178           make sure it never will again
8179
8180 2004-07-11  Andy Wingo  <wingo@pobox.com>
8181
8182         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
8183         whose state is higher than the bin state, raise the bin state to
8184         ensure that bin state := highest child state.
8185         
8186 2004-07-11  Andy Wingo  <wingo@pobox.com>
8187
8188         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
8189         procedure on the children of a bin. Assumes that the procedure can
8190         change the set of children.
8191         (set_kid_state_func): New static function.
8192         (gst_bin_change_state): Use gst_bin_foreach to call
8193         set_kid_state_func. Fixes a bug: if a child had a state-change
8194         handler that removes it from the bin, there would be a segfault.
8195         Hopefully it should also work in the case where the state-change
8196         handler on one child adds or removes other children. In any case,
8197         fixes should go to gst_bin_foreach.
8198
8199 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
8200
8201         * gst/gstelement.c: (gst_element_set_state):
8202           compatibility fix for latest plugins release.  Change loop back
8203           to while {}
8204
8205 2004-07-09  Wim Taymans  <wim@fluendo.com>
8206
8207         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
8208         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
8209         (gst_thread_main_loop):
8210         Since remove is virtual in GstBin we must not assume the 
8211         elements GList to have anothing useful.
8212         Add some more logging to GstThread and be a bit more paranoid
8213         when resetting the scheduler.
8214         Set the state of the bin to NULL before removing the children.
8215
8216 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8217
8218         * testsuite/threads/Makefile.am:
8219         * testsuite/threads/threadg.c:
8220           added test to check if problem when removing all elements from a
8221           GstThread before setting GstThread state to NULL
8222
8223 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8224
8225         * docs/gst/tmpl/gstelement.sgml:
8226         * docs/gst/tmpl/gsttypes.sgml:
8227         * gst/gstbin.c: (gst_bin_change_state):
8228         * gst/gstelement.c: (gst_element_set_state),
8229         (gst_element_change_state):
8230           rework so that for bins we try to set the state on all children
8231           as well even if the bin is in the correct state already.
8232           change while to do so at least one iteration is done.
8233           For regular elements, we fall back to the previous behaviour for
8234           now since we first need a new plugins release.
8235         * testsuite/states/parent.c: (main):
8236           test for this case
8237           Fixes #123774
8238
8239 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8240
8241         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
8242         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
8243         (gst_queue_release_locks), (gst_queue_change_state),
8244         (gst_queue_set_property):
8245           add proper lock debugging.  Change dispose to finalize, since
8246           we're freeing mutexes and other stuff which should happen only once.
8247
8248 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8249
8250         * docs/gst/tmpl/gstelement.sgml:
8251         * docs/gst/tmpl/gstplugin.sgml:
8252         * docs/gst/tmpl/gsttypes.sgml:
8253         * docs/pwg/building-state.xml:
8254         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
8255         * gst/gstelement.c: (gst_element_change_state):
8256         * gst/gstthread.c: (gst_thread_change_state):
8257           catch wrong state changes in element base class.
8258
8259 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8260
8261         * gst/gstinfo.h:
8262           clean up layout a little.
8263
8264 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8265
8266         * configure.ac:
8267         * testsuite/Makefile.am:
8268         * testsuite/states/Makefile.am:
8269         * testsuite/states/parent.c: (main):
8270           re-enable states testsuite dir.  Add test for state changes and
8271           parent behaviour
8272
8273 2004-07-09  Wim Taymans  <wim@fluendo.com>
8274
8275         * gst/schedulers/gstoptimalscheduler.c:
8276         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
8277         (element_get_reachables_func), (element_get_reachables),
8278         (debug_element), (rechain_group), (group_migrate_connected),
8279         (gst_opt_scheduler_pad_unlink):
8280         Do not try to migrate decoupled elements to a new group since
8281         they are not added to groups.
8282
8283 2004-07-08  Benjamin Otte  <otte@gnome.org>
8284
8285         * gst/gstelement.c: (gst_element_error_func):
8286           make reentrant (= allow removing elements in error handler)
8287
8288 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8289
8290         * gst/gstpad.c: (gst_pad_event_default_dispatch),
8291         (gst_pad_send_event), (gst_pad_call_chain_function):
8292           events sent to elements below PAUSED cannot be handled, so
8293           don't try to
8294
8295 2004-07-08  Wim Taymans  <wim@fluendo.com>
8296
8297         * gst/schedulers/gstoptimalscheduler.c:
8298         (chain_recursively_migrate_group), (create_group),
8299         (schedule_group), (gst_opt_scheduler_pad_link),
8300         (group_elements_set_visited), (element_get_reachables_func),
8301         (element_get_reachables), (group_can_reach_group), (debug_element),
8302         (rechain_group), (group_migrate_connected),
8303         (gst_opt_scheduler_pad_unlink):
8304         * testsuite/schedulers/Makefile.am:
8305         Implemented group splitting and rechaining.
8306         Fixes 143777 and 143777-2 in the testsuite.
8307
8308 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8309
8310         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
8311           extra debugging
8312         * gst/gstevent.h:
8313         * gst/gstinfo.c: (gst_debug_log_default):
8314           print time nicely.  add thread pointer until someone figures out
8315           a completely portable way of getting at thread id's.
8316         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
8317         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
8318         (gst_pad_call_chain_function):
8319           extra debugging
8320         * gst/schedulers/gstoptimalscheduler.c:
8321         (get_group_schedule_function), (loop_group_schedule_function),
8322         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
8323         (pad_clear_queued), (gst_opt_scheduler_iterate):
8324           rename BUFPEN and friends to DATAPEN since that's what they are.
8325
8326 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8327
8328         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
8329         * gst/gstbuffer.h:
8330         * gst/gstpad.c:
8331           cleanups and debugging
8332
8333 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8334
8335         * configure.ac:
8336         * gst/gstvalue.c: (gst_value_compare_enum),
8337         (gst_value_serialize_enum), (gst_value_deserialize_enum),
8338         (gst_value_can_compare), (gst_value_compare):
8339         * testsuite/Makefile.am:
8340         * testsuite/enumcaps/Makefile.am:
8341         * testsuite/enumcaps/enumcaps.c:
8342           Fix enum serialization, deserialization, comparison in caps, add
8343           a test to ensure that this continues working in the future.
8344
8345 2004-07-06  David Schleef  <ds@schleef.org>
8346
8347         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
8348         Fix memleak.
8349
8350 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8351
8352         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
8353         * gst/gstplugin.h:
8354         * gst/registries/gstxmlregistry.c:
8355         (plugin_times_older_than_recurse), (plugin_times_older_than),
8356         (gst_xml_registry_parse_padtemplate):
8357           only rebuild registry when actual plugins have a newer time than
8358           the registry.  Fixes #145520
8359
8360 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8361
8362         * docs/manual/manual.xml:
8363         * docs/manual/win32.xml:
8364           add chapter on win32 building.  fixes #142422
8365
8366 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8367
8368         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
8369
8370         * gst/autoplug/gstspider.c: (gst_spider_init),
8371         (gst_spider_dispose):
8372           fix spider memleaks.  fixes #137863
8373
8374 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8375
8376         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
8377
8378         * gst/schedulers/gstoptimalscheduler.c:
8379         (gst_opt_scheduler_pad_unlink):
8380           fix SIGBUS error, fixes #145338
8381
8382 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8383
8384         * gst/gstobject.c: (gst_object_replace):
8385         * gst/gstscheduler.c: (gst_scheduler_get_clock):
8386         * gst/gstsystemclock.c: (gst_system_clock_obtain):
8387           clean up clock lifecycle.  Fixes #109831
8388
8389 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8390
8391         * po/LINGUAS:
8392         * po/cs.po:
8393           added Czech translation (Miloslav Trmac)
8394
8395 2004-07-04  David Schleef  <ds@schleef.org>
8396
8397         * tools/Makefile.am:
8398         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
8399
8400 2004-07-04  David Schleef  <ds@schleef.org>
8401
8402         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
8403
8404 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8405
8406         * gst/gstbin.c: (gst_bin_restore_thyself):
8407           chain to parent restore so the bins get restored correctly
8408           in the editor
8409
8410 2004-07-03  David Schleef  <ds@schleef.org>
8411
8412         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
8413         Actually do something in these functions, like before the big
8414         caps change.  (bug #145137)
8415
8416 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8417
8418         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
8419         (gst_element_get_compatible_pad_filtered):
8420         * gst/gstthread.c: (gst_thread_main_loop):
8421           more debugging
8422
8423 2004-07-02  David Schleef  <ds@schleef.org>
8424
8425         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
8426         * gst/gstobject.h:
8427         * gst/gstparse.h:
8428         * gst/gsttrace.h:
8429         * gst/gstxml.h:
8430
8431 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8432
8433         * gst/gstpad.c: (gst_pad_check_schedulers),
8434         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
8435         (gst_pad_link_prepare):
8436           revert until testsuite is fixed
8437
8438 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8439
8440         * testsuite/Makefile.am:
8441         * testsuite/caps/filtercaps.c: (main):
8442         * testsuite/clock/clock1.c: (main):
8443         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
8444           fix some more tests
8445
8446 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8447
8448         * testsuite/cleanup/cleanup1.c: (create_pipeline):
8449         * testsuite/cleanup/cleanup2.c: (create_pipeline):
8450         * testsuite/cleanup/cleanup4.c: (main):
8451           fix testsuite
8452
8453 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8454
8455         * libs/gst/control/control.c:
8456         * libs/gst/control/dparam.c:
8457         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
8458         * libs/gst/control/dparammanager.c:
8459         * libs/gst/control/dparammanager.h:
8460         * testsuite/dynparams/Makefile.am:
8461         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
8462         (gst_dptest_change_state), (gst_dptest_chain), (main):
8463           fix testcase for dparams
8464           add debugging category
8465
8466 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8467
8468         * testsuite/Rules:
8469           change path
8470
8471 2004-07-02  Benjamin Otte  <otte@gnome.org>
8472
8473         * tests/.cvsignore:
8474         * tests/Makefile.am:
8475         * tests/mass_elements.c: (gst_get_current_time), (main):
8476           add simple benchmark to test various speeds of fakesrc ! identity !
8477           identity ! ... ! fakesink.
8478           Usage: mass_elements [num_identities] [num_buffers]
8479           If not specified they default to 1000.
8480
8481 2004-07-02  Benjamin Otte  <otte@gnome.org>
8482
8483         * gst/gstpad.c: (gst_pad_check_schedulers),
8484         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
8485         (gst_pad_link_prepare):
8486           check that pads that get linked belong to the same manager. The old
8487           code allowed linking elements before putting them into bins, so it
8488           worked to link them and then put them in different threads, which
8489           lead to weird behaviour.
8490           Since this effectively disallows linking elements before putting
8491           them in a bin, some applications might not work after this and error
8492           out. If these applications are too critical, we might need to revert
8493           that patch. Please test this before the next release...
8494
8495 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8496
8497         * gst/gstpad.c: (gst_pad_get_caps):
8498           throw an error if the getcaps function does not return a subset of
8499           the template caps.
8500         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
8501           make disconts without position info an error in debugging
8502         * tests/spidey_bench.c: (handoff), (main):
8503           don't count first try when averaging
8504
8505 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8506
8507         * gst/gstplugin.c: (gst_plugin_load_file):
8508           figure out problem with dynamic test
8509
8510 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8511
8512         * docs/gst/Makefile.am:
8513           fix docs build
8514
8515 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8516
8517         * po/POTFILES.in:
8518         * po/af.po:
8519         * po/az.po:
8520         * po/en_GB.po:
8521         * po/fr.po:
8522         * po/nl.po:
8523         * po/sr.po:
8524         * po/sv.po:
8525         * po/tr.po:
8526         * po/uk.po:
8527         * tools/gst-register.c: (plugin_added_func), (main):
8528           i18n-ize -register, fix plural
8529
8530 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8531
8532         * gst/elements/gstidentity.c: (gst_identity_class_init),
8533         (gst_identity_init), (gst_identity_chain),
8534         (gst_identity_set_property), (gst_identity_get_property):
8535         * gst/elements/gstidentity.h:
8536           check for perfect stream
8537
8538 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8539
8540         * gst/elements/gstidentity.c: (gst_identity_chain):
8541           print offset_end
8542
8543 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8544
8545         * docs/gst/Makefile.am:
8546         * docs/gst/gstreamer-docs.sgml:
8547           doc fixes
8548
8549 2004-06-24  David Schleef  <ds@schleef.org>
8550
8551         * autogen.sh:  Remove call to env, since the buildbot isn't
8552         broken anymore.
8553
8554 2004-06-24  Wim Taymans  <wim@fluendo.com>
8555
8556         * gst/elements/Makefile.am:
8557         * gst/elements/gstelements.c:
8558         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
8559         (gst_multifdsink_class_init), (gst_multifdsink_init),
8560         (gst_multifdsink_add), (gst_multifdsink_remove),
8561         (gst_multifdsink_clear), (gst_multifdsink_chain),
8562         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
8563         * gst/elements/gstmultifdsink.h:
8564         Added an element that writes to multiple filedescriptors at once.
8565
8566 2004-06-24  Benjamin Otte  <otte@gnome.org>
8567
8568         * gst/parse/grammar.y:
8569           don't try to link elements before they have been added to bins
8570
8571 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8572
8573         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
8574         (gst_file_pad_get_length):
8575         * libs/gst/bytestream/filepad.h:
8576           add 2 new functions
8577
8578 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8579
8580         * docs/gst/gstreamer-sections.txt:
8581         remove from docs, the define that Benjamin removed from gstelement.h
8582
8583 2004-06-22  Benjamin Otte  <otte@gnome.org>
8584
8585         * gst/gstelement.h:
8586           remove define that referenced a nonexisting GstElement struct member
8587
8588 2004-06-20  Benjamin Otte  <otte@gnome.org>
8589
8590         * gst/gstdata.c: (gst_data_is_writable):
8591           whoops, return values were wrong, so writable data was marked as
8592           non-writable and vice versa. (fixes #143953, spotted by Francis
8593           Labonte)
8594           Shows how rarely we need to copy data ;)
8595
8596 2004-06-20  Benjamin Otte  <otte@gnome.org>
8597
8598         * testsuite/schedulers/.cvsignore:
8599         * testsuite/schedulers/Makefile.am:
8600         * testsuite/schedulers/143777-2.c: (main):
8601           add test for opt breakage in bug #143777
8602
8603 2004-06-20  Benjamin Otte  <otte@gnome.org>
8604
8605         * gst/gstpad.c: (gst_pad_call_chain_function):
8606           check for if we were unlinked while inside the chainfunction (fixes
8607           entrygthread having issues with #143777)
8608         * testsuite/schedulers/143777.c: (main):
8609         * testsuite/schedulers/Makefile.am:
8610           add a test for that fix
8611
8612 2004-06-20  Benjamin Otte  <otte@gnome.org>
8613
8614         * gst/gstvalue.c: (gst_value_set_int_range):
8615           test that start is smaller then end
8616         * libs/gst/bytestream/Makefile.am:
8617         * libs/gst/bytestream/filepad.c: 
8618         * libs/gst/bytestream/filepad.h:
8619           add GstFilePad - a pad that behaves like a FILE*
8620         * testsuite/bytestream/.cvsignore:
8621         * testsuite/bytestream/Makefile.am:
8622         * testsuite/bytestream/filepadsink.c: 
8623           test for the GstFilePad
8624
8625 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8626
8627         * gst/elements/gstidentity.c: (gst_identity_class_init),
8628         (gst_identity_init), (gst_identity_set_clock),
8629         (gst_identity_chain), (gst_identity_set_property),
8630         (gst_identity_get_property):
8631         * gst/elements/gstidentity.h:
8632         * gst/gstclock.c: (gst_clock_id_wait):
8633           add a "sync" property to sync to the clock
8634
8635 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8636
8637         * gst/gstelementfactory.c: (gst_element_factory_create):
8638           make the freakin "elementfactory bla has no type" message more
8639           useful. So we actually can do something when someone shows up
8640           complaining about it.
8641
8642 2004-06-15  Johan Dahlin  <johan@gnome.org>
8643
8644         * tools/gst-inspect.c (main): Fallback to plugin if no element is
8645         found. This matches the old behavior better. Thanks to Thomas for
8646         pointing out.
8647
8648 2004-06-14  David Schleef  <ds@schleef.org>
8649
8650         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
8651         -fomit-frame-pointer.  Appears to generate correct code in
8652         other cases as well.
8653
8654 2004-06-14  Johan Dahlin  <johan@gnome.org>
8655
8656         * tools/gst-inspect.c (main): Add two new command line options: -a
8657         to print all elements and -n to print the name on each line. Also
8658         fix some error reporting.
8659         (main): Simplify, remove -n and always print names if -a is specified
8660
8661 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
8662
8663         * win32/gstconfig.h:
8664         * win32/GSTreamer.vcproj:
8665         * win32/Makefile:
8666         * gst/gstconfig.h.in:
8667         * gst/gst.h:
8668         * gst/gstbin.h:
8669         * gst/gstelement.h:
8670         * gst/gstevent.h:
8671         * gst/gstobject.h:
8672         * gst/gstpad.h:
8673         * docs/gst/gstreamer-sections.txt:
8674         * docs/gst/tmpl/gstconfig.sgml:
8675           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
8676
8677 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8678         * docs/gst/gstreamer-sections.txt:
8679         * docs/gst/tmpl/gstconfig.sgml:
8680         Add the GSTREAMER_EXPORT macro to the docs
8681
8682 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8683
8684         * tools/gst-compprep.c: (handle_xmlerror), (main):
8685         Add a check for the version that introduced SetStructuredError to fix
8686         the build on FC1
8687
8688 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8689
8690         * win32/msvc71.sln:
8691         * win32/testsuite/:
8692           prepare to compile the testsuite with MSVC
8693
8694 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8695
8696         * docs/manual/win32.xml:
8697           attempt to transform the Win32 README into an XML doc
8698
8699 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8700
8701         * gst/gst.c:
8702         * gst/gstbin.*:
8703         * gst/config.h.in:
8704         * gst/gstelement.*:
8705         * gst/gstevent.h:
8706         * gst/gstobject.*:
8707         * gst/gstpad.h:
8708         * tools/gst-register.c:
8709         * win32/gstreamer.def:
8710           extern symbols are now exported for the Windows DLL
8711
8712 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8713
8714         * gst/gstinfo.h:
8715           fix a problem to enable/disable DEBUG under MSVC
8716
8717 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8718
8719         * win32/:
8720           enable more debug code in DEBUG build
8721
8722 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8723
8724         * win32/config.h:
8725         * gst/gst-i18n-app.h:
8726           enable NLS under Windows
8727
8728 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
8729         * tools/gst-compprep.c: (handle_xmlerror), (main):
8730           Make an error that baffled me a bit clearer
8731
8732 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8733
8734         * gst/gstqueue.c:
8735           don't use g_queue_get_length () because it's 2.4, use ->length
8736
8737 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
8738
8739         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
8740
8741         * tools/gst-inspect.c: (print_signal_info):
8742           don't free random data twice. (fixes #144185)
8743
8744 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
8745
8746         * gst/gstqueue.c:
8747         * gst/gstqueue.h:
8748           fix removing from the wrong queue on event timeout
8749           fix disposing of the event queue by casting correctly
8750           add mutexes for handling the event queue
8751           someone was sleeping when fixing queue last time around :)
8752
8753 2004-06-10  Johan Dahlin  <johan@gnome.org>
8754
8755         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
8756         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
8757
8758 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8759
8760         * docs/random/gdp:
8761         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
8762         * libs/gst/dataprotocol/dataprotocol.c:
8763         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8764         (gst_dp_buffer_from_header):
8765         * libs/gst/dataprotocol/dataprotocol.h:
8766         * libs/gst/dataprotocol/dp-private.h:
8767           rev version to 0.1, add buffer flags and copy them
8768
8769 2004-06-09  Johan Dahlin  <johan@gnome.org>
8770
8771         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
8772         the flags from the buffer we're copying.
8773
8774 2004-06-09  Wim Taymans  <wim@fluendo.com>
8775
8776         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
8777         * gst/elements/gstidentity.c: (gst_identity_init),
8778         (gst_identity_chain):
8779         Print more buffer info in fakesink.
8780         Make identity output similar to fakesink.
8781
8782 2004-06-07  Daniel Gazard  <dany42@free.fr>
8783
8784         reviewed by Benjamin Otte  <otte@gnome.org>
8785
8786         * configure.ac:
8787           fix cross compiling not working. (fixes #143741)
8788
8789 2004-06-07  Benjamin Otte  <otte@gnome.org>
8790
8791         * gst/gstelement.c: (gst_element_set_time_delay):
8792           add failure check
8793         * gst/gstinfo.h:
8794           put brackets around macro arguments of GST_TIME_ARGS, add note to
8795           move it to correct header in 0.9
8796
8797 2004-06-07  Benjamin Otte  <otte@gnome.org>
8798
8799         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
8800         (gst_file_index_load), (_file_index_id_save_entries),
8801         (gst_file_index_commit), (gst_file_index_add_association),
8802         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
8803         (gst_file_index_plugin_init):
8804           make debugging use a default category
8805
8806 2004-06-06  David Moore  <dcm@acm.org>
8807
8808         reviewed by Benjamin Otte  <otte@gnome.org>
8809
8810         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
8811         (gst_fdsrc_change_state):
8812           reset offset counter when going READY => PAUSED. (fixes #142903)
8813
8814 2004-06-06  ed@catmur.co.uk
8815
8816         reviewed by Benjamin Otte  <otte@gnome.org>
8817
8818         * gst/registries/gstxmlregistry.c:
8819         (gst_xml_registry_rebuild_recurse):
8820           don't rely on g_dir_open to figure out if a file is a directory, use
8821           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
8822           directories. (fixes #142850)
8823
8824 2004-06-06  Benjamin Otte  <otte@gnome.org>
8825
8826         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
8827           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
8828         * libs/gst/bytestream/adapter.c:
8829         * libs/gst/bytestream/adapter.h:
8830           fix copyright in header and typo in debugging category name
8831
8832 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8833
8834         * configure.ac:
8835           bump nano to cvs
8836
8837 === release 0.8.3 ===
8838
8839 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8840
8841         * configure.ac:
8842           update libtool versioning
8843           do a new release
8844         * docs/gst/tmpl/gstelement.sgml:
8845         * docs/gst/tmpl/gsttypes.sgml:
8846         * gst/gstinfo.c: (_gst_debug_init):
8847           put back GST_CAT_DATAFLOW to fix API breakage
8848
8849 2004-06-04  David Schleef  <ds@schleef.org>
8850
8851         * autogen.sh: Add a temporary 'env' to test buildbot problems.
8852
8853 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8854
8855         * configure.ac:
8856           bump nano to cvs
8857
8858 === release 0.8.2 ===
8859
8860 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8861
8862         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
8863           check GST_DEBUG environment variable which is parsed the same way
8864           as --gst-debug=
8865
8866 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8867
8868         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
8869                             gstmd5sink.c gstshaper.c gsttee.c
8870                             gsttypefindelement.c
8871         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
8872
8873           - removing trailing commas at end of enums
8874             it is correct C99 code but C90 compilers would complain
8875             (AIX, Forte, ...)
8876             ('should' fix #143290, at least partially)
8877
8878 2004-05-27  Wim Taymans  <wim@fluendo.com>
8879
8880         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
8881         (chain_group_set_enabled), (create_group), (add_to_group),
8882         (merge_groups), (setup_group_scheduler), (group_elements),
8883         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
8884         Don't try to follow the pad connections with other groups
8885         when a loop based element is added to the scheduler because
8886         the bin will inform the scheduler about the pad links a little
8887         later.
8888
8889 2004-05-27  Wim Taymans  <wim@fluendo.com>
8890
8891         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8892         (remove_from_chain), (chain_group_set_enabled),
8893         (setup_group_scheduler), (group_element_set_enabled),
8894         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
8895         (gst_opt_scheduler_show):
8896         Elements without a group can do a state change as well, just wait
8897         with the setup of the scheduling function when it is added to a
8898         chain.
8899
8900 2004-05-27  Wim Taymans  <wim@fluendo.com>
8901
8902         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8903         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
8904         (merge_groups), (setup_group_scheduler),
8905         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
8906         (gst_opt_scheduler_show):
8907         Fixes to maintain internal consistency of the scheduler data
8908         structures. 
8909          - adding an enabled group to a chain should increment the
8910            number of enabled elements in that chain.
8911          - removing an enabled group from a chain could disable the
8912            chain.
8913          - removing a disabled group from a chain could enable the
8914            chain.
8915          - add g_assert when internal inconsistency is detected.
8916          - adding an element to a group could increase the number of
8917            links this group has with other groups.
8918          - merging two groups also merges the chains.
8919          - also show group links in the _show method.
8920            
8921
8922 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8923
8924         * gst/gstcaps.c: (gst_caps_structure_simplify):
8925           don't print error messages when there is no error
8926         * gst/gstvalue.c: (gst_value_compare_int_range):
8927           compare the second value, too
8928         * testsuite/caps/Makefile.am:
8929         * testsuite/caps/random.c: (assert_on_error), (main):
8930           add tests to make sure the two things above are checked for
8931
8932 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8933
8934         * configure.ac:
8935         * libs/gst/dataprotocol/Makefile.am:
8936         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
8937         * libs/gst/dataprotocol/dataprotocol.h:
8938           wrap header in GST_ENABLE_NEW.  make code use it
8939
8940 2004-05-23  Johan Dahlin  <johan@gnome.org>
8941
8942         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
8943         so verbose and print GstElement signal names all the time.
8944
8945 2004-05-22  David Schleef  <ds@schleef.org>
8946
8947         * gst/registries/gstxmlregistry.c:
8948         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
8949         (bug #142957)
8950
8951 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
8952
8953         * configure.ac:
8954           scrub cflags for glib2 so gcc doesn't complain when glib is in
8955           /usr/local
8956
8957 2004-05-21  Johan Dahlin  <johan@gnome.org>
8958
8959         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
8960         __GNUC__, patch from Brian Cameron, fixes bug #142804
8961
8962 2004-05-20  David Schleef  <ds@schleef.org>
8963
8964         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
8965         comparison code.  (bug #142819)
8966
8967 2004-05-20  Wim Taymans  <wim@fluendo.com>
8968
8969         * gst/gstbuffer.c: (gst_buffer_default_copy):
8970         * gst/gstbuffer.h:
8971         Added Comment to a flag.
8972         copy relevant flags in _buffer_copy.
8973
8974 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8975
8976         reviewed by: Wim Taymans <wim at fluendo dot com>
8977
8978         * gst/gstbuffer.h:
8979           add GST_BUFFER_IN_CAPS buffer flag
8980         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8981         (gst_structure_parse_any_list), (gst_structure_parse_list),
8982         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
8983         * gst/gstvalue.c: (gst_value_serialize_any_list),
8984         (gst_value_transform_any_list_string),
8985         (gst_value_list_prepend_value), (gst_value_list_append_value),
8986         (gst_value_list_get_size), (gst_value_list_get_value),
8987         (gst_value_transform_list_string),
8988         (gst_value_transform_fixed_list_string),
8989         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
8990         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
8991         (_gst_value_initialize):
8992         * gst/gstvalue.h:
8993           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
8994           < , > as a format.
8995         * testsuite/caps/string-conversions.c: (main):
8996           add regression tests for < >
8997
8998 2004-05-20  Johan Dahlin  <johan@gnome.org>
8999
9000         * docs/gst/Makefile.am (all-local): Re-add
9001
9002 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9003
9004         * docs/gst/Makefile.am:
9005         * docs/gst/gstreamer-docs.sgml:
9006         * docs/libs/Makefile.am:
9007         * docs/libs/gstreamer-libs-docs.sgml:
9008           fix distcheck issues
9009
9010 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9011
9012         * libs/gst/dataprotocol/Makefile.am:
9013           add to autotest
9014
9015 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9016
9017         * libs/gst/dataprotocol/Makefile.am:
9018         * libs/gst/dataprotocol/dataprotocol.c:
9019         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
9020         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
9021         * libs/gst/dataprotocol/dp-private.h:
9022           use GST macros to read/write fixed length ints
9023           add some more asserts
9024
9025 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9026
9027         * docs/libs/gstreamer-libs-docs.sgml:
9028         * docs/libs/gstreamer-libs-sections.txt:
9029           remove idct and putbits
9030         * configure.ac:
9031         * docs/libs/tmpl/gstdataprotocol.sgml:
9032         * libs/gst/Makefile.am:
9033         * libs/gst/dataprotocol/Makefile.am:
9034         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
9035         (buffer_test), (caps_test), (event_test), (main):
9036         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
9037         (gst_dp_dump_byte_array), (gst_dp_init),
9038         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
9039         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
9040         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
9041         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
9042         (gst_dp_validate_header), (gst_dp_validate_payload),
9043         (gst_dp_validate_packet), (plugin_init):
9044         * libs/gst/dataprotocol/dataprotocol.h:
9045         * libs/gst/dataprotocol/dp-private.h:
9046           add dataprotocol
9047
9048 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9049
9050         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
9051           fix int variable deserialization and add a helper so we can actually
9052           debug this.
9053
9054 2004-05-18  David Schleef  <ds@schleef.org>
9055
9056         * testsuite/debug/commandline.c: (main): Call ./commandline, not
9057           argv[0].  Calling yourself is probably not the best way to
9058           construct a test like this, btw.
9059
9060 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9061
9062         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
9063           don't claim to be more intelligent than a scheduler when the
9064           scheduler claims the pipeline is stopped
9065         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
9066         (safe_cothread_destroy),
9067         (gst_entry_scheduler_remove_all_cothreads),
9068         (gst_entry_scheduler_reset), (_remove_cothread),
9069         (gst_entry_scheduler_state_transition):
9070           hold off cothread destruction if we're not in main cothread
9071         * configure.ac:
9072         * testsuite/Makefile.am:
9073           add new test dir
9074         * testsuite/schedulers/.cvsignore:
9075         * testsuite/schedulers/Makefile.am:
9076           add tests
9077         * testsuite/schedulers/relink.c: (cb_handoff), (main):
9078           check relinking and adding/removing elements from a running pipeline
9079         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
9080           check unlinking in a running pipeline
9081         * testsuite/schedulers/unref.c: (cb_handoff), (main):
9082           check unreffing a running pipeline
9083         * testsuite/schedulers/useless_iteration.c: (main):
9084           check iterating a pipeline that contains running threads works
9085
9086 2004-05-18  David Schleef  <ds@schleef.org>
9087
9088         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
9089           is false.
9090
9091 2004-05-18  Wim Taymans  <wim@fluendo.com>
9092
9093         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
9094         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
9095         Fixed an error introduced with patch for 1.63. When setting
9096         a get based element as the entry point in a group, make sure
9097         to mark the group as GET based.
9098
9099 2004-05-18  Wim Taymans  <wim@fluendo.com>
9100
9101         * gst/schedulers/gstoptimalscheduler.c: (create_group),
9102         (setup_group_scheduler), (loop_group_schedule_function),
9103         (gst_opt_scheduler_pad_link):
9104         Added some more debug info and fixed a bug where the group
9105         type was set to LOOP but it was in fact unknown.
9106
9107 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9108
9109         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
9110           make resetting scheduler work twice in a row
9111
9112 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9113
9114         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
9115         (CREATE_USERIALIZATION), (_gst_value_initialize),
9116         (gst_value_compare_float), (gst_value_serialize_float),
9117         (gst_value_deserialize_float), (gst_value_compare_enum),
9118         (gst_value_serialize_enum), (gst_value_deserialize_enum):
9119           add serialization and comparison functions for long, int64, enum and
9120           float values
9121         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
9122           use best serialization function in type hierarchy instead of only a
9123           matching one. This is required for enums to work.
9124         * gst/parse/grammar.y:
9125           use gst_caps_deserialize
9126         * testsuite/parse/Makefile.am:
9127           parse1 now works
9128         * testsuite/parse/parse1.c: (main):
9129           remove aggregator check, aggregator is broken, this test works now
9130           but fails because of bug #138012
9131         * testsuite/parse/parse2.c: (main):
9132           s/xvideosink/xvimagesink - this test looks a lot like we should
9133           disable it
9134
9135 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9136
9137         * gst/gstelement.c: (gst_element_class_init):
9138           whoops, store the signal id correctly
9139         * gst/schedulers/gstbasicscheduler.c:
9140         (gst_basic_scheduler_chain_wrapper):
9141           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
9142           chain function isn't linked
9143
9144 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
9145         * configure.ac:
9146         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
9147         support until we decide where the flags should be used
9148         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
9149         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
9150         * gst/gstpad.c: (gst_pad_link_call_link_functions):
9151         Output refused caps in the debug info
9152
9153 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9154
9155         * gst/elements/gstidentity.c: (gst_identity_chain):
9156           add duration debug
9157         * gst/gstinfo.c: (gst_debug_log_default):
9158           add timestamp
9159
9160 2004-05-13  Benjamin Otte  <otte@gnome.org>
9161
9162         * gst/gstpipeline.c: (gst_pipeline_dispose),
9163         (gst_pipeline_change_state):
9164           call gst_scheduler_reset on dispose (fixes #141416)
9165
9166 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9167
9168         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
9169           compute mapsize correctly
9170         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
9171           use correct datatypes when calling a varargs function
9172         * gst/elements/gsttypefindelement.c: (stop_typefinding):
9173           push a DISCONT event as first thing
9174         * gst/gst_private.h:
9175         * gst/gstinfo.c: (_gst_debug_init):
9176           remove GST_DATAFLOW debugging category
9177         * gst/gstbin.c: (gst_bin_iterate):
9178           use GST_SCHEDULING category
9179         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
9180         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
9181         (gst_pad_call_get_function):
9182           add GST_DATAFLOW to easily track flow of buffers or events.
9183         * gst/gstqueue.c: (gst_queue_get_type),
9184         (gst_queue_handle_pending_events), (gst_queue_chain),
9185         (gst_queue_get), (gst_queue_handle_src_event):
9186           use own static debugging category GST_DATAFLOW for dataflow,
9187           use DEBUG category for showing which path events go, use LOG
9188           category for buffers.
9189
9190 2004-05-10  David Schleef  <ds@schleef.org>
9191
9192         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
9193
9194 2004-05-10  David Schleef  <ds@schleef.org>
9195
9196         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
9197         symbols, because otherwise we don't know what they are.  Thanks,
9198         the GStreamer team.
9199         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
9200
9201 2004-05-10  David Schleef  <ds@schleef.org>
9202
9203         (from Steve Lhomme)
9204         * win32/Makefile: When using make clean the MS Visual Studio makefiles
9205         are deleted.  Fix.
9206         * win32/Makefile.inspect:
9207         * win32/Makefile.launch:
9208         * win32/Makefile.register:
9209
9210 2004-05-10  David Schleef  <ds@schleef.org>
9211
9212         * gst/gstinfo.h: Add missing inline function.
9213         * gst/gsttrace.c: add include
9214         * gst/parse/grammar.y: remove unused code
9215         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
9216         more portable.
9217         * tools/gst-register.c: wrap unistd.h
9218         
9219         More additions/fixes from Steve for the MSVC build.
9220         * win32/GStreamer.vcproj:
9221         * win32/Makefile:
9222         * win32/Makefile.inspect:
9223         * win32/Makefile.launch:
9224         * win32/Makefile.register:
9225         * win32/README.txt:
9226         * win32/gst-inspect.vcproj:
9227         * win32/gst-launch.vcproj:
9228         * win32/gst-register.vcproj:
9229         * win32/gstbytestream.def:
9230         * win32/gstbytestream.vcproj:
9231         * win32/gstconfig.h:
9232         * win32/gstelements.def:
9233         * win32/gstelements.vcproj:
9234         * win32/gstenumtypes.c:
9235         * win32/gstenumtypes.h:
9236         * win32/gstoptimalscheduler.def:
9237         * win32/gstoptimalscheduler.vcproj:
9238         * win32/gstreamer.def:
9239         * win32/gstspider.def:
9240         * win32/gstspider.vcproj:
9241         * win32/gstversion.h:
9242         * win32/msvc71.sln:
9243
9244 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9245
9246         * gst/gstelement.c: (gst_element_class_init),
9247         (gst_element_no_more_pads):
9248         * gst/gstelement.h:
9249           add gst_element_no_more_pads and the "no-more-pads" signal
9250
9251 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9252
9253         * gst/gstregistry.c: (gst_registry_add_plugin):
9254           refuse to add plugins when a plugin with same name is already
9255           registered. Fixes a bunch of "How to remove plugins?" issues.
9256           May lead to other problems though, let's test
9257
9258 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9259
9260         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
9261         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
9262         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
9263
9264 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9265
9266         * tests/Makefile.am: fix am16 issue
9267
9268 2004-05-09  Benjamin Otte  <otte@gnome.org>
9269
9270         * libs/gst/bytestream/Makefile.am:
9271           we should indeed add .c files to makefiles or they won't be built
9272           (d'oh)
9273
9274 2004-05-08  Benjamin Otte  <otte@gnome.org>
9275
9276         * gst/gstpad.c: (gst_pad_proxy_fixate):
9277           really reduce the set of caps
9278
9279 2004-05-08  Benjamin Otte  <otte@gnome.org>
9280
9281         * tests/Makefile.am:
9282         * tests/spidey_bench.c: (handoff), (main):
9283           add benchmark to test how long spider needs to create a pipeline
9284
9285 2004-05-08  Benjamin Otte  <otte@gnome.org>
9286
9287         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
9288           mark links as unengaged when unnegotiating instead of deactivating.
9289           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
9290
9291 2004-05-08  Benjamin Otte  <otte@gnome.org>
9292
9293         * docs/manual/helloworld.xml:
9294           s/audiosink/osssink (patch by Patrick Guimond)
9295
9296 2004-05-07  David Schleef  <ds@schleef.org>
9297
9298         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
9299         since it contains important stuff.
9300
9301 2004-05-07  David Schleef  <ds@schleef.org>
9302
9303         * testsuite/caps/caps.c: (test3), (main): A check for appending
9304         ANY caps.
9305
9306 2004-05-07  David Schleef  <ds@schleef.org>
9307
9308         * common/m4/as-compiler-flag.m4: Properly quote arguments,
9309         which may contain commas.  Fixes detection of -Wa,-mregnames
9310
9311 2004-05-06  David Schleef  <ds@schleef.org>
9312
9313         Changes to handle compilers that don't have variadic macro
9314         support.  In particular, glib headers define some inlines
9315         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
9316         builds.
9317         * gst/Makefile.am:
9318         * gst/cothreads.c:
9319         * gst/elements/gstfdsink.c:
9320         * gst/elements/gstfdsrc.c:
9321         * gst/elements/gstfilesink.c:
9322         * gst/elements/gstfilesrc.c:
9323         * gst/gst_private.h:
9324         * gst/gstatomic.c:
9325         * gst/gstcaps.c: (gst_caps_append):
9326         * gst/gstcpu.c: (gst_cpuid_i386):
9327         * gst/gstelement.c:
9328         * gst/gsterror.c:
9329         * gst/gstfilter.c:
9330         * gst/gstinfo.h:
9331         * gst/gstprobe.c:
9332         * gst/gstquery.c:
9333         * gst/gstregistry.c:
9334         * gst/gststructure.c:
9335         * gst/gsttaginterface.c:
9336         * gst/gsttrace.c: (gst_trace_new):
9337         * gst/gsttrashstack.c:
9338         * gst/gsturi.c:
9339         * gst/gstvalue.c:
9340         * gst/parse/grammar.y:
9341         * gst/parse/parse.l:
9342         * tools/gst-inspect.c: (main):
9343         * tools/gst-launch.c: (main):
9344         * tools/gst-xmlinspect.c: (PUT_STRING):
9345
9346 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9347
9348         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9349         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9350         * gst/elements/gstfilesrc.h:
9351           send NEW_MEDIA events correctly
9352         * gst/elements/gsttypefindelement.c: (start_typefinding),
9353         (gst_type_find_element_handle_event):
9354           restart typefinding when we get a NEW_MEDIA event
9355         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
9356         (gst_bin_dispose):
9357           don't die when someone removes elements in callbacks
9358         * gst/gstelement.c: (gst_element_change_state):
9359           improve debugging
9360         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
9361           we need a NEW_MEDIA event to engage a link
9362         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
9363           don't g_print debugging stuff
9364         * testsuite/caps/simplify.c: (check_caps):
9365
9366 2004-05-04  Benjamin Otte  <otte@gnome.org>
9367
9368         * gst/parse/grammar.y:
9369           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
9370
9371 2004-05-04  Benjamin Otte  <otte@gnome.org>
9372
9373         * testsuite/caps/renegotiate.c: (main):
9374           improve output in error case
9375
9376 2004-05-04  Benjamin Otte  <otte@gnome.org>
9377
9378         * gst/parse/grammar.y:
9379           fix assert to not trigger when there's no error argument
9380         * gst/parse/parse.l:
9381           fix definition of caps to allow more than two structures
9382         * testsuite/caps/Makefile.am:
9383         * testsuite/caps/renegotiate.c: (main):
9384           it's sinesrc and works in that case
9385
9386 2004-05-04  Wim Taymans  <wim@fluendo.com>
9387
9388         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
9389         (group_dec_link), (gst_opt_scheduler_pad_unlink):
9390         when removing an element from a group, we always need to
9391         decrement the link count that this group had with other 
9392         groups through the element.
9393         added an extra assert to catch inconsistencies when decrementing
9394         the link count.
9395
9396 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9397
9398         * configure.ac:
9399         * docs/gst/Makefile.am:
9400         * docs/gst/gstreamer-sections.txt:
9401         * docs/gst/tmpl/gstcompat.sgml:
9402         * examples/appreader/Makefile.am:
9403         * examples/cutter/Makefile.am:
9404         * examples/events/Makefile.am:
9405         * examples/helloworld/Makefile.am:
9406         * examples/helloworld2/Makefile.am:
9407         * examples/launch/Makefile.am:
9408         * examples/manual/Makefile.am:
9409         * examples/mixer/Makefile.am:
9410         * examples/pingpong/Makefile.am:
9411         * examples/plugins/Makefile.am:
9412         * examples/queue/Makefile.am:
9413         * examples/queue2/Makefile.am:
9414         * examples/queue3/Makefile.am:
9415         * examples/queue4/Makefile.am:
9416         * examples/retag/Makefile.am:
9417         * examples/thread/Makefile.am:
9418         * examples/typefind/Makefile.am:
9419         * examples/xml/Makefile.am:
9420         * gst/Makefile.am:
9421         * gst/autoplug/Makefile.am:
9422         * gst/elements/Makefile.am:
9423         * gst/gstcompat.h:
9424         * gst/indexers/Makefile.am:
9425         * gst/parse/Makefile.am:
9426         * gst/registries/Makefile.am:
9427         * gst/schedulers/Makefile.am:
9428         * libs/gst/bytestream/Makefile.am:
9429         * libs/gst/control/Makefile.am:
9430         * libs/gst/getbits/Makefile.am:
9431         * po/af.po:
9432         * po/az.po:
9433         * po/en_GB.po:
9434         * po/fr.po:
9435         * po/nl.po:
9436         * po/sr.po:
9437         * po/sv.po:
9438         * po/tr.po:
9439         * po/uk.po:
9440         * tests/Makefile.am:
9441         * tests/bufspeed/Makefile.am:
9442         * tests/instantiate/Makefile.am:
9443         * tests/memchunk/Makefile.am:
9444         * tests/muxing/Makefile.am:
9445         * tests/negotiation/Makefile.am:
9446         * tests/probes/Makefile.am:
9447         * tests/sched/Makefile.am:
9448         * tests/seeking/Makefile.am:
9449         * tests/threadstate/Makefile.am:
9450         * testsuite/caps/Makefile.am:
9451         * testsuite/cleanup/Makefile.am:
9452         * testsuite/dlopen/Makefile.am:
9453         * testsuite/dynparams/Makefile.am:
9454         * testsuite/plugin/Makefile.am:
9455         * testsuite/states/Makefile.am:
9456         * tools/Makefile.am:
9457           reorganize compile/link flags to be consistent
9458           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
9459
9460 2004-05-04  David Schleef  <ds@schleef.org>
9461
9462         The "once more, with feeling" check-in.
9463         * testsuite/caps/Makefile.am: dist caps_strings
9464         * testsuite/caps/renegotiate.c: (main): This test triggers a
9465           segfault in the core.  Marking as failing.
9466
9467 2004-05-03  David Schleef  <ds@schleef.org>
9468
9469         * testsuite/caps/deserialize.c: (main): Fix problems noticed
9470           by the build bots.
9471         * testsuite/caps/renegotiate.c: (main): Same.
9472
9473 2004-05-03  David Schleef  <ds@schleef.org>
9474
9475         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
9476
9477 2004-05-03  David Schleef  <ds@schleef.org>
9478
9479         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
9480           variable to find our source file.
9481
9482 2004-05-03  David Schleef  <ds@schleef.org>
9483
9484         * configure.ac:  Link plugins with libgstreamer and dependent
9485           libraries
9486         * testsuite/caps/Makefile.am:
9487         * testsuite/caps/caps_strings:
9488         * testsuite/caps/deserialize.c: (main): Add a little test to slog
9489           through a file of caps strings and test each one
9490
9491 2004-05-04  Benjamin Otte  <otte@gnome.org>
9492
9493         * libs/gst/bytestream/Makefile.am:
9494         * libs/gst/bytestream/adapter.c: 
9495         * libs/gst/bytestream/adapter.h:
9496           add GstAdapter, similar to bytestream, but doesn't require ugly event
9497           handling or uglier loopbased elements
9498
9499 2004-05-03  David Schleef  <ds@schleef.org>
9500
9501         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
9502         * testsuite/caps/erathostenes.c:
9503         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
9504
9505 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9506
9507         * docs/pwg/pwg.xml:
9508           remove hardcoded stylesheet path (duh)
9509         * docs/random/release:
9510         * docs/gst/gstreamer-sections.txt:
9511         * gst/Makefile.am:
9512         * gst/gst.h:
9513         * gst/gst_private.h:
9514         * gst/gstcaps.c:
9515         * gst/gstevent.c:
9516         * gst/gstformat.c:
9517         * gst/gstinfo.c:
9518         * gst/gstinfo.h:
9519         * gst/gstinterface.c:
9520         * gst/gstmemchunk.c:
9521         * gst/gstprobe.c:
9522         * gst/gstquery.c:
9523         * gst/gstregistry.c:
9524         * gst/gstregistrypool.c:
9525         * gst/gststructure.c:
9526         * gst/gsttaginterface.c:
9527         * gst/gstthread.c:
9528         * gst/gsttrace.c:
9529         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
9530         * gst/gsturi.c:
9531         * gst/gstvalue.c:
9532           deprecate gst_info; remove gstlog.h
9533    
9534
9535 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9536
9537         * Makefile.am:
9538         * po/en_GB.po:
9539         * po/sv.po:
9540         * po/uk.po:
9541           updated translations
9542
9543 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9544
9545         * gst/gstbin.c: (gst_bin_dispose):
9546           better debugging
9547
9548 2004-05-03  Johan Dahlin  <johan@gnome.org>
9549
9550         * gst/schedulers/gstoptimalscheduler.c
9551         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
9552         really is a GstElement. Avoids critical when running gst-launch -v
9553         and a oggdemux/decoding pipeline.
9554
9555 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9556
9557         * docs/gst/tmpl/gstpipeline.sgml :
9558         * docs/manual/elements-api.xml :
9559                 doc fix by Patrick Guimond (Protector) from devel ML
9560                 reviewed by ronald
9561
9562 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9563
9564         * docs/gst/Makefile.am :
9565         * docs/libs/Makefile.am :
9566                 apply a patch from Arwed v. Merkatz so that gtk-doc
9567                 generated docs install (same for .devhelp file)
9568                 (fixes part 1 of #138836)
9569
9570 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9571
9572         * docs/faq/dependencies.xml: typo
9573         * docs/faq/getting.xml :
9574             - fix download URL for new gstreamer site
9575             - hide sf.net download page as latest version aren't there
9576             - fix apt URLs
9577             - fill "get via CVS" paragraph (link to dev page on the site)
9578         * docs/faq/general.xml:
9579             hide status tables as they no more exists
9580             change case on plugins license file to reflect reality
9581         * docs/faq/troubleshooting.xml:
9582             remove the wiki question/answer as there is no more wiki
9583
9584 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9585
9586         * gst/gsterror.h:
9587           include the headers needed for declarations used in this header
9588
9589 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9590
9591         * docs/random/uraeus/gstreamer_and_midi.txt :
9592           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
9593           (fixes #132288)
9594
9595 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
9596
9597         reviewed by Benjamin Otte  <otte@gnome.org>
9598
9599         * gst/schedulers/gthread-cothreads.h:
9600           free allocated data for main cothread, too when destroying context
9601           (fixes #141417)
9602
9603 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9604
9605         * docs/manual/goals.xml : remove duplicated paragraph at end 
9606         of doc page (fixes #141448)
9607
9608 2004-04-29  David Schleef  <ds@schleef.org>
9609
9610         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
9611         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
9612
9613 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9614
9615         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
9616           fix property
9617         * gst/gstcaps.c:
9618           fix doc string
9619         * po/POTFILES.in:
9620           rename typefind source file
9621
9622 2004-04-28  David Schleef  <ds@schleef.org>
9623
9624         Several new files from Steve Lhomme's MSVC patch (bug #141317):
9625         * win32/GStreamer.vcproj:
9626         * win32/Makefile:
9627         * win32/config.h:
9628         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
9629         (_trewinddir), (_ttelldir), (_tseekdir):
9630         * win32/dirent.h:
9631         * win32/gst-inspect.vcproj:
9632         * win32/gst-launch.vcproj:
9633         * win32/gst-register.vcproj:
9634         * win32/gstbytestream.vcproj:
9635         * win32/gstelements.vcproj:
9636         * win32/gstoptimalscheduler.vcproj:
9637         * win32/gstspider.vcproj:
9638         * win32/gtchar.h:
9639         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
9640         * win32/mman.h:
9641         * win32/mman.inl:
9642         * win32/msvc71.sln:
9643
9644 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9645
9646         * gst/gst.c: (init_post):
9647         * gst/gstinfo.c:
9648           remove useless _gst_progname stuff
9649         * tools/gst-inspect.c: (print_field), (print_caps):
9650           improve caps output
9651
9652 2004-04-28  David Schleef  <ds@schleef.org>
9653
9654         Disable parsing of a lot of files that aren't part of the
9655         exported API.  Move corresponding template files to old/,
9656         waiting for removal when they don't contain anything
9657         interesting.
9658         * docs/gst/Makefile.am:
9659         * docs/gst/gstreamer-sections.txt:
9660         * docs/gst/tmpl/cothreads.sgml:
9661         * docs/gst/tmpl/cothreads_compat.sgml:
9662         * docs/gst/tmpl/gettext.sgml:
9663         * docs/gst/tmpl/gobject2gtk.sgml:
9664         * docs/gst/tmpl/grammar.tab.sgml:
9665         * docs/gst/tmpl/gst-i18n-app.sgml:
9666         * docs/gst/tmpl/gst-i18n-lib.sgml:
9667         * docs/gst/tmpl/gst_private.sgml:
9668         * docs/gst/tmpl/gstaggregator.sgml:
9669         * docs/gst/tmpl/gstarch.sgml:
9670         * docs/gst/tmpl/gstatomic_impl.sgml:
9671         * docs/gst/tmpl/gstbufferstore.sgml:
9672         * docs/gst/tmpl/gstdata_private.sgml:
9673         * docs/gst/tmpl/gstdisksink.sgml:
9674         * docs/gst/tmpl/gstdisksrc.sgml:
9675         * docs/gst/tmpl/gstelementfactory.sgml:
9676         * docs/gst/tmpl/gstextratypes.sgml:
9677         * docs/gst/tmpl/gstfakesink.sgml:
9678         * docs/gst/tmpl/gstfakesrc.sgml:
9679         * docs/gst/tmpl/gstfdsink.sgml:
9680         * docs/gst/tmpl/gstfdsrc.sgml:
9681         * docs/gst/tmpl/gstfilesink.sgml:
9682         * docs/gst/tmpl/gstfilesrc.sgml:
9683         * docs/gst/tmpl/gsthttpsrc.sgml:
9684         * docs/gst/tmpl/gstidentity.sgml:
9685         * docs/gst/tmpl/gstindexfactory.sgml:
9686         * docs/gst/tmpl/gstmarshal.sgml:
9687         * docs/gst/tmpl/gstmd5sink.sgml:
9688         * docs/gst/tmpl/gstmultidisksrc.sgml:
9689         * docs/gst/tmpl/gstmultifilesrc.sgml:
9690         * docs/gst/tmpl/gstpadtemplate.sgml:
9691         * docs/gst/tmpl/gstpipefilter.sgml:
9692         * docs/gst/tmpl/gstschedulerfactory.sgml:
9693         * docs/gst/tmpl/gstsearchfuncs.sgml:
9694         * docs/gst/tmpl/gstshaper.sgml:
9695         * docs/gst/tmpl/gstspider.sgml:
9696         * docs/gst/tmpl/gstspideridentity.sgml:
9697         * docs/gst/tmpl/gststatistics.sgml:
9698         * docs/gst/tmpl/gsttee.sgml:
9699         * docs/gst/tmpl/gsttimecache.sgml:
9700         * docs/gst/tmpl/gsttypefind.sgml:
9701         * docs/gst/tmpl/gsttypefindfactory.sgml:
9702         * docs/gst/tmpl/gstxmlregistry.sgml:
9703         * docs/gst/tmpl/gthread-cothreads.sgml:
9704         * docs/gst/tmpl/old/cothreads.sgml:
9705         * docs/gst/tmpl/old/cothreads_compat.sgml:
9706         * docs/gst/tmpl/old/gettext.sgml:
9707         * docs/gst/tmpl/old/gobject2gtk.sgml:
9708         * docs/gst/tmpl/old/grammar.tab.sgml:
9709         * docs/gst/tmpl/old/gst-i18n-app.sgml:
9710         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
9711         * docs/gst/tmpl/old/gst_private.sgml:
9712         * docs/gst/tmpl/old/gstaggregator.sgml:
9713         * docs/gst/tmpl/old/gstarch.sgml:
9714         * docs/gst/tmpl/old/gstatomic_impl.sgml:
9715         * docs/gst/tmpl/old/gstbufferstore.sgml:
9716         * docs/gst/tmpl/old/gstdata_private.sgml:
9717         * docs/gst/tmpl/old/gstdisksink.sgml:
9718         * docs/gst/tmpl/old/gstdisksrc.sgml:
9719         * docs/gst/tmpl/old/gstelementfactory.sgml:
9720         * docs/gst/tmpl/old/gstextratypes.sgml:
9721         * docs/gst/tmpl/old/gstfakesink.sgml:
9722         * docs/gst/tmpl/old/gstfakesrc.sgml:
9723         * docs/gst/tmpl/old/gstfdsink.sgml:
9724         * docs/gst/tmpl/old/gstfdsrc.sgml:
9725         * docs/gst/tmpl/old/gstfilesink.sgml:
9726         * docs/gst/tmpl/old/gstfilesrc.sgml:
9727         * docs/gst/tmpl/old/gsthttpsrc.sgml:
9728         * docs/gst/tmpl/old/gstidentity.sgml:
9729         * docs/gst/tmpl/old/gstindexfactory.sgml:
9730         * docs/gst/tmpl/old/gstmarshal.sgml:
9731         * docs/gst/tmpl/old/gstmd5sink.sgml:
9732         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
9733         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
9734         * docs/gst/tmpl/old/gstpadtemplate.sgml:
9735         * docs/gst/tmpl/old/gstpipefilter.sgml:
9736         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
9737         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
9738         * docs/gst/tmpl/old/gstshaper.sgml:
9739         * docs/gst/tmpl/old/gstspider.sgml:
9740         * docs/gst/tmpl/old/gstspideridentity.sgml:
9741         * docs/gst/tmpl/old/gststatistics.sgml:
9742         * docs/gst/tmpl/old/gsttee.sgml:
9743         * docs/gst/tmpl/old/gsttimecache.sgml:
9744         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
9745         * docs/gst/tmpl/old/gstxmlregistry.sgml:
9746         * docs/gst/tmpl/old/gthread-cothreads.sgml:
9747         * docs/gst/tmpl/old/types.sgml:
9748         * docs/gst/tmpl/types.sgml:
9749
9750         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
9751         gtkdoc-scan doesn't like files with the same name in different
9752         directories.
9753         * gst/elements/Makefile.am:
9754         * gst/elements/gstelements.c:
9755         * gst/elements/gsttypefind.c: 
9756         * gst/elements/gsttypefind.h:
9757         * gst/elements/gsttypefindelement.c:
9758         * gst/elements/gsttypefindelement.h:
9759
9760 2004-04-28  David Schleef  <ds@schleef.org>
9761
9762         A bunch of portability fixes, derived from Steve Lhomme's MSVC
9763         patch (bug #141317):
9764         * gst/gst-i18n-lib.h: Allow disabling gettext.
9765         * gst/gstatomic_impl.h: disable warning when it's dumb.
9766         * gst/gstclock.c: fix include
9767         * gst/gstcompat.h: fix variadic macro
9768         * gst/gstinfo.c: fix include
9769         * gst/gstmacros.h: add defines for inlines on MSVC
9770         * gst/gstplugin.c: fix includes
9771         * gst/gstregistry.c: fix includes
9772         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
9773         * gst/gstsystemclock.c: fix include
9774         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
9775         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
9776         * gst/registries/gstxmlregistry.c:
9777         (gst_xml_registry_parse_element_factory): fix use of non-portable
9778         functions
9779         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
9780         * libs/gst/control/dparammanager.h: same
9781
9782 2004-04-28  David Schleef  <ds@schleef.org>
9783
9784         Move a bunch of unused files to old/ with names that are
9785         not case-insensitive-unique.  These files still contain some
9786         useful information that needs to be merged into gstbin.sgml,
9787         etc., so they shouldn't be deleted yet.
9788         * docs/gst/tmpl/GstBin.sgml:
9789         * docs/gst/tmpl/GstBuffer.sgml:
9790         * docs/gst/tmpl/GstCaps.sgml:
9791         * docs/gst/tmpl/GstClock.sgml:
9792         * docs/gst/tmpl/GstCompat.sgml:
9793         * docs/gst/tmpl/GstData.sgml:
9794         * docs/gst/tmpl/GstElement.sgml:
9795         * docs/gst/tmpl/GstEvent.sgml:
9796         * docs/gst/tmpl/GstIndex.sgml:
9797         * docs/gst/tmpl/GstStructure.sgml:
9798         * docs/gst/tmpl/GstTag.sgml:
9799         * docs/gst/tmpl/old/GstBin.sgml:
9800         * docs/gst/tmpl/old/GstBuffer.sgml:
9801         * docs/gst/tmpl/old/GstCaps.sgml:
9802         * docs/gst/tmpl/old/GstClock.sgml:
9803         * docs/gst/tmpl/old/GstCompat.sgml:
9804         * docs/gst/tmpl/old/GstData.sgml:
9805         * docs/gst/tmpl/old/GstElement.sgml:
9806         * docs/gst/tmpl/old/GstEvent.sgml:
9807         * docs/gst/tmpl/old/GstIndex.sgml:
9808         * docs/gst/tmpl/old/GstStructure.sgml:
9809         * docs/gst/tmpl/old/GstTag.sgml:
9810
9811 2004-04-28  David Schleef  <ds@schleef.org>
9812
9813         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
9814         (gst_caps_append), (gst_caps_append_structure),
9815         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
9816         (gst_caps_set_simple), (gst_caps_set_simple_valist),
9817         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
9818         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
9819         (gst_caps_intersect), (gst_caps_normalize),
9820         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
9821         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
9822         * gst/gstcaps.h: use GST_IS_CAPS().
9823
9824 2004-04-26  David Schleef  <ds@schleef.org>
9825
9826         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
9827         assembly.  gcc doesn't handle it correctly. (bug #141083)
9828         * gst/gsttrashstack.h: same
9829
9830 2004-04-25  Benjamin Otte  <otte@gnome.org>
9831
9832         * gst/gstelement.c: (gst_element_change_state):
9833           fix assertion to do an int comparison
9834
9835 2004-04-25  Benjamin Otte  <otte@gnome.org>
9836
9837         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9838           better debugging output on error
9839
9840 2004-04-25  Benjamin Otte  <otte@gnome.org>
9841
9842         * gst/gstcaps.c: (gst_caps_subtract):
9843           fix memleak
9844
9845 2004-04-23  Benjamin Otte  <otte@gnome.org>
9846
9847         * gst/gstvalue.c: (gst_value_compare_buffer),
9848         (_gst_value_initialize):
9849           add comparison function for buffers
9850
9851 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9852
9853         * docs/pwg/pwg.xml:
9854           Just found out that this so-called "ima-wav" format is really
9855           just "dvi adpcm" (according to the MS WAV documentation). So
9856           renaming it. We didn't use it yet anyway.
9857
9858 2004-04-23  Benjamin Otte  <otte@gnome.org>
9859
9860         * gst/gstcaps.c: (gst_caps_is_always_compatible):
9861           call gst_caps_is_subset
9862
9863 2004-04-23  Benjamin Otte  <otte@gnome.org>
9864
9865         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
9866         (gst_caps_is_subset):
9867           add documentation
9868
9869 2004-04-23  Benjamin Otte  <otte@gnome.org>
9870           
9871         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
9872         (gst_caps_structure_subtract), (gst_caps_subtract),
9873         (gst_caps_structure_figure_out_union),
9874         (gst_caps_structure_simplify), (gst_caps_do_simplify):
9875           fix simplifying and subtracting not working correctly with optional
9876           properties
9877           solve assorted problems that make it now simplify ebven more
9878         * docs/gst/tmpl/gstcaps.sgml:
9879         * gst/gstcaps.h:
9880           make gst_caps_do_simplify return a bool to indicate if it simplified
9881         * testsuite/caps/simplify.c: (main):
9882           add more checks. The tests is quite a bit useless right now because
9883           the core is heavily simplifying itself.
9884         * testsuite/caps/caps.h:
9885           fix caps to contain all optional properties
9886
9887 2004-04-22  Benjamin Otte  <otte@gnome.org>
9888
9889         * docs/gst/tmpl/gstcaps.sgml:
9890         * docs/gst/tmpl/gstfilesrc.sgml:
9891         * docs/gst/tmpl/gststructure.sgml:
9892         * docs/gst/tmpl/gstvalue.sgml:
9893           update for recent API changes
9894         * gst/gstcaps.c: (gst_caps_do_simplify):
9895           fix to stop trying with a freed structure
9896         * gst/gstpad.c: (gst_pad_link_fixate):
9897           simplify caps
9898         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
9899           remove C++ comment
9900         * gst/gstpad.h:
9901           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
9902         * gst/gststructure.c: (gst_structure_value_get_generic_type),
9903         (gst_structure_to_string):
9904           keep the correct type when using lists of ranges
9905         * gst/gstvalue.c: (gst_value_list_prepend_value),
9906         (gst_value_list_append_value):
9907           copy the value before adding to the list (d'oh)
9908         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
9909         (gst_value_subtract_int_range_int_range):
9910           handle overflows correctly
9911         * gst/gstvalue.c: (gst_value_subtract_from_list):
9912           fix memleak
9913         * testsuite/caps/caps.h:
9914           add a caps that caused segfaults
9915
9916 2004-04-22  Benjamin Otte  <otte@gnome.org>
9917
9918         * testsuite/refcounting/pad.c: (main):
9919           fix test
9920
9921 2004-04-22  Benjamin Otte  <otte@gnome.org>
9922
9923         * gst/gstcaps.c: (gst_caps_subtract):
9924           allow subtracting ANY and EMPTY from ANY caps
9925
9926 2004-04-22  Benjamin Otte  <otte@gnome.org>
9927
9928         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
9929         (gst_caps_union):
9930           only simplify in functions that create new caps. Simplifying in
9931           gst_caps_append breaks tests.
9932
9933 2004-04-22  Benjamin Otte  <otte@gnome.org>
9934
9935         * gst/gstcaps.c: (gst_caps_structure_simplify):
9936           unset GValue after use
9937         * gst/gstcaps.c: (gst_caps_append), 
9938         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
9939           use gst_caps_simplify (reduces registry size by 30%)
9940         * gst/gstpad.c: (gst_pad_template_new):
9941           don't allow NULL caps
9942
9943 2004-04-22  Benjamin Otte  <otte@gnome.org>
9944
9945         * docs/gst/gstreamer-sections.txt:
9946           add gst_caps_do_simplify
9947         * gst/gstcaps.c:
9948           add documentation for gst_caps_do_simplify
9949         * gst/gstvalue.h:
9950           fix typo in gst_value_register_subtract_func declaration for gst-doc
9951
9952 2004-04-22  Benjamin Otte  <otte@gnome.org>
9953
9954         * gst/gstcaps.c: (gst_caps_from_string_inplace):
9955           fix bug when converting from empty string.
9956         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
9957         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
9958           use gst_caps_new_empty to allocate a new caps. Only that function
9959           allocates memory for caps now.
9960         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
9961         (gst_caps_remove_structure):
9962           add ability to remove one structure (but not to header yet)
9963         * gst/gstcaps.c: (gst_caps_compare_structures),
9964         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
9965         (gst_caps_structure_simplify), (gst_caps_do_simplify),
9966         * gst/gstcaps.h:
9967           add gst_caps_do_simplify that tries to simplify a caps in place.
9968           Deprecate old gst_caps_simplify function.
9969         * testsuite/caps/caps.h:
9970           add caps.h containing a common set of caps to test against.
9971         * testsuite/caps/sets.c: (check_caps), (main):
9972           use it.
9973         * testsuite/caps/.cvsignore:
9974         * testsuite/caps/Makefile.am:
9975         * testsuite/caps/simplify.c: (check_caps), (main):
9976           add test to check correctness and efficency of caps simplification.
9977
9978 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
9979
9980         reviewed by Benjamin Otte  <otte@gnome.org>
9981
9982         * gst/gstparse.c: (_gst_parse_escape):
9983           Free the GString used in _gst_parse_escape()
9984
9985 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9986
9987         * gst/gstpad.c: (gst_pad_link_negotiate):
9988           refuse to link if the link is not possible
9989         * configure.ac:
9990         * testsuite/Makefile.am:
9991         * testsuite/negotiation/.cvsignore:
9992         * testsuite/negotiation/Makefile.am:
9993         * testsuite/negotiation/pad_link.c: (main):
9994           add test that checks the above behaviour
9995
9996 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9997
9998         * docs/gst/gstreamer-sections.txt:
9999           add newly added API
10000
10001 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
10002
10003         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10004         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
10005         (gst_filesrc_open_file), (gst_filesrc_close_file),
10006         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
10007         * gst/elements/gstfilesrc.h:
10008           add support for non-regular files (#140734)
10009
10010 2004-04-21  Benjamin Otte  <otte@gnome.org>
10011
10012         * gst/gstpad.c: (gst_pad_link_fixate):
10013           add sophisticated error checking code to see if fixation functions
10014           did their fixation right
10015
10016 2004-04-21  Benjamin Otte  <otte@gnome.org>
10017
10018         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
10019           check for ANY caps before appending/unioning
10020         * gst/gstcaps.c: (gst_caps_is_subset),
10021         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
10022         (gst_caps_structure_subtract), (gst_caps_subtract):
10023         * gst/gstcaps.h:
10024           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
10025           the API. deprecate gst_caps_is_equal_fixed
10026         * gst/gstpad.c: (gst_pad_try_set_caps):
10027         * gst/gstqueue.c: (gst_queue_link):
10028           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
10029         * gst/gststructure.c: (gst_structure_get_name_id):
10030         * gst/gststructure.h:
10031           add function gst_structure_get_name_id
10032         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
10033         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
10034         (gst_value_subtract_int_range_int_range),
10035         (gst_value_subtract_double_double_range),
10036         (gst_value_subtract_double_range_double),
10037         (gst_value_subtract_double_range_double_range),
10038         (gst_value_subtract_from_list), (gst_value_subtract_list),
10039         (gst_value_can_intersect), (gst_value_subtract),
10040         (gst_value_can_subtract), (gst_value_register_subtract_func),
10041         (_gst_value_initialize):
10042         * gst/gstvalue.h:
10043           add support for subtracting values from each other. Note that
10044           subtracting means subtracting as in set theory. Required for caps
10045           stuff above.
10046         * testsuite/caps/.cvsignore:
10047         * testsuite/caps/Makefile.am:
10048         * testsuite/caps/erathostenes.c: (erathostenes), (main):
10049         * testsuite/caps/sets.c: (check_caps), (main):
10050         * testsuite/caps/subtract.c: (check_caps), (main):
10051           add tests for subtraction and equality code.
10052
10053 2004-04-20  David Schleef  <ds@schleef.org>
10054
10055         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
10056         * gst/indexers/Makefile.am:
10057         * gst/schedulers/Makefile.am:
10058         * libs/gst/bytestream/Makefile.am:
10059         * libs/gst/control/Makefile.am:
10060         * libs/gst/getbits/Makefile.am:
10061
10062 2004-04-20  David Schleef  <ds@schleef.org>
10063
10064         * common/as-libtool.mak: Fine-tune DLL building.
10065         * configure.ac: Link plugins against libgstreamer.  Define plugindir
10066         (like gst-plugins)
10067         * examples/plugins/Makefile.am: remove plugindir
10068         * gst/autoplug/Makefile.am: DLL building fixes
10069         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
10070         Windows.
10071         * gst/elements/gstelements.c: Conditionally disable pipefilter.
10072         * gst/indexers/Makefile.am: DLL building fixes
10073         * gst/schedulers/Makefile.am: DLL building fixes.
10074         * libs/gst/bytestream/Makefile.am: DLL building fixes.
10075         * libs/gst/control/Makefile.am: same
10076         * libs/gst/getbits/Makefile.am: same
10077         * testsuite/Makefile.am: New dlopen directory
10078         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
10079         when dlopened.
10080         * testsuite/dlopen/dlopen_gst.c: (main): same
10081         * testsuite/dlopen/loadgst.c: (do_test): same
10082
10083 2004-04-20  David Schleef  <ds@schleef.org>
10084
10085         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
10086         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
10087
10088 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10089
10090         * gst/gstelement.c: (gst_element_wait),
10091         (gst_element_set_time_delay), (gst_element_change_state):
10092           Use GST_TIME_*
10093
10094 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10095
10096         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
10097         (gst_spider_identity_plug):
10098           improve debugging messages
10099         * gst/gstbin.c: (gst_bin_remove_func):
10100           make sure the state_change function is only called with simple state
10101           transitions
10102
10103 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10104
10105         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
10106         (gst_fakesink_set_property), (gst_fakesink_chain):
10107         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
10108         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
10109         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
10110         * gst/elements/gstidentity.c: (gst_identity_chain),
10111         (gst_identity_set_property):
10112         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
10113         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
10114           add warnings to _set_property for unknown arguments
10115           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
10116
10117 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10118
10119         * Makefile.am:
10120         * docs/manuals.mak:
10121           add .po file download snippet
10122           fix a bug in the doc makefile
10123
10124 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10125
10126         * Makefile.am:
10127         * po/LINGUAS:
10128         * po/en_GB.po:
10129           Added en_GB translation (Gareth Owen)
10130
10131 2004-04-20  Johan Dahlin  <johan@gnome.org>
10132
10133         * gst/gstpad.c (_invent_event): Clean up
10134
10135 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10136
10137         * testsuite/caps/filtercaps.c: (main):
10138           fix test to test things correctly (caps are complicated)
10139
10140 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10141
10142         * testsuite/caps/Makefile.am:
10143         * testsuite/caps/filtercaps.c: (main):
10144           add test (that doesn't work right now, but should)
10145
10146 2004-04-19  David Schleef  <ds@schleef.org>
10147
10148         * configure.ac: Add test for allowing unaligned access.  Add define
10149         to put in gstconfig.h.
10150         * docs/gst/gstreamer-sections.txt: New symbols
10151         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
10152         * docs/gst/tmpl/gstfilesrc.sgml:
10153         * docs/gst/tmpl/gstparse.sgml:
10154         * docs/gst/tmpl/gsttypes.sgml:
10155         * docs/gst/tmpl/gstutils.sgml:
10156         * docs/gst/tmpl/gstvalue.sgml:
10157         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
10158         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
10159         on most !i386/!powerpc architectures.  From Daniel Gazard
10160         <daniel.gazard@free.fr>.  (bug #140156)
10161         * po/af.po: Check in changes made by gettext.
10162         * po/az.po:
10163         * po/fr.po:
10164         * po/nl.po:
10165         * po/sr.po:
10166         * po/sv.po:
10167
10168 2004-04-20  Benjamin Otte  <otte@gnome.org>
10169
10170         * gst/schedulers/entryscheduler.c: 
10171         (gst_entry_scheduler_yield):
10172           refuse to yield when decoupled elements insist on doing that.
10173           At least it's better than crashing
10174
10175 2004-04-19  David Schleef  <ds@schleef.org>
10176
10177         * docs/libs/Makefile.am: Change sinclude to include
10178         * docs/gst/Makefile.am: same
10179         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
10180
10181 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10182
10183         * po/LINGUAS:
10184         * po/uk.po:
10185           Added Ukrainian translation (Maxim V. Dziumanenko)
10186
10187 2004-04-19  Johan Dahlin  <johan@gnome.org>
10188
10189         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
10190         checking here, do it before calling the function.
10191         Clean up, use for loops instead of while loops while iterating
10192         over lists.
10193
10194         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
10195         in debug message.
10196         (gst_spider_create_and_plug): Improve debug message.
10197         General: Replace while loops which iterates over GLists with for
10198         loops. Which are much cleaner, improves readability, especially
10199         for gst_spider_identity_plug
10200
10201         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
10202         fixes bug 140477
10203
10204 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10205
10206         * po/LINGUAS:
10207         * po/tr.po:
10208           Added Turkish translation (Baris Cicek)
10209
10210 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10211
10212         * docs/faq/troubleshooting.xml:
10213           Mention gst-register in the FAQ (fixes 139045).
10214
10215 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10216
10217         * docs/gst/gstreamer-sections.txt:
10218
10219 2004-04-17  Benjamin Otte  <otte@gnome.org>
10220
10221         * gst/gstelement.c: (gst_element_dispose):
10222           simplify
10223         * gst/gstpad.c: (gst_pad_call_chain_function):
10224           don't create loads of events due to bad macro usage
10225
10226 2004-04-16  David Schleef  <ds@schleef.org>
10227
10228         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
10229         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
10230         * gst/gstvalue.c: (gst_value_serialize_buffer),
10231         (gst_value_deserialize_buffer), (gst_type_is_fixed),
10232         (_gst_value_initialize): Create a new function gst_type_is_fixed()
10233         to indicate types that are fixed wrt caps or not.  Switching to
10234         this function fixes (bug #140298).
10235         * gst/gstvalue.h:
10236
10237 2004-04-16  David Schleef  <ds@schleef.org>
10238
10239         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
10240         for GST_UNALIGNED_ACESS, since we essentially know which archs
10241         are ok.
10242
10243 2004-04-17  Benjamin Otte  <otte@gnome.org>
10244
10245         * docs/gst/Makefile.am:
10246           ignore gst/parse directory when building docs (fixes #140205)
10247
10248 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10249
10250         * testsuite/refcounting/mem.c: (vmsize):
10251           do error checking
10252
10253 2004-04-16  Johan Dahlin  <johan@gnome.org>
10254
10255         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
10256         and gst_pad_call_get_function.
10257
10258 2004-04-15  David Schleef  <ds@schleef.org>
10259
10260         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
10261         checks if we can access unaligned memory.
10262         * configure.ac: Use it.
10263
10264 2004-04-16  Benjamin Otte  <otte@gnome.org>
10265
10266         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
10267         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
10268         * gst/elements/gstfilesrc.h:
10269           s/seek_happened/need_discont/ and require discont before sending any
10270           data
10271
10272 2004-04-15  David Schleef  <ds@schleef.org>
10273
10274         * gst/gstvalue.c: (gst_value_serialize_buffer),
10275         (gst_value_deserialize_buffer), (_gst_value_initialize):
10276         Register these types as fundamental types. (bug #140015)
10277
10278 2004-04-16  Benjamin Otte  <otte@gnome.org>
10279
10280         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
10281         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
10282         (gst_pad_pull):
10283           implement enforcing discont events before buffers are passed. This
10284           allows state changes of only some elements and later correctly going
10285           on where they left off (or in short: you can now set audio sinks to
10286           NULL to release the device when the pipeline is paused)
10287         * gst/gstpad.c: (gst_pad_call_chain_function),
10288         (gst_pad_call_get_function):
10289         * gst/gstpad.h:
10290           add gst_pad_call_chain_function and gst_pad_call_get_function for
10291           scheduler interaction. They are required because of the changes
10292           above.
10293         * gst/schedulers/entryscheduler.c: (get_buffer),
10294         (gst_entry_scheduler_chain_wrapper),
10295         (gst_entry_scheduler_get_wrapper),
10296         (gst_entry_scheduler_state_transition),
10297         (gst_entry_scheduler_pad_link):
10298         * gst/schedulers/gstbasicscheduler.c:
10299         (gst_basic_scheduler_chain_wrapper),
10300         (gst_basic_scheduler_src_wrapper),
10301         (gst_basic_scheduler_chainhandler_proxy),
10302         (gst_basic_scheduler_gethandler_proxy),
10303         (gst_basic_scheduler_cothreaded_chain),
10304         (gst_basic_scheduler_chain_elements):
10305         * gst/schedulers/gstoptimalscheduler.c:
10306         (get_group_schedule_function), (pad_clear_queued),
10307         (gst_opt_scheduler_pad_link):
10308           use the new functions instead of calling get/chain-functions
10309           directly.
10310
10311 2004-04-15  David Schleef  <ds@schleef.org>
10312
10313         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
10314         * docs/gst/tmpl/gstinfo.sgml: same
10315         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
10316         gtk-doc put here.
10317         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
10318         * examples/queue/queue.c: (main):  We iterate pipelines, not
10319         bins.  (bug #139996)
10320
10321 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10322
10323         * docs/pwg/advanced-types.xml:
10324           Add MS RLE support. Also document Qt RLE although I have no sample
10325           files for that yet. And document an extra property for ADPCM.
10326
10327 2004-04-15  David Schleef  <ds@schleef.org>
10328
10329         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
10330         (_gst_plugin_fault_handler_setup):  Disable more stuff on
10331         Windows.
10332
10333 2004-04-15  David Schleef  <ds@schleef.org>
10334
10335         * gst/gstinfo.c: (_gst_debug_init): Change some internal
10336         symbol names to not conflict with new gstinfo.h symbols.
10337         * gst/gstinfo.h: Add inline functions for all those crazy
10338         compilers that don't know how to handle variadic macros (MSVC).
10339
10340 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10341
10342         * configure.ac: bump nano to 1
10343
10344 === release 0.8.1 ===
10345
10346 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10347
10348         * NEWS:
10349         * RELEASE:
10350         * configure.ac:
10351           releasing 0.8.1, "Snow Brigade"
10352
10353 2004-04-14  David Schleef  <ds@schleef.org>
10354
10355         * testsuite/Makefile.am: define tests_ignore
10356         * testsuite/Rules: Added new tests_ignore, which get compiled,
10357         but not run (generally because they're inconsistent or have
10358         heisenbugs).  Now we can ensure all the .c files compile in
10359         testsuite/.
10360         * testsuite/bins/Makefile.am: define tests_ignore
10361         * testsuite/bytestream/Makefile.am:
10362         * testsuite/caps/Makefile.am:
10363         * testsuite/clock/Makefile.am:
10364         * testsuite/debug/Makefile.am:
10365         * testsuite/debug/global.c: (gst_debug_log_one),
10366         (gst_debug_log_two): Fix compilation problem.
10367         * testsuite/dynparams/Makefile.am:
10368         * testsuite/elements/Makefile.am:
10369         * testsuite/ghostpads/Makefile.am:
10370         * testsuite/indexers/Makefile.am:
10371         * testsuite/parse/Makefile.am:
10372         * testsuite/plugin/Makefile.am:
10373         * testsuite/refcounting/Makefile.am:
10374         * testsuite/refcounting/element_pad.c: (main): Don't return leak
10375         results, because it's not calculated correctly.
10376         * testsuite/refcounting/pad.c: (main): same
10377         * testsuite/states/Makefile.am:
10378         * testsuite/tags/Makefile.am:
10379         * testsuite/threads/Makefile.am:
10380
10381 2004-04-14  David Schleef  <ds@schleef.org>
10382
10383         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
10384         generating bad code around the cpu detection asm code.
10385
10386 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10387
10388         * tools/gst-inspect.c: (print_element_info):
10389           print numeric version of rank as well, since we added some - 1
10390           rank values to elements
10391
10392 2004-04-13  David Schleef  <ds@schleef.org>
10393
10394         * configure.ac:  Disable various code when compiling for MinGW.
10395         * gst/elements/Makefile.am:
10396         * gst/elements/gstelements.c:
10397         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10398         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
10399         * gst/registries/gstxmlregistry.c: (make_dir):
10400
10401 2004-04-13  David Schleef  <ds@schleef.org>
10402
10403         * gst/Makefile.am:
10404         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
10405         assembly.
10406         * gst/gstcpuid_i386.s: remove
10407
10408 2004-04-13  David Schleef  <ds@schleef.org>
10409
10410         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
10411         seems to think it needs to be done.
10412         * docs/gst/tmpl/gstfakesink.sgml:
10413         * docs/gst/tmpl/gstfakesrc.sgml:
10414         * docs/gst/tmpl/gstfdsink.sgml:
10415         * docs/gst/tmpl/gstfdsrc.sgml:
10416         * docs/gst/tmpl/gstfilesink.sgml:
10417         * docs/gst/tmpl/gstfilesrc.sgml:
10418         * docs/gst/tmpl/gstidentity.sgml:
10419         * docs/gst/tmpl/gstmd5sink.sgml:
10420         * docs/gst/tmpl/gstmultifilesrc.sgml:
10421         * docs/gst/tmpl/gstpipefilter.sgml:
10422         * docs/gst/tmpl/gstshaper.sgml:
10423         * docs/gst/tmpl/gstspider.sgml:
10424         * docs/gst/tmpl/gstspideridentity.sgml:
10425         * docs/gst/tmpl/gststatistics.sgml:
10426         * docs/gst/tmpl/gsttee.sgml:
10427         * docs/gst/tmpl/gsttypefind.sgml:
10428         * docs/gst/tmpl/gstutils.sgml:
10429
10430 2004-04-13  David Schleef  <ds@schleef.org>
10431
10432         * configure.ac: Changes to remove POSIXisms (mmap in this case)
10433         and to build DLLs on Windows.
10434         * gst/Makefile.am:
10435         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
10436         (gst_filesrc_open_file):
10437         * gst/schedulers/Makefile.am:
10438
10439 2004-04-13  David Schleef  <ds@schleef.org>
10440
10441         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
10442         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
10443         fixating lists.
10444
10445 2004-04-12  David Schleef  <ds@schleef.org>
10446
10447         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
10448         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
10449         to using it.
10450         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
10451         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
10452         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
10453         * gst/gststructure.c: (gst_structure_set_valist),
10454         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
10455         support for buffers.
10456         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
10457         intended to be const.
10458         * gst/gsttag.h: same
10459         * gst/gstvalue.c: (gst_value_serialize_buffer),
10460         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
10461         to (de)serialize buffers.
10462         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
10463         * testsuite/caps/string-conversions.c: (main):
10464         * testsuite/caps/value_serialize.c: add new test
10465
10466 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10467
10468         * docs/pwg/advanced-types.xml:
10469           Document MS video 1 (video/x-msvideocodec) mimetype/format.
10470
10471 2004-04-11  Benjamin Otte  <otte@gnome.org>
10472
10473         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
10474           rename categories to basic_*
10475         * gst/schedulers/gstbasicscheduler.c: 
10476         (gst_basic_scheduler_chain_wrapper),
10477         (gst_basic_scheduler_chainhandler_proxy),
10478         (gst_basic_scheduler_gethandler_proxy),
10479         (gst_basic_scheduler_eventhandler_proxy):
10480           debugging category fixes - put common stuff in log category
10481         * gst/schedulers/gstbasicscheduler.c: 
10482         (gst_basic_scheduler_chain_elements):
10483           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
10484           active and linking two active chains
10485
10486 2004-04-10  Benjamin Otte  <otte@gnome.org>
10487
10488         * docs/pwg/intro-preface.xml:
10489           fix dead links and remove reference to Wiki
10490
10491 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10492
10493         * gst/schedulers/gstbasicscheduler.c:
10494           make sure we can switch back to the main function if we're still in
10495           the main function (supposed to fix #139617)
10496         * gst/schedulers/gthread-cothreads.h:
10497           don't throw an error when switching to the same cothread
10498
10499 2004-04-09  Benjamin Otte  <otte@gnome.org>
10500
10501         * gst/gstbin.c: (gst_bin_get_type):
10502         * gst/gstclock.c: (gst_clock_get_type):
10503         * gst/gstindex.c: (gst_index_get_type):
10504         * gst/gstobject.c: (gst_object_get_type),
10505         (gst_signal_object_get_type):
10506         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
10507         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
10508         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
10509         * gst/gstqueue.c: (gst_queue_get_type):
10510         * gst/gstregistry.c: (gst_registry_get_type):
10511         * gst/gstsystemclock.c: (gst_system_clock_get_type):
10512         * gst/gstthread.c: (gst_thread_get_type):
10513           don't use memchunks for these objects, use malloc instead
10514
10515 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10516
10517         * docs/gst/.cvsignore:
10518         * docs/gst/Makefile.am:
10519         * docs/gst/gstreamer-sections.txt:
10520         * docs/gst/tmpl/gstaggregator.sgml:
10521         * docs/gst/tmpl/gstbuffer.sgml:
10522         * docs/gst/tmpl/gstclock.sgml:
10523         * docs/gst/tmpl/gstelement.sgml:
10524         * docs/gst/tmpl/gstfakesink.sgml:
10525         * docs/gst/tmpl/gstfakesrc.sgml:
10526         * docs/gst/tmpl/gstfdsink.sgml:
10527         * docs/gst/tmpl/gstfdsrc.sgml:
10528         * docs/gst/tmpl/gstfilesink.sgml:
10529         * docs/gst/tmpl/gstfilesrc.sgml:
10530         * docs/gst/tmpl/gstidentity.sgml:
10531         * docs/gst/tmpl/gstindex.sgml:
10532         * docs/gst/tmpl/gstinfo.sgml:
10533         * docs/gst/tmpl/gstmd5sink.sgml:
10534         * docs/gst/tmpl/gstmultifilesrc.sgml:
10535         * docs/gst/tmpl/gstpad.sgml:
10536         * docs/gst/tmpl/gstpipefilter.sgml:
10537         * docs/gst/tmpl/gstpipeline.sgml:
10538         * docs/gst/tmpl/gstpluginfeature.sgml:
10539         * docs/gst/tmpl/gstqueue.sgml:
10540         * docs/gst/tmpl/gstregistry.sgml:
10541         * docs/gst/tmpl/gstscheduler.sgml:
10542         * docs/gst/tmpl/gstshaper.sgml:
10543         * docs/gst/tmpl/gstspider.sgml:
10544         * docs/gst/tmpl/gstspideridentity.sgml:
10545         * docs/gst/tmpl/gststatistics.sgml:
10546         * docs/gst/tmpl/gstsystemclock.sgml:
10547         * docs/gst/tmpl/gsttee.sgml:
10548         * docs/gst/tmpl/gstthread.sgml:
10549         * docs/gst/tmpl/gsttypefind.sgml:
10550         * docs/gst/tmpl/gstutils.sgml:
10551           further doc build fixes
10552
10553 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10554
10555         * docs/gst/Makefile.am:
10556           make docs exit on scanning problems
10557           fix nonsrcdir build issues
10558         * docs/gst/gstreamer-sections.txt:
10559           adding stuff from -unused
10560         * gst/gstqueue.h:
10561           create GstQueueSize
10562         * gst/schedulers/cothreads_compat.h:
10563           fix cothread warnings
10564
10565 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10566
10567         * docs/gst/gstreamer-sections.txt:
10568           remove defines deprecated by Benjamin
10569
10570 2004-04-07  Benjamin Otte  <otte@gnome.org>
10571
10572         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10573           when the buffer is complete, don't check if other buffers are needed
10574         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
10575           check that the offset is >0 so we don't try to read before the
10576           beginning of the file
10577         * gst/gstpad.c: (gst_pad_set_pad_template):
10578           sink the template, so we don't end up with 130k pad templates
10579
10580 2004-04-06  Benjamin Otte  <otte@gnome.org>
10581
10582         * gst/autoplug/gstspider.c: (gst_spider_link_add):
10583           don't ref the element, adding already reffed it. And we didn't unref
10584           it later anyway... (huge memleak when you used many spider elements)
10585         * gst/gstelement.c: (gst_element_base_class_finalize):
10586         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
10587         (gst_element_register):
10588         * gst/gsturi.c: (gst_element_make_from_uri):
10589           use gst_object_(un)ref instead of g_object(un)ref
10590
10591 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10592
10593         * gst/gstbuffer.h:
10594           remove macro that wouldn't work anymore because struct member has
10595           been removed.
10596         * gst/schedulers/entryscheduler.c: (schedule_forward):
10597           fix segfault for unconnected pads
10598         
10599 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10600
10601         reviewed by David Schleef <ds@schleef.org>
10602
10603         * gst/gstinfo.h:
10604           *_FORMAT modifiers should require putting a % in front of them for
10605           consistency reasons.
10606
10607 2004-04-05  Colin Walters  <walters@redhat.com>
10608
10609         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
10610         space.
10611
10612 2004-04-05  Benjamin Otte  <otte@gnome.org>
10613
10614         * configure.ac:
10615         * gst/Makefile.am:
10616         * gst/gst_private.h:
10617         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
10618           add support for detecting if GStreamer runs inside valgrind.
10619           requires valgrind (d'oh) and --enable-debug for correct cdetection.
10620           print a big message in valgrind that GStreamer has detected it's
10621           running inside and might now use different code.
10622         * gst/gstmemchunk.c: (populate), (free_area),
10623         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
10624         (gst_mem_chunk_free):
10625           flag memchunks for valgrind, so it can detect leaking of chunks.
10626           This allows detecting leaks of GstBuffer and GstEvent correctly
10627           inside valgrind.
10628
10629 2004-04-05  David Schleef  <ds@schleef.org>
10630
10631         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
10632           jensgr@gmx.net (Jens Granseuer)
10633
10634 2004-04-05  David Schleef  <ds@schleef.org>
10635
10636         * gst/gstbuffer.c: (_gst_buffer_sub_free),
10637         (gst_buffer_default_free), (gst_buffer_default_copy),
10638         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
10639         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
10640         structures in one place.
10641
10642 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10643
10644         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
10645           (GST_TIME_FORMAT, GST_TIME_ARGS)
10646
10647 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10648
10649         * testsuite/elements/Makefile.am:
10650           disable test until it stops breaking make distcheck
10651
10652 2004-04-05  Johan Dahlin  <johan@gnome.org>
10653
10654         * po/sv.po: Updated translation
10655
10656 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10657
10658         * gst/gstplugin.c: (gst_plugin_load_file):
10659           fix segfault for when original plugin was loaded statically
10660
10661 2004-04-05  Benjamin Otte  <otte@gnome.org>
10662
10663         * testsuite/debug/category.c: (main):
10664         * testsuite/debug/commandline.c: (main):
10665         * testsuite/debug/output.c: (main):
10666           fix tests to work again with debugging enabled
10667
10668 2004-04-05  Benjamin Otte  <otte@gnome.org>
10669
10670         * gst/schedulers/gstbasicscheduler.c:
10671         (gst_basic_scheduler_pad_link):
10672           fix to work with recent scheduling changes
10673
10674 2004-04-05  Benjamin Otte  <otte@gnome.org>
10675
10676         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
10677         prepareChangeLog doesn't work when cvs indents):
10678           don't throw an error when no element can be scheduled, there's too
10679           many weird reasons why it doesn't work. Return STOPPED instead.
10680           decoupled elemts' schedulability doesn't depend on bufpens.
10681
10682 2004-04-04  Benjamin Otte  <otte@gnome.org>
10683
10684         * gst/schedulers/gstbasicscheduler.c:
10685         (gst_basic_scheduler_pad_select):
10686           fix uninitialized variable warnings
10687
10688 2004-04-04  Benjamin Otte  <otte@gnome.org>
10689
10690         * gst/gstpad.c: (gst_pad_collect_valist):
10691           fix uninitialized variable warning
10692         * gst/schedulers/entryscheduler.c: (schedule_forward):
10693           fix shadowed variable
10694
10695 2004-04-04  Benjamin Otte  <otte@gnome.org>
10696
10697         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
10698         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
10699         (gst_pad_select):
10700         * gst/gstpad.h:
10701         * gst/gstscheduler.c: (gst_scheduler_pad_select),
10702         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
10703         * gst/gstscheduler.h:
10704           implement gst_pad_collect as replacement for gst_pad_select.
10705           deprecate gst_pad_select and gst_scheduler_(un)lock_element
10706           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
10707           new pad_select, lock and unlock calls.
10708         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
10709         * gst/cothreads.h:
10710         * gst/schedulers/cothreads_compat.h:
10711         * gst/schedulers/gthread-cothreads.h:
10712           remove unused cothread_lock and cothread_unlock calls
10713         * gst/schedulers/entryscheduler.c:
10714         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
10715         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
10716         (gst_entry_scheduler_pad_select):
10717           update to new API
10718         * gst/schedulers/gstbasicscheduler.c:
10719         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
10720         (gst_basic_scheduler_pad_select):
10721           remove useless lock and unlock calls, update pad_select to new API
10722           (untested)
10723         * gst/schedulers/gstoptimalscheduler.c:
10724         (gst_opt_scheduler_class_init):
10725           remove useless select, lock and unlock function calls
10726         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
10727           use gst_pad_collect instead of gst_pad_select
10728
10729 2004-04-04  Benjamin Otte  <otte@gnome.org>
10730
10731         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
10732         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
10733         (schedule_next_element), (print_entry):
10734           add can_schedule_pad to handle element states.
10735           add schedule_forward to select the correct entry to schedule next
10736
10737 2004-04-03  Benjamin Otte  <otte@gnome.org>
10738
10739         * gst/schedulers/entryscheduler.c: 
10740           remove unused variable, fix error inside Rb, fix compile warning in
10741           unreachable code
10742
10743 2004-04-03  Benjamin Otte  <otte@gnome.org>
10744
10745         * gst/schedulers/entryscheduler.c:
10746           completely revamp the inner workings, so it's a lot easier to
10747           understand and extend
10748
10749 2004-04-03  Andy Wingo  <wingo@pobox.com>
10750
10751         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
10752         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
10753         This allows better introspection of pipeline topology.
10754         (add_to_chain): Don't do trickery to put loop elements first;
10755         rather, queue a chain sort by marking the chain as dirty.
10756         (remove_from_chain): Mark the chain dirty.
10757         (sort_chain): New function. Sorts the group list so that terminal
10758         sinks are first. This means elements on the sink side will be
10759         preferentially sscheduled before elements on the src side of the
10760         pipeline.
10761         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
10762         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
10763         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
10764         (group_inc_link): Change argument and variable names to match the
10765         new link structure member names (src and sink).
10766         (group_dec_link): Add some description
10767
10768 2004-04-03  Benjamin Otte  <otte@gnome.org>
10769
10770         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
10771         * gst/gstinfo.h:
10772         * testsuite/debug/category.c: (main):
10773         * testsuite/debug/commandline.c: (main):
10774         * testsuite/debug/output.c: (main):
10775         * testsuite/debug/printf_extension.c: (main):
10776           fix to successfully build and test with --disable-gst-debug
10777           configure switch (fixes #138705)
10778
10779 2004-04-03  Benjamin Otte  <otte@gnome.org>
10780
10781         * docs/pwg/building-boiler.xml:
10782           add cvs login line and s/anonymous/anoncvs/
10783
10784 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
10785
10786         reviewed by Benjamin Otte  <otte@gnome.org>
10787
10788         * gst/gststructure.c: (gst_structure_free):
10789           memleak fix: free fields array (partial fix for #134839)
10790
10791 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10792
10793         * docs/random/ds/0.9-suggested-changes:
10794           Add a note to change handoff use in fakesrc to be usable in
10795           a more generic way (fakesrc should be renamed to appsrc or so).
10796         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
10797           Change signal type to scope, so we can fill the buffer in the
10798           handoff handler (that's the whole use of this signal...).
10799
10800 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10801
10802         * docs/pwg/other-ntoone.xml:
10803           Document muxers and n-to-1 elements.
10804
10805 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
10806
10807         * gst/registries/gstxmlregistry.c
10808         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
10809         determine if a file is a G_MODULE. The old one discards paths
10810         containing "so" somewhere in the middle. My home directory is
10811         called "soto". Go figure...
10812
10813 2004-03-31  David Schleef  <ds@schleef.org>
10814
10815         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
10816         to eventually deprecate gst_buffer_merge().  (bug: #136408)
10817         * gst/gstbuffer.h:
10818
10819 2004-03-31  David Schleef  <ds@schleef.org>
10820
10821         * gst/gstvalue.c: (gst_value_union_int_int_range),
10822         (gst_value_union_int_range_int_range), (gst_value_can_union),
10823         (gst_value_union), (_gst_value_initialize):  Add some union
10824         implementations.  We didn't have any previously.
10825         * testsuite/caps/Makefile.am:
10826         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
10827         (gst_audioscale_getcaps), (test_caps), (main): A little test
10828         that is the same as the caps manipulation in audioscale.
10829
10830 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10831
10832         * docs/faq/general.xml:
10833           add entry about "does gst support format X?"
10834
10835 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10836
10837         * gst/gstthread.c:
10838           fix docs
10839         * gst/gstutils.h:
10840           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
10841
10842 2004-03-30  Benjamin Otte  <otte@gnome.org>
10843
10844         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10845           set the offset of the buffer to the requested offset
10846         * gst/elements/gsttypefind.c: (stop_typefinding):
10847           revert patch 1.18 (which I unfortunately don't know the reason for).
10848           This is needed to allow downstream elements to seek. Otherwise
10849           typefind might overwrite a previous seek by downstream elements.
10850           This lead to errors with id3tag and typefind on some mp3s.
10851         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10852         (gst_entry_scheduler_iterate):
10853           be more verbose when debugging
10854
10855 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10856
10857         * gst/gstcaps.c: (gst_caps_from_string_inplace):
10858           make sure we don't get NULL strings
10859
10860 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10861
10862         * gst/gstcaps.c:
10863         * gst/gstelement.c:
10864         * gst/gstelementfactory.c: (gst_element_factory_get_type):
10865         * gst/gstindex.c: (gst_index_resolver_get_type),
10866         (gst_index_get_type), (gst_index_factory_get_type):
10867         * gst/gstinfo.c:
10868         * gst/gstpad.c:
10869         * gst/gstplugin.c:
10870         * gst/gsturi.c: (gst_uri_handler_get_type):
10871         * gst/gstvalue.c:
10872           first batch of documentation fixes
10873
10874 2004-03-29  David Schleef  <ds@schleef.org>
10875
10876         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
10877         * docs/gst/gstreamer-docs.sgml:  More hacking
10878         * docs/gst/gstreamer-sections.txt:
10879         * docs/gst/tmpl/cothreads_compat.sgml:
10880         * docs/gst/tmpl/gstcaps.sgml:
10881         * docs/gst/tmpl/gstclock.sgml:
10882         * docs/gst/tmpl/gstelement.sgml:
10883         * docs/gst/tmpl/gstevent.sgml:
10884         * docs/gst/tmpl/gstpad.sgml:
10885         * docs/gst/tmpl/gstutils.sgml:
10886         * docs/gst/tmpl/gstxml.sgml:
10887         * docs/gst/tmpl/gthread-cothreads.sgml:
10888         * docs/random/ds/0.9-suggested-changes:
10889         * gst/elements/gstfakesink.h: doc fixes
10890         * gst/elements/gstfakesrc.h: doc fixes
10891         * gst/gstcaps.c: doc fixes
10892         * gst/gstcaps.h: doc fixes
10893         * gst/gstelement.c: doc fixes
10894         * gst/gstelement.h: doc fixes
10895         * gst/gstindex.c: doc fixes
10896         * gst/gstinfo.c: doc fixes
10897         * gst/gstpad.c: doc fixes
10898         * gst/gstpad.h: doc fixes
10899         * gst/gstplugin.c: doc fixes
10900         * gst/gsttypefind.h: doc fixes
10901         * gst/gsturi.c: doc fixes
10902         * gst/gstvalue.c: doc fixes
10903
10904 2004-03-29  Colin Walters  <walters@redhat.com>
10905
10906         * gst/registries/gstxmlregistry.c (get_time)
10907         (plugin_times_older_than_recurse):
10908         Use the result of stat to determine whether a path is a file,
10909         so we don't attempt to opendir() files.
10910
10911 2004-03-29  Benjamin Otte  <otte@gnome.org>
10912
10913         * gst/gstpad.c: (gst_pad_set_explicit_caps):
10914           print caps in debugging output when setting caps failed
10915         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10916         (schedule_next_element), (get_buffer), (run_chainhandler),
10917         (element_may_start), (gst_entry_scheduler_chain_handler),
10918         (gst_entry_scheduler_get_handler),
10919         (gst_entry_scheduler_state_transition),
10920         (gst_entry_scheduler_pad_link):
10921           make this scheduler a testcase for mandatory
10922           discont-before-first-buffer which is needed if we want to allow apps
10923           to release the sound device.
10924           add SCHED_ASSERT macro to print scheduler state before an assertion
10925           triggers.
10926
10927 2004-03-29  Benjamin Otte  <otte@gnome.org>
10928
10929         * COPYING:
10930           replace by LGPL (former COPYING.LIB). The core is completely
10931           licensed LGPL.
10932         * COPYING.LIB:
10933           remove
10934
10935 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10936
10937         * po/af.po:
10938         * po/sv.po:
10939           updated Afrikaans and Swedish
10940
10941 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10942
10943         * po/LINGUAS:
10944         * po/az.po:
10945           adding Azerbaijani (Mətin Əmirov)
10946
10947 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
10948
10949         * gst/gstelement.h: 
10950         * gst/gstelement.c (gst_element_set_time_delay): New function for
10951         setting element time taking into account a hardware buffering
10952         delay.
10953         (gst_element_set_time): Now just an invocation of
10954         gst_element_set_time_delay.
10955         * gst/gstclock.h: 
10956         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
10957         allowing to set event times in the future.
10958         (gst_clock_get_event_time): Now just an invocation of
10959         gst_clock_get_event_time_delay.
10960
10961 2004-03-28  Benjamin Otte  <otte@gnome.org>
10962
10963         * gst/gstbin.c: (gst_bin_set_element_sched),
10964         (gst_bin_unset_element_sched):
10965           don't add decoupled elements to schedulers - otherwise it's
10966           impossible to control if a link to a decoupled element was already
10967           removed from a scheduler or not.
10968         * gst/schedulers/cothreads_compat.h:
10969         * gst/schedulers/gthread-cothreads.h:
10970           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
10971           is no "unused" warning.
10972         * gst/schedulers/Makefile.am:
10973         * gst/schedulers/entryscheduler.c:
10974           add new scheduler, based on ideas from talking to David and Martin.
10975           It's supposed to be small and correct. Currently it's also slow (but
10976           it's not noticable)
10977         * examples/retag/retag.c: (main):
10978         * testsuite/bytestream/test1.c: (main):
10979           fix missing NULLs at end of variadic functions
10980         * testsuite/elements/.cvsignore:
10981           update
10982
10983 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
10984
10985         * gst/gstevent.h:
10986         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
10987
10988 2004-03-25  David Schleef  <ds@schleef.org>
10989
10990         * docs/gst/gstreamer-sections.txt:  More doc hacking.
10991         * docs/gst/tmpl/gstaggregator.sgml:
10992         * docs/gst/tmpl/gstautoplugfactory.sgml:
10993         * docs/gst/tmpl/gstbin.sgml:
10994         * docs/gst/tmpl/gstbuffer.sgml:
10995         * docs/gst/tmpl/gstbufferstore.sgml:
10996         * docs/gst/tmpl/gstfakesink.sgml:
10997         * docs/gst/tmpl/gstfakesrc.sgml:
10998         * docs/gst/tmpl/gstmd5sink.sgml:
10999         * docs/gst/tmpl/gstreamer-unused.sgml:
11000         * docs/gst/tmpl/gstsearchfuncs.sgml:
11001         * docs/gst/tmpl/gstshaper.sgml:
11002         * docs/gst/tmpl/gstspider.sgml:
11003         * docs/gst/tmpl/gsttee.sgml:
11004         * docs/gst/tmpl/gstutils.sgml:
11005         * docs/gst/tmpl/gstvalue.sgml:
11006         * docs/gst/tmpl/gstxml.sgml:
11007         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
11008         and we don't support it.
11009         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
11010         (gst_use_threads), (gst_has_threads): same
11011         * gst/gstthreaddummy.c: same
11012         * gst/autoplug/gstspider.c: Make gst_spider_details static.
11013         * gst/autoplug/gstspider.h: same
11014         * gst/elements/gstaggregator.h: Remove bogus function from header
11015         * gst/elements/gstfakesink.h: same
11016         * gst/elements/gstfakesrc.h: same
11017         * gst/elements/gstmd5sink.h: same
11018         * gst/elements/gstshaper.h: same
11019         * gst/elements/gsttee.h: same
11020         * gst/gstbin.c: doc fixes
11021         * gst/gstbin.h: Remove unused definition.
11022         * gst/gstbuffer.c: doc fixes
11023         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
11024         * gst/gstfilter.c: doc fixes
11025         * gst/gsttag.c: doc fixes
11026         * gst/gstvalue.c: doc fixes
11027
11028 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11029
11030         * docs/pwg/advanced-types.xml:
11031           Document typefinding.
11032         * docs/pwg/other-oneton.xml:
11033           Document one-to-n elements, demuxers and parsers.
11034
11035 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
11036
11037         reviewed by: David Schleef  <ds@schleef.org>
11038
11039         * configure.ac: Check bison version (bug #127838)
11040
11041 2004-03-25  David Schleef  <ds@schleef.org>
11042
11043         * docs/gst/gstreamer-docs.sgml: More fine tuning.
11044         * docs/gst/gstreamer-sections.txt:
11045         * docs/gst/tmpl/gstautoplug.sgml:
11046         * docs/gst/tmpl/gststaticautoplug.sgml:
11047         * docs/gst/tmpl/gststaticautoplugrender.sgml:
11048         * docs/gst/tmpl/gstutils.sgml:
11049         * docs/gst/tmpl/gstxml.sgml:
11050
11051 2004-03-24  David Schleef  <ds@schleef.org>
11052
11053         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
11054         manual being such complete crap, that I decided to do major
11055         hacking of it.  This checkin replaces any fine tuning that
11056         may have been done previously, with the benefit of actually
11057         being complete for much of the API that was changed since
11058         0.6.  Further fine tuning will occur shortly.  (bug #134721)
11059         * docs/gst/gstreamer-sections.txt:
11060         * docs/gst/tmpl/GstBin.sgml:
11061         * docs/gst/tmpl/GstBuffer.sgml:
11062         * docs/gst/tmpl/GstCaps.sgml:
11063         * docs/gst/tmpl/GstClock.sgml:
11064         * docs/gst/tmpl/GstCompat.sgml:
11065         * docs/gst/tmpl/GstData.sgml:
11066         * docs/gst/tmpl/GstElement.sgml:
11067         * docs/gst/tmpl/GstEvent.sgml:
11068         * docs/gst/tmpl/GstIndex.sgml:
11069         * docs/gst/tmpl/GstStructure.sgml:
11070         * docs/gst/tmpl/GstTag.sgml:
11071         * docs/gst/tmpl/cothreads.sgml:
11072         * docs/gst/tmpl/cothreads_compat.sgml:
11073         * docs/gst/tmpl/gettext.sgml:
11074         * docs/gst/tmpl/grammar.tab.sgml:
11075         * docs/gst/tmpl/gst-i18n-app.sgml:
11076         * docs/gst/tmpl/gst-i18n-lib.sgml:
11077         * docs/gst/tmpl/gst.sgml:
11078         * docs/gst/tmpl/gst_private.sgml:
11079         * docs/gst/tmpl/gstaggregator.sgml:
11080         * docs/gst/tmpl/gstarch.sgml:
11081         * docs/gst/tmpl/gstatomic.sgml:
11082         * docs/gst/tmpl/gstatomic_impl.sgml:
11083         * docs/gst/tmpl/gstbin.sgml:
11084         * docs/gst/tmpl/gstbuffer.sgml:
11085         * docs/gst/tmpl/gstbufferstore.sgml:
11086         * docs/gst/tmpl/gstcaps.sgml:
11087         * docs/gst/tmpl/gstclock.sgml:
11088         * docs/gst/tmpl/gstcompat.sgml:
11089         * docs/gst/tmpl/gstconfig.sgml:
11090         * docs/gst/tmpl/gstcpu.sgml:
11091         * docs/gst/tmpl/gstdata.sgml:
11092         * docs/gst/tmpl/gstdata_private.sgml:
11093         * docs/gst/tmpl/gstelement.sgml:
11094         * docs/gst/tmpl/gstenumtypes.sgml:
11095         * docs/gst/tmpl/gsterror.sgml:
11096         * docs/gst/tmpl/gstevent.sgml:
11097         * docs/gst/tmpl/gstfakesink.sgml:
11098         * docs/gst/tmpl/gstfakesrc.sgml:
11099         * docs/gst/tmpl/gstfilesink.sgml:
11100         * docs/gst/tmpl/gstfilter.sgml:
11101         * docs/gst/tmpl/gstindex.sgml:
11102         * docs/gst/tmpl/gstinfo.sgml:
11103         * docs/gst/tmpl/gstinterface.sgml:
11104         * docs/gst/tmpl/gstlog.sgml:
11105         * docs/gst/tmpl/gstmacros.sgml:
11106         * docs/gst/tmpl/gstmarshal.sgml:
11107         * docs/gst/tmpl/gstmd5sink.sgml:
11108         * docs/gst/tmpl/gstmultifilesrc.sgml:
11109         * docs/gst/tmpl/gstobject.sgml:
11110         * docs/gst/tmpl/gstpad.sgml:
11111         * docs/gst/tmpl/gstparse.sgml:
11112         * docs/gst/tmpl/gstpipeline.sgml:
11113         * docs/gst/tmpl/gstplugin.sgml:
11114         * docs/gst/tmpl/gstpluginfeature.sgml:
11115         * docs/gst/tmpl/gstqueue.sgml:
11116         * docs/gst/tmpl/gstreamer-unused.sgml:
11117         * docs/gst/tmpl/gstregistry.sgml:
11118         * docs/gst/tmpl/gstregistrypool.sgml:
11119         * docs/gst/tmpl/gstscheduler.sgml:
11120         * docs/gst/tmpl/gstsearchfuncs.sgml:
11121         * docs/gst/tmpl/gstshaper.sgml:
11122         * docs/gst/tmpl/gstspider.sgml:
11123         * docs/gst/tmpl/gstspideridentity.sgml:
11124         * docs/gst/tmpl/gststructure.sgml:
11125         * docs/gst/tmpl/gstsystemclock.sgml:
11126         * docs/gst/tmpl/gsttag.sgml:
11127         * docs/gst/tmpl/gsttaginterface.sgml:
11128         * docs/gst/tmpl/gsttee.sgml:
11129         * docs/gst/tmpl/gstthread.sgml:
11130         * docs/gst/tmpl/gsttrace.sgml:
11131         * docs/gst/tmpl/gsttrashstack.sgml:
11132         * docs/gst/tmpl/gsttypefind.sgml:
11133         * docs/gst/tmpl/gsttypes.sgml:
11134         * docs/gst/tmpl/gsturi.sgml:
11135         * docs/gst/tmpl/gsturitype.sgml:
11136         * docs/gst/tmpl/gstutils.sgml:
11137         * docs/gst/tmpl/gstvalue.sgml:
11138         * docs/gst/tmpl/gstversion.sgml:
11139         * docs/gst/tmpl/gstxml.sgml:
11140         * docs/gst/tmpl/gstxmlregistry.sgml:
11141         * docs/gst/tmpl/gthread-cothreads.sgml:
11142         * docs/gst/tmpl/types.sgml:
11143
11144 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11145
11146         * docs/pwg/other-sink.xml:
11147         * docs/pwg/other-source.xml:
11148           Documentation on how to write source and sink elements. Other
11149           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
11150           manager, autoplugger) are all still pending.
11151
11152 2004-03-25  Benjamin Otte  <otte@gnome.org>
11153
11154         * testsuite/elements/Makefile.am:
11155         * testsuite/elements/gst-compprep-check:
11156           add check to make sure gst-compprep works
11157         * testsuite/elements/gst-inspect-check.in:
11158           improve initialization output
11159         * testsuite/Makefile.am:
11160         * testsuite/gst-inspect-check:
11161           remove old file
11162
11163 2004-03-24  David Schleef  <ds@schleef.org>
11164
11165         * testsuite/elements/Makefile.am:
11166         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
11167         to the testsuite.
11168
11169 2004-03-24  Benjamin Otte  <otte@gnome.org>
11170
11171         * libs/gst/control/dparam.c: (gst_dparam_attach),
11172         (gst_dparam_detach):
11173         * libs/gst/control/dparammanager.c: (gst_dpman_init):
11174           fix lvalue casts for real
11175
11176 2004-03-24  Benjamin Otte  <otte@gnome.org>
11177
11178         * gst/schedulers/gstbasicscheduler.c:
11179         (gst_basic_scheduler_src_wrapper):
11180         * gst/schedulers/gstoptimalscheduler.c:
11181         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
11182         (pad_clear_queued), (gst_opt_scheduler_add_element),
11183         (gst_opt_scheduler_remove_element):
11184           fix GStreamer to not have issues with lvalue casts anymore (fixes
11185           #136841)
11186
11187 2004-03-24  Benjamin Otte  <otte@gnome.org>
11188
11189         * gst/gstelement.c:
11190           add documentation about a gobject quirk where the object hasn't the
11191           correct class pointer set on initialization
11192         * gst/schedulers/gstbasicscheduler.c:
11193         (gst_basic_scheduler_src_wrapper):
11194           make sure to not run into an infinite loop
11195
11196 2004-03-22  Benjamin Otte  <otte@gnome.org>
11197
11198         * gst/gstutils.c: (gst_util_dump_mem):
11199         * gst/gstutils.h:
11200           first argument of gst_util_dump_mem should be const
11201
11202 2004-03-22  Johan Dahlin  <johan@gnome.org>
11203
11204         * gst/gstvalue.h: Clean up a little bit.
11205
11206 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
11207
11208         reviewed by Benjamin Otte  <otte@gnome.org>
11209
11210         * gst/autoplug/gstspider.c: (gst_spider_dispose):
11211         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
11212         (gst_aggregator_class_init), (gst_aggregator_init):
11213         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
11214         (gst_filesrc_dispose), (gst_filesrc_set_location):
11215         * gst/elements/gstidentity.c: (gst_identity_finalize),
11216         (gst_identity_class_init), (gst_identity_chain):
11217         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11218         * gst/elements/gststatistics.c: (gst_statistics_finalize),
11219         (gst_statistics_class_init):
11220         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
11221         (gst_tee_get_property):
11222           clean up used memory in this elements correctly on teardown (closes
11223           #137279)
11224
11225 2004-03-20  Colin Walters  <walters@redhat.com>
11226
11227         * gst/registries/gstxmlregistry.c:
11228         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
11229         registry saving atomic.
11230
11231 2004-03-20  Colin Walters  <walters@redhat.com>
11232
11233         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
11234         Just use
11235         access() instead of actually creating and deleting files.
11236
11237 2004-03-18  David Schleef  <ds@schleef.org>
11238
11239         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
11240         (bug #137625)
11241
11242 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11243
11244         * po/sv.po: updated translation (Christian Rose)
11245
11246 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11247
11248         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
11249         (gst_filesink_get_query_types), (_do_init),
11250         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
11251           return FALSE silently
11252         * po/af.po: updated translation (Petri Jooste)
11253
11254 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11255
11256         * Makefile.am:
11257         * configure.ac:
11258           dist common properly
11259         * po/af.po:
11260         * po/fr.po:
11261         * po/nl.po:
11262         * po/sr.po:
11263         * po/sv.po:
11264           refreshing translations
11265
11266 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11267
11268         * po/LINGUAS:
11269         * po/sv.po:
11270         * po/af.po:
11271           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
11272
11273 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11274
11275         * Makefile.am: use common/release.mak
11276
11277 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11278
11279         * docs/faq/gst-uninstalled:
11280           adding gst-monkeysaudio to the list of possible plugin dirs
11281
11282 2004-03-16  David Schleef  <ds@schleef.org>
11283
11284         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
11285         (gst_init_check_with_popt_table):  Fix some gettext strings to
11286         make them easier to translate.  Required making the strings
11287         non-const.
11288
11289 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11290
11291         * configure.ac: bump nano to 1
11292
11293 === release 0.8.0 ===
11294
11295 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11296
11297         * configure.ac: release 0.8.0, "Executive Slacks"
11298
11299 2004-03-16  Johan Dahlin  <johan@gnome.org>
11300
11301         * gst/schedulers/gstoptimalscheduler.c
11302         (gst_opt_scheduler_pad_unlink): Remove double ;,
11303         spotted by Scott Wheeler
11304
11305 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11306
11307         * configure.ac: bump libtool version
11308
11309 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11310
11311         * gst/gstcaps.h:
11312         * gst/gststructure.h:
11313           add reserved padding
11314
11315 2004-03-15  Benjamin Otte  <otte@gnome.org>
11316
11317         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
11318           set the first parameter for select call correctly.
11319           (fixes #137230)
11320
11321 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11322
11323         * *.c,*.h: don't mix tabs and spaces
11324
11325 2004-03-15  Johan Dahlin  <johan@gnome.org>
11326
11327         * gst/schedulers/gstoptimalscheduler.c
11328         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
11329         crash on MPEG playback. My boolean arithmetic is a bit rusty.
11330
11331         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
11332         
11333 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11334
11335         * testsuite/Rules:
11336           fix gst-register rules
11337
11338 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11339
11340         * testsuite/Rules:
11341           use versioned gst-register
11342
11343 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11344
11345         * docs/libs/gstreamer-libs-sections.txt:
11346           remove </SUBSECTION>
11347         * gst/gstplugin.c:
11348         * gst/gstregistry.c: (gst_registry_add_plugin):
11349         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
11350         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
11351           add debugging and fix some comment blocks
11352
11353 2004-03-15  Johan Dahlin  <johan@gnome.org>
11354
11355         * *.h: Revert indent changes.
11356         
11357 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
11358
11359         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
11360           g_error_free the g_error
11361         * tools/gst-feedback-m.m:
11362           check for other versions of gstreamer
11363         * tools/gst-indent:
11364           use sh, not bash
11365
11366 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
11367
11368         * tools/gst-register.c: do not spill paths when registries are not
11369           writable, until we fix the "user running gst-register" case.
11370
11371 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11372
11373         * *.c, *.h: commit of gst-indent run on core
11374
11375 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11376
11377         * tools/gst-indent:
11378         * tools/Makefile.am:
11379           add our indentation style as a script
11380
11381 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11382
11383         * po/sr.po:
11384         * po/LINGUAS:
11385           added Serbian translation
11386
11387 2004-03-13  Benjamin Otte  <otte@gnome.org>
11388
11389         * gst/gstelement.c:
11390           add documentation note about gst_element_found_tags_for_pad not
11391           being usable in getfunctions. (see #137042)
11392
11393 2004-03-12  David Schleef  <ds@schleef.org>
11394
11395         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
11396         change API right now!  Readd gst_caps_is_simple() macro.
11397         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
11398         uninitialized variable.  I'd bet this caused crashes.
11399         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
11400
11401 2004-03-12  Johan Dahlin  <johan@gnome.org>
11402
11403         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
11404         * gst/gstcaps.h: Clean up
11405
11406         * gst/gst.c (init_post): call gst_caps_get_type() instead of
11407         _gst_caps_initalize()
11408
11409         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
11410         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
11411
11412         * gst/gststructure.c (gst_structure_get_type): Ditto
11413
11414         * gst/gststructure.h: Ditto
11415         
11416 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11417
11418         * gst/gstqueue.c: (gst_queue_init):
11419           Reset default max. values in queues. Reason is simply to avoid
11420           braindead use. If you want wider values, use the properties. The
11421           default is supposed to always work. Wider values would make this
11422           beast a memory hog by default (250 full-PAL RGB32 video frames?
11423           That's 440 MB! No thank you).
11424
11425 2004-03-10  David Schleef  <ds@schleef.org>
11426
11427         * tools/gst-run.c: (main):  Fix crash when no relevant tools
11428         were found.  (bug #136793)
11429
11430 2004-03-10  Johan Dahlin  <johan@gnome.org>
11431
11432         * gst/schedulers/gstoptimalscheduler.c
11433         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
11434         links to elements within the same group, so we can finally remove
11435         that annoying warning. Refactor the code a little bit
11436         (group_dec_links_for_element): Split out
11437
11438 2004-03-09  David Schleef  <ds@schleef.org>
11439
11440         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
11441         (bug #134863)
11442
11443 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11444
11445         * configure.ac: first bug fix due to major/minor bump
11446
11447 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11448
11449         * configure.ac: bump nano to 1
11450
11451 === release 0.7.6 ===
11452
11453 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11454
11455         * NEWS:
11456         * RELEASE:
11457         * configure.ac:
11458           releasing 0.7.6, "Almost"
11459         * po/fr.po:
11460         * po/nl.po:
11461         * tools/Makefile.am:
11462         * tools/gst-feedback-m.m:
11463           unversioned source
11464
11465 2004-03-09  Johan Dahlin  <johan@gnome.org>
11466
11467         Reviewed by: Thomas Vander Stichele
11468
11469         * gst/gstelement.c (gst_element_class_init): register second
11470         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
11471         language bindings can (de)marshall correctly.
11472
11473         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
11474
11475         * gst/gsterror.c (gst_g_error_get_type): New function
11476
11477         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
11478         with VOID:OBJECT,OBJECT,STRING 
11479
11480 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
11481
11482         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
11483         Free a leaked g_timer on early returns.
11484
11485 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11486
11487         * docs/pwg/advanced-types.xml:
11488           Add cinepak description.
11489
11490 2004-03-07  David Schleef  <ds@schleef.org>
11491
11492         * docs/random/mimetypes:  Added cinepak description
11493
11494 2004-03-07  Andy Wingo  <wingo@pobox.com>
11495
11496         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
11497
11498         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
11499         there are no links to other groups when a group is destroyed.
11500         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
11501         removed from a group, make sure the link count to elements linked
11502         to other pads is appropriately decremented. This really fixes
11503         #135672.
11504
11505         The 1.60->1.61 patch has been reapplied in light of this fix.
11506
11507         * gst/gstelement.c (gst_element_dispose): Really protect against
11508         multiple invocations this time.
11509
11510 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11511
11512         * docs/gst/gstreamer-sections.txt:
11513         * docs/gst/tmpl/gsttag.sgml:
11514           remove some deprecated functions, document some existing ones
11515         * gst/gsttag.c: (gst_tag_get_flag):
11516         * gst/gsttag.h:
11517           add accessor function
11518
11519 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11520
11521         * docs/gst/gstreamer-sections.txt:
11522         * docs/gst/tmpl/gsttag.sgml:
11523         * docs/gst/tmpl/gstxml.sgml:
11524         * gst/gsttag.c: (gst_tag_get_flag):
11525         * gst/gsttag.h:
11526
11527 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
11528
11529         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
11530         leak
11531
11532 2004-03-05  David Schleef  <ds@schleef.org>
11533
11534         * REQUIREMENTS: Add bison and flex.
11535         * configure.ac: Fix comment about bison.
11536         * docs/random/ds/0.9-suggested-changes: yer ma
11537         * tools/gst-inspect.c: (print_element_info):  Fix warning.
11538
11539 2004-03-05  Benjamin Otte  <otte@gnome.org>
11540
11541         * gst/gstelement.c: (gst_element_error_full):
11542           revert recent recursive state changing commit - messing with other
11543           elements' states is evil and should be done by apps only.
11544
11545 2004-03-05  Benjamin Otte  <otte@gnome.org>
11546
11547         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
11548           check for empty intersection instead of NULL caps
11549         (gst_element_get_compatible_pad_filtered):
11550           remove old workaround that is only a bug nowadays
11551
11552 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11553
11554         * gst/gstelement.c: (gst_element_error_full):
11555           make elements try to recursively change state to PAUSED on all
11556           parents after an error to suppress ensuing warnings
11557         * gst/parse/grammar.y:
11558           make it check if it was able to sync the state, and throw an error
11559           if not, so stuff like
11560           oggdemux ! vorbisdec ! osssink gets caught
11561
11562 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11563
11564         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
11565           it contains lib64; use AS_AC_EXPAND to handle it properly
11566
11567 2004-03-05  David Schleef  <ds@schleef.org>
11568
11569         * gst/gstcpuid_i386.s:  Remove unused code
11570         * libs/gst/getbits/getbits.c: (gst_getbits_init),
11571         (gst_getbits_newbuf): Remove MMX code
11572         * libs/gst/getbits/getbits.h: Remove MMX code
11573
11574 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
11575
11576         * debian/.cvsignore:
11577         * debian/README.Debian:
11578         * debian/changelog:
11579         * debian/control:
11580         * debian/control.in:
11581         * debian/copyright:
11582         * debian/gstreamer-core-libs-dev.files:
11583         * debian/gstreamer-core-libs.files:
11584         * debian/gstreamer-core.files:
11585         * debian/gstreamer-core.postinst:
11586         * debian/gstreamer-core.postrm:
11587         * debian/gstreamer-doc.files:
11588         * debian/gstreamer-doc.links:
11589         * debian/gstreamer-doc.lintian:
11590         * debian/gstreamer-runtime.files:
11591         * debian/gstreamer-runtime.manpages:
11592         * debian/gstreamer-runtime.postinst:
11593         * debian/gstreamer-runtime.postrm:
11594         * debian/gstreamer-tools.files:
11595         * debian/gstreamer-tools.manpages:
11596         * debian/libgstreamer-dev.files:
11597         * debian/libgstreamer0.4.1.files:
11598         * debian/libgstreamerVERSION.files:
11599         * debian/rules:
11600         Debian package info not maintained here.
11601
11602 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11603
11604         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11605         * gst/gstbin.c: (gst_bin_class_init):
11606         * gst/gstelement.c: (gst_element_class_init):
11607         * gst/gstindex.c: (gst_index_class_init):
11608         * gst/gstobject.c: (gst_object_class_init),
11609         (gst_signal_object_class_init):
11610         * gst/gstpad.c: (gst_pad_template_class_init):
11611         * gst/gstregistry.c: (gst_registry_class_init):
11612         * gst/gsturi.c: (gst_uri_handler_base_init):
11613         * gst/gstxml.c: (gst_xml_class_init):
11614         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11615         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
11616           make all signal names use dashes instead of underscore
11617
11618 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11619
11620         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
11621
11622 2004-03-03  Benjamin Otte  <otte@gnome.org>
11623
11624         * gst/schedulers/gstoptimalscheduler.c:
11625           revert last commit by Andy Wingo. It causes segfaults on unreffing
11626           in Rhythmbox. (see bug #135672)
11627
11628 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11629
11630         * po/fr.po: fix typo
11631
11632 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11633
11634         * tools/gst-inspect.c: (main): 
11635         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
11636
11637 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11638
11639         * configure.ac:
11640           get GLIB_ONLY and POPT flags for the nonversioned binaries
11641         * tools/Makefile.am:
11642           use them
11643
11644 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11645
11646         * gst/gst.c: (init_post):
11647           change so that GST_REGISTRY now is where the global registry gets
11648           saved, since that is where plugins now get attached to first, and
11649           spilled over to the user registry.  Note that in the case of using
11650           GST_REGISTRY env var, we don't want to affect any real registries
11651           beyond the one given by this var, and thus we don't set a user
11652           registry to spill to.  So make sure GST_REGISTRY is writable.
11653
11654 2004-03-01  David Schleef  <ds@schleef.org>
11655
11656         * AUTHORS:  Added some names.  Add yourself if you're missing.
11657
11658 2004-03-01  David Schleef  <ds@schleef.org>
11659
11660         * MAINTAINERS: Add
11661
11662 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
11663
11664         * configure.ac:
11665           remove whitespace
11666         * docs/gst/tmpl/gstbuffer.sgml:
11667         * docs/gst/tmpl/gstdata.sgml:
11668         * docs/gst/tmpl/gstreamer-unused.sgml:
11669         * docs/gst/tmpl/gstxml.sgml:
11670           doc update
11671         * docs/manuals.mak:
11672           add a FIXME
11673         * docs/pwg/intro-preface.xml:
11674         * docs/pwg/pwg.xml:
11675           remove GNOME
11676         * gst/gst.c: (init_post):
11677           try GST_PLUGIN_PATH paths for the _global_registry first
11678         * gst/gstelement.h:
11679           add the error message as well, otherwise (null) debug info doesn't
11680           make much sense
11681         * tools/gst-register.c: (main):
11682           spill paths to next registry if this registry is not writable
11683         * po/fr.po:
11684         * po/nl.po:
11685           translation updates
11686
11687 2004-03-01  Johan Dahlin  <johan@gnome.org>
11688
11689         * gst/gstbuffer.c (_gst_buffer_initialize): 
11690         * gst/gstdata.c (gst_data_get_type): 
11691         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
11692         instead of ref, since some applications that uses GBoxed
11693         routines depends on a function that actually returns a copy.
11694
11695 2004-02-27  Benjamin Otte  <otte@gnome.org>
11696
11697         * gst/gstbuffer.h:
11698           remove gst_buffer_free, use gst_data_unref
11699         * gst/gstdata.c: (gst_data_get_type):
11700           use refcounting in GstData GBoxed registration
11701         * gst/gstdata.h:
11702           remove gst_data_free, use gst_data_unref
11703
11704 2004-02-27  Johan Dahlin  <johan@gnome.org>
11705
11706         * gst/gstdata.c (gst_data_get_type): New function, register
11707         GstData as a GBoxed type.
11708
11709         * gst/gstdata.h (GST_TYPE_DATA): New macro
11710
11711 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
11712
11713         * Makefile.am:
11714         * gstreamer.spec.in:
11715           put back RELEASE
11716         * gst/Makefile.am:
11717           clean up non-disting of built files
11718         * testsuite/debug/commandline.c:
11719           test fix for option rename
11720
11721 2004-02-26  David Schleef  <ds@schleef.org>
11722
11723         * configure.ac:  We don't really need glib-2.3.  Also remove
11724         some unneeded checks for library functions.
11725         * gst/Makefile.am:  Instead, we need to not dist files created
11726         by glib-genmarshal.
11727
11728 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11729
11730         * configure.ac:
11731           bump glib required version to 2.3.0 for g_value_takes_boxed
11732
11733  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
11734
11735         * common/m4/gst-docs.m4
11736         change flavour text from enable to disable as enable is our default
11737         closes bug Bug 135304
11738
11739 === release 0.7.5 ===
11740  
11741  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11742  
11743         * NEWS:
11744           instate NEWS file
11745         * Makefile.am:
11746         * gstreamer.spec.in:
11747         * RELEASE:
11748           put back release
11749         * configure.ac:
11750         * docs/random/release:
11751           more updates
11752
11753 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11754
11755         * gst/gsttag.c: (_gst_tag_initialize):
11756         * po/fr.po:
11757         * po/nl.po:
11758           remove hyphen from codec tags
11759
11760 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11761
11762         * gst/parse/Makefile.am:
11763           fix dependency so that a make from a clean build works the first
11764           time
11765
11766 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11767
11768         * docs/random/release:
11769           update release strategy
11770         * po/fr.po:
11771           auto-update po file
11772         * po/nl.po:
11773           update dutch translation
11774
11775 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11776
11777         * docs/manual/debugging.xml:
11778         fix manual for new debugging system
11779
11780 2004-02-25  Andy Wingo  <wingo@pobox.com>
11781
11782         * gst/gstpad.c (gst_pad_link_prepare): Re-add
11783         gst_pad_link_prepare. Please email the list with specific reasons
11784         for reverting.
11785
11786 2004-02-24  Andy Wingo  <wingo@pobox.com>
11787
11788         * gst/gstelement.c (gst_element_dispose): Protect against multiple
11789         invocations.
11790
11791         * gst/schedulers/gstoptimalscheduler.c:
11792         I added a mess of prototypes at the top of the file by way of
11793         documentation. Some of the operations on chains and groups were
11794         re-organized.
11795
11796         (create_group): Added a type argument so if the group is enabled,
11797         the setup_group_scheduler knows what to do.
11798         (group_elements): Added a type argument here, too, to be passed on
11799         to create_group.
11800         (group_element_set_enabled): If an unlinked PLAYING element is
11801         added to a bin, we have to create a new group to hold the element,
11802         and this function will be called before the group is added to the
11803         chain. Thus we have a valid case for group->chain==NULL. Instead
11804         of calling chain_group_set_enabled, just set the flag on the group
11805         (the chain's status will be set when the group is added to it).
11806         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
11807         Setup the group scheduler when the group is enabled, not
11808         specifically when an element goes PAUSED->PLAYING. This means
11809         PLAYING elements can be added, linked, and scheduled into a
11810         PLAYING pipeline, as was intended.
11811         (add_to_group): Don't ref the group twice. I don't know when this
11812         double-ref got in here. Removing it has the potential to cause
11813         segfaults if other parts of the scheduler are buggy. If you find
11814         that the scheduler is segfaulting for you, put in an extra ref
11815         here and see if that hacks over the underlying issue. Of course,
11816         then find out what code is unreffing a group it doesn't own...
11817         (create_group): Make the extra refcount floating, and remove it
11818         after adding the element. This means that...
11819         (unref_group): Destroy when the refcount reaches 0, not 1, like
11820         every other refcounted object in the known universe.
11821         (remove_from_group): When a group becomes empty, set it to be not
11822         active, and remove it from its chain. Don't unref it again,
11823         there's no floating reference any more.
11824         (destroy_group): We have to remove the group from the chain in
11825         remove_from_group (rather than here) to break refcounting cycles
11826         (the chain always has a ref on the group). So assert that
11827         group->chain==NULL.
11828         (ref_group_by_count): Removed, it was commented out anyway.
11829         (merge_chains): Use the remove_from_chain and add_to_chain
11830         primitives to do the reparenting, instead of rolling our own
11831         implementation.
11832         (add_to_chain): The first non-disabled group in the chain's group
11833         list will be the entry point for the chain. Because buffers can
11834         accumulate in loop elements' peer bufpens, we preferentially
11835         schedule loop groups before get groups to avoid unnecessary
11836         execution of get-based groups when the bufpens are already full.
11837         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
11838         (get_group_schedule_function): Ditto.
11839         (loop_group_schedule_function): Ditto.
11840         (gst_opt_scheduler_loop_wrapper): Ditto.
11841         (gst_opt_scheduler_iterate): Ditto.
11842
11843         I understand the opt scheduler now, yippee!
11844
11845         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
11846         (gst_pad_get_name, gst_pad_set_chain_function) 
11847         (gst_pad_set_get_function, gst_pad_set_event_function) 
11848         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
11849         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
11850         (gst_pad_set_query_function, gst_pad_get_query_types) 
11851         (gst_pad_get_query_types_default) 
11852         (gst_pad_set_internal_link_function) 
11853         (gst_pad_set_formats_function, gst_pad_set_link_function) 
11854         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
11855         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
11856         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
11857         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
11858         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
11859         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
11860         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
11861         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
11862         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
11863         (gst_pad_event_default_dispatch, gst_pad_event_default) 
11864         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
11865         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
11866         (gst_pad_get_formats_default, gst_pad_get_formats): Better
11867         argument checks, and some doc fixes.
11868
11869         (gst_pad_custom_new_from_template): Um, does anyone
11870         use these functions? Actually make a custom pad instead of a
11871         normal one.
11872         (gst_pad_try_set_caps): Transpose some checks.
11873         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
11874         the pad is in negotiation.
11875         (gst_pad_try_relink_filtered): Use pad_link_prepare.
11876         
11877         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
11878
11879         * gst/gstelement.h: 
11880         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
11881         on the list.
11882
11883 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11884
11885         * gst/gstbin.c: (gst_bin_add):
11886           add error for not being able to add elements
11887
11888 2004-02-22  Julien MOUTTE <julien@moutte.net>
11889
11890         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
11891         audio-codec and video-codec.
11892
11893 2004-02-22  Benjamin Otte  <otte@gnome.org>
11894
11895         reported by: Padraig O'Briain <padraig.obriain@sun.com>
11896
11897         * autogen.sh:
11898           replace test -e with test -x for mkinstalldirs to be more portable.
11899           (fixes #134816)
11900
11901 2004-02-22  Benjamin Otte  <otte@gnome.org>
11902
11903         * gst/gstpad.c:
11904           revert last patch from Andy, it makes gst_pad_can_link_filtered much
11905           too noisy
11906         * gst/gsttag.c: (_gst_tag_initialize):
11907         * gst/gsttag.h:
11908           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
11909         * libs/gst/control/dparam.c: (gst_dparam_attach):
11910         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
11911           check that types for attached dparams match
11912
11913 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11914
11915         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
11916         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11917         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11918           fix errors
11919
11920 2004-02-20  Andy Wingo  <wingo@pobox.com>
11921
11922         * gst/gstbin.c:
11923         * gst/gstbuffer.c:
11924         * gst/gstplugin.c:
11925         * gst/registries/gstxmlregistry.c: 
11926         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
11927
11928         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
11929         (gst_element_add_pad): DEBUG->INFO, some fixes.
11930         (gst_element_get_compatible_pad_template): Just see if the
11931         templates' caps intersect, not if one is a strict subset of the
11932         other. This conforms more to what gst_pad_link_intersect() does.
11933         (gst_element_class_add_pad_template): Don't memcpy the pad
11934         template, just ref it.
11935         (gst_element_get_compatible_pad_filtered): Clean up debug messages
11936
11937         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
11938         (gst_pad_link_filtered): Debug changes.
11939         (gst_pad_link_prepare): New function, consolidated from
11940         can_link_filtered and link_filtered.
11941
11942         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
11943         look more like that of the functions in gstelement.c
11944
11945         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
11946         object, and return the empty string if object is NULL.
11947
11948         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
11949         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
11950         LOG, not DEBUG. We still get flex info on debug.
11951
11952         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
11953         debug string more verbose.
11954         (plugin_times_older_than): DEBUG->LOG.
11955
11956 2004-02-20  Julien MOUTTE <julien@moutte.net>
11957
11958         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
11959         will emit found_tag for each stream they demux with the codec.
11960
11961 2004-02-20  Benjamin Otte  <otte@gnome.org>
11962
11963         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
11964           copy navigation event correctly. Check freeing tag lists. 
11965         * gst/gstthread.c: (gst_thread_change_state):
11966           don't abort() on state changing mess - it might happen because of
11967           bugs.
11968         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
11969           use boxed functions
11970         * gst/gstvalue.h:
11971           fix GST_VALUE_HOLDS_CAPS
11972
11973 2004-02-19  David Schleef  <ds@schleef.org>
11974
11975         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
11976         and use it for GST_FUNCTION.  (bug #134750)
11977
11978 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11979
11980         * po/fr.po:
11981         * po/nl.po:
11982           updating translations
11983
11984 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11985
11986         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
11987
11988 2004-02-18  kost@imn.htwk-leipzig.de
11989
11990         reviewed by: David Schleef  <ds@schleef.org>
11991
11992         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
11993         for libgstcontrol.
11994
11995 2004-02-18  David Schleef  <ds@schleef.org>
11996
11997         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11998         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11999         (gst_dpsmooth_new): Additional fixes to get double dparams working.
12000         * tools/gst-inspect.c: (print_element_info): Support dumping of
12001         double dparam information.
12002
12003 2004-02-17  David Schleef  <ds@schleef.org>
12004
12005         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
12006         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
12007         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
12008         Use GST_TYPE_CAPS in signal prototype.
12009         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
12010         Convert GST_TYPE_CAPS to boxed.
12011         * gst/gstelement.c: (gst_element_class_init):
12012         Use GST_TYPE_TAG_LIST in signal prototype.
12013         * gst/gstindex.c: (gst_index_class_init):
12014         * gst/gstindex.h:
12015         Add GST_TYPE_INDEX_ENTRY type.
12016         * gst/gstmarshal.list:
12017         Add necessary marshal types.
12018         * gst/gstpad.c: (gst_real_pad_class_init),
12019         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
12020         (gst_pad_recover_caps_error):
12021         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
12022         * gst/gststructure.c: (_gst_structure_initialize),
12023         (gst_structure_copy), (_gst_structure_copy_conditional):
12024         * gst/gststructure.h:
12025         Convert GST_TYPE_STRUCTURE to boxed.
12026         * gst/gsttag.c: (gst_tag_list_get_type):
12027         * gst/gsttag.h:
12028         Add GST_TYPE_TAG_LIST type.
12029
12030 2004-02-17  Julien MOUTTE  <julien@moutte.net>
12031
12032         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
12033         to what we agreed with david.
12034         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
12035
12036 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
12037
12038         * po/nl.po: update translation
12039
12040 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
12041
12042         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
12043           throw an error if spider is trying to play a mime type there is
12044           no decoder for
12045         * po/POTFILES.in:
12046           add gst/autoplug/gstspider.c for translation
12047
12048 2004-02-17  Julien MOUTTE  <julien@moutte.net>
12049
12050         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
12051         silently when the pad is negotiating.
12052
12053 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
12054
12055         * docs/faq/Makefile.am:
12056           add script to run gstreamer uninstalled 
12057         * docs/faq/faq.xml:
12058         * docs/faq/developing.xml:
12059         * docs/faq/gst-uninstalled:
12060           extract script to run gstreamer uninstalled
12061         * docs/manuals.mak:
12062           add EXTRA_SOURCES variable for Makefile.am's to set to
12063           use additional SOURCE files for the doc build
12064
12065 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
12066
12067         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
12068
12069 2004-02-15  Julien MOUTTE  <julien@moutte.net>
12070
12071         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
12072         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
12073         an error was thrown by osssink. Basically a state change failure for
12074         an element in a different scheduling group was considered as
12075         successful, which means that caps nego was going on and weird stuff
12076         happened. Like I wrote in the comment there, if someone wants to
12077         revert that please drop me a mail explaining why because I really see
12078         no point in keeping that broken behaviour there.
12079         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
12080         be empty, we then return NULL which will trigger a nice error when 
12081         pulling from the pad.
12082
12083 2004-02-13  David Schleef  <ds@schleef.org>
12084
12085         * libs/gst/control/dparam.c: (gst_dparam_class_init),
12086         (gst_dparam_get_property), (gst_dparam_set_property),
12087         (gst_dparam_do_update_default):
12088         * libs/gst/control/dparam.h:
12089         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
12090         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
12091         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
12092         (gst_dpsmooth_do_update_double):
12093         * libs/gst/control/dparam_smooth.h:
12094         * libs/gst/control/dparammanager.c:
12095         (gst_dpman_inline_direct_update):
12096         Add support for double dparams.
12097
12098 2004-02-13  David Schleef  <ds@schleef.org>
12099
12100         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
12101         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
12102
12103 2004-02-13  Mattias Wadman  <mattias@sudac.org>
12104
12105         reviewed by: David Schleef  <ds@schleef.org>
12106
12107         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
12108         (gst_fdsrc_init), (gst_fdsrc_set_property),
12109         (gst_fdsrc_get_property), (gst_fdsrc_get):
12110         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
12111         and sends an EOS event if file descriptor reading times out.
12112
12113 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12114
12115         * configure.ac:
12116           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
12117
12118 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12119
12120         * configure.ac: pass required libxml version as argument
12121         (bug reported by Christophe Fergeau)
12122
12123 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12124   
12125         * docs/gst/gstreamer-docs.sgml:
12126         * docs/gst/tmpl/gstxml.sgml:
12127         * docs/libs/gstreamer-libs-docs.sgml:
12128           version API docs
12129
12130 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12131
12132         * gst/gstinfo.c:
12133         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
12134         (gst_registry_pool_feature_filter):
12135         * gst/gstthread.c: (gst_thread_class_init):
12136         * gst/gstvalue.c:
12137           add includes exposed by building without libxml
12138         * gst/indexers/Makefile.am:
12139           do not build fileindex when LOADSAVE disabled; we should have
12140           a better libxml check later since fileindex depends on xml, not
12141           LOADSAVE or REGISTRY
12142         * libs/gst/control/Makefile.am:
12143           link with m
12144         * tools/Makefile.am:
12145           fix wrong source code for gst-xmlinspect
12146
12147 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12148
12149         * configure.ac:
12150           fix gcov help output
12151           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
12152         * docs/random/release:
12153           some updated releasing notes
12154         * gstreamer.spec.in:
12155           more updates
12156
12157 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12158
12159         * docs/faq/faq.xml:
12160         * docs/manual/manual.xml:
12161         * docs/pwg/pwg.xml:
12162         * docs/pwg/titlepage.xml:
12163           put version in documentation
12164
12165 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12166
12167         * tools/Makefile.am: fix man page installation
12168
12169 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12170
12171         * configure.ac:
12172           don't check for libxml when load/save and registry disabled (#105844)
12173         * gstreamer.spec.in:
12174           sync with fedora candidate spec
12175
12176 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12177
12178         * po/fr.po:
12179         * po/nl.po:
12180           replace multidisksrc with multifilesrc
12181
12182 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12183
12184         * po/POTFILES.in:
12185           update to multidisksrc => multifilesrc file renaming (#134145)
12186
12187 2004-02-11  David Schleef  <ds@schleef.org>
12188
12189         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
12190         * docs/gst/tmpl/gstpadtemplate.sgml: same
12191         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
12192         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
12193         fixing dance.
12194         * gst/gstutils.c: Remove disabled code that uses GstProps.
12195         * gst/registries/gstxmlregistry.h: same
12196         * docs/random/ds/0.9-suggested-changes: random notes
12197
12198 2004-02-11  kost@imn.htwk-leipzig.de
12199
12200         reviewed by: David Schleef  <ds@schleef.org>
12201
12202         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
12203         initialisation of clock (bug #134128)
12204
12205 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12206
12207         * configure.ac:
12208         * gst/elements/Makefile.am:
12209         * gst/elements/gstelements.c:
12210         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
12211         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
12212         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
12213         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
12214         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
12215         * gst/elements/gstmultifilesrc.h:
12216           rename multidisksrc to multifilesrc (part of #122200)
12217
12218 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12219
12220         * docs/manuals.mak:
12221           fix automake complaints
12222         * gst-element-check.m4:
12223           fix unquotedness
12224
12225 2004-02-11  David Schleef  <ds@schleef.org>
12226
12227         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
12228         * gst/gstatomic_impl.h: Disable sparc implementation.
12229
12230 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12231
12232         * gst-element-check.m4:
12233           fix underquoted macros as reported by automake 1.8.x (#133800)
12234         * configure.ac:
12235           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
12236           by autopoint (fixes #132996)
12237
12238 2004-02-10  Andy Wingo  <wingo@pobox.com>
12239
12240         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
12241         way to do inheritance.
12242         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
12243         (gst_pad_get_query_types, gst_pad_get_query_types_default):
12244         Routine docs.
12245         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
12246         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
12247         doc.
12248         (gst_pad_unlink, gst_pad_is_linked): Docs.
12249         (gst_pad_renegotiate): A brief description of capsnego.
12250         (gst_pad_try_set_caps): Document.
12251         (gst_pad_try_set_caps_nonfixed): Document.
12252         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
12253         (gst_pad_set_parent): Deprecated (although not out of the API).
12254         (gst_pad_get_parent): Deprecated, although many plugins use this.
12255         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
12256         are private and will go away in 0.9.
12257         (gst_pad_perform_negotiate): Doc.
12258         (gst_pad_link_unnegotiate): I think this is meant to be static.
12259         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
12260         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
12261         (gst_pad_get_peer): Doc updates.
12262         (gst_pad_caps_change_notify): Doc.
12263         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
12264         (gst_ghost_pad_new): Doc fixes.
12265
12266         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
12267         (gst_object_check_uniqueness): 
12268
12269         * gst/gstelement.c (gst_element_add_pad) 
12270         (gst_element_add_ghost_pad, gst_element_remove_pad) 
12271         (gst_element_remove_ghost_pad, gst_element_get_pad) 
12272         (gst_element_get_static_pad, gst_element_get_pad_list) 
12273         (gst_element_class_get_pad_template_list) 
12274         (gst_element_class_get_pad_template): Work on the docs.
12275         (gst_element_get_pad_template_list): Uses the class method.
12276         (gst_element_get_compatible_pad_template): Docs, and consolidate
12277         some test conditions. 
12278         (gst_element_get_pad_from_template): New static function.
12279         (gst_element_request_compatible_pad): Docs, and work with
12280         non-request compatible templates. 
12281         (gst_element_get_compatible_pad_filtered): Docs and remove
12282         redundant checks.
12283         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
12284         (gst_element_link_filtered, gst_element_link_many) 
12285         (gst_element_link, gst_element_link_pads) 
12286         (gst_element_unlink_many): Docs.
12287
12288 2004-02-05  Andy Wingo  <wingo@pobox.com>
12289
12290         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
12291         s/pointer/boxed/.
12292
12293         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
12294
12295         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
12296         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
12297         with the type=GST_TYPE_CAPS. This allows language bindings to know
12298         what kind of data they're dealing with.
12299
12300         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
12301         to NULL when g_value_init is called. GstCaps, which rolls its own
12302         type implementation, now does the same instead of allocating empty
12303         caps.
12304         (_gst_caps_initialize, _gst_caps_collect_value,
12305         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
12306         table methods. This allows G_VALUE_COLLECT to work.
12307
12308 2004-02-05  Andy Wingo  <wingo@pobox.com>
12309
12310         * configure.ac:
12311         * testsuite/Makefile.am (SUBDIRS): 
12312         * testsuite/ghostpads/Makefile.am: 
12313         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
12314
12315         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
12316         These two routines are the only ones that set
12317         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
12318         pad template. They should be made static, depending on ABI needs.
12319         (gst_real_pad_dispose): Handle the case of ghost pads without a
12320         parent. Assert after dealing with ghost pads that the ghost pad
12321         list is empty.
12322         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
12323         set after creation.
12324         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
12325         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
12326         functions. set_property will call add_ghost_pad/remove_ghost_pad
12327         as appropriate.
12328         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
12329
12330         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
12331         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
12332         (gst_element_remove_pad): Handle ghost pads as well.
12333         (gst_element_remove_ghost_pad): Deprecated (could be removed,
12334         depending on API-stability needs).
12335
12336 2004-02-05  Andy Wingo  <wingo@pobox.com>
12337
12338         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
12339         of course they're const
12340
12341 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12342
12343         * tools/Makefile.am:
12344         * tools/gst-feedback:
12345         * tools/gst-feedback-0.7:
12346           make gst-feedback versioned too for consistency
12347
12348 2004-02-11  David Schleef  <ds@schleef.org>
12349
12350         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12351         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
12352
12353 2004-02-10  Julien MOUTTE <julien@moutte.net>
12354
12355         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
12356         the structure does not contain a valid tag list. Adding a safety check
12357         to remove a noisy warning in that case.
12358
12359 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
12360
12361         * gst/gst.c: fix name to be in line with others
12362
12363 2004-02-09  Julien MOUTTE <julien@moutte.net>
12364
12365         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
12366         not shout that loud when len is 0. Just return 0 silently.
12367
12368 2004-02-09  Julien MOUTTE  <julien@moutte.net>
12369
12370         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
12371         because data_unref has one and I prefer the debug to be symetric.
12372         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
12373         were refed when added to the queue and unrefed only once when the queue
12374         was flushed. Now the flush handler unref the buffers two times : first
12375         unref for the ref added when pushing in the queue's tail and second
12376         unref to destroy the flushed buffer.
12377
12378 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
12379
12380         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
12381
12382 2004-02-06  David Schleef  <ds@schleef.org>
12383
12384         * docs/random/ds/0.9-suggested-changes: Random ramblings
12385         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
12386         to int before printing.
12387         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
12388         * gst/parse/parse.l: same.  See bug #129600
12389
12390 2004-02-06  David Schleef  <ds@schleef.org>
12391
12392         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
12393         (gst_index_add_entry), (gst_index_add_associationv),
12394         (gst_index_add_association): Add gst_index_add_associationv()
12395         and clean up gst_index_add_association(). #127133
12396
12397 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12398
12399         * autogen.sh: check out common with right tag if CVS/Tag exists
12400
12401 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12402
12403         * testsuite/ghostpads/ghostpads.c: (main):
12404           fix testsuite from segfaulting
12405
12406 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12407
12408         * Makefile.am: add release target
12409         * configure.ac: bump nano to 1
12410         * docs/random/release:
12411
12412 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12413
12414         * gst/gstcaps.h:
12415         * gst/gstelement.c: (gst_element_base_class_init),
12416         (gst_element_class_set_details), (gst_element_clear_pad_caps):
12417         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12418         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
12419         (gst_real_pad_dispose):
12420         * gst/gststructure.c: (gst_structure_free),
12421         (gst_structure_from_string):
12422           put reverted patch back in
12423         * gst/gstelement.c: (gst_element_remove_pad):
12424           free explicit caps if they're set
12425         * gst/gstpad.c: (_gst_pad_default_fixate_func):
12426           copy the structure when fixating
12427
12428 2004-02-05  David Schleef  <ds@schleef.org>
12429
12430         * gst/gstmarshal.list:
12431         * gst/gstpad.c: (gst_real_pad_class_init),
12432         (_gst_real_pad_fixate_accumulator):
12433         Revert POINTER->BOXED change in signal marshaller.
12434
12435 === release 0.7.4 ===
12436                                                                                 
12437 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12438                                                                                 
12439         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
12440         * configure.ac: changed for release
12441
12442 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
12443
12444         * gstreamer.spec.in:
12445           bump required version of gtk-doc
12446
12447 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
12448
12449         * gst/gstcaps.h:
12450         * gst/gstelement.c: (gst_element_base_class_init),
12451         (gst_element_class_set_details), (gst_element_clear_pad_caps):
12452         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12453         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
12454         (gst_real_pad_dispose):
12455         * gst/gststructure.c: (gst_structure_free),
12456         (gst_structure_from_string):
12457           revert patch that breaks applications, reapply after release
12458           to get this fixed properly
12459
12460 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12461
12462         * gst/gsttag.c: (_gst_tag_initialize):
12463         * gst/gsttag.h:
12464           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
12465
12466 2004-02-04  David Schleef  <ds@schleef.org>
12467
12468         Fix some memleaks:
12469         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
12470         (gst_spider_plug_from_srcpad):
12471         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
12472
12473 2004-02-04  David Schleef  <ds@schleef.org>
12474
12475         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
12476         a GstRealPad before accessing its structure members.
12477
12478 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12479
12480         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
12481         (gst_clock_get_speed):
12482         * gst/gstclock.h:
12483           reset padding, remove unused fields
12484
12485 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12486
12487         * gst/autoplug/gstspideridentity.c:
12488         (gst_spider_identity_sink_loop_type_finding):
12489           use get_allowed_caps, not get_caps (fixes #132519)
12490         * gst/elements/gsttypefind.c: (stop_typefinding):
12491           use correct order when sending buffers and seeking
12492
12493 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12494
12495         * configure.ac:
12496         * gst/gstelement.h:
12497         * gst/gstpad.h:
12498         * gst/gstqueue.h:
12499           upgrade libtool CURRENT, reset padding
12500
12501 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12502
12503         * configure.ac:
12504           bump to prerelease
12505           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
12506
12507 2004-02-04  David Schleef  <ds@schleef.org>
12508
12509         * docs/random/ds/0.9-suggested-changes: random notes
12510         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
12511         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
12512         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
12513         expansion.
12514         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
12515         (gst_filesink_get_query_types): same
12516         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
12517         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
12518         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
12519         to use new GST_PTR_FORMAT.
12520         * gst/gstelement.h: deprecate function factory macros
12521         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
12522         These are our last variadic macros that can't be replaced with
12523         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
12524         attempting to deprecate gst_element_clock_wait().
12525         * gst/gstevent.h: same
12526         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12527         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
12528         * gst/gstpad.h: deprecate function factory macros similar to above.
12529
12530 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12531
12532         * configure.ac:
12533         * tools/Makefile.am:
12534         * tools/gst-run.c: (popt_callback), (hash_print_key),
12535         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
12536         (get_candidates), (main):
12537           add new source file to generate non-versioned wrapper binaries
12538           for our tools.
12539
12540 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12541
12542         * gst/gstevent.c: (_gst_event_free):
12543           actually break; inside the switch statement
12544         * gst/parse/grammar.y:
12545           fix memleak where GValues weren't unset
12546
12547 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12548
12549         * gst/gststructure.c: (gst_structure_from_string):
12550           fix huge memleak
12551         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12552         (new_entry), (gst_type_find_element_chain):
12553         * gst/gstelement.c: (gst_element_base_class_init),
12554         (gst_element_class_set_details):
12555         * gst/gstpad.c: (gst_pad_can_link_filtered):
12556           fix smaller memleaks
12557         * gst/gstpad.c: (gst_real_pad_dispose):
12558           check that explicit caps are gone
12559         * gst/gststructure.c: (gst_structure_free):
12560           actually free the structure
12561         * gst/gstelement.c: (gst_element_clear_pad_caps):
12562           unset explicit caps
12563
12564 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12565
12566         * tools/Makefile.am:
12567           use AM_CFLAGS since all the CFLAGS are the same
12568           use AM_LDFAGS
12569
12570 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12571
12572         * docs/manual/gnome.xml:
12573           expand example a little
12574         * gst/gst.c: (gst_init_with_popt_table),
12575         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
12576           make sure popt option displays are done with right textdomain
12577           use GstPoptOption type
12578         * gst/gst.h:
12579           create GstPoptOption type
12580
12581 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12582
12583         * gst/gsterror.c: (_gst_stream_errors_init):
12584         * gst/gsterror.h:
12585           adding error type for no codec
12586         * po/POTFILES.in:
12587           add gst-inspect
12588         * po/nl.po:
12589           update dutch translation
12590         * tools/gst-inspect.c: (print_element_list), (main):
12591           do proper internationalization
12592         * tools/gst-launch.c: (idle_func):
12593           remove commented out function call
12594
12595 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12596
12597         * docs/README:
12598           add some error fixing notes
12599         * docs/gst/gstreamer-sections.txt:
12600           remove double entries
12601         * docs/gst/tmpl/gstbin.sgml:
12602         * docs/gst/tmpl/gstclock.sgml:
12603           remove override
12604         * docs/gst/tmpl/gstelement.sgml:
12605         * docs/gst/tmpl/gstindex.sgml:
12606         * docs/gst/tmpl/gstobject.sgml:
12607         * docs/gst/tmpl/gstpadtemplate.sgml:
12608         * docs/gst/tmpl/gstreamer-unused.sgml:
12609         * docs/gst/tmpl/gsttag.sgml:
12610         * docs/gst/tmpl/gstthread.sgml:
12611         * docs/gst/tmpl/gstxml.sgml:
12612         * gst/gsttag.h:
12613           sync header prototypes with c decls
12614         * gst/gsttaginterface.c:
12615           fix doc headers
12616
12617 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12618
12619         * gst/parse/Makefile.am:
12620         * gst/gstobject.h:
12621           get rid of gstmarshal.h dependency. It's not needed.
12622         * gst/gst.h:
12623         * gst/elements/gstfakesink.c:
12624         * gst/elements/gstfakesrc.c:
12625         * gst/elements/gstidentity.c:
12626         * gst/gstbin.c:
12627         * gst/gstelement.c:
12628         * gst/gstindex.c:
12629         * gst/gstobject.c:
12630         * gst/gstpad.c:
12631         * gst/gstthread.c:
12632         * gst/gstxml.c:
12633         * libs/gst/control/dparam.c:
12634         * libs/gst/control/dparammanager.c:
12635           include gstmarshal.h.
12636         Fixes #132045
12637
12638 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12639
12640         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
12641         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
12642         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
12643         * gst/elements/gstfilesrc.h:
12644           don't ref the filesrc when creating mmaped buffers. Don't keep a
12645           list of not-yet-destroyed buffers.
12646         * gst/gstbuffer.h:
12647           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
12648
12649 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12650
12651         * gst/gst.c: (init_pre):
12652           remove textdomain
12653
12654 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12655
12656         * docs/pwg/advanced-events.xml:
12657         * docs/pwg/advanced-scheduling.xml:
12658         * docs/pwg/intro-basics.xml:
12659         * docs/pwg/other-manager.xml:
12660         * docs/pwg/other-nton.xml:
12661         * docs/pwg/other-ntoone.xml:
12662         * docs/pwg/other-oneton.xml:
12663         * docs/pwg/pwg.xml:
12664           All sort of documentation... Forgot what. Point is that I want this
12665           in before I leave. The 'other-*' will be the last section and will
12666           explain issues specific to these type of elements.
12667
12668 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12669
12670         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12671         (gst_filesrc_get_read):
12672           set all the values on buffers that we can
12673
12674 2004-02-02  David Schleef  <ds@schleef.org>
12675
12676         Change usage of isblah() to g_ascii_isblah() to be more locale
12677         independent.  (#133076)
12678         * gst/gsturi.c: (gst_uri_protocol_check_internal):
12679         * gst/gstutils.c:
12680         * gst/parse/parse.l:
12681
12682 2004-02-02  Jon Trowbridge  <trow@gnu.org>
12683
12684         reviewed by: David Schleef  <ds@schleef.org>
12685
12686         Fix memory leaks:
12687         * gst/gstcaps.c: (gst_caps_to_string):
12688         * gst/registries/gstxmlregistry.c:
12689         (gst_xml_registry_add_path_list_func),
12690         (gst_xml_registry_parse_padtemplate):
12691
12692 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12693
12694         * gst/gstelement.c: (gst_element_default_error):
12695           suffix error messages with period
12696
12697 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12698
12699         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12700         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12701         * gst/gsterror.c: (gst_error_get_message):
12702           Suffix with dots
12703         * po/fr.po:
12704         * po/nl.po:
12705           Update translation files
12706
12707 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12708
12709         * gst/autoplug/gstspideridentity.c:
12710         (gst_spider_identity_sink_loop_type_finding):
12711         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12712         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12713         (gst_filesink_close_file), (gst_filesink_handle_event),
12714         (gst_filesink_chain):
12715         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12716         (gst_filesrc_get_read), (gst_filesrc_open_file):
12717         * gst/elements/gstidentity.c: (gst_identity_chain):
12718         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12719         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12720         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12721         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12722         * gst/gsterror.c: (_gst_core_errors_init),
12723         (_gst_library_errors_init), (_gst_resource_errors_init),
12724         (_gst_stream_errors_init), (gst_error_get_message):
12725         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12726         (gst_pad_recover_caps_error), (gst_pad_pull):
12727         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12728         * gst/schedulers/gstbasicscheduler.c:
12729         (gst_basic_scheduler_chainhandler_proxy),
12730         (gst_basic_scheduler_gethandler_proxy),
12731         (gst_basic_scheduler_cothreaded_chain):
12732           Suffix error messages with period.
12733           Use (NULL) instead of NULL
12734
12735 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12736
12737         * docs/gst/tmpl/gstelement.sgml:
12738         * docs/gst/tmpl/gstxml.sgml:
12739         * gst/gstelement.c: (gst_element_error_full):
12740           add element path to error
12741
12742 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12743
12744         * docs/random/mimetypes:
12745           update raw int/float info
12746         * gst/gsttag.c: (_gst_tag_initialize):
12747         * gst/gsttag.h:
12748           add GST_TAG_ENCODER
12749
12750 2004-01-30  David Schleef  <ds@schleef.org>
12751
12752         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
12753           missing (#132991)
12754
12755 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
12756
12757         reviewed by Benjamin Otte 
12758           parts of the patch submitted in bug #113913
12759
12760         * configure.ac:
12761           use AC_C_INLINE. Use = instead of == with test
12762         * examples/plugins/example.c:
12763         * gst/autoplug/gstspideridentity.c:
12764         * gst/elements/gstfdsrc.c:
12765         * gst/elements/gstfilesrc.c:
12766         * gst/elements/gstidentity.c:
12767         * gst/elements/gstmultidisksrc.c:
12768         * gst/elements/gststatistics.c:
12769         * gst/gstelement.c:
12770         * gst/gstobject.c:
12771         * gst/gstpad.c:
12772         * gst/gstpipeline.c:
12773         * gst/gstthread.c:
12774           don't end enums with a comma
12775         * gst/gstindex.c: (gst_index_compare_func):
12776           do explicit casting to gint
12777         * gst/gsttrace.c: (gst_trace_text_flush):
12778           #define strsize as a macro
12779
12780 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
12781
12782         * docs/README:
12783         * docs/gst/gstreamer-docs.sgml:
12784         * docs/gst/gstreamer-sections.txt:
12785         * docs/gst/tmpl/gstelement.sgml:
12786         * docs/gst/tmpl/gsterror.sgml:
12787         * docs/gst/tmpl/gstinterface.sgml:
12788         * docs/gst/tmpl/gstreamer-unused.sgml:
12789         * docs/gst/tmpl/gststructure.sgml:
12790         * docs/gst/tmpl/gsttag.sgml:
12791         * docs/gst/tmpl/gsttaginterface.sgml:
12792         * docs/gst/tmpl/gstvalue.sgml:
12793         make sure all API ends up in the built docs
12794         * gst/gstinterface.c:
12795         * gst/gststructure.c: (gst_structure_id_set_value),
12796         (gst_structure_set_value), (gst_structure_id_get_value):
12797         * gst/gststructure.h:
12798         * gst/gstvalue.h:
12799         sync .h with .c declarations
12800
12801 2004-01-30  Julien Moutte  <julien@moutte.net>
12802
12803         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
12804         Ronald will fix riffread.
12805
12806 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12807
12808         * docs/pwg/advanced-interfaces.xml:
12809           Added tuner interface docs.
12810
12811 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12812
12813         * docs/random/mimetypes:
12814           correct Theora information
12815         * gst/gstelement.h:
12816           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
12817
12818 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12819
12820         * gst/gstelement.c: (gst_element_error_full):
12821         * gst/gstelement.h:
12822           GST_ELEMENT_ERROR in enum -> _IN_ERROR
12823
12824 2004-01-29  Julien MOUTTE  <julien@moutte.net>
12825
12826         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
12827         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
12828         again and even before DISCONT.
12829         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
12830         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
12831         bytestream so that it's not stopping to fill the bytestream if events
12832         different than EOS or DISCONT are received. Instead it process them so
12833         that they go downstream.
12834
12835 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12836
12837         * docs/gst/tmpl/gstelement.sgml:
12838         * docs/gst/tmpl/gstreamer-unused.sgml:
12839         * docs/gst/tmpl/gstxml.sgml:
12840         * gst/autoplug/gstspideridentity.c:
12841         (gst_spider_identity_sink_loop_type_finding):
12842         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12843         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12844         (gst_filesink_close_file), (gst_filesink_handle_event),
12845         (gst_filesink_chain):
12846         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12847         (gst_filesrc_get_read), (gst_filesrc_open_file):
12848         * gst/elements/gstidentity.c: (gst_identity_chain):
12849         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12850         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12851         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12852         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12853         * gst/gstelement.h:
12854         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12855         (gst_pad_recover_caps_error), (gst_pad_pull):
12856         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12857         * gst/schedulers/gstbasicscheduler.c:
12858         (gst_basic_scheduler_chainhandler_proxy),
12859         (gst_basic_scheduler_gethandler_proxy),
12860         (gst_basic_scheduler_cothreaded_chain):
12861           gst_element_error -> GST_ELEMENT_ERROR
12862
12863 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12864
12865         * docs/Makefile.am:
12866         * docs/gst/tmpl/gstelement.sgml:
12867         * docs/gst/tmpl/gstxml.sgml:
12868         * docs/manuals.mak:
12869         * docs/pwg/advanced-request.xml:
12870         * docs/pwg/advanced-scheduling.xml:
12871         * docs/pwg/advanced-tagging.xml:
12872           fix non-validating docbook using CDATA
12873           make sure make check-local gets run first to check if it validates
12874
12875 2004-01-29  Julien MOUTTE <julien@moutte.net>
12876
12877         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
12878         handling (up and downstream).
12879         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
12880         my_filter thing.
12881
12882 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12883
12884         * docs/pwg/advanced-tagging.xml:
12885           Add docs about tag writing.
12886
12887 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12888
12889         * docs/pwg/advanced-tagging.xml:
12890           Add a part about tag reading and application signalling... Tag
12891           writing still needs to be documented.
12892         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12893           We can set file locations in READY, too.
12894
12895 2004-01-29  Julien MOUTTE <julien@moutte.net>
12896
12897         * docs/random/ds/element-checklist: Adding some notes about src
12898         events.
12899
12900 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12901
12902         * docs/random/mimetypes:
12903           Update docs to point to correct elements for various mimetypes, and
12904           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
12905           <stephane.loeuillet@tiscali.fr>.
12906
12907 2004-01-28  David Schleef  <ds@schleef.org>
12908
12909         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
12910
12911 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12912
12913         * docs/random/mimetypes:
12914           update docs for audio/x-raw-float. Add "buffer-frames=0 means
12915           undefined"
12916         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12917           make it only work in NULL.
12918         * gst/gstcaps.c:
12919           don't posion NULL caps
12920         * gst/gstelement.c: (gst_element_set_time):
12921           add debugging statement
12922         * gst/gstelement.c: (gst_element_emit_found_tag),
12923         (gst_element_found_tag_func), (gst_element_found_tags):
12924         * gst/gstelement.h:
12925           These functions take const taglists
12926         * gst/gstpad.c: (gst_pad_proxy_getcaps):
12927           fix memleak
12928         * gst/gstpad.c: (gst_pad_event_default):
12929           make more effort on handling discont and clocks, g_warn if everything
12930           fails
12931         * gst/gststructure.c: (gst_structure_remove_fields),
12932         (gst_structure_remove_fields_valist):
12933         * gst/gststructure.h:
12934           add gst_structure_remove_fields(_valist)
12935         * gst/gsttag.c:
12936           fix doc glitch
12937
12938 2004-01-28  David Schleef  <ds@schleef.org>
12939
12940         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
12941         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
12942         Fix memory leakage of gst_caps_to_string().
12943
12944         Use GST_PTR_FORMAT instead of gst_caps_to_string():
12945         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
12946         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
12947         (gst_spider_identity_sink_loop_type_finding):
12948         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12949         (find_suggest):
12950         * gst/gstpad.c: (gst_pad_try_relink_filtered),
12951         (gst_pad_set_explicit_caps):
12952         * gst/parse/grammar.y:
12953
12954 2004-01-28  David Schleef  <ds@schleef.org>
12955
12956         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
12957         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
12958         * docs/random/ds/0.9-suggested-changes: Notes from Company.
12959         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
12960         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
12961         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
12962         (gst_debug_log_default), (_gst_info_printf_extension),
12963         (_gst_info_printf_extension_arginfo):  Add printf extension.
12964         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
12965         * gst/gststructure.c: (gst_structure_to_string),
12966         (_gst_structure_parse_value): Use gst_value_deserialize() and
12967         remove old code.
12968         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
12969         (gst_value_deserialize_boolean), (gst_strtoi),
12970         (gst_value_deserialize_int), (gst_value_deserialize_double),
12971         (gst_value_deserialize_string), (gst_value_deserialize): Implement
12972         a bunch of deserialize functions and gst_value_deserialize.
12973         * gst/gstvalue.h: er, _de_serialize, not unserialize
12974         * testsuite/caps/string-conversions.c: (main): We don't currently
12975         handle (float) in caps, so convert these to (double).
12976         * testsuite/debug/Makefile.am: Add new test for the printf extension
12977         * testsuite/debug/printf_extension.c: (main): same
12978
12979 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12980
12981         * docs/random/company/time:
12982           Add some docs about clocking and time
12983
12984 2004-01-28  Julien MOUTTE <julien@moutte.net>
12985
12986         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
12987
12988 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12989
12990         * docs/pwg/advanced-clock.xml:
12991         * docs/pwg/advanced-dparams.xml:
12992         * docs/pwg/advanced-events.xml:
12993         * docs/pwg/advanced-interfaces.xml:
12994         * docs/pwg/advanced-midi.xml:
12995         * docs/pwg/advanced-request.xml:
12996         * docs/pwg/advanced-scheduling.xml:
12997         * docs/pwg/advanced-tagging.xml:
12998         * docs/pwg/advanced-types.xml:
12999         * docs/pwg/appendix-checklist.xml:
13000         * docs/pwg/building-boiler.xml:
13001         * docs/pwg/building-chainfn.xml:
13002         * docs/pwg/building-filterfactory.xml:
13003         * docs/pwg/building-pads.xml:
13004         * docs/pwg/building-props.xml:
13005         * docs/pwg/building-signals.xml:
13006         * docs/pwg/building-state.xml:
13007         * docs/pwg/building-testapp.xml:
13008         * docs/pwg/intro-basics.xml:
13009         * docs/pwg/intro-preface.xml:
13010         * docs/pwg/other-autoplugger.xml:
13011         * docs/pwg/other-sink.xml:
13012         * docs/pwg/other-source.xml:
13013         * docs/pwg/titlepage.xml:
13014           fix up id's
13015
13016 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13017
13018         * docs/95NonPath:
13019         * docs/HACKING:
13020         * docs/README:
13021         * docs/building-the-docs-on-debian:
13022           collect relevant bits of doc info
13023
13024 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13025
13026         * docs/pwg/advanced_tagging.xml:
13027           Half-assed commit so Thomas can re-arrange document IDs here to be
13028           consistent, too.
13029
13030 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13031
13032         * docs/manual/autoplugging.xml:
13033         * docs/manual/bins-api.xml:
13034         * docs/manual/bins.xml:
13035         * docs/manual/buffers-api.xml:
13036         * docs/manual/buffers.xml:
13037         * docs/manual/clocks.xml:
13038         * docs/manual/components.xml:
13039         * docs/manual/cothreads.xml:
13040         * docs/manual/debugging.xml:
13041         * docs/manual/dparams-app.xml:
13042         * docs/manual/dynamic.xml:
13043         * docs/manual/elements-api.xml:
13044         * docs/manual/elements.xml:
13045         * docs/manual/factories.xml:
13046         * docs/manual/gnome.xml:
13047         * docs/manual/goals.xml:
13048         * docs/manual/helloworld.xml:
13049         * docs/manual/helloworld2.xml:
13050         * docs/manual/init-api.xml:
13051         * docs/manual/intro.xml:
13052         * docs/manual/links-api.xml:
13053         * docs/manual/links.xml:
13054         * docs/manual/manual.xml:
13055         * docs/manual/motivation.xml:
13056         * docs/manual/pads-api.xml:
13057         * docs/manual/pads.xml:
13058         * docs/manual/plugins-api.xml:
13059         * docs/manual/plugins.xml:
13060         * docs/manual/programs.xml:
13061         * docs/manual/queues.xml:
13062         * docs/manual/quotes.xml:
13063         * docs/manual/schedulers.xml:
13064         * docs/manual/states-api.xml:
13065         * docs/manual/states.xml:
13066         * docs/manual/threads.xml:
13067         * docs/manual/typedetection.xml:
13068         * docs/manual/xml.xml:
13069           use chapter, part, section or misc as id starts for all bits
13070
13071 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13072
13073         * docs/gst/gstreamer-sections.txt:
13074           Fix up TITLE of the sections
13075
13076 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13077
13078         * docs/pwg/advanced_interfaces.xml:
13079           Add documentation on propertyprobing.
13080         * docs/pwg/advanced_events.xml:
13081         * docs/pwg/advanced_tagging.xml:
13082         * docs/pwg/building_boiler.xml:
13083         * docs/pwg/building_filterfactory.xml:
13084         * docs/pwg/pwg.xml:
13085           Move filterfactory and tagging into their own chapter, add a chapter
13086           on events. all these are empty placeholders that will be filled in
13087           some day.
13088
13089 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13090
13091         * docs/pwg/advanced_interfaces.xml:
13092           Docs for mixer interface. Also a check for website uploading.
13093
13094 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13095
13096         * docs/HACKING:
13097         * docs/Makefile.am:
13098         * docs/faq/Makefile.am:
13099         * docs/gst/Makefile.am:
13100         * docs/gst/tmpl/gstelement.sgml:
13101         * docs/gst/tmpl/gstplugin.sgml:
13102         * docs/gst/tmpl/gstreamer-unused.sgml:
13103         * docs/libs/Makefile.am:
13104         * docs/manual/Makefile.am:
13105         * docs/manuals.mak:
13106         * docs/pwg/Makefile.am:
13107         * docs/upload.mak:
13108           Separate out upload target and make it similar for
13109           both docbook and gtk-doc docs
13110
13111 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13112
13113         * docs/manuals.mak:
13114           Fix upload target to work with freedesktop
13115
13116 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13117
13118         * docs/pwg/advanced_types.xml:
13119           Add notes on creating your own types.
13120         * docs/pwg/building_boiler.xml:
13121         * docs/pwg/building_pads.xml:
13122         * docs/pwg/building_state.xml:
13123           Add some stuff about how to retrieve values from structures, how
13124           that relates to types and change layout slightly again to be almost
13125           perfect.
13126
13127 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13128
13129         * docs/pwg/advanced_dparams.xml:
13130         * docs/pwg/advanced_scheduling.xml:
13131           Change index layout slightly.
13132
13133 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13134
13135         * docs/pwg/advanced_clock.xml:
13136         * docs/pwg/advanced_interfaces.xml:
13137         * docs/pwg/advanced_midi.xml:
13138           General placeholders for now.
13139         * docs/pwg/advanced_request.xml:
13140           Explanation about sometimes and request pads.
13141         * docs/pwg/advanced_scheduling.xml:
13142           Concept of bytestream, loopfunctions and schedulers.
13143         * docs/pwg/building_boiler.xml:
13144           Add something about plugin-init.
13145
13146 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13147
13148         * docs/pwg/building_pads.xml:
13149           Fix broken docbook
13150
13151 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13152
13153         * docs/pwg/advanced_interfaces.xml:
13154         * docs/pwg/pwg.xml:
13155           Add as a placeholder for future filling-in.
13156         * docs/pwg/basics_autoplugging.xml:
13157         * docs/pwg/basics_buffers.xml:
13158         * docs/pwg/basics_elements.xml:
13159         * docs/pwg/basics_events.xml:
13160         * docs/pwg/basics_plugins.xml:
13161         * docs/pwg/basics_types.xml:
13162           Remove, because unused (this is all in intro_basics.xml).
13163         * docs/pwg/building_signals.xml:
13164           Short intro to signals + reference to GObject docs - we really
13165           shouldn't go into these sort of things to deply because we don't
13166           use them that extensively anyway.
13167         * docs/pwg/building_state.xml:
13168           Explanation of states. Benjamin, please check.
13169         * docs/pwg/building_testapp.xml:
13170           Put everything in one page - putting only a few lines of content
13171           per page doesn't really make sense.
13172
13173           Time to get into the advanced topics. ;).
13174
13175 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13176
13177         * docs/pwg/advanced_types.xml:
13178           Finish documenting the current state of mimetypes.
13179         * docs/pwg/building_boiler.xml:
13180         * docs/pwg/building_chainfn.xml:
13181         * docs/pwg/building_pads.xml:
13182         * docs/pwg/building_props.xml:
13183         * docs/pwg/building_testapp.xml:
13184           Start documenting the "how to build a simple audio filter" part
13185           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
13186           states and (maybe?) a short introduction to capsnego in the chapter
13187           on pads (building_pads.xml). Capsnego should probably be explained
13188           fully in advanced_capsnego.xml or so.
13189
13190 2004-01-26  David Schleef  <ds@schleef.org>
13191
13192         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
13193         * gst/gstpad.h: Add new function to allow element to (somewhat)
13194         specify non-fixed caps on a pad.
13195         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
13196         that I added a few weeks ago.
13197
13198 2004-01-26  David Schleef  <ds@schleef.org>
13199
13200         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
13201           making try_set_caps() work with non-fixed caps.
13202
13203 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13204
13205         * docs/pwg/advanced_types.xml:
13206         * docs/pwg/intro_basics.xml:
13207         * docs/pwg/intro_preface.xml:
13208         * docs/pwg/pwg.xml:
13209         * docs/pwg/titlepage.xml:
13210           First try to resurrect the PWG. I'm halfway integrating the mimetypes
13211           in here (docs/random/mimetypes), and will from there on work on both
13212           updating outdated parts and adding missing parts.
13213           That doesn't mean I'll fix it completely, but I'll try at least. ;).
13214
13215 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
13216
13217         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
13218           policy is set
13219
13220 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13221
13222         * gst/gstelement.h:
13223           remove gst_element_factory_get_version. It doesn't exist anymore.
13224         * gst/gstplugin.c:
13225         * gst/gstplugin.h:
13226           remove gst_plugin_set_name and change gst_plugin_get_longname to
13227           gst_plugin_get_description to match code.
13228         * gst/gsterror.h:
13229           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
13230         * gst/gstpad.c: (gst_pad_try_set_caps):
13231           make it work with nonfixed caps.
13232           Note that even in the nonfixed case the link function of the pad
13233           that tries to set caps isn't called.
13234
13235 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13236
13237         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
13238           fix bug where buffer was not assembled correctly
13239         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
13240           silence by default
13241         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
13242           only seek if there's no more buffers that could work without seeking
13243
13244 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13245
13246         * gst/gsttag.c: (_gst_tag_initialize):
13247         * gst/gsttag.h:
13248           Add application tag (for encoding/muxing app).
13249
13250 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13251
13252         * autogen.sh:
13253           make autopoint force, and libtoolize not copy
13254         * common/m4/as-docbook.m4:
13255           added docbook xml catalog setup check
13256         * common/m4/gst-doc.m4:
13257           use docbook check
13258
13259 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
13260
13261         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
13262         * gst/gsttag.h:
13263           add GstTagFlag
13264
13265 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13266
13267         * docs/gst/gstreamer-sections.txt:
13268         * docs/gst/tmpl/gst.sgml:
13269         * docs/gst/tmpl/gstbuffer.sgml:
13270         * docs/gst/tmpl/gstclock.sgml:
13271         * docs/gst/tmpl/gstelement.sgml:
13272         * docs/gst/tmpl/gstreamer-unused.sgml:
13273         * docs/gst/tmpl/gstxml.sgml:
13274           sync latest API changes to docs
13275
13276 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13277
13278         * gst/gstpluginfeature.c:
13279           fix doc snippet
13280         * tools/gst-inspect.c: (print_element_list):
13281           fix output of typefind
13282           add GPL header
13283         * tools/gst-launch.c:
13284           add GPL header
13285
13286 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13287
13288         * gst/elements/Makefile.am:
13289         * gst/elements/gstelements.c:
13290         * gst/elements/gsttypefindelement.c:
13291         * gst/elements/gsttypefindelement.h:
13292         * po/POTFILES.in:
13293         * po/fr.po:
13294         * po/nl.po:
13295           renamed gsttypefindelement to gsttypefind, conserving CVS history
13296
13297 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13298
13299         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
13300         * gst/gsttag.h:
13301           add some tags used in ogg as well
13302           fix _ in replaygain tags
13303
13304 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13305
13306         * gst/gsterror.h:
13307           fix wrong GST_LIBRARY_ERROR_ENCODE addition
13308
13309 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13310
13311         * gst/gstelement.c: (gst_element_error_full):
13312         * gst/gstelement.h:
13313           change _extended to _full
13314
13315 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13316
13317         reviewed by: <delete if not using a buddy>
13318
13319         * docs/gst/tmpl/gst.sgml:
13320         * docs/gst/tmpl/gstbuffer.sgml:
13321         * docs/gst/tmpl/gstclock.sgml:
13322         * docs/gst/tmpl/gstelement.sgml:
13323         * docs/gst/tmpl/gstreamer-unused.sgml:
13324         * docs/gst/tmpl/gstxml.sgml:
13325         * gst/gstelement.c: (gst_element_error_full):
13326         * gst/gstelement.h:
13327
13328 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13329
13330         * gst/gstelement.h: fix _gst_element_error_printf prototype
13331
13332 2004-01-20  David Schleef  <ds@schleef.org>
13333
13334         * gst/gststructure.c: (gst_structure_to_string):
13335         Convert function to use gst_value_serialize().
13336         * gst/gstvalue.c: (gst_value_serialize_list),
13337         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
13338         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
13339         (gst_value_serialize_int), (gst_value_serialize_double),
13340         (gst_string_wrap), (gst_value_serialize_string),
13341         (gst_value_serialize), (gst_value_deserialize):
13342         * gst/gstvalue.h:
13343         Add implementations for serialize.
13344
13345 2004-01-20  Julien MOUTTE  <julien@moutte.net>
13346
13347         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
13348         we want to keep that one in the future or change xvidenc.c to use 
13349         another error.
13350
13351 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13352
13353         * gst/gstelement.c: (_gst_element_error_printf):
13354         * gst/gstelement.h:
13355           privatise function
13356
13357 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13358
13359         * docs/random/error:
13360           doc explaining error system
13361         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
13362           cleanup
13363
13364 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13365
13366         * gst/gst-i18n-app.h:
13367         * gst/gst-i18n-lib.h:
13368           remove inclusion of config.h
13369         * po/POTFILES.in:
13370         * po/nl.po:
13371           add gst/gstelement.c
13372
13373 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13374
13375         * po/nl.po: updated Dutch translation
13376
13377 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13378
13379         * gst/gsterror.c: (_gst_core_errors_init),
13380         (_gst_library_errors_init), (_gst_resource_errors_init),
13381         (_gst_stream_errors_init):
13382         remove ending punctuation dots
13383
13384 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13385
13386         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
13387         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
13388         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13389         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13390         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13391         use GST_ERROR_SYSTEM
13392
13393 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13394
13395         * gst/gstelement.c: (gst_element_error_printf),
13396         (gst_element_error_extended):
13397         * gst/gstelement.h:
13398           add a helper printf function so we can have NULL values passed.
13399
13400 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13401
13402         * gst/gstelement.h:
13403           add G_STMT macros to gst_element_error, which isn't strictly
13404           necessary but people tell me to anyway.
13405
13406 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
13407
13408         * gst/Makefile.am:
13409         * gst/autoplug/gstspideridentity.c:
13410         (gst_spider_identity_sink_loop_type_finding):
13411         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
13412         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
13413         (gst_filesink_close_file), (gst_filesink_handle_event),
13414         (gst_filesink_chain):
13415         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
13416         (gst_filesrc_map_region), (gst_filesrc_get_read),
13417         (gst_filesrc_open_file):
13418         * gst/elements/gstidentity.c: (gst_identity_chain):
13419         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13420         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13421         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13422         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
13423         * gst/gst.h:
13424         * gst/gst_private.h:
13425         * gst/gstelement.c: (gst_element_class_init),
13426         (gst_element_default_error), (gst_element_error_func),
13427         (gst_element_error_extended):
13428         * gst/gstelement.h:
13429         * gst/gsterror.c: (_gst_core_errors_init),
13430         (_gst_library_errors_init), (_gst_resource_errors_init),
13431         (_gst_stream_errors_init), (gst_error_get_message):
13432         * gst/gsterror.h:
13433         * gst/gstinfo.c: (_gst_debug_init):
13434         * gst/gstmarshal.list:
13435         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13436         (gst_pad_recover_caps_error), (gst_pad_pull):
13437         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
13438         * gst/schedulers/gstbasicscheduler.c:
13439         (gst_basic_scheduler_chainhandler_proxy),
13440         (gst_basic_scheduler_gethandler_proxy),
13441         (gst_basic_scheduler_cothreaded_chain):
13442         * po/POTFILES.in:
13443         * po/fr.po:
13444         * po/nl.po:
13445           change error signal
13446           add error categories
13447
13448 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
13449
13450         * gst/gsttag.c: (_gst_tag_initialize):
13451         * gst/gsttag.h:
13452         Add replaygain tag
13453
13454 2004-01-18  Colin Walters  <walters@verbum.org>
13455
13456         * examples/retag/retag.c: Call gst_init before processing
13457         program args.  Add g_assert to _link_many call.
13458
13459 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13460
13461         * gst/gstpad.c: (gst_pad_alloc_buffer):
13462           Return a newly allocated buffer when the pad has no peer.
13463
13464 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13465
13466         * gst/gstclock.c: (gst_clock_get_time):
13467           make it compile with gcc 2.95 again.
13468           Patch by Scott Wheeler
13469
13470 2004-01-15  David Schleef  <ds@schleef.org>
13471
13472         * gst/gstcaps.h:
13473         Added gst_caps_is_simple() macro.
13474         * testsuite/caps/caps.c: (test1):
13475         * testsuite/caps/intersect2.c: (main):
13476         * testsuite/caps/intersection.c: (main):
13477         Fixes to make 'make check' work again after removing
13478         gst_caps_is_chained().
13479
13480 2004-01-15  Leif Johnson <leif@ambient.2y.net>
13481
13482         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
13483         and additions to the MIDI document.
13484
13485 2004-01-15  David Schleef  <ds@schleef.org>
13486
13487         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
13488         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
13489         of GST_RPAD_, since we don't know if it's a real or ghost pad.
13490
13491 2004-01-15  David Schleef  <ds@schleef.org>
13492
13493         * gst/gstqueue.c:
13494         * gst/gstqueue.h:
13495         Fix the spelling of "treshold" and make min_threshold actually
13496         affect the queue.
13497
13498 2004-01-15  David Schleef  <ds@schleef.org>
13499
13500         * gst/gstcaps.c:
13501         Add lots of documentation.
13502         * gst/gstcaps.h:
13503         Deprecate a few functions.
13504         * gst/gstpad.c:
13505         Removed use of deprecated functions.
13506
13507 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13508
13509         * gst/gstpad.c: (gst_pad_is_linked):
13510         * gst/gstpad.h:
13511           implement gst_pad_is_linked
13512         * gst/gstelement.h:
13513           reserve space for initiate_state_change
13514
13515 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13516
13517         * gst/autoplug/gstspideridentity.c:
13518         (gst_spider_identity_sink_loop_type_finding):
13519           break infinite loop by just returning instead of looping
13520         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
13521           set event time difference correctly. Set it to 1 second instead
13522           of 100ms to be more tolerant
13523         * gst/gstelement.c: (gst_element_set_time):
13524           add debugging output
13525
13526 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13527
13528         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
13529           query if buffers are inside the pool, ignore events
13530
13531 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13532
13533         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
13534         (gst_clock_set_speed), (gst_clock_set_active),
13535         (gst_clock_is_active), (gst_clock_reset),
13536         (gst_clock_handle_discont):
13537         * gst/gstclock.h:
13538           deprecate old interface and disable functions that aren't in use
13539           anymore.
13540         * gst/gstelement.h:
13541         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
13542         (gst_element_set_time), (gst_element_adjust_time):
13543           add concept of "element time" and functions to get/set this time.
13544         * gst/gstelement.c: (gst_element_change_state):
13545           update element time correctly.
13546         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13547           This is a debug message, not a g_critical.
13548         * gst/gstpad.c: (gst_pad_event_default):
13549           handle discontinuous events right with element time.
13550         * gst/gstscheduler.c: (gst_scheduler_state_transition):
13551           update to clocking fixes.
13552           set clocks on elements in READY=>PAUSED. The old behaviour caused
13553           a wrong element time on the first element that started playing.
13554         * gst/schedulers/gstbasicscheduler.c:
13555         (gst_basic_scheduler_class_init):
13556         * gst/schedulers/gstoptimalscheduler.c:
13557         (gst_opt_scheduler_class_init):
13558           remove code that just implements the default behaviour.
13559         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
13560           update to use new clocking functions
13561         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
13562         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
13563           update to test new element time.
13564         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
13565           use _get_allowed_caps instead of _get_caps. This catches filtered
13566           caps correctly.
13567         * testsuite/debug/commandline.c:
13568           update for new GST_DEBUG syntax.
13569         * testsuite/threads/Makefile.am:
13570           disable a test that only works sometimes.
13571
13572 2004-01-13  Julien MOUTTE <julien@moutte.net>
13573
13574         * po/LINGUAS: Adding fr.
13575         * po/fr.po: Adding french translation.
13576
13577 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13578
13579         * gst/parse/grammar.y:
13580         * po/POTFILES.in:
13581         * po/nl.po:
13582         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
13583           translate parsing error messages
13584
13585 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13586
13587         * po/POTFILES.in: adding gst-launch
13588         * po/nl.po: updated translation, all 99 strings translated
13589         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
13590         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
13591           fix strings for translation
13592
13593 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13594
13595         * gst/gst.c:
13596           - capitalize beginnings of popt options
13597           - fix strings for translation
13598           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
13599
13600 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13601
13602         * po/README: add some notes on how to update translations
13603
13604 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13605
13606         * ABOUT-NLS: removed, is autogenerated from autopoint
13607         * autogen.sh: add autopoint stuff
13608         * configure.ac: fix up gettext stuff
13609         * gst/Makefile.am: add i18n headers to noinst_HEADERS
13610         * gst/elements/gsttypefindelement.c: add header include
13611         * gst/gettext.h: add header, copy from system-installed header
13612         * gst/gst-i18n-app.h: to be included by each app having translations
13613         * gst/gst-i18n-lib.h: to be included by each lib having translations
13614         * gst/gst.c: (init_pre): fix up gettext calls
13615         * gst/gst_private.h: remove i18n stuff, moving to separate headers
13616         * po/LINGUAS: the new way to specify translations present
13617         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
13618         * po/Makevars: the variables filled in for GStreamer
13619         * po/POTFILES.in: added new files with translations
13620         * po/de.po: has new strings
13621         * po/nl.po: readded, has new strings
13622
13623 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13624
13625         * gst/gsttag.c: fix some strings marked for translation
13626
13627 2004-01-13  Iain <iain@prettypeople.org>
13628
13629         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
13630         group when we add an element to it, cos we unref it when we remove one
13631
13632 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
13633
13634         * testsuite/debug/commandline.c: (debug_not_reached):
13635         * testsuite/debug/output.c: (check_message):
13636           fix testsuite
13637
13638 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13639
13640         * examples/cutter/.cvsignore:
13641         * examples/helloworld/.cvsignore:
13642         * examples/launch/.cvsignore:
13643         * examples/manual/.cvsignore:
13644         * examples/mixer/.cvsignore:
13645         * examples/pingpong/.cvsignore:
13646         * examples/plugins/.cvsignore:
13647         * examples/queue/.cvsignore:
13648         * examples/queue2/.cvsignore:
13649         * examples/queue3/.cvsignore:
13650         * examples/queue4/.cvsignore:
13651         * examples/retag/.cvsignore:
13652         * examples/thread/.cvsignore:
13653         * examples/typefind/.cvsignore:
13654         * examples/xml/.cvsignore:
13655         * gst/.cvsignore:
13656         * gst/autoplug/.cvsignore:
13657         * gst/elements/.cvsignore:
13658         * gst/indexers/.cvsignore:
13659         * gst/parse/.cvsignore:
13660         * gst/registries/.cvsignore:
13661         * gst/schedulers/.cvsignore:
13662         * libs/gst/bytestream/.cvsignore:
13663         * libs/gst/control/.cvsignore:
13664         * libs/gst/getbits/.cvsignore:
13665         * tests/.cvsignore:
13666         * tests/bufspeed/.cvsignore:
13667         * tests/instantiate/.cvsignore:
13668         * tests/memchunk/.cvsignore:
13669         * tests/muxing/.cvsignore:
13670         * tests/sched/.cvsignore:
13671         * tests/seeking/.cvsignore:
13672         * tests/threadstate/.cvsignore:
13673         * testsuite/.cvsignore:
13674         * testsuite/caps/.cvsignore:
13675         * testsuite/cleanup/.cvsignore:
13676         * testsuite/dynparams/.cvsignore:
13677         * testsuite/plugin/.cvsignore:
13678         * tools/.cvsignore:
13679           update - this is huge, because it includes *.bb, *.bbg and *.da files
13680           which are generated for gcov.
13681
13682 2004-01-11  David Schleef  <ds@schleef.org>
13683
13684         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
13685         a function to parse integers in ways that strto[u]l() does not.
13686
13687 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13688
13689         * tools/gst-inspect.c: (print_caps):
13690           improve output of caps a bit
13691
13692 2004-01-11  David Schleef  <ds@schleef.org>
13693
13694         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
13695         inherit correct flags (READONLY and DONTKEEP).
13696
13697 2004-01-11  David Schleef  <ds@schleef.org>
13698
13699         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
13700         (gst_filesrc_map_region):
13701         * gst/gstbuffer.c: (_gst_buffer_initialize),
13702         (_gst_buffer_sub_free), (gst_buffer_default_copy),
13703         (gst_buffer_new), (gst_buffer_create_sub),
13704         (gst_buffer_is_span_fast), (gst_buffer_span):
13705         * gst/gstbuffer.h:
13706         Change GstBuffer private structure element names. (all files)
13707         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
13708         (gst_queue_link):
13709         * gst/gstqueue.h:
13710         Implement getcaps/pad_link functions that handle the case where
13711         there are data in the queue.
13712
13713 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13714
13715         * gst/elements/gstbufferstore.c:
13716           initialize debugging structure correctly
13717         * gst/elements/gsttee.c: (gst_tee_set_property):
13718           g_object_notify when property was changed
13719         * gst/elements/gsttypefindelement.c:
13720         (gst_type_find_element_change_state):
13721           clear caps correctly
13722
13723 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13724
13725         * gst/gstqueue.c: (gst_queue_init):
13726           Use better defaults for when a queue should block. This
13727           gets rid of jerky playback for quite a few files.
13728           It takes more memory.
13729
13730 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
13731
13732         (gst_xml_registry_parse_padtemplate):
13733           make critical message slightly more useful
13734
13735 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13736
13737         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
13738         (gst_debug_message_get), (gst_debug_log_default):
13739         * gst/gstinfo.h:
13740           Change gst_debug_log(_valist) to take a const format string.
13741           Change prototype of log function and functions using those to 
13742           take a GstDebugMessage instead of a string that requires using
13743           gst_debug_message_get.
13744
13745 2004-01-08  David Schleef  <ds@schleef.org>
13746
13747         * Makefile.am:
13748         * configure.ac:
13749         Add option --enable-gcov to build GStreamer with -fprofile-arcs
13750         and -ftest-coverage, which allows gcov to show information about
13751         testsuite coverage.
13752
13753 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13754
13755         * gst/gstutils.h:
13756           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
13757           GST_PARENT_CALL_WITH_DEFAULT
13758         * gst/elements/gstaggregator.c: 
13759         * gst/elements/gstbufferstore.c: 
13760         * gst/elements/gstfakesink.c: 
13761         * gst/elements/gstfakesrc.c: 
13762         * gst/elements/gstfdsink.c: 
13763         * gst/elements/gstfdsrc.c: 
13764         * gst/elements/gstfilesink.c: 
13765         * gst/elements/gstfilesrc.c: 
13766         * gst/elements/gstidentity.c: 
13767         * gst/elements/gstmd5sink.c: 
13768         * gst/elements/gstmultidisksrc.c:
13769         * gst/elements/gstpipefilter.c: 
13770         * gst/elements/gstshaper.c:
13771         * gst/elements/gststatistics.c:
13772         * gst/elements/gsttee.c:
13773         * gst/elements/gsttypefindelement.c:
13774           use them.
13775
13776 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
13777
13778         * docs/gst/gstreamer-docs.sgml: remove props
13779         * docs/gst/gstreamer-sections.txt: remove props
13780         * docs/gst/tmpl/gst.sgml:
13781         * docs/gst/tmpl/gstbin.sgml:
13782         * docs/gst/tmpl/gstbuffer.sgml:
13783         * docs/gst/tmpl/gstcaps.sgml:
13784         * docs/gst/tmpl/gstclock.sgml:
13785         * docs/gst/tmpl/gstelement.sgml:
13786         * docs/gst/tmpl/gstindex.sgml:
13787         * docs/gst/tmpl/gstobject.sgml:
13788         * docs/gst/tmpl/gstpad.sgml:
13789         * docs/gst/tmpl/gstpadtemplate.sgml:
13790         * docs/gst/tmpl/gstreamer-unused.sgml:
13791         * docs/gst/tmpl/gstthread.sgml:
13792         * docs/gst/tmpl/gstxml.sgml:
13793           sync with code reorganization
13794
13795 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
13796
13797         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13798         Make the 'Could not find compatible pad' message more informative.
13799
13800 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13801                                                                                 
13802         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
13803           Fix for if we pass NULL as property to location.
13804         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
13805         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
13806           Fix for instantiate-test (see below).
13807         * gst/gststructure.c: (_gst_structure_parse_value):
13808           Fix compile error on gcc-2.96.
13809         * configure.ac:
13810         * tests/Makefile.am:
13811         * tests/instantiate/Makefile.am:
13812         * tests/instantiate/create.c: (create_all_elements), (main):
13813           Add a test that instantiates all elements. This makes it easy to
13814           track dead code for old API/design (like setting event functions
13815           on sink pads and so on).
13816
13817 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
13818
13819         * gst/gstcaps.c: (gst_caps_append_structure):
13820           Move the poisoning to allow a NULL structure
13821         * gst/gstevent.c: (_gst_event_free):
13822           When freeing a navigation event, free the structure
13823           also
13824
13825 2004-01-04  David Schleef  <ds@schleef.org>
13826
13827         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13828         Remove usage of gst_pad_proxy_fixate.
13829         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
13830         (gst_caps_split_one), (gst_caps_replace):
13831         Add poisoning code.
13832         * gst/gstmarshal.list:
13833         Add pointer__pointer for fixate signal
13834         * gst/gstpad.c: (gst_real_pad_class_init),
13835         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
13836         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
13837         (gst_pad_set_explicit_caps), (gst_pad_template_new):
13838         Add poisoning code. Add fixate signal on RealPad. Change
13839         set_explicit_caps() to take const GstCaps, like try_set_caps().
13840         * gst/gstpad.h:
13841         * testsuite/caps/Makefile.am:
13842         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
13843
13844 2004-01-03  David Schleef  <ds@schleef.org>
13845
13846         * gst/elements/gsttypefindelement.c:
13847         (gst_type_find_element_have_type), (gst_type_find_element_init):
13848         Use gst_pad_use_explicit_caps for src pad.
13849         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
13850         before using it.
13851
13852 2004-01-03  David Schleef  <ds@schleef.org>
13853
13854         * gst/gstelement.c: (gst_element_link_pads_filtered),
13855         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
13856         that linking was successful.
13857         * gst/gstpad.c: (gst_pad_link_free),
13858         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
13859         (gst_pad_link_try), (gst_pad_link_unnegotiate),
13860         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
13861         GstPadLinkReturn correctly between functions, and don't fail
13862         when DELAYED is used (DELAYED is very important).  Better
13863         cleanup on unlinking and unnegotiation.  Should fix some spider
13864         bugs.
13865
13866 2004-01-02  David Schleef  <ds@schleef.org>
13867
13868         * gst/gstelement.c: (gst_element_class_init),
13869         (gst_element_base_class_init): ->padtemplates should be cleared
13870         in base_init, since we need to have a fresh list for every
13871         class.  (Alternately, we chould copy the list and share the
13872         actual pad templates (not the list), but that would require
13873         changing every plugin to move pad template registration from
13874         base_init to class_init.)
13875
13876 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13877
13878         * gst/gstelement.c: (gst_element_class_add_pad_template):
13879           Refuse registering a pad template if another pad template
13880           with the same name already exists (#114715).
13881
13882 2004-01-02  David Schleef  <ds@schleef.org>
13883
13884         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
13885         (gst_caps_is_equal_fixed): Add new function.
13886         * gst/gstcaps.h: ditto.
13887         * gst/gstpad.c: (gst_real_pad_class_init),
13888         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
13889         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
13890         check new caps against existing caps -- if they're the same, return
13891         OK without renegotiating.  caps-nego-failed signal fixed so that
13892         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
13893         to save an extra caps copy.  Don't complete negotiation if a pad
13894         link function returns DELAYED.
13895
13896 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13897
13898         * gst/gstpad.c: (gst_pad_try_relink_filtered):
13899           Fix wrong g_return_if_fail
13900
13901 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
13902
13903         * gst/gstbin.c: (gst_bin_class_init):
13904         Change the marshalling of element_added/element_removed
13905         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
13906         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
13907
13908 2004-01-01  David Schleef  <ds@schleef.org>
13909
13910         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13911         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
13912         (gst_pad_use_explicit_caps):
13913         * gst/gstpad.h:
13914         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
13915         to use an internal getcaps and link fuction so that negotiation
13916         always results in the explicitly set caps.
13917         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
13918         are particularly useful for decoders.
13919
13920 2003-12-31  David Schleef  <ds@schleef.org>
13921
13922         * gst/elements/gstidentity.c: (gst_identity_class_init),
13923         (gst_identity_init), (gst_identity_chain),
13924         (gst_identity_set_property), (gst_identity_get_property):
13925         * gst/elements/gstidentity.h:
13926         * gst/gstqueue.c: (gst_queue_init):
13927           Negotiation fixes.
13928
13929 2003-12-31  David Schleef  <ds@schleef.org>
13930
13931         * gst/gstcaps.c: (gst_caps_intersect),
13932         (_gst_caps_normalize_foreach), (gst_caps_normalize):
13933           Implement gst_caps_normalize().
13934         * testsuite/caps/normalisation.c: (main):
13935           Add an additional test
13936
13937 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13938
13939         * gst/gstqueue.c: (gst_queue_init):
13940           use gst_pad_proxy_getcaps()
13941
13942 2003-12-31  David Schleef  <ds@schleef.org>
13943
13944         * gst/elements/gstshaper.c: (gst_shaper_link):
13945         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13946         * gst/gstqueue.c: (gst_queue_link):
13947           Negotiation fixes.
13948
13949 2003-12-31  David Schleef  <ds@schleef.org>
13950
13951         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
13952         * gst/gstpad.h: Add functions that are useful as default pad
13953         link and fixate functions for elements.
13954
13955 2003-12-30  David Schleef  <ds@schleef.org>
13956
13957         * gst/gstpad.c: (gst_pad_link_try):
13958           Fix segfault when attempting to return to old caps
13959
13960 2003-12-29  David Schleef  <ds@schleef.org>
13961
13962         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
13963         (gst_caps_structure_simplify), (gst_caps_simplify):
13964         * gst/gstcaps.h:
13965           Add simplify function
13966         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
13967         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
13968         * gst/gstpad.h:
13969           Copy over srcnotify, sinknotify when calling old pad_link
13970           functions.  Add new is_negotiated() function.
13971         * gst/gststructure.c: (gst_structure_copy):
13972           Fix an incredibly stupid bug that should have been noticed
13973           weeks ago.  _copy() returned the argument, not the new copy.
13974
13975 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13976
13977         * gst/gstcaps.c: (gst_caps_append):
13978           add sanity checks
13979         * gst/gstcaps.h: (gst_caps_debug):
13980           remove, it doesn't exist anymore.
13981         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
13982         (gst_element_threadsafe_properties_post_run):
13983           make debugging messages not clutter up THREAD debug category
13984         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
13985         (gst_element_change_state):
13986           update to new caps API
13987         * gst/gstinterface.c: (gst_implements_interface_cast):
13988           don't put vital code in g_return_if_fail
13989         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
13990         (gst_pad_link_filtered):
13991           add pst_pad_try_link and use it.
13992         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
13993           implement correctly, deprecate first one.
13994         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
13995           add and implement.
13996         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
13997           implement.
13998         (gst_pad_get_negotiated_caps):
13999           add and implement. Make GST_PAD_CAPS call this function.
14000         (gst_pad_get_caps):
14001           remove unneeded check..
14002         (gst_pad_recover_caps_error):
14003           disable, always return FALSE.
14004         (gst_real_pad_dispose):
14005           don't free caps and appfilter anymore, they're unused.
14006         * gst/gstpad.h:
14007           Reflect changes mentioned above.
14008         * gst/gstsystemclock.c: (gst_system_clock_wait):
14009           Make 'clock is way behind' a debugging message.
14010         * gst/gstthread.c: (gst_thread_change_state):
14011           Fix debugging message
14012
14013 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
14014
14015         * gst/gstinfo.h:
14016           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
14017         * docs/gst/tmpl/gstreamer-unused.sgml:
14018           removed all traces of cvs conflicts
14019
14020 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
14021
14022         * configure.ac:
14023         * gst/schedulers/cothreads_compat.h:
14024         * libs/Makefile.am:
14025           remove last instances of wingo cothread usage
14026
14027 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
14028
14029         * gst/gstplugin.c:
14030         * gst/gstversion.h.in:
14031         * gst/parse/grammar.y:
14032           change comment block from /** to /* when not gtk-doc comments
14033
14034 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
14035
14036         * gst/gst.c: whitespace and doc style fixes
14037
14038 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
14039
14040         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
14041
14042 2003-12-24  Colin Walters  <walters@verbum.org>
14043
14044         * gst/elements/gsttypefindelement.c:
14045           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
14046           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
14047           Don't double-free caps.
14048
14049 2003-12-23  David Schleef  <ds@schleef.org>
14050
14051         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
14052           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
14053           Many little fixes and additions of debug statements to
14054           get rhythmbox working.
14055
14056 2003-12-23  Colin Walters  <walters@verbum.org>
14057
14058         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
14059         Use GST_PAD_LINK_SUCCESSFUL.
14060
14061 2003-12-23  David Schleef  <ds@schleef.org>
14062
14063         * gst/elements/gstaggregator.c:
14064         * gst/elements/gsttee.c:
14065           Use gst_pad_proxy_getcaps().
14066         * gst/gstpad.c:
14067         * gst/gstpad.h:
14068           Add gst_pad_proxy_getcaps(), which filter elements can use
14069           as a generic getcaps implementation.
14070           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
14071           was advertised.
14072
14073 2003-12-23  David Schleef  <ds@schleef.org>
14074
14075         * gst/gstpad.c:
14076           Rearrange/rewrite much of the pad negotiation code, since it
14077           resembled pasta.  This actually changes the way some
14078           negotiation works, since the previous code was inconsistent
14079           depending on how it was invoked.  Add (internal) structure
14080           GstPadLink, which is used to hold some information (more in
14081           the future) about the link between two pads.  Fixes a number
14082           of bugs, including random lossage of filter caps when the
14083           initial negotiation is delayed.  A few functions are still
14084           unimplemented.
14085         * gst/gstpad.h:
14086           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
14087           these when testing GstPadLinkReturn values instead of comparing
14088           directly.
14089
14090 2003-12-23  David Schleef  <ds@schleef.org>
14091
14092         * gst/gstvalue.c: 
14093         * gst/gstvalue.h:
14094           Rearrange lots of code.  Change registration of compare function
14095           into registration of compare/serialize/deserialize functions.
14096           Doesn't include implementation of gst_value_[de]serialize(),
14097           but that should be easy.
14098
14099 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
14100
14101         * docs/gst/gstreamer-sections.txt:
14102         * docs/gst/tmpl/gstprops.sgml: removed
14103         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
14104           David removed props and caps code, so let's remove their docs as well.
14105           Removed all no longer existing symbols from gstreamer-sections.txt
14106           
14107 2003-12-22  Colin Walters  <walters@verbum.org>
14108
14109         * gst/gsttaginterface.c, gst/gsttaginterface.h,
14110           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
14111           of tags directly.
14112
14113 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14114
14115         * gst/elements/gstelements.c:
14116           Set ranks of elements to NONE, so the autoplugger doesn't use them.
14117         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
14118           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
14119           gst_caps (peer).
14120
14121 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14122
14123         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
14124         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
14125         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
14126         (gst_spider_identity_sink_loop_type_finding):
14127         * gst/autoplug/gstspideridentity.h:
14128           Fix autoplugging in spider element, so it works with new caps.
14129           This was mainly caused by identifying empty caps incorrectly.
14130
14131 2003-12-22  David Schleef  <ds@schleef.org>
14132
14133         * gststructure.c, gstvalue.c, gstvalue.h: Add
14134           gst_value_init_and_copy() and use it, to avoid silly mistakes in
14135           using g_value_copy()
14136
14137 2003-12-21  David Schleef  <ds@schleef.org>
14138
14139         * many, many files: Merge CAPS branch.  This includes:
14140           - implemention of GstValue and several GstValue types
14141           - implemention of GstStructure
14142           - entire rewrite of GstCaps
14143           - removal of GstProps
14144           - many changes to GstPad to compensate for new caps paradigm
14145           - removal of GstBufferpool
14146         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
14147         gstvalue.h, gst/gstcaps[2]*.[ch]:
14148           - rename gstcaps2.[ch] to gstcaps.[ch]
14149
14150 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
14151
14152         * gst/gstqueue.c: (gst_queue_handle_pending_events),
14153         (gst_queue_chain), (gst_queue_handle_src_event):
14154           implement timeout for sending events. Workaround for if the
14155           pipeline on this queue is not passing any data.
14156
14157 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
14158                                                                                 
14159         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
14160         * moved CVS to freedesktop.org