eliminate another tmpl file, fix spelling in the long-description
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-08-19  Stefan Kost  <ensonic@users.sf.net>
2
3         * docs/gst/tmpl/gst.sgml:
4         * gst/gst.c:
5           eliminate another tmpl file, fix spelling in the long-description
6
7 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
8
9         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
10         (test_event), (timediff), (gstevents_suite):
11           Should fix build on 64-bit arch's
12
13 2005-08-18  Andy Wingo  <wingo@pobox.com>
14
15         Make sure that when a pipeline goes to PLAYING, that data has
16         actually hit the sink.
17
18         * check/states/sinks.c (test_sink): A sink that doesn't get any
19         data shouldn't return SUCCESS for going to either PLAYING or
20         PAUSED. Test also the return values on the way back down.
21
22         * gst/gstelement.c (gst_element_set_state): When changing the
23         state of an element currently changing state asynchronously, go to
24         lost-state after commiting the pending state. Makes future calls
25         to get_state continue to return ASYNC.
26
27         * gst/base/gstbasesink.c (gst_base_sink_change_state): Return
28         ASYNC when going to PLAYING if we still don't have preroll, as can
29         happen with live sources.
30
31 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
32
33         * docs/pwg/advanced-types.xml:
34           Hack long paragraph into 2 chunks as a workaround for buggy
35           jadetex version in sid and breezy that loops infinitely and
36           eats all RAM.
37
38 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
39
40         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
41         (test_event), (timediff), (gstevents_suite):
42           Provide more error margin in clock measurements to allow for 
43           g_get_current_time inaccuracies.
44
45 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
46
47         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
48         (test_event), (timediff), (gstevents_suite):
49            Fix error message output so I might be able to tell why the
50            test works here but fails on the build farm.
51
52 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
53
54         * check/Makefile.am:
55         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
56         (test_event), (timediff), (gstevents_suite), (main):
57           I wrote a test!
58
59         * docs/design/part-seeking.txt:
60           Spelling correction
61
62         * docs/gst/tmpl/gstevent.sgml:
63         * docs/gst/tmpl/gstfakesrc.sgml:
64           Docs updates.
65
66         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
67           Treat a buffer-without-newsegment the same as a receiving 
68           a newsegment not in time format, and disable syncing to the clock
69           with a warning.
70
71         * gst/gstbus.c: (gst_bus_set_sync_handler):
72           Assert if anyone tries to replace the existing sync_handler for bus, 
73           as only the owner should be setting it.
74
75         * gst/gstevent.h:
76           Have a fixed set of custom event enums with events identified by
77           their structure name (as in 0.8), rather than a free-for-all
78           allowing collisions between enum values from different plugins.
79
80         * gst/gstpad.c: (gst_pad_class_init):
81           Docs change.
82           
83         * gst/gstqueue.c: (gst_queue_handle_sink_event):
84           Handle out-of-band downstream events from the sending thread.
85
86 2005-08-17  Andy Wingo  <wingo@pobox.com>
87
88         * gst/gstpipeline.c (gst_pipeline_change_state): Interpret
89         play-timeout==0 to mean no timeout at all. In that case, don't
90         bother with a get_state or a warning, just return directly, even
91         if it's ASYNC.
92
93         * gst/base/gstbasetransform.c: Debug changes.
94
95         * gst/gstutils.h:
96         * gst/gstutils.c (gst_bin_watch_for_state_change): Add function to
97         ensure bins post state change messages. A bit of a hack but I can't
98         think of a way to avoid it.
99
100         * check/gst/gstbin.c (test_watch_for_state_change): Added test.
101
102 2005-08-16  Andy Wingo  <wingo@pobox.com>
103
104         * gst/base/gstadapter.h:
105         * gst/base/gstadapter.c (gst_adapter_take): New function, like
106         peek() but you own the data. Not terribly efficient atm.
107
108 2005-08-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
109
110         * gst/gstutils.c: (gst_element_found_tags_for_pad), (push_and_ref),
111         (gst_element_found_tags):
112         * gst/gstutils.h:
113           Add two utility functions for tag handling.
114
115 2005-08-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
116
117         * docs/manual/advanced-dataaccess.xml:
118         * docs/manual/basics-helloworld.xml:
119           Fix docs to use _bin_add() before _link(), which fixes the examples
120           with recent core versions (reported by Madhan Raj M
121           <raj_madan@rediffmail.com>, #313199).
122
123 2005-08-16  Wim Taymans  <wim@fluendo.com>
124
125         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
126         Added subtract checks.
127
128         * docs/design/part-events.txt:
129         Some more docs about newsegment
130
131         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
132         Fix FIXME
133
134         * gst/gstcaps.c: (gst_caps_to_string):
135         Add comments, cleanups.
136         
137         * gst/gstelement.c: (gst_element_save_thyself):
138         cleanups
139         
140         * gst/gstvalue.c: (gst_value_collect_int_range),
141         (gst_string_unwrap), (gst_value_union_int_int_range),
142         (gst_value_union_int_range_int_range),
143         (gst_value_intersect_int_int_range),
144         (gst_value_intersect_int_range_int_range),
145         (gst_value_intersect_double_double_range),
146         (gst_value_intersect_double_range_double_range),
147         (gst_value_intersect_list), (gst_value_subtract_int_int_range),
148         (gst_value_subtract_int_range_int),
149         (gst_value_subtract_double_range_double),
150         (gst_value_subtract_double_range_double_range),
151         (gst_value_subtract_from_list), (gst_value_subtract_list),
152         (gst_value_can_compare), (gst_value_compare_fraction):
153         Cleanups, add comments, remove unneeded asserts.
154
155 2005-08-15  Thomas Vander Stichele  <thomas at apestaart dot org>
156
157         * tools/gst-launch.c: (event_loop):
158           don't convert NULL structures to strings
159
160 2005-08-15  Stefan Kost  <ensonic@users.sf.net>
161
162         * docs/gst/gstreamer-sections.txt:
163           made some defines private
164         * docs/gst/tmpl/gstconfig.sgml:
165         * docs/gst/tmpl/gstqueue.sgml:
166         * docs/gst/tmpl/gsttaglist.sgml:
167         * docs/gst/tmpl/gsttypes.sgml:
168         * docs/gst/tmpl/gstutils.sgml:
169         * docs/pwg/appendix-porting.xml:
170         * gst/base/gstbasesink.h:
171         * gst/base/gstbasesrc.c:
172         * gst/base/gstbasesrc.h:
173         * gst/elements/gstfakesink.c: (gst_fake_sink_class_init):
174         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init):
175         * gst/gstelement.c: (gst_element_class_init):
176         * gst/gstpad.c: (gst_pad_class_init):
177         * gst/gstqueue.c: (gst_queue_class_init):
178         * gst/gstxml.c: (gst_xml_class_init):
179           documented all undocumented signal inline
180         * libs/gst/controller/gst-controller.h:
181           added padding
182
183 2005-08-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
184
185         * docs/pwg/appendix-porting.xml:
186           Document _set_link_function -> _set_setcaps_function.
187
188 2005-08-15  Thomas Vander Stichele  <thomas at apestaart dot org>
189
190         * check/Makefile.am:
191           add a .check target for running the check
192         * check/gst-libs/controller.c: (GST_START_TEST):
193           cosmetic fixups
194         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
195           complete checks for gstbuffer; would be nice if I could get the
196           gcov stuff to work so I can see if I actually completed gstbuffer.c
197         * check/gstcheck.h:
198           add ASSERT_BUFFER_REFCOUNT
199
200 2005-08-13  Tim-Philipp Müller  <tim at centricular dot net>
201
202         * docs/gst/gstreamer-sections.txt:
203         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
204         * gst/gsttag.h:
205           Add GST_TAG_LANGUAGE_CODE as we have in 0.8, and don't
206           spew out a warning if a tag that is already registered
207           is re-registered, unless it is re-registered with a 
208           different type (#308438).
209
210 2005-08-12  Tim-Philipp Müller  <tim at centricular dot net>
211
212         * docs/pwg/appendix-porting.xml:
213         * docs/pwg/building-state.xml:
214           Add some paragraphs about state changes in 0.9 to the PWG
215           and the porting guide, in particular about the new meaning
216           of GST_STATE_PAUSED and how to write state change functions
217           with concurrent access by multiple threads in mind.
218
219 2005-08-11  Stefan Kost  <ensonic@users.sf.net>
220
221         * docs/gst/gstreamer-docs.sgml:
222         * docs/libs/gstreamer-libs-docs.sgml:
223           added deprecation and since indexes
224         * libs/gst/controller/gst-controller.c:
225         * libs/gst/controller/gst-helper.c:
226           added since tags
227
228
229 2005-08-11  Wim Taymans  <wim@fluendo.com>
230
231         * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked),
232         (gst_proxy_pad_set_target), (gst_proxy_pad_get_target),
233         (gst_proxy_pad_dispose), (gst_ghost_pad_do_activate_push),
234         (gst_ghost_pad_do_link), (gst_ghost_pad_set_internal),
235         (gst_ghost_pad_new_notarget), (gst_ghost_pad_get_target),
236         (gst_ghost_pad_set_target):
237         Actually implement (re)setting the target on a ghostpad
238         as described in the docs.
239
240 2005-08-10  Tim-Philipp Müller  <tim at centricular dot net>
241
242         * gst/gst.c: (gst_init_check_with_popt_table), (init_pre):
243           Check whether GST_DEBUG_NO_COLOR environment variable is
244           set and disable coloured debug output if that is the case.
245
246 2005-08-10  Tim-Philipp Müller  <tim at centricular dot net>
247
248         * gst/base/gsttypefindhelper.c: (helper_find_peek),
249         (gst_type_find_helper):
250           The memory returned by gst_type_find_peek() needs to
251           stay valid until the end of a typefind function, and
252           typefind functions may keep results from different 
253           offsets around, so we can't just unref the buffer from
254           the previous _peek(), but have to save all buffers 
255           returned by _peek() until typefinding is done and only
256           free them then.
257
258 2005-08-09  Tim-Philipp Müller  <tim at centricular dot net>
259
260         * docs/gst/gstreamer-sections.txt:
261         * gst/gstutils.h:
262           New macros: GST_ROUND_UP_2() through GST_ROUND_UP_64().
263
264 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
265
266         * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
267           Fix a pretty good memleak.
268
269 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
270
271         * gst/gstiterator.h:
272           Fix wrong include and 'make distcheck'.
273
274 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
275
276         * gst/gstbin.c: (bin_bus_handler):
277           Use gst_element_post_message() instead.
278
279 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
280
281         * gst/base/gstadapter.h:
282         * gst/base/gstbasesink.h:
283         * gst/base/gstbasesrc.h:
284         * gst/base/gstbasetransform.h:
285         * gst/base/gstcollectpads.h:
286         * gst/base/gstpushsrc.h:
287         * gst/gstiterator.h:
288           Add padding to our base elements' class and instance structs and
289           to GstIterator (you will need to rebuild all plugins and apps!)
290
291 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
292
293         * gst/gstbin.c: (bin_bus_handler):
294           Make default message forwarding from child->bus to bin->bus
295           threadsafe and make it not emit warnings if the parent has no bus.
296
297 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
298
299         * gst/gstelement.c: (activate_pads):
300           On paused->ready, set pad->caps to NULL, as is the documented
301           behaviour in this state change. Fixes playback of series of
302           media files when visualization is enabled in Totem.
303
304 2005-08-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
305
306         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
307           Allow NULL as filter-caps (which means "any").
308
309 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
310
311         * docs/libs/gstreamer-libs-sections.txt:
312         * libs/gst/controller/gst-controller.c:
313         * libs/gst/controller/gst-controller.h:
314         * libs/gst/controller/gst-helper.c:
315           adding more entries to the docs and fix small doc-bugs
316
317 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
318
319         * docs/gst/gstreamer-docs.sgml:
320         * docs/gst/gstreamer-sections.txt:
321         * docs/gst/gstreamer.types:
322         * docs/gst/tmpl/gstbasesink.sgml:
323         * docs/gst/tmpl/gstbasesrc.sgml:
324         * docs/gst/tmpl/gstbasetransform.sgml:
325         * docs/gst/tmpl/gstfakesrc.sgml:
326         * gst/base/gstcollectpads.c:
327         * gst/base/gstcollectpads.h:
328         * libs/gst/controller/gst-controller.c:
329         * libs/gst/controller/gst-controller.h:
330         * libs/gst/controller/gst-helper.c:
331         * libs/gst/controller/gst-interpolation.c:
332         * libs/gst/controller/lib.c:
333           added long/short desc for controller docs
334           added collectpads base class docs
335           added correct includes to base-class docs
336
337 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
338
339         * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
340         (gst_test_mono_source_set_property),
341         (gst_test_mono_source_class_init), (GST_START_TEST),
342         (gst_controller_suite):
343         * docs/gst/gstreamer-docs.sgml:
344         * docs/gst/gstreamer-sections.txt:
345         * docs/gst/gstreamer.types:
346         * docs/libs/gstreamer-libs-docs.sgml:
347         * docs/libs/gstreamer-libs-sections.txt:
348         * gst/base/gstadapter.c:
349         * libs/gst/controller/gst-controller.c:
350         (gst_controlled_property_new), (gst_controlled_property_free),
351         (gst_controller_new_valist),
352         (gst_controller_remove_properties_valist),
353         (gst_controller_sink_values), (_gst_controller_finalize):
354         * libs/gst/controller/gst-controller.h:
355         * libs/gst/controller/gst-helper.c:
356         (gst_object_control_properties), (gst_object_uncontrol_properties),
357         (gst_object_get_controller), (gst_object_set_controller),
358         (gst_object_sink_values), (gst_object_get_value_arrays),
359         (gst_object_get_value_array):
360           more tests (and fixes) for the controller
361           more docs for the controller
362           integrated companies docs for the adapter 
363
364 2005-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
365
366         * check/elements/gstfakesrc.c: (setup_fakesrc), (cleanup_fakesrc),
367         (GST_START_TEST), (fakesrc_suite):
368           add tests for sizetype
369
370 2005-08-04  Andy Wingo  <wingo@pobox.com>
371
372         * gst/elements/gstcapsfilter.c: Reimplement using basetransform,
373         fixes buffer_alloc proxying among other things.
374
375         * gst/base/gstbasetransform.c:
376         * gst/base/gstbasetransform.h:
377         Revert patch to gstbasetransform from 7-28 removing
378         delay_configure.
379
380         * gst/base/gstbasetransform.h (GstBaseTransformClass.get_size):
381         * gst/base/gstbasetransform.c (gst_base_transform_get_size):
382         Semantics changed, should return not the size of the output buffer
383         but the byte size of a buffer with a given caps.
384
385         * gst/base/gstbasetransform.c (gst_base_transform_getcaps): Better
386         debug object.
387         (gst_base_transform_configure_caps): Don't set out_size here: (in,
388         out) are not the pad caps until setcaps finishes.
389         (gst_base_transform_buffer_alloc): Proxy the buffer_alloc for the
390         not-in-place case as well. Deal with changing from in-place to
391         not-in-place within calling pad_alloc_buffer. Still a bit
392         concerned about the overhead here...
393
394 2005-08-03  Andy Wingo  <wingo@pobox.com>
395
396         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): Not
397         fixating is an error.
398
399 2005-08-04  Edward Hervey  <edward@fluendo.com>
400
401         * gst/base/gstadapter.h: 
402         Added gst_adapter_get_type() to the header
403
404 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
405
406         * check/Makefile.am:
407         * check/gst-libs/controller.c:
408         * libs/gst/controller/gst-controller.c:
409         (gst_controller_new_valist):
410           added check test suite for the controller
411         * gst/base/gstpushsrc.c:
412           fixed a doc typo
413
414 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
415
416         * docs/gst/Makefile.am:
417         * docs/gst/gstreamer-docs.sgml:
418         * docs/gst/gstreamer-sections.txt:
419         * docs/gst/gstreamer.types:
420         * docs/gst/tmpl/gstfakesrc.sgml:
421         * gst/base/README:
422         * gst/base/gstbasesink.c:
423         * gst/base/gstbasesink.h:
424         * gst/base/gstbasesrc.c:
425         * gst/base/gstbasesrc.h:
426         * gst/base/gstbasetransform.c:
427         * gst/base/gstpushsrc.c:
428         * gst/base/gstpushsrc.h:
429           add short/long description docs to base classes
430           add pushsrc to the docs
431           remove consolidated doc fragments
432
433 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
434
435         * configure.ac:
436         * docs/libs/Makefile.am:
437         * docs/libs/gstreamer-libs-docs.sgml:
438         * docs/libs/gstreamer-libs-sections.txt:
439         * docs/libs/gstreamer-libs.types:
440         * examples/Makefile.am:
441         * examples/controller/.cvsignore:
442         * examples/controller/Makefile.am:
443         * examples/controller/audio-example.c: (main):
444         * libs/gst/Makefile.am:
445         * libs/gst/controller/.cvsignore:
446         * libs/gst/controller/Makefile.am:
447         * libs/gst/controller/gst-controller.c:
448         (on_object_controlled_property_changed), (gst_timed_value_compare),
449         (gst_timed_value_find),
450         (gst_controlled_property_set_interpolation_mode),
451         (gst_controlled_property_new), (gst_controlled_property_free),
452         (gst_controller_find_controlled_property),
453         (gst_controller_new_valist), (gst_controller_new),
454         (gst_controller_remove_properties_valist),
455         (gst_controller_remove_properties), (gst_controller_set),
456         (gst_controller_set_from_list), (gst_controller_unset),
457         (gst_controller_get), (gst_controller_get_all),
458         (gst_controller_sink_values), (gst_controller_get_value_arrays),
459         (gst_controller_get_value_array),
460         (gst_controller_set_interpolation_mode),
461         (_gst_controller_finalize), (_gst_controller_init),
462         (_gst_controller_class_init), (gst_controller_get_type):
463         * libs/gst/controller/gst-controller.h:
464         * libs/gst/controller/gst-helper.c: (g_object_control_properties),
465         (g_object_uncontrol_properties), (g_object_get_controller),
466         (g_object_set_controller), (g_object_sink_values),
467         (g_object_get_value_arrays), (g_object_get_value_array):
468         * libs/gst/controller/gst-interpolation.c:
469         (gst_controlled_property_find_timed_value_node),
470         (interpolate_none_get), (interpolate_trigger_get),
471         (interpolate_trigger_get_value_array):
472         * libs/gst/controller/lib.c: (gst_controller_init):
473         * pkgconfig/Makefile.am:
474         * pkgconfig/gstreamer-control-uninstalled.pc.in:
475         * pkgconfig/gstreamer-control.pc.in:
476         * testsuite/Makefile.am:
477         * testsuite/controller/.cvsignore:
478         * testsuite/controller/Makefile.am:
479         * testsuite/controller/interpolator.c: (main):
480           added controller code
481           removed dparam pc files
482
483 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
484         * gst/base/gstcollectpads.c: (gst_collectpads_finalize),
485         (gst_collectpads_stop):
486           Broadcast the condition when shutting down, to make sure we wake all
487           threads up. Shut down pads on finalize, for safety.
488
489 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
490         * gst/base/gstbasetransform.c: (gst_base_transform_init),
491         (gst_base_transform_handle_buffer),
492         (gst_base_transform_change_state):
493           Handle PAUSED->READY->PAUSED transition after negotiation
494           occurred already.
495         * gst/gstmessage.c: (gst_message_init):
496           Extra piece of debug for new messages.
497
498 2005-08-01  Stefan Kost  <ensonic@users.sf.net>
499
500         * configure.ac:
501         * docs/gst/tmpl/gstbasesrc.sgml:
502         * docs/gst/tmpl/gstelement.sgml:
503         * docs/gst/tmpl/gstevent.sgml:
504         * docs/gst/tmpl/gstfakesrc.sgml:
505         * docs/gst/tmpl/gstformat.sgml:
506         * docs/gst/tmpl/gstghostpad.sgml:
507         * docs/gst/tmpl/gstpad.sgml:
508         * docs/gst/tmpl/gstquery.sgml:
509         * docs/gst/tmpl/gststructure.sgml:
510         * docs/gst/tmpl/gsttaglist.sgml:
511         * docs/gst/tmpl/gstvalue.sgml:
512         * docs/libs/gstreamer-libs-docs.sgml:
513         * docs/libs/gstreamer-libs-sections.txt:
514         * docs/libs/gstreamer-libs.types:
515         * libs/gst/Makefile.am:
516         * libs/gst/control/.cvsignore:
517         * libs/gst/control/Makefile.am:
518         * libs/gst/control/control.c:
519         * libs/gst/control/control.h:
520         * libs/gst/control/dparam.c:
521         * libs/gst/control/dparam.h:
522         * libs/gst/control/dparam_smooth.c:
523         * libs/gst/control/dparam_smooth.h:
524         * libs/gst/control/dparamcommon.h:
525         * libs/gst/control/dparammanager.c:
526         * libs/gst/control/dparammanager.h:
527         * libs/gst/control/dplinearinterp.c:
528         * libs/gst/control/dplinearinterp.h:
529         * libs/gst/control/unitconvert.c:
530         * libs/gst/control/unitconvert.h:
531         * testsuite/Makefile.am:
532         * testsuite/dynparams/.cvsignore:
533         * testsuite/dynparams/Makefile.am:
534         * testsuite/dynparams/dparamstest.c:
535         * tools/Makefile.am:
536         * tools/gst-inspect.c: (print_element_info), (main):
537         * tools/gst-xmlinspect.c: (print_element_info), (main):
538           deactivate and remove dparams (libgstcontrol)
539
540 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
541
542         * gst/elements/gsttypefindelement.c:
543         (gst_type_find_element_have_type), (gst_type_find_element_init),
544         (stop_typefinding), (gst_type_find_element_handle_event),
545         (gst_type_find_element_chain), (gst_type_find_element_getrange):
546         * gst/elements/gsttypefindelement.h:
547           Set caps on all outgoing buffers, not just the first one.
548
549 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
550
551         * gst/elements/gsttypefindelement.c:
552         (gst_type_find_element_have_type),
553         (gst_type_find_element_check_set_buffer_caps),
554         (gst_type_find_element_init), (stop_typefinding),
555         (gst_type_find_element_handle_event),
556         (gst_type_find_element_chain), (gst_type_find_element_getrange):
557         * gst/elements/gsttypefindelement.h:
558           Set caps on first outgoing buffer when we've found the type.
559
560 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
561
562         * docs/gst/gstreamer-docs.sgml:
563         * docs/gst/gstreamer-sections.txt:
564         * docs/gst/tmpl/gstscheduler.sgml:
565         * docs/gst/tmpl/gstschedulerfactory.sgml:
566           Remove some old cruft from docs.
567
568 2005-07-31  Tim-Philipp Müller  <tim at centricular dot net>
569
570         * gst/gstpad.h:
571           Fix inline docs for GstPadLinkReturn.
572           
573         * gst/gststructure.c: (gst_structure_has_name):
574         * gst/gststructure.h:
575         * docs/gst/gstreamer-sections.txt:
576           New API: gst_structure_has_name().
577
578 2005-07-30  Tim-Philipp Müller  <tim at centricular dot net>
579
580         * configure.ac:
581           Use AC_SYS_LARGEFILE, which will set _FILE_OFFSET_BITS=64
582           and _LARGEFILE_SOURCE in config.h as required. Do not 
583           export those flags in our .pc files any longer (#142209).
584
585           Remove unused GST_DISABLE_OMEGA_COTHREADS stuff.
586
587         * gst/elements/gstfilesink.c: (gst_file_sink_class_init),
588         (gst_file_sink_do_seek), (gst_file_sink_event),
589         (gst_file_sink_get_current_offset), (gst_file_sink_render):
590           Redo seek/tell calls with large file support in mind; add some
591           debugging messages; add log message that tells us when large
592           file support is unavailable or not enabled for some reason.
593
594         * gst/elements/gstfilesrc.c: (gst_file_src_class_init):
595           Add log message that tells us when large file support 
596           is unavailable or not enabled for some reason.
597
598 2005-07-29  Wim Taymans  <wim@fluendo.com>
599
600         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
601         Added test for removing an element with ghostpad from a bin.
602         Fixed test as current implementation does the right thing.
603
604         * gst/gstghostpad.c: (gst_proxy_pad_class_init),
605         (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
606         (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
607         (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
608         (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
609         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
610         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
611         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
612         (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
613         (gst_proxy_pad_get_target), (gst_proxy_pad_init),
614         (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
615         (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
616         (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
617         (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
618         (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
619         (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
620         * gst/gstghostpad.h:
621         Clean up ghostpads, remove properties for internal stuff.
622         Make threadsafe.
623         Fix refcounting.
624         Prepare for switching targets, not all use cases work yet.
625
626 2005-07-29  Wim Taymans  <wim@fluendo.com>
627
628         * docs/design/part-gstghostpad.txt:
629         Small update.
630
631         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
632         (gst_bin_remove_func):
633         Unlinking pads while holding the bin LOCK is not a good
634         idea.
635
636         * gst/gstpad.c: (gst_pad_class_init),
637         (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
638         (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
639         No prob setting template after creating the pad.
640
641 2005-07-29  Jan Schmidt  <thaytan@mad.scientist.com>
642
643         * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
644         (gst_bus_peek), (gst_bus_source_dispatch),
645         (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
646         (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
647           gst_bus_poll may be called from other threads. Handle
648           this nicely by not making poll_data disappear off the
649           stack once gst_bus_poll returns.
650           gst_bus_peek now increments the refcount on the returned
651           message.
652
653 2005-07-29  Wim Taymans  <wim@fluendo.com>
654
655         * docs/design/part-gstghostpad.txt:
656         Overview of current GhostPad datastructures and use
657         cases for changing the target.
658
659 2005-07-28  Wim Taymans  <wim@fluendo.com>
660
661         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
662         Added checks for hierarchy consistency whan adding linked
663         elements to bins.
664
665         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
666         Added check to test element scheduling without bin/pipeline.
667
668         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
669         First add elements to bin, then link.
670         
671         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
672         (gst_bin_remove_func):
673         Unlink pads from elements added/removed from bin to maintain
674         hierarchy consistency.
675
676 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
677
678         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
679         (gst_base_transform_handle_buffer):
680         * gst/base/gstbasetransform.h:
681           Remove broken delay_configure (fixes renegotiation of software
682           scaling pipelines); remove some leftover printf()s.
683
684 2005-07-28  Wim Taymans  <wim@fluendo.com>
685
686         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
687         Added some more tests for wrong hierarchy
688
689         * docs/design/part-overview.txt:
690         Some updates.
691
692         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
693         Cleanups.
694
695         * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
696         (gst_element_dispose):
697         Some more cleanups.
698
699         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
700         (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
701         (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
702         (gst_pad_set_caps), (gst_pad_send_event):
703         Check for correct hierarchy when linking pads. Moving to
704         strict requirement for ghostpads when linking elements in
705         different bins.
706
707         * gst/gstpad.h:
708         Clean ups. Added WRONG_HIERARCHY return value.
709
710 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
711
712         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
713           Better debug if no transform is possible.
714
715 2005-07-27  Wim Taymans  <wim@fluendo.com>
716
717         * docs/random/wtay/network-transp:
718         Some old doc I had.
719
720 2005-07-27  Wim Taymans  <wim@fluendo.com>
721
722         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
723         (gst_dp_event_from_packet):
724         Fix serialization of seek events.
725
726 2005-07-27  Wim Taymans  <wim@fluendo.com>
727
728         * check/gst-libs/gdp.c: (GST_START_TEST):
729         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
730         Fix compilation and fix event serialization.
731
732 2005-07-27  Wim Taymans  <wim@fluendo.com>
733
734         * CHANGES-0.9:
735         * docs/design/part-TODO.txt:
736         * docs/design/part-events.txt:
737         Some docs updates
738
739         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
740         (gst_base_sink_event), (gst_base_sink_do_sync),
741         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
742         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
743         (gst_base_src_do_seek), (gst_base_src_event_handler),
744         (gst_base_src_loop):
745         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
746         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
747         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
748         (gst_base_transform_event), (gst_base_transform_handle_buffer),
749         (gst_base_transform_set_passthrough),
750         (gst_base_transform_is_passthrough):
751         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
752         * gst/elements/gstfilesink.c: (gst_file_sink_event):
753         Event updates.
754
755         * gst/gstbuffer.h:
756         Use faster casts.
757
758         * gst/gstelement.c: (gst_element_seek):
759         * gst/gstelement.h:
760         Update gst_element_seek.
761
762         * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
763         (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
764         (gst_event_new_flush_start), (gst_event_new_flush_stop),
765         (gst_event_new_eos), (gst_event_new_newsegment),
766         (gst_event_parse_newsegment), (gst_event_new_tag),
767         (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
768         (gst_event_parse_qos), (gst_event_new_seek),
769         (gst_event_parse_seek), (gst_event_new_navigation):
770         * gst/gstevent.h:
771         Make GstEvent use GstStructure. Add parsing code, make sure the
772         API is sufficiently generic.
773         Mark possible directions of events and serialization.
774
775         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
776         (_gst_message_copy), (gst_message_new_segment_start),
777         (gst_message_new_segment_done), (gst_message_new_custom),
778         (gst_message_parse_segment_start),
779         (gst_message_parse_segment_done):
780         Small cleanups.
781
782         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
783         (gst_pad_set_caps), (gst_pad_send_event):
784         Update for new events. 
785         Catch events sent in wrong directions.
786
787         * gst/gstqueue.c: (gst_queue_link_src),
788         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
789         (gst_queue_handle_src_query):
790         Event updates.
791
792         * gst/gsttag.c:
793         * gst/gsttag.h:
794         Remove event code from this file.
795
796         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
797         (gst_dp_event_from_packet):
798         Event updates.
799
800 2005-07-27  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
801
802         * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
803         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
804         (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
805           Make debugging actually useful.
806
807 2005-07-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
808
809         * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
810         (gst_pad_fixate_caps):
811           Implement default fixation once again, so that gst_pad_fixate()
812           actually does anything at all. This probably needs to be some
813           sort of a last resort, and use profile-based fixation first, but
814           since that doesn't exist yet, this is the best we have. Fixes
815           visualization in Totem.
816
817 2005-07-22  Wim Taymans  <wim@fluendo.com>
818
819         * docs/design/part-events.txt:
820         Small update.
821
822         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
823         (gst_base_sink_do_sync), (gst_base_sink_activate_push),
824         (gst_base_sink_activate_pull):
825         Some more comments.
826
827         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
828         (gst_fake_src_create):
829         Fix handoff marshall.
830
831         * gst/elements/gstidentity.c: (gst_identity_class_init),
832         (gst_identity_transform_ip):
833         We're a real inplace element.
834
835         * gst/gstbus.c: (gst_bus_post):
836         Added some comments.
837
838         * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
839         * tests/muxing/case1.c: (main):
840         * tests/sched/dynamic-pipeline.c: (main):
841         * tests/sched/interrupt1.c: (main):
842         * tests/sched/interrupt2.c: (main):
843         * tests/sched/interrupt3.c: (main):
844         * tests/sched/runxml.c: (main):
845         * tests/sched/sched-stress.c: (main):
846         * tests/seeking/seeking1.c: (event_received), (main):
847         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
848         (main):
849         * tests/threadstate/threadstate3.c: (main):
850         * tests/threadstate/threadstate4.c: (main):
851         * tests/threadstate/threadstate5.c: (main):
852         Fix the tests.
853
854 2005-07-21  Wim Taymans  <wim@fluendo.com>
855
856         * docs/design/part-seeking.txt:
857         Some small additions.
858
859         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
860         (gst_base_sink_get_times), (gst_base_sink_do_sync),
861         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
862         * gst/base/gstbasesink.h:
863         discont values are gint64, handle the math correctly.
864
865         * gst/base/gstbasesrc.c: (gst_base_src_loop):
866         Make the basesrc report error if the source pad is not linked.
867
868         * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
869         (gst_queue_loop), (gst_queue_handle_src_query),
870         (gst_queue_src_activate_push):
871         Make queue collect data even if the srcpad is not linked.
872         Start pushing out data as soon as it is linked.
873
874         * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
875         * gst/gstutils.h:
876         Added gst_flow_get_name() to ease error reporting.
877
878 2005-07-20  Wim Taymans  <wim@fluendo.com>
879
880         * gst/gstmessage.c: (gst_message_new_segment_start),
881         (gst_message_new_segment_done), (gst_message_parse_segment_start),
882         (gst_message_parse_segment_done):
883         * gst/gstmessage.h:
884         Added a bunch of messages for advanced seeking.
885
886         * gst/parse/grammar.y:
887         * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
888         (gst_dpman_state_changed):
889         Fix some new-pad -> pad-added signals
890
891 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
892
893         * docs/manual/appendix-porting.xml:
894         * docs/pwg/appendix-porting.xml:
895           Document new-pad/state-change signal renames and the FixedList
896           type rename.
897
898 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
899
900         * docs/manual/advanced-autoplugging.xml:
901         * docs/manual/basics-helloworld.xml:
902         * docs/manual/basics-pads.xml:
903         * docs/random/ds/0.9-suggested-changes:
904         * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
905         * gst/gstelement.h:
906         * gst/gstevent.h:
907         * gst/gstformat.h:
908         * gst/gstquery.h:
909         * gst/gststructure.c: (gst_structure_value_get_generic_type),
910         (gst_structure_parse_array), (gst_structure_parse_value):
911         * gst/gstvalue.c: (gst_type_is_fixed),
912         (gst_value_list_prepend_value), (gst_value_list_append_value),
913         (gst_value_list_get_size), (gst_value_list_get_value),
914         (gst_value_transform_array_string), (gst_value_serialize_array),
915         (gst_value_deserialize_array), (gst_value_intersect_array),
916         (gst_value_is_fixed), (_gst_value_initialize):
917         * gst/gstvalue.h:
918           GstElement::new-pad -> pad-added, GstElement::state-change ->
919           state-changed, GstValueFixedList -> GstValueArray, add format and
920           flags as their own arguments in gst_element_seek() (should improve
921           "bindeability"), remove function generators since they don't work
922           under a whole bunch of compilers (they were deprecated already
923           anyway).
924
925 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
926
927         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
928         (_gst_debug_register_funcptr):
929         * gst/gstinfo.h:
930           Fix illegal cast on some platforms (#309253).
931
932 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
933
934         * gst/gstmessage.c: (gst_message_new_custom):
935         * gst/gstmessage.h:
936           Add _new_custom, make _new_application a macro to _new_custom.
937
938 2005-07-20  Wim Taymans  <wim@fluendo.com>
939
940         * gst/base/gstbasesrc.c: (gst_base_src_init),
941         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
942         * gst/base/gstbasesrc.h:
943         Add a gboolean to decide when to push out a discont.
944
945         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
946         (gst_queue_loop), (gst_queue_handle_src_query),
947         (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
948         (gst_queue_set_property), (gst_queue_get_property):
949         Some cleanups.
950
951         * tests/threadstate/threadstate1.c: (main):
952         Make a thread test compile and run... very silly..
953
954
955 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
956
957         * docs/manual/appendix-porting.xml:
958           Mention removal of libgstgconf-0.9.la and existence of gconf
959           elements.
960
961 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
962
963         * docs/pwg/advanced-clock.xml:
964         * docs/pwg/appendix-porting.xml:
965         * docs/pwg/intro-preface.xml:
966         * docs/pwg/other-base.xml:
967         * docs/pwg/other-manager.xml:
968         * docs/pwg/other-nton.xml:
969         * docs/pwg/other-ntoone.xml:
970         * docs/pwg/other-oneton.xml:
971         * docs/pwg/pwg.xml:
972           Document base classes, update sections of n-to-1 and 1-to-n (muxer,
973           demuxer), remove n-to-n (was never written), fix some code examples
974           and links and update the porting section to include all this.
975
976 2005-07-19  Wim Taymans  <wim@fluendo.com>
977
978         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
979         (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
980         (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
981         (gst_queue_src_activate_push), (gst_queue_change_state),
982         (gst_queue_get_property):
983         * gst/gstqueue.h:
984         Propagate GstFlowReturn more intelligently upstream and output
985         an ERROR/EOS when streaming stopped due to fatal error.
986
987 2005-07-19  Wim Taymans  <wim@fluendo.com>
988
989         * tools/gst-launch.c: (check_intr), (event_loop), (main):
990         Don't block forever for the state change to complete, the
991         pipeline already did with a sensible timeout.
992
993 2005-07-19  Wim Taymans  <wim@fluendo.com>
994
995         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
996         Make sure we never call the create function is we
997         got deactivated.
998
999 2005-07-19  Andy Wingo  <wingo@pobox.com>
1000
1001         * gst/parse/parse.l: Attempt to solve bug #172815.
1002
1003 2005-07-19  Wim Taymans  <wim@fluendo.com>
1004
1005         * docs/design/part-clocks.txt:
1006         * docs/design/part-events.txt:
1007         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
1008         Small docs updates.
1009         Only update the seeking values when we are not
1010         busy streaming.
1011
1012 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
1013
1014         * gst/base/gstbasesrc.c: (gst_base_src_loop):
1015           Oops, ignore the result of gst_pad_push_event here.
1016
1017 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
1018
1019         * gst/base/gstbasesrc.c: (gst_base_src_loop),
1020         (gst_base_src_activate_push):
1021           Send discont event from the loop function, as pads
1022           aren't activated yet in the activate_push handler.
1023
1024         * gst/gstbin.c: (bin_bus_handler):
1025           Don't leak element name.
1026
1027 2005-07-18  Andy Wingo  <wingo@pobox.com>
1028
1029         * configure.ac: Use AS_LIBTOOL_TAGS.
1030
1031 2005-07-18  Wim Taymans  <wim@fluendo.com>
1032
1033         * docs/gst/gstreamer.types:
1034         Remove deleted types.
1035
1036 2005-07-18  Wim Taymans  <wim@fluendo.com>
1037
1038         * check/elements/gstfakesrc.c: (GST_START_TEST):
1039         * configure.ac:
1040         * gst/Makefile.am:
1041         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
1042         (init_popt_callback):
1043         * gst/gst.h:
1044         * gst/gst_private.h:
1045         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
1046         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
1047         * gst/gstbin.h:
1048         * gst/gstbus.h:
1049         * gst/gstconfig.h.in:
1050         * gst/gstelement.c: (gst_element_class_init),
1051         (gst_element_set_base_time), (gst_element_get_base_time),
1052         (iterator_fold_with_resync), (gst_element_change_state),
1053         (gst_element_dispose), (gst_element_get_bus):
1054         * gst/gstelement.h:
1055         * gst/gstelementfactory.h:
1056         * gst/gsterror.c: (_gst_core_errors_init):
1057         * gst/gsterror.h:
1058         * gst/gstevent.h:
1059         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
1060         * gst/gstindex.c:
1061         * gst/gstinfo.c: (_gst_debug_init):
1062         * gst/gstmessage.c: (_gst_message_copy):
1063         * gst/gstmessage.h:
1064         * gst/gstminiobject.h:
1065         * gst/gstobject.c:
1066         * gst/gstobject.h:
1067         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
1068         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
1069         * gst/gstpad.h:
1070         * gst/gstparse.h:
1071         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
1072         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
1073         (gst_pipeline_get_last_stream_time):
1074         * gst/gstpipeline.h:
1075         * gst/gstpluginfeature.h:
1076         * gst/gstquery.h:
1077         * gst/gstscheduler.c:
1078         * gst/gstscheduler.h:
1079         * gst/gststructure.h:
1080         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
1081         (gst_task_finalize), (gst_task_func), (gst_task_create),
1082         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
1083         (gst_task_stop), (gst_task_pause):
1084         * gst/gsttask.h:
1085         * gst/gsttypefind.h:
1086         * gst/gsttypes.h:
1087         * gst/registries/gstlibxmlregistry.c: (load_feature),
1088         (gst_xml_registry_load), (gst_xml_registry_save_feature):
1089         * gst/registries/gstxmlregistry.c:
1090         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
1091         * gst/schedulers/threadscheduler.c:
1092         * libs/gst/control/dparammanager.h:
1093         * tools/gst-inspect.c: (print_element_list),
1094         (print_plugin_features), (print_element_features):
1095         * tools/gst-xmlinspect.c: (print_element_list),
1096         (print_plugin_info), (main):
1097         Removed plugable schedulers.
1098         Removed Scheduler/Manager from elements.
1099         Removed gsttypes.h, rearranged includes.
1100         Removed dependency pad<->element, element<>pipeline, and
1101         various others,  fix includes.
1102         implement gst_pad_get_parent() with gst_object_get_parent()
1103         Make GstTask sefcontained.
1104         Fix _get_state() on GstBin, it did not return ASYNC with a 0
1105         timeout.
1106         Fix endless loop in iterator_fold_with_resync.
1107
1108
1109 2005-07-18  Wim Taymans  <wim@fluendo.com>
1110
1111         * gst/Makefile.am:
1112         * gst/gstarch.h:
1113         Remove old file.
1114
1115 2005-07-18  Wim Taymans  <wim@fluendo.com>
1116
1117         * gst/Makefile.am:
1118         No more cothreads.h
1119
1120 2005-07-18  Wim Taymans  <wim@fluendo.com>
1121
1122         * gst/cothreads.c:
1123         * gst/cothreads.h:
1124         Let's remove these.
1125
1126 2005-07-18  Wim Taymans  <wim@fluendo.com>
1127
1128         * docs/design/part-dynamic.txt:
1129         * docs/design/part-events.txt:
1130         * docs/design/part-seeking.txt:
1131         Some more docs in the works.
1132
1133         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
1134         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
1135         (gst_base_transform_setcaps), (gst_base_transform_get_size),
1136         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
1137         (gst_base_transform_handle_buffer),
1138         (gst_base_transform_sink_activate_push),
1139         (gst_base_transform_src_activate_pull),
1140         (gst_base_transform_set_passthrough),
1141         (gst_base_transform_is_passthrough):
1142         Refcounting fixes.
1143
1144         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
1145         Cleanups.
1146
1147         * gst/gstevent.c: (gst_event_finalize):
1148         Set SRC to NULL.
1149
1150         * gst/gstutils.c: (gst_element_unlink),
1151         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
1152         (gst_pad_proxy_setcaps):
1153         * gst/gstutils.h:
1154         Add _get_parent_element() to get a pads parent as an element.
1155
1156 2005-07-18  Wim Taymans  <wim@fluendo.com>
1157
1158         * check/gst/gstbin.c: (GST_START_TEST):
1159         Remove bogus test.
1160
1161 2005-07-18  Wim Taymans  <wim@fluendo.com>
1162
1163         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
1164         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
1165         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
1166         (gst_base_sink_event), (gst_base_sink_do_sync),
1167         (gst_base_sink_chain), (gst_base_sink_loop),
1168         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
1169         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
1170         Refcounting fixes.
1171         Fix logic for returning ASYNC when not prerolled.
1172
1173 2005-07-18  Wim Taymans  <wim@fluendo.com>
1174
1175         * gst/gstqueue.c: (gst_queue_handle_sink_event):
1176         Fix nasty refcount bug.
1177
1178 2005-07-16 Philippe Khalaf <burger@speedy.org>
1179         * gst/elements/gstfdsrc.c:
1180         * gst/elements/gstfdsrc.h:
1181         * gst/elements/gstelements.c:
1182         * gst/elements/Makefile.am:
1183         Ported fdsrc to 0.9.
1184
1185 2005-07-16  Wim Taymans  <wim@fluendo.com>
1186
1187         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1188         (gst_base_sink_do_sync):
1189         Fix compile error.
1190
1191 2005-07-16  Wim Taymans  <wim@fluendo.com>
1192
1193         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1194         (gst_base_sink_event), (gst_base_sink_get_times),
1195         (gst_base_sink_do_sync), (gst_base_sink_change_state):
1196         * gst/base/gstbasesink.h:
1197         Store and use discont values when syncing buffers as described
1198         in design docs.
1199         
1200         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
1201         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
1202         (gst_base_src_activate_push):
1203         Push discont event when starting.
1204
1205         * gst/elements/gstidentity.c: (gst_identity_transform):
1206         Small cleanups.
1207
1208         * gst/gstbin.c: (gst_bin_change_state):
1209         Small cleanups in base_time  distribution.
1210
1211         * gst/gstelement.c: (gst_element_set_base_time),
1212         (gst_element_get_base_time), (gst_element_change_state):
1213         * gst/gstelement.h:
1214         Added methods for the base_time of the element.
1215         Some MT fixes.
1216
1217         * gst/gstpipeline.c: (gst_pipeline_send_event),
1218         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
1219         (gst_pipeline_get_last_stream_time):
1220         * gst/gstpipeline.h:
1221         MT fixes.
1222         Handle seeking as described in design doc, remove stream_time
1223         hack.
1224         Cleanups clock and stream_time selection code. Added accessors
1225         for the stream_time.
1226         
1227
1228 2005-07-16  Andy Wingo  <wingo@pobox.com>
1229
1230         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
1231         (#305291).
1232
1233 2005-07-16  Wim Taymans  <wim@fluendo.com>
1234
1235         * check/gst/gstbin.c: (GST_START_TEST):
1236         Make elements silent as the deep_notify refs the
1237         parent, which might make the test fail.
1238
1239         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
1240         Don't hold the lock for too long.
1241
1242 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
1243
1244         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
1245           Don't unref the caps we passed to gst_caps_make_writable() after
1246           passing them. gst_caps_make_writable() will do that for us.
1247
1248 2005-07-15  Andy Wingo  <wingo@pobox.com>
1249
1250         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
1251         (#157311).
1252
1253         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
1254         own marshalling function for the handoff signal. Properly type the
1255         buffer as a buffer. Fixes some warnings. Should do a more general
1256         solution.
1257         (gst_identity_class_init): Plug into the right marshaller.
1258
1259 2005-07-15  Wim Taymans  <wim@fluendo.com>
1260
1261         * docs/design/part-TODO.txt:
1262         * docs/design/part-clocks.txt:
1263         * docs/design/part-element-sink.txt:
1264         * docs/design/part-events.txt:
1265         * docs/design/part-gstpipeline.txt:
1266         Updated docs, mostly DISCONT related.
1267
1268 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
1269
1270         * docs/pwg/building-pads.xml:
1271           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
1272
1273 2005-07-15  Andy Wingo  <wingo@pobox.com>
1274
1275         * tools/gst-typefind.c: Update, add copyright block.
1276
1277         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
1278         Normalize and truncate caps before fixation.
1279
1280         * gst/gstcaps.h:
1281         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
1282         discards all but the first structure from its argument.
1283
1284 2005-07-15  Wim Taymans  <wim@fluendo.com>
1285
1286         * gst/base/gstbasetransform.c: (gst_base_transform_init),
1287         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
1288         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
1289         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
1290         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
1291         (gst_base_transform_chain), (gst_base_transform_change_state),
1292         (gst_base_transform_set_passthrough),
1293         (gst_base_transform_is_passthrough):
1294         * gst/base/gstbasetransform.h:
1295         Make passthrough work using the bufferpools.
1296         Changed API a bit, subclasses have to write into a buffer
1297         provided by the base class.
1298         More debug info in nego functions.
1299         
1300         * gst/elements/gstidentity.c: (gst_identity_init),
1301         (gst_identity_transform):
1302         Port to new base class.
1303
1304 2005-07-15  Wim Taymans  <wim@fluendo.com>
1305
1306         * gst/gstmessage.c: (gst_message_new_state_changed):
1307         * tools/gst-launch.c: (event_loop), (main):
1308         Totally dump messages in -launch with the -m option.
1309         Fix message name for State messages,
1310
1311 2005-07-14  Wim Taymans  <wim@fluendo.com>
1312
1313         * gst/base/gstbasesrc.c: (gst_base_src_loop):
1314         Post error messages on errors.
1315
1316 2005-07-14  Wim Taymans  <wim@fluendo.com>
1317
1318         * gst/gstcaps.c: (gst_caps_do_simplify):
1319         Remove debug info.
1320
1321         * gst/gsterror.h:
1322         Define error for stream stopped.
1323
1324         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1325         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
1326         Do proper return values.
1327
1328         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
1329         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
1330         (gst_pad_get_range):
1331         Better return values.
1332
1333         * gst/gstpad.h:
1334         Reorganise return values, add macro to check for fatal errors.
1335
1336         * gst/gstqueue.c: (gst_queue_chain):
1337         Return proper GstFlowReturn values,
1338
1339 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
1340
1341         * docs/gst/gstreamer-sections.txt:
1342         * docs/gst/gstreamer.types:
1343         * docs/gst/tmpl/gst.sgml:
1344         * docs/gst/tmpl/gstbasesink.sgml:
1345         * docs/gst/tmpl/gstbasesrc.sgml:
1346         * docs/gst/tmpl/gstbasetransform.sgml:
1347         * docs/gst/tmpl/gstbin.sgml:
1348         * docs/gst/tmpl/gstbuffer.sgml:
1349         * docs/gst/tmpl/gstcaps.sgml:
1350         * docs/gst/tmpl/gstclock.sgml:
1351         * docs/gst/tmpl/gstcompat.sgml:
1352         * docs/gst/tmpl/gstconfig.sgml:
1353         * docs/gst/tmpl/gstelement.sgml:
1354         * docs/gst/tmpl/gstelementdetails.sgml:
1355         * docs/gst/tmpl/gstelementfactory.sgml:
1356         * docs/gst/tmpl/gstenumtypes.sgml:
1357         * docs/gst/tmpl/gsterror.sgml:
1358         * docs/gst/tmpl/gstevent.sgml:
1359         * docs/gst/tmpl/gstfakesink.sgml:
1360         * docs/gst/tmpl/gstfakesrc.sgml:
1361         * docs/gst/tmpl/gstfilesink.sgml:
1362         * docs/gst/tmpl/gstfilesrc.sgml:
1363         * docs/gst/tmpl/gstfilter.sgml:
1364         * docs/gst/tmpl/gstformat.sgml:
1365         * docs/gst/tmpl/gstghostpad.sgml:
1366         * docs/gst/tmpl/gstimplementsinterface.sgml:
1367         * docs/gst/tmpl/gstindex.sgml:
1368         * docs/gst/tmpl/gstindexfactory.sgml:
1369         * docs/gst/tmpl/gstinfo.sgml:
1370         * docs/gst/tmpl/gstiterator.sgml:
1371         * docs/gst/tmpl/gstmacros.sgml:
1372         * docs/gst/tmpl/gstmemchunk.sgml:
1373         * docs/gst/tmpl/gstminiobject.sgml:
1374         * docs/gst/tmpl/gstobject.sgml:
1375         * docs/gst/tmpl/gstpad.sgml:
1376         * docs/gst/tmpl/gstpadtemplate.sgml:
1377         * docs/gst/tmpl/gstparse.sgml:
1378         * docs/gst/tmpl/gstpipeline.sgml:
1379         * docs/gst/tmpl/gstplugin.sgml:
1380         * docs/gst/tmpl/gstpluginfeature.sgml:
1381         * docs/gst/tmpl/gstquery.sgml:
1382         * docs/gst/tmpl/gstqueue.sgml:
1383         * docs/gst/tmpl/gstregistry.sgml:
1384         * docs/gst/tmpl/gstregistrypool.sgml:
1385         * docs/gst/tmpl/gstscheduler.sgml:
1386         * docs/gst/tmpl/gstschedulerfactory.sgml:
1387         * docs/gst/tmpl/gststructure.sgml:
1388         * docs/gst/tmpl/gstsystemclock.sgml:
1389         * docs/gst/tmpl/gsttaglist.sgml:
1390         * docs/gst/tmpl/gsttagsetter.sgml:
1391         * docs/gst/tmpl/gsttrace.sgml:
1392         * docs/gst/tmpl/gsttrashstack.sgml:
1393         * docs/gst/tmpl/gsttypefind.sgml:
1394         * docs/gst/tmpl/gsttypefindfactory.sgml:
1395         * docs/gst/tmpl/gsttypes.sgml:
1396         * docs/gst/tmpl/gsturihandler.sgml:
1397         * docs/gst/tmpl/gsturitype.sgml:
1398         * docs/gst/tmpl/gstutils.sgml:
1399         * docs/gst/tmpl/gstvalue.sgml:
1400         * docs/gst/tmpl/gstversion.sgml:
1401         * docs/gst/tmpl/gstxml.sgml:
1402         * docs/libs/tmpl/gstcontrol.sgml:
1403         * docs/libs/tmpl/gstdataprotocol.sgml:
1404         * docs/libs/tmpl/gstdparam.sgml:
1405         * docs/libs/tmpl/gstdplinint.sgml:
1406         * docs/libs/tmpl/gstdpman.sgml:
1407         * docs/libs/tmpl/gstdpsmooth.sgml:
1408         * docs/libs/tmpl/gstgetbits.sgml:
1409         * docs/libs/tmpl/gstunitconvert.sgml:
1410         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
1411         (gst_push_src_base_init), (gst_push_src_class_init),
1412         (gst_push_src_init), (gst_push_src_create):
1413         * gst/base/gstpushsrc.h:
1414         * gst/elements/gstelements.c:
1415         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
1416         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
1417         (gst_fake_sink_init), (gst_fake_sink_set_property),
1418         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
1419         (gst_fake_sink_event), (gst_fake_sink_preroll),
1420         (gst_fake_sink_render), (gst_fake_sink_change_state):
1421         * gst/elements/gstfakesink.h:
1422         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
1423         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
1424         (gst_fake_src_base_init), (gst_fake_src_class_init),
1425         (gst_fake_src_init), (gst_fake_src_event_handler),
1426         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
1427         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
1428         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
1429         (gst_fake_src_create_buffer), (gst_fake_src_create),
1430         (gst_fake_src_start), (gst_fake_src_stop):
1431         * gst/elements/gstfakesrc.h:
1432         * gst/elements/gstfilesink.c: (_do_init),
1433         (gst_file_sink_base_init), (gst_file_sink_class_init),
1434         (gst_file_sink_init), (gst_file_sink_dispose),
1435         (gst_file_sink_set_location), (gst_file_sink_set_property),
1436         (gst_file_sink_get_property), (gst_file_sink_open_file),
1437         (gst_file_sink_close_file), (gst_file_sink_query),
1438         (gst_file_sink_event), (gst_file_sink_render),
1439         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
1440         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
1441         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
1442         * gst/elements/gstfilesink.h:
1443         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
1444         (gst_file_src_class_init), (gst_file_src_init),
1445         (gst_file_src_finalize), (gst_file_src_set_location),
1446         (gst_file_src_set_property), (gst_file_src_get_property),
1447         (gst_file_src_map_region), (gst_file_src_map_small_region),
1448         (gst_file_src_create_mmap), (gst_file_src_create_read),
1449         (gst_file_src_create), (gst_file_src_is_seekable),
1450         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
1451         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
1452         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
1453         (gst_file_src_uri_handler_init):
1454         * gst/elements/gstfilesrc.h:
1455           more autistic cleanliness in functions/names/defines
1456
1457 2005-07-13  Andy Wingo  <wingo@pobox.com>
1458
1459         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
1460         source couldn't negotiate.
1461
1462         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
1463         connections again.
1464
1465         * gst/gstutils.h:
1466         * gst/gstutils.c (gst_element_link_pads_filtered): New old
1467         function. I am channeling Hades. Put your boots on suckers!!!
1468
1469 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
1470
1471         * testsuite/caps/Makefile.am:
1472         * testsuite/caps/value_compare.c:
1473         * testsuite/caps/value_intersect.c:
1474         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
1475           move two testsuite apps over to the check dir
1476
1477 2005-07-12  Wim Taymans  <wim@fluendo.com>
1478
1479         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
1480         Added more debug info in the negotiate process.
1481
1482         * gst/gstmessage.h:
1483         Prepare for segment playback.
1484
1485         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
1486         Better debugging.
1487
1488         * gst/gstutils.c:
1489         Some more docs.
1490
1491         * tools/gst-launch.c: (main):
1492         NULL pipeline on errors.
1493
1494 2005-07-12  Andy Wingo  <wingo@pobox.com>
1495
1496         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
1497         not it comes from a malloc region. Make sure our copy gets freed.
1498
1499 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1500
1501         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
1502         * check/gst/gstmessage.c: (GST_START_TEST):
1503         * check/gst/gststructure.c: (GST_START_TEST),
1504         (gst_structure_suite), (main):
1505           more testing
1506         * gst/gstelement.c: (gst_element_message_full):
1507           clean up GError and debug string now that they get copied
1508         * gst/gstmessage.c: (gst_message_new_error),
1509         (gst_message_new_warning), (gst_message_parse_error),
1510         (gst_message_parse_warning):
1511           use GST_TYPE_G_ERROR for structure_new, and take copies of
1512           arguments, so that we don't mess up refcounting
1513
1514 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1515
1516         * check/Makefile.am:
1517           add per-test valgrind targets
1518         * check/gst-libs/gdp.c: (GST_START_TEST),
1519         (gst_data_protocol_suite), (main):
1520           clean up
1521
1522 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1523
1524         * check/Makefile.am:
1525           instate more valgrindable tests
1526         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1527         (GST_START_TEST), (fakesrc_suite):
1528         * check/gst/gstpad.c: (GST_START_TEST):
1529         * check/gst/gststructure.c: (GST_START_TEST):
1530           fix test leaks
1531         * docs/gst/tmpl/gstminiobject.sgml:
1532         * gst/gstpad.c: (gst_pad_finalize):
1533           fix the static mutex leak
1534
1535 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1536
1537         * check/Makefile.am:
1538           add two more tests for valgrinding
1539         * check/gst/gstvalue.c: (GST_START_TEST):
1540           test refcount of deserialized buffer, found a leak
1541         * docs/gst/gstreamer-docs.sgml:
1542         * docs/gst/gstreamer-sections.txt:
1543         * docs/gst/gstreamer.types:
1544         * docs/gst/tmpl/gstminiobject.sgml:
1545           add miniobject to docs
1546         * gst/gstminiobject.c:
1547           add some docs
1548         * gst/gstvalue.c: (gst_value_deserialize_buffer),
1549         (gst_string_unwrap):
1550           fix a hard-to-find invalid write for one of the tests
1551           fix a leak for deserialized buffers
1552
1553 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1554
1555         * docs/pwg/advanced-events.xml:
1556         * docs/pwg/advanced-request.xml:
1557         * docs/pwg/advanced-scheduling.xml:
1558         * docs/pwg/appendix-porting.xml:
1559         * docs/pwg/building-boiler.xml:
1560         * docs/pwg/intro-preface.xml:
1561         * docs/pwg/other-ntoone.xml:
1562           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
1563           of example code and explanation for pad activation, loop() and
1564           getrange() functions and a bit more. Remove old comments pointing
1565           to loop-functions.
1566         * examples/pwg/Makefile.am:
1567           Add loop/getrange examples.
1568
1569 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1570
1571         * configure.ac:
1572           check for valgrind binary + some fixes
1573         * check/gst.supp:
1574           valgrind suppressions for the tests
1575         * check/Makefile.am:
1576           add a valgrind: target that valgrinds the unit tests
1577         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
1578         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
1579         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1580         * check/gst/gstghostpad.c:
1581           added some cleanup
1582         * check/gst/gstdata.c:
1583           removed
1584         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
1585         (thread_unref), (gst_mini_object_suite), (main):
1586           added
1587         * gst/gst.c: (gst_deinit):
1588         * gst/gst.h:
1589           add a method to clean up.
1590         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1591         (gst_system_clock_obtain):
1592           allow for disposing the system clock.
1593         * tools/gst-launch.c: (main):
1594           deinit
1595
1596 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1597
1598         * docs/gst/tmpl/gstbasesrc.sgml:
1599         * docs/gst/tmpl/gstfakesrc.sgml:
1600         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1601         (gst_base_src_init), (gst_base_src_set_property),
1602         (gst_base_src_get_property), (gst_base_src_get_range),
1603         (gst_base_src_start):
1604         * gst/base/gstbasesrc.h:
1605           add num-buffers property
1606         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1607         (gst_fakesrc_init), (gst_fakesrc_set_property),
1608         (gst_fakesrc_get_property), (gst_fakesrc_create),
1609         (gst_fakesrc_start):
1610           remove num-buffers property
1611
1612 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1613
1614         * docs/gst/gstreamer-sections.txt:
1615         * docs/gst/tmpl/gstbasesink.sgml:
1616         * docs/gst/tmpl/gstbasesrc.sgml:
1617         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
1618         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
1619         (gst_base_sink_finalize), (gst_base_sink_set_clock),
1620         (gst_base_sink_set_property), (gst_base_sink_get_property),
1621         (gst_base_sink_handle_object), (gst_base_sink_event),
1622         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
1623         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
1624         (gst_base_sink_loop), (gst_base_sink_deactivate),
1625         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
1626         (gst_base_sink_change_state):
1627         * gst/base/gstbasesink.h:
1628         * gst/base/gstbasesrc.h:
1629         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
1630         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
1631         (gst_filesink_init):
1632           more macro splitting
1633
1634 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1635
1636         * gst/gstelement.c: (gst_element_get_bus):
1637           add debug
1638         * tools/gst-launch.c: (check_intr), (event_loop):
1639           fix bus leaks
1640
1641 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1642
1643         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
1644           fix a caps leak
1645
1646 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1647
1648         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1649         (gst_base_src_finalize):
1650           add finalize method and clean up properly
1651         * gst/gstpipeline.c: (gst_pipeline_dispose):
1652           add debug
1653
1654 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1655
1656         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
1657         (gst_bin_suite):
1658           add more things to check
1659         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
1660         * gst/gstelement.c:
1661           more debug
1662
1663 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1664
1665         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1666         (GST_START_TEST), (fakesrc_suite):
1667         * check/gst-libs/gdp.c: (GST_START_TEST):
1668         * check/gst/gst.c: (GST_START_TEST):
1669         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
1670         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1671         * check/gst/gstbus.c: (GST_START_TEST):
1672         * check/gst/gstcaps.c: (GST_START_TEST):
1673         * check/gst/gstdata.c: (GST_START_TEST):
1674         * check/gst/gstelement.c: (GST_START_TEST):
1675         * check/gst/gstghostpad.c: (GST_START_TEST):
1676         * check/gst/gstiterator.c: (GST_START_TEST):
1677         * check/gst/gstmessage.c: (GST_START_TEST):
1678         * check/gst/gstobject.c: (GST_START_TEST):
1679         * check/gst/gstpad.c: (GST_START_TEST):
1680         * check/gst/gststructure.c: (GST_START_TEST):
1681         * check/gst/gstsystemclock.c: (GST_START_TEST),
1682         (gst_systemclock_suite):
1683         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
1684         * check/gst/gstvalue.c: (GST_START_TEST):
1685         * check/pipelines/cleanup.c: (GST_START_TEST):
1686         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
1687         * check/states/sinks.c: (GST_START_TEST):
1688         * check/gstcheck.c: (gst_check_init):
1689         * check/gstcheck.h:
1690           add debugging category
1691           use GST_START_TEST now, so we add a debug line
1692
1693 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1694
1695         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
1696           add test for state change message on a bin
1697         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
1698           add another test
1699         * gst/gstbin.c: (gst_bin_init):
1700         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
1701         * gst/gstelement.c: (gst_element_post_message),
1702         (gst_element_set_state):
1703         * gst/gstelementfactory.c: (gst_element_factory_create):
1704         * gst/gstmessage.c: (gst_message_new):
1705         * gst/gstscheduler.c:
1706           various debugging additions and cleanups
1707
1708 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1709
1710         * check/Makefile.am:
1711         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
1712         (main):
1713           adding tests for elements
1714         * gst/gstelement.c: (gst_element_dispose):
1715
1716 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1717
1718         * gst/registries/gstlibxmlregistry.c: (load_feature):
1719           plug more leaks.  A simple gst_init() now is leakfree, yay.
1720
1721 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1722
1723         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
1724         (gst_xml_registry_load):
1725           plug another memleak
1726
1727 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1728
1729         * configure.ac:
1730           use GST_SET_ERROR_CFLAGS
1731         * docs/faq/cvs.xml:
1732           change to ERROR_CFLAGS
1733
1734 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1735
1736         * configure.ac:
1737           make GST_ERROR_CFLAGS overridable and re-enable Werror
1738         * docs/faq/cvs.xml:
1739           add a note about error CFLAGS
1740         * docs/gst/tmpl/gstfakesrc.sgml:
1741         * gst/elements/gstfakesrc.c:
1742           comment out some unused code
1743         * gst/gst.c: (split_and_iterate):
1744         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
1745         (load_feature):
1746           plug some memleaks
1747
1748 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1749
1750         * common/Makefile.am:
1751         * common/gtk-doc.mak:
1752         * docs/gst/Makefile.am:
1753           factor out gtk-doc.mak
1754
1755 2005-07-07  Wim Taymans  <wim@fluendo.com>
1756
1757         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
1758         (gst_thread_scheduler_dispose):
1759         Unlock the STREAM_LOCK completely.
1760
1761 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1762
1763         * check/Makefile.am:
1764         * check/elements/.cvsignore:
1765         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1766         (START_TEST), (fakesrc_suite), (main):
1767         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1768         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
1769         (gst_fakesrc_create), (gst_fakesrc_start):
1770         * gst/elements/gstfakesrc.h:
1771           adding a first element test
1772
1773 2005-07-07  Andy Wingo  <wingo@pobox.com>
1774
1775         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
1776         debug message.
1777
1778 2005-07-07  Wim Taymans  <wim@fluendo.com>
1779
1780         * gst/gstquery.c:
1781         * gst/gstquery.h:
1782         Remove old types
1783
1784 2005-07-07  Wim Taymans  <wim@fluendo.com>
1785
1786         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
1787         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
1788         Allow subclasses to implement their own negotiation.
1789
1790 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1791
1792         * docs/design/part-gstbin.txt:
1793         * docs/design/part-gstpipeline.txt:
1794           Update design notes to reflect the movement of
1795           responsibility for bus handling from GstPipeline to
1796           GstBin
1797
1798 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1799
1800         * configure.ac:
1801           Remove unnecessary queue2/3/4 examples.
1802
1803 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1804
1805         * examples/Makefile.am:
1806         * examples/helloworld/helloworld.c: (event_loop), (main):
1807         * examples/queue/queue.c: (event_loop), (main):
1808         * examples/queue2/queue2.c: (main):
1809           Update a couple of the examples to work again.
1810
1811         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1812         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
1813          Spelling corrections and extra debug.
1814         
1815         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
1816         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
1817         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
1818         * gst/gstbin.h:
1819         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
1820         (gst_pipeline_change_state):
1821         * gst/gstpipeline.h:
1822           Move the bus handler for children to the GstBin, and create a
1823           separate bus for receiving messages from children to the one the
1824           bus sends 'upwards' on.
1825
1826 2005-07-06  Wim Taymans  <wim@fluendo.com>
1827
1828         * gst/base/README:
1829         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1830         (gst_base_sink_handle_object), (gst_base_sink_loop),
1831         (gst_base_sink_change_state):
1832         * gst/base/gstbasesink.h:
1833         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1834         (gst_base_src_init), (gst_base_src_setcaps),
1835         (gst_base_src_getcaps), (gst_base_src_loop),
1836         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
1837         (gst_base_src_start), (gst_base_src_change_state):
1838         * gst/base/gstbasesrc.h:
1839         Make basesrc negotiate.
1840         Handle the case where preroll fails in basesink.
1841         Update README.
1842
1843 2005-07-06  Wim Taymans  <wim@fluendo.com>
1844
1845         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
1846         Implement the fixate function.
1847         Clean up acceptcaps.
1848
1849 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1850
1851         * docs/pwg/building-filterfactory.xml:
1852         * docs/pwg/pwg.xml:
1853           Remove never-written filter-factory chapter; I'll add the various
1854           base classes to part 4 ("other element types") later on.
1855
1856 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1857
1858         * docs/pwg/advanced-negotiation.xml:
1859         * docs/pwg/building-boiler.xml:
1860         * docs/pwg/building-pads.xml:
1861         * docs/pwg/pwg.xml:
1862         * examples/pwg/Makefile.am:
1863           Add a chapter on caps negotiation, simplify the original code
1864           samples a bit w.r.t. caps negotiation, add link to the advanced
1865           section. Add a bunch of examples showing different use cases of
1866           different types of caps negotiation. Upstream renegotiation isn't
1867           fully documented yet since nobody knows how that works.
1868
1869 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
1870
1871         * check/gst/gstpad.c:
1872         * check/gstcheck.c:
1873         * gst/gstpad.c: (gst_pad_get_internal_links_default):
1874           if pad has no parent, return NULL as list of internal links
1875
1876 2005-07-05  Andy Wingo  <wingo@pobox.com>
1877
1878         * gst/elements/gstfilesrc.c:
1879         * gst/elements/gstfakesrc.c: 
1880         * gst/base/gstpushsrc.c:
1881         * gst/base/gstbasesrc.h: 
1882         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
1883         
1884 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
1885
1886         * Makefile.am:
1887           better report generation target (lcov needs a patch)
1888
1889 2005-07-05  Andy Wingo  <wingo@pobox.com>
1890
1891         * gst/elements, testsuite: Null if we got it...
1892
1893 2005-07-05  Wim Taymans  <wim@fluendo.com>
1894
1895         * configure.ac:
1896         * libs/gst/dataprotocol/Makefile.am:
1897         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
1898         * libs/gst/dataprotocol/dataprotocol.h:
1899         * pkgconfig/Makefile.am:
1900         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
1901         * pkgconfig/gstreamer-dataprotocol.pc.in:
1902         Ported dataprotol to 0.9. 
1903         Added pkgconfig files.
1904
1905 2005-07-05  Andy Wingo  <wingo@pobox.com>
1906
1907         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
1908         Default to returning TRUE for the case when tranform_caps returns
1909         a fixed caps, like for identity or volume.
1910
1911         * check/gst/gstbus.c (pound_bus_with_messages): 
1912         * check/gst/gstmessage.c (START_TEST): 
1913         * check/pipelines/simple_launch_lines.c (got_handoff): Application
1914         message API change.
1915
1916         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
1917         logic weaks here: always run transform_caps, trying passthrough
1918         operation only if the original caps intersects with the transform.
1919
1920         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
1921         source and sink caps.
1922
1923         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
1924         Intersect the peer caps with the pad template before going into
1925         transform_caps.
1926         (gst_base_transform_transform_caps): More debugging.
1927
1928         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
1929         src argument.
1930
1931 2005-07-04  Edward Hervey  <edward@fluendo.com>
1932
1933         * gst/gstutils.c:
1934         * gst/gstutils.h:
1935         (gst_pad_add_*_probe): now returns the signal id for better wrapping
1936         in bindings.
1937
1938 2005-07-04  Andy Wingo  <wingo@pobox.com>
1939
1940         * check/gst/gstpad.c: Only set explicit caps on pads.
1941
1942 2005-07-01  Andy Wingo  <wingo@pobox.com>
1943
1944         * tests/network-clock.scm: Commentary update.
1945
1946         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
1947         Didn't really make sense, not implementable with basetransform,
1948         etc.
1949         (gst_identity_transform): Unref inbuf via make_writable. Feeble
1950         attempt at implementing the sync property, needs an unlock method.
1951
1952         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
1953         New func, by default returns the same caps (the identity
1954         transformation).
1955         (gst_base_transform_getcaps): Uses transform_caps to return
1956         something sensible.
1957         (gst_base_transform_setcaps): Complicated logic to get caps on
1958         both pads, even if they are different, and to call set_caps once
1959         for every time both pads get their caps set.
1960         (gst_base_transform_handle_buffer): Give the ref to the transform
1961         function. Allows in-place modification of the buffer.
1962
1963         * gst/base/gstbasetransform.h (transform_caps): New class method.
1964         Given caps on one side, what can I do on the other.
1965         (set_caps): Take two caps, one for each side of the element.
1966
1967         * gst/gstpad.h:
1968         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
1969         caps in place. This is safe because we can check the mutability of
1970         the caps, and a good idea because fixate functions are just called
1971         as a matter of last resort. (Not actually implemented.)
1972         (gst_pad_set_caps): If the caps we're setting is actually the same
1973         as the existing pad caps, just update the pointer without calling
1974         setcaps. Assert that caps is either NULL or fixed, as per the
1975         docs.
1976
1977         * gst/gstghostpad.c: Update for fixate changes.
1978
1979 2005-07-02  Andy Wingo  <wingo@pobox.com>
1980
1981         * gst/gstcaps.c:
1982         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
1983         two refcounts makes it immutable, which is enough. Doc more.
1984
1985 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
1986
1987         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
1988           Put the mini_object into GValue as a mini_object,
1989           not a gpointer, since that's how we declared
1990           the signal.
1991
1992 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1993
1994         * examples/pwg/Makefile.am:
1995           Fix buildbot again.
1996
1997 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1998
1999         * docs/pwg/building-testapp.xml:
2000           Add extra check.
2001         * examples/pwg/Makefile.am:
2002           Fix buildbot.
2003
2004 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2005
2006         * configure.ac:
2007         * examples/Makefile.am:
2008         * examples/pwg/Makefile.am:
2009         * examples/pwg/extract.pl:
2010           Enable building the PWG examples.
2011         * docs/pwg/advanced-interfaces.xml:
2012           Add URI interface stub.
2013         * docs/pwg/advanced-types.xml:
2014         * docs/pwg/other-autoplugger.xml:
2015         * docs/pwg/appendix-porting.xml:
2016         * docs/pwg/pwg.xml:
2017           Add porting guide (mostly stubs), remove autoplugging (see ADM).
2018         * docs/pwg/building-boiler.xml:
2019         * docs/pwg/building-chainfn.xml:
2020         * docs/pwg/building-pads.xml:
2021         * docs/pwg/building-props.xml:
2022         * docs/pwg/building-state.xml:
2023         * docs/pwg/building-testapp.xml:
2024           Update the building-*.xml parts for 0.9 changes. All examples
2025           code blocks compile in examples/pwg/*.
2026
2027 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2028
2029         * docs/manual/advanced-autoplugging.xml:
2030         * docs/manual/appendix-checklist.xml:
2031         * docs/manual/appendix-integration.xml:
2032         * docs/manual/highlevel-components.xml:
2033           Fix playbin/decodebin examples, update docs a bit, mention bus
2034           instead of signals in various places, mention kmplayer and
2035           kaffeine since they have a working GStreamer backend in the KDE
2036           section.
2037
2038 2005-06-30  Wim Taymans  <wim@fluendo.com>
2039
2040         * CHANGES-0.9:
2041         * docs/design/draft-ghostpads.txt:
2042         * docs/design/draft-push-pull.txt:
2043         * docs/design/draft-query.txt:
2044         * docs/design/part-TODO.txt:
2045         * docs/design/part-query.txt:
2046         Added CHANGES-0.9 doc, updated status of other docs.
2047         
2048         * gst/gstquery.h:
2049         Remove "hmm" macro
2050
2051 2005-06-30  Wim Taymans  <wim@fluendo.com>
2052
2053         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
2054         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
2055         (gst_base_sink_change_state):
2056         * gst/base/gstbasesink.h:
2057         Some tweaks, only EOS and a buffer complete a preroll.
2058
2059 2005-06-30  Andy Wingo  <wingo@pobox.com>
2060
2061         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
2062         activate_push down to the internal pad as well.
2063
2064 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
2065
2066         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2067
2068         * gst/gsttaginterface.c:
2069           Some documentation fixes (#307394 and #307397).
2070
2071 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
2072
2073         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2074
2075         * gst/gstvalue.c: (gst_value_intersect_list):
2076           Fix memleak (#309125).
2077
2078 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2079
2080         * docs/manual/advanced-dataaccess.xml:
2081           Fix fakesrc example to compile; doesn't work, bug somewhere...?
2082         * docs/manual/basics-pads.xml:
2083           Add reference for filtered caps to above chapter.
2084
2085 2005-06-30  Wim Taymans  <wim@fluendo.com>
2086
2087         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
2088         (gst_bin_change_state):
2089         Probes are gone.
2090         Lame attempt at making the state change function a bit
2091         more readable.
2092
2093 2005-06-30  Wim Taymans  <wim@fluendo.com>
2094
2095         * docs/design/part-clocks.txt:
2096         * docs/design/part-element-sink.txt:
2097         * docs/design/part-events.txt:
2098         * docs/design/part-preroll.txt:
2099         * docs/design/part-states.txt:
2100         Some more tweeks and additions to the docs.
2101
2102 2005-06-30  Wim Taymans  <wim@fluendo.com>
2103
2104         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
2105         (default_have_data), (gst_pad_class_init), (gst_pad_init),
2106         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
2107         (gst_pad_check_pull_range), (gst_pad_get_range),
2108         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
2109         * gst/gstpad.h:
2110         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
2111         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
2112         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
2113         (gst_pad_remove_buffer_probe):
2114         Removed atomic operations, use existing LOCK.
2115         Move exception handling out of main code path.
2116
2117 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2118
2119         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
2120         (silly_return_true_function), (gst_pad_class_init),
2121         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
2122         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
2123         (gst_pad_send_event):
2124           Fix accumulator, add default value by using _emitv() instead
2125           of _emit() for signal emission.
2126
2127 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2128
2129         * docs/manual/advanced-dataaccess.xml:
2130         * examples/manual/Makefile.am:
2131           Add probe example.
2132         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
2133           Make work (??).
2134
2135 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
2136
2137         * gst/elements/gstfilesink.c: (gst_filesink_render):
2138           Simplify code so that we don't have to handle short
2139           writes and return GST_FLOW_ERROR if an error occured.
2140
2141 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2142
2143         * docs/gst/gstreamer-docs.sgml:
2144           Remove probes more.
2145
2146 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2147
2148         * docs/gst/gstreamer-sections.txt:
2149         * docs/gst/tmpl/gstpad.sgml:
2150         * docs/gst/tmpl/gstprobe.sgml:
2151         * gst/Makefile.am:
2152         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
2153         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
2154         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
2155         (gst_pad_push_event), (gst_pad_send_event):
2156         * gst/gstpad.h:
2157         * gst/gstutils.c: (gst_pad_add_data_probe),
2158         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
2159         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
2160         (gst_pad_remove_buffer_probe):
2161         * gst/gstutils.h:
2162           Remove old probes, add new g-signal-based probes and some utility
2163           functions.
2164
2165 2005-06-29  Edward Hervey  <edward@fluendo.com>
2166
2167         * gst/gstelementfactory.c:
2168         * gst/gstutils.h:
2169         * gst/gstutils.c:
2170         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
2171         the definition to the header file.
2172
2173 2005-06-29  Andy Wingo  <wingo@pobox.com>
2174
2175         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
2176         plugins from the source directory.
2177
2178 2005-06-29  Wim Taymans  <wim@fluendo.com>
2179
2180         * docs/gst/tmpl/gstbuffer.sgml:
2181         * docs/gst/tmpl/gstclock.sgml:
2182         Some fixings for blantently wrong text.
2183
2184 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
2185
2186         * check/Makefile.am:
2187         * gst/gst.c: (add_path_func), (init_pre):
2188         * gst/gstregistry.c: (gst_registry_add_path):
2189           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
2190           only scan the GST_PLUGIN_PATH locations, and not add
2191           system locations
2192
2193 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
2194
2195         * docs/gst/gstreamer-sections.txt:
2196         * docs/gst/tmpl/gstbasesrc.sgml:
2197         * gst/gstelement.c:
2198         * gst/gstelement.h:
2199         * gst/gstevent.c:
2200         * gst/gstutils.c:
2201           doc fixes
2202
2203 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2204
2205         * docs/manual/advanced-autoplugging.xml:
2206           Fix autoplugging example.
2207
2208 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2209
2210         * docs/manual/advanced-autoplugging.xml:
2211         * docs/manual/mime-world.fig:
2212           Try to get autoplugging working, fix type detection. Fix text
2213           in hello-world image.
2214
2215 2005-06-29  Wim Taymans  <wim@fluendo.com>
2216
2217         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
2218         (gst_base_sink_change_state):
2219         Small debug line.
2220
2221         * gst/gstclock.h:
2222         map SIGNAL and BROADCAST to the right function.
2223
2224         * gst/gstobject.h:
2225         Remove redundant braces.
2226
2227         * gst/gstpad.c: (gst_pad_set_caps):
2228         Don't call setcaps function when reseting caps to NULL.
2229
2230         * gst/gstsystemclock.c: (gst_system_clock_dispose),
2231         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
2232         (gst_system_clock_id_unschedule):
2233         Use BROADCAST as this is what we do.
2234
2235 2005-06-29  Wim Taymans  <wim@fluendo.com>
2236
2237         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
2238         We are actually prerolling before commiting the state
2239         change. 
2240
2241 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2242
2243         * docs/manual/advanced-clocks.xml:
2244         * docs/manual/advanced-interfaces.xml:
2245         * docs/manual/advanced-metadata.xml:
2246         * docs/manual/advanced-position.xml:
2247         * docs/manual/advanced-schedulers.xml:
2248         * docs/manual/advanced-threads.xml:
2249         * docs/manual/appendix-porting.xml:
2250         * docs/manual/basics-bins.xml:
2251         * docs/manual/basics-bus.xml:
2252         * docs/manual/basics-elements.xml:
2253         * docs/manual/basics-helloworld.xml:
2254         * docs/manual/basics-pads.xml:
2255         * docs/manual/highlevel-components.xml:
2256         * docs/manual/manual.xml:
2257         * docs/manual/thread.fig:
2258           Update (until threads/scheduling) Application Development Manual;
2259           remove GstThread, add GstBus, add simple porting checklist, add
2260           documentation for tag writing, clocks, make all examples until this
2261           part compile and run.
2262         * examples/manual/Makefile.am:
2263           Update from changes to Application Development Manual; add bus
2264           example, remove thread example.
2265
2266 2005-06-28  Wim Taymans  <wim@fluendo.com>
2267
2268         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
2269         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
2270         (gst_bus_source_dispatch):
2271         Add debugging messages.
2272         Make internal methods static.
2273         Handle the case where the bus is flushed in the handler.
2274         
2275         * gst/gstelement.c: (gst_element_get_bus):
2276         Fix refcount in _get_bus();
2277
2278         * gst/gstpipeline.c: (gst_pipeline_change_state),
2279         (gst_pipeline_get_clock_func):
2280         Clock refcounting fixes.
2281         Handle the case where preroll timed out more gracefully.
2282         
2283         * gst/gstsystemclock.c: (gst_system_clock_dispose):
2284         Clean up the internal thread in dispose. This is needed
2285         for subclasses that actually get disposed.
2286         
2287         * gst/schedulers/threadscheduler.c:
2288         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
2289         (gst_thread_scheduler_dispose):
2290         Free thread pool in dispose.
2291
2292 2005-06-28  Andy Wingo  <wingo@pobox.com>
2293
2294         * tests/network-clock-utils.scm (debug, print-event): New utils.
2295
2296         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
2297         (*packet-loss*): Unified loss probability.
2298         (network-time): Report out-of-band events.
2299
2300         * tests/plot-data: Add support for out-of-band events. Hack it
2301         into this script instead of passing it down the pipe; should fix
2302         this later.
2303
2304 2005-06-28  Wim Taymans  <wim@fluendo.com>
2305
2306         * docs/gst/gstreamer.types:
2307         * docs/gst/tmpl/gstbasesrc.sgml:
2308         * docs/gst/tmpl/gstpad.sgml:
2309         Docs fixes.
2310
2311 2005-06-28  Wim Taymans  <wim@fluendo.com>
2312
2313         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2314         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
2315         (gst_proxy_pad_do_fixatecaps):
2316         Correctly proxy the check_pull_range function.
2317
2318 2005-06-28  Andy Wingo  <wingo@pobox.com>
2319
2320         * tests/network-clock.scm: Removed need for slib.
2321         
2322 2005-06-28  Wim Taymans  <wim@fluendo.com>
2323
2324         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
2325         (gst_basesink_preroll_queue_flush):
2326         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
2327         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
2328         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2329         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
2330         (gst_proxy_pad_set_property):
2331         * gst/gstpad.c:
2332         * gst/gstpad.h:
2333         * gst/gstqueue.c: (gst_queue_init):
2334         The deprecated pad loop function is removed now.
2335
2336 2005-06-28  Andy Wingo  <wingo@pobox.com>
2337
2338         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
2339         New parameters, simulate network packet loss.
2340
2341         * tests/network-clock-utils.scm: Initialize the RNG.
2342
2343 2005-06-28  Wim Taymans  <wim@fluendo.com>
2344
2345         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
2346         (gst_basesink_event), (gst_basesink_deactivate):
2347         Flushing the preroll queue always needs to unlock the waiters.
2348
2349 2005-06-28  Edward Hervey  <edward@fluendo.com>
2350
2351         * gst/gstpipeline.c: (gst_pipeline_send_event): 
2352         Wheen a seek was successful on a pipeline, set the stream_time to the
2353         seek offset in order to have a synchronized stream_time.
2354
2355 2005-06-28  Wim Taymans  <wim@fluendo.com>
2356
2357         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2358         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
2359         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
2360         (gst_proxy_pad_do_fixatecaps):
2361         Call wrapper function instead of just calling the function
2362         pointers. This takes care of any locking and whatmore.
2363
2364 2005-06-28  Wim Taymans  <wim@fluendo.com>
2365
2366         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
2367         (gst_pad_pull_range):
2368         * gst/gstpad.h:
2369         CONNECTED -> LINKED.
2370
2371 2005-06-28  Andy Wingo  <wingo@pobox.com>
2372
2373         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
2374         source-munging commit!!!
2375
2376         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
2377         (gst_object_sink): Take gpointer arguments, not GstObject --
2378         avoids casts. Like GLib.
2379
2380         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
2381         activate.
2382
2383 2005-06-27  Andy Wingo  <wingo@pobox.com>
2384
2385         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
2386         remaining buffer.
2387
2388         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
2389         returns a sorted copy of the trace list.
2390         (gst_alloc_trace_print_live): New API, only prints traces with
2391         live objects. Sort the list.
2392         (gst_alloc_trace_print_all): Sort the list.
2393         (gst_alloc_trace_print): Align columns.
2394
2395         * gst/elements/gstttypefindelement.c:
2396         * gst/elements/gsttee.c:
2397         * gst/base/gstbasesrc.c:
2398         * gst/base/gstbasesink.c:
2399         * gst/base/gstbasetransform.c:
2400         * gst/gstqueue.c: Adapt for pad activation changes.
2401
2402         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
2403         sched.
2404         (gst_pipeline_dispose): Drop ref on sched.
2405
2406         * gst/gstpad.c (gst_pad_init): Set the default activate func.
2407         (gst_pad_activate_default): Push mode by default.
2408         (pre_activate_switch, post_activate_switch): New stubs, things to
2409         do before and after switching activation modes on pads.
2410         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
2411         the pad's activate function to choose which mode to activate.
2412         Shortcut on deactivation and call the right function directly.
2413         (gst_pad_activate_pull): New API, (de)activates a pad in pull
2414         mode.
2415         (gst_pad_activate_push): New API, same for push mode.
2416         (gst_pad_set_activate_function) 
2417         (gst_pad_set_activatepull_function) 
2418         (gst_pad_set_activatepush_function): Setters for new API.
2419
2420         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
2421         Trace all miniobjects.
2422         (gst_mini_object_make_writable): Unref the arg if we copy, like
2423         gst_caps_make_writable.
2424
2425         * gst/gstmessage.c (_gst_message_initialize): No trace init.
2426
2427         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
2428         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
2429         Adapt for new pad API.
2430
2431         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
2432
2433         * gst/gstelement.h:
2434         * gst/gstelement.c (gst_element_iterate_src_pads) 
2435         (gst_element_iterate_sink_pads): New API functions.
2436         
2437         * gst/gstelement.c (iterator_fold_with_resync): New utility,
2438         should fold into gstiterator.c in some form.
2439         (gst_element_pads_activate): Simplified via use of fold and
2440         delegation of decisions to gstpad->activate.
2441
2442         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
2443         help in debugging.
2444
2445         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
2446         class once in init, like gstmessage. Didn't run into this issue
2447         but it seems correct. Don't initialize a trace, gstminiobject does
2448         that.
2449
2450         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
2451         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
2452         to the bus.
2453         (assert_live_count): New util function, uses alloc traces to check
2454         cleanup.
2455
2456         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
2457         To be modified when unlink drops the internal pad.
2458
2459 2005-06-27  Wim Taymans  <wim@fluendo.com>
2460
2461         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
2462         (gst_bin_change_state):
2463         Cleanup the get_state() function a little, make sure it
2464         iterates the same set of elements.
2465         Added stub iterate_state_order().
2466
2467 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
2468
2469         * docs/gst/gstreamer-docs.sgml:
2470         * docs/gst/gstreamer-sections.txt:
2471         * docs/gst/gstreamer.types:
2472         * docs/gst/tmpl/gstbasesink.sgml:
2473         * docs/gst/tmpl/gstbasesrc.sgml:
2474         * docs/gst/tmpl/gstbasetransform.sgml:
2475         * docs/gst/tmpl/gstelement.sgml:
2476         * docs/gst/tmpl/gstiterator.sgml:
2477         * gst/base/gstbasesrc.c:
2478         * gst/base/gstbasesrc.h:
2479         * gst/base/gstbasetransform.h:
2480         * gst/gstelement.c:
2481         * gst/gstiterator.h:
2482           adding basetransform and iterator docs
2483
2484 2005-06-27  Andy Wingo  <wingo@pobox.com>
2485
2486         * docs/design/part-activation.txt: Notes on how activation should
2487         work -- not quite implemented yet.
2488
2489 2005-06-25  Wim Taymans  <wim@fluendo.com>
2490
2491         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
2492         At least get the chain function correct, needs more
2493         fixing.
2494
2495 2005-06-25  Wim Taymans  <wim@fluendo.com>
2496
2497         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2498         (gst_basesink_handle_object), (gst_basesink_event),
2499         (gst_basesink_do_sync), (gst_basesink_handle_event),
2500         (gst_basesink_change_state):
2501         * gst/gsttask.h:
2502         Right, two problems here: ghostpads don't take locks and
2503         glib _rec_mutex_lock_full() with depth==0 still locks.
2504         Catch illegal locking and g_warn them.
2505
2506 2005-06-25  Wim Taymans  <wim@fluendo.com>
2507
2508         * check/states/sinks.c: (START_TEST), (gst_object_suite):
2509         Have to check for completion now...
2510
2511 2005-06-25  Wim Taymans  <wim@fluendo.com>
2512
2513         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2514         (gst_basesink_handle_object), (gst_basesink_event),
2515         (gst_basesink_do_sync), (gst_basesink_handle_event),
2516         (gst_basesink_change_state):
2517         * gst/gstpad.h:
2518         Unlock STREAM_LOCK whatever the recursion was.
2519
2520 2005-06-25  Wim Taymans  <wim@fluendo.com>
2521
2522         * gst/base/gstbasesink.c: (gst_basesink_set_property),
2523         (gst_basesink_preroll_queue_empty),
2524         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
2525         (gst_basesink_event), (gst_basesink_do_sync),
2526         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
2527         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
2528         (gst_basesink_change_state):
2529         Reworked the base sink, handle event and buffer serialisation
2530         correctly and removed possible deadlock.
2531         Handle EOS correctly.
2532
2533 2005-06-25  Wim Taymans  <wim@fluendo.com>
2534
2535         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
2536         (gst_pipeline_change_state):
2537         * tools/gst-launch.c: (check_intr), (event_loop), (main):
2538         Allow elements to post EOS in the state change function.
2539         Fix up -launch, make it exit the poll loop when the
2540         pipeline actually changed state.
2541         Fix up warning parsing in -launch.
2542
2543 2005-06-25  Wim Taymans  <wim@fluendo.com>
2544
2545         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
2546         (gst_tee_sink_activate):
2547         Core takes STREAM_LOCK for us now.
2548
2549 2005-06-25  Wim Taymans  <wim@fluendo.com>
2550
2551         * gst/gstelement.c: (gst_element_get_state_func),
2552         (gst_element_set_state):
2553         * gst/gstelement.h:
2554         * gst/gstmessage.c: (gst_message_parse_error),
2555         (gst_message_parse_warning):
2556         Keep track of current target state while performing a state
2557         change so that subclasses can do something interesting.
2558         Fix parsing of warning/error messages when GError is NULL.
2559
2560 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
2561
2562         * docs/gst/Makefile.am:
2563         * docs/gst/gstreamer-docs.sgml:
2564         * docs/gst/gstreamer-sections.txt:
2565         * docs/gst/gstreamer.types:
2566         * docs/gst/tmpl/gstbasesink.sgml:
2567         * docs/gst/tmpl/gstbasesrc.sgml:
2568         * docs/gst/tmpl/gstbin.sgml:
2569         * docs/gst/tmpl/gstcompat.sgml:
2570         * docs/gst/tmpl/gstfakesink.sgml:
2571         * docs/gst/tmpl/gstfakesrc.sgml:
2572         * docs/gst/tmpl/gstfilesink.sgml:
2573         * docs/gst/tmpl/gstfilesrc.sgml:
2574         * docs/gst/tmpl/gstindex.sgml:
2575         * docs/manual/appendix-quotes.xml:
2576         * gst/base/gstbasesrc.h:
2577         * gst/elements/gstfakesrc.h:
2578         * gst/gstmessage.h:
2579           start pulling in base classes and elements in our docs
2580
2581 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
2582
2583         * docs/gst/Makefile.am:
2584         * docs/libs/Makefile.am:
2585           fixed make distcheck with gtk-doc 1.3
2586
2587 2005-06-23  Wim Taymans  <wim@fluendo.com>
2588
2589         * gst/gstelement.c: (gst_element_get_state_func),
2590         (gst_element_set_state), (gst_element_change_state):
2591         When the state did not change, also report NO_PREROLL
2592         when it matters.
2593
2594 2005-06-23  Wim Taymans  <wim@fluendo.com>
2595
2596         * gst/gstpad.c: (gst_pad_event_default):
2597         * gst/gstqueue.c: (gst_queue_loop):
2598         No unsafe task pausing please.
2599
2600 2005-06-23  Wim Taymans  <wim@fluendo.com>
2601
2602         * gst/schedulers/threadscheduler.c:
2603         (gst_thread_scheduler_task_start),
2604         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
2605         Ref the task before pushing it on the threadpool. This
2606         makes sure that we have a ref when the threadfunction is
2607         actually called.
2608
2609 2005-06-23  Andy Wingo  <wingo@pobox.com>
2610
2611         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
2612         offset is greater than the file's size.
2613
2614         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
2615         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
2616         * gst/gstobject.c (gst_object_class_init): Make the class lock
2617         recursive. Wim won't let me drop deep_notify. Decodebin works
2618         again, whoopdy doo.
2619
2620         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
2621         internal pad, and hacks accordingly. Doesn't do it on the target
2622         pad because we change its caps. Probably catches all cases of
2623         interest tho.
2624         (gst_ghost_pad_set_property): Connect to notify::caps as
2625         appropritate.
2626
2627         * tests/network-clock.scm (plot-simulation): Pipe data to the
2628         elite python skript.
2629
2630         * tests/network-clock-utils.scm (define-parameter): New macro,
2631         defines a parameter that can be set via the command line.
2632         (set-parameter!, parse-parameter-arguments): Command line args
2633         parser.
2634
2635         * tests/plot-data: Simple matplotlib-based plotter, takes input on
2636         stdin.
2637
2638 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
2639
2640         * gst/elements/gsttypefindelement.c:
2641         (gst_type_find_element_handle_event):
2642           Don't restart typefinding on a discont.
2643         * gst/gstelement.c: (gst_element_set_state):
2644           Debug spelling fix.
2645         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
2646           Allow changing mode of an active pad.
2647           Debug output fixes.
2648         * gst/registries/gstlibxmlregistry.c: (load_feature):
2649           Don't cast a static pad template to a normal pad template.
2650
2651 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
2652
2653         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2654         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2655           remove gst_strtoll completely, since it didn't actually do
2656           anything more than what g_ascii_strtoull already does.
2657           check for range errors when deserializing
2658           do a cast for the unsigned cases; but further fixing needs
2659           a decision on what the interpretation of "(int)" and
2660           deserialization should be for values that fall outside the
2661           type's boundaries (ie, refuse, or interpret as casting)
2662
2663 2005-06-23  Wim Taymans  <wim@fluendo.com>
2664
2665         * check/Makefile.am:
2666         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
2667         * docs/design/part-live-source.txt:
2668         * docs/design/part-states.txt:
2669         * gst/base/gstbasesrc.c: (gst_basesrc_init),
2670         (gst_basesrc_set_live), (gst_basesrc_is_live),
2671         (gst_basesrc_get_range), (gst_basesrc_activate),
2672         (gst_basesrc_change_state):
2673         * gst/base/gstbasesrc.h:
2674         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2675         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
2676         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
2677         * gst/gstelement.c: (gst_element_get_state_func),
2678         (gst_element_set_state):
2679         * gst/gstelement.h:
2680         * gst/gsttypes.h:
2681         * tools/gst-launch.c: (event_loop), (main):
2682         Added support for live sources and other elements that
2683         cannot do preroll.
2684         Updated design docs, added live-source design doc.
2685         Implemented live source functionality in basesrc
2686         Fix error condition in _bin_get_state()
2687         Implement live source handling in -launch.
2688         Added check for live sources.
2689         Fixed case in GstBin where elements were changed state
2690         multiple times.
2691
2692
2693 2005-06-23  Andy Wingo  <wingo@pobox.com>
2694
2695         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
2696         borken refcounting.
2697
2698         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
2699         gst_caps_replace takes care of this for us.
2700
2701         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
2702         gst_pad_set_caps on the target, not just its setcaps() function.
2703
2704         * tests/network-clock.scm: 
2705         * tests/network-clock-utils.scm: A network clock simulator.
2706         Something of an algorithmic testbed before doing something in C.
2707
2708 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2709
2710         * check/Makefile.am:
2711         * check/gst/capslist.h:
2712           copy over from 0.8, and add two with bitmasks specified with
2713           (int) 0xFF...
2714         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2715           add test to parse everything from capslist.h
2716         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
2717         (main):
2718           add test for structure deserialization
2719         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2720           add tests for deserialization of strings to int types
2721         * gst/gststructure.c: (gst_structure_nth_field_name):
2722         * gst/gststructure.h:
2723           add a way to get the name of a field referenced by index
2724         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2725           instead of checking if the resulting long long lies between
2726           min and max, we check if the long long would fit into
2727           a number of bytes for the final type.
2728           This fixes cases where a string represents 2^32 - 1, which
2729           when cast to int would be the (valid) -1, but is bigger than
2730           G_MAXINT
2731
2732 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2733
2734         * gst/parse/grammar.y:
2735           add a log line for type deserialization
2736
2737 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2738
2739         * check/gst/gstvalue.c: (START_TEST):
2740         * gst/gstvalue.c: (gst_value_deserialize):
2741           return long long, not int, so gint64 deserialization actually
2742           works.  Is there any flag that makes the compiler check this ?
2743           Fixes #308559
2744
2745 2005-06-22  Wim Taymans  <wim@fluendo.com>
2746
2747         * gst/gstbuffer.h:
2748         Added convenience macros for setting buffers in GValue.
2749
2750 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2751
2752         * check/gst/.cvsignore:
2753         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2754           add a test deserializing int64, and comment part out because
2755           it fails, yay !
2756
2757 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2758
2759         * check/Makefile.am:
2760         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
2761         * testsuite/Makefile.am:
2762         * testsuite/caps/Makefile.am:
2763         * testsuite/caps/value_serialize.c:
2764         * testsuite/test_gst_init.c:
2765           move a value_serialize test over
2766
2767 2005-06-20  Wim Taymans  <wim@fluendo.com>
2768
2769         * gst/gstpad.c:
2770         Small doc updates.
2771         
2772         * gst/gstvalue.c: (gst_value_compare_buffer),
2773         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
2774         (gst_value_compare_flags), (gst_value_serialize_flags),
2775         (gst_value_deserialize_flags), (_gst_value_initialize):
2776         Fix serialisation of buffers, they are not boxed types anymore
2777
2778 2005-06-20  Wim Taymans  <wim@fluendo.com>
2779
2780         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2781         Testcase to show error in buffer-on-caps serialisation.
2782
2783 2005-06-20  Andy Wingo  <wingo@pobox.com>
2784
2785         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
2786         will be adding to later.
2787
2788         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
2789         if its socks fill with rocks.
2790         (gst_system_clock_obtain): Set the name on object construction.
2791         Avoid double-checked locking.
2792
2793 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
2794
2795         * gst/gsturi.c: (gst_element_make_from_uri):
2796           Fix potential endless loop.
2797
2798 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2799
2800         * check/Makefile.am:
2801           add gsttag
2802         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
2803         (main):
2804           move over from testsuite dir and clean up
2805         * configure.ac:
2806         * gst/gsttag.c:
2807         * testsuite/Makefile.am:
2808         * testsuite/tags/.cvsignore:
2809         * testsuite/tags/Makefile.am:
2810         * testsuite/tags/merge.c:
2811           remove testsuite/tags
2812
2813 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2814
2815         * docs/gst/gstreamer-sections.txt:
2816         * docs/gst/tmpl/gstenumtypes.sgml:
2817         * win32/gstenumtypes.c:
2818           clean up documentation build a little
2819
2820 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2821
2822         * check/gstcheck.h:
2823           add macros for checking refcounts on objects and caps
2824         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
2825           add some more unit tests
2826         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
2827         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
2828           fix leaked refcounts (I hope :)) so unittest works
2829         * gst/gstpad.h:
2830           whitespace removal
2831
2832 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2833
2834         * configure.ac: back to HEAD
2835
2836 === release 0.9.1 ===
2837
2838 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2839
2840         * NEWS:
2841         * RELEASE:
2842           updated
2843
2844 2005-06-17  Andy Wingo  <wingo@pobox.com>
2845
2846         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
2847         assert; it's always possible that the pad gets deactivated in
2848         between the checks in gstpad.c and the implementation. Rely on
2849         finish_preroll() to return a FLUSHING or similar instead of on the
2850         assert.
2851         
2852         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
2853         clock and post an EOS message if we come out of finish_preroll in
2854         the playing state.
2855
2856 2005-06-16  David Schleef  <ds@schleef.org>
2857
2858         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
2859         (gst_capsfilter_set_property): Allow NULL as possible value
2860         for filter_caps property, indicating GST_CAPS_ANY.
2861
2862 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2863
2864         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
2865           fix debug output
2866         * gst/schedulers/Makefile.am:
2867           use libgst prefix
2868         * gstreamer.spec.in:
2869           fix spec for it
2870
2871 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2872
2873         * gstreamer.spec.in:
2874           clean up
2875
2876 2005-06-08  Andy Wingo  <wingo@pobox.com>
2877
2878         * gst/gstutils.c: RPAD fixes all around.
2879         (gst_element_link_pads): Refcounting fixes.
2880
2881         * tools/gst-inspect.c:
2882         * tools/gst-xmlinspect.c:
2883         * parse/grammar.y:
2884         * gst/base/gsttypefindhelper.c:
2885         * gst/base/gstbasesink.c:
2886         * gst/gstqueue.c: RPAD fixes.
2887
2888         * gst/gstghostpad.h:
2889         * gst/gstghostpad.c: New ghost pad implementation as full proxy
2890         pads. The tricky thing is they provide both source and sink
2891         interfaces, since they proxy the internal pad for the external
2892         pad, and vice versa. Implement with lower-level ProxyPad objects,
2893         with the interior proxy pad as a child of the exterior ghost pad.
2894         Should write a doc on this.
2895         
2896         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
2897         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
2898         gst_object API.
2899         
2900         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
2901         pads are real pads. No ghost pads in this file. Not documenting
2902         the myriad s/RPAD/PAD/ and REALIZE fixes.
2903         (gst_pad_class_init): Add properties for "direction" and
2904         "template". Both are construct-only, so they can't change during
2905         the life of the pad. Fixes properly deriving from GstPad.
2906         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
2907         derived objects, just set properties when creating the objects via
2908         g_object_new.
2909         (gst_pad_get_parent): Implement as a function, return NULL if the
2910         parent is not an element.
2911         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
2912         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
2913         
2914         * gst/gstobject.c (gst_object_class_init): Make name a construct
2915         property. Don't set it in the object init.
2916
2917         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
2918         with UNKNOWN direction.
2919         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
2920         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
2921         (gst_element_remove_pad): Remove ghost-pad special cases.
2922         (gst_element_pads_activate): Remove rpad cruft.
2923
2924         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
2925         catch the pad's-parent-not-an-element case.
2926
2927         * gst/gst.h: Include gstghostpad.h.
2928
2929         * gst/gst.c (init_post): No more real, ghost pads.
2930
2931         * gst/Makefile.am: Add gstghostpad.[ch].
2932
2933         * check/Makefile.am:
2934         * check/gst/gstbin.c:
2935         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
2936         into a bin creates ghost pads, and that the refcounts are right.
2937         Partly moved from gstbin.c.
2938
2939 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2940
2941         * check/gst-libs/.cvsignore:
2942         * check/gst/.cvsignore:
2943         * check/pipelines/.cvsignore:
2944           ignore more
2945         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
2946         (START_TEST), (cleanup_suite), (main):
2947           add some tests related to cleanup after running pipelines
2948
2949 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2950
2951         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
2952           add a testsuite for GstBuffer
2953
2954 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2955
2956         * gst/gstminiobject.h:
2957           add defines for accessing the refcount
2958
2959 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
2960
2961         * Makefile.am: added support for html unit test coverage reports
2962
2963 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
2964
2965         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
2966           Free existing caps if the capsfilter changes. Add a FIXME about
2967           setting those caps on the pads.
2968
2969         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
2970           Before adding a ghost pad to a parent bin, check that there isn't
2971           already one for the element on the bin. Prevents infinite recursion
2972           when using decodebin in parse pipelines. Andy says he'll rewrite the
2973           way this works anyway, so ignore the hack.
2974
2975 2005-06-02  Andy Wingo  <wingo@pobox.com>
2976
2977         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
2978         file size, pass it on to the type find helper.
2979
2980         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
2981         segment_start and segment_end properly according to the seek
2982         method. Segment_end is still a bit flaky because offset can be
2983         negative for CUR and END cases, but it takes -1 as an "unset"
2984         value.
2985
2986 2005-06-02  Wim Taymans  <wim@fluendo.com>
2987
2988         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
2989         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
2990         (gst_basesink_activate):
2991         * gst/base/gstbasesink.h:
2992         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2993         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2994         (gst_pad_query), (gst_pad_start_task):
2995         * gst/gstpad.h:
2996         * gst/gstqueue.c: (gst_queue_bufferalloc),
2997         (gst_queue_handle_sink_event), (gst_queue_chain):
2998         Bufferalloc: return GstFlowReturn to more accuratly report
2999         why allocation failed.
3000
3001 2005-06-02  Wim Taymans  <wim@fluendo.com>
3002
3003         * gst/gstpipeline.c: (gst_pipeline_send_event):
3004         Take snapshot of state without blocking.
3005
3006 2005-06-02  Wim Taymans  <wim@fluendo.com>
3007
3008         * docs/design/part-TODO.txt:
3009         * docs/design/part-caps.txt:
3010         * docs/design/part-clocks.txt:
3011         * docs/design/part-negotiation.txt:
3012         * docs/design/part-preroll.txt:
3013         Small doc updates 
3014
3015 2005-05-30  Wim Taymans  <wim@fluendo.com>
3016
3017         * gst/elements/gstidentity.c: (gst_identity_event),
3018         (gst_identity_transform), (gst_identity_get_property):
3019         Protect last_message property as it is accessed from
3020         multiple threads.
3021
3022 2005-05-30  Wim Taymans  <wim@fluendo.com>
3023
3024         * gst/gstelement.c: (gst_element_init),
3025         (gst_element_pads_activate), (gst_element_change_state):
3026         Slicker pad activation code.
3027
3028 2005-05-30  Wim Taymans  <wim@fluendo.com>
3029
3030         * gst/Makefile.am:
3031         * gst/gstelement.h:
3032         * gst/gstelementfactory.h:
3033         * gst/gsttypes.h:
3034         Move elementfactory methods to separate .h file.
3035
3036 2005-05-30  Wim Taymans  <wim@fluendo.com>
3037
3038         * docs/design/part-overview.txt:
3039         * gst/gstsystemclock.h:
3040         Small typo fixes, doc updates.
3041
3042 2005-05-30  Wim Taymans  <wim@fluendo.com>
3043
3044         * gst/gst.c: (gst_init_get_popt_table), (init_post),
3045         (init_popt_callback):
3046         Remove cpu-opt flag.
3047
3048 2005-05-30  Wim Taymans  <wim@fluendo.com>
3049
3050         * gst/gstbuffer.c: (gst_subbuffer_finalize),
3051         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
3052         * gst/gstbuffer.h:
3053         Avoid typechecking in places where not needed.
3054         Added accessor for malloc_data.
3055
3056 2005-05-30  Wim Taymans  <wim@fluendo.com>
3057
3058         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
3059         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
3060         (gst_pad_configure_sink), (gst_pad_configure_src),
3061         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
3062         (gst_pad_start_task):
3063         Propagate errors from _set_caps() in configure_src/sink
3064         functions instead of returning TRUE.
3065         FLUSH events can travel up and downstream
3066
3067
3068 2005-05-30  Wim Taymans  <wim@fluendo.com>
3069
3070         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
3071         (gst_basesink_activate):
3072         Handle EOS in preroll.
3073
3074 2005-05-30  Wim Taymans  <wim@fluendo.com>
3075
3076         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
3077         (gst_queue_loop), (gst_queue_handle_src_event):
3078         Remove old pieces of code
3079         Flushing the queue in an upstream event is a very bad idea.
3080
3081 2005-05-26  Andy Wingo  <wingo@pobox.com>
3082
3083         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
3084         gst_value_set_mini_object so as to add a ref on the object (which
3085         will be removed when the value is unset).
3086
3087         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
3088         arg type in ::handoff.
3089
3090         * gst/gstelement.c (gst_element_change_state): Also deactivate
3091         pads in READY->NULL, just in case the element didn't make it to
3092         PAUSED. Wingo tested, Wim approved.
3093
3094 2005-05-26  Wim Taymans  <wim@fluendo.com>
3095
3096         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3097         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
3098         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
3099         A flushing pad cannot be used to alloc_buffer from.
3100
3101 2005-05-26  Wim Taymans  <wim@fluendo.com>
3102
3103         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
3104         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
3105         (gst_bus_source_dispatch), (gst_bus_source_finalize),
3106         (gst_bus_create_watch), (gst_bus_add_watch_full):
3107         * gst/gstbus.h:
3108         Implement a real GSource and use g_main_context_wakeup() to
3109         signal new messages instead of the socketpair.
3110
3111 2005-05-25  Wim Taymans  <wim@fluendo.com>
3112
3113         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
3114         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
3115         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3116         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
3117         (gst_pad_send_event), (gst_pad_start_task):
3118         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
3119         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
3120         (gst_queue_sink_activate), (gst_queue_src_activate),
3121         (gst_queue_change_state):
3122         * gst/gstqueue.h:
3123         Fix state changes for non sinks. We now change sinks, then elements
3124         with unconnected srcpads, then the rest.
3125         More efficient queue unlocking in flush and state changes.
3126         Set the pad activate mode even if it does not have an activate
3127         function.
3128
3129 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3130
3131         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
3132           Don't go in pull mode for non-seekable sources.
3133         * gst/elements/gsttypefindelement.h:
3134         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3135         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
3136         (free_entry), (stop_typefinding),
3137         (gst_type_find_element_handle_event), (find_peek),
3138         (gst_type_find_element_chain), (do_pull_typefind),
3139         (gst_type_find_element_change_state):
3140           Allow typefinding (w/o seeking) in push-mode, simplified version
3141           of what was in 0.8.
3142         * gst/gstutils.c: (gst_buffer_join):
3143         * gst/gstutils.h:
3144           gst_buffer_join() from 0.8.
3145
3146 2005-05-25  Wim Taymans  <wim@fluendo.com>
3147
3148         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3149         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
3150         (gst_pad_send_event), (gst_pad_start_task):
3151         Disable attempt at mode switching until it is figured out.
3152
3153 2005-05-25  Wim Taymans  <wim@fluendo.com>
3154
3155         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
3156         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
3157         (gst_basesink_finish_preroll), (gst_basesink_chain),
3158         (gst_basesink_loop), (gst_basesink_activate),
3159         (gst_basesink_change_state):
3160         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
3161         (gst_basesrc_get_range), (gst_basesrc_loop),
3162         (gst_basesrc_activate):
3163         * gst/elements/gsttee.c: (gst_tee_sink_activate):
3164         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
3165         (gst_real_pad_init), (gst_real_pad_set_property),
3166         (gst_real_pad_get_property), (gst_pad_set_active),
3167         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
3168         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
3169         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
3170         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
3171         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3172         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
3173         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
3174         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
3175         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
3176         (gst_pad_stop_task):
3177         * gst/gstpad.h:
3178         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
3179         (gst_queue_loop), (gst_queue_src_activate):
3180         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
3181         (gst_task_get_state):
3182         * gst/gsttask.h:
3183         * gst/schedulers/threadscheduler.c:
3184         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
3185         Implement gst_pad_pause/start/stop_task(), take STREAM lock
3186         in task function.
3187         Remove ACTIVE pad flag, use FLUSHING everywhere
3188         Added _pad_chain(), _pad_get_range() to call chain/getrange 
3189         functions.
3190         Add locks around IS_FLUSHING when reading.
3191         Take STREAM lock in chain(), get_range() functions so plugins
3192         don't need to take it anymore.
3193         
3194
3195
3196 2005-05-25  Wim Taymans  <wim@fluendo.com>
3197
3198         * tools/gst-launch.c: (event_loop):
3199         Unref message after using its contents instead of
3200         before.
3201
3202 2005-05-24  Wim Taymans  <wim@fluendo.com>
3203
3204         * docs/design/draft-ghostpads.txt:
3205         * docs/design/draft-push-pull.txt:
3206         * docs/design/draft-query.txt:
3207         * docs/design/part-overview.txt:
3208         Docs updates, added general overview doc.
3209
3210 2005-05-21  David Schleef  <ds@schleef.org>
3211
3212         * docs/gst/tmpl/old/GstBin.sgml:
3213         * docs/gst/tmpl/old/GstBuffer.sgml:
3214         * docs/gst/tmpl/old/GstCaps.sgml:
3215         * docs/gst/tmpl/old/GstClock.sgml:
3216         * docs/gst/tmpl/old/GstCompat.sgml:
3217         * docs/gst/tmpl/old/GstData.sgml:
3218         * docs/gst/tmpl/old/GstElement.sgml:
3219         * docs/gst/tmpl/old/GstEvent.sgml:
3220         * docs/gst/tmpl/old/GstIndex.sgml:
3221         * docs/gst/tmpl/old/GstStructure.sgml:
3222         * docs/gst/tmpl/old/GstTag.sgml:
3223         * docs/gst/tmpl/old/cothreads.sgml:
3224         * docs/gst/tmpl/old/cothreads_compat.sgml:
3225         * docs/gst/tmpl/old/gettext.sgml:
3226         * docs/gst/tmpl/old/gobject2gtk.sgml:
3227         * docs/gst/tmpl/old/grammar.tab.sgml:
3228         * docs/gst/tmpl/old/gst-i18n-app.sgml:
3229         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
3230         * docs/gst/tmpl/old/gst_private.sgml:
3231         * docs/gst/tmpl/old/gstaggregator.sgml:
3232         * docs/gst/tmpl/old/gstarch.sgml:
3233         * docs/gst/tmpl/old/gstatomic_impl.sgml:
3234         * docs/gst/tmpl/old/gstbufferstore.sgml:
3235         * docs/gst/tmpl/old/gstdata_private.sgml:
3236         * docs/gst/tmpl/old/gstdisksink.sgml:
3237         * docs/gst/tmpl/old/gstdisksrc.sgml:
3238         * docs/gst/tmpl/old/gstelementfactory.sgml:
3239         * docs/gst/tmpl/old/gstextratypes.sgml:
3240         * docs/gst/tmpl/old/gstfakesink.sgml:
3241         * docs/gst/tmpl/old/gstfakesrc.sgml:
3242         * docs/gst/tmpl/old/gstfdsink.sgml:
3243         * docs/gst/tmpl/old/gstfdsrc.sgml:
3244         * docs/gst/tmpl/old/gstfilesink.sgml:
3245         * docs/gst/tmpl/old/gstfilesrc.sgml:
3246         * docs/gst/tmpl/old/gsthttpsrc.sgml:
3247         * docs/gst/tmpl/old/gstidentity.sgml:
3248         * docs/gst/tmpl/old/gstindexfactory.sgml:
3249         * docs/gst/tmpl/old/gstmarshal.sgml:
3250         * docs/gst/tmpl/old/gstmd5sink.sgml:
3251         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
3252         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
3253         * docs/gst/tmpl/old/gstpadtemplate.sgml:
3254         * docs/gst/tmpl/old/gstpipefilter.sgml:
3255         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
3256         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
3257         * docs/gst/tmpl/old/gstshaper.sgml:
3258         * docs/gst/tmpl/old/gstspider.sgml:
3259         * docs/gst/tmpl/old/gstspideridentity.sgml:
3260         * docs/gst/tmpl/old/gststatistics.sgml:
3261         * docs/gst/tmpl/old/gsttee.sgml:
3262         * docs/gst/tmpl/old/gsttimecache.sgml:
3263         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
3264         * docs/gst/tmpl/old/gstxmlregistry.sgml:
3265         * docs/gst/tmpl/old/gthread-cothreads.sgml:
3266         * docs/gst/tmpl/old/types.sgml:
3267           I didn't intend to add these or check them in.
3268
3269 2005-05-19  David Schleef  <ds@schleef.org>
3270
3271         * configure.ac: Use -no-common everywhere.  In a sane world, it
3272           would be the default in libtool, because without it, you can't
3273           build DLLs on Windows.
3274         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
3275         * docs/gst/gstreamer-sections.txt:
3276         * docs/gst/tmpl/gstcpu.sgml:
3277         * docs/gst/tmpl/gstdata.sgml:
3278         * docs/gst/tmpl/gstthread.sgml:
3279
3280 2005-05-19  David Schleef  <ds@schleef.org>
3281
3282         * gst/gstminiobject.c: (gst_value_set_mini_object),
3283         (gst_value_take_mini_object), (gst_value_get_mini_object):
3284         * gst/gstminiobject.h: Add GValue set/get functions.
3285
3286 2005-05-19  Wim Taymans  <wim@fluendo.com>
3287
3288         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
3289         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
3290         (gst_subbuffer_init), (gst_buffer_is_span_fast):
3291         * gst/gstbuffer.h:
3292         * gst/gstbus.c: (gst_bus_post):
3293         * gst/gstelement.c: (gst_element_get_random_pad):
3294         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
3295         Make subbufer unref the parent in finalize.
3296         some more debugging info.
3297
3298
3299 2005-05-19  Wim Taymans  <wim@fluendo.com>
3300
3301         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3302         (gst_basesink_init), (gst_basesink_finalize),
3303         (gst_basesink_activate), (gst_basesink_change_state):
3304         Don't free preroll queue too early.
3305
3306 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3307
3308         * gst/Makefile.am:
3309         * gst/ROADMAP:
3310           Hi, I'm outdated. Please shoot me.
3311
3312 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3313
3314         * gst/gstpipeline.c: (gst_pipeline_send_event):
3315           Do not access variables after they have been deleted.
3316
3317 2005-05-19  Wim Taymans  <wim@fluendo.com>
3318
3319         * tools/gst-inspect.c: (print_plugin_features):
3320         A plugin feature does unfortunatly not use the
3321         object name yet...
3322
3323 2005-05-18  Wim Taymans  <wim@fluendo.com>
3324
3325         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
3326         Port _span() functions to new subbuffers.
3327
3328 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3329
3330         * gst/gstbin.c: (gst_bin_add_func):
3331           Fix clock settery in bins when adding kids after the clock has
3332           been selected.
3333
3334 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3335
3336         * gst/elements/gstidentity.c: (gst_identity_class_init):
3337           Workaround until signals support GstMiniObject.
3338
3339 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
3340
3341         * gst/gstbuffer.c:
3342         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
3343
3344 2005-05-18  Wim Taymans  <wim@fluendo.com>
3345
3346         * gst/base/Makefile.am:
3347         * gst/base/gstadapter.c: (gst_adapter_base_init),
3348         (gst_adapter_class_init), (gst_adapter_init),
3349         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
3350         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
3351         (gst_adapter_flush), (gst_adapter_available),
3352         (gst_adapter_available_fast):
3353         * gst/base/gstadapter.h:
3354         Ported and added adapter to the base classes.
3355
3356 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3357
3358         * gst/gst.c:
3359         * gst/gstmessage.c:
3360           Make sure the class is reffed/unreffed once before threads can be
3361           used.  Fixes #304551.
3362
3363 2005-05-17  Wim Taymans  <wim@fluendo.com>
3364
3365         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
3366         (gst_basesink_chain_unlocked), (gst_basesink_activate):
3367         * gst/gstminiobject.c: (gst_mini_object_get_type),
3368         (gst_mini_object_free):
3369         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
3370         (gst_pad_push), (gst_pad_push_event):
3371         * gst/gstqueue.c: (gst_queue_change_state):
3372         Don't queue buffers in basesink when we are flushing.
3373         Unref buffer when flushing in basesink.
3374         Flush queue when going to READY
3375         Unref buffer when _push() returns an error.
3376         Don't free MiniObject instance when refcount is incremented
3377         in _finalize() so that we can recover objects.
3378
3379 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
3380
3381         * docs/manual/advanced-schedulers.xml:
3382         * docs/manual/appendix-checklist.xml:
3383         * docs/pwg/advanced-clock.xml:
3384         * docs/pwg/advanced-interfaces.xml:
3385         * docs/pwg/advanced-request.xml:
3386         * docs/pwg/advanced-types.xml:
3387         * docs/pwg/intro-preface.xml:
3388         * examples/plugins/example.c: (gst_example_get_type),
3389         (gst_example_class_init), (gst_example_chain),
3390         (gst_example_set_property), (gst_example_get_property),
3391         (gst_example_change_state), (plugin_init):
3392         * examples/plugins/example.h:
3393           small doc fixes
3394
3395 2005-05-17  Wim Taymans  <wim@fluendo.com>
3396
3397         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
3398         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
3399         * gst/gstqueue.c: (gst_queue_change_state):
3400         Clear queue when going to READY.
3401         Remove IN_SETCAPS flag too.
3402
3403 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
3404
3405         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
3406           Remove implicit cast from gboolean to GstElementStateReturn;
3407           make sure we still return failure in paused => ready case if
3408           the parent class fails to change state and our own stop 
3409           vfunc succeeds.
3410
3411 2005-05-17  Wim Taymans  <wim@fluendo.com>
3412
3413         * tools/gst-launch.c: (event_loop):
3414         Message was unreffed too soon.
3415
3416 2005-05-16  Andy Wingo  <wingo@pobox.com>
3417
3418         * gst/gstbin.c (sink_iterator_filter): Err... um...
3419
3420         * check/gst/gstbin.c (test_ghost_pads): New test for the
3421         ghosting-if-elements-not-in-same-bin behavior.
3422
3423 2005-05-16  David Schleef  <ds@schleef.org>
3424
3425         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
3426         accessing refcount directly.
3427
3428 2005-05-15  David Schleef  <ds@schleef.org>
3429
3430         * check/Makefile.am: remove GstData checks
3431         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
3432         * gst/Makefile.am: add miniobject, remove data
3433         * gst/gst.h: add miniobject, remove data
3434         * gst/gstdata.c: remove
3435         * gst/gstdata.h: remove
3436         * gst/gstdata_private.h: remove
3437         * gst/gsttypes.h: remove GstEvent and GstMessage
3438         * gst/gstelement.c: (gst_element_post_message): fix for API changes
3439         * gst/gstmarshal.list: change BOXED -> OBJECT
3440
3441         Implement GstMiniObject.
3442         * gst/gstminiobject.c:
3443         * gst/gstminiobject.h:
3444
3445         Modify to be subclasses of GstMiniObject.
3446         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
3447         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
3448         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
3449         (gst_subbuffer_get_type), (gst_subbuffer_init),
3450         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
3451         (gst_buffer_span):
3452         * gst/gstbuffer.h:
3453         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
3454         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
3455         (_gst_event_copy), (gst_event_new):
3456         * gst/gstevent.h:
3457         * gst/gstmessage.c: (_gst_message_initialize),
3458         (gst_message_get_type), (gst_message_class_init),
3459         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
3460         (gst_message_new), (gst_message_new_error),
3461         (gst_message_new_warning), (gst_message_new_tag),
3462         (gst_message_new_state_changed), (gst_message_new_application):
3463         * gst/gstmessage.h:
3464         * gst/gstprobe.c: (gst_probe_perform),
3465         (gst_probe_dispatcher_dispatch):
3466         * gst/gstprobe.h:
3467         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
3468         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
3469         (_gst_query_copy), (gst_query_new):
3470
3471         Update elements for GstData -> GstMiniObject changes
3472         * gst/gstquery.h:
3473         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
3474         (gst_queue_chain), (gst_queue_loop):
3475         * gst/elements/gstbufferstore.c:
3476         (gst_buffer_store_add_buffer_func),
3477         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
3478         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3479         (gst_fakesink_render):
3480         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
3481         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
3482         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
3483         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
3484         (gst_filesrc_create_read):
3485         * gst/elements/gstidentity.c: (gst_identity_class_init):
3486         * gst/elements/gsttypefindelement.c:
3487         (gst_type_find_element_src_event), (free_entry_buffers),
3488         (gst_type_find_element_handle_event):
3489         * libs/gst/dataprotocol/dataprotocol.c:
3490         (gst_dp_header_from_buffer):
3491         * libs/gst/dataprotocol/dataprotocol.h:
3492         * libs/gst/dataprotocol/dp-private.h:
3493
3494 2005-05-15  David Schleef  <ds@schleef.org>
3495
3496         * gst/elements/gstelements.c: Don't include headers that were
3497         just removed.
3498
3499 2005-05-15  David Schleef  <ds@schleef.org>
3500
3501         * gst/elements/Makefile.am: Remove some elements that don't
3502         need to be in the core (or even exist at all).
3503         * gst/elements/gstaggregator.c:
3504         * gst/elements/gstaggregator.h:
3505         * gst/elements/gstmd5sink.c:
3506         * gst/elements/gstmd5sink.h:
3507         * gst/elements/gstmultifilesrc.c:
3508         * gst/elements/gstmultifilesrc.h:
3509         * gst/elements/gstpipefilter.c:
3510         * gst/elements/gstpipefilter.h:
3511         * gst/elements/gstshaper.c:
3512         * gst/elements/gstshaper.h:
3513         * gst/elements/gststatistics.c:
3514         * gst/elements/gststatistics.h:
3515         * po/POTFILES.in: Remove above files.
3516
3517 2005-05-14  Andy Wingo  <wingo@pobox.com>
3518
3519         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
3520         so as to get the refs right.
3521         (sink_iterator_filter): New function, wraps bin_element_is_sink,
3522         unreffing objects that don't pass the filter.
3523
3524         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
3525         gst_element_set_bus.
3526         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
3527         normal cases, this will destroy the bus.
3528
3529         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
3530         object.
3531
3532         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
3533         has no sinks.
3534
3535 2005-05-13  Andy Wingo  <wingo@pobox.com>
3536
3537         * gst/gstutils.c (gst_element_link_pads): Instead of calling
3538         gst_pad_link, call pad_link_maybe_ghosting,
3539         (pad_link_maybe_ghosting): Links pads, making sure that the
3540         elements being linked are in the same bin.
3541         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
3542         Helpers for pad_link_maybe_ghosting.
3543
3544 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3545
3546         * configure.ac:
3547           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
3548
3549 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3550
3551         * docs/design/part-element-source.txt:
3552           Mention GstPushSrc
3553
3554 2005-05-12  Wim Taymans  <wim@fluendo.com>
3555
3556         * gst/base/gstbasesink.c: (gst_basesink_init),
3557         (gst_basesink_activate):
3558         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
3559         (gst_basesrc_is_seekable):
3560         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
3561         (bin_element_is_sink), (gst_bin_change_state):
3562         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3563         * gst/gstelement.h:
3564         Identify sinks by their flag to avoid overly complicated
3565         checks (fow now).
3566         Do state changes even for elements not reachable from the
3567         sinks.
3568         BaseSink is a sink now :)
3569         Some more debugging info in the basesrc.
3570
3571
3572 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3573
3574         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
3575           Implement _query on a bin, similar to _send_event.
3576
3577 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
3578
3579         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
3580           Discont event offset format should be GST_FORMAT_BYTES,
3581           not GST_FORMAT_TIME.
3582
3583 2005-05-12  Wim Taymans  <wim@fluendo.com>
3584
3585         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
3586         Same fix as Ronald's but without the signal. 
3587
3588 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3589
3590         * gst/gstutils.c: (gst_element_query_position):
3591           No, an element is not a pad.
3592
3593 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3594
3595         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
3596         (gst_bin_get_state):
3597           If a child is removed from a bin while we remove the child from
3598           the bin and while we're retrieving its state, signal this to the
3599           get_state function so we abort the wait (instead of waiting for
3600           a timeout) and can immediately re-iterate over all other elements.
3601
3602 2005-05-12  Wim Taymans  <wim@fluendo.com>
3603
3604         * gst/base/Makefile.am:
3605         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
3606         (gst_basesrc_start):
3607         * gst/base/gstbasesrc.h:
3608         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
3609         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
3610         (gst_pushsrc_init), (gst_pushsrc_create):
3611         * gst/base/gstpushsrc.h:
3612         Added is_seekable to BaseSrc
3613         Added simple PushSrc.
3614
3615 2005-05-11  Wim Taymans  <wim@fluendo.com>
3616
3617         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3618         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3619         (gst_element_link_pads), (gst_element_query_position),
3620         (gst_element_query_convert), (intersect_caps_func),
3621         (gst_pad_query_position), (gst_pad_query_convert):
3622         Fix refcounting in utils function.
3623         No point in trying to activate a pad when it's added, it could
3624         be added from the state change function and then we deadlock, the
3625         element has to decide what to do.
3626
3627 2005-05-10  Andy Wingo  <wingo@pobox.com>
3628
3629         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
3630         *all* the arguments.
3631
3632         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
3633         stream lock if it's a FLUSH_DONE; normal flushes don't get the
3634         lock (according to the docs -- if this is wrong change the docs).
3635
3636         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
3637         flush messages in the NULL state.
3638
3639         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
3640         message immediately and return.
3641         (gst_bus_set_flushing): New function. If a bus is flushing, it
3642         flushes out any queued messages and immediately unrefs new
3643         messages. This is so when an element goes to NULL, all of the
3644         unhandled messages coming from it can be freed, and their
3645         references to the element dropped. In other words: message source
3646         ref considered harmful :P
3647
3648         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
3649         we're finished with it.
3650
3651         * gst/gstmessage.c (gst_message_new_state_changed): 
3652
3653 2005-05-10  Wim Taymans  <wim@fluendo.com>
3654
3655         * gst/gstvalue.c: (gst_value_compare_flags),
3656         (gst_value_serialize_flags), (gst_value_deserialize_flags),
3657         (_gst_value_initialize):
3658         Added flags serialize/deserialize/compare code.
3659
3660 2005-05-09  Andy Wingo  <wingo@pobox.com>
3661
3662         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
3663         Intersect the peer's caps with our caps.
3664
3665 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3666
3667         * gst/base/gsttypefindhelper.c: (helper_find_peek):
3668         * gst/elements/gsttypefindelement.c: (find_peek):
3669           Handle negative offsets better. Fixes decodebin.
3670
3671 2005-05-09  Wim Taymans  <wim@fluendo.com>
3672
3673         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
3674         (gst_base_transform_event):
3675         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
3676         Implement accept_caps.
3677         Fix silly lock/unlock mismatch in base class.
3678
3679 2005-05-09  Wim Taymans  <wim@fluendo.com>
3680
3681         * docs/design/draft-push-pull.txt:
3682         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
3683         * gst/elements/gstfilesink.c: (gst_filesink_init),
3684         (gst_filesink_query):
3685         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3686         (gst_type_find_handle_src_query), (find_element_get_length):
3687         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
3688         * gst/gstelement.h:
3689         * gst/gstmessage.c:
3690         * gst/gstmessage.h:
3691         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
3692         (gst_real_pad_get_caps_unlocked),
3693         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
3694         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3695         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
3696         (gst_real_pad_dispose), (gst_real_pad_finalize),
3697         (gst_pad_load_and_link), (gst_pad_save_thyself),
3698         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
3699         (gst_pad_check_pull_range), (gst_pad_pull_range),
3700         (gst_pad_template_get_type), (gst_pad_template_class_init),
3701         (gst_pad_template_init), (gst_pad_template_dispose),
3702         (name_is_valid), (gst_static_pad_template_get),
3703         (gst_pad_template_new), (gst_static_pad_template_get_caps),
3704         (gst_pad_template_get_caps), (gst_pad_set_element_private),
3705         (gst_pad_get_element_private), (gst_pad_start_task),
3706         (gst_pad_pause_task), (gst_pad_stop_task),
3707         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
3708         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
3709         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
3710         (gst_ghost_pad_new):
3711         * gst/gstpad.h:
3712         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
3713         (gst_query_new_position), (gst_query_set_position),
3714         (gst_query_parse_position), (gst_query_new_convert),
3715         (gst_query_set_convert), (gst_query_parse_convert):
3716         * gst/gstquery.h:
3717         * gst/gstqueryutils.c:
3718         * gst/gstqueryutils.h:
3719         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3720         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3721         (gst_queue_handle_src_query):
3722         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3723         (gst_element_query_position), (gst_element_query_convert),
3724         (intersect_caps_func), (gst_pad_query_position),
3725         (gst_pad_query_convert):
3726         * gst/gstutils.h:
3727         * tools/gst-inspect.c: (print_pad_info):
3728         * tools/gst-xmlinspect.c: (print_element_info):
3729         Remove old query functions. Ported old code.
3730         Added position/convert helper functions to gstutils.
3731         Reordered gstpad.c code, grouping relevant things.
3732         Remove gst_message_new(), always need to speficy a specific
3733         message.
3734
3735
3736 2005-05-09  Andy Wingo  <wingo@pobox.com>
3737
3738         * gst/gstiterator.h: Add some includes.
3739
3740         * gst/gstqueryutils.h: Include more headers.
3741
3742         * gst/gstpad.h:
3743         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
3744         some uses of gst_pad_query.
3745
3746         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
3747         NULL out parameters.
3748         (gst_query_new_position): New proc, allocates a new position
3749         query.
3750
3751         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
3752         gstqueryutils.c to the build.
3753
3754         * gst/gststructure.c (gst_structure_set_valist): Implement with
3755         the generic G_VALUE_COLLECT.
3756         
3757 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
3758
3759         * gst/Makefile.am: (gst_headers):
3760         Added gstqueryutils.h to the list of headers to install, that was
3761         a 'nachty' move wingo :)
3762
3763 2005-05-06  Andy Wingo  <wingo@pobox.com>
3764
3765         * gst/gstquery.h
3766         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
3767         GstData, init a memchunk.
3768         (standard_definitions): Add a few query types, deprecate a few.
3769         (gst_query_get_type): New proc.
3770         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
3771         implementation.
3772         (gst_query_new_application, gst_query_get_structure): New public
3773         procs.
3774
3775         * docs/design/draft-query.txt: Removed LINKS from the query types,
3776         because all the rest can be dispatched to other pads -- seemed
3777         ugly to have a query that couldn't be dispatched. internal_links
3778         is fine as a pad method.
3779
3780         * gst/gstpad.h: Add query2 as a pad method, add the new functions
3781         in gstpad.c, but maintain binary compatibility for the moment.
3782         Will fix before 0.9 is out.
3783
3784         * gst/gstqueryutils.c: 
3785         * gst/gstqueryutils.h: New files, implement 3 methods for each
3786         query type: parse_query, parse_response, and set. Probably need an
3787         allocator as well.
3788
3789         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
3790
3791         * gst/elements/gstfilesink.c (gst_filesink_query2):
3792         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
3793         query_types, and formats methods.
3794
3795         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
3796         (gst_pad_set_query2_function): New functions.
3797         (gst_real_pad_init): Set query2_default as the default query2
3798         function. Basically just dispatches to internally linked pads.
3799
3800         Needs review!
3801         
3802         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
3803         without using the atomic operations. Only one thread can possibly
3804         be accessing the data at this point. Changed so as to avoid
3805         gst_atomic operations.
3806
3807 2005-05-06  Wim Taymans  <wim@fluendo.com>
3808
3809         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
3810         Also set caps if we use the fallback buffer alloc.
3811
3812 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
3813
3814         * docs/gst/Makefile.am:
3815         * docs/gst/gstreamer-docs.sgml:
3816         * docs/gst/gstreamer-sections.txt:
3817         * docs/gst/tmpl/gstatomic.sgml:
3818         * docs/gst/tmpl/gstmemchunk.sgml:
3819         * testsuite/elements/struct_i386.h:
3820         * win32/GStreamer.vcproj:
3821         * win32/Makefile:
3822           Purge GstAtomic stuff from docs and win32 makefiles as well
3823
3824 2005-05-06  Wim Taymans  <wim@fluendo.com>
3825
3826         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
3827         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
3828         * gst/gstpad.c: (gst_pad_peer_get_caps):
3829         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3830         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3831         (gst_queue_src_activate), (gst_queue_change_state):
3832         * gst/gstqueue.h:
3833         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3834         (intersect_caps_func):
3835         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
3836         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
3837         Some fixes for the peer_get_caps() change.
3838
3839 2005-05-06  Wim Taymans  <wim@fluendo.com>
3840
3841         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
3842         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
3843         (gst_basesink_activate):
3844         Actually do something with error codes returned from the push
3845         functions.
3846
3847 2005-05-06  Wim Taymans  <wim@fluendo.com>
3848
3849         * docs/design/part-element-sink.txt:
3850         * docs/design/part-element-source.txt:
3851         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3852         (gst_basesink_event), (gst_basesink_activate):
3853         * gst/base/gstbasesink.h:
3854         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
3855         (gst_basesrc_activate):
3856         * gst/base/gstbasesrc.h:
3857         * gst/gstelement.c: (gst_element_pads_activate):
3858         Some more documentation.
3859         Fixed scheduling decision in _pads_activate().
3860
3861 2005-05-05  Andy Wingo  <wingo@pobox.com>
3862
3863         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
3864         the test suite.
3865
3866 2005-05-05  Wim Taymans  <wim@fluendo.com>
3867
3868         * gst/base/Makefile.am:
3869         * gst/base/gstbasesink.h:
3870         * gst/base/gstbasesrc.c: (gst_basesrc_init),
3871         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
3872         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
3873         (gst_collectpads_class_init), (gst_collectpads_init),
3874         (gst_collectpads_finalize), (gst_collectpads_new),
3875         (gst_collectpads_set_function), (gst_collectpads_add_pad),
3876         (find_pad), (gst_collectpads_remove_pad),
3877         (gst_collectpads_is_active), (gst_collectpads_collect),
3878         (gst_collectpads_collect_range), (gst_collectpads_start),
3879         (gst_collectpads_stop), (gst_collectpads_peek),
3880         (gst_collectpads_pop), (gst_collectpads_available),
3881         (gst_collectpads_read), (gst_collectpads_flush),
3882         (gst_collectpads_chain):
3883         * gst/base/gstcollectpads.h:
3884         * gst/elements/Makefile.am:
3885         * gst/elements/gstelements.c:
3886         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3887         (gst_fakesink_get_times), (gst_fakesink_event),
3888         (gst_fakesink_preroll), (gst_fakesink_render):
3889         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
3890         (gst_filesink_init), (gst_filesink_set_location),
3891         (gst_filesink_open_file), (gst_filesink_close_file),
3892         (gst_filesink_pad_query), (gst_filesink_event),
3893         (gst_filesink_render), (gst_filesink_change_state):
3894         * gst/elements/gstfilesink.h:
3895         Added object to help in making collect pad based elements.
3896         Ported filesink.
3897         Make event function in sink baseclass return gboolean.
3898
3899 2005-05-05  Wim Taymans  <wim@fluendo.com>
3900
3901         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
3902         (gst_bin_get_by_name):
3903         * gst/gstbuffer.h:
3904         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
3905         (gst_clock_finalize):
3906         * gst/gstdata.c: (gst_data_replace):
3907         * gst/gstdata.h:
3908         * gst/gstelement.c: (gst_element_request_pad),
3909         (gst_element_pads_activate):
3910         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
3911         (gst_object_unref):
3912         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3913         (gst_pad_set_checkgetrange_function),
3914         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
3915         (gst_pad_check_pull_range), (gst_pad_pull_range),
3916         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3917         (gst_pad_pause_task), (gst_pad_stop_task):
3918         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3919         (gst_element_request_pad), (gst_pad_proxy_getcaps):
3920         Fix name lookup in GstBin.
3921         Added _data_replace() function and _buffer_replace()
3922         Use finalize method to clean up clock.
3923         Fix refcounting on request pads.
3924         Fix pad schedule mode error.
3925         Some more object refcounting debug info,
3926
3927
3928 2005-05-04  Andy Wingo <wingo@pobox.com>
3929
3930         * check/Makefile.am:
3931         * docs/gst/tmpl/gstatomic.sgml:
3932         * docs/gst/tmpl/gstplugin.sgml:
3933         * gst/base/gstbasesink.c: (gst_basesink_activate):
3934         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
3935         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
3936         (gst_basesrc_query), (gst_basesrc_set_property),
3937         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
3938         (gst_basesrc_activate):
3939         * gst/base/gstbasesrc.h:
3940         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
3941         (gst_base_transform_src_activate):
3942         * gst/elements/gstelements.c:
3943         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3944         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
3945         * gst/elements/gsttee.c: (gst_tee_sink_activate):
3946         * gst/elements/gsttypefindelement.c: (find_element_get_length),
3947         (gst_type_find_element_checkgetrange),
3948         (gst_type_find_element_activate):
3949         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
3950         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
3951         (gst_caps_load_thyself):
3952         * gst/gstelement.c: (gst_element_pads_activate),
3953         (gst_element_save_thyself), (gst_element_restore_thyself):
3954         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
3955         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
3956         * gst/gstpad.h:
3957         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
3958         (gst_xml_parse_file), (gst_xml_parse_memory),
3959         (gst_xml_get_element), (gst_xml_make_element):
3960         * gst/indexers/gstfileindex.c: (gst_file_index_load),
3961         (_file_index_id_save_xml), (gst_file_index_commit):
3962         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
3963         (read_enum), (load_pad_template), (load_feature), (load_plugin),
3964         (load_paths):
3965         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
3966         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
3967         * tools/gst-complete.c: (main):
3968         * tools/gst-compprep.c: (main):
3969         * tools/gst-inspect.c: (print_element_properties_info):
3970         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
3971         * tools/gst-xmlinspect.c: (print_element_properties):
3972         GCC 4 fixen.
3973         
3974 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
3975
3976         * gst/gstplugin.c: (gst_plugin_check_module),
3977         (gst_plugin_check_file), (gst_plugin_load_file):
3978             apply patch from #172526 to make register work on MacOSX
3979
3980 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3981
3982         * docs/gst/tmpl/gstconfig.sgml:
3983         * gst/gstconfig.h.in:
3984           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
3985         * testsuite/debug/printf_extension.c: (main):
3986           Do not use GST_PTR_FORMAT on pointers to types with
3987           sizeof < sizeof(gpointer).  Fixes test on 64-bit
3988         * testsuite/elements/property.h:
3989           use correct printf format
3990
3991 2005-05-02  Wim Taymans  <wim@fluendo.com>
3992
3993         * docs/design/draft-push-pull.txt:
3994         * docs/design/draft-query.txt:
3995         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
3996         (gst_basesrc_start):
3997         Added draft for new query API.
3998         Added draft for better selecting scheduling methods.
3999         Make basesrc ignore length if the subclass does not support
4000         it.
4001
4002 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
4003
4004         * gst/Makefile.am:
4005           possible fixes for automake-1.5 - _LIBADD is reserved
4006
4007 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
4008
4009         * docs/faq/Makefile.am:
4010         * docs/manual/Makefile.am:
4011         * docs/manuals.mak:
4012         * docs/pwg/Makefile.am:
4013         * gst/Makefile.am:
4014           possible fixes for automake-1.5
4015
4016 2005-04-28  Wim Taymans  <wim@fluendo.com>
4017
4018         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4019         (gst_basesink_pad_getcaps), (gst_basesink_init),
4020         (gst_basesink_do_sync):
4021         * gst/gstclock.c: (gst_clock_entry_new):
4022         * gst/gstevent.c: (gst_event_discont_get_value):
4023         * gst/gstpipeline.c: (pipeline_bus_handler),
4024         (gst_pipeline_change_state):
4025         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
4026         Better debugging of clocking info.
4027         Allow NULL values when getting discont values.
4028
4029 2005-04-27  Wim Taymans  <wim@fluendo.com>
4030
4031         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
4032         * check/gst/gstpad.c: (gst_pad_suite):
4033         Increase timeout for checks.
4034
4035 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
4036
4037         * check/Makefile.am:
4038           fix the broken rule for cleanup.  Apparently this rule is
4039           only needed on FC2, so maybe this warrants further autotool
4040           inspection.
4041
4042 2005-04-26  Wim Taymans  <wim@fluendo.com>
4043
4044         * gst/gsttrashstack.h:
4045         Ooohh. a nasty one! After having a failed pop() from the stack,
4046         it's possible that the stack is empty. In that case, don't
4047         follow the NULL pointer.
4048
4049 2005-04-25  Wim Taymans  <wim@fluendo.com>
4050
4051         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4052         (gst_pad_set_checkgetrange_function),
4053         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
4054         (gst_pad_check_pull_range), (gst_pad_pull_range),
4055         (gst_static_pad_template_get_caps), (gst_pad_start_task),
4056         (gst_pad_pause_task), (gst_pad_stop_task):
4057         * gst/gstplugin.c: (gst_plugin_load):
4058         * gst/gstplugin.h:
4059         Remove gst_library_load as it does more harm than good with
4060         the new g_module flags.
4061         Revert bogus caps template check in pad linking, pad caps
4062         are important when linking not the template, which is more
4063         general than the current caps.
4064
4065 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4066
4067         * gst/autoplug/.cvsignore:
4068         * gst/autoplug/Makefile.am:
4069         * gst/autoplug/gstsearchfuncs.c:
4070         * gst/autoplug/gstsearchfuncs.h:
4071         * gst/autoplug/gstspider.c:
4072         * gst/autoplug/gstspider.h:
4073         * gst/autoplug/gstspideridentity.c:
4074         * gst/autoplug/gstspideridentity.h:
4075         * gst/autoplug/spidertest.c:
4076           Die, spider, die.
4077
4078 2005-04-25  Wim Taymans  <wim@fluendo.com>
4079
4080         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4081         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
4082         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
4083         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
4084         * gst/gstpad.h:
4085         Added stubs for unimplemented functions. 
4086
4087 2005-04-24  David Schleef  <ds@schleef.org>
4088
4089         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
4090         please fix.
4091
4092 2005-04-24  David Schleef  <ds@schleef.org>
4093
4094         Convert everything from GstAtomicInt to g_atomic_int_*, and
4095         remove gstatomic.
4096         * gst/Makefile.am:
4097         * gst/gstatomic.c:
4098         * gst/gstatomic.h:
4099         * gst/gstatomic_impl.h:
4100         * gst/gstbuffer.c:
4101         * gst/gstcaps.c:
4102         * gst/gstcaps.h:
4103         * gst/gstclock.c:
4104         * gst/gstclock.h:
4105         * gst/gstdata.c:
4106         * gst/gstdata.h:
4107         * gst/gstdata_private.h:
4108         * gst/gstevent.c:
4109         * gst/gstinfo.c:
4110         * gst/gstinfo.h:
4111         * gst/gstmessage.c:
4112         * gst/gstobject.c:
4113         * gst/gstobject.h:
4114         * gst/gststructure.c:
4115         * gst/gststructure.h:
4116         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
4117         * gst/gstutils.h:
4118
4119 2005-04-24  David Schleef  <ds@schleef.org>
4120
4121         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
4122         make the regressions tests work.  Remove some code that is no
4123         longer true.
4124         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
4125         Disable warning for pads without templates.
4126
4127 2005-04-24  David Schleef  <ds@schleef.org>
4128
4129         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
4130         functions that handle filtered links.
4131         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
4132         removed functions.
4133         * gst/gstutils.c: Fix/remove utility functions that handle
4134         filtered caps.
4135         * gst/gstutils.h:
4136         * gst/gstvalue.c: Add serialization/deserialization of caps
4137         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
4138         requires fixing so that the filter caps notation creates
4139         a capsfilter element and sets the filter_caps property.  I
4140         think everyone probably wants to keep the shorthand notation.
4141         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
4142         * docs/gst/tmpl/gstpad.sgml:
4143
4144         * gst/elements/gstelements.c: Register capsfilter element.
4145         * gst/Makefile.am: fix spacing
4146         * docs/random/ds/0.9-suggested-changes: random
4147
4148 2005-04-23  David Schleef  <ds@schleef.org>
4149
4150         * gst/elements/Makefile.am:
4151         * gst/elements/gstcapsfilter.c: New element that acts like an
4152         identity, but filters caps.  Will eventually replace filtered
4153         caps in pad linking.
4154         * gst/gstutils.c: (gst_element_create_all_pads): New function
4155         to create all the ALWAYS pads that are registered with an
4156         element class.  This functionality should eventually be
4157         merged in with GstElement initialization.
4158         * gst/gstutils.h:
4159         * testsuite/trigger/README: part of trigger test code that should
4160         have been checked in a long time ago.
4161
4162 2005-04-23  David Schleef  <ds@schleef.org>
4163
4164         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
4165         needed with new versions of libtool (nobody will confirm this),
4166         and hard to carry around.
4167         * gst/autoplug/Makefile.am:
4168         * gst/base/Makefile.am:
4169         * gst/elements/Makefile.am:
4170         * gst/indexers/Makefile.am:
4171         * gst/schedulers/Makefile.am:
4172         * libs/gst/bytestream/Makefile.am:
4173         * libs/gst/control/Makefile.am:
4174         * libs/gst/dataprotocol/Makefile.am:
4175         * libs/gst/getbits/Makefile.am:
4176
4177 2005-04-21  Wim Taymans  <wim@fluendo.com>
4178
4179         * docs/design/draft-push-pull.txt:
4180         * docs/design/part-MT-refcounting.txt:
4181         * docs/design/part-TODO.txt:
4182         * docs/design/part-caps.txt:
4183         * docs/design/part-events.txt:
4184         * docs/design/part-gstbus.txt:
4185         * docs/design/part-gstpipeline.txt:
4186         * docs/design/part-messages.txt:
4187         * docs/design/part-push-pull.txt:
4188         * docs/design/part-query.txt:
4189         Some more docs.
4190
4191 2005-04-21  Wim Taymans  <wim@fluendo.com>
4192
4193         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
4194         (gst_message_new), (gst_message_new_error),
4195         (gst_message_new_warning), (gst_message_new_tag),
4196         (gst_message_new_state_changed), (gst_message_new_application),
4197         (gst_message_get_structure):
4198         * gst/gstmessage.h:
4199         * gst/gststructure.c: (gst_structure_set_parent_refcount),
4200         (gst_structure_copy_conditional):
4201         Use parent refcount in GstMessage to ensure GstStructure
4202         consistency.
4203         Cleaned up headers a bit.
4204         
4205
4206 2005-04-20  Wim Taymans  <wim@fluendo.com>
4207
4208         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4209         (gst_basesink_pad_getcaps), (gst_basesink_init),
4210         (gst_basesink_chain_unlocked):
4211         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
4212         (gst_type_find_helper):
4213         * gst/elements/gsttypefindelement.c:
4214         (gst_type_find_element_have_type), (gst_type_find_element_init),
4215         (stop_typefinding), (gst_type_find_element_handle_event),
4216         (find_suggest), (gst_type_find_element_chain),
4217         (gst_type_find_element_checkgetrange),
4218         (gst_type_find_element_getrange), (do_typefind),
4219         (gst_type_find_element_activate):
4220         * gst/gstbuffer.c: (_gst_buffer_sub_free),
4221         (gst_buffer_default_free), (gst_buffer_default_copy),
4222         (gst_buffer_set_caps):
4223         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
4224         (gst_caps_replace):
4225         * gst/gstmessage.c: (gst_message_new),
4226         (gst_message_new_state_changed):
4227         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4228         (gst_pad_set_checkgetrange_function),
4229         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
4230         (gst_pad_set_caps), (gst_pad_check_pull_range),
4231         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
4232         * gst/gstpad.h:
4233         * gst/gsttypefind.c: (gst_type_find_register):
4234         Make gst_caps_replace() work like other _replace() functions.
4235         Use _caps_replace() where possible.
4236         Make sure _message_new() initialises its field.
4237         Add gst_static_pad_template_get_caps()
4238
4239
4240 2005-04-18  Andy Wingo  <wingo@pobox.com>
4241
4242         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
4243         on the peer, not the pad. I think that was a typo. Pass an extra
4244         arg to see if random access is possible. Activate the pads as
4245         PULL_RANGE if possible.
4246
4247         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
4248
4249         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
4250         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
4251         to PROP_....
4252
4253 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4254
4255         * docs/faq/using.xml:
4256           Add note on gstreamer-properties (#154996).
4257
4258 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4259
4260         * docs/random/bbb/optional-properties:
4261           Some analysis on optional properties.
4262
4263 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4264
4265         * docs/gst/tmpl/gstelementfactory.sgml:
4266         * gst/gstelement.h:
4267         * gst/gstelementfactory.c: (gst_element_factory_init),
4268         (gst_element_factory_cleanup), (gst_element_register),
4269         (__gst_element_factory_add_static_pad_template),
4270         (gst_element_factory_get_static_pad_templates),
4271         (gst_element_factory_can_src_caps),
4272         (gst_element_factory_can_sink_caps):
4273         * gst/registries/Makefile.am:
4274         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
4275         (gst_xml_registry_class_init), (gst_xml_registry_init),
4276         (gst_xml_registry_new), (gst_xml_registry_set_property),
4277         (gst_xml_registry_get_property), (get_time), (make_dir),
4278         (gst_xml_registry_get_perms_func),
4279         (plugin_times_older_than_recurse), (plugin_times_older_than),
4280         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
4281         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
4282         (add_to_char_array), (read_string), (read_uint), (read_enum),
4283         (load_pad_template), (load_feature), (load_plugin), (load_paths),
4284         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
4285         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
4286         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
4287         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
4288         (gst_xml_registry_rebuild):
4289         * gst/registries/gstlibxmlregistry.h:
4290         * tools/gst-compprep.c: (main):
4291         * tools/gst-inspect.c: (print_pad_templates_info):
4292         * tools/gst-xmlinspect.c: (print_element_info):
4293           Use libxml2 for registry parsing, use staticpadtemplates in
4294           elementfactories. Makes gst_init() +/- 10x faster.
4295
4296 2005-04-12  Wim Taymans  <wim@fluendo.com>
4297
4298         * gst/base/Makefile.am:
4299         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4300         (gst_basesink_pad_getcaps), (gst_basesink_init),
4301         (gst_basesink_event), (gst_basesink_change_state):
4302         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4303         (gst_basesrc_init), (gst_basesrc_query),
4304         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
4305         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
4306         (gst_basesrc_check_get_range), (gst_basesrc_loop),
4307         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
4308         (gst_basesrc_stop), (gst_basesrc_activate),
4309         (gst_basesrc_change_state):
4310         * gst/base/gsttypefindhelper.c: (helper_find_peek),
4311         (helper_find_suggest), (gst_type_find_helper):
4312         * gst/base/gsttypefindhelper.h:
4313         * gst/elements/Makefile.am:
4314         * gst/elements/gstelements.c:
4315         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
4316         (gst_fakesink_get_times), (gst_fakesink_event),
4317         (gst_fakesink_preroll), (gst_fakesink_render):
4318         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4319         (gst_fakesrc_init), (gst_fakesrc_event_handler),
4320         (gst_fakesrc_get_property), (gst_fakesrc_create),
4321         (gst_fakesrc_start), (gst_fakesrc_stop):
4322         * gst/elements/gstfakesrc.h:
4323         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
4324         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
4325         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
4326         (gst_filesrc_create_read), (gst_filesrc_create),
4327         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
4328         (gst_filesrc_start):
4329         * gst/elements/gsttypefindelement.c:
4330         (gst_type_find_element_have_type), (gst_type_find_element_init),
4331         (start_typefinding), (stop_typefinding), (push_buffer_store),
4332         (gst_type_find_element_handle_event),
4333         (gst_type_find_element_chain),
4334         (gst_type_find_element_checkgetrange),
4335         (gst_type_find_element_getrange), (do_typefind),
4336         (gst_type_find_element_activate),
4337         (gst_type_find_element_change_state):
4338         * gst/elements/gsttypefindelement.h:
4339         * gst/gstpipeline.c: (pipeline_bus_handler):
4340         Added typefind helper.
4341         Small preroll fix in the base sink.
4342         Disable typefind code in basesrc.
4343         Crude port of typefindelement.
4344         Fakesrc cleanups.
4345
4346
4347 2005-04-11  Wim Taymans  <wim@fluendo.com>
4348
4349         * check/gst/gstbus.c: (gstbus_suite):
4350         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
4351         * check/gstcheck.h:
4352           Fix up the timeout so that the test does not fail.
4353
4354 2005-04-06  Wim Taymans  <wim@fluendo.com>
4355
4356         * gst/base/README:
4357         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4358         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
4359         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
4360         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
4361         (gst_basesrc_check_get_range), (gst_basesrc_loop),
4362         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
4363         (gst_basesrc_stop), (gst_basesrc_activate),
4364         (gst_basesrc_change_state), (basesrc_find_peek),
4365         (basesrc_find_suggest), (gst_basesrc_type_find):
4366         * gst/base/gstbasesrc.h:
4367         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
4368         (gst_filesrc_class_init), (gst_filesrc_init),
4369         (gst_filesrc_finalize), (gst_filesrc_set_location),
4370         (gst_filesrc_set_property), (gst_filesrc_get_property),
4371         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
4372         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
4373         (gst_filesrc_create_read), (gst_filesrc_create),
4374         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
4375         * gst/elements/gstfilesrc.h:
4376         * gst/gstelement.c: (gst_element_get_state_func),
4377         (gst_element_lost_state), (gst_element_pads_activate):
4378         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4379         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
4380         (gst_pad_pull_range):
4381         * gst/gstpad.h:
4382         More work on the generic source base class, implement seeking,
4383         query.
4384         Make filesrc extend the base source class.
4385         Added gst_pad_set_checkgetrange_function to GstPad.
4386
4387 2005-04-06  Andy Wingo  <wingo@pobox.com>
4388
4389         * pkgconfig/gstreamer-base.pc.in:
4390         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
4391
4392         * pkgconfig/Makefile.am:
4393         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
4394
4395 2005-04-04  Wim Taymans  <wim@fluendo.com>
4396
4397         * gst/base/Makefile.am:
4398         * gst/base/README:
4399         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4400         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4401         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4402         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
4403         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4404         (gst_basesrc_base_init), (gst_basesrc_class_init),
4405         (gst_basesrc_init), (gst_basesrc_get_formats),
4406         (gst_basesrc_get_query_types), (gst_basesrc_query),
4407         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
4408         (gst_basesrc_set_property), (gst_basesrc_get_property),
4409         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
4410         (gst_basesrc_loop), (gst_basesrc_activate),
4411         (gst_basesrc_change_state):
4412         * gst/base/gstbasesrc.h:
4413         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
4414         (gst_fakesrc_class_init), (gst_fakesrc_init),
4415         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
4416         (gst_fakesrc_get_property), (gst_fakesrc_create):
4417         * gst/elements/gstfakesrc.h:
4418         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
4419         (gst_filesrc_open_file), (gst_filesrc_loop),
4420         (gst_filesrc_activate), (filesrc_find_peek),
4421         (gst_filesrc_type_find):
4422         Made base source class, make fakesrc extend it.
4423         Add comments to basesink class.
4424         Some filesrc cleanup.
4425
4426 2005-03-31  David Schleef  <ds@schleef.org>
4427
4428         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
4429         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
4430         expected to link against libgstreamer.
4431         * gst/base/Makefile.am: link against libgstreamer
4432         * gst/elements/Makefile.am: same
4433
4434 2005-03-31  Andy Wingo  <wingo@pobox.com>
4435
4436         * tests/instantiate/Makefile.am:
4437         * tests/instantiate/caps.c: Add test to test speed of caps copy
4438         and free.
4439
4440         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
4441         GMemChunk to be fair.
4442
4443         * gst/gsttrashstack.h: Remove warning about using the fallback
4444         trash stack implementation, it's still faster than malloc.
4445
4446 2005-03-30  Andy Wingo  <wingo@pobox.com>
4447
4448         * tests/complexity.c: Add a copyright.
4449
4450 2005-03-31  Wim Taymans  <wim@fluendo.com>
4451
4452         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
4453         (gst_base_transform_class_init), (gst_base_transform_init),
4454         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
4455         (gst_base_transform_get_property),
4456         (gst_base_transform_sink_activate),
4457         (gst_base_transform_src_activate),
4458         (gst_base_transform_change_state):
4459         * gst/base/gstbasetransform.h:
4460         * gst/elements/gstidentity.c: (gst_identity_class_init),
4461         (gst_identity_event), (gst_identity_check_perfect),
4462         (gst_identity_transform), (gst_identity_start),
4463         (gst_identity_stop):
4464         Added start/stop methods to transform base class so subclasses 
4465         don't need to deal with state changes even.
4466
4467 2005-03-31  Wim Taymans  <wim@fluendo.com>
4468
4469         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
4470         (gst_event_new_discontinuous), (gst_event_discont_get_value):
4471         * gst/gstevent.h:
4472         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4473         (gst_pad_pull_range):
4474         Added rate to the discont event to prepare for variable speed
4475         and reverse playback.
4476
4477 2005-03-29  David Schleef  <ds@schleef.org>
4478
4479         * configure.ac:
4480         * testsuite/trigger/Makefile.am:
4481         * testsuite/trigger/trigger.c: A little example program to show
4482         how trigger-based elements can work.
4483
4484 2005-03-29  Wim Taymans  <wim@fluendo.com>
4485
4486         * gst/base/Makefile.am:
4487         * gst/base/README:
4488         * gst/base/gstbasesink.c: (gst_basesink_get_type),
4489         (gst_basesink_base_init), (gst_basesink_class_init),
4490         (gst_basesink_pad_getcaps), (gst_basesink_init),
4491         (gst_basesink_activate), (gst_basesink_change_state):
4492         * gst/base/gstbasesink.h:
4493         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
4494         (gst_base_transform_base_init), (gst_base_transform_finalize),
4495         (gst_base_transform_class_init), (gst_base_transform_init),
4496         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
4497         (gst_base_transform_event), (gst_base_transform_getrange),
4498         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
4499         (gst_base_transform_set_property),
4500         (gst_base_transform_get_property),
4501         (gst_base_transform_sink_activate),
4502         (gst_base_transform_src_activate),
4503         (gst_base_transform_change_state):
4504         * gst/base/gstbasetransform.h:
4505         * gst/elements/gstidentity.c: (gst_identity_finalize),
4506         (gst_identity_class_init), (gst_identity_init),
4507         (gst_identity_event), (gst_identity_check_perfect),
4508         (gst_identity_transform), (gst_identity_set_property),
4509         (gst_identity_get_property), (gst_identity_change_state):
4510         * gst/elements/gstidentity.h:
4511         * gst/gstelement.c: (gst_element_get_state_func),
4512         (gst_element_lost_state), (gst_element_pads_activate):
4513         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4514         (gst_pad_check_pull_range), (gst_pad_pull_range):
4515         * gst/gstpad.h:
4516         Simplify pad activation.
4517         Added function to check if pull_range can be performed.
4518         Error out when pulling inactive or flushing pads.
4519         Removed const from refcounted types as it does not make sense.
4520         Simplify pad templates in basesink
4521         Added base class for simple 1-to-1 transforms.
4522         Make identity subclass the base transform.
4523
4524 2005-03-29  Andy Wingo  <wingo@pobox.com>
4525
4526         * docs/libs/gstreamer-libs-overrides.txt: 
4527         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
4528         really don't understand what's going on, but like whatever. I want
4529         green buildbot!
4530
4531         * docs/gst/Makefile.am:
4532         * docs/libs/Makefile.am: Dist the overrides files.
4533
4534         * check/Makefile.am (clean-local): Remove .libs directories.
4535
4536         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
4537         elements to EXTRA_DIST, so po/ files are happy.
4538
4539         * po/POTFILES.in: Er, remove it here.
4540
4541         * po/POTFILES: Remove gstspider.c.
4542
4543         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
4544
4545         * docs/libs/gstreamer-libs-docs.sgml: 
4546         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
4547         bytestream.
4548
4549         * tests/complexity.c (main): Set the length of the preroll queue
4550         on the sinks to prevent a lockup.
4551
4552         * libs/gst/dataprotocol/Makefile.am: 
4553         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
4554         the same as the one in check/gst-libs/gdp.c.
4555
4556         * po/, docs/gst/: Commit automatic changes to docs and po files.
4557
4558         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
4559         the versioned libgstbase.
4560
4561         * check/Makefile.am: Depend on an unversioned gst-register, seems
4562         to make autoconf happier.
4563
4564         * gst/base/Makefile.am: Make libgstbase a versioned lib.
4565
4566 2005-03-28  Wim Taymans  <wim@fluendo.com>
4567
4568         * configure.ac:
4569         * docs/design/part-gstelement.txt:
4570         * docs/design/part-negotiation.txt:
4571         * docs/design/part-preroll.txt:
4572         * docs/design/part-scheduling.txt:
4573         * docs/design/part-states.txt:
4574         * gst/Makefile.am:
4575         * gst/base/Makefile.am:
4576         * gst/base/README:
4577         * gst/base/gstbasesink.c: (gst_basesink_get_template),
4578         (gst_basesink_base_init), (gst_basesink_class_init),
4579         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4580         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4581         (gst_basesink_set_pad_functions),
4582         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
4583         (gst_basesink_set_property), (gst_basesink_get_property),
4584         (gst_base_sink_get_template), (gst_base_sink_get_caps),
4585         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
4586         (gst_basesink_preroll_queue_push),
4587         (gst_basesink_preroll_queue_empty),
4588         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
4589         (gst_basesink_event), (gst_basesink_get_times),
4590         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
4591         (gst_basesink_chain_unlocked), (gst_basesink_chain),
4592         (gst_basesink_loop), (gst_basesink_activate),
4593         (gst_basesink_change_state):
4594         * gst/base/gstbasesink.h:
4595         * gst/elements/Makefile.am:
4596         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
4597         (gst_fakesink_class_init), (gst_fakesink_init),
4598         (gst_fakesink_set_property), (gst_fakesink_get_property),
4599         (gst_fakesink_get_times), (gst_fakesink_event),
4600         (gst_fakesink_preroll), (gst_fakesink_render),
4601         (gst_fakesink_change_state):
4602         * gst/elements/gstfakesink.h:
4603         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4604         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
4605         * gst/gstelement.c: (gst_element_add_pad),
4606         (gst_element_get_state_func), (gst_element_abort_state),
4607         (gst_element_commit_state), (gst_element_lost_state),
4608         (gst_element_set_state), (gst_element_pads_activate):
4609         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
4610         * gst/gstpipeline.c: (gst_pipeline_send_event),
4611         (gst_pipeline_change_state):
4612         Added state change code.
4613         Added/updated docs.
4614         Added sink base class, make fakesink extend the base class.
4615         Small cleanups in GstPipeline.
4616
4617 2005-03-26  David Schleef  <ds@schleef.org>
4618
4619         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
4620         is broken and should be implemented in a different library.
4621         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
4622         * gst/gst.h: remove gstcpu.h
4623         * gst/gstcpu.c: remove
4624         * gst/gstcpu.h: remove
4625         * gst/Makefile.am.future: Remove this file.  It's ancient.
4626
4627 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4628
4629         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4630         (gst_bin_send_event):
4631           Add default event/set_manager handlers. The set_manager handler
4632           takes care that the manager is distributed over kids that were
4633           already in the bin before the manager was set. The event handler
4634           is a utility virtual function that sends the event over all sinks,
4635           so that gst_element_send_event (bin, event); has the expected
4636           behaviour.
4637         * gst/gstpad.c: (gst_pad_event_default):
4638           Re-install default event handling for discontinuities, so that
4639           seeking works without requiring hacks in applications or extra
4640           code in sinks.
4641         * gst/gstpipeline.c: (gst_pipeline_class_init),
4642         (gst_pipeline_send_event):
4643           Half hack, half utility: set a pipeline to PAUSED for seek events,
4644           since that is the only way we can guarantee a/v sync. Means that
4645           you can do gst_element_seek (pipeline, method, pos); on a pipeline
4646           and it "just works".
4647
4648 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4649
4650         * gst/gstpipeline.c: (gst_pipeline_use_clock):
4651           Lock/unlock mismatch.
4652
4653 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
4654
4655         * docs/faq/gst-uninstalled:
4656           add gst-plugins-base
4657         * docs/gst/Makefile.am:
4658           don't error out until docs are fixed
4659         * docs/gst/gstreamer.types:
4660           remove thread
4661
4662 2005-03-22  Wim Taymans  <wim@fluendo.com>
4663
4664         * check/Makefile.am:
4665         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
4666         * gst/gststructure.c: (gst_structure_set_valist),
4667         (gst_structure_copy_conditional):
4668         Activated more tests.
4669         Added message test.
4670         Added G_TYPE_POINTER to GstStructure.
4671         
4672
4673 2005-03-22  Wim Taymans  <wim@fluendo.com>
4674
4675         * docs/design/part-TODO.txt:
4676         * docs/design/part-events.txt:
4677         * docs/design/part-gstbin.txt:
4678         * docs/design/part-gstbus.txt:
4679         * docs/design/part-gstpipeline.txt:
4680         * docs/design/part-messages.txt:
4681         * gst/gstbus.c:
4682         * gst/gstmessage.c:
4683         Docs updates
4684
4685 2005-03-21  Wim Taymans  <wim@fluendo.com>
4686
4687         * gst/gstbus.c: (gst_bus_post):
4688         Fix copy-and-paste error.
4689
4690 2005-03-21  Wim Taymans  <wim@fluendo.com>
4691
4692         * check/Makefile.am:
4693         * gst/Makefile.am:
4694         * gst/elements/Makefile.am:
4695         * gst/elements/gstelements.c:
4696         * gst/elements/gstfakesink.c: (gst_fakesink_init),
4697         (gst_fakesink_event), (gst_fakesink_chain):
4698         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4699         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
4700         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
4701         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
4702         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
4703         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
4704         (gst_fakesrc_loop), (gst_fakesrc_activate),
4705         (gst_fakesrc_change_state):
4706         * gst/elements/gstfakesrc.h:
4707         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
4708         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
4709         (gst_filesrc_open_file), (gst_filesrc_loop),
4710         (gst_filesrc_activate), (gst_filesrc_change_state),
4711         (filesrc_find_peek), (filesrc_find_suggest),
4712         (gst_filesrc_type_find):
4713         * gst/elements/gstidentity.c: (gst_identity_finalize),
4714         (gst_identity_class_init), (gst_identity_init),
4715         (gst_identity_proxy_getcaps), (identity_queue_push),
4716         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
4717         (gst_identity_getrange), (gst_identity_chain),
4718         (gst_identity_sink_loop), (gst_identity_src_loop),
4719         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
4720         (gst_identity_set_property), (gst_identity_get_property),
4721         (gst_identity_change_state):
4722         * gst/elements/gstidentity.h:
4723         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
4724         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
4725         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
4726         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
4727         (gst_tee_sink_activate):
4728         * gst/elements/gsttee.h:
4729         * gst/gst.c: (gst_register_core_elements), (init_post):
4730         * gst/gst.h:
4731         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
4732         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
4733         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
4734         (gst_bin_change_state):
4735         * gst/gstbin.h:
4736         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
4737         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
4738         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
4739         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
4740         (gst_bus_set_sync_handler), (gst_bus_create_watch),
4741         (bus_watch_callback), (bus_watch_destroy),
4742         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
4743         (poll_timeout), (gst_bus_poll):
4744         * gst/gstbus.h:
4745         * gst/gstcaps.h:
4746         * gst/gstdata.h:
4747         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4748         (gst_element_post_message), (gst_element_message_full),
4749         (gst_element_get_state_func), (gst_element_get_state),
4750         (gst_element_abort_state), (gst_element_commit_state),
4751         (gst_element_lost_state), (gst_element_set_state),
4752         (gst_element_pads_activate), (gst_element_change_state),
4753         (gst_element_dispose), (gst_element_set_manager_func),
4754         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
4755         (gst_element_set_manager), (gst_element_get_manager),
4756         (gst_element_set_bus), (gst_element_get_bus),
4757         (gst_element_set_scheduler), (gst_element_get_scheduler):
4758         * gst/gstelement.h:
4759         * gst/gstevent.c: (gst_event_new_segment_seek),
4760         (gst_event_new_flush):
4761         * gst/gstevent.h:
4762         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
4763         (_gst_message_free), (gst_message_get_type), (gst_message_new),
4764         (gst_message_new_eos), (gst_message_new_error),
4765         (gst_message_new_warning), (gst_message_new_tag),
4766         (gst_message_new_state_changed), (gst_message_new_application),
4767         (gst_message_get_structure), (gst_message_parse_tag),
4768         (gst_message_parse_state_changed), (gst_message_parse_error),
4769         (gst_message_parse_warning):
4770         * gst/gstmessage.h:
4771         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
4772         (gst_real_pad_set_property), (gst_pad_set_active),
4773         (gst_pad_is_active), (gst_pad_set_blocked_async),
4774         (gst_pad_set_blocked), (gst_pad_is_blocked),
4775         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
4776         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
4777         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
4778         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
4779         (gst_pad_link_filtered), (gst_pad_relink_filtered),
4780         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
4781         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
4782         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
4783         (gst_pad_set_caps), (gst_pad_configure_sink),
4784         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
4785         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
4786         (gst_real_pad_dispose), (gst_real_pad_finalize),
4787         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
4788         (gst_pad_event_default_dispatch), (gst_pad_event_default),
4789         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
4790         * gst/gstpad.h:
4791         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
4792         (pipeline_bus_handler), (gst_pipeline_change_state),
4793         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
4794         * gst/gstpipeline.h:
4795         * gst/gstprobe.h:
4796         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
4797         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
4798         (gst_queue_link_src), (gst_queue_bufferalloc),
4799         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
4800         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
4801         (gst_queue_loop), (gst_queue_handle_src_event),
4802         (gst_queue_handle_src_query), (gst_queue_src_activate),
4803         (gst_queue_change_state):
4804         * gst/gstqueue.h:
4805         * gst/gstscheduler.c: (gst_scheduler_init),
4806         (gst_scheduler_dispose), (gst_scheduler_create_task),
4807         (gst_scheduler_factory_create):
4808         * gst/gstscheduler.h:
4809         * gst/gststructure.c: (gst_structure_get_type),
4810         (gst_structure_copy_conditional):
4811         * gst/gststructure.h:
4812         * gst/gsttaginterface.h:
4813         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
4814         (gst_task_init), (gst_task_dispose), (gst_task_create),
4815         (gst_task_get_state), (gst_task_start), (gst_task_stop),
4816         (gst_task_pause):
4817         * gst/gsttask.h:
4818         * gst/gstthread.c:
4819         * gst/gstthread.h:
4820         * gst/gsttypes.h:
4821         * gst/schedulers/Makefile.am:
4822         * gst/schedulers/cothreads_compat.h:
4823         * gst/schedulers/entryscheduler.c:
4824         * gst/schedulers/faircothreads.c:
4825         * gst/schedulers/faircothreads.h:
4826         * gst/schedulers/fairscheduler.c:
4827         * gst/schedulers/gstbasicscheduler.c:
4828         * gst/schedulers/gstoptimalscheduler.c:
4829         * gst/schedulers/gthread-cothreads.h:
4830         * gst/schedulers/threadscheduler.c:
4831         (gst_thread_scheduler_task_get_type),
4832         (gst_thread_scheduler_task_class_init),
4833         (gst_thread_scheduler_task_init),
4834         (gst_thread_scheduler_task_start),
4835         (gst_thread_scheduler_task_stop),
4836         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
4837         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
4838         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
4839         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
4840         (plugin_init):
4841         * libs/gst/Makefile.am:
4842         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
4843         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
4844         (gst_file_pad_parent_set):
4845         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
4846         (gst_dp_event_from_packet):
4847         * tests/complexity.c: (main):
4848         * tests/mass_elements.c: (main):
4849         * testsuite/states/locked.c: (message_received), (main):
4850         * testsuite/states/parent.c: (main):
4851         * tools/gst-inspect.c: (print_element_flag_info),
4852         (print_implementation_info), (print_pad_info):
4853         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
4854         (main):
4855         * tools/gst-md5sum.c: (event_loop), (main):
4856         * tools/gst-typefind.c: (main):
4857         * tools/gst-xmlinspect.c: (print_element_info):
4858         Next big merge.
4859         Added GstBus for mainloop integration.
4860         Added GstMessage for sending notifications on the bus.
4861         Added GstTask as an abstraction for pipeline entry points.
4862         Removed GstThread.
4863         Removed Schedulers.
4864         Simplified GstQueue for multithreaded core.
4865         Made _link threadsafe, removed old capsnego.
4866         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
4867         Added pad blocking functions.
4868         Reworked scheduling functions in GstPad to prepare for
4869         scheduling updates soon.
4870         Moved events out of data stream.
4871         Simplified GstEvent types.
4872         Added return values to push/pull.
4873         Removed clocking from GstElement.
4874         Added prototypes for state change function for next merge.
4875         Removed iterate from bins and state change management.
4876         Fixed some elements, disabled others for now.
4877         Fixed -inspect and -launch.
4878         Added check for GstBus.
4879
4880 2005-03-10  Wim Taymans  <wim@fluendo.com>
4881
4882         * docs/design/part-MT-refcounting.txt:
4883         * docs/design/part-clocks.txt:
4884         * docs/design/part-gstelement.txt:
4885         * docs/design/part-gstobject.txt:
4886         * docs/design/part-standards.txt:
4887         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4888         (gst_bin_remove_func), (gst_bin_remove):
4889         * gst/gstbin.h:
4890         * gst/gstbuffer.c:
4891         * gst/gstcaps.h:
4892         * testsuite/clock/clock1.c: (main):
4893         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
4894         (main):
4895         * testsuite/dlopen/loadgst.c: (do_test):
4896         * testsuite/refcounting/bin.c: (add_remove_test1),
4897         (add_remove_test2), (main):
4898         * testsuite/refcounting/element.c: (main):
4899         * testsuite/refcounting/element_pad.c: (main):
4900         * testsuite/refcounting/pad.c: (main):
4901         * tools/gst-launch.c: (sigint_handler_sighandler):
4902         * tools/gst-typefind.c: (main):
4903         Doc updates.
4904         Added doc about clock.
4905         removed gst_bin_iterate_recurse_up(), marked methods
4906         for removal.
4907         Fix more testsuites.
4908
4909 2005-03-09  Wim Taymans  <wim@fluendo.com>
4910
4911         * gst/gstpad.c: (gst_pad_get_direction),
4912         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
4913         (gst_pad_collect_valist):
4914         * testsuite/bins/interface.c: (main):
4915         * testsuite/caps/audioscale.c: (test_caps):
4916         * testsuite/caps/caps.c: (test1), (test2), (test3):
4917         * testsuite/caps/deserialize.c: (main):
4918         * testsuite/caps/enumcaps.c: (main):
4919         * testsuite/caps/filtercaps.c: (main):
4920         * testsuite/caps/intersect2.c: (main):
4921         * testsuite/caps/random.c: (main):
4922         * testsuite/caps/renegotiate.c: (my_fixate), (main):
4923         * testsuite/caps/sets.c: (check_caps):
4924         * testsuite/caps/simplify.c: (check_caps), (main):
4925         * testsuite/caps/subtract.c: (check_caps):
4926         Fix _pad_get_direction wrt ghostpads.
4927         Fix caps testsuite.
4928
4929 2005-03-09  Wim Taymans  <wim@fluendo.com>
4930
4931         * check/Makefile.am:
4932         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
4933         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
4934         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
4935         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
4936         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
4937         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
4938         (gst_bin_remove), (gst_bin_iterate_recurse_up),
4939         (bin_element_is_sink), (gst_bin_iterate_sinks),
4940         (gst_bin_iterate_all_by_interface):
4941         * gst/gstbin.h:
4942         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
4943         (gst_element_change_state), (gst_element_dispose),
4944         (gst_element_finalize), (gst_element_set_loop_function):
4945         * gst/gstelement.h:
4946         * gst/gstiterator.c: (find_custom_fold_func):
4947         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4948         (gst_pad_collectv), (gst_pad_collect_valist),
4949         (gst_pad_template_new):
4950         * gst/gstpipeline.c: (gst_pipeline_class_init),
4951         (gst_pipeline_dispose), (gst_pipeline_set_property),
4952         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
4953         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
4954         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
4955         * gst/gstutils.h:
4956         * gst/schedulers/entryscheduler.c:
4957         * gst/schedulers/gstbasicscheduler.c:
4958         (gst_basic_scheduler_cothreaded_chain),
4959         (gst_basic_scheduler_chain_add_element):
4960         * testsuite/bins/interface.c: (main):
4961         Added GstBin test.
4962         Added GstSystemClock test.
4963         Implemented clock distribution code in GstBin.
4964         Implemented iterate sinks method for future use.
4965         Rearranged gstelement.h
4966         Fix GstIterator comparison bug.
4967         Moved some code to GstPipeline, mostly clocking related.
4968
4969 2005-03-09  Wim Taymans  <wim@fluendo.com>
4970
4971         * configure.ac:
4972         * gst/gst_private.h:
4973         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4974         (gst_bin_remove_func), (gst_bin_remove),
4975         (gst_bin_get_by_name_recurse_up):
4976         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
4977         (gst_clock_id_compare_func), (gst_clock_id_wait),
4978         (gst_clock_id_wait_async), (gst_clock_init),
4979         (gst_clock_adjust_unlocked), (gst_clock_get_time):
4980         * gst/gstelement.h:
4981         * gst/gstinfo.c: (_gst_debug_init):
4982         * gst/gstobject.h:
4983         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4984         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
4985         * gst/gstpad.h:
4986         Bump version number, we're now 0.9.0
4987         Add future debugging category.
4988         Fix NULL _unref() in _get_by_name_recurse_up
4989         Rearrange gstpad.h.
4990         Update some docs.
4991
4992 2005-03-08  Wim Taymans  <wim@fluendo.com>
4993
4994         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
4995         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4996         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
4997         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
4998         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
4999         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
5000         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
5001         * gst/elements/gstidentity.c: (gst_identity_class_init):
5002         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
5003         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
5004         * gst/elements/gstshaper.c: (gst_shaper_class_init):
5005         * gst/elements/gststatistics.c: (gst_statistics_class_init):
5006         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
5007         (gst_tee_link):
5008         * gst/gstelement.c: (gst_element_class_init),
5009         (gst_element_base_class_init), (gst_element_init),
5010         (gst_element_get_random_pad), (gst_element_wait_state_change),
5011         (gst_element_change_state), (gst_element_dispose),
5012         (gst_element_finalize), (gst_element_set_loop_function):
5013         * gst/gstelement.h:
5014         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
5015         * gst/gstthread.c: (gst_thread_class_init),
5016         (gst_thread_release_children_locks), (gst_thread_change_state):
5017         * gst/schedulers/gstbasicscheduler.c:
5018         (gst_basic_scheduler_loopfunc_wrapper),
5019         (gst_basic_scheduler_chain_wrapper),
5020         (gst_basic_scheduler_src_wrapper),
5021         (gst_basic_scheduler_remove_element):
5022         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
5023         Remove threadsafe properties. Fix elements because GObject
5024         complains when installing a property before declaring a
5025         set/get_property handler.
5026         Rearrange gstelement.h file, use STATE macros for state locks.
5027         Free mutexes in the finalize method instead of dispose.
5028
5029 2005-03-08  Wim Taymans  <wim@fluendo.com>
5030
5031         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
5032         * gst/gstthread.c: (gst_thread_release_children_locks):
5033         Added parentage check.
5034         Fix build og GstThread again.
5035
5036 2005-03-08  Wim Taymans  <wim@fluendo.com>
5037
5038         * docs/design/part-MT-refcounting.txt:
5039         * docs/design/part-conventions.txt:
5040         * docs/design/part-gstobject.txt:
5041         * docs/design/part-relations.txt:
5042         * docs/design/part-standards.txt:
5043         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
5044         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
5045         (gst_bin_get_by_name), (gst_bin_get_by_interface),
5046         (gst_bin_iterate_all_by_interface):
5047         * gst/gstbuffer.h:
5048         * gst/gstclock.h:
5049         * gst/gstelement.c: (gst_element_class_init),
5050         (gst_element_change_state), (gst_element_set_loop_function):
5051         * gst/gstelement.h:
5052         * gst/gstiterator.c:
5053         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
5054         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
5055         (gst_object_dispatch_properties_changed), (gst_object_set_name),
5056         (gst_object_set_parent), (gst_object_unparent),
5057         (gst_object_check_uniqueness):
5058         * gst/gstobject.h:
5059         Docs updates, clean up some headers.
5060
5061 2005-03-07  Wim Taymans  <wim@fluendo.com>
5062
5063         * check/.cvsignore:
5064         * check/Makefile.am:
5065         * check/gst-libs/.cvsignore:
5066         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
5067         * check/gst/.cvsignore:
5068         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
5069         (START_TEST), (gstbus_suite), (main):
5070         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
5071         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
5072         (gst_data_suite), (main):
5073         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
5074         (add_fold_func), (gstiterator_suite), (main):
5075         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
5076         (thread_name_object), (thread_name_object_default),
5077         (gst_object_name_compare), (gst_object_suite), (main):
5078         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
5079         (gst_pad_suite), (main):
5080         * check/gstcheck.c: (gst_check_log_message_func),
5081         (gst_check_log_critical_func), (gst_check_init):
5082         * check/gstcheck.h:
5083         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
5084         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
5085         Added checks.
5086
5087 2005-03-07  Wim Taymans  <wim@fluendo.com>
5088
5089         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
5090         (gst_list_iterator_next), (gst_list_iterator_resync),
5091         (gst_list_iterator_free), (gst_iterator_new_list),
5092         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
5093         (gst_iterator_free), (gst_iterator_push), (filter_next),
5094         (filter_resync), (filter_uninit), (filter_free),
5095         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
5096         (gst_iterator_foreach), (find_custom_fold_func),
5097         (gst_iterator_find_custom):
5098         * gst/gstiterator.h:
5099         Added missing files.
5100
5101 2005-03-07  Wim Taymans  <wim@fluendo.com>
5102
5103         * Makefile.am:
5104         * configure.ac:
5105         * docs/design/part-MT-refcounting.txt:
5106         * docs/design/part-conventions.txt:
5107         * docs/design/part-gstobject.txt:
5108         * docs/design/part-relations.txt:
5109         * examples/mixer/mixer.c: (main):
5110         * examples/thread/thread.c: (eos), (main):
5111         * gst/Makefile.am:
5112         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
5113         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
5114         (gst_spider_plug_from_srcpad):
5115         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
5116         (gst_spider_identity_change_state),
5117         (gst_spider_identity_sink_loop_type_finding):
5118         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
5119         * gst/elements/gstidentity.c: (gst_identity_init):
5120         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
5121         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
5122         * gst/elements/gsttypefindelement.c: (free_entry):
5123         * gst/gst.c:
5124         * gst/gst.h:
5125         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
5126         (gst_bin_set_clock_func), (gst_bin_auto_clock),
5127         (gst_bin_set_index), (gst_bin_set_element_sched),
5128         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
5129         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
5130         (gst_bin_iterate_elements), (iterate_child_recurse),
5131         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
5132         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
5133         (compare_interface), (gst_bin_get_by_interface),
5134         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
5135         * gst/gstbin.h:
5136         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
5137         (gst_buffer_default_free), (gst_buffer_default_copy),
5138         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
5139         (gst_buffer_create_sub):
5140         * gst/gstbuffer.h:
5141         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
5142         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
5143         (gst_caps_unref), (gst_static_caps_get),
5144         (gst_caps_remove_and_get_structure), (gst_caps_append),
5145         (gst_caps_append_structure), (gst_caps_remove_structure),
5146         (gst_caps_copy_nth), (gst_caps_set_simple),
5147         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
5148         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
5149         (gst_caps_structure_intersect_field), (gst_caps_intersect),
5150         (gst_caps_structure_subtract_field), (gst_caps_subtract),
5151         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
5152         (gst_caps_structure_figure_out_union),
5153         (gst_caps_switch_structures), (gst_caps_do_simplify),
5154         (gst_caps_replace), (gst_caps_from_string),
5155         (gst_caps_copy_conditional):
5156         * gst/gstcaps.h:
5157         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
5158         (_gst_clock_id_free), (gst_clock_id_unref),
5159         (gst_clock_id_compare_func), (gst_clock_id_wait),
5160         (gst_clock_id_wait_async), (gst_clock_class_init),
5161         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
5162         (gst_clock_get_time), (gst_clock_set_time_adjust),
5163         (gst_clock_set_property), (gst_clock_get_property):
5164         * gst/gstclock.h:
5165         * gst/gstcompat.h:
5166         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
5167         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
5168         * gst/gstdata.h:
5169         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
5170         (gst_element_requires_clock), (gst_element_provides_clock),
5171         (gst_element_set_clock), (gst_element_clock_wait),
5172         (gst_element_wait), (gst_element_set_time_delay),
5173         (gst_element_is_indexable), (gst_element_add_pad),
5174         (gst_element_add_ghost_pad), (gst_element_remove_pad),
5175         (pad_compare_name), (gst_element_get_static_pad),
5176         (gst_element_request_pad), (gst_element_get_request_pad),
5177         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
5178         (gst_element_class_get_pad_template_list),
5179         (gst_element_class_get_pad_template), (gst_element_error_func),
5180         (gst_element_get_random_pad), (gst_element_get_event_masks),
5181         (gst_element_send_event), (gst_element_seek),
5182         (gst_element_get_query_types), (gst_element_query),
5183         (gst_element_get_formats), (gst_element_convert),
5184         (gst_element_is_locked_state), (gst_element_set_locked_state),
5185         (gst_element_sync_state_with_parent), (gst_element_change_state),
5186         (gst_element_finalize), (gst_element_yield),
5187         (gst_element_interrupt), (gst_element_set_scheduler),
5188         (gst_element_get_scheduler), (gst_element_set_loop_function):
5189         * gst/gstelement.h:
5190         * gst/gstevent.h:
5191         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
5192         (gst_format_get_by_nick), (gst_format_get_details),
5193         (gst_format_iterate_definitions):
5194         * gst/gstformat.h:
5195         * gst/gstindex.c: (gst_index_gtype_resolver):
5196         * gst/gstinfo.c:
5197         * gst/gstinfo.h:
5198         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
5199         (gst_mem_chunk_free):
5200         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
5201         (gst_object_ref), (gst_object_unref), (gst_object_sink),
5202         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
5203         (gst_object_dispatch_properties_changed),
5204         (gst_object_set_name_default), (gst_object_set_name),
5205         (gst_object_get_name), (gst_object_set_name_prefix),
5206         (gst_object_get_name_prefix), (gst_object_set_parent),
5207         (gst_object_get_parent), (gst_object_unparent),
5208         (gst_object_check_uniqueness), (gst_object_save_thyself),
5209         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
5210         (gst_object_set_property), (gst_object_get_property),
5211         (gst_object_get_path_string):
5212         * gst/gstobject.h:
5213         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
5214         (gst_real_pad_init), (gst_real_pad_get_property),
5215         (gst_pad_custom_new), (gst_pad_get_direction),
5216         (gst_pad_set_active), (gst_pad_is_active),
5217         (gst_pad_set_event_function), (gst_pad_is_linked),
5218         (gst_pad_link_free), (gst_pad_link_intersect),
5219         (gst_pad_link_fixate), (gst_pad_set_caps),
5220         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
5221         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
5222         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
5223         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
5224         (gst_pad_get_caps), (gst_pad_peer_get_caps),
5225         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
5226         (gst_pad_realize), (gst_pad_get_allowed_caps),
5227         (gst_real_pad_dispose), (gst_real_pad_finalize),
5228         (gst_pad_collectv), (gst_pad_collect_valist),
5229         (gst_pad_template_dispose), (gst_pad_template_new),
5230         (gst_pad_get_internal_links):
5231         * gst/gstpad.h:
5232         * gst/gstpipeline.c: (gst_pipeline_dispose),
5233         (gst_pipeline_change_state):
5234         * gst/gstpipeline.h:
5235         * gst/gstplugin.c:
5236         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
5237         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
5238         * gst/gstpluginfeature.h:
5239         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5240         * gst/gstquery.c: (_gst_query_type_initialize),
5241         (gst_query_type_register), (gst_query_type_get_by_nick),
5242         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
5243         * gst/gstquery.h:
5244         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
5245         * gst/gstscheduler.c: (gst_scheduler_add_element),
5246         (gst_scheduler_factory_create):
5247         * gst/gststructure.c: (gst_structure_set_parent_refcount),
5248         (gst_structure_free), (gst_structure_set_name),
5249         (gst_structure_id_set_value), (gst_structure_set_value),
5250         (gst_structure_set_valist), (gst_structure_remove_field),
5251         (gst_structure_remove_fields),
5252         (gst_structure_remove_fields_valist),
5253         (gst_structure_remove_all_fields), (gst_structure_foreach),
5254         (gst_structure_map_in_place),
5255         (gst_caps_structure_fixate_field_nearest_int),
5256         (gst_caps_structure_fixate_field_nearest_double):
5257         * gst/gststructure.h:
5258         * gst/gstsystemclock.c: (gst_system_clock_class_init),
5259         (gst_system_clock_init), (gst_system_clock_dispose),
5260         (gst_system_clock_async_thread),
5261         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
5262         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
5263         * gst/gstsystemclock.h:
5264         * gst/gsttag.c: (gst_tag_list_add_value_internal),
5265         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
5266         * gst/gsttaginterface.c:
5267         * gst/gstthread.c: (gst_thread_dispose),
5268         (gst_thread_release_children_locks), (gst_thread_change_state),
5269         (gst_thread_main_loop):
5270         * gst/gsttrashstack.h:
5271         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
5272         * gst/gsttypes.h:
5273         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
5274         (gst_element_request_pad), (gst_element_get_pad_from_template),
5275         (gst_element_request_compatible_pad),
5276         (gst_element_get_compatible_pad_filtered),
5277         (gst_element_get_compatible_pad), (gst_element_state_get_name),
5278         (gst_element_link_pads_filtered), (gst_element_link_filtered),
5279         (gst_element_link_many), (gst_element_link),
5280         (gst_element_link_pads), (gst_element_unlink_pads),
5281         (gst_element_unlink_many), (gst_element_unlink),
5282         (gst_pad_can_link_filtered), (gst_pad_can_link),
5283         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
5284         (gst_object_default_error), (gst_bin_add_many),
5285         (gst_bin_remove_many), (gst_element_populate_std_props),
5286         (gst_element_class_install_std_props), (gst_buffer_merge),
5287         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
5288         (link_fold_func), (gst_pad_proxy_setcaps):
5289         * gst/gstutils.h:
5290         * gst/gstvalue.c: (gst_value_deserialize_string):
5291         * gst/parse/grammar.y:
5292         * gst/schedulers/gstbasicscheduler.c:
5293         (gst_basic_scheduler_cothreaded_chain),
5294         (gst_basic_scheduler_chain_recursive_add),
5295         (gst_basic_scheduler_pad_link):
5296         * gst/schedulers/gstoptimalscheduler.c:
5297         (get_group_schedule_function),
5298         (gst_opt_scheduler_state_transition),
5299         (gst_opt_scheduler_add_element), (element_get_reachables_func):
5300         * libs/gst/bytestream/bytestream.c:
5301         * libs/gst/dataprotocol/dataprotocol.c:
5302         (gst_dp_header_from_buffer):
5303         * po/nb.po:
5304         * po/ru.po:
5305         * tests/threadstate/threadstate2.c: (eos):
5306         * tools/gst-compprep.c: (main):
5307         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
5308         (print_pad_info), (print_children_info):
5309         * tools/gst-launch.c: (idle_func), (main):
5310         * tools/gst-md5sum.c: (idle_func), (main):
5311         * tools/gst-xmlinspect.c: (print_element_info):
5312         First THREADED backport attempt, focusing on adding locks and
5313         making sure the API is threadsafe. Needs more work. More docs
5314         follow this week.
5315
5316 2005-02-24  Andy Wingo  <wingo@pobox.com>
5317
5318         * tests/bench-complexity.scm:
5319         * tests/complexity.gnuplot: New files, good for running complexity
5320         benchmarks.
5321
5322         * tests/Makefile.am:
5323         * tests/complexity.c: New test, sets up N elements, at each level
5324         teeing into M streams per element. Eeeenteresting.
5325
5326         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
5327         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
5328         running bench-mass_elements.scm.
5329
5330         * tests/bench-mass_elements.scm: New script, runs mass_elements
5331         for various numbers of identities, outputting the results to a
5332         file. Requires guile 1.6. Just for testing.
5333
5334 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5335
5336         * gst/schedulers/fairscheduler.c:
5337           compile with debug disabled
5338
5339 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
5340
5341         * configure.ac:
5342           hunting season on 0.9 is now OPEN
5343
5344 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
5345
5346         * docs/libs/tmpl/gstcontrol.sgml:
5347         * docs/libs/tmpl/gstdparam.sgml:
5348         * docs/libs/tmpl/gstdplinint.sgml:
5349         * docs/libs/tmpl/gstdpman.sgml:
5350         * docs/libs/tmpl/gstdpsmooth.sgml:
5351         * docs/libs/tmpl/gstunitconvert.sgml:
5352           more docs for the state of dparams
5353
5354 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5355
5356         * gst/gstelementfactory.c: (gst_element_factory_create):
5357         * gst/gstobject.c: (gst_object_init),
5358         (gst_object_set_name_default), (gst_object_set_name):
5359           name objects by default, not in gst_element_factory_create. Allows
5360           using elements created with g_object_new. (fixes #167283)
5361
5362 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5363
5364         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
5365           make the time that debugging functions print relative to when
5366           gst_init was called
5367
5368 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
5369
5370         * gst/gsttaginterface.c:
5371           Fix inline docs: tag setter vararg functions are NULL-terminated,
5372           GST_TAG_INVALID doesn't exist any more.
5373
5374 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5375
5376         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
5377         Allocate the 1 byte more memory that was forgotten!!!!!
5378         fixes memory corruption on 64bit platforms
5379
5380 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
5381
5382         * docs/pwg/building-pads.xml:
5383         * docs/pwg/intro-basics.xml:
5384           fixed a few typos, relabeled introductionary list of types
5385         * docs/random/ensonic/dparams.txt:
5386           more notes abut dparam changes
5387         * libs/gst/control/dparam.c: (gst_dparam_attach):
5388         * libs/gst/control/dparammanager.c:
5389         * libs/gst/control/dparammanager.h:
5390           - many comments and notes on dparam implementation
5391           - new dparams are were not initialized to the default value
5392             from param spec
5393
5394 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
5395
5396         submitted by: Peter Astakhov
5397
5398         * po/LINGUAS:
5399         * po/ru.po:
5400           adding Russian translation
5401
5402 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5403
5404         * configure.ac:
5405         * docs/gst/Makefile.am:
5406         * docs/libs/Makefile.am:
5407           make sure popt is added to gtk-doc flags.  Fixes #147782.
5408
5409 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
5410
5411         * docs/faq/using.xml:
5412           Fix typo in FAQ (artssink => artsdsink)
5413
5414 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5415
5416         * tools/gst-launch.1.in:
5417           Fix typo (#166699).
5418
5419 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
5420
5421         * docs/faq/using.xml:
5422           Add -v argument to fakesrc/fakesink gst-launch line,
5423           so that the promised output will actually show up.
5424
5425 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5426
5427         * gst/gstthread.c: (gst_thread_change_state):
5428           Implement state-change error handling (#166073).
5429
5430 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5431
5432         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
5433           Release interrupt after handling (#166250).
5434
5435 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5436
5437         * configure.ac:
5438           back to HEAD
5439
5440 === release 0.8.9 ===
5441
5442 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5443
5444         * NEWS:
5445         * RELEASE:
5446         * configure.ac:
5447           releasing 0.8.9, "Like Eating Glass"
5448
5449 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5450
5451         submitted by: Clytie Siddall
5452
5453         * po/vi.po: Added Vietnamese translation
5454
5455 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5456
5457         patch by: Tim Philipp-Müller
5458
5459         * configure.ac:
5460         * gst/gstpad.c:
5461           unref data when probe function returns FALSE.  Fixes #166362
5462
5463 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5464
5465         * gst/gst.c: (gst_init_get_popt_table):
5466           Fix typo (#166269).
5467
5468 2005-02-04  Andy Wingo  <wingo@pobox.com>
5469
5470         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
5471         the debugging on whether the caps are compatible.
5472
5473 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5474
5475         * docs/manual/basics-elements.xml:
5476           Fix two typos.
5477
5478 2005-02-02  Wim Taymans  <wim@fluendo.com>
5479
5480         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
5481         (schedule_chain), (get_invalid_call), (chain_invalid_call),
5482         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
5483         Remove some FIXMEs after analysing and commenting why they
5484         are not issues.
5485
5486 2005-02-02  Wim Taymans  <wim@fluendo.com>
5487
5488         * gst/schedulers/gstoptimalscheduler.c:
5489         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
5490         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
5491         (get_invalid_call), (chain_invalid_call),
5492         (get_group_schedule_function), (loop_group_schedule_function),
5493         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
5494         (gst_opt_scheduler_state_transition),
5495         (gst_opt_scheduler_add_element),
5496         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
5497         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
5498         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
5499         (gst_opt_scheduler_show):
5500         Added lock to protect scheduler data structures.
5501
5502 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5503
5504         * testsuite/threads/threadi.c: (cb_data):
5505           Fix buglet in test.
5506
5507 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5508
5509         * testsuite/threads/Makefile.am:
5510         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
5511           On Wim's request, split the test in three separately-compiled
5512           tests that each test a very specific bug. Two of them still fail,
5513           will create bugs for those. threadi.c indicates why they fail.
5514
5515 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5516
5517         * gst/schedulers/gstoptimalscheduler.c:
5518         (get_group_schedule_function):
5519           Try to work with the threading mess that queue_link is.
5520
5521 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5522
5523         * gst/gstbin.c: (gst_bin_remove_func):
5524           Explicitely make an element release locks in a group when being
5525           remove from a bin.
5526         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
5527           If there's no scheduler, always return immediately (similar to
5528           gst_element_interrupt).
5529
5530 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5531
5532         * gst/gstbin.c: (gst_bin_child_state_change_func):
5533           Remove a piece of code that could never be reached.
5534         * docs/gst/gstreamer-sections.txt:
5535         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
5536         (gst_pad_call_get_function):
5537         * gst/gstpad.h:
5538         * testsuite/pad/Makefile.am:
5539           Fix #150546, enable tests.
5540
5541 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5542
5543         * docs/pwg/advanced-types.xml:
5544           Fix description for buffer-frames=0.
5545         * docs/gst/tmpl/gstbin.sgml:
5546         * gst/gstbin.c: (gst_bin_child_state_change_func),
5547         (gst_bin_change_state), (gst_bin_change_state_norecurse):
5548         * gst/gstbin.h:
5549         * testsuite/threads/Makefile.am:
5550         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
5551         (cb_state), (cb_play), (main):
5552           Fix non-recursive state changes to *really* change the state
5553           of the object, and not just call parent_class->state_change.
5554           Fix a lot of lockups caused by this. Fixes #132775. Add test
5555           for the problem. Also enable test to show #142588 (fixed).
5556         * gst/gstthread.c: (gst_thread_change_state),
5557         (gst_thread_child_state_change):
5558           Don't exit the thread if we go to NULL and are inside thread
5559           context. Instead, return control to the main thread context
5560           and exit from there.
5561         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
5562           Don't unset virtual functions, since those may still be used.
5563           That's not necessarily correct, but suffices for now.
5564         * configure.ac:
5565         * testsuite/Makefile.am:
5566         * testsuite/pad/Makefile.am:
5567         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
5568         (gst_test_sink_base_init), (gst_test_sink_chain),
5569         (gst_test_sink_init), (main):
5570         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
5571         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
5572         (main):
5573         * testsuite/pad/link.c: (gst_test_element_class_init),
5574         (gst_test_element_base_init), (gst_test_src_get),
5575         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
5576         (gst_test_filter_loop), (gst_test_filter_init),
5577         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
5578         (cb_error), (main):
5579           Add tests to show #150546. Pass, but should fail (currently
5580           disabled from the testsuite).
5581         * gst/gstscheduler.c: (gst_scheduler_dispose):
5582           Dereference child schedulers on dispose (#94464).
5583         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
5584           Fix typo.
5585         * testsuite/threads/thread.c: (main):
5586           Add more debug.
5587
5588 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5589
5590         * gst/gstpad.c: (gst_pad_push):
5591           Oops, revert previous commit, broke testsuite...
5592
5593 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5594
5595         * gst/gstpad.c: (gst_pad_push):
5596           Add check that the pad on which the push is performed is not a
5597           get-based pad (#150546).
5598
5599 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5600
5601         * gst/elements/gsttypefindelement.c:
5602         (gst_type_find_element_handle_event):
5603           Fix buffer pushing if stream EOSes during typefinding.
5604
5605 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
5606
5607         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5608
5609         * gst/gstvalue.c: (gst_string_wrap):
5610           Allow NULL-strings as argument (#165365).
5611
5612 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
5613
5614         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5615
5616         * gst/schedulers/faircothreads.c:
5617         (gst_fair_scheduler_cothread_queue_show):
5618           Fix build without debug enabled.
5619
5620 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
5621
5622         * docs/gst/gstreamer-sections.txt:
5623         * docs/libs/gstreamer-libs-docs.sgml:
5624         * docs/libs/gstreamer-libs-sections.txt:
5625         * docs/libs/tmpl/gstcontrol.sgml:
5626         * docs/libs/tmpl/gstdparam.sgml:
5627         * docs/libs/tmpl/gstdplinint.sgml:
5628         * docs/libs/tmpl/gstdpman.sgml:
5629         * docs/libs/tmpl/gstdpsmooth.sgml:
5630         * docs/libs/tmpl/gstputbits.sgml:
5631         * docs/libs/tmpl/gstunitconvert.sgml:
5632         * libs/gst/control/dparam.c:
5633         * libs/gst/control/dparam.h:
5634         * libs/gst/control/dparammanager.c:
5635         (gst_dpman_add_required_dparam_callback),
5636         (gst_dpman_add_required_dparam_direct),
5637         (gst_dpman_add_required_dparam_array),
5638         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
5639         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
5640         (gst_dpman_get_manager)
5641           restructured DParam docs
5642
5643 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
5644
5645         * gst-element-check.m4:
5646           Only check for gst-inspect if we haven't already
5647           found it in previous element check runs
5648
5649 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
5650
5651         * docs/gst/Makefile.am:
5652         * docs/libs/Makefile.am:
5653           fixed install rules to treat style.css as optional
5654
5655 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
5656
5657         * docs/gst/Makefile.am:
5658         * docs/libs/Makefile.am:
5659           install style.css along with docs
5660         * docs/gst/tmpl/gstbin.sgml:
5661         * docs/gst/tmpl/gstclock.sgml:
5662         * docs/gst/tmpl/gstdata.sgml:
5663         * docs/gst/tmpl/gstelement.sgml:
5664         * gst/gstbin.h:
5665         * gst/gstelement.c: (gst_element_class_init):
5666         * gst/gstelement.h:
5667           fixing incomplete docs
5668
5669 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
5670
5671         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5672           Don't unref seek event twice when fflush() fails
5673           
5674 2005-01-22  David Schleef  <ds@schleef.org>
5675
5676         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
5677
5678 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
5679
5680         * docs/gst/Makefile.am:
5681         * docs/libs/Makefile.am:
5682           added params for deprecation guards
5683         * gst/gst.c:
5684         * gst/gst.h:
5685         * gst/gsterror.c: (_gst_resource_errors_init),
5686         (_gst_stream_errors_init):
5687         * gst/gsterror.h:
5688           documented some more enums
5689
5690 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
5691         * gst/autoplug/gstspideridentity.c:
5692         Cosmetic fix - spider_find_peek should be static
5693         * gst/parse/parse.l:
5694         Applying fix for #164261
5695
5696 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
5697
5698         * docs/gst/gstreamer-sections.txt:
5699         * docs/gst/tmpl/gstplugin.sgml:
5700         * docs/libs/gstreamer-libs-sections.txt:
5701         * docs/libs/tmpl/gstcontrol.sgml:
5702         * gst/gstbuffer.h:
5703         * gst/gsttag.h:
5704         * gst/gstvalue.c:
5705           added docs for the TAG defines
5706
5707 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5708
5709         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
5710           Only unref entry if there is an entry.
5711
5712 2005-01-17  Wim Taymans  <wim@fluendo.com>
5713
5714         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5715         (remove_from_group), (schedule_group), (normalize_group),
5716         (gst_opt_scheduler_iterate):
5717         Also ref/unref decoupled elements before iterating the
5718         group since they are not added to the list of elements.
5719
5720 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5721
5722         * docs/manual/highlevel-components.xml:
5723           Add subtitle/streamselection as new features to playbin.
5724
5725 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5726
5727         * docs/manual/manual.xml:
5728           Re-enable dataaccess docs (oops).
5729
5730 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5731
5732         * docs/pwg/advanced-types.xml:
5733         * docs/random/mimetypes:
5734           Add documentation on libsndfile types (#163309), by Steve Baker
5735           <steve@stevebaker.org>.
5736         * gst/gstelement.c: (gst_element_release_request_pad):
5737           If an element has no explicit function, just remove the pad.
5738
5739 2005-01-17  Luca Ognibene  <luogni@tin.it>
5740
5741         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5742
5743         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
5744           Fix memleak (#163801).
5745
5746 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5747
5748         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
5749           I think this is actually more correct...
5750
5751 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5752
5753         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5754           Another workaround for memory access while destroyed in callback.
5755           Please, someone with refcount knowledge, have a look at this.
5756
5757 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5758
5759         * docs/faq/faq.xml:
5760         * docs/faq/legal.xml:
5761           move the legal Q&A here
5762
5763 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5764
5765         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
5766         (gst_tee_request_new_pad):
5767           Fix negotiation.
5768
5769 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5770
5771         * docs/random/omega/caps2:
5772         * testsuite/caps/caps_strings:
5773           replace framerate aproximations by their real value
5774           (24000/1001, 30000/1001, 60000/1001)
5775           Partially fixes bug #164049
5776
5777 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5778
5779         * docs/gst/Makefile.am:
5780           don't fail on the stupid GstPoptOption
5781
5782 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5783
5784         * gst/gstpad.h:
5785         * gst/gstprobe.c:
5786           allow probes to work on ghost pads by realizing the pad
5787           probe debugging
5788
5789 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5790
5791         * docs/gst/gstreamer-sections.txt:
5792         * docs/gst/tmpl/gstpad.sgml:
5793         * gst/gstpad.c: (gst_pad_set_active_recursive):
5794         * gst/gstpad.h:
5795           Add gst_pad_set_active_recursive().
5796
5797 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5798
5799         * docs/random/release:
5800           updates
5801         * gst/gst_private.h:
5802         * gst/gstinfo.c:
5803         * gst/gstobject.c:
5804           move deep_notify logging to a new category
5805         * gst/gstprobe.c:
5806         * gst/gstprobe.h:
5807           add stuff so bindings can wrap probes
5808
5809 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5810
5811         * gst/gstplugin.c: (gst_plugin_load):
5812           Fix plugin loading if plugin/lib was already loaded. Fixes
5813           #163383
5814
5815 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
5816
5817         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5818
5819         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
5820           Protect plugin loading by a mutex so it's threadsafe. Fixes
5821           #163234.
5822
5823 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5824
5825         * gst/gstevent.c: (_gst_event_copy):
5826           Reference source object when copying events, since it'll be
5827           dereferenced on event dereferencing as well.
5828
5829 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5830
5831         * docs/gst/gstreamer-sections.txt:
5832         * docs/gst/tmpl/gstevent.sgml:
5833         * gst/gstevent.c: (gst_event_new_filler_stamped),
5834         (gst_event_filler_get_duration):
5835         * gst/gstevent.h:
5836           Add two new functions for filler events (which are used to
5837           synchronize streams if one of them is not having any data
5838           for a while) without interrupting the actual data-stream.
5839           Basically a no-op.
5840         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5841         (gst_queue_link_sink), (gst_queue_link_src),
5842         (gst_queue_change_state):
5843           Allow for renegotiation while filled. Required for stream
5844           switching while playing.
5845
5846 2005-01-08  Benjamin Otte  <otte@gnome.org>
5847
5848         * gst/gstelement.c: (gst_element_link_many):
5849           fix up g_return_if_fail's
5850         * po/LINGUAS:
5851         * po/de.po:
5852           add German translation, that was somehow not included
5853
5854 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5855
5856         * docs/random/mimetypes:
5857           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
5858           do not add them to riff-lib as they are not common
5859
5860 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5861
5862         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5863           Check for existence of probe after performing the probe before
5864           re-accessing it to prevent segfaults caused by removal of the
5865           probe in the callback.
5866
5867 2005-01-05  David Schleef  <ds@schleef.org>
5868
5869         * testsuite/registry/Makefile.am:
5870         * testsuite/registry/gst-print-formats.c:
5871         (print_pad_templates_info), (print_element_list),
5872         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
5873         (g_list_uniqify), (get_pad_templates_info),
5874         (get_element_mime_list), (print_mime_list), (main): A little
5875         program that looks through the registry to find elements of
5876         a given type.  Not particularly interesting as a test, except
5877         that there's no other test covering the same area.
5878
5879 2005-01-05  David Schleef  <ds@schleef.org>
5880
5881         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
5882         (fault_handler_sigaction), (fault_spin),
5883         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
5884         in signal.h-type signal handlers by not calling forbidden functions,
5885         including gst_element_set_state().
5886
5887 2005-01-05  David Schleef  <ds@schleef.org>
5888
5889         * gst/gstvalue.h: Mark _gst_reserved[] as private
5890
5891 2005-01-05  David Schleef  <ds@schleef.org>
5892
5893         * gst/gstvalue.c: Fix doc build problem.
5894
5895 2005-01-05  David Schleef  <ds@schleef.org>
5896
5897         * gst/gstvalue.c: Add some documentation
5898
5899 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
5900
5901         * docs/README:
5902           another shell oneliner for empty return value docs
5903         * gst/gstcaps.c:
5904         * gst/gstvalue.c:
5905         * libs/gst/control/dparam.c:
5906           more doc fixes (parameters and return values)
5907
5908 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
5909
5910         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5911
5912         * gst/gstregistry.h:
5913         * gst/registries/gstxmlregistry.c:
5914           Fix macro's for Mingw (fixes #162276).
5915
5916 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
5917
5918         * docs/README:
5919           quick shell oneliner to find undocumented members
5920         * docs/gst/tmpl/gstplugin.sgml:
5921         * docs/gst/tmpl/gstscheduler.sgml:
5922         * docs/gst/tmpl/gstthread.sgml:
5923           more enumtypes cleanup
5924         * gst/gsterror.h:
5925           activated documentation comments, now someone needs to document
5926           the enums :(
5927
5928 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5929
5930         * docs/manual/manual.xml:
5931           Add dataaccess part (doh!).
5932
5933 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5934
5935         * docs/manual/advanced-autoplugging.xml:
5936           Fix typo (intiate -> initiate).
5937
5938 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5939
5940         * docs/random/bbb/streamselection:
5941           Add some notes on how to handle multi-subtitle/-audio streams.
5942
5943 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
5944
5945         * docs/gst/gstreamer-docs.sgml:
5946         * docs/gst/gstreamer-sections.txt:
5947         * docs/gst/tmpl/gstenumtypes.sgml:
5948         * docs/gst/tmpl/gsterror.sgml:
5949         * docs/gst/tmpl/gstevent.sgml:
5950         * docs/gst/tmpl/gstpad.sgml:
5951         * docs/gst/tmpl/gstpadtemplate.sgml:
5952         * docs/gst/tmpl/gstthread.sgml:
5953           removed gstenumtypes section from docs and put all the enums into
5954           their sections
5955
5956 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5957
5958         * gst/gstplugin.c:
5959           document gst_library_load a bit more (riff special case + return
5960           value if already loaded)
5961         * testsuite/bytestream/filepadsink.c:
5962           plugin name is 'gstbytestream', not 'bytestream'
5963
5964 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5965
5966         * docs/random/bbb/subtitles:
5967           Add some first mind rumblings on proper subtitle support.
5968
5969 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
5970
5971         * po/ca.po:
5972         * po/sv.po:
5973           updated translations
5974
5975 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5976
5977         * docs/manual/advanced-dataaccess.xml:
5978           Add section on how to use fakesrc/fakesink/identity in your
5979           application, plus section on how to embed plugins. Also mention
5980           probes.
5981         * docs/manual/appendix-checklist.xml:
5982         * docs/manual/appendix-debugging.xml:
5983         * docs/manual/appendix-gnome.xml:
5984         * docs/manual/appendix-integration.xml:
5985           Debug -> checklist, GNOME -> integration, add sections on Linux,
5986           KDE integration and add other things useful for application
5987           development.
5988         * docs/manual/manual.xml:
5989           Remove some fixmes, update some file pointers.
5990         * docs/pwg/appendix-checklist.xml:
5991           Fix typo.
5992         * docs/pwg/building-boiler.xml:
5993           Remove ugly header and add commented fixme.
5994         * docs/pwg/pwg.xml:
5995           Add fixme.
5996         * examples/manual/Makefile.am:
5997           Add example for added docs.
5998
5999 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
6000
6001         * configure.ac:
6002           back to HEAD
6003
6004 === release 0.8.8 ===
6005
6006 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
6007
6008         * NEWS:
6009         * RELEASE:
6010         * configure.ac:
6011           Releasing 0.8.8, "I'll Take Care Of You"
6012
6013 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
6014
6015         * configure.ac:
6016           second prerelease
6017
6018 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
6019
6020         patch by: Wim Taymans
6021
6022         * gst/gstbin.c:
6023           Fix for #159852 - make iterate emission threadsafe
6024
6025 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
6026
6027         * docs/faq/cvs.xml:
6028           notes about new fdo account request
6029
6030 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
6031
6032         * docs/gst/gstreamer-docs.sgml:
6033         * docs/gst/tmpl/gstenumtypes.sgml:
6034         * docs/gst/tmpl/gstplugin.sgml:
6035         * docs/libs/gstreamer-libs-docs.sgml:
6036           Added missing short docs. Added ids for navigation.
6037
6038 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6039
6040         * docs/manual/advanced-autoplugging.xml:
6041         * docs/manual/advanced-schedulers.xml:
6042         * docs/manual/advanced-threads.xml:
6043           Rewrites. Remove cothreads, go a bit into opt specifically,
6044           document threads and their gotchas, and do some technical stuff
6045           on autoplugging plus add some working examples. Fixes #157395.
6046         * examples/manual/Makefile.am:
6047           Add typefind/autoplugger example (one that actually works).
6048           Remove queue example since it's a duplicate of the thread one.
6049
6050 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6051
6052         * gst/gstvalue.c: (gst_value_deserialize_string):
6053           use deprecated g_value_set_string_take_ownership to keep compatible
6054           with glib 2.2
6055
6056 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6057
6058         * gst/gstvalue.c: (gst_value_deserialize_string):
6059           revert last patch, only dom a g_utf8_validate now before accepting
6060           the string - caps parsing strips " from strings so we can't rely on
6061           them
6062         * testsuite/caps/value_serialize.c: (test_string_deserialization):
6063           disable a test that tested the above and comment it
6064
6065 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
6066
6067         Patch reviewed by David Schleef  <ds@schleef.org>
6068
6069         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
6070         bug #153882)
6071         * win32/gstenumtypes.h: same
6072
6073 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6074
6075         * gst/gstpad.c: (gst_pad_query):
6076           Do query on realized pad, similar to how convert/send_event handle
6077           this. Also makes sense, since this pad belongs to the function to
6078           which this query will be sent. Fixes #158163.
6079
6080 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
6081
6082         * docs/manual/appendix-programs.xml: fix pipeline to actually work
6083
6084 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
6085
6086         * docs/faq/general.xml: fix pipeline to actually work
6087
6088 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6089
6090         * gst/gstvalue.c: (gst_value_deserialize_string):
6091           check that a simple string that gets deserialized does not contain
6092           invalid characters
6093         * testsuite/caps/value_serialize.c: (test_string_deserialization):
6094           remove a test that tested a wring behaviour
6095
6096 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
6097
6098         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6099
6100         * docs/manual/intro-motivation.xml:
6101           Fix typos.
6102
6103 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
6104
6105         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6106
6107         * docs/gst/tmpl/gstprobe.sgml:
6108           Fix documentation of probe callback - it is supposed to return
6109           FALSE, not TRUE, to remove data from the stream (#159087).
6110
6111 2004-12-16  Daniel Gazard  <dany42@free.fr>
6112
6113         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6114
6115         * gst/gstelementfactory.c: (gst_element_factory_create):
6116           Fix compile failure if compiling without libxml2 support (#149936).
6117
6118 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6119
6120         * docs/manual/advanced-autoplugging.xml:
6121         * docs/manual/highlevel-components.xml:
6122           Move spider from autoplugging to components. Autoplugging is for
6123           internals, not for solutions. ;-).
6124
6125 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6126
6127         * docs/random/ds/0.9-suggested-changes:
6128           Make note on device/location/uri property names.
6129
6130 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6131
6132         * docs/manual/advanced-autoplugging.xml:
6133         * docs/manual/advanced-clocks.xml:
6134         * docs/manual/advanced-interfaces.xml:
6135         * docs/manual/advanced-metadata.xml:
6136         * docs/manual/advanced-position.xml:
6137         * docs/manual/advanced-schedulers.xml:
6138         * docs/manual/advanced-threads.xml:
6139         * docs/manual/appendix-gnome.xml:
6140         * docs/manual/appendix-programs.xml:
6141         * docs/manual/appendix-quotes.xml:
6142         * docs/manual/autoplugging.xml:
6143         * docs/manual/basics-bins.xml:
6144         * docs/manual/basics-data.xml:
6145         * docs/manual/basics-elements.xml:
6146         * docs/manual/basics-helloworld.xml:
6147         * docs/manual/basics-init.xml:
6148         * docs/manual/basics-pads.xml:
6149         * docs/manual/basics-plugins.xml:
6150         * docs/manual/bins-api.xml:
6151         * docs/manual/bins.xml:
6152         * docs/manual/buffers-api.xml:
6153         * docs/manual/buffers.xml:
6154         * docs/manual/clocks.xml:
6155         * docs/manual/components.xml:
6156         * docs/manual/cothreads.xml:
6157         * docs/manual/debugging.xml:
6158         * docs/manual/dparams-app.xml:
6159         * docs/manual/dynamic.xml:
6160         * docs/manual/elements-api.xml:
6161         * docs/manual/elements.xml:
6162         * docs/manual/factories.xml:
6163         * docs/manual/gnome.xml:
6164         * docs/manual/goals.xml:
6165         * docs/manual/helloworld.xml:
6166         * docs/manual/helloworld2.xml:
6167         * docs/manual/highlevel-components.xml:
6168         * docs/manual/highlevel-xml.xml:
6169         * docs/manual/init-api.xml:
6170         * docs/manual/intro-basics.xml:
6171         * docs/manual/intro-motivation.xml:
6172         * docs/manual/intro-preface.xml:
6173         * docs/manual/intro.xml:
6174         * docs/manual/links-api.xml:
6175         * docs/manual/links.xml:
6176         * docs/manual/manual.xml:
6177         * docs/manual/motivation.xml:
6178         * docs/manual/pads-api.xml:
6179         * docs/manual/pads.xml:
6180         * docs/manual/plugins-api.xml:
6181         * docs/manual/plugins.xml:
6182         * docs/manual/programs.xml:
6183         * docs/manual/queues.xml:
6184         * docs/manual/quotes.xml:
6185         * docs/manual/schedulers.xml:
6186         * docs/manual/states-api.xml:
6187         * docs/manual/states.xml:
6188         * docs/manual/threads.xml:
6189         * docs/manual/typedetection.xml:
6190         * docs/manual/win32.xml:
6191         * docs/manual/xml.xml:
6192           Try 2. This time, include a short preface as a "general
6193           introduction", also add code blocks around all code samples
6194           so they get compiled. We still need a way to tell readers
6195           the filename of the code sample. In some cases, don't show
6196           all code in the documentation, but do include it in the generated
6197           code. This allows for focussing on specific bits in the docs,
6198           while still having a full test application available.
6199         * examples/manual/Makefile.am:
6200           Fix up examples for new ADM. Add several of the new examples that
6201           were either added or were missing from the build system.
6202         * examples/manual/extract.pl:
6203           Allow nameless blocks.
6204
6205 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6206
6207         * docs/manual/elements-api.xml:
6208         * docs/manual/helloworld.xml:
6209         * examples/manual/extract.pl:
6210           fix last example.  Add example of adding code blocks that are not
6211           shown in docbook output.
6212
6213 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6214
6215         * docs/manual/dynamic.xml:
6216         * docs/manual/elements-api.xml:
6217         * docs/manual/gnome.xml:
6218         * docs/manual/helloworld2.xml:
6219         * docs/manual/init-api.xml:
6220         * docs/manual/queues.xml:
6221         * docs/manual/threads.xml:
6222         * docs/manual/xml.xml:
6223         * examples/manual/extract.pl:
6224           Make it possible to extract example code from separate blocks.
6225           Should make Ronald happy.
6226
6227 2004-12-15  Wim Taymans  <wim@fluendo.com>
6228
6229         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6230         (remove_from_group), (group_elements_set_visited),
6231         (normalize_group), (gst_opt_scheduler_iterate):
6232         Fix bug where a flag was not updated on a decoupled entry point 
6233         because we were just checking the group element list and decoupled
6234         elements are not in that list..
6235
6236 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6237
6238         * docs/manual/advanced-autoplugging.xml:
6239         * docs/manual/advanced-clocks.xml:
6240         * docs/manual/advanced-dparams.xml:
6241         * docs/manual/advanced-interfaces.xml:
6242         * docs/manual/advanced-metadata.xml:
6243         * docs/manual/advanced-position.xml:
6244         * docs/manual/advanced-schedulers.xml:
6245         * docs/manual/advanced-threads.xml:
6246         * docs/manual/appendix-debugging.xml:
6247         * docs/manual/appendix-gnome.xml:
6248         * docs/manual/appendix-programs.xml:
6249         * docs/manual/appendix-quotes.xml:
6250         * docs/manual/appendix-win32.xml:
6251         * docs/manual/autoplugging.xml:
6252         * docs/manual/basics-bins.xml:
6253         * docs/manual/basics-data.xml:
6254         * docs/manual/basics-elements.xml:
6255         * docs/manual/basics-helloworld.xml:
6256         * docs/manual/basics-init.xml:
6257         * docs/manual/basics-pads.xml:
6258         * docs/manual/basics-plugins.xml:
6259         * docs/manual/bins-api.xml:
6260         * docs/manual/bins.xml:
6261         * docs/manual/buffers-api.xml:
6262         * docs/manual/buffers.xml:
6263         * docs/manual/clocks.xml:
6264         * docs/manual/components.xml:
6265         * docs/manual/cothreads.xml:
6266         * docs/manual/debugging.xml:
6267         * docs/manual/dparams-app.xml:
6268         * docs/manual/dynamic.xml:
6269         * docs/manual/elements-api.xml:
6270         * docs/manual/elements.xml:
6271         * docs/manual/factories.xml:
6272         * docs/manual/gnome.xml:
6273         * docs/manual/goals.xml:
6274         * docs/manual/helloworld.xml:
6275         * docs/manual/helloworld2.xml:
6276         * docs/manual/highlevel-components.xml:
6277         * docs/manual/highlevel-xml.xml:
6278         * docs/manual/init-api.xml:
6279         * docs/manual/intro-motivation.xml:
6280         * docs/manual/intro-preface.xml:
6281         * docs/manual/intro.xml:
6282         * docs/manual/links-api.xml:
6283         * docs/manual/links.xml:
6284         * docs/manual/manual.xml:
6285         * docs/manual/motivation.xml:
6286         * docs/manual/pads-api.xml:
6287         * docs/manual/pads.xml:
6288         * docs/manual/plugins-api.xml:
6289         * docs/manual/plugins.xml:
6290         * docs/manual/programs.xml:
6291         * docs/manual/queues.xml:
6292         * docs/manual/quotes.xml:
6293         * docs/manual/schedulers.xml:
6294         * docs/manual/states-api.xml:
6295         * docs/manual/states.xml:
6296         * docs/manual/threads.xml:
6297         * docs/manual/typedetection.xml:
6298         * docs/manual/win32.xml:
6299         * docs/manual/xml.xml:
6300           First try at rewriting the ADM. Needs lotsamore work, but some
6301           parts might already be somewhat useful.
6302         * docs/pwg/advanced-interfaces.xml:
6303           Remove properties interface, it never actually existed (except for
6304           on my HD...).
6305
6306 2004-12-13  David Schleef  <ds@schleef.org>
6307
6308         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
6309         be NULL (bug #160220).
6310
6311 2004-12-13  David Schleef  <ds@schleef.org>
6312
6313         * configure.ac: remove all mmx stuff, because it's not used.
6314         * docs/random/ds/0.9-suggested-changes: additional notes
6315         * include/Makefile.am: we don't use these anymore
6316         * include/mmx.h: remove
6317         * include/sse.h: remove
6318
6319 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6320
6321         * docs/random/mimetypes:
6322           Add FOURCC code for h264 codec (VSSH)
6323           Add alternate FOURCC codes for h263 related codecs
6324
6325 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
6326
6327         * docs/manual/programs.xml:
6328           Added more gst-launch examples.
6329
6330 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6331
6332         * gst/gstqueue.c: (gst_queue_handle_src_query):
6333           Check for availability again.
6334
6335 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6336
6337         * gst/gstcaps.c: (gst_caps_compare_structures):
6338           Simple caps go first. This has the nice side-effect of fixing an
6339           obscure warning.
6340
6341 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6342
6343         * gst/gstversion.h.in:
6344           Protect header.
6345
6346 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6347
6348         * gst/schedulers/gstoptimalscheduler.c:
6349         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
6350         (gst_opt_scheduler_get_wrapper):
6351           When we're recursing into a chain run, only run the directly
6352           related group, not all queued ones. This will fix a possible
6353           deadlock in chains with more than two groups.
6354
6355 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6356
6357         * autogen.sh:
6358           remove patch if autopoint fails
6359
6360 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6361
6362         * docs/gst/gstreamer-sections.txt:
6363           Document Thomas' addition, fix build, make Luis the sheriff happy.
6364
6365 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
6366
6367         * gst/gstplugin.c:
6368         * gst/gstplugin.h:
6369           add accessor for version field
6370
6371 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6372
6373         submitted by: Luca Ferretti <elle.uca@infinito.it>
6374
6375         * po/LINGUAS:
6376         * po/it.po:
6377           New tranlation added: Italian
6378
6379 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6380
6381         * gst/gstpad.c: (gst_pad_is_negotiated),
6382         (gst_pad_get_negotiated_caps):
6383           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
6384           it doesn't actually check the contents), so be sure to hand it
6385           a RealPad else we'll crash.
6386
6387 2004-12-03  Wim Taymans  <wim@fluendo.com>
6388
6389         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
6390         (gst_queue_link), (gst_queue_handle_src_query):
6391         Reverted to 1.110 until this makes the testsuite and various
6392         apps work.
6393
6394 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
6395
6396         * docs/upload.mak: fix included CVS conflict strings
6397
6398 2004-12-01  William Jon McCann  <mccann@jhu.edu>
6399
6400         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6401
6402         * gst/gstelement.c: (gst_element_error_full):
6403           Use g_error_new_literal because error text may have
6404           percentage signs in it. Fixes #160019.
6405
6406 2004-12-01  Benjamin Otte  <otte@gnome.org>
6407
6408         * gst/elements/gstbufferstore.c:
6409         (gst_buffer_store_add_buffer_func):
6410           don't try to make subbuffers bigger than they can be. (fixes
6411           #159970)
6412
6413 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6414
6415         * docs/gst/gstreamer-sections.txt:
6416         * docs/gst/tmpl/gstvalue.sgml:
6417           Add new function to docs to fix build.
6418
6419 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6420
6421         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
6422         * gst/gstpad.c: (_gst_pad_default_fixate_value),
6423         (_gst_pad_default_fixate_foreach):
6424         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
6425         * gst/gstvalue.h:
6426           Deprecate _type_is_fixed, use _value_is_fixed instead, since
6427           in some cases (arrays), the fixedness depends on the content.
6428         * gst/gstqueue.c: (gst_queue_handle_src_query):
6429           Check for availability before doing something.
6430
6431 2004-11-29  Wim Taymans  <wim@fluendo.com>
6432
6433         * testsuite/threads/Makefile.am:
6434         * testsuite/threads/signals.c: (gst_test_get_type),
6435         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
6436         (gst_test_set_property), (gst_test_get_property),
6437         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
6438         (gst_test_do_prop), (run_thread), (main):
6439         Added a bunch of testcases that show threadsafety bugs in glib.
6440
6441 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
6442
6443         * docs/manual/programs.xml:
6444           Added a first batch of gst-launch examples, as provided by Ronald
6445           and others from the devel-mlist
6446
6447 2004-11-28  Benjamin Otte  <otte@gnome.org>
6448
6449         * gst/gstelement.c: (gst_element_negotiate_pads):
6450           simplify
6451         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
6452         (gst_value_serialize_string), (gst_value_deserialize_string):
6453           add unwrapping of previously wrapped strings. Fix bug in wrapping
6454           while at it.
6455         * testsuite/caps/value_serialize.c: (test1),
6456         (test_string_serialization), (test_string_deserialization), (main):
6457           add tests for string (de)serialization
6458
6459 2004-11-26  Wim Taymans  <wim@fluendo.com>
6460
6461         * testsuite/threads/159566.c: (object_deep_notify), (main):
6462         * testsuite/threads/Makefile.am:
6463         Added testsuite to show bug #159566
6464
6465 2004-11-25  Wim Taymans  <wim@fluendo.com>
6466
6467         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
6468         (gst_thread_child_state_change), (gst_thread_main_loop):
6469         Ref the thread object in the GThread mainloop. Break out of the
6470         thread mainloop if it holds the last ref. This properly exits
6471         the threads when disposing the thread from its own context. It
6472         also avoids possible deadlocks in the dispose function.
6473
6474 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
6475
6476         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
6477         it is necessary to wait.
6478
6479 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6480
6481         * docs/pwg/building-boiler.xml:
6482           Make description somewhat clearer.
6483
6484 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6485
6486         * docs/upload.mak:
6487           Apparently docs changed location on FDO's server.
6488
6489 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6490
6491         * docs/pwg/appendix-checklist.xml:
6492           Add some random notes on things to check when writing an element.
6493           This list can be extended as people see fit.
6494
6495 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
6496
6497         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
6498         (gst_queue_link_src): Allow for renegotiating the caps of the sink
6499         pad. The queue will now wait until it is empty and forward the new
6500         caps to the source.
6501         * gst/gstbin.c (gst_bin_set_element_sched)
6502         (gst_bin_unset_element_sched): Make sure that all elements and
6503         links are registered and unregistered with the scheduler exactly
6504         once. This elaborates on a fix by Benjamin Otte, but
6505         guarantees that decoupled elements are also registered.
6506
6507 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
6508
6509         * docs/manual/quotes.xml:
6510           add a quote
6511         * configure.ac:
6512         * gst/gst.c:
6513         * gst/gstinfo.c:
6514           add LIBDIR and move init message higher up so it's at the start
6515
6516 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
6517
6518         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
6519         * gstreamer.spec.in: add fair
6520
6521 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6522
6523         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6524         * gst/elements/gstidentity.c: (gst_identity_class_init):
6525           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
6526           <teuf@gnome.org> (#157263).
6527         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
6528         (gst_type_find_handle_src_query):
6529           Subtract size of internally stored data from position queries.
6530
6531 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
6532
6533         * gst/schedulers/fairscheduler.c:
6534         * gst/schedulers/faircothreads.c:
6535         * gst/schedulers/faircothreads.h:
6536         New cothread based scheduler: Fair scheduler.
6537         * gst/schedulers/gthread-cothreads.h: 
6538         Add the standard #if around the whole file.
6539         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
6540         compilation of the functions defined in this file. This is
6541         necessary to be able to use this file as a normal header.
6542         * gst/schedulers/Makefile.am: Add compiling support for fair
6543         scheduler.
6544         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
6545         scheduler cothreads layer from documentation generation.
6546
6547 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6548
6549         * gst/autoplug/gstspideridentity.c:
6550         (gst_spider_identity_sink_loop_type_finding):
6551           Don't crash if that function is not implemented.
6552
6553 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6554
6555         * docs/pwg/advanced-types.xml:
6556           Another typo.
6557
6558 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6559
6560         * docs/pwg/intro-preface.xml:
6561           Hm, ok, so the brackets weren't really useful...
6562         * docs/pwg/other-ntoone.xml:
6563           Fix embarassing typo.
6564
6565 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6566
6567         * docs/pwg/intro-preface.xml:
6568           Rewrite preface.
6569
6570 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6571
6572         * docs/pwg/advanced-scheduling.xml:
6573         * docs/pwg/advanced-tagging.xml:
6574         * docs/pwg/advanced-types.xml:
6575         * docs/pwg/building-boiler.xml:
6576         * docs/pwg/building-chainfn.xml:
6577         * docs/pwg/building-signals.xml:
6578         * docs/pwg/building-state.xml:
6579         * docs/pwg/building-testapp.xml:
6580         * docs/pwg/intro-basics.xml:
6581         * docs/pwg/other-manager.xml:
6582         * docs/pwg/other-source.xml:
6583           Typo fixes.
6584         * docs/pwg/other-manager.xml:
6585           Add some first content. No example code yet.
6586         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
6587           Remove double newlines.
6588
6589 2004-11-04  Wim Taymans  <wim@fluendo.com>
6590
6591         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6592         (remove_from_group), (normalize_group), (group_migrate_connected),
6593         (gst_opt_scheduler_iterate):
6594         * testsuite/schedulers/.cvsignore:
6595         * testsuite/schedulers/Makefile.am:
6596         * testsuite/schedulers/queue_link.c: (main):
6597         Added testcase for scheduler segfault.
6598         Fix scheduler segfault when removing a decoupled
6599         entry point as the last element from a group.
6600
6601 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6602
6603         * gst/gstmarshal.list: add missing marshaller, fixes build
6604
6605 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6606
6607         * docs/random/signal: added notes about using BOXED for GstBuffer
6608         signal marshallers, not POINTER
6609
6610 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6611
6612         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6613         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
6614         POINTER=>BOXED changes to marshal GstBuffers
6615
6616 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6617
6618         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
6619         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
6620
6621 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
6622
6623         * docs/gst/gstreamer-sections.txt:
6624         * docs/gst/tmpl/gstcaps.sgml:
6625         * docs/gst/tmpl/gsterror.sgml:
6626         * docs/gst/tmpl/gstinfo.sgml:
6627         * docs/gst/tmpl/gstmacros.sgml:
6628         * docs/gst/tmpl/gstutils.sgml:
6629         * docs/random/ensonic/interfaces.txt:
6630         * gst/gstinfo.h:
6631           added some more docs, removed two obsolete defines
6632
6633 2004-11-02  Kjartan Maraas <as at gnome.org>
6634
6635         reviewed by: Wim Taymans, Ronald Bultje.
6636
6637         * gst/cothreads.c: (cothread_create):
6638         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
6639         (gst_bin_child_state_change_func):
6640         * gst/gstbuffer.c: (gst_buffer_span):
6641         * gst/gstelement.c: (gst_element_get_index),
6642         (gst_element_get_event_masks), (gst_element_get_query_types),
6643         (gst_element_get_formats):
6644         * gst/gsterror.c: (_gst_core_errors_init),
6645         (_gst_library_errors_init), (_gst_resource_errors_init),
6646         (_gst_stream_errors_init):
6647         * gst/gstobject.c: (gst_object_default_deep_notify):
6648         * gst/gstpad.c: (gst_pad_get_event_masks),
6649         (gst_pad_get_internal_links_default):
6650         * gst/gstplugin.c: (gst_plugin_register_func),
6651         (gst_plugin_get_module):
6652         * gst/gststructure.c: (gst_structure_get_string),
6653         (gst_structure_get_abbrs), (gst_structure_from_abbr),
6654         (gst_structure_to_abbr):
6655         * gst/gstutils.c: (gst_print_element_args):
6656         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6657         (setup_group_scheduler), (gst_opt_scheduler_iterate):
6658         Aplied part of patch #157127: Cleanup of issues reported by 
6659         sparse.
6660         Also do not try to use cothreads when there is no cothread
6661         context yet.
6662
6663 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
6664
6665         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6666         (gst_opt_scheduler_iterate):
6667         Applied patch #154061. Running a pipeline in which an element 
6668         calls GST_ELEMENT_ERROR in the chain function, the opt 
6669         scheduler doesn't unref the chain so it never gets freed.
6670
6671 2004-11-02  Wim Taymans  <wim@fluendo.com>
6672
6673         * gst/gststructure.c: (gst_structure_get_abbrs),
6674         (gst_structure_from_abbr), (gst_structure_to_abbr):
6675         Remove that ugly if-then thing in the code that converts
6676         between strings and types.
6677
6678 2004-11-02  Wim Taymans  <wim@fluendo.com>
6679
6680         * gst/gstscheduler.c: (gst_scheduler_add_element),
6681         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
6682         Aplied clock distribution patch, this should fix bug
6683         #148787.
6684
6685 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
6686
6687         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
6688
6689         * po/LINGUAS:
6690         * po/nb.po:
6691           Added Norwegian Bokmaal translation
6692
6693 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6694
6695         * tools/gst-inspect.c: (print_signal_info):
6696           print signal arguments as pointers if they are
6697
6698 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
6699
6700         * docs/pwg/building-boiler.xml:
6701           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
6702
6703 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6704
6705         * gst/parse/parse.l:
6706         * testsuite/parse/parse1.c: (main):
6707         Since parse can do 'element name=a:b' make 'a:b.' work as
6708         well. 
6709         Added testcase to verify fix.
6710
6711 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6712
6713         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
6714         Use the realpad when printing the direction.
6715         Add extra \n when printing extensions of typefind factories.
6716
6717 2004-10-13  David Schleef  <ds@schleef.org>
6718
6719         * examples/manual/Makefile.am: $< isn't portable in Makefile
6720         rules.
6721
6722 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
6723
6724         * docs/gst/tmpl/gstobject.sgml:
6725         * docs/gst/tmpl/gstplugin.sgml:
6726         * docs/gst/tmpl/gstpluginfeature.sgml:
6727         * docs/gst/tmpl/gstregistry.sgml:
6728         * docs/gst/tmpl/gstversion.sgml:
6729         * gst/gstbin.c:
6730           more api documentation
6731         * gst/gstplugin.c: (gst_plugin_register_func),
6732         (gst_plugin_check_file), (gst_plugin_load_file):
6733           better error signaling and logging
6734
6735 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6736
6737         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
6738           Subtract current queue contents from position queries.
6739
6740 2004-10-11  Johan Dahlin  <johan@gnome.org>
6741
6742         * gst/gsturi.c (gst_uri_get_location): unescape string
6743         (gst_uri_construct): escape string.
6744
6745 2004-10-11  Benjamin Otte  <otte@gnome.org>
6746
6747         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
6748         (gst_pad_try_set_caps_nonfixed):
6749           allow renegotiation of unconnected pads (as inside spider). Simply
6750           return OK if unconnected - mimic try_set_caps there.
6751
6752 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6753
6754         * gst/gstbin.c: (gst_bin_sync_children_state):
6755           Add missing break.
6756
6757 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6758
6759         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
6760         Set element to EOS before sending EOS event
6761
6762 2004-10-08  Wim Taymans  <wim at fluendo dot com>
6763
6764         * gst/elements/gsttypefindelement.c:
6765         (gst_type_find_element_handle_event):
6766         Handle EOS events when doing the transition from
6767         typefind to data passing. This should fix the
6768         infinite loops in short files.
6769
6770 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6771
6772         * gst/gstthread.c: (gst_thread_change_state),
6773         (gst_thread_child_state_change):
6774         Make sure no iteration happens while performing
6775         the state change as it could mess up the internal
6776         consistency of the thread state.
6777
6778 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6779
6780         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
6781         (gst_thread_change_state), (gst_thread_child_state_change):
6782         Do not try to grab the iterate lock in the state change method
6783         when we are in the same thread as the iterate or else we
6784         could deadlock. Some other cleanups.
6785
6786 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6787
6788         * configure.ac:
6789           bump nano to cvs
6790
6791 === release 0.8.7 ===
6792
6793 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6794
6795         * configure.ac:
6796         * NEWS:
6797         * RELEASE:
6798         * configure.ac:
6799           releasing 0.8.7, "A Cruise"
6800
6801 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6802
6803         * docs/random/mimetypes:
6804         Add an entry for Sony ATRAC3 audio format with mime-type
6805         used by rmdemux et riff-read
6806
6807 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6808
6809         * gst/elements/gsttypefindelement.c: (stop_typefinding):
6810         Push the buffer store instead of clearing it in case that
6811         the stream is not seekable.
6812
6813 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6814
6815         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
6816         (gst_thread_main_loop):
6817         Lock the iteration and the state change so that automatic
6818         negotiation and fixation does not happen at the same time
6819         as the in stream negotiation.
6820
6821 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6822
6823         * configure.ac:
6824           bump nano to cvs
6825
6826 === release 0.8.6 ===
6827
6828 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6829
6830         * configure.ac:
6831         * NEWS:
6832         * RELEASE:
6833         * configure.ac:
6834           releasing 0.8.6, "Narc"
6835
6836 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6837
6838         * configure.ac:
6839           prerel bump
6840
6841 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6842
6843         patch by: Steve Lhomme
6844
6845         * gst/elements/gstfakesrc.c:
6846         * gst/elements/gstidentity.c:
6847         * gst/gstthread.c:
6848           Fix for #153881
6849
6850 2004-10-01  Wim Taymans  <wim at fluendo dot com>
6851
6852         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
6853         Fix threadsafety of the crc checking function.
6854
6855 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6856
6857         patch by: Ronald Bultje
6858
6859         * gst/elements/gsttypefindelement.c: (stop_typefinding),
6860         (gst_type_find_element_handle_event),
6861         (gst_type_find_element_chain):
6862         * gst/elements/gsttypefindelement.h:
6863          #153657.
6864          Filter out discont event from seekable sources when typefind
6865          asks them to seek.  Fixes typefind with demuxers for
6866          avi, asf and matroska.
6867
6868 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6869
6870         * docs/gst/gstreamer-sections.txt:
6871         * gst/gstcaps.c:
6872         * gst/gstcaps.h:
6873         * gst/gstpad.c:
6874           Revert preferred caps: (#147789)
6875
6876 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
6877
6878         * win32/dirent.c:
6879           fix a memory leak
6880
6881 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6882
6883         * configure.ac:
6884           bump for prerelease
6885
6886 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6887
6888         * docs/Makefile.am:
6889         * docs/manual/elements-api.xml:
6890           restructure so that common stuff is shown first
6891         * docs/manual/init-api.xml:
6892           convert to examples
6893         * docs/manual/manual.xml:
6894         * docs/manuals.mak:
6895         * docs/url.entities:
6896           link to API on the website, possibly override later in build
6897         * examples/manual/.cvsignore:
6898           ignore more
6899         * examples/manual/Makefile.am:
6900           add more examples
6901         * examples/manual/extract.pl:
6902           error out on failure
6903
6904 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6905
6906         * docs/gst/tmpl/gstthread.sgml:
6907         * docs/manual/init-api.xml:
6908         * examples/manual/Makefile.am:
6909           convert two code bits to examples
6910
6911 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6912
6913         * gst/gstelement.c: (gst_element_change_state):
6914           Well, actually, I was about to remove this insane assert when
6915           I noticed Wim already did that. A warning is nice so we can
6916           fix actual ugs (using --g-fatal-warnings and backtraces), so
6917           I added that instead.
6918
6919 2004-09-06  Wim Taymans  <wim@fluendo.com>
6920
6921         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
6922         (gst_element_threadsafe_properties_post_run),
6923         (gst_element_set_state), (gst_element_change_state):
6924         Added extra refcounting around various places. 
6925
6926 2004-09-06  Wim Taymans  <wim@fluendo.com>
6927
6928         * gst/gstpad.c: (gst_pad_link_call_link_functions):
6929         Fix debug info.
6930
6931 2004-09-06  Wim Taymans  <wim@fluendo.com>
6932
6933         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6934         (remove_from_group):
6935         Some more debug info.
6936
6937 2004-09-03  Wim Taymans  <wim@fluendo.com>
6938
6939         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
6940         (gst_fakesrc_init), (gst_fakesrc_set_clock),
6941         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
6942         (gst_fakesrc_get), (gst_fakesrc_change_state):
6943         * gst/elements/gstfakesrc.h:
6944         * gst/elements/gstidentity.c: (gst_identity_class_init),
6945         (gst_identity_init), (gst_identity_chain),
6946         (gst_identity_set_property), (gst_identity_get_property),
6947         (gst_identity_change_state):
6948         * gst/elements/gstidentity.h:
6949         Added datarate properties to limit the datarate.
6950
6951 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6952
6953         * gst/autoplug/gstspider.c: (plugin_init):
6954           don't set a rank. We don't want to autoplug by inserting spiders.
6955
6956 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6957
6958         * gst/autoplug/gstspider.c: (gst_spider_class_init),
6959         (gst_spider_identity_plug):
6960           add a template for spider's sink
6961         * gst/gst.c: (gst_register_core_elements):
6962           queue's rank should be NULL, we don't want spider to add it.
6963
6964 2004-08-18  David Schleef  <ds@schleef.org>
6965
6966         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
6967         * docs/libs/Makefile.am: same
6968         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
6969         * docs/random/ds/0.9-planning: random additions
6970         * docs/random/ds/0.9-suggested-changes: same
6971         * gst/gstxml.h: remove vestigal GstXMLNs definition
6972
6973         Preferred caps: (#147789)
6974         * docs/gst/gstreamer-sections.txt: Add symbols
6975         * docs/gst/tmpl/gstcaps.sgml: Add symbols
6976         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
6977         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
6978         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
6979         (gst_caps_get_preferred), (gst_caps_set_preferred),
6980         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
6981         (gst_caps_use_preferred): Handle caps preferences
6982         * gst/gstcaps.h: Add caps preferences
6983         * gst/gstpad.c: (gst_pad_link_get_preferred),
6984         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
6985         (gst_pad_renegotiate), (gst_pad_guess_preferred),
6986         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
6987         negotiation.
6988
6989 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6990
6991         * gst/autoplug/gstspideridentity.c:
6992         (gst_spider_identity_request_new_pad):
6993         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
6994         (gst_aggregator_init):
6995         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
6996         (gst_fakesink_init):
6997         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
6998         (gst_fakesrc_init):
6999         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
7000         (gst_fdsink_init):
7001         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
7002         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
7003         (gst_filesink_init):
7004         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
7005         (gst_filesrc_init):
7006         * gst/elements/gstidentity.c: (gst_identity_base_init),
7007         (gst_identity_init):
7008         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
7009         (gst_multifilesrc_init):
7010         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
7011         (gst_pipefilter_init):
7012         * gst/elements/gststatistics.c: (gst_statistics_base_init),
7013         (gst_statistics_init):
7014         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
7015         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
7016           s/gst_pad_new/&_from_template/
7017           register pad templates in the base_init function
7018           add static pad template definitions
7019
7020 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7021
7022         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
7023         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
7024         * testsuite/refcounting/pad.c: (main):
7025         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
7026           s/gst_pad_new/&_from_template/
7027           prepare deprecation of gst_pad_new
7028
7029 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
7030
7031         patch by: Luca Ognibene <skaboy81@virgilio.it>
7032
7033         * gst/gstcaps.c:
7034         * gst/gstelement.c:
7035         * gst/gstpad.c:
7036         * gst/gstxml.c:
7037           fix memleaks.  Fixes #150001
7038
7039 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7040
7041         * docs/random/ds/0.9-suggested-changes:
7042           add notes - mostly about pad templates
7043
7044 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
7045
7046         * win32/GStreamer.vcproj:
7047           temporary locale files are .gmo not .mo
7048
7049 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7050
7051         * configure.ac: bump nano to cvs
7052
7053 === release 0.8.5 ===
7054
7055 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7056
7057         * configure.ac:
7058           releasing 0.8.5, "Stuttgart"
7059         * NEWS:
7060         * RELEASE:
7061         * configure.ac:
7062         * docs/random/release:
7063           updates for release
7064
7065 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7066
7067         patch by: Wim Taymans (wim@fluendo.com)
7068
7069         * gst/gstbuffer.c:
7070         * gst/gstindex.h:
7071         * libs/gst/dataprotocol/dataprotocol.c:
7072           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
7073
7074 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7075
7076         * Makefile.am:
7077         * win32/MANIFEST:
7078           add win32 dir to the build.  Fixes #149981.
7079
7080 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7081
7082         * configure.ac:
7083           bump libtool versioning
7084         * gst/gststructure.c:
7085           mark function as static
7086         * po/af.po:
7087         * po/az.po:
7088         * po/ca.po:
7089         * po/cs.po:
7090         * po/en_GB.po:
7091         * po/fr.po:
7092         * po/nl.po:
7093         * po/sq.po:
7094         * po/sr.po:
7095         * po/sv.po:
7096         * po/tr.po:
7097         * po/uk.po:
7098           translations update
7099         * win32/README.txt:
7100           trademark protection
7101
7102 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7103
7104         * configure.ac:
7105           fix GST_ORIGIN
7106           set GST_PACKAGE to source, and distinguish between release and other
7107         * tools/gst-inspect.c:
7108           print out plugin an element factory is part of so we see this info
7109
7110 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7111
7112         * docs/gst/gstreamer-sections.txt:
7113         * docs/gst/tmpl/gstbuffer.sgml:
7114         * docs/gst/tmpl/gstschedulerfactory.sgml:
7115           reorder docs a little, make GstBuffer's more sensible.
7116         * gst/gstbuffer.h:
7117           API: added GST_BUFFER_FLAG_DELTA_UNIT
7118         * gst/gstscheduler.c:
7119           comment API addition
7120
7121 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7122
7123         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
7124           work with non-regular files that can be mmapped (like /dev/zero)
7125         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
7126           get rid of typefinds that require a seek when we can't seek instead
7127           of trying them over and over again
7128         * tools/gst-launch.c: (idle_func), (error_cb), (main):
7129           return non-zero failure value when the pipeline was interrupted or
7130           an error occurred
7131
7132 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
7133
7134         * win32/config.h:
7135         * win32/GStreamer.vcproj:
7136           compile and install the locales
7137
7138 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
7139
7140         * gst/gstvalue.c:
7141           fix a possible memory leak under Windows
7142
7143 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
7144
7145         * win32/GStreamer.vcproj:
7146           fix a memory leak that occured under Windows
7147         * win32/gstreamer.def:
7148           add gst_scheduler_register
7149
7150 2004-08-11  Benjamin Otte  <otte@gnome.org>
7151
7152         * docs/gst/gstreamer-sections.txt:
7153         * gst/gstscheduler.c: (gst_scheduler_register):
7154         * gst/gstscheduler.h:
7155           API:
7156           add gst_scheduler_register shortcut similar to gst_element_register
7157         * gst/schedulers/entryscheduler.c: (plugin_init):
7158         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
7159         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
7160           use it
7161
7162 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
7163
7164         * gst/gstvalue.h:
7165           fix a memory leak that occured under Windows
7166
7167 2004-08-10  Colin Walters  <walters@redhat.com>
7168
7169         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
7170         Don't use O_EXCL to open temporary registry.  It will prevent
7171         registry creation if a temporary one already exists, which
7172         is unnecessary.
7173
7174 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7175
7176         * docs/gst/gstreamer-sections.txt:
7177         * docs/gst/tmpl/gstvalue.sgml:
7178           remove some valuable stuff from the documentation due to the use of GST_EXPORT
7179
7180 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7181
7182         * win32/gstbytestream.vcproj:
7183         * win32/gstelements.vcproj:
7184         * win32/gstgetbits.vcproj:
7185         * win32/gst-inspect.vcproj:
7186         * win32/gst-launch.vcproj:
7187         * win32/gstoptimalscheduler.vcproj:
7188         * win32/GStreamer.vcproj:
7189         * win32/gst-register.vcproj:
7190         * win32/gstspider.vcproj:
7191           update the include and lib dirs to fit standard libraries as
7192           described in the Win32 manual
7193
7194 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7195
7196         * win32/config.h:
7197         * win32/gstversion.h:
7198           enable NLS again, push the version number for the coming 0.8.5 release
7199
7200 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7201
7202         * gst/gstvalue.h:
7203           export gst_type_XXX for windows DLLs
7204
7205 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7206
7207         * docs/faq/gst-uninstalled:
7208           fix PKG_CONFIG_PATH and PYTHONPATH
7209         * gst/schedulers/Makefile.am:
7210           cleanup
7211         * libs/gst/bytestream/bytestream.c:
7212           remove newline
7213         * po/LINGUAS:
7214         * po/sq.po:
7215           adding Albanian translation (Laurent Dhima)
7216         * po/cs.po:
7217           updated
7218
7219 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7220
7221         * po/ca.po:
7222         * po/sv.po:
7223           updated translations
7224
7225 2004-08-04  Benjamin Otte  <otte@gnome.org>
7226
7227         * tests/mass_elements.c: (main):
7228           allow specifying src and sink element explicitly, so I can test
7229           videotestsrc instead of fakesrc
7230
7231 2004-08-04  Benjamin Otte  <otte@gnome.org>
7232
7233         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
7234         (gst_structure_id_empty_new), (gst_structure_empty_new),
7235         (gst_structure_copy):
7236           add gst_structure_id_empty_new_with_size to allow preallocating
7237           value array sizes. Use this in gst_structure_copy to get rid of
7238           reallocs.
7239           don't do quark=>string=>quark when copying structures
7240
7241 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
7242
7243         * docs/manual/win32.xml:
7244         * win32/README.txt:
7245           update documentation with the clean version of dependencies
7246
7247 2004-08-03  Benjamin Otte  <otte@gnome.org>
7248
7249         * gst/schedulers/entryscheduler.c:
7250         (gst_entry_scheduler_remove_element):
7251           fix for GST_DISABLE_DEBUG
7252         * tools/gst-launch.c: (print_tag):
7253           fixes for G_DISABLE_ASSERT
7254
7255 2004-08-03  Benjamin Otte  <otte@gnome.org>
7256
7257         * gst/gst.c: (gst_register_core_elements):
7258           fix for G_DISABLE_ASSERT
7259         * gst/gstinfo.c: (__gst_in_valgrind):
7260           add for GST_DISABLE_DEBUG
7261
7262 2004-08-03  Benjamin Otte  <otte@gnome.org>
7263
7264         * gst/parse/parse.l:
7265           fix for G_DISABLE_ASSERT
7266
7267 2004-08-03  Wim Taymans  <wim@fluendo.com>
7268
7269         * gst/gstbin.c: (gst_bin_get_type),
7270         (gst_bin_child_state_change_func):
7271         * gst/gstthread.c: (gst_thread_change_state):
7272         Backported some debug logging from a reverted patch
7273         Don't try to destroy the thread twice. Added some more
7274         debugging in GstThread. Unlock and signal even if we
7275         are in the thread context.
7276
7277 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7278
7279         * po/uk.po:
7280           updated translation
7281
7282 2004-07-30  David Schleef  <ds@schleef.org>
7283
7284         * gst/gstatomic_impl.h: Enable atomic code for x86_64
7285
7286 2004-07-29  David Schleef  <ds@schleef.org>
7287
7288         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
7289         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
7290
7291 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
7292
7293         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7294         (gst_bin_add_func), (gst_bin_remove_func),
7295         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
7296         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
7297         (gst_bin_change_state_norecurse), (gst_bin_dispose),
7298         (gst_bin_sync_children_state):
7299         * gst/gstbin.h:
7300         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
7301         (gst_thread_change_state):
7302         * testsuite/states/Makefile.am:
7303           revert state change patches as agreed so we can rework them
7304           gradually
7305
7306 2004-07-29  Benjamin Otte  <otte@gnome.org>
7307
7308         * libs/gst/control/Makefile.am:
7309           link to libgstreamer (fixes Debian bug 262019, see
7310           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
7311
7312 2004-07-29  Wim Taymans  <wim@fluendo.com>
7313
7314         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
7315         (check_from_fraction_convert), (transform_test), (main):
7316         Make the test less pedantic about float roundoff errors.
7317
7318 2004-07-29  Benjamin Otte  <otte@gnome.org>
7319
7320         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
7321         (gst_filesrc_srcpad_event):
7322           make seek events to before start/after end of file not fail, but
7323           seek to start/end instead
7324         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
7325           add more output
7326
7327 2004-07-29  Benjamin Otte  <otte@gnome.org>
7328
7329         * gst/gstpad.c: (gst_pad_set_explicit_caps):
7330           check that caps are fixed
7331         * gst/gstpad.c: (gst_pad_template_new):
7332           don't try to simplify caps, costs too much time on gst_init
7333         * gst/gstplugin.c: (gst_plugin_add_feature):
7334           G_ERROR if features are added twice
7335         * gst/gsttypefind.c: (gst_type_find_register):
7336         * gst/gstelementfactory.c: (gst_element_register):
7337           don't add features twice
7338         * docs/random/ds/0.9-suggested-changes:
7339           add note about possible gst_init optimization
7340
7341 2004-07-28  David Schleef  <ds@schleef.org>
7342
7343         * testsuite/elements/Makefile.am:
7344         * testsuite/elements/struct_i386.h:
7345         * testsuite/elements/struct_size.c: (main):  A little test
7346         to keep distcheck from working if someone changes a structure
7347         size accidentally.
7348
7349 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7350
7351         * docs/libs/Makefile.am:
7352         * docs/libs/gstreamer-libs-docs.sgml:
7353         * docs/libs/gstreamer-libs-sections.txt:
7354         * docs/libs/tmpl/gstbytestream.sgml:
7355         * docs/libs/tmpl/gstcontrol.sgml:
7356         * docs/libs/tmpl/gstdataprotocol.sgml:
7357         * docs/libs/tmpl/gstgetbits.sgml:
7358         * libs/gst/bytestream/Makefile.am:
7359         * libs/gst/bytestream/bytestream.c:
7360         * libs/gst/bytestream/bytestream.h:
7361         * libs/gst/control/Makefile.am:
7362         * libs/gst/dataprotocol/Makefile.am:
7363         * libs/gst/getbits/Makefile.am:
7364         * libs/gst/getbits/getbits.h:
7365           various doc and style fixes, adding bytestream to libs docs.
7366
7367 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7368
7369         * docs/gst/gstreamer-docs.sgml:
7370         * docs/libs/Makefile.am:
7371         * docs/libs/gstreamer-libs-docs.sgml:
7372         * docs/libs/gstreamer-libs-sections.txt:
7373         * libs/gst/control/dparam.c:
7374           more doc fixes.  gst-libs docs now build the same way as gst.
7375
7376 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7377
7378         * configure.ac:
7379         * testsuite/Makefile.am:
7380         * testsuite/bins/Makefile.am:
7381         * testsuite/caps/Makefile.am:
7382         * testsuite/cleanup/Makefile.am:
7383         * testsuite/clock/Makefile.am:
7384         * testsuite/debug/Makefile.am:
7385         * testsuite/dlopen/Makefile.am:
7386         * testsuite/dynparams/Makefile.am:
7387         * testsuite/elements/.cvsignore:
7388         * testsuite/elements/Makefile.am:
7389         * testsuite/enumcaps/Makefile.am:
7390         * testsuite/enumcaps/enumcaps.c:
7391         * testsuite/ghostpads/Makefile.am:
7392         * testsuite/indexers/Makefile.am:
7393         * testsuite/negotiation/Makefile.am:
7394         * testsuite/parse/Makefile.am:
7395         * testsuite/plugin/Makefile.am:
7396         * testsuite/refcounting/Makefile.am:
7397         * testsuite/schedulers/.cvsignore:
7398         * testsuite/states/Makefile.am:
7399         * testsuite/tags/Makefile.am:
7400         * testsuite/threads/Makefile.am:
7401           fold enumcaps into caps dir
7402           clean up Makefile.am's for testsuite
7403
7404 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7405
7406         * docs/gst/Makefile.am:
7407         * docs/libs/Makefile.am:
7408           clean up docs build.  Fixes needless rebuilding of template files.
7409
7410 2004-07-28  Wim Taymans  <wim@fluendo.com>
7411
7412         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
7413         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
7414         Make sure that a bin state change tries to keep the children
7415         in sync. 
7416         Added debug logging to the thread.
7417
7418 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
7419
7420         * win32/GStreamer.vcproj:
7421         * win32/gstreamer.def:
7422           more exports for the plugins
7423
7424 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
7425
7426         * win32/gstgetbits.vcproj:
7427         * win32/gstgetbits.def:
7428         * win32/msvc71.sln:
7429           add support for the getbits plugin
7430
7431 2004-07-27  Wim Taymans  <wim@fluendo.com>
7432
7433         * gst/gstvalue.c: (gst_value_transform_double_fraction),
7434         (gst_value_transform_fraction_double), (_gst_value_initialize):
7435         * testsuite/caps/Makefile.am:
7436         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
7437         (check_from_fraction_convert), (transform_test), (main):
7438         Added transform functions between double and fraction.
7439         Added testcase to verify transforms
7440
7441 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7442
7443         * win32/GStreamer.vcproj:
7444           rename GStreamer-0.8.lib to libgstreamer.lib
7445
7446 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7447
7448         * win32/gstelements.vcproj:
7449         * win32/gstoptimalscheduler.vcproj:
7450           fixes for the Release build
7451
7452 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7453
7454         * win32/config.h:
7455           update the version number
7456
7457 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7458
7459         * win32/GStreamer.vcproj:
7460           add gstinterface to the build
7461
7462 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7463
7464         * win32/gstreamer.def:
7465           add many definitions needed by plugins,
7466           GST_CAT_DEFAULT only available in the Debug build ?
7467
7468 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7469
7470         * gst/gstelement.c: (gst_element_set_eos_recursive):
7471           various whitespace fixes.
7472           doc fix, fixes #148497
7473
7474 2004-07-25  Benjamin Otte  <otte@gnome.org>
7475
7476         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
7477           don't delay links on the sink elements, it causes unnegotiated
7478           links.
7479         * gst/elements/gsttypefindelement.c:
7480         (gst_type_find_element_base_init):
7481           add our padtemplates, we indeed do have some.
7482         * gst/elements/gsttypefindelement.c:
7483         (gst_type_find_element_handle_event),
7484         (gst_type_find_element_chain):
7485           don't push data when typefinding failed.
7486         * gst/gstpad.c: (gst_pad_link_fixate):
7487           check that no fixate function returns empty caps.
7488         * gst/gstpad.c: (gst_pad_push):
7489           check that the link is negotiated before data gets pushed.
7490         * tools/gst-register.c: (main):
7491           don't assert (fixes #148283)
7492
7493 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7494
7495         * docs/gst/gstreamer-sections.txt:
7496         * docs/gst/tmpl/gstconfig.sgml:
7497           add GST_PLUGIN_EXPORT definition
7498
7499 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7500
7501         * gst/gstplugin.h:
7502         * gst/gstconfig.h.in:
7503         * win32/gstconfig.h:
7504         * win32/gstelements.def:
7505         * win32/gstelements.vcproj:
7506         * win32/gstoptimalscheduler.def:
7507         * win32/gstoptimalscheduler.vcproj:
7508         * win32/gstspider.def:
7509         * win32/gstspider.vcproj:
7510           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
7511
7512 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7513
7514         * docs/gst/gstreamer-sections.txt:
7515           remove GST_CAT_DEFAULT because the type has changed
7516
7517 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7518
7519         * win32/gstbytestream.vcproj:
7520         * win32/gstelements.vcproj:
7521         * win32/gst-inspect.vcproj:
7522         * win32/gst-launch.vcproj:
7523         * win32/gstoptimalscheduler.vcproj:
7524         * win32/GStreamer.vcproj:
7525         * win32/gst-register.vcproj:
7526         * win32/gstspider.vcproj:
7527         * win32/msvc71.sln:
7528           Copy the files where needed after building, The testsuite will be
7529           built separately
7530
7531 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7532
7533         * win32/config.h:
7534         * win32/README.txt:
7535         * docs/manual/win32.xml:
7536         Fixed the plugin and GStreamer location
7537
7538 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7539
7540         * win32/gstreamer.def:
7541         More exports for the plugins
7542
7543 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7544
7545         * gst/gstinfo.h:
7546         Marc was right, we need to export literally GST_CAT_DEFAULT
7547
7548 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7549
7550         * win32/config.h:
7551         NLS crashes in gettext, disabled until this is solved
7552
7553 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7554
7555         * win32/gst-inspect.vcproj:
7556         * win32/gst-launch.vcproj:
7557         Should use NLS when available
7558
7559 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7560
7561         * gst/registries/gstxmlregistry.c:
7562         removing the file doesn't seem to be a good idea on Linux
7563
7564 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7565
7566         * gst/registries/gstxmlregistry.c:
7567         Remove the registry before renaming the tempfile (needed for Windows)
7568
7569 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7570
7571         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
7572         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
7573         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
7574         * gst/elements/gstmultifilesrc.h:
7575         Added newmedia property so it generates newmedia events between each
7576         file when property is set, as well as fixed eos handling
7577
7578 2004-07-22  David Schleef  <ds@schleef.org>
7579
7580         * gst/gststructure.c: (gst_structure_id_empty_new),
7581         (gst_structure_empty_new):  Set type field correctly.
7582         * gst/gststructure.h: Check type field correctly.
7583         * testsuite/caps/Makefile.am:
7584         * testsuite/caps/structure.c: (test1), (main): Add a very small
7585         test for structures.
7586
7587 2004-07-22  David Schleef  <ds@schleef.org>
7588
7589         * docs/random/ds/0.9-suggested-changes: more comments
7590         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
7591
7592 2004-07-22  Benjamin Otte  <otte@gnome.org>
7593
7594         * gst/gstelementfactory.c: (gst_element_register):
7595           set the factory in the class struct, so gst_element_get_factory
7596           actually works
7597         * gst/parse/grammar.y:
7598           set element to playing when it gets unlocked as we can't rely on the
7599           bin state - all elements in the bin state might still be locked in
7600           NULL)
7601
7602 2004-07-22  Benjamin Otte  <otte@gnome.org>
7603
7604         * gst/gstelement.c: (gst_element_set_state_func):
7605           make this a static function
7606
7607 2004-07-22  Wim Taymans  <wim@fluendo.com>
7608
7609         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
7610         (gst_opt_scheduler_pad_link):
7611         fix 147894-2 and the group_link problem.
7612
7613 2004-07-22  Wim Taymans  <wim@fluendo.com>
7614
7615         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7616         (handoff_identity), (main):
7617         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7618         (handoff_identity), (main):
7619         * testsuite/schedulers/Makefile.am:
7620         * testsuite/schedulers/group_link.c: (main):
7621         Show bug in scheduler when linking chain and loop based element 
7622         where the chain based element was not yet in a group.
7623
7624 2004-07-21  Benjamin Otte  <otte@gnome.org>
7625
7626         * gst/.cvsignore:
7627         * gst/autoplug/.cvsignore:
7628         * gst/elements/.cvsignore:
7629         * gst/indexers/.cvsignore:
7630         * libs/gst/bytestream/.cvsignore:
7631         * libs/gst/control/.cvsignore:
7632         * libs/gst/getbits/.cvsignore:
7633         * testsuite/states/.cvsignore:
7634         * testsuite/threads/.cvsignore:
7635           keep this up to date, since I seem to be the only one who cares
7636           about not missing files on commits (editor's note: no you don't,
7637           but feel free to change them at the time you add stuff instead
7638           of later on)
7639
7640 2004-07-21  Benjamin Otte  <otte@gnome.org>
7641
7642         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7643         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
7644         (gst_bin_child_state_change_func), (set_kid_state_func),
7645         (gst_bin_set_state), (gst_bin_change_state_norecurse):
7646           make state changes work correctly and reentrant (so removing
7647           elements from bins during state changes of bins doesn't cause
7648           segfaults or even wrong states)
7649           add debugging category and debugging output to print children states
7650         * gst/gstbin.c: (gst_bin_dispose): 
7651           add some assertion checks
7652         * gst/gstbin.h:
7653         * gst/gstbin.c: (gst_bin_sync_children_state):
7654           deprecate this function - it just does gst_bin_set_state (bin,
7655           GST_STATE (bin)) 
7656         * testsuite/threads/queue.c: (main):
7657           don't use gst_bin_sync_children_state anymore
7658         * testsuite/states/Makefile.am:
7659         * testsuite/states/bin.c:
7660           test that the state changes of bins work as expected
7661         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
7662           some adjustments to change states correctly, too
7663         * gst/gstthread.c: (gst_thread_change_state):
7664           don't enable/disable "threadsafe" properties, they're unused and
7665           cause random segfaults
7666         * testsuite/threads/Makefile.am:
7667           the queue check randomly passes now, ignore it
7668
7669 2004-07-21  Benjamin Otte  <otte@gnome.org>
7670
7671         * gst/gstpad.c:
7672           check if data is NULL before outputting debug info. (fixes #145100)
7673
7674 2004-07-21  Benjamin Otte  <otte@gnome.org>
7675
7676         * gst/schedulers/entryscheduler.c:
7677         (gst_entry_scheduler_loop_wrapper),
7678         (gst_entry_scheduler_chain_wrapper),
7679         (gst_entry_scheduler_get_wrapper):
7680           reset the state when the cothread starts, so we don't get assertion
7681           failures on restarting of cothreads
7682
7683 2004-07-20  Benjamin Otte  <otte@gnome.org>
7684
7685         * gst/gstelement.c: (gst_element_link_pads_filtered):
7686           use correct sinkpad, if only sinkpad is specified, but not srcpad
7687           (fixes #147889)
7688         * gst/gstelement.c: (gst_element_set_state_func),
7689         (gst_element_change_state): ref/unref the element, signal handlers
7690         could get rid of the element otherwise
7691
7692 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7693
7694         * docs/random/ds/0.9-suggested-changes:
7695           Make note about renaming fixed-list to array.
7696         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
7697         (_gst_value_initialize):
7698           Add array intersections.
7699         * testsuite/caps/intersect2.c: (main):
7700           Add test for array intersections.
7701
7702 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7703
7704         * configure.ac: back to cvs
7705
7706 === release 0.8.4 ===
7707
7708 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7709
7710         * configure.ac:
7711           releasing 0.8.4, "Paella"
7712           bump libtool versioning
7713
7714 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7715
7716         * po/LINGUAS:
7717         * po/ca.po:
7718           adding Catalan translation (Jordi Mallach)
7719
7720 2004-07-20  Wim Taymans  <wim@fluendo.com>
7721
7722         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7723         (handoff_identity), (main):
7724         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7725         (handoff_identity), (main):
7726         * testsuite/schedulers/Makefile.am:
7727         Added failing testcase for variant of #147894
7728
7729 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7730
7731         patch by: David Moore
7732
7733         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7734         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
7735         (group_migrate_connected):
7736         * testsuite/schedulers/Makefile.am:
7737           fix for #142813 (Deadlock in optimal scheduler)
7738
7739 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7740
7741         patch by: Wim Taymans
7742
7743         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7744         (gst_opt_scheduler_schedule_run_queue),
7745         (gst_opt_scheduler_get_wrapper), (get_group),
7746         (group_migrate_connected):
7747         * testsuite/schedulers/Makefile.am:
7748           fix for #147819 (Add some checks in the opt scheduler)
7749
7750 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7751
7752         patch by: Benjamin Otte
7753
7754         * gst/gstelementfactory.c: (__gst_element_details_set):
7755           fix for #147929: running gst-register in non-utf8 locale can cause
7756           invalid registry
7757
7758 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7759
7760         patch by: Wim Taymans
7761
7762         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
7763         (group_has_element), (element_get_reachables_func),
7764         (group_migrate_connected):
7765           fix for #147894 (opt scheduler decoupled elements mismanagement)
7766         * testsuite/schedulers/Makefile.am:
7767           testsuite app now passes
7768
7769 2004-07-19  Wim Taymans  <wim@fluendo.com>
7770
7771         * testsuite/schedulers/147819.c: (handoff_identity1),
7772         (handoff_identity2), (main):
7773         * testsuite/schedulers/Makefile.am:
7774         Added testcase for bug 147819
7775
7776 2004-07-19  Wim Taymans  <wim@fluendo.com>
7777
7778         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7779         (handoff_identity), (main):
7780         * testsuite/schedulers/Makefile.am:
7781         Added testcase for bug 147894
7782
7783 2004-07-16  Wim Taymans  <wim@fluendo.com>
7784
7785         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
7786         * testsuite/schedulers/142183.c: (handoff_identity), (main):
7787         * testsuite/schedulers/Makefile.am:
7788         Added testsuite for bug 142183 in its two incarnations. Refcount
7789         is not increased for scheduled elements and threadsafe properties
7790         mutexes are not properly unlocked.
7791
7792 2004-07-16  Wim Taymans  <wim@fluendo.com>
7793
7794         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
7795         (create_chain), (destroy_chain), (create_group), (destroy_group),
7796         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
7797         (group_dec_link), (gst_opt_scheduler_pad_link),
7798         (group_inc_links_for_element), (group_migrate_connected):
7799         Call group_inc_link with the proper src->sink ordering -- 
7800         break this, and we break sort_chain. patch from wingo for bug
7801         147713.
7802         Partially revert patch 1.89. When adding a loop based element to 
7803         the scheduler, the links to other groups are automatically followed
7804         and incremented. This should not happen because the bin will call
7805         pad_link explicitly for those connection, resulting in them counted 
7806         twice. Results in assertion failure on pipeline cleanup.
7807
7808 2004-07-16  Wim Taymans  <wim@fluendo.com>
7809
7810         * testsuite/schedulers/143777-2.c: (main):
7811         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
7812         (main):
7813         * testsuite/schedulers/Makefile.am:
7814         Added cleanup code to testcase 143777-2.
7815         Added testcase to show bug 147713, does not really show the
7816         deadlock as I can't figure out how to trigger it, but it does
7817         demonstrate bad ordering in the scheduler.
7818
7819 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7820
7821         * gst/gstvalue.c: (gst_value_deserialize_fraction):
7822           change strndup to g_strndup.  Fixes #147707
7823
7824 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7825
7826         * po/af.po:
7827         * po/az.po:
7828         * po/cs.po:
7829         * po/en_GB.po:
7830         * po/fr.po:
7831         * po/nl.po:
7832         * po/sr.po:
7833         * po/sv.po:
7834         * po/tr.po:
7835         * po/uk.po:
7836           updated translations
7837
7838 2004-07-16  Benjamin Otte  <otte@gnome.org>
7839
7840         * gst/gstvalue.c: (gst_greatest_common_divisor):
7841           use ints and return ints, fractions only use ints, too, so this
7842           avoids accidently casting multiplications to unsigned
7843         (gst_value_lcopy_fraction): it's ints, not uint32
7844         (gst_value_set_fraction): disallow minint, multiplying and negation
7845           are broken with it
7846         (gst_value_fraction_multiply): fix to make large numbers work and get
7847         rid of the assumption that the multiplication of two ints fits an
7848         int64 - dunno if that's true for all systems
7849         * testsuite/caps/Makefile.am:
7850         * testsuite/caps/fraction-multiply-and-zero.c:
7851         (check_multiplication), (check_equal), (zero_test), (main):
7852           add tests for all the stuff above
7853         * testsuite/caps/value_compare.c: (test1):
7854           fix comment
7855         * tests/.cvsignore:
7856         * testsuite/caps/.cvsignore:
7857         * testsuite/debug/.cvsignore:
7858         * testsuite/dlopen/.cvsignore:
7859         * testsuite/states/.cvsignore:
7860           get up to date
7861
7862 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7863
7864         * docs/manual/bins-api.xml:
7865         * docs/manual/factories.xml:
7866         * docs/manual/helloworld.xml:
7867         * docs/manual/links-api.xml: 
7868           fixes for out of date info, incorrect info and grammar
7869
7870 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7871
7872         * docs/manual/pads.xml:
7873         * docs/manual/pads-api.xml: grammar fix
7874
7875 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7876
7877         * docs/manual/pads-api.xml: typo + grammar fix
7878
7879 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7880
7881         * docs/gst/gstreamer-sections.txt:
7882           add new symbols
7883         * docs/gst/tmpl/gstelement.sgml:
7884         * docs/gst/tmpl/gstpad.sgml:
7885         * docs/gst/tmpl/gsttypes.sgml:
7886         * docs/gst/tmpl/gstvalue.sgml:
7887           update docs
7888         * gst/gststructure.c: (gst_structure_set_valist),
7889         (gst_structure_from_abbr), (gst_structure_to_abbr):
7890         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
7891         (gst_greatest_common_divisor), (gst_value_init_fraction),
7892         (gst_value_copy_fraction), (gst_value_collect_fraction),
7893         (gst_value_lcopy_fraction), (gst_value_set_fraction),
7894         (gst_value_get_fraction_numerator),
7895         (gst_value_get_fraction_denominator),
7896         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
7897         (gst_value_deserialize_fraction),
7898         (gst_value_transform_fraction_string),
7899         (gst_value_transform_string_fraction),
7900         (gst_value_compare_fraction), (_gst_value_initialize):
7901         * gst/gstvalue.h:
7902           adding GstFraction GValue type, get/set, and multiply
7903         * testsuite/caps/Makefile.am:
7904         * testsuite/caps/fraction.c: (test), (main):
7905         * testsuite/caps/string-conversions.c: (main):
7906         * testsuite/caps/value_compare.c: (test1), (main):
7907           add regression tests for GstFraction
7908
7909 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7910         
7911         * docs/manual/init-api.xml: Grammar fix
7912
7913 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7914
7915         * docs/manual/states.xml: Fix inconsistent information
7916
7917 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7918
7919         * gst/gstelement.c: (gst_element_set_state):
7920         * gst/gstpad.c: (gst_pad_try_set_caps):
7921         * gst/gststructure.c:
7922         * gst/gstthread.c: (gst_thread_child_state_change):
7923         * gst/gstvalue.c: (gst_value_compare_double):
7924         * gst/gstvalue.h:
7925         * testsuite/parse/parse1.c: (main):
7926           debugging additions and style cleanups
7927
7928 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7929
7930         * docs/manual/states.xml: Grammar fix
7931
7932 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7933
7934         * docs/manual/pads.xml: Grammar fix
7935
7936 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7937
7938         * docs/manual/elements.xml: Fixed image reference
7939
7940 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7941
7942         * docs/manual/goals.xml: Grammar fix
7943
7944 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7945
7946         * docs/manual/motivation.xml:
7947         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
7948
7949 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7950
7951         * docs/manual/motivation.xml: Fix spelling
7952
7953 2004-07-15  Benjamin Otte  <otte@gnome.org>
7954
7955         * gst/gstelement.h: 
7956           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
7957           strings.
7958         * gst/gstelement.c (gst_element_class_init):
7959           GError's are boxed, not objects
7960         * gst/gstmarshal.list:
7961           update list for the fixed error signal
7962
7963 2004-07-14  Andy Wingo  <wingo@pobox.com>
7964
7965         * gst/gsttag.c: Add a tag merge func for pointers. The header was
7966         there all along, but the function wasn't. (guile-gstreamer's build
7967         system uses the address of the function -- I wasn't actually
7968         trying to use this.)
7969
7970 2004-07-14  Andy Wingo  <wingo@pobox.com>
7971
7972         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
7973         as gst_pad_proxy_pad_link) just link to every other pad when they
7974         are called. In the case where the graph has cycles, this will mean
7975         that a call to try_set_caps will recurse. Allow this recursion
7976         and return OK, while we wait for the first try_set_caps to give a
7977         proper return value.
7978         (gst_pad_link_call_link_functions): Since this function is the
7979         only one to set the NEGOTIATING flag on a pad, if the flag is set
7980         it means that the link functions have indirectly recursed. If this
7981         happens, error out to avoid infinite recursion and an eventual
7982         SEGV.
7983         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
7984         (gst_pad_proxy_getcaps): Intersect the result with the template
7985         caps to ensure that the return value is valid.
7986
7987 2004-07-14  Andy Wingo  <wingo@pobox.com>
7988
7989         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
7990         one refcount, the calling function is the owner of the buffer.
7991
7992 2004-07-14  Wim Taymans  <wim@fluendo.com>
7993
7994         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7995         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7996         Fix stupid warning when an element is to be migrated but
7997         is already migrated.
7998
7999 2004-07-14  Wim Taymans  <wim@fluendo.com>
8000
8001         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
8002         (gst_opt_scheduler_pad_link), (group_migrate_connected):
8003         Make sure that a single non-loop-based element does not 
8004         end up in a group. This fixes the testsuite again.
8005
8006 2004-07-14  Wim Taymans  <wim@fluendo.com>
8007
8008         * gst/schedulers/gstoptimalscheduler.c: (create_group),
8009         (add_to_group), (merge_groups), (schedule_group),
8010         (gst_opt_scheduler_get_wrapper), (group_elements),
8011         (group_dec_link), (gst_opt_scheduler_pad_link),
8012         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
8013         (gst_opt_scheduler_iterate):
8014         move isolated groups to a new chain.
8015         Emit a warning instead of segfaulting in some error cases.
8016         Fix a bug where the link count between groups was not calculated 
8017         correctly. Fixes #144510.
8018
8019 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
8020         * gst/elements/gstfilesrc.c:
8021           Binary files support under Windows now OK
8022       
8023 2004-07-13  Benjamin Otte  <otte@gnome.org>
8024
8025           compatibility fixes for Solaris 8/gcc 2.95
8026         * configure.ac:
8027           include libintl libs in LDFLAGS
8028         * gstvalue.c (gst_value_deserialize_buffer):
8029           cast isxdigit stuff to int to silence compiler warning
8030
8031 2004-07-12  Benjamin Otte  <otte@gnome.org>
8032
8033         * gst/gsttypes.h:
8034           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
8035           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
8036           just causes support madness
8037         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
8038           make it work without this
8039         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
8040         (gst_file_index_commit):
8041           glib IO channels don't want binary mode
8042         * testsuite/bytestream/filepadsink.c: (main):
8043         * testsuite/bytestream/test1.c: (read_param_file):
8044           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
8045
8046 2004-07-12  Benjamin Otte  <otte@gnome.org>
8047
8048         * gst/gstelement.c: (gst_element_class_init),
8049         (gst_element_set_state), (gst_element_set_state_func):
8050           virutalize gst_element_set_state, use set_state member in class
8051           struct that was already added in 0.7 for this.
8052         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
8053         (gst_bin_change_state):
8054           make gst_bin_foreach works similar to other foreach functions, plug
8055           memleaks in it. Make functions using it work with the new approach.
8056           Document gst_bin_foreach, so it can be exported if we want to
8057         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
8058           use virtualized set_state to make set_state on bins set the state of
8059           all its children.
8060
8061 2004-07-12  Benjamin Otte  <otte@gnome.org>
8062
8063         * configure.ac:
8064           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
8065           http://bugs.gentoo.org/show_bug.cgi?id=53967)
8066         * gst/gstpad.c: (gst_pad_alloc_buffer):
8067           allow buffer_alloc functions to return NULL and allocate a normal
8068           buffer in that case
8069
8070 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
8071         * gst/elements/gstfilesink.c:
8072         * gst/elements/gstfilesrc.c:
8073         * gst/indexers/gstfileindex.c:
8074         * gst/gsttypes.h:
8075         * testsuite/bytestream/filepadsink.c:
8076         * testsuite/bytestream/test1.c:
8077           Handle binary files under Windows
8078
8079 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
8080         * docs/manual/win32.xml:
8081         * win32/config.h:
8082         * win32/gst-register.vcproj:
8083         * win32/gstreamer.def:
8084           Update to another gettext public build
8085
8086 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
8087         * gst/gstplugin.c:
8088           Fix an impossible C syntax
8089         * win32/config.h:
8090           Disable i18n under Windows for the moment
8091         * win32/gst-register.vcproj:
8092           Use this configuration
8093
8094 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
8095         * docs/manual/quotes.xml:
8096           Keep the quotes file alive
8097         * docs/random/ds/0.9-suggested-changes:
8098           Add the suggestion of including a 'rowstride' as part of video
8099           format caps
8100
8101 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8102
8103         * gst/gstelement.c: (gst_element_set_state),
8104         (gst_element_change_state):
8105           d'oh.  Set PENDING state correctly before forcing bin to change.
8106         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8107         (gst_structure_parse_fixed_list):
8108         * gst/schedulers/gstoptimalscheduler.c:
8109         (gst_opt_scheduler_state_transition):
8110         * testsuite/states/parent.c: (main):
8111           remove comment now that it's fixed.
8112
8113 2004-07-11  Benjamin Otte  <otte@gnome.org>
8114
8115         * gst/gstclock.h:
8116           GST_SECOND shouldn't cause a conversion to unsigned.
8117         * testsuite/clock/.cvsignore:
8118         * testsuite/clock/Makefile.am:
8119         * testsuite/clock/signedness.c: (main):
8120           make sure it never will again
8121
8122 2004-07-11  Andy Wingo  <wingo@pobox.com>
8123
8124         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
8125         whose state is higher than the bin state, raise the bin state to
8126         ensure that bin state := highest child state.
8127         
8128 2004-07-11  Andy Wingo  <wingo@pobox.com>
8129
8130         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
8131         procedure on the children of a bin. Assumes that the procedure can
8132         change the set of children.
8133         (set_kid_state_func): New static function.
8134         (gst_bin_change_state): Use gst_bin_foreach to call
8135         set_kid_state_func. Fixes a bug: if a child had a state-change
8136         handler that removes it from the bin, there would be a segfault.
8137         Hopefully it should also work in the case where the state-change
8138         handler on one child adds or removes other children. In any case,
8139         fixes should go to gst_bin_foreach.
8140
8141 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
8142
8143         * gst/gstelement.c: (gst_element_set_state):
8144           compatibility fix for latest plugins release.  Change loop back
8145           to while {}
8146
8147 2004-07-09  Wim Taymans  <wim@fluendo.com>
8148
8149         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
8150         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
8151         (gst_thread_main_loop):
8152         Since remove is virtual in GstBin we must not assume the 
8153         elements GList to have anothing useful.
8154         Add some more logging to GstThread and be a bit more paranoid
8155         when resetting the scheduler.
8156         Set the state of the bin to NULL before removing the children.
8157
8158 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8159
8160         * testsuite/threads/Makefile.am:
8161         * testsuite/threads/threadg.c:
8162           added test to check if problem when removing all elements from a
8163           GstThread before setting GstThread state to NULL
8164
8165 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8166
8167         * docs/gst/tmpl/gstelement.sgml:
8168         * docs/gst/tmpl/gsttypes.sgml:
8169         * gst/gstbin.c: (gst_bin_change_state):
8170         * gst/gstelement.c: (gst_element_set_state),
8171         (gst_element_change_state):
8172           rework so that for bins we try to set the state on all children
8173           as well even if the bin is in the correct state already.
8174           change while to do so at least one iteration is done.
8175           For regular elements, we fall back to the previous behaviour for
8176           now since we first need a new plugins release.
8177         * testsuite/states/parent.c: (main):
8178           test for this case
8179           Fixes #123774
8180
8181 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8182
8183         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
8184         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
8185         (gst_queue_release_locks), (gst_queue_change_state),
8186         (gst_queue_set_property):
8187           add proper lock debugging.  Change dispose to finalize, since
8188           we're freeing mutexes and other stuff which should happen only once.
8189
8190 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8191
8192         * docs/gst/tmpl/gstelement.sgml:
8193         * docs/gst/tmpl/gstplugin.sgml:
8194         * docs/gst/tmpl/gsttypes.sgml:
8195         * docs/pwg/building-state.xml:
8196         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
8197         * gst/gstelement.c: (gst_element_change_state):
8198         * gst/gstthread.c: (gst_thread_change_state):
8199           catch wrong state changes in element base class.
8200
8201 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8202
8203         * gst/gstinfo.h:
8204           clean up layout a little.
8205
8206 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8207
8208         * configure.ac:
8209         * testsuite/Makefile.am:
8210         * testsuite/states/Makefile.am:
8211         * testsuite/states/parent.c: (main):
8212           re-enable states testsuite dir.  Add test for state changes and
8213           parent behaviour
8214
8215 2004-07-09  Wim Taymans  <wim@fluendo.com>
8216
8217         * gst/schedulers/gstoptimalscheduler.c:
8218         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
8219         (element_get_reachables_func), (element_get_reachables),
8220         (debug_element), (rechain_group), (group_migrate_connected),
8221         (gst_opt_scheduler_pad_unlink):
8222         Do not try to migrate decoupled elements to a new group since
8223         they are not added to groups.
8224
8225 2004-07-08  Benjamin Otte  <otte@gnome.org>
8226
8227         * gst/gstelement.c: (gst_element_error_func):
8228           make reentrant (= allow removing elements in error handler)
8229
8230 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8231
8232         * gst/gstpad.c: (gst_pad_event_default_dispatch),
8233         (gst_pad_send_event), (gst_pad_call_chain_function):
8234           events sent to elements below PAUSED cannot be handled, so
8235           don't try to
8236
8237 2004-07-08  Wim Taymans  <wim@fluendo.com>
8238
8239         * gst/schedulers/gstoptimalscheduler.c:
8240         (chain_recursively_migrate_group), (create_group),
8241         (schedule_group), (gst_opt_scheduler_pad_link),
8242         (group_elements_set_visited), (element_get_reachables_func),
8243         (element_get_reachables), (group_can_reach_group), (debug_element),
8244         (rechain_group), (group_migrate_connected),
8245         (gst_opt_scheduler_pad_unlink):
8246         * testsuite/schedulers/Makefile.am:
8247         Implemented group splitting and rechaining.
8248         Fixes 143777 and 143777-2 in the testsuite.
8249
8250 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8251
8252         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
8253           extra debugging
8254         * gst/gstevent.h:
8255         * gst/gstinfo.c: (gst_debug_log_default):
8256           print time nicely.  add thread pointer until someone figures out
8257           a completely portable way of getting at thread id's.
8258         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
8259         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
8260         (gst_pad_call_chain_function):
8261           extra debugging
8262         * gst/schedulers/gstoptimalscheduler.c:
8263         (get_group_schedule_function), (loop_group_schedule_function),
8264         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
8265         (pad_clear_queued), (gst_opt_scheduler_iterate):
8266           rename BUFPEN and friends to DATAPEN since that's what they are.
8267
8268 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8269
8270         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
8271         * gst/gstbuffer.h:
8272         * gst/gstpad.c:
8273           cleanups and debugging
8274
8275 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8276
8277         * configure.ac:
8278         * gst/gstvalue.c: (gst_value_compare_enum),
8279         (gst_value_serialize_enum), (gst_value_deserialize_enum),
8280         (gst_value_can_compare), (gst_value_compare):
8281         * testsuite/Makefile.am:
8282         * testsuite/enumcaps/Makefile.am:
8283         * testsuite/enumcaps/enumcaps.c:
8284           Fix enum serialization, deserialization, comparison in caps, add
8285           a test to ensure that this continues working in the future.
8286
8287 2004-07-06  David Schleef  <ds@schleef.org>
8288
8289         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
8290         Fix memleak.
8291
8292 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8293
8294         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
8295         * gst/gstplugin.h:
8296         * gst/registries/gstxmlregistry.c:
8297         (plugin_times_older_than_recurse), (plugin_times_older_than),
8298         (gst_xml_registry_parse_padtemplate):
8299           only rebuild registry when actual plugins have a newer time than
8300           the registry.  Fixes #145520
8301
8302 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8303
8304         * docs/manual/manual.xml:
8305         * docs/manual/win32.xml:
8306           add chapter on win32 building.  fixes #142422
8307
8308 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8309
8310         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
8311
8312         * gst/autoplug/gstspider.c: (gst_spider_init),
8313         (gst_spider_dispose):
8314           fix spider memleaks.  fixes #137863
8315
8316 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8317
8318         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
8319
8320         * gst/schedulers/gstoptimalscheduler.c:
8321         (gst_opt_scheduler_pad_unlink):
8322           fix SIGBUS error, fixes #145338
8323
8324 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8325
8326         * gst/gstobject.c: (gst_object_replace):
8327         * gst/gstscheduler.c: (gst_scheduler_get_clock):
8328         * gst/gstsystemclock.c: (gst_system_clock_obtain):
8329           clean up clock lifecycle.  Fixes #109831
8330
8331 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8332
8333         * po/LINGUAS:
8334         * po/cs.po:
8335           added Czech translation (Miloslav Trmac)
8336
8337 2004-07-04  David Schleef  <ds@schleef.org>
8338
8339         * tools/Makefile.am:
8340         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
8341
8342 2004-07-04  David Schleef  <ds@schleef.org>
8343
8344         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
8345
8346 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8347
8348         * gst/gstbin.c: (gst_bin_restore_thyself):
8349           chain to parent restore so the bins get restored correctly
8350           in the editor
8351
8352 2004-07-03  David Schleef  <ds@schleef.org>
8353
8354         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
8355         Actually do something in these functions, like before the big
8356         caps change.  (bug #145137)
8357
8358 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8359
8360         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
8361         (gst_element_get_compatible_pad_filtered):
8362         * gst/gstthread.c: (gst_thread_main_loop):
8363           more debugging
8364
8365 2004-07-02  David Schleef  <ds@schleef.org>
8366
8367         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
8368         * gst/gstobject.h:
8369         * gst/gstparse.h:
8370         * gst/gsttrace.h:
8371         * gst/gstxml.h:
8372
8373 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8374
8375         * gst/gstpad.c: (gst_pad_check_schedulers),
8376         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
8377         (gst_pad_link_prepare):
8378           revert until testsuite is fixed
8379
8380 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8381
8382         * testsuite/Makefile.am:
8383         * testsuite/caps/filtercaps.c: (main):
8384         * testsuite/clock/clock1.c: (main):
8385         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
8386           fix some more tests
8387
8388 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8389
8390         * testsuite/cleanup/cleanup1.c: (create_pipeline):
8391         * testsuite/cleanup/cleanup2.c: (create_pipeline):
8392         * testsuite/cleanup/cleanup4.c: (main):
8393           fix testsuite
8394
8395 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8396
8397         * libs/gst/control/control.c:
8398         * libs/gst/control/dparam.c:
8399         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
8400         * libs/gst/control/dparammanager.c:
8401         * libs/gst/control/dparammanager.h:
8402         * testsuite/dynparams/Makefile.am:
8403         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
8404         (gst_dptest_change_state), (gst_dptest_chain), (main):
8405           fix testcase for dparams
8406           add debugging category
8407
8408 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8409
8410         * testsuite/Rules:
8411           change path
8412
8413 2004-07-02  Benjamin Otte  <otte@gnome.org>
8414
8415         * tests/.cvsignore:
8416         * tests/Makefile.am:
8417         * tests/mass_elements.c: (gst_get_current_time), (main):
8418           add simple benchmark to test various speeds of fakesrc ! identity !
8419           identity ! ... ! fakesink.
8420           Usage: mass_elements [num_identities] [num_buffers]
8421           If not specified they default to 1000.
8422
8423 2004-07-02  Benjamin Otte  <otte@gnome.org>
8424
8425         * gst/gstpad.c: (gst_pad_check_schedulers),
8426         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
8427         (gst_pad_link_prepare):
8428           check that pads that get linked belong to the same manager. The old
8429           code allowed linking elements before putting them into bins, so it
8430           worked to link them and then put them in different threads, which
8431           lead to weird behaviour.
8432           Since this effectively disallows linking elements before putting
8433           them in a bin, some applications might not work after this and error
8434           out. If these applications are too critical, we might need to revert
8435           that patch. Please test this before the next release...
8436
8437 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8438
8439         * gst/gstpad.c: (gst_pad_get_caps):
8440           throw an error if the getcaps function does not return a subset of
8441           the template caps.
8442         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
8443           make disconts without position info an error in debugging
8444         * tests/spidey_bench.c: (handoff), (main):
8445           don't count first try when averaging
8446
8447 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8448
8449         * gst/gstplugin.c: (gst_plugin_load_file):
8450           figure out problem with dynamic test
8451
8452 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8453
8454         * docs/gst/Makefile.am:
8455           fix docs build
8456
8457 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8458
8459         * po/POTFILES.in:
8460         * po/af.po:
8461         * po/az.po:
8462         * po/en_GB.po:
8463         * po/fr.po:
8464         * po/nl.po:
8465         * po/sr.po:
8466         * po/sv.po:
8467         * po/tr.po:
8468         * po/uk.po:
8469         * tools/gst-register.c: (plugin_added_func), (main):
8470           i18n-ize -register, fix plural
8471
8472 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8473
8474         * gst/elements/gstidentity.c: (gst_identity_class_init),
8475         (gst_identity_init), (gst_identity_chain),
8476         (gst_identity_set_property), (gst_identity_get_property):
8477         * gst/elements/gstidentity.h:
8478           check for perfect stream
8479
8480 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8481
8482         * gst/elements/gstidentity.c: (gst_identity_chain):
8483           print offset_end
8484
8485 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8486
8487         * docs/gst/Makefile.am:
8488         * docs/gst/gstreamer-docs.sgml:
8489           doc fixes
8490
8491 2004-06-24  David Schleef  <ds@schleef.org>
8492
8493         * autogen.sh:  Remove call to env, since the buildbot isn't
8494         broken anymore.
8495
8496 2004-06-24  Wim Taymans  <wim@fluendo.com>
8497
8498         * gst/elements/Makefile.am:
8499         * gst/elements/gstelements.c:
8500         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
8501         (gst_multifdsink_class_init), (gst_multifdsink_init),
8502         (gst_multifdsink_add), (gst_multifdsink_remove),
8503         (gst_multifdsink_clear), (gst_multifdsink_chain),
8504         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
8505         * gst/elements/gstmultifdsink.h:
8506         Added an element that writes to multiple filedescriptors at once.
8507
8508 2004-06-24  Benjamin Otte  <otte@gnome.org>
8509
8510         * gst/parse/grammar.y:
8511           don't try to link elements before they have been added to bins
8512
8513 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8514
8515         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
8516         (gst_file_pad_get_length):
8517         * libs/gst/bytestream/filepad.h:
8518           add 2 new functions
8519
8520 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8521
8522         * docs/gst/gstreamer-sections.txt:
8523         remove from docs, the define that Benjamin removed from gstelement.h
8524
8525 2004-06-22  Benjamin Otte  <otte@gnome.org>
8526
8527         * gst/gstelement.h:
8528           remove define that referenced a nonexisting GstElement struct member
8529
8530 2004-06-20  Benjamin Otte  <otte@gnome.org>
8531
8532         * gst/gstdata.c: (gst_data_is_writable):
8533           whoops, return values were wrong, so writable data was marked as
8534           non-writable and vice versa. (fixes #143953, spotted by Francis
8535           Labonte)
8536           Shows how rarely we need to copy data ;)
8537
8538 2004-06-20  Benjamin Otte  <otte@gnome.org>
8539
8540         * testsuite/schedulers/.cvsignore:
8541         * testsuite/schedulers/Makefile.am:
8542         * testsuite/schedulers/143777-2.c: (main):
8543           add test for opt breakage in bug #143777
8544
8545 2004-06-20  Benjamin Otte  <otte@gnome.org>
8546
8547         * gst/gstpad.c: (gst_pad_call_chain_function):
8548           check for if we were unlinked while inside the chainfunction (fixes
8549           entrygthread having issues with #143777)
8550         * testsuite/schedulers/143777.c: (main):
8551         * testsuite/schedulers/Makefile.am:
8552           add a test for that fix
8553
8554 2004-06-20  Benjamin Otte  <otte@gnome.org>
8555
8556         * gst/gstvalue.c: (gst_value_set_int_range):
8557           test that start is smaller then end
8558         * libs/gst/bytestream/Makefile.am:
8559         * libs/gst/bytestream/filepad.c: 
8560         * libs/gst/bytestream/filepad.h:
8561           add GstFilePad - a pad that behaves like a FILE*
8562         * testsuite/bytestream/.cvsignore:
8563         * testsuite/bytestream/Makefile.am:
8564         * testsuite/bytestream/filepadsink.c: 
8565           test for the GstFilePad
8566
8567 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8568
8569         * gst/elements/gstidentity.c: (gst_identity_class_init),
8570         (gst_identity_init), (gst_identity_set_clock),
8571         (gst_identity_chain), (gst_identity_set_property),
8572         (gst_identity_get_property):
8573         * gst/elements/gstidentity.h:
8574         * gst/gstclock.c: (gst_clock_id_wait):
8575           add a "sync" property to sync to the clock
8576
8577 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8578
8579         * gst/gstelementfactory.c: (gst_element_factory_create):
8580           make the freakin "elementfactory bla has no type" message more
8581           useful. So we actually can do something when someone shows up
8582           complaining about it.
8583
8584 2004-06-15  Johan Dahlin  <johan@gnome.org>
8585
8586         * tools/gst-inspect.c (main): Fallback to plugin if no element is
8587         found. This matches the old behavior better. Thanks to Thomas for
8588         pointing out.
8589
8590 2004-06-14  David Schleef  <ds@schleef.org>
8591
8592         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
8593         -fomit-frame-pointer.  Appears to generate correct code in
8594         other cases as well.
8595
8596 2004-06-14  Johan Dahlin  <johan@gnome.org>
8597
8598         * tools/gst-inspect.c (main): Add two new command line options: -a
8599         to print all elements and -n to print the name on each line. Also
8600         fix some error reporting.
8601         (main): Simplify, remove -n and always print names if -a is specified
8602
8603 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
8604
8605         * win32/gstconfig.h:
8606         * win32/GSTreamer.vcproj:
8607         * win32/Makefile:
8608         * gst/gstconfig.h.in:
8609         * gst/gst.h:
8610         * gst/gstbin.h:
8611         * gst/gstelement.h:
8612         * gst/gstevent.h:
8613         * gst/gstobject.h:
8614         * gst/gstpad.h:
8615         * docs/gst/gstreamer-sections.txt:
8616         * docs/gst/tmpl/gstconfig.sgml:
8617           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
8618
8619 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8620         * docs/gst/gstreamer-sections.txt:
8621         * docs/gst/tmpl/gstconfig.sgml:
8622         Add the GSTREAMER_EXPORT macro to the docs
8623
8624 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8625
8626         * tools/gst-compprep.c: (handle_xmlerror), (main):
8627         Add a check for the version that introduced SetStructuredError to fix
8628         the build on FC1
8629
8630 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8631
8632         * win32/msvc71.sln:
8633         * win32/testsuite/:
8634           prepare to compile the testsuite with MSVC
8635
8636 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8637
8638         * docs/manual/win32.xml:
8639           attempt to transform the Win32 README into an XML doc
8640
8641 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8642
8643         * gst/gst.c:
8644         * gst/gstbin.*:
8645         * gst/config.h.in:
8646         * gst/gstelement.*:
8647         * gst/gstevent.h:
8648         * gst/gstobject.*:
8649         * gst/gstpad.h:
8650         * tools/gst-register.c:
8651         * win32/gstreamer.def:
8652           extern symbols are now exported for the Windows DLL
8653
8654 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8655
8656         * gst/gstinfo.h:
8657           fix a problem to enable/disable DEBUG under MSVC
8658
8659 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8660
8661         * win32/:
8662           enable more debug code in DEBUG build
8663
8664 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8665
8666         * win32/config.h:
8667         * gst/gst-i18n-app.h:
8668           enable NLS under Windows
8669
8670 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
8671         * tools/gst-compprep.c: (handle_xmlerror), (main):
8672           Make an error that baffled me a bit clearer
8673
8674 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8675
8676         * gst/gstqueue.c:
8677           don't use g_queue_get_length () because it's 2.4, use ->length
8678
8679 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
8680
8681         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
8682
8683         * tools/gst-inspect.c: (print_signal_info):
8684           don't free random data twice. (fixes #144185)
8685
8686 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
8687
8688         * gst/gstqueue.c:
8689         * gst/gstqueue.h:
8690           fix removing from the wrong queue on event timeout
8691           fix disposing of the event queue by casting correctly
8692           add mutexes for handling the event queue
8693           someone was sleeping when fixing queue last time around :)
8694
8695 2004-06-10  Johan Dahlin  <johan@gnome.org>
8696
8697         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
8698         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
8699
8700 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8701
8702         * docs/random/gdp:
8703         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
8704         * libs/gst/dataprotocol/dataprotocol.c:
8705         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8706         (gst_dp_buffer_from_header):
8707         * libs/gst/dataprotocol/dataprotocol.h:
8708         * libs/gst/dataprotocol/dp-private.h:
8709           rev version to 0.1, add buffer flags and copy them
8710
8711 2004-06-09  Johan Dahlin  <johan@gnome.org>
8712
8713         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
8714         the flags from the buffer we're copying.
8715
8716 2004-06-09  Wim Taymans  <wim@fluendo.com>
8717
8718         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
8719         * gst/elements/gstidentity.c: (gst_identity_init),
8720         (gst_identity_chain):
8721         Print more buffer info in fakesink.
8722         Make identity output similar to fakesink.
8723
8724 2004-06-07  Daniel Gazard  <dany42@free.fr>
8725
8726         reviewed by Benjamin Otte  <otte@gnome.org>
8727
8728         * configure.ac:
8729           fix cross compiling not working. (fixes #143741)
8730
8731 2004-06-07  Benjamin Otte  <otte@gnome.org>
8732
8733         * gst/gstelement.c: (gst_element_set_time_delay):
8734           add failure check
8735         * gst/gstinfo.h:
8736           put brackets around macro arguments of GST_TIME_ARGS, add note to
8737           move it to correct header in 0.9
8738
8739 2004-06-07  Benjamin Otte  <otte@gnome.org>
8740
8741         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
8742         (gst_file_index_load), (_file_index_id_save_entries),
8743         (gst_file_index_commit), (gst_file_index_add_association),
8744         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
8745         (gst_file_index_plugin_init):
8746           make debugging use a default category
8747
8748 2004-06-06  David Moore  <dcm@acm.org>
8749
8750         reviewed by Benjamin Otte  <otte@gnome.org>
8751
8752         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
8753         (gst_fdsrc_change_state):
8754           reset offset counter when going READY => PAUSED. (fixes #142903)
8755
8756 2004-06-06  ed@catmur.co.uk
8757
8758         reviewed by Benjamin Otte  <otte@gnome.org>
8759
8760         * gst/registries/gstxmlregistry.c:
8761         (gst_xml_registry_rebuild_recurse):
8762           don't rely on g_dir_open to figure out if a file is a directory, use
8763           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
8764           directories. (fixes #142850)
8765
8766 2004-06-06  Benjamin Otte  <otte@gnome.org>
8767
8768         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
8769           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
8770         * libs/gst/bytestream/adapter.c:
8771         * libs/gst/bytestream/adapter.h:
8772           fix copyright in header and typo in debugging category name
8773
8774 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8775
8776         * configure.ac:
8777           bump nano to cvs
8778
8779 === release 0.8.3 ===
8780
8781 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8782
8783         * configure.ac:
8784           update libtool versioning
8785           do a new release
8786         * docs/gst/tmpl/gstelement.sgml:
8787         * docs/gst/tmpl/gsttypes.sgml:
8788         * gst/gstinfo.c: (_gst_debug_init):
8789           put back GST_CAT_DATAFLOW to fix API breakage
8790
8791 2004-06-04  David Schleef  <ds@schleef.org>
8792
8793         * autogen.sh: Add a temporary 'env' to test buildbot problems.
8794
8795 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8796
8797         * configure.ac:
8798           bump nano to cvs
8799
8800 === release 0.8.2 ===
8801
8802 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8803
8804         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
8805           check GST_DEBUG environment variable which is parsed the same way
8806           as --gst-debug=
8807
8808 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8809
8810         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
8811                             gstmd5sink.c gstshaper.c gsttee.c
8812                             gsttypefindelement.c
8813         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
8814
8815           - removing trailing commas at end of enums
8816             it is correct C99 code but C90 compilers would complain
8817             (AIX, Forte, ...)
8818             ('should' fix #143290, at least partially)
8819
8820 2004-05-27  Wim Taymans  <wim@fluendo.com>
8821
8822         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
8823         (chain_group_set_enabled), (create_group), (add_to_group),
8824         (merge_groups), (setup_group_scheduler), (group_elements),
8825         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
8826         Don't try to follow the pad connections with other groups
8827         when a loop based element is added to the scheduler because
8828         the bin will inform the scheduler about the pad links a little
8829         later.
8830
8831 2004-05-27  Wim Taymans  <wim@fluendo.com>
8832
8833         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8834         (remove_from_chain), (chain_group_set_enabled),
8835         (setup_group_scheduler), (group_element_set_enabled),
8836         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
8837         (gst_opt_scheduler_show):
8838         Elements without a group can do a state change as well, just wait
8839         with the setup of the scheduling function when it is added to a
8840         chain.
8841
8842 2004-05-27  Wim Taymans  <wim@fluendo.com>
8843
8844         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8845         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
8846         (merge_groups), (setup_group_scheduler),
8847         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
8848         (gst_opt_scheduler_show):
8849         Fixes to maintain internal consistency of the scheduler data
8850         structures. 
8851          - adding an enabled group to a chain should increment the
8852            number of enabled elements in that chain.
8853          - removing an enabled group from a chain could disable the
8854            chain.
8855          - removing a disabled group from a chain could enable the
8856            chain.
8857          - add g_assert when internal inconsistency is detected.
8858          - adding an element to a group could increase the number of
8859            links this group has with other groups.
8860          - merging two groups also merges the chains.
8861          - also show group links in the _show method.
8862            
8863
8864 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8865
8866         * gst/gstcaps.c: (gst_caps_structure_simplify):
8867           don't print error messages when there is no error
8868         * gst/gstvalue.c: (gst_value_compare_int_range):
8869           compare the second value, too
8870         * testsuite/caps/Makefile.am:
8871         * testsuite/caps/random.c: (assert_on_error), (main):
8872           add tests to make sure the two things above are checked for
8873
8874 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8875
8876         * configure.ac:
8877         * libs/gst/dataprotocol/Makefile.am:
8878         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
8879         * libs/gst/dataprotocol/dataprotocol.h:
8880           wrap header in GST_ENABLE_NEW.  make code use it
8881
8882 2004-05-23  Johan Dahlin  <johan@gnome.org>
8883
8884         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
8885         so verbose and print GstElement signal names all the time.
8886
8887 2004-05-22  David Schleef  <ds@schleef.org>
8888
8889         * gst/registries/gstxmlregistry.c:
8890         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
8891         (bug #142957)
8892
8893 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
8894
8895         * configure.ac:
8896           scrub cflags for glib2 so gcc doesn't complain when glib is in
8897           /usr/local
8898
8899 2004-05-21  Johan Dahlin  <johan@gnome.org>
8900
8901         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
8902         __GNUC__, patch from Brian Cameron, fixes bug #142804
8903
8904 2004-05-20  David Schleef  <ds@schleef.org>
8905
8906         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
8907         comparison code.  (bug #142819)
8908
8909 2004-05-20  Wim Taymans  <wim@fluendo.com>
8910
8911         * gst/gstbuffer.c: (gst_buffer_default_copy):
8912         * gst/gstbuffer.h:
8913         Added Comment to a flag.
8914         copy relevant flags in _buffer_copy.
8915
8916 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8917
8918         reviewed by: Wim Taymans <wim at fluendo dot com>
8919
8920         * gst/gstbuffer.h:
8921           add GST_BUFFER_IN_CAPS buffer flag
8922         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8923         (gst_structure_parse_any_list), (gst_structure_parse_list),
8924         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
8925         * gst/gstvalue.c: (gst_value_serialize_any_list),
8926         (gst_value_transform_any_list_string),
8927         (gst_value_list_prepend_value), (gst_value_list_append_value),
8928         (gst_value_list_get_size), (gst_value_list_get_value),
8929         (gst_value_transform_list_string),
8930         (gst_value_transform_fixed_list_string),
8931         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
8932         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
8933         (_gst_value_initialize):
8934         * gst/gstvalue.h:
8935           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
8936           < , > as a format.
8937         * testsuite/caps/string-conversions.c: (main):
8938           add regression tests for < >
8939
8940 2004-05-20  Johan Dahlin  <johan@gnome.org>
8941
8942         * docs/gst/Makefile.am (all-local): Re-add
8943
8944 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8945
8946         * docs/gst/Makefile.am:
8947         * docs/gst/gstreamer-docs.sgml:
8948         * docs/libs/Makefile.am:
8949         * docs/libs/gstreamer-libs-docs.sgml:
8950           fix distcheck issues
8951
8952 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8953
8954         * libs/gst/dataprotocol/Makefile.am:
8955           add to autotest
8956
8957 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8958
8959         * libs/gst/dataprotocol/Makefile.am:
8960         * libs/gst/dataprotocol/dataprotocol.c:
8961         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8962         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
8963         * libs/gst/dataprotocol/dp-private.h:
8964           use GST macros to read/write fixed length ints
8965           add some more asserts
8966
8967 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8968
8969         * docs/libs/gstreamer-libs-docs.sgml:
8970         * docs/libs/gstreamer-libs-sections.txt:
8971           remove idct and putbits
8972         * configure.ac:
8973         * docs/libs/tmpl/gstdataprotocol.sgml:
8974         * libs/gst/Makefile.am:
8975         * libs/gst/dataprotocol/Makefile.am:
8976         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
8977         (buffer_test), (caps_test), (event_test), (main):
8978         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
8979         (gst_dp_dump_byte_array), (gst_dp_init),
8980         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
8981         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8982         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
8983         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
8984         (gst_dp_validate_header), (gst_dp_validate_payload),
8985         (gst_dp_validate_packet), (plugin_init):
8986         * libs/gst/dataprotocol/dataprotocol.h:
8987         * libs/gst/dataprotocol/dp-private.h:
8988           add dataprotocol
8989
8990 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8991
8992         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
8993           fix int variable deserialization and add a helper so we can actually
8994           debug this.
8995
8996 2004-05-18  David Schleef  <ds@schleef.org>
8997
8998         * testsuite/debug/commandline.c: (main): Call ./commandline, not
8999           argv[0].  Calling yourself is probably not the best way to
9000           construct a test like this, btw.
9001
9002 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9003
9004         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
9005           don't claim to be more intelligent than a scheduler when the
9006           scheduler claims the pipeline is stopped
9007         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
9008         (safe_cothread_destroy),
9009         (gst_entry_scheduler_remove_all_cothreads),
9010         (gst_entry_scheduler_reset), (_remove_cothread),
9011         (gst_entry_scheduler_state_transition):
9012           hold off cothread destruction if we're not in main cothread
9013         * configure.ac:
9014         * testsuite/Makefile.am:
9015           add new test dir
9016         * testsuite/schedulers/.cvsignore:
9017         * testsuite/schedulers/Makefile.am:
9018           add tests
9019         * testsuite/schedulers/relink.c: (cb_handoff), (main):
9020           check relinking and adding/removing elements from a running pipeline
9021         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
9022           check unlinking in a running pipeline
9023         * testsuite/schedulers/unref.c: (cb_handoff), (main):
9024           check unreffing a running pipeline
9025         * testsuite/schedulers/useless_iteration.c: (main):
9026           check iterating a pipeline that contains running threads works
9027
9028 2004-05-18  David Schleef  <ds@schleef.org>
9029
9030         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
9031           is false.
9032
9033 2004-05-18  Wim Taymans  <wim@fluendo.com>
9034
9035         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
9036         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
9037         Fixed an error introduced with patch for 1.63. When setting
9038         a get based element as the entry point in a group, make sure
9039         to mark the group as GET based.
9040
9041 2004-05-18  Wim Taymans  <wim@fluendo.com>
9042
9043         * gst/schedulers/gstoptimalscheduler.c: (create_group),
9044         (setup_group_scheduler), (loop_group_schedule_function),
9045         (gst_opt_scheduler_pad_link):
9046         Added some more debug info and fixed a bug where the group
9047         type was set to LOOP but it was in fact unknown.
9048
9049 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9050
9051         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
9052           make resetting scheduler work twice in a row
9053
9054 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9055
9056         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
9057         (CREATE_USERIALIZATION), (_gst_value_initialize),
9058         (gst_value_compare_float), (gst_value_serialize_float),
9059         (gst_value_deserialize_float), (gst_value_compare_enum),
9060         (gst_value_serialize_enum), (gst_value_deserialize_enum):
9061           add serialization and comparison functions for long, int64, enum and
9062           float values
9063         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
9064           use best serialization function in type hierarchy instead of only a
9065           matching one. This is required for enums to work.
9066         * gst/parse/grammar.y:
9067           use gst_caps_deserialize
9068         * testsuite/parse/Makefile.am:
9069           parse1 now works
9070         * testsuite/parse/parse1.c: (main):
9071           remove aggregator check, aggregator is broken, this test works now
9072           but fails because of bug #138012
9073         * testsuite/parse/parse2.c: (main):
9074           s/xvideosink/xvimagesink - this test looks a lot like we should
9075           disable it
9076
9077 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9078
9079         * gst/gstelement.c: (gst_element_class_init):
9080           whoops, store the signal id correctly
9081         * gst/schedulers/gstbasicscheduler.c:
9082         (gst_basic_scheduler_chain_wrapper):
9083           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
9084           chain function isn't linked
9085
9086 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
9087         * configure.ac:
9088         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
9089         support until we decide where the flags should be used
9090         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
9091         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
9092         * gst/gstpad.c: (gst_pad_link_call_link_functions):
9093         Output refused caps in the debug info
9094
9095 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9096
9097         * gst/elements/gstidentity.c: (gst_identity_chain):
9098           add duration debug
9099         * gst/gstinfo.c: (gst_debug_log_default):
9100           add timestamp
9101
9102 2004-05-13  Benjamin Otte  <otte@gnome.org>
9103
9104         * gst/gstpipeline.c: (gst_pipeline_dispose),
9105         (gst_pipeline_change_state):
9106           call gst_scheduler_reset on dispose (fixes #141416)
9107
9108 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9109
9110         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
9111           compute mapsize correctly
9112         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
9113           use correct datatypes when calling a varargs function
9114         * gst/elements/gsttypefindelement.c: (stop_typefinding):
9115           push a DISCONT event as first thing
9116         * gst/gst_private.h:
9117         * gst/gstinfo.c: (_gst_debug_init):
9118           remove GST_DATAFLOW debugging category
9119         * gst/gstbin.c: (gst_bin_iterate):
9120           use GST_SCHEDULING category
9121         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
9122         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
9123         (gst_pad_call_get_function):
9124           add GST_DATAFLOW to easily track flow of buffers or events.
9125         * gst/gstqueue.c: (gst_queue_get_type),
9126         (gst_queue_handle_pending_events), (gst_queue_chain),
9127         (gst_queue_get), (gst_queue_handle_src_event):
9128           use own static debugging category GST_DATAFLOW for dataflow,
9129           use DEBUG category for showing which path events go, use LOG
9130           category for buffers.
9131
9132 2004-05-10  David Schleef  <ds@schleef.org>
9133
9134         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
9135
9136 2004-05-10  David Schleef  <ds@schleef.org>
9137
9138         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
9139         symbols, because otherwise we don't know what they are.  Thanks,
9140         the GStreamer team.
9141         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
9142
9143 2004-05-10  David Schleef  <ds@schleef.org>
9144
9145         (from Steve Lhomme)
9146         * win32/Makefile: When using make clean the MS Visual Studio makefiles
9147         are deleted.  Fix.
9148         * win32/Makefile.inspect:
9149         * win32/Makefile.launch:
9150         * win32/Makefile.register:
9151
9152 2004-05-10  David Schleef  <ds@schleef.org>
9153
9154         * gst/gstinfo.h: Add missing inline function.
9155         * gst/gsttrace.c: add include
9156         * gst/parse/grammar.y: remove unused code
9157         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
9158         more portable.
9159         * tools/gst-register.c: wrap unistd.h
9160         
9161         More additions/fixes from Steve for the MSVC build.
9162         * win32/GStreamer.vcproj:
9163         * win32/Makefile:
9164         * win32/Makefile.inspect:
9165         * win32/Makefile.launch:
9166         * win32/Makefile.register:
9167         * win32/README.txt:
9168         * win32/gst-inspect.vcproj:
9169         * win32/gst-launch.vcproj:
9170         * win32/gst-register.vcproj:
9171         * win32/gstbytestream.def:
9172         * win32/gstbytestream.vcproj:
9173         * win32/gstconfig.h:
9174         * win32/gstelements.def:
9175         * win32/gstelements.vcproj:
9176         * win32/gstenumtypes.c:
9177         * win32/gstenumtypes.h:
9178         * win32/gstoptimalscheduler.def:
9179         * win32/gstoptimalscheduler.vcproj:
9180         * win32/gstreamer.def:
9181         * win32/gstspider.def:
9182         * win32/gstspider.vcproj:
9183         * win32/gstversion.h:
9184         * win32/msvc71.sln:
9185
9186 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9187
9188         * gst/gstelement.c: (gst_element_class_init),
9189         (gst_element_no_more_pads):
9190         * gst/gstelement.h:
9191           add gst_element_no_more_pads and the "no-more-pads" signal
9192
9193 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9194
9195         * gst/gstregistry.c: (gst_registry_add_plugin):
9196           refuse to add plugins when a plugin with same name is already
9197           registered. Fixes a bunch of "How to remove plugins?" issues.
9198           May lead to other problems though, let's test
9199
9200 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9201
9202         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
9203         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
9204         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
9205
9206 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9207
9208         * tests/Makefile.am: fix am16 issue
9209
9210 2004-05-09  Benjamin Otte  <otte@gnome.org>
9211
9212         * libs/gst/bytestream/Makefile.am:
9213           we should indeed add .c files to makefiles or they won't be built
9214           (d'oh)
9215
9216 2004-05-08  Benjamin Otte  <otte@gnome.org>
9217
9218         * gst/gstpad.c: (gst_pad_proxy_fixate):
9219           really reduce the set of caps
9220
9221 2004-05-08  Benjamin Otte  <otte@gnome.org>
9222
9223         * tests/Makefile.am:
9224         * tests/spidey_bench.c: (handoff), (main):
9225           add benchmark to test how long spider needs to create a pipeline
9226
9227 2004-05-08  Benjamin Otte  <otte@gnome.org>
9228
9229         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
9230           mark links as unengaged when unnegotiating instead of deactivating.
9231           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
9232
9233 2004-05-08  Benjamin Otte  <otte@gnome.org>
9234
9235         * docs/manual/helloworld.xml:
9236           s/audiosink/osssink (patch by Patrick Guimond)
9237
9238 2004-05-07  David Schleef  <ds@schleef.org>
9239
9240         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
9241         since it contains important stuff.
9242
9243 2004-05-07  David Schleef  <ds@schleef.org>
9244
9245         * testsuite/caps/caps.c: (test3), (main): A check for appending
9246         ANY caps.
9247
9248 2004-05-07  David Schleef  <ds@schleef.org>
9249
9250         * common/m4/as-compiler-flag.m4: Properly quote arguments,
9251         which may contain commas.  Fixes detection of -Wa,-mregnames
9252
9253 2004-05-06  David Schleef  <ds@schleef.org>
9254
9255         Changes to handle compilers that don't have variadic macro
9256         support.  In particular, glib headers define some inlines
9257         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
9258         builds.
9259         * gst/Makefile.am:
9260         * gst/cothreads.c:
9261         * gst/elements/gstfdsink.c:
9262         * gst/elements/gstfdsrc.c:
9263         * gst/elements/gstfilesink.c:
9264         * gst/elements/gstfilesrc.c:
9265         * gst/gst_private.h:
9266         * gst/gstatomic.c:
9267         * gst/gstcaps.c: (gst_caps_append):
9268         * gst/gstcpu.c: (gst_cpuid_i386):
9269         * gst/gstelement.c:
9270         * gst/gsterror.c:
9271         * gst/gstfilter.c:
9272         * gst/gstinfo.h:
9273         * gst/gstprobe.c:
9274         * gst/gstquery.c:
9275         * gst/gstregistry.c:
9276         * gst/gststructure.c:
9277         * gst/gsttaginterface.c:
9278         * gst/gsttrace.c: (gst_trace_new):
9279         * gst/gsttrashstack.c:
9280         * gst/gsturi.c:
9281         * gst/gstvalue.c:
9282         * gst/parse/grammar.y:
9283         * gst/parse/parse.l:
9284         * tools/gst-inspect.c: (main):
9285         * tools/gst-launch.c: (main):
9286         * tools/gst-xmlinspect.c: (PUT_STRING):
9287
9288 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9289
9290         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9291         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9292         * gst/elements/gstfilesrc.h:
9293           send NEW_MEDIA events correctly
9294         * gst/elements/gsttypefindelement.c: (start_typefinding),
9295         (gst_type_find_element_handle_event):
9296           restart typefinding when we get a NEW_MEDIA event
9297         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
9298         (gst_bin_dispose):
9299           don't die when someone removes elements in callbacks
9300         * gst/gstelement.c: (gst_element_change_state):
9301           improve debugging
9302         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
9303           we need a NEW_MEDIA event to engage a link
9304         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
9305           don't g_print debugging stuff
9306         * testsuite/caps/simplify.c: (check_caps):
9307
9308 2004-05-04  Benjamin Otte  <otte@gnome.org>
9309
9310         * gst/parse/grammar.y:
9311           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
9312
9313 2004-05-04  Benjamin Otte  <otte@gnome.org>
9314
9315         * testsuite/caps/renegotiate.c: (main):
9316           improve output in error case
9317
9318 2004-05-04  Benjamin Otte  <otte@gnome.org>
9319
9320         * gst/parse/grammar.y:
9321           fix assert to not trigger when there's no error argument
9322         * gst/parse/parse.l:
9323           fix definition of caps to allow more than two structures
9324         * testsuite/caps/Makefile.am:
9325         * testsuite/caps/renegotiate.c: (main):
9326           it's sinesrc and works in that case
9327
9328 2004-05-04  Wim Taymans  <wim@fluendo.com>
9329
9330         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
9331         (group_dec_link), (gst_opt_scheduler_pad_unlink):
9332         when removing an element from a group, we always need to
9333         decrement the link count that this group had with other 
9334         groups through the element.
9335         added an extra assert to catch inconsistencies when decrementing
9336         the link count.
9337
9338 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9339
9340         * configure.ac:
9341         * docs/gst/Makefile.am:
9342         * docs/gst/gstreamer-sections.txt:
9343         * docs/gst/tmpl/gstcompat.sgml:
9344         * examples/appreader/Makefile.am:
9345         * examples/cutter/Makefile.am:
9346         * examples/events/Makefile.am:
9347         * examples/helloworld/Makefile.am:
9348         * examples/helloworld2/Makefile.am:
9349         * examples/launch/Makefile.am:
9350         * examples/manual/Makefile.am:
9351         * examples/mixer/Makefile.am:
9352         * examples/pingpong/Makefile.am:
9353         * examples/plugins/Makefile.am:
9354         * examples/queue/Makefile.am:
9355         * examples/queue2/Makefile.am:
9356         * examples/queue3/Makefile.am:
9357         * examples/queue4/Makefile.am:
9358         * examples/retag/Makefile.am:
9359         * examples/thread/Makefile.am:
9360         * examples/typefind/Makefile.am:
9361         * examples/xml/Makefile.am:
9362         * gst/Makefile.am:
9363         * gst/autoplug/Makefile.am:
9364         * gst/elements/Makefile.am:
9365         * gst/gstcompat.h:
9366         * gst/indexers/Makefile.am:
9367         * gst/parse/Makefile.am:
9368         * gst/registries/Makefile.am:
9369         * gst/schedulers/Makefile.am:
9370         * libs/gst/bytestream/Makefile.am:
9371         * libs/gst/control/Makefile.am:
9372         * libs/gst/getbits/Makefile.am:
9373         * po/af.po:
9374         * po/az.po:
9375         * po/en_GB.po:
9376         * po/fr.po:
9377         * po/nl.po:
9378         * po/sr.po:
9379         * po/sv.po:
9380         * po/tr.po:
9381         * po/uk.po:
9382         * tests/Makefile.am:
9383         * tests/bufspeed/Makefile.am:
9384         * tests/instantiate/Makefile.am:
9385         * tests/memchunk/Makefile.am:
9386         * tests/muxing/Makefile.am:
9387         * tests/negotiation/Makefile.am:
9388         * tests/probes/Makefile.am:
9389         * tests/sched/Makefile.am:
9390         * tests/seeking/Makefile.am:
9391         * tests/threadstate/Makefile.am:
9392         * testsuite/caps/Makefile.am:
9393         * testsuite/cleanup/Makefile.am:
9394         * testsuite/dlopen/Makefile.am:
9395         * testsuite/dynparams/Makefile.am:
9396         * testsuite/plugin/Makefile.am:
9397         * testsuite/states/Makefile.am:
9398         * tools/Makefile.am:
9399           reorganize compile/link flags to be consistent
9400           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
9401
9402 2004-05-04  David Schleef  <ds@schleef.org>
9403
9404         The "once more, with feeling" check-in.
9405         * testsuite/caps/Makefile.am: dist caps_strings
9406         * testsuite/caps/renegotiate.c: (main): This test triggers a
9407           segfault in the core.  Marking as failing.
9408
9409 2004-05-03  David Schleef  <ds@schleef.org>
9410
9411         * testsuite/caps/deserialize.c: (main): Fix problems noticed
9412           by the build bots.
9413         * testsuite/caps/renegotiate.c: (main): Same.
9414
9415 2004-05-03  David Schleef  <ds@schleef.org>
9416
9417         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
9418
9419 2004-05-03  David Schleef  <ds@schleef.org>
9420
9421         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
9422           variable to find our source file.
9423
9424 2004-05-03  David Schleef  <ds@schleef.org>
9425
9426         * configure.ac:  Link plugins with libgstreamer and dependent
9427           libraries
9428         * testsuite/caps/Makefile.am:
9429         * testsuite/caps/caps_strings:
9430         * testsuite/caps/deserialize.c: (main): Add a little test to slog
9431           through a file of caps strings and test each one
9432
9433 2004-05-04  Benjamin Otte  <otte@gnome.org>
9434
9435         * libs/gst/bytestream/Makefile.am:
9436         * libs/gst/bytestream/adapter.c: 
9437         * libs/gst/bytestream/adapter.h:
9438           add GstAdapter, similar to bytestream, but doesn't require ugly event
9439           handling or uglier loopbased elements
9440
9441 2004-05-03  David Schleef  <ds@schleef.org>
9442
9443         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
9444         * testsuite/caps/erathostenes.c:
9445         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
9446
9447 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9448
9449         * docs/pwg/pwg.xml:
9450           remove hardcoded stylesheet path (duh)
9451         * docs/random/release:
9452         * docs/gst/gstreamer-sections.txt:
9453         * gst/Makefile.am:
9454         * gst/gst.h:
9455         * gst/gst_private.h:
9456         * gst/gstcaps.c:
9457         * gst/gstevent.c:
9458         * gst/gstformat.c:
9459         * gst/gstinfo.c:
9460         * gst/gstinfo.h:
9461         * gst/gstinterface.c:
9462         * gst/gstmemchunk.c:
9463         * gst/gstprobe.c:
9464         * gst/gstquery.c:
9465         * gst/gstregistry.c:
9466         * gst/gstregistrypool.c:
9467         * gst/gststructure.c:
9468         * gst/gsttaginterface.c:
9469         * gst/gstthread.c:
9470         * gst/gsttrace.c:
9471         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
9472         * gst/gsturi.c:
9473         * gst/gstvalue.c:
9474           deprecate gst_info; remove gstlog.h
9475    
9476
9477 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9478
9479         * Makefile.am:
9480         * po/en_GB.po:
9481         * po/sv.po:
9482         * po/uk.po:
9483           updated translations
9484
9485 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9486
9487         * gst/gstbin.c: (gst_bin_dispose):
9488           better debugging
9489
9490 2004-05-03  Johan Dahlin  <johan@gnome.org>
9491
9492         * gst/schedulers/gstoptimalscheduler.c
9493         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
9494         really is a GstElement. Avoids critical when running gst-launch -v
9495         and a oggdemux/decoding pipeline.
9496
9497 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9498
9499         * docs/gst/tmpl/gstpipeline.sgml :
9500         * docs/manual/elements-api.xml :
9501                 doc fix by Patrick Guimond (Protector) from devel ML
9502                 reviewed by ronald
9503
9504 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9505
9506         * docs/gst/Makefile.am :
9507         * docs/libs/Makefile.am :
9508                 apply a patch from Arwed v. Merkatz so that gtk-doc
9509                 generated docs install (same for .devhelp file)
9510                 (fixes part 1 of #138836)
9511
9512 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9513
9514         * docs/faq/dependencies.xml: typo
9515         * docs/faq/getting.xml :
9516             - fix download URL for new gstreamer site
9517             - hide sf.net download page as latest version aren't there
9518             - fix apt URLs
9519             - fill "get via CVS" paragraph (link to dev page on the site)
9520         * docs/faq/general.xml:
9521             hide status tables as they no more exists
9522             change case on plugins license file to reflect reality
9523         * docs/faq/troubleshooting.xml:
9524             remove the wiki question/answer as there is no more wiki
9525
9526 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9527
9528         * gst/gsterror.h:
9529           include the headers needed for declarations used in this header
9530
9531 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9532
9533         * docs/random/uraeus/gstreamer_and_midi.txt :
9534           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
9535           (fixes #132288)
9536
9537 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
9538
9539         reviewed by Benjamin Otte  <otte@gnome.org>
9540
9541         * gst/schedulers/gthread-cothreads.h:
9542           free allocated data for main cothread, too when destroying context
9543           (fixes #141417)
9544
9545 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9546
9547         * docs/manual/goals.xml : remove duplicated paragraph at end 
9548         of doc page (fixes #141448)
9549
9550 2004-04-29  David Schleef  <ds@schleef.org>
9551
9552         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
9553         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
9554
9555 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9556
9557         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
9558           fix property
9559         * gst/gstcaps.c:
9560           fix doc string
9561         * po/POTFILES.in:
9562           rename typefind source file
9563
9564 2004-04-28  David Schleef  <ds@schleef.org>
9565
9566         Several new files from Steve Lhomme's MSVC patch (bug #141317):
9567         * win32/GStreamer.vcproj:
9568         * win32/Makefile:
9569         * win32/config.h:
9570         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
9571         (_trewinddir), (_ttelldir), (_tseekdir):
9572         * win32/dirent.h:
9573         * win32/gst-inspect.vcproj:
9574         * win32/gst-launch.vcproj:
9575         * win32/gst-register.vcproj:
9576         * win32/gstbytestream.vcproj:
9577         * win32/gstelements.vcproj:
9578         * win32/gstoptimalscheduler.vcproj:
9579         * win32/gstspider.vcproj:
9580         * win32/gtchar.h:
9581         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
9582         * win32/mman.h:
9583         * win32/mman.inl:
9584         * win32/msvc71.sln:
9585
9586 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9587
9588         * gst/gst.c: (init_post):
9589         * gst/gstinfo.c:
9590           remove useless _gst_progname stuff
9591         * tools/gst-inspect.c: (print_field), (print_caps):
9592           improve caps output
9593
9594 2004-04-28  David Schleef  <ds@schleef.org>
9595
9596         Disable parsing of a lot of files that aren't part of the
9597         exported API.  Move corresponding template files to old/,
9598         waiting for removal when they don't contain anything
9599         interesting.
9600         * docs/gst/Makefile.am:
9601         * docs/gst/gstreamer-sections.txt:
9602         * docs/gst/tmpl/cothreads.sgml:
9603         * docs/gst/tmpl/cothreads_compat.sgml:
9604         * docs/gst/tmpl/gettext.sgml:
9605         * docs/gst/tmpl/gobject2gtk.sgml:
9606         * docs/gst/tmpl/grammar.tab.sgml:
9607         * docs/gst/tmpl/gst-i18n-app.sgml:
9608         * docs/gst/tmpl/gst-i18n-lib.sgml:
9609         * docs/gst/tmpl/gst_private.sgml:
9610         * docs/gst/tmpl/gstaggregator.sgml:
9611         * docs/gst/tmpl/gstarch.sgml:
9612         * docs/gst/tmpl/gstatomic_impl.sgml:
9613         * docs/gst/tmpl/gstbufferstore.sgml:
9614         * docs/gst/tmpl/gstdata_private.sgml:
9615         * docs/gst/tmpl/gstdisksink.sgml:
9616         * docs/gst/tmpl/gstdisksrc.sgml:
9617         * docs/gst/tmpl/gstelementfactory.sgml:
9618         * docs/gst/tmpl/gstextratypes.sgml:
9619         * docs/gst/tmpl/gstfakesink.sgml:
9620         * docs/gst/tmpl/gstfakesrc.sgml:
9621         * docs/gst/tmpl/gstfdsink.sgml:
9622         * docs/gst/tmpl/gstfdsrc.sgml:
9623         * docs/gst/tmpl/gstfilesink.sgml:
9624         * docs/gst/tmpl/gstfilesrc.sgml:
9625         * docs/gst/tmpl/gsthttpsrc.sgml:
9626         * docs/gst/tmpl/gstidentity.sgml:
9627         * docs/gst/tmpl/gstindexfactory.sgml:
9628         * docs/gst/tmpl/gstmarshal.sgml:
9629         * docs/gst/tmpl/gstmd5sink.sgml:
9630         * docs/gst/tmpl/gstmultidisksrc.sgml:
9631         * docs/gst/tmpl/gstmultifilesrc.sgml:
9632         * docs/gst/tmpl/gstpadtemplate.sgml:
9633         * docs/gst/tmpl/gstpipefilter.sgml:
9634         * docs/gst/tmpl/gstschedulerfactory.sgml:
9635         * docs/gst/tmpl/gstsearchfuncs.sgml:
9636         * docs/gst/tmpl/gstshaper.sgml:
9637         * docs/gst/tmpl/gstspider.sgml:
9638         * docs/gst/tmpl/gstspideridentity.sgml:
9639         * docs/gst/tmpl/gststatistics.sgml:
9640         * docs/gst/tmpl/gsttee.sgml:
9641         * docs/gst/tmpl/gsttimecache.sgml:
9642         * docs/gst/tmpl/gsttypefind.sgml:
9643         * docs/gst/tmpl/gsttypefindfactory.sgml:
9644         * docs/gst/tmpl/gstxmlregistry.sgml:
9645         * docs/gst/tmpl/gthread-cothreads.sgml:
9646         * docs/gst/tmpl/old/cothreads.sgml:
9647         * docs/gst/tmpl/old/cothreads_compat.sgml:
9648         * docs/gst/tmpl/old/gettext.sgml:
9649         * docs/gst/tmpl/old/gobject2gtk.sgml:
9650         * docs/gst/tmpl/old/grammar.tab.sgml:
9651         * docs/gst/tmpl/old/gst-i18n-app.sgml:
9652         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
9653         * docs/gst/tmpl/old/gst_private.sgml:
9654         * docs/gst/tmpl/old/gstaggregator.sgml:
9655         * docs/gst/tmpl/old/gstarch.sgml:
9656         * docs/gst/tmpl/old/gstatomic_impl.sgml:
9657         * docs/gst/tmpl/old/gstbufferstore.sgml:
9658         * docs/gst/tmpl/old/gstdata_private.sgml:
9659         * docs/gst/tmpl/old/gstdisksink.sgml:
9660         * docs/gst/tmpl/old/gstdisksrc.sgml:
9661         * docs/gst/tmpl/old/gstelementfactory.sgml:
9662         * docs/gst/tmpl/old/gstextratypes.sgml:
9663         * docs/gst/tmpl/old/gstfakesink.sgml:
9664         * docs/gst/tmpl/old/gstfakesrc.sgml:
9665         * docs/gst/tmpl/old/gstfdsink.sgml:
9666         * docs/gst/tmpl/old/gstfdsrc.sgml:
9667         * docs/gst/tmpl/old/gstfilesink.sgml:
9668         * docs/gst/tmpl/old/gstfilesrc.sgml:
9669         * docs/gst/tmpl/old/gsthttpsrc.sgml:
9670         * docs/gst/tmpl/old/gstidentity.sgml:
9671         * docs/gst/tmpl/old/gstindexfactory.sgml:
9672         * docs/gst/tmpl/old/gstmarshal.sgml:
9673         * docs/gst/tmpl/old/gstmd5sink.sgml:
9674         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
9675         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
9676         * docs/gst/tmpl/old/gstpadtemplate.sgml:
9677         * docs/gst/tmpl/old/gstpipefilter.sgml:
9678         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
9679         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
9680         * docs/gst/tmpl/old/gstshaper.sgml:
9681         * docs/gst/tmpl/old/gstspider.sgml:
9682         * docs/gst/tmpl/old/gstspideridentity.sgml:
9683         * docs/gst/tmpl/old/gststatistics.sgml:
9684         * docs/gst/tmpl/old/gsttee.sgml:
9685         * docs/gst/tmpl/old/gsttimecache.sgml:
9686         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
9687         * docs/gst/tmpl/old/gstxmlregistry.sgml:
9688         * docs/gst/tmpl/old/gthread-cothreads.sgml:
9689         * docs/gst/tmpl/old/types.sgml:
9690         * docs/gst/tmpl/types.sgml:
9691
9692         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
9693         gtkdoc-scan doesn't like files with the same name in different
9694         directories.
9695         * gst/elements/Makefile.am:
9696         * gst/elements/gstelements.c:
9697         * gst/elements/gsttypefind.c: 
9698         * gst/elements/gsttypefind.h:
9699         * gst/elements/gsttypefindelement.c:
9700         * gst/elements/gsttypefindelement.h:
9701
9702 2004-04-28  David Schleef  <ds@schleef.org>
9703
9704         A bunch of portability fixes, derived from Steve Lhomme's MSVC
9705         patch (bug #141317):
9706         * gst/gst-i18n-lib.h: Allow disabling gettext.
9707         * gst/gstatomic_impl.h: disable warning when it's dumb.
9708         * gst/gstclock.c: fix include
9709         * gst/gstcompat.h: fix variadic macro
9710         * gst/gstinfo.c: fix include
9711         * gst/gstmacros.h: add defines for inlines on MSVC
9712         * gst/gstplugin.c: fix includes
9713         * gst/gstregistry.c: fix includes
9714         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
9715         * gst/gstsystemclock.c: fix include
9716         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
9717         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
9718         * gst/registries/gstxmlregistry.c:
9719         (gst_xml_registry_parse_element_factory): fix use of non-portable
9720         functions
9721         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
9722         * libs/gst/control/dparammanager.h: same
9723
9724 2004-04-28  David Schleef  <ds@schleef.org>
9725
9726         Move a bunch of unused files to old/ with names that are
9727         not case-insensitive-unique.  These files still contain some
9728         useful information that needs to be merged into gstbin.sgml,
9729         etc., so they shouldn't be deleted yet.
9730         * docs/gst/tmpl/GstBin.sgml:
9731         * docs/gst/tmpl/GstBuffer.sgml:
9732         * docs/gst/tmpl/GstCaps.sgml:
9733         * docs/gst/tmpl/GstClock.sgml:
9734         * docs/gst/tmpl/GstCompat.sgml:
9735         * docs/gst/tmpl/GstData.sgml:
9736         * docs/gst/tmpl/GstElement.sgml:
9737         * docs/gst/tmpl/GstEvent.sgml:
9738         * docs/gst/tmpl/GstIndex.sgml:
9739         * docs/gst/tmpl/GstStructure.sgml:
9740         * docs/gst/tmpl/GstTag.sgml:
9741         * docs/gst/tmpl/old/GstBin.sgml:
9742         * docs/gst/tmpl/old/GstBuffer.sgml:
9743         * docs/gst/tmpl/old/GstCaps.sgml:
9744         * docs/gst/tmpl/old/GstClock.sgml:
9745         * docs/gst/tmpl/old/GstCompat.sgml:
9746         * docs/gst/tmpl/old/GstData.sgml:
9747         * docs/gst/tmpl/old/GstElement.sgml:
9748         * docs/gst/tmpl/old/GstEvent.sgml:
9749         * docs/gst/tmpl/old/GstIndex.sgml:
9750         * docs/gst/tmpl/old/GstStructure.sgml:
9751         * docs/gst/tmpl/old/GstTag.sgml:
9752
9753 2004-04-28  David Schleef  <ds@schleef.org>
9754
9755         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
9756         (gst_caps_append), (gst_caps_append_structure),
9757         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
9758         (gst_caps_set_simple), (gst_caps_set_simple_valist),
9759         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
9760         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
9761         (gst_caps_intersect), (gst_caps_normalize),
9762         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
9763         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
9764         * gst/gstcaps.h: use GST_IS_CAPS().
9765
9766 2004-04-26  David Schleef  <ds@schleef.org>
9767
9768         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
9769         assembly.  gcc doesn't handle it correctly. (bug #141083)
9770         * gst/gsttrashstack.h: same
9771
9772 2004-04-25  Benjamin Otte  <otte@gnome.org>
9773
9774         * gst/gstelement.c: (gst_element_change_state):
9775           fix assertion to do an int comparison
9776
9777 2004-04-25  Benjamin Otte  <otte@gnome.org>
9778
9779         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9780           better debugging output on error
9781
9782 2004-04-25  Benjamin Otte  <otte@gnome.org>
9783
9784         * gst/gstcaps.c: (gst_caps_subtract):
9785           fix memleak
9786
9787 2004-04-23  Benjamin Otte  <otte@gnome.org>
9788
9789         * gst/gstvalue.c: (gst_value_compare_buffer),
9790         (_gst_value_initialize):
9791           add comparison function for buffers
9792
9793 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9794
9795         * docs/pwg/pwg.xml:
9796           Just found out that this so-called "ima-wav" format is really
9797           just "dvi adpcm" (according to the MS WAV documentation). So
9798           renaming it. We didn't use it yet anyway.
9799
9800 2004-04-23  Benjamin Otte  <otte@gnome.org>
9801
9802         * gst/gstcaps.c: (gst_caps_is_always_compatible):
9803           call gst_caps_is_subset
9804
9805 2004-04-23  Benjamin Otte  <otte@gnome.org>
9806
9807         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
9808         (gst_caps_is_subset):
9809           add documentation
9810
9811 2004-04-23  Benjamin Otte  <otte@gnome.org>
9812           
9813         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
9814         (gst_caps_structure_subtract), (gst_caps_subtract),
9815         (gst_caps_structure_figure_out_union),
9816         (gst_caps_structure_simplify), (gst_caps_do_simplify):
9817           fix simplifying and subtracting not working correctly with optional
9818           properties
9819           solve assorted problems that make it now simplify ebven more
9820         * docs/gst/tmpl/gstcaps.sgml:
9821         * gst/gstcaps.h:
9822           make gst_caps_do_simplify return a bool to indicate if it simplified
9823         * testsuite/caps/simplify.c: (main):
9824           add more checks. The tests is quite a bit useless right now because
9825           the core is heavily simplifying itself.
9826         * testsuite/caps/caps.h:
9827           fix caps to contain all optional properties
9828
9829 2004-04-22  Benjamin Otte  <otte@gnome.org>
9830
9831         * docs/gst/tmpl/gstcaps.sgml:
9832         * docs/gst/tmpl/gstfilesrc.sgml:
9833         * docs/gst/tmpl/gststructure.sgml:
9834         * docs/gst/tmpl/gstvalue.sgml:
9835           update for recent API changes
9836         * gst/gstcaps.c: (gst_caps_do_simplify):
9837           fix to stop trying with a freed structure
9838         * gst/gstpad.c: (gst_pad_link_fixate):
9839           simplify caps
9840         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
9841           remove C++ comment
9842         * gst/gstpad.h:
9843           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
9844         * gst/gststructure.c: (gst_structure_value_get_generic_type),
9845         (gst_structure_to_string):
9846           keep the correct type when using lists of ranges
9847         * gst/gstvalue.c: (gst_value_list_prepend_value),
9848         (gst_value_list_append_value):
9849           copy the value before adding to the list (d'oh)
9850         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
9851         (gst_value_subtract_int_range_int_range):
9852           handle overflows correctly
9853         * gst/gstvalue.c: (gst_value_subtract_from_list):
9854           fix memleak
9855         * testsuite/caps/caps.h:
9856           add a caps that caused segfaults
9857
9858 2004-04-22  Benjamin Otte  <otte@gnome.org>
9859
9860         * testsuite/refcounting/pad.c: (main):
9861           fix test
9862
9863 2004-04-22  Benjamin Otte  <otte@gnome.org>
9864
9865         * gst/gstcaps.c: (gst_caps_subtract):
9866           allow subtracting ANY and EMPTY from ANY caps
9867
9868 2004-04-22  Benjamin Otte  <otte@gnome.org>
9869
9870         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
9871         (gst_caps_union):
9872           only simplify in functions that create new caps. Simplifying in
9873           gst_caps_append breaks tests.
9874
9875 2004-04-22  Benjamin Otte  <otte@gnome.org>
9876
9877         * gst/gstcaps.c: (gst_caps_structure_simplify):
9878           unset GValue after use
9879         * gst/gstcaps.c: (gst_caps_append), 
9880         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
9881           use gst_caps_simplify (reduces registry size by 30%)
9882         * gst/gstpad.c: (gst_pad_template_new):
9883           don't allow NULL caps
9884
9885 2004-04-22  Benjamin Otte  <otte@gnome.org>
9886
9887         * docs/gst/gstreamer-sections.txt:
9888           add gst_caps_do_simplify
9889         * gst/gstcaps.c:
9890           add documentation for gst_caps_do_simplify
9891         * gst/gstvalue.h:
9892           fix typo in gst_value_register_subtract_func declaration for gst-doc
9893
9894 2004-04-22  Benjamin Otte  <otte@gnome.org>
9895
9896         * gst/gstcaps.c: (gst_caps_from_string_inplace):
9897           fix bug when converting from empty string.
9898         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
9899         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
9900           use gst_caps_new_empty to allocate a new caps. Only that function
9901           allocates memory for caps now.
9902         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
9903         (gst_caps_remove_structure):
9904           add ability to remove one structure (but not to header yet)
9905         * gst/gstcaps.c: (gst_caps_compare_structures),
9906         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
9907         (gst_caps_structure_simplify), (gst_caps_do_simplify),
9908         * gst/gstcaps.h:
9909           add gst_caps_do_simplify that tries to simplify a caps in place.
9910           Deprecate old gst_caps_simplify function.
9911         * testsuite/caps/caps.h:
9912           add caps.h containing a common set of caps to test against.
9913         * testsuite/caps/sets.c: (check_caps), (main):
9914           use it.
9915         * testsuite/caps/.cvsignore:
9916         * testsuite/caps/Makefile.am:
9917         * testsuite/caps/simplify.c: (check_caps), (main):
9918           add test to check correctness and efficency of caps simplification.
9919
9920 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
9921
9922         reviewed by Benjamin Otte  <otte@gnome.org>
9923
9924         * gst/gstparse.c: (_gst_parse_escape):
9925           Free the GString used in _gst_parse_escape()
9926
9927 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9928
9929         * gst/gstpad.c: (gst_pad_link_negotiate):
9930           refuse to link if the link is not possible
9931         * configure.ac:
9932         * testsuite/Makefile.am:
9933         * testsuite/negotiation/.cvsignore:
9934         * testsuite/negotiation/Makefile.am:
9935         * testsuite/negotiation/pad_link.c: (main):
9936           add test that checks the above behaviour
9937
9938 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9939
9940         * docs/gst/gstreamer-sections.txt:
9941           add newly added API
9942
9943 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9944
9945         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9946         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
9947         (gst_filesrc_open_file), (gst_filesrc_close_file),
9948         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
9949         * gst/elements/gstfilesrc.h:
9950           add support for non-regular files (#140734)
9951
9952 2004-04-21  Benjamin Otte  <otte@gnome.org>
9953
9954         * gst/gstpad.c: (gst_pad_link_fixate):
9955           add sophisticated error checking code to see if fixation functions
9956           did their fixation right
9957
9958 2004-04-21  Benjamin Otte  <otte@gnome.org>
9959
9960         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
9961           check for ANY caps before appending/unioning
9962         * gst/gstcaps.c: (gst_caps_is_subset),
9963         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
9964         (gst_caps_structure_subtract), (gst_caps_subtract):
9965         * gst/gstcaps.h:
9966           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
9967           the API. deprecate gst_caps_is_equal_fixed
9968         * gst/gstpad.c: (gst_pad_try_set_caps):
9969         * gst/gstqueue.c: (gst_queue_link):
9970           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
9971         * gst/gststructure.c: (gst_structure_get_name_id):
9972         * gst/gststructure.h:
9973           add function gst_structure_get_name_id
9974         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
9975         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
9976         (gst_value_subtract_int_range_int_range),
9977         (gst_value_subtract_double_double_range),
9978         (gst_value_subtract_double_range_double),
9979         (gst_value_subtract_double_range_double_range),
9980         (gst_value_subtract_from_list), (gst_value_subtract_list),
9981         (gst_value_can_intersect), (gst_value_subtract),
9982         (gst_value_can_subtract), (gst_value_register_subtract_func),
9983         (_gst_value_initialize):
9984         * gst/gstvalue.h:
9985           add support for subtracting values from each other. Note that
9986           subtracting means subtracting as in set theory. Required for caps
9987           stuff above.
9988         * testsuite/caps/.cvsignore:
9989         * testsuite/caps/Makefile.am:
9990         * testsuite/caps/erathostenes.c: (erathostenes), (main):
9991         * testsuite/caps/sets.c: (check_caps), (main):
9992         * testsuite/caps/subtract.c: (check_caps), (main):
9993           add tests for subtraction and equality code.
9994
9995 2004-04-20  David Schleef  <ds@schleef.org>
9996
9997         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
9998         * gst/indexers/Makefile.am:
9999         * gst/schedulers/Makefile.am:
10000         * libs/gst/bytestream/Makefile.am:
10001         * libs/gst/control/Makefile.am:
10002         * libs/gst/getbits/Makefile.am:
10003
10004 2004-04-20  David Schleef  <ds@schleef.org>
10005
10006         * common/as-libtool.mak: Fine-tune DLL building.
10007         * configure.ac: Link plugins against libgstreamer.  Define plugindir
10008         (like gst-plugins)
10009         * examples/plugins/Makefile.am: remove plugindir
10010         * gst/autoplug/Makefile.am: DLL building fixes
10011         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
10012         Windows.
10013         * gst/elements/gstelements.c: Conditionally disable pipefilter.
10014         * gst/indexers/Makefile.am: DLL building fixes
10015         * gst/schedulers/Makefile.am: DLL building fixes.
10016         * libs/gst/bytestream/Makefile.am: DLL building fixes.
10017         * libs/gst/control/Makefile.am: same
10018         * libs/gst/getbits/Makefile.am: same
10019         * testsuite/Makefile.am: New dlopen directory
10020         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
10021         when dlopened.
10022         * testsuite/dlopen/dlopen_gst.c: (main): same
10023         * testsuite/dlopen/loadgst.c: (do_test): same
10024
10025 2004-04-20  David Schleef  <ds@schleef.org>
10026
10027         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
10028         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
10029
10030 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10031
10032         * gst/gstelement.c: (gst_element_wait),
10033         (gst_element_set_time_delay), (gst_element_change_state):
10034           Use GST_TIME_*
10035
10036 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10037
10038         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
10039         (gst_spider_identity_plug):
10040           improve debugging messages
10041         * gst/gstbin.c: (gst_bin_remove_func):
10042           make sure the state_change function is only called with simple state
10043           transitions
10044
10045 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10046
10047         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
10048         (gst_fakesink_set_property), (gst_fakesink_chain):
10049         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
10050         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
10051         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
10052         * gst/elements/gstidentity.c: (gst_identity_chain),
10053         (gst_identity_set_property):
10054         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
10055         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
10056           add warnings to _set_property for unknown arguments
10057           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
10058
10059 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10060
10061         * Makefile.am:
10062         * docs/manuals.mak:
10063           add .po file download snippet
10064           fix a bug in the doc makefile
10065
10066 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10067
10068         * Makefile.am:
10069         * po/LINGUAS:
10070         * po/en_GB.po:
10071           Added en_GB translation (Gareth Owen)
10072
10073 2004-04-20  Johan Dahlin  <johan@gnome.org>
10074
10075         * gst/gstpad.c (_invent_event): Clean up
10076
10077 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10078
10079         * testsuite/caps/filtercaps.c: (main):
10080           fix test to test things correctly (caps are complicated)
10081
10082 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10083
10084         * testsuite/caps/Makefile.am:
10085         * testsuite/caps/filtercaps.c: (main):
10086           add test (that doesn't work right now, but should)
10087
10088 2004-04-19  David Schleef  <ds@schleef.org>
10089
10090         * configure.ac: Add test for allowing unaligned access.  Add define
10091         to put in gstconfig.h.
10092         * docs/gst/gstreamer-sections.txt: New symbols
10093         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
10094         * docs/gst/tmpl/gstfilesrc.sgml:
10095         * docs/gst/tmpl/gstparse.sgml:
10096         * docs/gst/tmpl/gsttypes.sgml:
10097         * docs/gst/tmpl/gstutils.sgml:
10098         * docs/gst/tmpl/gstvalue.sgml:
10099         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
10100         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
10101         on most !i386/!powerpc architectures.  From Daniel Gazard
10102         <daniel.gazard@free.fr>.  (bug #140156)
10103         * po/af.po: Check in changes made by gettext.
10104         * po/az.po:
10105         * po/fr.po:
10106         * po/nl.po:
10107         * po/sr.po:
10108         * po/sv.po:
10109
10110 2004-04-20  Benjamin Otte  <otte@gnome.org>
10111
10112         * gst/schedulers/entryscheduler.c: 
10113         (gst_entry_scheduler_yield):
10114           refuse to yield when decoupled elements insist on doing that.
10115           At least it's better than crashing
10116
10117 2004-04-19  David Schleef  <ds@schleef.org>
10118
10119         * docs/libs/Makefile.am: Change sinclude to include
10120         * docs/gst/Makefile.am: same
10121         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
10122
10123 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10124
10125         * po/LINGUAS:
10126         * po/uk.po:
10127           Added Ukrainian translation (Maxim V. Dziumanenko)
10128
10129 2004-04-19  Johan Dahlin  <johan@gnome.org>
10130
10131         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
10132         checking here, do it before calling the function.
10133         Clean up, use for loops instead of while loops while iterating
10134         over lists.
10135
10136         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
10137         in debug message.
10138         (gst_spider_create_and_plug): Improve debug message.
10139         General: Replace while loops which iterates over GLists with for
10140         loops. Which are much cleaner, improves readability, especially
10141         for gst_spider_identity_plug
10142
10143         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
10144         fixes bug 140477
10145
10146 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10147
10148         * po/LINGUAS:
10149         * po/tr.po:
10150           Added Turkish translation (Baris Cicek)
10151
10152 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10153
10154         * docs/faq/troubleshooting.xml:
10155           Mention gst-register in the FAQ (fixes 139045).
10156
10157 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10158
10159         * docs/gst/gstreamer-sections.txt:
10160
10161 2004-04-17  Benjamin Otte  <otte@gnome.org>
10162
10163         * gst/gstelement.c: (gst_element_dispose):
10164           simplify
10165         * gst/gstpad.c: (gst_pad_call_chain_function):
10166           don't create loads of events due to bad macro usage
10167
10168 2004-04-16  David Schleef  <ds@schleef.org>
10169
10170         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
10171         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
10172         * gst/gstvalue.c: (gst_value_serialize_buffer),
10173         (gst_value_deserialize_buffer), (gst_type_is_fixed),
10174         (_gst_value_initialize): Create a new function gst_type_is_fixed()
10175         to indicate types that are fixed wrt caps or not.  Switching to
10176         this function fixes (bug #140298).
10177         * gst/gstvalue.h:
10178
10179 2004-04-16  David Schleef  <ds@schleef.org>
10180
10181         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
10182         for GST_UNALIGNED_ACESS, since we essentially know which archs
10183         are ok.
10184
10185 2004-04-17  Benjamin Otte  <otte@gnome.org>
10186
10187         * docs/gst/Makefile.am:
10188           ignore gst/parse directory when building docs (fixes #140205)
10189
10190 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10191
10192         * testsuite/refcounting/mem.c: (vmsize):
10193           do error checking
10194
10195 2004-04-16  Johan Dahlin  <johan@gnome.org>
10196
10197         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
10198         and gst_pad_call_get_function.
10199
10200 2004-04-15  David Schleef  <ds@schleef.org>
10201
10202         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
10203         checks if we can access unaligned memory.
10204         * configure.ac: Use it.
10205
10206 2004-04-16  Benjamin Otte  <otte@gnome.org>
10207
10208         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
10209         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
10210         * gst/elements/gstfilesrc.h:
10211           s/seek_happened/need_discont/ and require discont before sending any
10212           data
10213
10214 2004-04-15  David Schleef  <ds@schleef.org>
10215
10216         * gst/gstvalue.c: (gst_value_serialize_buffer),
10217         (gst_value_deserialize_buffer), (_gst_value_initialize):
10218         Register these types as fundamental types. (bug #140015)
10219
10220 2004-04-16  Benjamin Otte  <otte@gnome.org>
10221
10222         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
10223         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
10224         (gst_pad_pull):
10225           implement enforcing discont events before buffers are passed. This
10226           allows state changes of only some elements and later correctly going
10227           on where they left off (or in short: you can now set audio sinks to
10228           NULL to release the device when the pipeline is paused)
10229         * gst/gstpad.c: (gst_pad_call_chain_function),
10230         (gst_pad_call_get_function):
10231         * gst/gstpad.h:
10232           add gst_pad_call_chain_function and gst_pad_call_get_function for
10233           scheduler interaction. They are required because of the changes
10234           above.
10235         * gst/schedulers/entryscheduler.c: (get_buffer),
10236         (gst_entry_scheduler_chain_wrapper),
10237         (gst_entry_scheduler_get_wrapper),
10238         (gst_entry_scheduler_state_transition),
10239         (gst_entry_scheduler_pad_link):
10240         * gst/schedulers/gstbasicscheduler.c:
10241         (gst_basic_scheduler_chain_wrapper),
10242         (gst_basic_scheduler_src_wrapper),
10243         (gst_basic_scheduler_chainhandler_proxy),
10244         (gst_basic_scheduler_gethandler_proxy),
10245         (gst_basic_scheduler_cothreaded_chain),
10246         (gst_basic_scheduler_chain_elements):
10247         * gst/schedulers/gstoptimalscheduler.c:
10248         (get_group_schedule_function), (pad_clear_queued),
10249         (gst_opt_scheduler_pad_link):
10250           use the new functions instead of calling get/chain-functions
10251           directly.
10252
10253 2004-04-15  David Schleef  <ds@schleef.org>
10254
10255         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
10256         * docs/gst/tmpl/gstinfo.sgml: same
10257         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
10258         gtk-doc put here.
10259         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
10260         * examples/queue/queue.c: (main):  We iterate pipelines, not
10261         bins.  (bug #139996)
10262
10263 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10264
10265         * docs/pwg/advanced-types.xml:
10266           Add MS RLE support. Also document Qt RLE although I have no sample
10267           files for that yet. And document an extra property for ADPCM.
10268
10269 2004-04-15  David Schleef  <ds@schleef.org>
10270
10271         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
10272         (_gst_plugin_fault_handler_setup):  Disable more stuff on
10273         Windows.
10274
10275 2004-04-15  David Schleef  <ds@schleef.org>
10276
10277         * gst/gstinfo.c: (_gst_debug_init): Change some internal
10278         symbol names to not conflict with new gstinfo.h symbols.
10279         * gst/gstinfo.h: Add inline functions for all those crazy
10280         compilers that don't know how to handle variadic macros (MSVC).
10281
10282 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10283
10284         * configure.ac: bump nano to 1
10285
10286 === release 0.8.1 ===
10287
10288 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10289
10290         * NEWS:
10291         * RELEASE:
10292         * configure.ac:
10293           releasing 0.8.1, "Snow Brigade"
10294
10295 2004-04-14  David Schleef  <ds@schleef.org>
10296
10297         * testsuite/Makefile.am: define tests_ignore
10298         * testsuite/Rules: Added new tests_ignore, which get compiled,
10299         but not run (generally because they're inconsistent or have
10300         heisenbugs).  Now we can ensure all the .c files compile in
10301         testsuite/.
10302         * testsuite/bins/Makefile.am: define tests_ignore
10303         * testsuite/bytestream/Makefile.am:
10304         * testsuite/caps/Makefile.am:
10305         * testsuite/clock/Makefile.am:
10306         * testsuite/debug/Makefile.am:
10307         * testsuite/debug/global.c: (gst_debug_log_one),
10308         (gst_debug_log_two): Fix compilation problem.
10309         * testsuite/dynparams/Makefile.am:
10310         * testsuite/elements/Makefile.am:
10311         * testsuite/ghostpads/Makefile.am:
10312         * testsuite/indexers/Makefile.am:
10313         * testsuite/parse/Makefile.am:
10314         * testsuite/plugin/Makefile.am:
10315         * testsuite/refcounting/Makefile.am:
10316         * testsuite/refcounting/element_pad.c: (main): Don't return leak
10317         results, because it's not calculated correctly.
10318         * testsuite/refcounting/pad.c: (main): same
10319         * testsuite/states/Makefile.am:
10320         * testsuite/tags/Makefile.am:
10321         * testsuite/threads/Makefile.am:
10322
10323 2004-04-14  David Schleef  <ds@schleef.org>
10324
10325         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
10326         generating bad code around the cpu detection asm code.
10327
10328 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10329
10330         * tools/gst-inspect.c: (print_element_info):
10331           print numeric version of rank as well, since we added some - 1
10332           rank values to elements
10333
10334 2004-04-13  David Schleef  <ds@schleef.org>
10335
10336         * configure.ac:  Disable various code when compiling for MinGW.
10337         * gst/elements/Makefile.am:
10338         * gst/elements/gstelements.c:
10339         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10340         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
10341         * gst/registries/gstxmlregistry.c: (make_dir):
10342
10343 2004-04-13  David Schleef  <ds@schleef.org>
10344
10345         * gst/Makefile.am:
10346         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
10347         assembly.
10348         * gst/gstcpuid_i386.s: remove
10349
10350 2004-04-13  David Schleef  <ds@schleef.org>
10351
10352         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
10353         seems to think it needs to be done.
10354         * docs/gst/tmpl/gstfakesink.sgml:
10355         * docs/gst/tmpl/gstfakesrc.sgml:
10356         * docs/gst/tmpl/gstfdsink.sgml:
10357         * docs/gst/tmpl/gstfdsrc.sgml:
10358         * docs/gst/tmpl/gstfilesink.sgml:
10359         * docs/gst/tmpl/gstfilesrc.sgml:
10360         * docs/gst/tmpl/gstidentity.sgml:
10361         * docs/gst/tmpl/gstmd5sink.sgml:
10362         * docs/gst/tmpl/gstmultifilesrc.sgml:
10363         * docs/gst/tmpl/gstpipefilter.sgml:
10364         * docs/gst/tmpl/gstshaper.sgml:
10365         * docs/gst/tmpl/gstspider.sgml:
10366         * docs/gst/tmpl/gstspideridentity.sgml:
10367         * docs/gst/tmpl/gststatistics.sgml:
10368         * docs/gst/tmpl/gsttee.sgml:
10369         * docs/gst/tmpl/gsttypefind.sgml:
10370         * docs/gst/tmpl/gstutils.sgml:
10371
10372 2004-04-13  David Schleef  <ds@schleef.org>
10373
10374         * configure.ac: Changes to remove POSIXisms (mmap in this case)
10375         and to build DLLs on Windows.
10376         * gst/Makefile.am:
10377         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
10378         (gst_filesrc_open_file):
10379         * gst/schedulers/Makefile.am:
10380
10381 2004-04-13  David Schleef  <ds@schleef.org>
10382
10383         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
10384         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
10385         fixating lists.
10386
10387 2004-04-12  David Schleef  <ds@schleef.org>
10388
10389         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
10390         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
10391         to using it.
10392         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
10393         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
10394         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
10395         * gst/gststructure.c: (gst_structure_set_valist),
10396         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
10397         support for buffers.
10398         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
10399         intended to be const.
10400         * gst/gsttag.h: same
10401         * gst/gstvalue.c: (gst_value_serialize_buffer),
10402         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
10403         to (de)serialize buffers.
10404         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
10405         * testsuite/caps/string-conversions.c: (main):
10406         * testsuite/caps/value_serialize.c: add new test
10407
10408 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10409
10410         * docs/pwg/advanced-types.xml:
10411           Document MS video 1 (video/x-msvideocodec) mimetype/format.
10412
10413 2004-04-11  Benjamin Otte  <otte@gnome.org>
10414
10415         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
10416           rename categories to basic_*
10417         * gst/schedulers/gstbasicscheduler.c: 
10418         (gst_basic_scheduler_chain_wrapper),
10419         (gst_basic_scheduler_chainhandler_proxy),
10420         (gst_basic_scheduler_gethandler_proxy),
10421         (gst_basic_scheduler_eventhandler_proxy):
10422           debugging category fixes - put common stuff in log category
10423         * gst/schedulers/gstbasicscheduler.c: 
10424         (gst_basic_scheduler_chain_elements):
10425           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
10426           active and linking two active chains
10427
10428 2004-04-10  Benjamin Otte  <otte@gnome.org>
10429
10430         * docs/pwg/intro-preface.xml:
10431           fix dead links and remove reference to Wiki
10432
10433 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10434
10435         * gst/schedulers/gstbasicscheduler.c:
10436           make sure we can switch back to the main function if we're still in
10437           the main function (supposed to fix #139617)
10438         * gst/schedulers/gthread-cothreads.h:
10439           don't throw an error when switching to the same cothread
10440
10441 2004-04-09  Benjamin Otte  <otte@gnome.org>
10442
10443         * gst/gstbin.c: (gst_bin_get_type):
10444         * gst/gstclock.c: (gst_clock_get_type):
10445         * gst/gstindex.c: (gst_index_get_type):
10446         * gst/gstobject.c: (gst_object_get_type),
10447         (gst_signal_object_get_type):
10448         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
10449         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
10450         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
10451         * gst/gstqueue.c: (gst_queue_get_type):
10452         * gst/gstregistry.c: (gst_registry_get_type):
10453         * gst/gstsystemclock.c: (gst_system_clock_get_type):
10454         * gst/gstthread.c: (gst_thread_get_type):
10455           don't use memchunks for these objects, use malloc instead
10456
10457 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10458
10459         * docs/gst/.cvsignore:
10460         * docs/gst/Makefile.am:
10461         * docs/gst/gstreamer-sections.txt:
10462         * docs/gst/tmpl/gstaggregator.sgml:
10463         * docs/gst/tmpl/gstbuffer.sgml:
10464         * docs/gst/tmpl/gstclock.sgml:
10465         * docs/gst/tmpl/gstelement.sgml:
10466         * docs/gst/tmpl/gstfakesink.sgml:
10467         * docs/gst/tmpl/gstfakesrc.sgml:
10468         * docs/gst/tmpl/gstfdsink.sgml:
10469         * docs/gst/tmpl/gstfdsrc.sgml:
10470         * docs/gst/tmpl/gstfilesink.sgml:
10471         * docs/gst/tmpl/gstfilesrc.sgml:
10472         * docs/gst/tmpl/gstidentity.sgml:
10473         * docs/gst/tmpl/gstindex.sgml:
10474         * docs/gst/tmpl/gstinfo.sgml:
10475         * docs/gst/tmpl/gstmd5sink.sgml:
10476         * docs/gst/tmpl/gstmultifilesrc.sgml:
10477         * docs/gst/tmpl/gstpad.sgml:
10478         * docs/gst/tmpl/gstpipefilter.sgml:
10479         * docs/gst/tmpl/gstpipeline.sgml:
10480         * docs/gst/tmpl/gstpluginfeature.sgml:
10481         * docs/gst/tmpl/gstqueue.sgml:
10482         * docs/gst/tmpl/gstregistry.sgml:
10483         * docs/gst/tmpl/gstscheduler.sgml:
10484         * docs/gst/tmpl/gstshaper.sgml:
10485         * docs/gst/tmpl/gstspider.sgml:
10486         * docs/gst/tmpl/gstspideridentity.sgml:
10487         * docs/gst/tmpl/gststatistics.sgml:
10488         * docs/gst/tmpl/gstsystemclock.sgml:
10489         * docs/gst/tmpl/gsttee.sgml:
10490         * docs/gst/tmpl/gstthread.sgml:
10491         * docs/gst/tmpl/gsttypefind.sgml:
10492         * docs/gst/tmpl/gstutils.sgml:
10493           further doc build fixes
10494
10495 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10496
10497         * docs/gst/Makefile.am:
10498           make docs exit on scanning problems
10499           fix nonsrcdir build issues
10500         * docs/gst/gstreamer-sections.txt:
10501           adding stuff from -unused
10502         * gst/gstqueue.h:
10503           create GstQueueSize
10504         * gst/schedulers/cothreads_compat.h:
10505           fix cothread warnings
10506
10507 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10508
10509         * docs/gst/gstreamer-sections.txt:
10510           remove defines deprecated by Benjamin
10511
10512 2004-04-07  Benjamin Otte  <otte@gnome.org>
10513
10514         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10515           when the buffer is complete, don't check if other buffers are needed
10516         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
10517           check that the offset is >0 so we don't try to read before the
10518           beginning of the file
10519         * gst/gstpad.c: (gst_pad_set_pad_template):
10520           sink the template, so we don't end up with 130k pad templates
10521
10522 2004-04-06  Benjamin Otte  <otte@gnome.org>
10523
10524         * gst/autoplug/gstspider.c: (gst_spider_link_add):
10525           don't ref the element, adding already reffed it. And we didn't unref
10526           it later anyway... (huge memleak when you used many spider elements)
10527         * gst/gstelement.c: (gst_element_base_class_finalize):
10528         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
10529         (gst_element_register):
10530         * gst/gsturi.c: (gst_element_make_from_uri):
10531           use gst_object_(un)ref instead of g_object(un)ref
10532
10533 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10534
10535         * gst/gstbuffer.h:
10536           remove macro that wouldn't work anymore because struct member has
10537           been removed.
10538         * gst/schedulers/entryscheduler.c: (schedule_forward):
10539           fix segfault for unconnected pads
10540         
10541 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10542
10543         reviewed by David Schleef <ds@schleef.org>
10544
10545         * gst/gstinfo.h:
10546           *_FORMAT modifiers should require putting a % in front of them for
10547           consistency reasons.
10548
10549 2004-04-05  Colin Walters  <walters@redhat.com>
10550
10551         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
10552         space.
10553
10554 2004-04-05  Benjamin Otte  <otte@gnome.org>
10555
10556         * configure.ac:
10557         * gst/Makefile.am:
10558         * gst/gst_private.h:
10559         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
10560           add support for detecting if GStreamer runs inside valgrind.
10561           requires valgrind (d'oh) and --enable-debug for correct cdetection.
10562           print a big message in valgrind that GStreamer has detected it's
10563           running inside and might now use different code.
10564         * gst/gstmemchunk.c: (populate), (free_area),
10565         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
10566         (gst_mem_chunk_free):
10567           flag memchunks for valgrind, so it can detect leaking of chunks.
10568           This allows detecting leaks of GstBuffer and GstEvent correctly
10569           inside valgrind.
10570
10571 2004-04-05  David Schleef  <ds@schleef.org>
10572
10573         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
10574           jensgr@gmx.net (Jens Granseuer)
10575
10576 2004-04-05  David Schleef  <ds@schleef.org>
10577
10578         * gst/gstbuffer.c: (_gst_buffer_sub_free),
10579         (gst_buffer_default_free), (gst_buffer_default_copy),
10580         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
10581         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
10582         structures in one place.
10583
10584 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10585
10586         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
10587           (GST_TIME_FORMAT, GST_TIME_ARGS)
10588
10589 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10590
10591         * testsuite/elements/Makefile.am:
10592           disable test until it stops breaking make distcheck
10593
10594 2004-04-05  Johan Dahlin  <johan@gnome.org>
10595
10596         * po/sv.po: Updated translation
10597
10598 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10599
10600         * gst/gstplugin.c: (gst_plugin_load_file):
10601           fix segfault for when original plugin was loaded statically
10602
10603 2004-04-05  Benjamin Otte  <otte@gnome.org>
10604
10605         * testsuite/debug/category.c: (main):
10606         * testsuite/debug/commandline.c: (main):
10607         * testsuite/debug/output.c: (main):
10608           fix tests to work again with debugging enabled
10609
10610 2004-04-05  Benjamin Otte  <otte@gnome.org>
10611
10612         * gst/schedulers/gstbasicscheduler.c:
10613         (gst_basic_scheduler_pad_link):
10614           fix to work with recent scheduling changes
10615
10616 2004-04-05  Benjamin Otte  <otte@gnome.org>
10617
10618         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
10619         prepareChangeLog doesn't work when cvs indents):
10620           don't throw an error when no element can be scheduled, there's too
10621           many weird reasons why it doesn't work. Return STOPPED instead.
10622           decoupled elemts' schedulability doesn't depend on bufpens.
10623
10624 2004-04-04  Benjamin Otte  <otte@gnome.org>
10625
10626         * gst/schedulers/gstbasicscheduler.c:
10627         (gst_basic_scheduler_pad_select):
10628           fix uninitialized variable warnings
10629
10630 2004-04-04  Benjamin Otte  <otte@gnome.org>
10631
10632         * gst/gstpad.c: (gst_pad_collect_valist):
10633           fix uninitialized variable warning
10634         * gst/schedulers/entryscheduler.c: (schedule_forward):
10635           fix shadowed variable
10636
10637 2004-04-04  Benjamin Otte  <otte@gnome.org>
10638
10639         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
10640         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
10641         (gst_pad_select):
10642         * gst/gstpad.h:
10643         * gst/gstscheduler.c: (gst_scheduler_pad_select),
10644         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
10645         * gst/gstscheduler.h:
10646           implement gst_pad_collect as replacement for gst_pad_select.
10647           deprecate gst_pad_select and gst_scheduler_(un)lock_element
10648           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
10649           new pad_select, lock and unlock calls.
10650         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
10651         * gst/cothreads.h:
10652         * gst/schedulers/cothreads_compat.h:
10653         * gst/schedulers/gthread-cothreads.h:
10654           remove unused cothread_lock and cothread_unlock calls
10655         * gst/schedulers/entryscheduler.c:
10656         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
10657         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
10658         (gst_entry_scheduler_pad_select):
10659           update to new API
10660         * gst/schedulers/gstbasicscheduler.c:
10661         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
10662         (gst_basic_scheduler_pad_select):
10663           remove useless lock and unlock calls, update pad_select to new API
10664           (untested)
10665         * gst/schedulers/gstoptimalscheduler.c:
10666         (gst_opt_scheduler_class_init):
10667           remove useless select, lock and unlock function calls
10668         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
10669           use gst_pad_collect instead of gst_pad_select
10670
10671 2004-04-04  Benjamin Otte  <otte@gnome.org>
10672
10673         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
10674         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
10675         (schedule_next_element), (print_entry):
10676           add can_schedule_pad to handle element states.
10677           add schedule_forward to select the correct entry to schedule next
10678
10679 2004-04-03  Benjamin Otte  <otte@gnome.org>
10680
10681         * gst/schedulers/entryscheduler.c: 
10682           remove unused variable, fix error inside Rb, fix compile warning in
10683           unreachable code
10684
10685 2004-04-03  Benjamin Otte  <otte@gnome.org>
10686
10687         * gst/schedulers/entryscheduler.c:
10688           completely revamp the inner workings, so it's a lot easier to
10689           understand and extend
10690
10691 2004-04-03  Andy Wingo  <wingo@pobox.com>
10692
10693         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
10694         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
10695         This allows better introspection of pipeline topology.
10696         (add_to_chain): Don't do trickery to put loop elements first;
10697         rather, queue a chain sort by marking the chain as dirty.
10698         (remove_from_chain): Mark the chain dirty.
10699         (sort_chain): New function. Sorts the group list so that terminal
10700         sinks are first. This means elements on the sink side will be
10701         preferentially sscheduled before elements on the src side of the
10702         pipeline.
10703         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
10704         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
10705         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
10706         (group_inc_link): Change argument and variable names to match the
10707         new link structure member names (src and sink).
10708         (group_dec_link): Add some description
10709
10710 2004-04-03  Benjamin Otte  <otte@gnome.org>
10711
10712         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
10713         * gst/gstinfo.h:
10714         * testsuite/debug/category.c: (main):
10715         * testsuite/debug/commandline.c: (main):
10716         * testsuite/debug/output.c: (main):
10717         * testsuite/debug/printf_extension.c: (main):
10718           fix to successfully build and test with --disable-gst-debug
10719           configure switch (fixes #138705)
10720
10721 2004-04-03  Benjamin Otte  <otte@gnome.org>
10722
10723         * docs/pwg/building-boiler.xml:
10724           add cvs login line and s/anonymous/anoncvs/
10725
10726 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
10727
10728         reviewed by Benjamin Otte  <otte@gnome.org>
10729
10730         * gst/gststructure.c: (gst_structure_free):
10731           memleak fix: free fields array (partial fix for #134839)
10732
10733 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10734
10735         * docs/random/ds/0.9-suggested-changes:
10736           Add a note to change handoff use in fakesrc to be usable in
10737           a more generic way (fakesrc should be renamed to appsrc or so).
10738         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
10739           Change signal type to scope, so we can fill the buffer in the
10740           handoff handler (that's the whole use of this signal...).
10741
10742 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10743
10744         * docs/pwg/other-ntoone.xml:
10745           Document muxers and n-to-1 elements.
10746
10747 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
10748
10749         * gst/registries/gstxmlregistry.c
10750         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
10751         determine if a file is a G_MODULE. The old one discards paths
10752         containing "so" somewhere in the middle. My home directory is
10753         called "soto". Go figure...
10754
10755 2004-03-31  David Schleef  <ds@schleef.org>
10756
10757         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
10758         to eventually deprecate gst_buffer_merge().  (bug: #136408)
10759         * gst/gstbuffer.h:
10760
10761 2004-03-31  David Schleef  <ds@schleef.org>
10762
10763         * gst/gstvalue.c: (gst_value_union_int_int_range),
10764         (gst_value_union_int_range_int_range), (gst_value_can_union),
10765         (gst_value_union), (_gst_value_initialize):  Add some union
10766         implementations.  We didn't have any previously.
10767         * testsuite/caps/Makefile.am:
10768         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
10769         (gst_audioscale_getcaps), (test_caps), (main): A little test
10770         that is the same as the caps manipulation in audioscale.
10771
10772 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10773
10774         * docs/faq/general.xml:
10775           add entry about "does gst support format X?"
10776
10777 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10778
10779         * gst/gstthread.c:
10780           fix docs
10781         * gst/gstutils.h:
10782           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
10783
10784 2004-03-30  Benjamin Otte  <otte@gnome.org>
10785
10786         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10787           set the offset of the buffer to the requested offset
10788         * gst/elements/gsttypefind.c: (stop_typefinding):
10789           revert patch 1.18 (which I unfortunately don't know the reason for).
10790           This is needed to allow downstream elements to seek. Otherwise
10791           typefind might overwrite a previous seek by downstream elements.
10792           This lead to errors with id3tag and typefind on some mp3s.
10793         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10794         (gst_entry_scheduler_iterate):
10795           be more verbose when debugging
10796
10797 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10798
10799         * gst/gstcaps.c: (gst_caps_from_string_inplace):
10800           make sure we don't get NULL strings
10801
10802 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10803
10804         * gst/gstcaps.c:
10805         * gst/gstelement.c:
10806         * gst/gstelementfactory.c: (gst_element_factory_get_type):
10807         * gst/gstindex.c: (gst_index_resolver_get_type),
10808         (gst_index_get_type), (gst_index_factory_get_type):
10809         * gst/gstinfo.c:
10810         * gst/gstpad.c:
10811         * gst/gstplugin.c:
10812         * gst/gsturi.c: (gst_uri_handler_get_type):
10813         * gst/gstvalue.c:
10814           first batch of documentation fixes
10815
10816 2004-03-29  David Schleef  <ds@schleef.org>
10817
10818         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
10819         * docs/gst/gstreamer-docs.sgml:  More hacking
10820         * docs/gst/gstreamer-sections.txt:
10821         * docs/gst/tmpl/cothreads_compat.sgml:
10822         * docs/gst/tmpl/gstcaps.sgml:
10823         * docs/gst/tmpl/gstclock.sgml:
10824         * docs/gst/tmpl/gstelement.sgml:
10825         * docs/gst/tmpl/gstevent.sgml:
10826         * docs/gst/tmpl/gstpad.sgml:
10827         * docs/gst/tmpl/gstutils.sgml:
10828         * docs/gst/tmpl/gstxml.sgml:
10829         * docs/gst/tmpl/gthread-cothreads.sgml:
10830         * docs/random/ds/0.9-suggested-changes:
10831         * gst/elements/gstfakesink.h: doc fixes
10832         * gst/elements/gstfakesrc.h: doc fixes
10833         * gst/gstcaps.c: doc fixes
10834         * gst/gstcaps.h: doc fixes
10835         * gst/gstelement.c: doc fixes
10836         * gst/gstelement.h: doc fixes
10837         * gst/gstindex.c: doc fixes
10838         * gst/gstinfo.c: doc fixes
10839         * gst/gstpad.c: doc fixes
10840         * gst/gstpad.h: doc fixes
10841         * gst/gstplugin.c: doc fixes
10842         * gst/gsttypefind.h: doc fixes
10843         * gst/gsturi.c: doc fixes
10844         * gst/gstvalue.c: doc fixes
10845
10846 2004-03-29  Colin Walters  <walters@redhat.com>
10847
10848         * gst/registries/gstxmlregistry.c (get_time)
10849         (plugin_times_older_than_recurse):
10850         Use the result of stat to determine whether a path is a file,
10851         so we don't attempt to opendir() files.
10852
10853 2004-03-29  Benjamin Otte  <otte@gnome.org>
10854
10855         * gst/gstpad.c: (gst_pad_set_explicit_caps):
10856           print caps in debugging output when setting caps failed
10857         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10858         (schedule_next_element), (get_buffer), (run_chainhandler),
10859         (element_may_start), (gst_entry_scheduler_chain_handler),
10860         (gst_entry_scheduler_get_handler),
10861         (gst_entry_scheduler_state_transition),
10862         (gst_entry_scheduler_pad_link):
10863           make this scheduler a testcase for mandatory
10864           discont-before-first-buffer which is needed if we want to allow apps
10865           to release the sound device.
10866           add SCHED_ASSERT macro to print scheduler state before an assertion
10867           triggers.
10868
10869 2004-03-29  Benjamin Otte  <otte@gnome.org>
10870
10871         * COPYING:
10872           replace by LGPL (former COPYING.LIB). The core is completely
10873           licensed LGPL.
10874         * COPYING.LIB:
10875           remove
10876
10877 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10878
10879         * po/af.po:
10880         * po/sv.po:
10881           updated Afrikaans and Swedish
10882
10883 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10884
10885         * po/LINGUAS:
10886         * po/az.po:
10887           adding Azerbaijani (Mətin Əmirov)
10888
10889 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
10890
10891         * gst/gstelement.h: 
10892         * gst/gstelement.c (gst_element_set_time_delay): New function for
10893         setting element time taking into account a hardware buffering
10894         delay.
10895         (gst_element_set_time): Now just an invocation of
10896         gst_element_set_time_delay.
10897         * gst/gstclock.h: 
10898         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
10899         allowing to set event times in the future.
10900         (gst_clock_get_event_time): Now just an invocation of
10901         gst_clock_get_event_time_delay.
10902
10903 2004-03-28  Benjamin Otte  <otte@gnome.org>
10904
10905         * gst/gstbin.c: (gst_bin_set_element_sched),
10906         (gst_bin_unset_element_sched):
10907           don't add decoupled elements to schedulers - otherwise it's
10908           impossible to control if a link to a decoupled element was already
10909           removed from a scheduler or not.
10910         * gst/schedulers/cothreads_compat.h:
10911         * gst/schedulers/gthread-cothreads.h:
10912           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
10913           is no "unused" warning.
10914         * gst/schedulers/Makefile.am:
10915         * gst/schedulers/entryscheduler.c:
10916           add new scheduler, based on ideas from talking to David and Martin.
10917           It's supposed to be small and correct. Currently it's also slow (but
10918           it's not noticable)
10919         * examples/retag/retag.c: (main):
10920         * testsuite/bytestream/test1.c: (main):
10921           fix missing NULLs at end of variadic functions
10922         * testsuite/elements/.cvsignore:
10923           update
10924
10925 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
10926
10927         * gst/gstevent.h:
10928         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
10929
10930 2004-03-25  David Schleef  <ds@schleef.org>
10931
10932         * docs/gst/gstreamer-sections.txt:  More doc hacking.
10933         * docs/gst/tmpl/gstaggregator.sgml:
10934         * docs/gst/tmpl/gstautoplugfactory.sgml:
10935         * docs/gst/tmpl/gstbin.sgml:
10936         * docs/gst/tmpl/gstbuffer.sgml:
10937         * docs/gst/tmpl/gstbufferstore.sgml:
10938         * docs/gst/tmpl/gstfakesink.sgml:
10939         * docs/gst/tmpl/gstfakesrc.sgml:
10940         * docs/gst/tmpl/gstmd5sink.sgml:
10941         * docs/gst/tmpl/gstreamer-unused.sgml:
10942         * docs/gst/tmpl/gstsearchfuncs.sgml:
10943         * docs/gst/tmpl/gstshaper.sgml:
10944         * docs/gst/tmpl/gstspider.sgml:
10945         * docs/gst/tmpl/gsttee.sgml:
10946         * docs/gst/tmpl/gstutils.sgml:
10947         * docs/gst/tmpl/gstvalue.sgml:
10948         * docs/gst/tmpl/gstxml.sgml:
10949         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
10950         and we don't support it.
10951         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
10952         (gst_use_threads), (gst_has_threads): same
10953         * gst/gstthreaddummy.c: same
10954         * gst/autoplug/gstspider.c: Make gst_spider_details static.
10955         * gst/autoplug/gstspider.h: same
10956         * gst/elements/gstaggregator.h: Remove bogus function from header
10957         * gst/elements/gstfakesink.h: same
10958         * gst/elements/gstfakesrc.h: same
10959         * gst/elements/gstmd5sink.h: same
10960         * gst/elements/gstshaper.h: same
10961         * gst/elements/gsttee.h: same
10962         * gst/gstbin.c: doc fixes
10963         * gst/gstbin.h: Remove unused definition.
10964         * gst/gstbuffer.c: doc fixes
10965         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
10966         * gst/gstfilter.c: doc fixes
10967         * gst/gsttag.c: doc fixes
10968         * gst/gstvalue.c: doc fixes
10969
10970 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10971
10972         * docs/pwg/advanced-types.xml:
10973           Document typefinding.
10974         * docs/pwg/other-oneton.xml:
10975           Document one-to-n elements, demuxers and parsers.
10976
10977 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
10978
10979         reviewed by: David Schleef  <ds@schleef.org>
10980
10981         * configure.ac: Check bison version (bug #127838)
10982
10983 2004-03-25  David Schleef  <ds@schleef.org>
10984
10985         * docs/gst/gstreamer-docs.sgml: More fine tuning.
10986         * docs/gst/gstreamer-sections.txt:
10987         * docs/gst/tmpl/gstautoplug.sgml:
10988         * docs/gst/tmpl/gststaticautoplug.sgml:
10989         * docs/gst/tmpl/gststaticautoplugrender.sgml:
10990         * docs/gst/tmpl/gstutils.sgml:
10991         * docs/gst/tmpl/gstxml.sgml:
10992
10993 2004-03-24  David Schleef  <ds@schleef.org>
10994
10995         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
10996         manual being such complete crap, that I decided to do major
10997         hacking of it.  This checkin replaces any fine tuning that
10998         may have been done previously, with the benefit of actually
10999         being complete for much of the API that was changed since
11000         0.6.  Further fine tuning will occur shortly.  (bug #134721)
11001         * docs/gst/gstreamer-sections.txt:
11002         * docs/gst/tmpl/GstBin.sgml:
11003         * docs/gst/tmpl/GstBuffer.sgml:
11004         * docs/gst/tmpl/GstCaps.sgml:
11005         * docs/gst/tmpl/GstClock.sgml:
11006         * docs/gst/tmpl/GstCompat.sgml:
11007         * docs/gst/tmpl/GstData.sgml:
11008         * docs/gst/tmpl/GstElement.sgml:
11009         * docs/gst/tmpl/GstEvent.sgml:
11010         * docs/gst/tmpl/GstIndex.sgml:
11011         * docs/gst/tmpl/GstStructure.sgml:
11012         * docs/gst/tmpl/GstTag.sgml:
11013         * docs/gst/tmpl/cothreads.sgml:
11014         * docs/gst/tmpl/cothreads_compat.sgml:
11015         * docs/gst/tmpl/gettext.sgml:
11016         * docs/gst/tmpl/grammar.tab.sgml:
11017         * docs/gst/tmpl/gst-i18n-app.sgml:
11018         * docs/gst/tmpl/gst-i18n-lib.sgml:
11019         * docs/gst/tmpl/gst.sgml:
11020         * docs/gst/tmpl/gst_private.sgml:
11021         * docs/gst/tmpl/gstaggregator.sgml:
11022         * docs/gst/tmpl/gstarch.sgml:
11023         * docs/gst/tmpl/gstatomic.sgml:
11024         * docs/gst/tmpl/gstatomic_impl.sgml:
11025         * docs/gst/tmpl/gstbin.sgml:
11026         * docs/gst/tmpl/gstbuffer.sgml:
11027         * docs/gst/tmpl/gstbufferstore.sgml:
11028         * docs/gst/tmpl/gstcaps.sgml:
11029         * docs/gst/tmpl/gstclock.sgml:
11030         * docs/gst/tmpl/gstcompat.sgml:
11031         * docs/gst/tmpl/gstconfig.sgml:
11032         * docs/gst/tmpl/gstcpu.sgml:
11033         * docs/gst/tmpl/gstdata.sgml:
11034         * docs/gst/tmpl/gstdata_private.sgml:
11035         * docs/gst/tmpl/gstelement.sgml:
11036         * docs/gst/tmpl/gstenumtypes.sgml:
11037         * docs/gst/tmpl/gsterror.sgml:
11038         * docs/gst/tmpl/gstevent.sgml:
11039         * docs/gst/tmpl/gstfakesink.sgml:
11040         * docs/gst/tmpl/gstfakesrc.sgml:
11041         * docs/gst/tmpl/gstfilesink.sgml:
11042         * docs/gst/tmpl/gstfilter.sgml:
11043         * docs/gst/tmpl/gstindex.sgml:
11044         * docs/gst/tmpl/gstinfo.sgml:
11045         * docs/gst/tmpl/gstinterface.sgml:
11046         * docs/gst/tmpl/gstlog.sgml:
11047         * docs/gst/tmpl/gstmacros.sgml:
11048         * docs/gst/tmpl/gstmarshal.sgml:
11049         * docs/gst/tmpl/gstmd5sink.sgml:
11050         * docs/gst/tmpl/gstmultifilesrc.sgml:
11051         * docs/gst/tmpl/gstobject.sgml:
11052         * docs/gst/tmpl/gstpad.sgml:
11053         * docs/gst/tmpl/gstparse.sgml:
11054         * docs/gst/tmpl/gstpipeline.sgml:
11055         * docs/gst/tmpl/gstplugin.sgml:
11056         * docs/gst/tmpl/gstpluginfeature.sgml:
11057         * docs/gst/tmpl/gstqueue.sgml:
11058         * docs/gst/tmpl/gstreamer-unused.sgml:
11059         * docs/gst/tmpl/gstregistry.sgml:
11060         * docs/gst/tmpl/gstregistrypool.sgml:
11061         * docs/gst/tmpl/gstscheduler.sgml:
11062         * docs/gst/tmpl/gstsearchfuncs.sgml:
11063         * docs/gst/tmpl/gstshaper.sgml:
11064         * docs/gst/tmpl/gstspider.sgml:
11065         * docs/gst/tmpl/gstspideridentity.sgml:
11066         * docs/gst/tmpl/gststructure.sgml:
11067         * docs/gst/tmpl/gstsystemclock.sgml:
11068         * docs/gst/tmpl/gsttag.sgml:
11069         * docs/gst/tmpl/gsttaginterface.sgml:
11070         * docs/gst/tmpl/gsttee.sgml:
11071         * docs/gst/tmpl/gstthread.sgml:
11072         * docs/gst/tmpl/gsttrace.sgml:
11073         * docs/gst/tmpl/gsttrashstack.sgml:
11074         * docs/gst/tmpl/gsttypefind.sgml:
11075         * docs/gst/tmpl/gsttypes.sgml:
11076         * docs/gst/tmpl/gsturi.sgml:
11077         * docs/gst/tmpl/gsturitype.sgml:
11078         * docs/gst/tmpl/gstutils.sgml:
11079         * docs/gst/tmpl/gstvalue.sgml:
11080         * docs/gst/tmpl/gstversion.sgml:
11081         * docs/gst/tmpl/gstxml.sgml:
11082         * docs/gst/tmpl/gstxmlregistry.sgml:
11083         * docs/gst/tmpl/gthread-cothreads.sgml:
11084         * docs/gst/tmpl/types.sgml:
11085
11086 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11087
11088         * docs/pwg/other-sink.xml:
11089         * docs/pwg/other-source.xml:
11090           Documentation on how to write source and sink elements. Other
11091           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
11092           manager, autoplugger) are all still pending.
11093
11094 2004-03-25  Benjamin Otte  <otte@gnome.org>
11095
11096         * testsuite/elements/Makefile.am:
11097         * testsuite/elements/gst-compprep-check:
11098           add check to make sure gst-compprep works
11099         * testsuite/elements/gst-inspect-check.in:
11100           improve initialization output
11101         * testsuite/Makefile.am:
11102         * testsuite/gst-inspect-check:
11103           remove old file
11104
11105 2004-03-24  David Schleef  <ds@schleef.org>
11106
11107         * testsuite/elements/Makefile.am:
11108         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
11109         to the testsuite.
11110
11111 2004-03-24  Benjamin Otte  <otte@gnome.org>
11112
11113         * libs/gst/control/dparam.c: (gst_dparam_attach),
11114         (gst_dparam_detach):
11115         * libs/gst/control/dparammanager.c: (gst_dpman_init):
11116           fix lvalue casts for real
11117
11118 2004-03-24  Benjamin Otte  <otte@gnome.org>
11119
11120         * gst/schedulers/gstbasicscheduler.c:
11121         (gst_basic_scheduler_src_wrapper):
11122         * gst/schedulers/gstoptimalscheduler.c:
11123         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
11124         (pad_clear_queued), (gst_opt_scheduler_add_element),
11125         (gst_opt_scheduler_remove_element):
11126           fix GStreamer to not have issues with lvalue casts anymore (fixes
11127           #136841)
11128
11129 2004-03-24  Benjamin Otte  <otte@gnome.org>
11130
11131         * gst/gstelement.c:
11132           add documentation about a gobject quirk where the object hasn't the
11133           correct class pointer set on initialization
11134         * gst/schedulers/gstbasicscheduler.c:
11135         (gst_basic_scheduler_src_wrapper):
11136           make sure to not run into an infinite loop
11137
11138 2004-03-22  Benjamin Otte  <otte@gnome.org>
11139
11140         * gst/gstutils.c: (gst_util_dump_mem):
11141         * gst/gstutils.h:
11142           first argument of gst_util_dump_mem should be const
11143
11144 2004-03-22  Johan Dahlin  <johan@gnome.org>
11145
11146         * gst/gstvalue.h: Clean up a little bit.
11147
11148 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
11149
11150         reviewed by Benjamin Otte  <otte@gnome.org>
11151
11152         * gst/autoplug/gstspider.c: (gst_spider_dispose):
11153         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
11154         (gst_aggregator_class_init), (gst_aggregator_init):
11155         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
11156         (gst_filesrc_dispose), (gst_filesrc_set_location):
11157         * gst/elements/gstidentity.c: (gst_identity_finalize),
11158         (gst_identity_class_init), (gst_identity_chain):
11159         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11160         * gst/elements/gststatistics.c: (gst_statistics_finalize),
11161         (gst_statistics_class_init):
11162         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
11163         (gst_tee_get_property):
11164           clean up used memory in this elements correctly on teardown (closes
11165           #137279)
11166
11167 2004-03-20  Colin Walters  <walters@redhat.com>
11168
11169         * gst/registries/gstxmlregistry.c:
11170         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
11171         registry saving atomic.
11172
11173 2004-03-20  Colin Walters  <walters@redhat.com>
11174
11175         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
11176         Just use
11177         access() instead of actually creating and deleting files.
11178
11179 2004-03-18  David Schleef  <ds@schleef.org>
11180
11181         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
11182         (bug #137625)
11183
11184 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11185
11186         * po/sv.po: updated translation (Christian Rose)
11187
11188 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11189
11190         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
11191         (gst_filesink_get_query_types), (_do_init),
11192         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
11193           return FALSE silently
11194         * po/af.po: updated translation (Petri Jooste)
11195
11196 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11197
11198         * Makefile.am:
11199         * configure.ac:
11200           dist common properly
11201         * po/af.po:
11202         * po/fr.po:
11203         * po/nl.po:
11204         * po/sr.po:
11205         * po/sv.po:
11206           refreshing translations
11207
11208 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11209
11210         * po/LINGUAS:
11211         * po/sv.po:
11212         * po/af.po:
11213           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
11214
11215 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11216
11217         * Makefile.am: use common/release.mak
11218
11219 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11220
11221         * docs/faq/gst-uninstalled:
11222           adding gst-monkeysaudio to the list of possible plugin dirs
11223
11224 2004-03-16  David Schleef  <ds@schleef.org>
11225
11226         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
11227         (gst_init_check_with_popt_table):  Fix some gettext strings to
11228         make them easier to translate.  Required making the strings
11229         non-const.
11230
11231 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11232
11233         * configure.ac: bump nano to 1
11234
11235 === release 0.8.0 ===
11236
11237 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11238
11239         * configure.ac: release 0.8.0, "Executive Slacks"
11240
11241 2004-03-16  Johan Dahlin  <johan@gnome.org>
11242
11243         * gst/schedulers/gstoptimalscheduler.c
11244         (gst_opt_scheduler_pad_unlink): Remove double ;,
11245         spotted by Scott Wheeler
11246
11247 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11248
11249         * configure.ac: bump libtool version
11250
11251 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11252
11253         * gst/gstcaps.h:
11254         * gst/gststructure.h:
11255           add reserved padding
11256
11257 2004-03-15  Benjamin Otte  <otte@gnome.org>
11258
11259         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
11260           set the first parameter for select call correctly.
11261           (fixes #137230)
11262
11263 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11264
11265         * *.c,*.h: don't mix tabs and spaces
11266
11267 2004-03-15  Johan Dahlin  <johan@gnome.org>
11268
11269         * gst/schedulers/gstoptimalscheduler.c
11270         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
11271         crash on MPEG playback. My boolean arithmetic is a bit rusty.
11272
11273         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
11274         
11275 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11276
11277         * testsuite/Rules:
11278           fix gst-register rules
11279
11280 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11281
11282         * testsuite/Rules:
11283           use versioned gst-register
11284
11285 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11286
11287         * docs/libs/gstreamer-libs-sections.txt:
11288           remove </SUBSECTION>
11289         * gst/gstplugin.c:
11290         * gst/gstregistry.c: (gst_registry_add_plugin):
11291         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
11292         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
11293           add debugging and fix some comment blocks
11294
11295 2004-03-15  Johan Dahlin  <johan@gnome.org>
11296
11297         * *.h: Revert indent changes.
11298         
11299 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
11300
11301         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
11302           g_error_free the g_error
11303         * tools/gst-feedback-m.m:
11304           check for other versions of gstreamer
11305         * tools/gst-indent:
11306           use sh, not bash
11307
11308 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
11309
11310         * tools/gst-register.c: do not spill paths when registries are not
11311           writable, until we fix the "user running gst-register" case.
11312
11313 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11314
11315         * *.c, *.h: commit of gst-indent run on core
11316
11317 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11318
11319         * tools/gst-indent:
11320         * tools/Makefile.am:
11321           add our indentation style as a script
11322
11323 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11324
11325         * po/sr.po:
11326         * po/LINGUAS:
11327           added Serbian translation
11328
11329 2004-03-13  Benjamin Otte  <otte@gnome.org>
11330
11331         * gst/gstelement.c:
11332           add documentation note about gst_element_found_tags_for_pad not
11333           being usable in getfunctions. (see #137042)
11334
11335 2004-03-12  David Schleef  <ds@schleef.org>
11336
11337         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
11338         change API right now!  Readd gst_caps_is_simple() macro.
11339         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
11340         uninitialized variable.  I'd bet this caused crashes.
11341         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
11342
11343 2004-03-12  Johan Dahlin  <johan@gnome.org>
11344
11345         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
11346         * gst/gstcaps.h: Clean up
11347
11348         * gst/gst.c (init_post): call gst_caps_get_type() instead of
11349         _gst_caps_initalize()
11350
11351         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
11352         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
11353
11354         * gst/gststructure.c (gst_structure_get_type): Ditto
11355
11356         * gst/gststructure.h: Ditto
11357         
11358 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11359
11360         * gst/gstqueue.c: (gst_queue_init):
11361           Reset default max. values in queues. Reason is simply to avoid
11362           braindead use. If you want wider values, use the properties. The
11363           default is supposed to always work. Wider values would make this
11364           beast a memory hog by default (250 full-PAL RGB32 video frames?
11365           That's 440 MB! No thank you).
11366
11367 2004-03-10  David Schleef  <ds@schleef.org>
11368
11369         * tools/gst-run.c: (main):  Fix crash when no relevant tools
11370         were found.  (bug #136793)
11371
11372 2004-03-10  Johan Dahlin  <johan@gnome.org>
11373
11374         * gst/schedulers/gstoptimalscheduler.c
11375         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
11376         links to elements within the same group, so we can finally remove
11377         that annoying warning. Refactor the code a little bit
11378         (group_dec_links_for_element): Split out
11379
11380 2004-03-09  David Schleef  <ds@schleef.org>
11381
11382         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
11383         (bug #134863)
11384
11385 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11386
11387         * configure.ac: first bug fix due to major/minor bump
11388
11389 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11390
11391         * configure.ac: bump nano to 1
11392
11393 === release 0.7.6 ===
11394
11395 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11396
11397         * NEWS:
11398         * RELEASE:
11399         * configure.ac:
11400           releasing 0.7.6, "Almost"
11401         * po/fr.po:
11402         * po/nl.po:
11403         * tools/Makefile.am:
11404         * tools/gst-feedback-m.m:
11405           unversioned source
11406
11407 2004-03-09  Johan Dahlin  <johan@gnome.org>
11408
11409         Reviewed by: Thomas Vander Stichele
11410
11411         * gst/gstelement.c (gst_element_class_init): register second
11412         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
11413         language bindings can (de)marshall correctly.
11414
11415         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
11416
11417         * gst/gsterror.c (gst_g_error_get_type): New function
11418
11419         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
11420         with VOID:OBJECT,OBJECT,STRING 
11421
11422 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
11423
11424         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
11425         Free a leaked g_timer on early returns.
11426
11427 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11428
11429         * docs/pwg/advanced-types.xml:
11430           Add cinepak description.
11431
11432 2004-03-07  David Schleef  <ds@schleef.org>
11433
11434         * docs/random/mimetypes:  Added cinepak description
11435
11436 2004-03-07  Andy Wingo  <wingo@pobox.com>
11437
11438         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
11439
11440         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
11441         there are no links to other groups when a group is destroyed.
11442         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
11443         removed from a group, make sure the link count to elements linked
11444         to other pads is appropriately decremented. This really fixes
11445         #135672.
11446
11447         The 1.60->1.61 patch has been reapplied in light of this fix.
11448
11449         * gst/gstelement.c (gst_element_dispose): Really protect against
11450         multiple invocations this time.
11451
11452 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11453
11454         * docs/gst/gstreamer-sections.txt:
11455         * docs/gst/tmpl/gsttag.sgml:
11456           remove some deprecated functions, document some existing ones
11457         * gst/gsttag.c: (gst_tag_get_flag):
11458         * gst/gsttag.h:
11459           add accessor function
11460
11461 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11462
11463         * docs/gst/gstreamer-sections.txt:
11464         * docs/gst/tmpl/gsttag.sgml:
11465         * docs/gst/tmpl/gstxml.sgml:
11466         * gst/gsttag.c: (gst_tag_get_flag):
11467         * gst/gsttag.h:
11468
11469 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
11470
11471         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
11472         leak
11473
11474 2004-03-05  David Schleef  <ds@schleef.org>
11475
11476         * REQUIREMENTS: Add bison and flex.
11477         * configure.ac: Fix comment about bison.
11478         * docs/random/ds/0.9-suggested-changes: yer ma
11479         * tools/gst-inspect.c: (print_element_info):  Fix warning.
11480
11481 2004-03-05  Benjamin Otte  <otte@gnome.org>
11482
11483         * gst/gstelement.c: (gst_element_error_full):
11484           revert recent recursive state changing commit - messing with other
11485           elements' states is evil and should be done by apps only.
11486
11487 2004-03-05  Benjamin Otte  <otte@gnome.org>
11488
11489         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
11490           check for empty intersection instead of NULL caps
11491         (gst_element_get_compatible_pad_filtered):
11492           remove old workaround that is only a bug nowadays
11493
11494 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11495
11496         * gst/gstelement.c: (gst_element_error_full):
11497           make elements try to recursively change state to PAUSED on all
11498           parents after an error to suppress ensuing warnings
11499         * gst/parse/grammar.y:
11500           make it check if it was able to sync the state, and throw an error
11501           if not, so stuff like
11502           oggdemux ! vorbisdec ! osssink gets caught
11503
11504 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11505
11506         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
11507           it contains lib64; use AS_AC_EXPAND to handle it properly
11508
11509 2004-03-05  David Schleef  <ds@schleef.org>
11510
11511         * gst/gstcpuid_i386.s:  Remove unused code
11512         * libs/gst/getbits/getbits.c: (gst_getbits_init),
11513         (gst_getbits_newbuf): Remove MMX code
11514         * libs/gst/getbits/getbits.h: Remove MMX code
11515
11516 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
11517
11518         * debian/.cvsignore:
11519         * debian/README.Debian:
11520         * debian/changelog:
11521         * debian/control:
11522         * debian/control.in:
11523         * debian/copyright:
11524         * debian/gstreamer-core-libs-dev.files:
11525         * debian/gstreamer-core-libs.files:
11526         * debian/gstreamer-core.files:
11527         * debian/gstreamer-core.postinst:
11528         * debian/gstreamer-core.postrm:
11529         * debian/gstreamer-doc.files:
11530         * debian/gstreamer-doc.links:
11531         * debian/gstreamer-doc.lintian:
11532         * debian/gstreamer-runtime.files:
11533         * debian/gstreamer-runtime.manpages:
11534         * debian/gstreamer-runtime.postinst:
11535         * debian/gstreamer-runtime.postrm:
11536         * debian/gstreamer-tools.files:
11537         * debian/gstreamer-tools.manpages:
11538         * debian/libgstreamer-dev.files:
11539         * debian/libgstreamer0.4.1.files:
11540         * debian/libgstreamerVERSION.files:
11541         * debian/rules:
11542         Debian package info not maintained here.
11543
11544 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11545
11546         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11547         * gst/gstbin.c: (gst_bin_class_init):
11548         * gst/gstelement.c: (gst_element_class_init):
11549         * gst/gstindex.c: (gst_index_class_init):
11550         * gst/gstobject.c: (gst_object_class_init),
11551         (gst_signal_object_class_init):
11552         * gst/gstpad.c: (gst_pad_template_class_init):
11553         * gst/gstregistry.c: (gst_registry_class_init):
11554         * gst/gsturi.c: (gst_uri_handler_base_init):
11555         * gst/gstxml.c: (gst_xml_class_init):
11556         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11557         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
11558           make all signal names use dashes instead of underscore
11559
11560 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11561
11562         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
11563
11564 2004-03-03  Benjamin Otte  <otte@gnome.org>
11565
11566         * gst/schedulers/gstoptimalscheduler.c:
11567           revert last commit by Andy Wingo. It causes segfaults on unreffing
11568           in Rhythmbox. (see bug #135672)
11569
11570 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11571
11572         * po/fr.po: fix typo
11573
11574 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11575
11576         * tools/gst-inspect.c: (main): 
11577         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
11578
11579 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11580
11581         * configure.ac:
11582           get GLIB_ONLY and POPT flags for the nonversioned binaries
11583         * tools/Makefile.am:
11584           use them
11585
11586 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11587
11588         * gst/gst.c: (init_post):
11589           change so that GST_REGISTRY now is where the global registry gets
11590           saved, since that is where plugins now get attached to first, and
11591           spilled over to the user registry.  Note that in the case of using
11592           GST_REGISTRY env var, we don't want to affect any real registries
11593           beyond the one given by this var, and thus we don't set a user
11594           registry to spill to.  So make sure GST_REGISTRY is writable.
11595
11596 2004-03-01  David Schleef  <ds@schleef.org>
11597
11598         * AUTHORS:  Added some names.  Add yourself if you're missing.
11599
11600 2004-03-01  David Schleef  <ds@schleef.org>
11601
11602         * MAINTAINERS: Add
11603
11604 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
11605
11606         * configure.ac:
11607           remove whitespace
11608         * docs/gst/tmpl/gstbuffer.sgml:
11609         * docs/gst/tmpl/gstdata.sgml:
11610         * docs/gst/tmpl/gstreamer-unused.sgml:
11611         * docs/gst/tmpl/gstxml.sgml:
11612           doc update
11613         * docs/manuals.mak:
11614           add a FIXME
11615         * docs/pwg/intro-preface.xml:
11616         * docs/pwg/pwg.xml:
11617           remove GNOME
11618         * gst/gst.c: (init_post):
11619           try GST_PLUGIN_PATH paths for the _global_registry first
11620         * gst/gstelement.h:
11621           add the error message as well, otherwise (null) debug info doesn't
11622           make much sense
11623         * tools/gst-register.c: (main):
11624           spill paths to next registry if this registry is not writable
11625         * po/fr.po:
11626         * po/nl.po:
11627           translation updates
11628
11629 2004-03-01  Johan Dahlin  <johan@gnome.org>
11630
11631         * gst/gstbuffer.c (_gst_buffer_initialize): 
11632         * gst/gstdata.c (gst_data_get_type): 
11633         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
11634         instead of ref, since some applications that uses GBoxed
11635         routines depends on a function that actually returns a copy.
11636
11637 2004-02-27  Benjamin Otte  <otte@gnome.org>
11638
11639         * gst/gstbuffer.h:
11640           remove gst_buffer_free, use gst_data_unref
11641         * gst/gstdata.c: (gst_data_get_type):
11642           use refcounting in GstData GBoxed registration
11643         * gst/gstdata.h:
11644           remove gst_data_free, use gst_data_unref
11645
11646 2004-02-27  Johan Dahlin  <johan@gnome.org>
11647
11648         * gst/gstdata.c (gst_data_get_type): New function, register
11649         GstData as a GBoxed type.
11650
11651         * gst/gstdata.h (GST_TYPE_DATA): New macro
11652
11653 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
11654
11655         * Makefile.am:
11656         * gstreamer.spec.in:
11657           put back RELEASE
11658         * gst/Makefile.am:
11659           clean up non-disting of built files
11660         * testsuite/debug/commandline.c:
11661           test fix for option rename
11662
11663 2004-02-26  David Schleef  <ds@schleef.org>
11664
11665         * configure.ac:  We don't really need glib-2.3.  Also remove
11666         some unneeded checks for library functions.
11667         * gst/Makefile.am:  Instead, we need to not dist files created
11668         by glib-genmarshal.
11669
11670 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11671
11672         * configure.ac:
11673           bump glib required version to 2.3.0 for g_value_takes_boxed
11674
11675  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
11676
11677         * common/m4/gst-docs.m4
11678         change flavour text from enable to disable as enable is our default
11679         closes bug Bug 135304
11680
11681 === release 0.7.5 ===
11682  
11683  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11684  
11685         * NEWS:
11686           instate NEWS file
11687         * Makefile.am:
11688         * gstreamer.spec.in:
11689         * RELEASE:
11690           put back release
11691         * configure.ac:
11692         * docs/random/release:
11693           more updates
11694
11695 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11696
11697         * gst/gsttag.c: (_gst_tag_initialize):
11698         * po/fr.po:
11699         * po/nl.po:
11700           remove hyphen from codec tags
11701
11702 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11703
11704         * gst/parse/Makefile.am:
11705           fix dependency so that a make from a clean build works the first
11706           time
11707
11708 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11709
11710         * docs/random/release:
11711           update release strategy
11712         * po/fr.po:
11713           auto-update po file
11714         * po/nl.po:
11715           update dutch translation
11716
11717 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11718
11719         * docs/manual/debugging.xml:
11720         fix manual for new debugging system
11721
11722 2004-02-25  Andy Wingo  <wingo@pobox.com>
11723
11724         * gst/gstpad.c (gst_pad_link_prepare): Re-add
11725         gst_pad_link_prepare. Please email the list with specific reasons
11726         for reverting.
11727
11728 2004-02-24  Andy Wingo  <wingo@pobox.com>
11729
11730         * gst/gstelement.c (gst_element_dispose): Protect against multiple
11731         invocations.
11732
11733         * gst/schedulers/gstoptimalscheduler.c:
11734         I added a mess of prototypes at the top of the file by way of
11735         documentation. Some of the operations on chains and groups were
11736         re-organized.
11737
11738         (create_group): Added a type argument so if the group is enabled,
11739         the setup_group_scheduler knows what to do.
11740         (group_elements): Added a type argument here, too, to be passed on
11741         to create_group.
11742         (group_element_set_enabled): If an unlinked PLAYING element is
11743         added to a bin, we have to create a new group to hold the element,
11744         and this function will be called before the group is added to the
11745         chain. Thus we have a valid case for group->chain==NULL. Instead
11746         of calling chain_group_set_enabled, just set the flag on the group
11747         (the chain's status will be set when the group is added to it).
11748         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
11749         Setup the group scheduler when the group is enabled, not
11750         specifically when an element goes PAUSED->PLAYING. This means
11751         PLAYING elements can be added, linked, and scheduled into a
11752         PLAYING pipeline, as was intended.
11753         (add_to_group): Don't ref the group twice. I don't know when this
11754         double-ref got in here. Removing it has the potential to cause
11755         segfaults if other parts of the scheduler are buggy. If you find
11756         that the scheduler is segfaulting for you, put in an extra ref
11757         here and see if that hacks over the underlying issue. Of course,
11758         then find out what code is unreffing a group it doesn't own...
11759         (create_group): Make the extra refcount floating, and remove it
11760         after adding the element. This means that...
11761         (unref_group): Destroy when the refcount reaches 0, not 1, like
11762         every other refcounted object in the known universe.
11763         (remove_from_group): When a group becomes empty, set it to be not
11764         active, and remove it from its chain. Don't unref it again,
11765         there's no floating reference any more.
11766         (destroy_group): We have to remove the group from the chain in
11767         remove_from_group (rather than here) to break refcounting cycles
11768         (the chain always has a ref on the group). So assert that
11769         group->chain==NULL.
11770         (ref_group_by_count): Removed, it was commented out anyway.
11771         (merge_chains): Use the remove_from_chain and add_to_chain
11772         primitives to do the reparenting, instead of rolling our own
11773         implementation.
11774         (add_to_chain): The first non-disabled group in the chain's group
11775         list will be the entry point for the chain. Because buffers can
11776         accumulate in loop elements' peer bufpens, we preferentially
11777         schedule loop groups before get groups to avoid unnecessary
11778         execution of get-based groups when the bufpens are already full.
11779         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
11780         (get_group_schedule_function): Ditto.
11781         (loop_group_schedule_function): Ditto.
11782         (gst_opt_scheduler_loop_wrapper): Ditto.
11783         (gst_opt_scheduler_iterate): Ditto.
11784
11785         I understand the opt scheduler now, yippee!
11786
11787         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
11788         (gst_pad_get_name, gst_pad_set_chain_function) 
11789         (gst_pad_set_get_function, gst_pad_set_event_function) 
11790         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
11791         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
11792         (gst_pad_set_query_function, gst_pad_get_query_types) 
11793         (gst_pad_get_query_types_default) 
11794         (gst_pad_set_internal_link_function) 
11795         (gst_pad_set_formats_function, gst_pad_set_link_function) 
11796         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
11797         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
11798         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
11799         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
11800         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
11801         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
11802         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
11803         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
11804         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
11805         (gst_pad_event_default_dispatch, gst_pad_event_default) 
11806         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
11807         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
11808         (gst_pad_get_formats_default, gst_pad_get_formats): Better
11809         argument checks, and some doc fixes.
11810
11811         (gst_pad_custom_new_from_template): Um, does anyone
11812         use these functions? Actually make a custom pad instead of a
11813         normal one.
11814         (gst_pad_try_set_caps): Transpose some checks.
11815         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
11816         the pad is in negotiation.
11817         (gst_pad_try_relink_filtered): Use pad_link_prepare.
11818         
11819         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
11820
11821         * gst/gstelement.h: 
11822         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
11823         on the list.
11824
11825 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11826
11827         * gst/gstbin.c: (gst_bin_add):
11828           add error for not being able to add elements
11829
11830 2004-02-22  Julien MOUTTE <julien@moutte.net>
11831
11832         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
11833         audio-codec and video-codec.
11834
11835 2004-02-22  Benjamin Otte  <otte@gnome.org>
11836
11837         reported by: Padraig O'Briain <padraig.obriain@sun.com>
11838
11839         * autogen.sh:
11840           replace test -e with test -x for mkinstalldirs to be more portable.
11841           (fixes #134816)
11842
11843 2004-02-22  Benjamin Otte  <otte@gnome.org>
11844
11845         * gst/gstpad.c:
11846           revert last patch from Andy, it makes gst_pad_can_link_filtered much
11847           too noisy
11848         * gst/gsttag.c: (_gst_tag_initialize):
11849         * gst/gsttag.h:
11850           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
11851         * libs/gst/control/dparam.c: (gst_dparam_attach):
11852         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
11853           check that types for attached dparams match
11854
11855 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11856
11857         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
11858         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11859         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11860           fix errors
11861
11862 2004-02-20  Andy Wingo  <wingo@pobox.com>
11863
11864         * gst/gstbin.c:
11865         * gst/gstbuffer.c:
11866         * gst/gstplugin.c:
11867         * gst/registries/gstxmlregistry.c: 
11868         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
11869
11870         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
11871         (gst_element_add_pad): DEBUG->INFO, some fixes.
11872         (gst_element_get_compatible_pad_template): Just see if the
11873         templates' caps intersect, not if one is a strict subset of the
11874         other. This conforms more to what gst_pad_link_intersect() does.
11875         (gst_element_class_add_pad_template): Don't memcpy the pad
11876         template, just ref it.
11877         (gst_element_get_compatible_pad_filtered): Clean up debug messages
11878
11879         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
11880         (gst_pad_link_filtered): Debug changes.
11881         (gst_pad_link_prepare): New function, consolidated from
11882         can_link_filtered and link_filtered.
11883
11884         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
11885         look more like that of the functions in gstelement.c
11886
11887         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
11888         object, and return the empty string if object is NULL.
11889
11890         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
11891         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
11892         LOG, not DEBUG. We still get flex info on debug.
11893
11894         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
11895         debug string more verbose.
11896         (plugin_times_older_than): DEBUG->LOG.
11897
11898 2004-02-20  Julien MOUTTE <julien@moutte.net>
11899
11900         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
11901         will emit found_tag for each stream they demux with the codec.
11902
11903 2004-02-20  Benjamin Otte  <otte@gnome.org>
11904
11905         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
11906           copy navigation event correctly. Check freeing tag lists. 
11907         * gst/gstthread.c: (gst_thread_change_state):
11908           don't abort() on state changing mess - it might happen because of
11909           bugs.
11910         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
11911           use boxed functions
11912         * gst/gstvalue.h:
11913           fix GST_VALUE_HOLDS_CAPS
11914
11915 2004-02-19  David Schleef  <ds@schleef.org>
11916
11917         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
11918         and use it for GST_FUNCTION.  (bug #134750)
11919
11920 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11921
11922         * po/fr.po:
11923         * po/nl.po:
11924           updating translations
11925
11926 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11927
11928         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
11929
11930 2004-02-18  kost@imn.htwk-leipzig.de
11931
11932         reviewed by: David Schleef  <ds@schleef.org>
11933
11934         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
11935         for libgstcontrol.
11936
11937 2004-02-18  David Schleef  <ds@schleef.org>
11938
11939         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11940         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11941         (gst_dpsmooth_new): Additional fixes to get double dparams working.
11942         * tools/gst-inspect.c: (print_element_info): Support dumping of
11943         double dparam information.
11944
11945 2004-02-17  David Schleef  <ds@schleef.org>
11946
11947         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11948         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
11949         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
11950         Use GST_TYPE_CAPS in signal prototype.
11951         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
11952         Convert GST_TYPE_CAPS to boxed.
11953         * gst/gstelement.c: (gst_element_class_init):
11954         Use GST_TYPE_TAG_LIST in signal prototype.
11955         * gst/gstindex.c: (gst_index_class_init):
11956         * gst/gstindex.h:
11957         Add GST_TYPE_INDEX_ENTRY type.
11958         * gst/gstmarshal.list:
11959         Add necessary marshal types.
11960         * gst/gstpad.c: (gst_real_pad_class_init),
11961         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
11962         (gst_pad_recover_caps_error):
11963         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
11964         * gst/gststructure.c: (_gst_structure_initialize),
11965         (gst_structure_copy), (_gst_structure_copy_conditional):
11966         * gst/gststructure.h:
11967         Convert GST_TYPE_STRUCTURE to boxed.
11968         * gst/gsttag.c: (gst_tag_list_get_type):
11969         * gst/gsttag.h:
11970         Add GST_TYPE_TAG_LIST type.
11971
11972 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11973
11974         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
11975         to what we agreed with david.
11976         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
11977
11978 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11979
11980         * po/nl.po: update translation
11981
11982 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11983
11984         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
11985           throw an error if spider is trying to play a mime type there is
11986           no decoder for
11987         * po/POTFILES.in:
11988           add gst/autoplug/gstspider.c for translation
11989
11990 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11991
11992         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
11993         silently when the pad is negotiating.
11994
11995 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11996
11997         * docs/faq/Makefile.am:
11998           add script to run gstreamer uninstalled 
11999         * docs/faq/faq.xml:
12000         * docs/faq/developing.xml:
12001         * docs/faq/gst-uninstalled:
12002           extract script to run gstreamer uninstalled
12003         * docs/manuals.mak:
12004           add EXTRA_SOURCES variable for Makefile.am's to set to
12005           use additional SOURCE files for the doc build
12006
12007 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
12008
12009         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
12010
12011 2004-02-15  Julien MOUTTE  <julien@moutte.net>
12012
12013         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
12014         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
12015         an error was thrown by osssink. Basically a state change failure for
12016         an element in a different scheduling group was considered as
12017         successful, which means that caps nego was going on and weird stuff
12018         happened. Like I wrote in the comment there, if someone wants to
12019         revert that please drop me a mail explaining why because I really see
12020         no point in keeping that broken behaviour there.
12021         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
12022         be empty, we then return NULL which will trigger a nice error when 
12023         pulling from the pad.
12024
12025 2004-02-13  David Schleef  <ds@schleef.org>
12026
12027         * libs/gst/control/dparam.c: (gst_dparam_class_init),
12028         (gst_dparam_get_property), (gst_dparam_set_property),
12029         (gst_dparam_do_update_default):
12030         * libs/gst/control/dparam.h:
12031         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
12032         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
12033         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
12034         (gst_dpsmooth_do_update_double):
12035         * libs/gst/control/dparam_smooth.h:
12036         * libs/gst/control/dparammanager.c:
12037         (gst_dpman_inline_direct_update):
12038         Add support for double dparams.
12039
12040 2004-02-13  David Schleef  <ds@schleef.org>
12041
12042         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
12043         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
12044
12045 2004-02-13  Mattias Wadman  <mattias@sudac.org>
12046
12047         reviewed by: David Schleef  <ds@schleef.org>
12048
12049         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
12050         (gst_fdsrc_init), (gst_fdsrc_set_property),
12051         (gst_fdsrc_get_property), (gst_fdsrc_get):
12052         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
12053         and sends an EOS event if file descriptor reading times out.
12054
12055 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12056
12057         * configure.ac:
12058           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
12059
12060 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12061
12062         * configure.ac: pass required libxml version as argument
12063         (bug reported by Christophe Fergeau)
12064
12065 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12066   
12067         * docs/gst/gstreamer-docs.sgml:
12068         * docs/gst/tmpl/gstxml.sgml:
12069         * docs/libs/gstreamer-libs-docs.sgml:
12070           version API docs
12071
12072 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12073
12074         * gst/gstinfo.c:
12075         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
12076         (gst_registry_pool_feature_filter):
12077         * gst/gstthread.c: (gst_thread_class_init):
12078         * gst/gstvalue.c:
12079           add includes exposed by building without libxml
12080         * gst/indexers/Makefile.am:
12081           do not build fileindex when LOADSAVE disabled; we should have
12082           a better libxml check later since fileindex depends on xml, not
12083           LOADSAVE or REGISTRY
12084         * libs/gst/control/Makefile.am:
12085           link with m
12086         * tools/Makefile.am:
12087           fix wrong source code for gst-xmlinspect
12088
12089 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12090
12091         * configure.ac:
12092           fix gcov help output
12093           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
12094         * docs/random/release:
12095           some updated releasing notes
12096         * gstreamer.spec.in:
12097           more updates
12098
12099 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12100
12101         * docs/faq/faq.xml:
12102         * docs/manual/manual.xml:
12103         * docs/pwg/pwg.xml:
12104         * docs/pwg/titlepage.xml:
12105           put version in documentation
12106
12107 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12108
12109         * tools/Makefile.am: fix man page installation
12110
12111 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12112
12113         * configure.ac:
12114           don't check for libxml when load/save and registry disabled (#105844)
12115         * gstreamer.spec.in:
12116           sync with fedora candidate spec
12117
12118 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12119
12120         * po/fr.po:
12121         * po/nl.po:
12122           replace multidisksrc with multifilesrc
12123
12124 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12125
12126         * po/POTFILES.in:
12127           update to multidisksrc => multifilesrc file renaming (#134145)
12128
12129 2004-02-11  David Schleef  <ds@schleef.org>
12130
12131         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
12132         * docs/gst/tmpl/gstpadtemplate.sgml: same
12133         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
12134         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
12135         fixing dance.
12136         * gst/gstutils.c: Remove disabled code that uses GstProps.
12137         * gst/registries/gstxmlregistry.h: same
12138         * docs/random/ds/0.9-suggested-changes: random notes
12139
12140 2004-02-11  kost@imn.htwk-leipzig.de
12141
12142         reviewed by: David Schleef  <ds@schleef.org>
12143
12144         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
12145         initialisation of clock (bug #134128)
12146
12147 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12148
12149         * configure.ac:
12150         * gst/elements/Makefile.am:
12151         * gst/elements/gstelements.c:
12152         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
12153         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
12154         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
12155         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
12156         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
12157         * gst/elements/gstmultifilesrc.h:
12158           rename multidisksrc to multifilesrc (part of #122200)
12159
12160 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12161
12162         * docs/manuals.mak:
12163           fix automake complaints
12164         * gst-element-check.m4:
12165           fix unquotedness
12166
12167 2004-02-11  David Schleef  <ds@schleef.org>
12168
12169         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
12170         * gst/gstatomic_impl.h: Disable sparc implementation.
12171
12172 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12173
12174         * gst-element-check.m4:
12175           fix underquoted macros as reported by automake 1.8.x (#133800)
12176         * configure.ac:
12177           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
12178           by autopoint (fixes #132996)
12179
12180 2004-02-10  Andy Wingo  <wingo@pobox.com>
12181
12182         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
12183         way to do inheritance.
12184         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
12185         (gst_pad_get_query_types, gst_pad_get_query_types_default):
12186         Routine docs.
12187         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
12188         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
12189         doc.
12190         (gst_pad_unlink, gst_pad_is_linked): Docs.
12191         (gst_pad_renegotiate): A brief description of capsnego.
12192         (gst_pad_try_set_caps): Document.
12193         (gst_pad_try_set_caps_nonfixed): Document.
12194         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
12195         (gst_pad_set_parent): Deprecated (although not out of the API).
12196         (gst_pad_get_parent): Deprecated, although many plugins use this.
12197         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
12198         are private and will go away in 0.9.
12199         (gst_pad_perform_negotiate): Doc.
12200         (gst_pad_link_unnegotiate): I think this is meant to be static.
12201         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
12202         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
12203         (gst_pad_get_peer): Doc updates.
12204         (gst_pad_caps_change_notify): Doc.
12205         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
12206         (gst_ghost_pad_new): Doc fixes.
12207
12208         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
12209         (gst_object_check_uniqueness): 
12210
12211         * gst/gstelement.c (gst_element_add_pad) 
12212         (gst_element_add_ghost_pad, gst_element_remove_pad) 
12213         (gst_element_remove_ghost_pad, gst_element_get_pad) 
12214         (gst_element_get_static_pad, gst_element_get_pad_list) 
12215         (gst_element_class_get_pad_template_list) 
12216         (gst_element_class_get_pad_template): Work on the docs.
12217         (gst_element_get_pad_template_list): Uses the class method.
12218         (gst_element_get_compatible_pad_template): Docs, and consolidate
12219         some test conditions. 
12220         (gst_element_get_pad_from_template): New static function.
12221         (gst_element_request_compatible_pad): Docs, and work with
12222         non-request compatible templates. 
12223         (gst_element_get_compatible_pad_filtered): Docs and remove
12224         redundant checks.
12225         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
12226         (gst_element_link_filtered, gst_element_link_many) 
12227         (gst_element_link, gst_element_link_pads) 
12228         (gst_element_unlink_many): Docs.
12229
12230 2004-02-05  Andy Wingo  <wingo@pobox.com>
12231
12232         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
12233         s/pointer/boxed/.
12234
12235         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
12236
12237         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
12238         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
12239         with the type=GST_TYPE_CAPS. This allows language bindings to know
12240         what kind of data they're dealing with.
12241
12242         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
12243         to NULL when g_value_init is called. GstCaps, which rolls its own
12244         type implementation, now does the same instead of allocating empty
12245         caps.
12246         (_gst_caps_initialize, _gst_caps_collect_value,
12247         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
12248         table methods. This allows G_VALUE_COLLECT to work.
12249
12250 2004-02-05  Andy Wingo  <wingo@pobox.com>
12251
12252         * configure.ac:
12253         * testsuite/Makefile.am (SUBDIRS): 
12254         * testsuite/ghostpads/Makefile.am: 
12255         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
12256
12257         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
12258         These two routines are the only ones that set
12259         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
12260         pad template. They should be made static, depending on ABI needs.
12261         (gst_real_pad_dispose): Handle the case of ghost pads without a
12262         parent. Assert after dealing with ghost pads that the ghost pad
12263         list is empty.
12264         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
12265         set after creation.
12266         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
12267         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
12268         functions. set_property will call add_ghost_pad/remove_ghost_pad
12269         as appropriate.
12270         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
12271
12272         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
12273         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
12274         (gst_element_remove_pad): Handle ghost pads as well.
12275         (gst_element_remove_ghost_pad): Deprecated (could be removed,
12276         depending on API-stability needs).
12277
12278 2004-02-05  Andy Wingo  <wingo@pobox.com>
12279
12280         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
12281         of course they're const
12282
12283 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12284
12285         * tools/Makefile.am:
12286         * tools/gst-feedback:
12287         * tools/gst-feedback-0.7:
12288           make gst-feedback versioned too for consistency
12289
12290 2004-02-11  David Schleef  <ds@schleef.org>
12291
12292         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12293         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
12294
12295 2004-02-10  Julien MOUTTE <julien@moutte.net>
12296
12297         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
12298         the structure does not contain a valid tag list. Adding a safety check
12299         to remove a noisy warning in that case.
12300
12301 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
12302
12303         * gst/gst.c: fix name to be in line with others
12304
12305 2004-02-09  Julien MOUTTE <julien@moutte.net>
12306
12307         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
12308         not shout that loud when len is 0. Just return 0 silently.
12309
12310 2004-02-09  Julien MOUTTE  <julien@moutte.net>
12311
12312         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
12313         because data_unref has one and I prefer the debug to be symetric.
12314         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
12315         were refed when added to the queue and unrefed only once when the queue
12316         was flushed. Now the flush handler unref the buffers two times : first
12317         unref for the ref added when pushing in the queue's tail and second
12318         unref to destroy the flushed buffer.
12319
12320 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
12321
12322         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
12323
12324 2004-02-06  David Schleef  <ds@schleef.org>
12325
12326         * docs/random/ds/0.9-suggested-changes: Random ramblings
12327         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
12328         to int before printing.
12329         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
12330         * gst/parse/parse.l: same.  See bug #129600
12331
12332 2004-02-06  David Schleef  <ds@schleef.org>
12333
12334         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
12335         (gst_index_add_entry), (gst_index_add_associationv),
12336         (gst_index_add_association): Add gst_index_add_associationv()
12337         and clean up gst_index_add_association(). #127133
12338
12339 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12340
12341         * autogen.sh: check out common with right tag if CVS/Tag exists
12342
12343 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12344
12345         * testsuite/ghostpads/ghostpads.c: (main):
12346           fix testsuite from segfaulting
12347
12348 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12349
12350         * Makefile.am: add release target
12351         * configure.ac: bump nano to 1
12352         * docs/random/release:
12353
12354 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12355
12356         * gst/gstcaps.h:
12357         * gst/gstelement.c: (gst_element_base_class_init),
12358         (gst_element_class_set_details), (gst_element_clear_pad_caps):
12359         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12360         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
12361         (gst_real_pad_dispose):
12362         * gst/gststructure.c: (gst_structure_free),
12363         (gst_structure_from_string):
12364           put reverted patch back in
12365         * gst/gstelement.c: (gst_element_remove_pad):
12366           free explicit caps if they're set
12367         * gst/gstpad.c: (_gst_pad_default_fixate_func):
12368           copy the structure when fixating
12369
12370 2004-02-05  David Schleef  <ds@schleef.org>
12371
12372         * gst/gstmarshal.list:
12373         * gst/gstpad.c: (gst_real_pad_class_init),
12374         (_gst_real_pad_fixate_accumulator):
12375         Revert POINTER->BOXED change in signal marshaller.
12376
12377 === release 0.7.4 ===
12378                                                                                 
12379 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12380                                                                                 
12381         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
12382         * configure.ac: changed for release
12383
12384 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
12385
12386         * gstreamer.spec.in:
12387           bump required version of gtk-doc
12388
12389 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
12390
12391         * gst/gstcaps.h:
12392         * gst/gstelement.c: (gst_element_base_class_init),
12393         (gst_element_class_set_details), (gst_element_clear_pad_caps):
12394         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12395         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
12396         (gst_real_pad_dispose):
12397         * gst/gststructure.c: (gst_structure_free),
12398         (gst_structure_from_string):
12399           revert patch that breaks applications, reapply after release
12400           to get this fixed properly
12401
12402 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12403
12404         * gst/gsttag.c: (_gst_tag_initialize):
12405         * gst/gsttag.h:
12406           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
12407
12408 2004-02-04  David Schleef  <ds@schleef.org>
12409
12410         Fix some memleaks:
12411         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
12412         (gst_spider_plug_from_srcpad):
12413         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
12414
12415 2004-02-04  David Schleef  <ds@schleef.org>
12416
12417         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
12418         a GstRealPad before accessing its structure members.
12419
12420 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12421
12422         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
12423         (gst_clock_get_speed):
12424         * gst/gstclock.h:
12425           reset padding, remove unused fields
12426
12427 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12428
12429         * gst/autoplug/gstspideridentity.c:
12430         (gst_spider_identity_sink_loop_type_finding):
12431           use get_allowed_caps, not get_caps (fixes #132519)
12432         * gst/elements/gsttypefind.c: (stop_typefinding):
12433           use correct order when sending buffers and seeking
12434
12435 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12436
12437         * configure.ac:
12438         * gst/gstelement.h:
12439         * gst/gstpad.h:
12440         * gst/gstqueue.h:
12441           upgrade libtool CURRENT, reset padding
12442
12443 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12444
12445         * configure.ac:
12446           bump to prerelease
12447           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
12448
12449 2004-02-04  David Schleef  <ds@schleef.org>
12450
12451         * docs/random/ds/0.9-suggested-changes: random notes
12452         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
12453         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
12454         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
12455         expansion.
12456         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
12457         (gst_filesink_get_query_types): same
12458         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
12459         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
12460         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
12461         to use new GST_PTR_FORMAT.
12462         * gst/gstelement.h: deprecate function factory macros
12463         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
12464         These are our last variadic macros that can't be replaced with
12465         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
12466         attempting to deprecate gst_element_clock_wait().
12467         * gst/gstevent.h: same
12468         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12469         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
12470         * gst/gstpad.h: deprecate function factory macros similar to above.
12471
12472 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12473
12474         * configure.ac:
12475         * tools/Makefile.am:
12476         * tools/gst-run.c: (popt_callback), (hash_print_key),
12477         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
12478         (get_candidates), (main):
12479           add new source file to generate non-versioned wrapper binaries
12480           for our tools.
12481
12482 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12483
12484         * gst/gstevent.c: (_gst_event_free):
12485           actually break; inside the switch statement
12486         * gst/parse/grammar.y:
12487           fix memleak where GValues weren't unset
12488
12489 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12490
12491         * gst/gststructure.c: (gst_structure_from_string):
12492           fix huge memleak
12493         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12494         (new_entry), (gst_type_find_element_chain):
12495         * gst/gstelement.c: (gst_element_base_class_init),
12496         (gst_element_class_set_details):
12497         * gst/gstpad.c: (gst_pad_can_link_filtered):
12498           fix smaller memleaks
12499         * gst/gstpad.c: (gst_real_pad_dispose):
12500           check that explicit caps are gone
12501         * gst/gststructure.c: (gst_structure_free):
12502           actually free the structure
12503         * gst/gstelement.c: (gst_element_clear_pad_caps):
12504           unset explicit caps
12505
12506 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12507
12508         * tools/Makefile.am:
12509           use AM_CFLAGS since all the CFLAGS are the same
12510           use AM_LDFAGS
12511
12512 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12513
12514         * docs/manual/gnome.xml:
12515           expand example a little
12516         * gst/gst.c: (gst_init_with_popt_table),
12517         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
12518           make sure popt option displays are done with right textdomain
12519           use GstPoptOption type
12520         * gst/gst.h:
12521           create GstPoptOption type
12522
12523 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12524
12525         * gst/gsterror.c: (_gst_stream_errors_init):
12526         * gst/gsterror.h:
12527           adding error type for no codec
12528         * po/POTFILES.in:
12529           add gst-inspect
12530         * po/nl.po:
12531           update dutch translation
12532         * tools/gst-inspect.c: (print_element_list), (main):
12533           do proper internationalization
12534         * tools/gst-launch.c: (idle_func):
12535           remove commented out function call
12536
12537 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12538
12539         * docs/README:
12540           add some error fixing notes
12541         * docs/gst/gstreamer-sections.txt:
12542           remove double entries
12543         * docs/gst/tmpl/gstbin.sgml:
12544         * docs/gst/tmpl/gstclock.sgml:
12545           remove override
12546         * docs/gst/tmpl/gstelement.sgml:
12547         * docs/gst/tmpl/gstindex.sgml:
12548         * docs/gst/tmpl/gstobject.sgml:
12549         * docs/gst/tmpl/gstpadtemplate.sgml:
12550         * docs/gst/tmpl/gstreamer-unused.sgml:
12551         * docs/gst/tmpl/gsttag.sgml:
12552         * docs/gst/tmpl/gstthread.sgml:
12553         * docs/gst/tmpl/gstxml.sgml:
12554         * gst/gsttag.h:
12555           sync header prototypes with c decls
12556         * gst/gsttaginterface.c:
12557           fix doc headers
12558
12559 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12560
12561         * gst/parse/Makefile.am:
12562         * gst/gstobject.h:
12563           get rid of gstmarshal.h dependency. It's not needed.
12564         * gst/gst.h:
12565         * gst/elements/gstfakesink.c:
12566         * gst/elements/gstfakesrc.c:
12567         * gst/elements/gstidentity.c:
12568         * gst/gstbin.c:
12569         * gst/gstelement.c:
12570         * gst/gstindex.c:
12571         * gst/gstobject.c:
12572         * gst/gstpad.c:
12573         * gst/gstthread.c:
12574         * gst/gstxml.c:
12575         * libs/gst/control/dparam.c:
12576         * libs/gst/control/dparammanager.c:
12577           include gstmarshal.h.
12578         Fixes #132045
12579
12580 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12581
12582         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
12583         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
12584         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
12585         * gst/elements/gstfilesrc.h:
12586           don't ref the filesrc when creating mmaped buffers. Don't keep a
12587           list of not-yet-destroyed buffers.
12588         * gst/gstbuffer.h:
12589           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
12590
12591 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12592
12593         * gst/gst.c: (init_pre):
12594           remove textdomain
12595
12596 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12597
12598         * docs/pwg/advanced-events.xml:
12599         * docs/pwg/advanced-scheduling.xml:
12600         * docs/pwg/intro-basics.xml:
12601         * docs/pwg/other-manager.xml:
12602         * docs/pwg/other-nton.xml:
12603         * docs/pwg/other-ntoone.xml:
12604         * docs/pwg/other-oneton.xml:
12605         * docs/pwg/pwg.xml:
12606           All sort of documentation... Forgot what. Point is that I want this
12607           in before I leave. The 'other-*' will be the last section and will
12608           explain issues specific to these type of elements.
12609
12610 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12611
12612         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12613         (gst_filesrc_get_read):
12614           set all the values on buffers that we can
12615
12616 2004-02-02  David Schleef  <ds@schleef.org>
12617
12618         Change usage of isblah() to g_ascii_isblah() to be more locale
12619         independent.  (#133076)
12620         * gst/gsturi.c: (gst_uri_protocol_check_internal):
12621         * gst/gstutils.c:
12622         * gst/parse/parse.l:
12623
12624 2004-02-02  Jon Trowbridge  <trow@gnu.org>
12625
12626         reviewed by: David Schleef  <ds@schleef.org>
12627
12628         Fix memory leaks:
12629         * gst/gstcaps.c: (gst_caps_to_string):
12630         * gst/registries/gstxmlregistry.c:
12631         (gst_xml_registry_add_path_list_func),
12632         (gst_xml_registry_parse_padtemplate):
12633
12634 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12635
12636         * gst/gstelement.c: (gst_element_default_error):
12637           suffix error messages with period
12638
12639 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12640
12641         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12642         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12643         * gst/gsterror.c: (gst_error_get_message):
12644           Suffix with dots
12645         * po/fr.po:
12646         * po/nl.po:
12647           Update translation files
12648
12649 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12650
12651         * gst/autoplug/gstspideridentity.c:
12652         (gst_spider_identity_sink_loop_type_finding):
12653         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12654         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12655         (gst_filesink_close_file), (gst_filesink_handle_event),
12656         (gst_filesink_chain):
12657         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12658         (gst_filesrc_get_read), (gst_filesrc_open_file):
12659         * gst/elements/gstidentity.c: (gst_identity_chain):
12660         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12661         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12662         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12663         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12664         * gst/gsterror.c: (_gst_core_errors_init),
12665         (_gst_library_errors_init), (_gst_resource_errors_init),
12666         (_gst_stream_errors_init), (gst_error_get_message):
12667         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12668         (gst_pad_recover_caps_error), (gst_pad_pull):
12669         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12670         * gst/schedulers/gstbasicscheduler.c:
12671         (gst_basic_scheduler_chainhandler_proxy),
12672         (gst_basic_scheduler_gethandler_proxy),
12673         (gst_basic_scheduler_cothreaded_chain):
12674           Suffix error messages with period.
12675           Use (NULL) instead of NULL
12676
12677 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12678
12679         * docs/gst/tmpl/gstelement.sgml:
12680         * docs/gst/tmpl/gstxml.sgml:
12681         * gst/gstelement.c: (gst_element_error_full):
12682           add element path to error
12683
12684 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12685
12686         * docs/random/mimetypes:
12687           update raw int/float info
12688         * gst/gsttag.c: (_gst_tag_initialize):
12689         * gst/gsttag.h:
12690           add GST_TAG_ENCODER
12691
12692 2004-01-30  David Schleef  <ds@schleef.org>
12693
12694         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
12695           missing (#132991)
12696
12697 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
12698
12699         reviewed by Benjamin Otte 
12700           parts of the patch submitted in bug #113913
12701
12702         * configure.ac:
12703           use AC_C_INLINE. Use = instead of == with test
12704         * examples/plugins/example.c:
12705         * gst/autoplug/gstspideridentity.c:
12706         * gst/elements/gstfdsrc.c:
12707         * gst/elements/gstfilesrc.c:
12708         * gst/elements/gstidentity.c:
12709         * gst/elements/gstmultidisksrc.c:
12710         * gst/elements/gststatistics.c:
12711         * gst/gstelement.c:
12712         * gst/gstobject.c:
12713         * gst/gstpad.c:
12714         * gst/gstpipeline.c:
12715         * gst/gstthread.c:
12716           don't end enums with a comma
12717         * gst/gstindex.c: (gst_index_compare_func):
12718           do explicit casting to gint
12719         * gst/gsttrace.c: (gst_trace_text_flush):
12720           #define strsize as a macro
12721
12722 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
12723
12724         * docs/README:
12725         * docs/gst/gstreamer-docs.sgml:
12726         * docs/gst/gstreamer-sections.txt:
12727         * docs/gst/tmpl/gstelement.sgml:
12728         * docs/gst/tmpl/gsterror.sgml:
12729         * docs/gst/tmpl/gstinterface.sgml:
12730         * docs/gst/tmpl/gstreamer-unused.sgml:
12731         * docs/gst/tmpl/gststructure.sgml:
12732         * docs/gst/tmpl/gsttag.sgml:
12733         * docs/gst/tmpl/gsttaginterface.sgml:
12734         * docs/gst/tmpl/gstvalue.sgml:
12735         make sure all API ends up in the built docs
12736         * gst/gstinterface.c:
12737         * gst/gststructure.c: (gst_structure_id_set_value),
12738         (gst_structure_set_value), (gst_structure_id_get_value):
12739         * gst/gststructure.h:
12740         * gst/gstvalue.h:
12741         sync .h with .c declarations
12742
12743 2004-01-30  Julien Moutte  <julien@moutte.net>
12744
12745         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
12746         Ronald will fix riffread.
12747
12748 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12749
12750         * docs/pwg/advanced-interfaces.xml:
12751           Added tuner interface docs.
12752
12753 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12754
12755         * docs/random/mimetypes:
12756           correct Theora information
12757         * gst/gstelement.h:
12758           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
12759
12760 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12761
12762         * gst/gstelement.c: (gst_element_error_full):
12763         * gst/gstelement.h:
12764           GST_ELEMENT_ERROR in enum -> _IN_ERROR
12765
12766 2004-01-29  Julien MOUTTE  <julien@moutte.net>
12767
12768         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
12769         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
12770         again and even before DISCONT.
12771         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
12772         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
12773         bytestream so that it's not stopping to fill the bytestream if events
12774         different than EOS or DISCONT are received. Instead it process them so
12775         that they go downstream.
12776
12777 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12778
12779         * docs/gst/tmpl/gstelement.sgml:
12780         * docs/gst/tmpl/gstreamer-unused.sgml:
12781         * docs/gst/tmpl/gstxml.sgml:
12782         * gst/autoplug/gstspideridentity.c:
12783         (gst_spider_identity_sink_loop_type_finding):
12784         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12785         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12786         (gst_filesink_close_file), (gst_filesink_handle_event),
12787         (gst_filesink_chain):
12788         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12789         (gst_filesrc_get_read), (gst_filesrc_open_file):
12790         * gst/elements/gstidentity.c: (gst_identity_chain):
12791         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12792         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12793         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12794         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12795         * gst/gstelement.h:
12796         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12797         (gst_pad_recover_caps_error), (gst_pad_pull):
12798         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12799         * gst/schedulers/gstbasicscheduler.c:
12800         (gst_basic_scheduler_chainhandler_proxy),
12801         (gst_basic_scheduler_gethandler_proxy),
12802         (gst_basic_scheduler_cothreaded_chain):
12803           gst_element_error -> GST_ELEMENT_ERROR
12804
12805 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12806
12807         * docs/Makefile.am:
12808         * docs/gst/tmpl/gstelement.sgml:
12809         * docs/gst/tmpl/gstxml.sgml:
12810         * docs/manuals.mak:
12811         * docs/pwg/advanced-request.xml:
12812         * docs/pwg/advanced-scheduling.xml:
12813         * docs/pwg/advanced-tagging.xml:
12814           fix non-validating docbook using CDATA
12815           make sure make check-local gets run first to check if it validates
12816
12817 2004-01-29  Julien MOUTTE <julien@moutte.net>
12818
12819         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
12820         handling (up and downstream).
12821         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
12822         my_filter thing.
12823
12824 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12825
12826         * docs/pwg/advanced-tagging.xml:
12827           Add docs about tag writing.
12828
12829 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12830
12831         * docs/pwg/advanced-tagging.xml:
12832           Add a part about tag reading and application signalling... Tag
12833           writing still needs to be documented.
12834         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12835           We can set file locations in READY, too.
12836
12837 2004-01-29  Julien MOUTTE <julien@moutte.net>
12838
12839         * docs/random/ds/element-checklist: Adding some notes about src
12840         events.
12841
12842 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12843
12844         * docs/random/mimetypes:
12845           Update docs to point to correct elements for various mimetypes, and
12846           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
12847           <stephane.loeuillet@tiscali.fr>.
12848
12849 2004-01-28  David Schleef  <ds@schleef.org>
12850
12851         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
12852
12853 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12854
12855         * docs/random/mimetypes:
12856           update docs for audio/x-raw-float. Add "buffer-frames=0 means
12857           undefined"
12858         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12859           make it only work in NULL.
12860         * gst/gstcaps.c:
12861           don't posion NULL caps
12862         * gst/gstelement.c: (gst_element_set_time):
12863           add debugging statement
12864         * gst/gstelement.c: (gst_element_emit_found_tag),
12865         (gst_element_found_tag_func), (gst_element_found_tags):
12866         * gst/gstelement.h:
12867           These functions take const taglists
12868         * gst/gstpad.c: (gst_pad_proxy_getcaps):
12869           fix memleak
12870         * gst/gstpad.c: (gst_pad_event_default):
12871           make more effort on handling discont and clocks, g_warn if everything
12872           fails
12873         * gst/gststructure.c: (gst_structure_remove_fields),
12874         (gst_structure_remove_fields_valist):
12875         * gst/gststructure.h:
12876           add gst_structure_remove_fields(_valist)
12877         * gst/gsttag.c:
12878           fix doc glitch
12879
12880 2004-01-28  David Schleef  <ds@schleef.org>
12881
12882         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
12883         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
12884         Fix memory leakage of gst_caps_to_string().
12885
12886         Use GST_PTR_FORMAT instead of gst_caps_to_string():
12887         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
12888         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
12889         (gst_spider_identity_sink_loop_type_finding):
12890         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12891         (find_suggest):
12892         * gst/gstpad.c: (gst_pad_try_relink_filtered),
12893         (gst_pad_set_explicit_caps):
12894         * gst/parse/grammar.y:
12895
12896 2004-01-28  David Schleef  <ds@schleef.org>
12897
12898         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
12899         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
12900         * docs/random/ds/0.9-suggested-changes: Notes from Company.
12901         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
12902         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
12903         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
12904         (gst_debug_log_default), (_gst_info_printf_extension),
12905         (_gst_info_printf_extension_arginfo):  Add printf extension.
12906         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
12907         * gst/gststructure.c: (gst_structure_to_string),
12908         (_gst_structure_parse_value): Use gst_value_deserialize() and
12909         remove old code.
12910         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
12911         (gst_value_deserialize_boolean), (gst_strtoi),
12912         (gst_value_deserialize_int), (gst_value_deserialize_double),
12913         (gst_value_deserialize_string), (gst_value_deserialize): Implement
12914         a bunch of deserialize functions and gst_value_deserialize.
12915         * gst/gstvalue.h: er, _de_serialize, not unserialize
12916         * testsuite/caps/string-conversions.c: (main): We don't currently
12917         handle (float) in caps, so convert these to (double).
12918         * testsuite/debug/Makefile.am: Add new test for the printf extension
12919         * testsuite/debug/printf_extension.c: (main): same
12920
12921 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12922
12923         * docs/random/company/time:
12924           Add some docs about clocking and time
12925
12926 2004-01-28  Julien MOUTTE <julien@moutte.net>
12927
12928         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
12929
12930 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12931
12932         * docs/pwg/advanced-clock.xml:
12933         * docs/pwg/advanced-dparams.xml:
12934         * docs/pwg/advanced-events.xml:
12935         * docs/pwg/advanced-interfaces.xml:
12936         * docs/pwg/advanced-midi.xml:
12937         * docs/pwg/advanced-request.xml:
12938         * docs/pwg/advanced-scheduling.xml:
12939         * docs/pwg/advanced-tagging.xml:
12940         * docs/pwg/advanced-types.xml:
12941         * docs/pwg/appendix-checklist.xml:
12942         * docs/pwg/building-boiler.xml:
12943         * docs/pwg/building-chainfn.xml:
12944         * docs/pwg/building-filterfactory.xml:
12945         * docs/pwg/building-pads.xml:
12946         * docs/pwg/building-props.xml:
12947         * docs/pwg/building-signals.xml:
12948         * docs/pwg/building-state.xml:
12949         * docs/pwg/building-testapp.xml:
12950         * docs/pwg/intro-basics.xml:
12951         * docs/pwg/intro-preface.xml:
12952         * docs/pwg/other-autoplugger.xml:
12953         * docs/pwg/other-sink.xml:
12954         * docs/pwg/other-source.xml:
12955         * docs/pwg/titlepage.xml:
12956           fix up id's
12957
12958 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12959
12960         * docs/95NonPath:
12961         * docs/HACKING:
12962         * docs/README:
12963         * docs/building-the-docs-on-debian:
12964           collect relevant bits of doc info
12965
12966 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12967
12968         * docs/pwg/advanced_tagging.xml:
12969           Half-assed commit so Thomas can re-arrange document IDs here to be
12970           consistent, too.
12971
12972 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12973
12974         * docs/manual/autoplugging.xml:
12975         * docs/manual/bins-api.xml:
12976         * docs/manual/bins.xml:
12977         * docs/manual/buffers-api.xml:
12978         * docs/manual/buffers.xml:
12979         * docs/manual/clocks.xml:
12980         * docs/manual/components.xml:
12981         * docs/manual/cothreads.xml:
12982         * docs/manual/debugging.xml:
12983         * docs/manual/dparams-app.xml:
12984         * docs/manual/dynamic.xml:
12985         * docs/manual/elements-api.xml:
12986         * docs/manual/elements.xml:
12987         * docs/manual/factories.xml:
12988         * docs/manual/gnome.xml:
12989         * docs/manual/goals.xml:
12990         * docs/manual/helloworld.xml:
12991         * docs/manual/helloworld2.xml:
12992         * docs/manual/init-api.xml:
12993         * docs/manual/intro.xml:
12994         * docs/manual/links-api.xml:
12995         * docs/manual/links.xml:
12996         * docs/manual/manual.xml:
12997         * docs/manual/motivation.xml:
12998         * docs/manual/pads-api.xml:
12999         * docs/manual/pads.xml:
13000         * docs/manual/plugins-api.xml:
13001         * docs/manual/plugins.xml:
13002         * docs/manual/programs.xml:
13003         * docs/manual/queues.xml:
13004         * docs/manual/quotes.xml:
13005         * docs/manual/schedulers.xml:
13006         * docs/manual/states-api.xml:
13007         * docs/manual/states.xml:
13008         * docs/manual/threads.xml:
13009         * docs/manual/typedetection.xml:
13010         * docs/manual/xml.xml:
13011           use chapter, part, section or misc as id starts for all bits
13012
13013 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13014
13015         * docs/gst/gstreamer-sections.txt:
13016           Fix up TITLE of the sections
13017
13018 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13019
13020         * docs/pwg/advanced_interfaces.xml:
13021           Add documentation on propertyprobing.
13022         * docs/pwg/advanced_events.xml:
13023         * docs/pwg/advanced_tagging.xml:
13024         * docs/pwg/building_boiler.xml:
13025         * docs/pwg/building_filterfactory.xml:
13026         * docs/pwg/pwg.xml:
13027           Move filterfactory and tagging into their own chapter, add a chapter
13028           on events. all these are empty placeholders that will be filled in
13029           some day.
13030
13031 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13032
13033         * docs/pwg/advanced_interfaces.xml:
13034           Docs for mixer interface. Also a check for website uploading.
13035
13036 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13037
13038         * docs/HACKING:
13039         * docs/Makefile.am:
13040         * docs/faq/Makefile.am:
13041         * docs/gst/Makefile.am:
13042         * docs/gst/tmpl/gstelement.sgml:
13043         * docs/gst/tmpl/gstplugin.sgml:
13044         * docs/gst/tmpl/gstreamer-unused.sgml:
13045         * docs/libs/Makefile.am:
13046         * docs/manual/Makefile.am:
13047         * docs/manuals.mak:
13048         * docs/pwg/Makefile.am:
13049         * docs/upload.mak:
13050           Separate out upload target and make it similar for
13051           both docbook and gtk-doc docs
13052
13053 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13054
13055         * docs/manuals.mak:
13056           Fix upload target to work with freedesktop
13057
13058 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13059
13060         * docs/pwg/advanced_types.xml:
13061           Add notes on creating your own types.
13062         * docs/pwg/building_boiler.xml:
13063         * docs/pwg/building_pads.xml:
13064         * docs/pwg/building_state.xml:
13065           Add some stuff about how to retrieve values from structures, how
13066           that relates to types and change layout slightly again to be almost
13067           perfect.
13068
13069 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13070
13071         * docs/pwg/advanced_dparams.xml:
13072         * docs/pwg/advanced_scheduling.xml:
13073           Change index layout slightly.
13074
13075 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13076
13077         * docs/pwg/advanced_clock.xml:
13078         * docs/pwg/advanced_interfaces.xml:
13079         * docs/pwg/advanced_midi.xml:
13080           General placeholders for now.
13081         * docs/pwg/advanced_request.xml:
13082           Explanation about sometimes and request pads.
13083         * docs/pwg/advanced_scheduling.xml:
13084           Concept of bytestream, loopfunctions and schedulers.
13085         * docs/pwg/building_boiler.xml:
13086           Add something about plugin-init.
13087
13088 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13089
13090         * docs/pwg/building_pads.xml:
13091           Fix broken docbook
13092
13093 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13094
13095         * docs/pwg/advanced_interfaces.xml:
13096         * docs/pwg/pwg.xml:
13097           Add as a placeholder for future filling-in.
13098         * docs/pwg/basics_autoplugging.xml:
13099         * docs/pwg/basics_buffers.xml:
13100         * docs/pwg/basics_elements.xml:
13101         * docs/pwg/basics_events.xml:
13102         * docs/pwg/basics_plugins.xml:
13103         * docs/pwg/basics_types.xml:
13104           Remove, because unused (this is all in intro_basics.xml).
13105         * docs/pwg/building_signals.xml:
13106           Short intro to signals + reference to GObject docs - we really
13107           shouldn't go into these sort of things to deply because we don't
13108           use them that extensively anyway.
13109         * docs/pwg/building_state.xml:
13110           Explanation of states. Benjamin, please check.
13111         * docs/pwg/building_testapp.xml:
13112           Put everything in one page - putting only a few lines of content
13113           per page doesn't really make sense.
13114
13115           Time to get into the advanced topics. ;).
13116
13117 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13118
13119         * docs/pwg/advanced_types.xml:
13120           Finish documenting the current state of mimetypes.
13121         * docs/pwg/building_boiler.xml:
13122         * docs/pwg/building_chainfn.xml:
13123         * docs/pwg/building_pads.xml:
13124         * docs/pwg/building_props.xml:
13125         * docs/pwg/building_testapp.xml:
13126           Start documenting the "how to build a simple audio filter" part
13127           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
13128           states and (maybe?) a short introduction to capsnego in the chapter
13129           on pads (building_pads.xml). Capsnego should probably be explained
13130           fully in advanced_capsnego.xml or so.
13131
13132 2004-01-26  David Schleef  <ds@schleef.org>
13133
13134         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
13135         * gst/gstpad.h: Add new function to allow element to (somewhat)
13136         specify non-fixed caps on a pad.
13137         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
13138         that I added a few weeks ago.
13139
13140 2004-01-26  David Schleef  <ds@schleef.org>
13141
13142         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
13143           making try_set_caps() work with non-fixed caps.
13144
13145 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13146
13147         * docs/pwg/advanced_types.xml:
13148         * docs/pwg/intro_basics.xml:
13149         * docs/pwg/intro_preface.xml:
13150         * docs/pwg/pwg.xml:
13151         * docs/pwg/titlepage.xml:
13152           First try to resurrect the PWG. I'm halfway integrating the mimetypes
13153           in here (docs/random/mimetypes), and will from there on work on both
13154           updating outdated parts and adding missing parts.
13155           That doesn't mean I'll fix it completely, but I'll try at least. ;).
13156
13157 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
13158
13159         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
13160           policy is set
13161
13162 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13163
13164         * gst/gstelement.h:
13165           remove gst_element_factory_get_version. It doesn't exist anymore.
13166         * gst/gstplugin.c:
13167         * gst/gstplugin.h:
13168           remove gst_plugin_set_name and change gst_plugin_get_longname to
13169           gst_plugin_get_description to match code.
13170         * gst/gsterror.h:
13171           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
13172         * gst/gstpad.c: (gst_pad_try_set_caps):
13173           make it work with nonfixed caps.
13174           Note that even in the nonfixed case the link function of the pad
13175           that tries to set caps isn't called.
13176
13177 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13178
13179         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
13180           fix bug where buffer was not assembled correctly
13181         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
13182           silence by default
13183         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
13184           only seek if there's no more buffers that could work without seeking
13185
13186 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13187
13188         * gst/gsttag.c: (_gst_tag_initialize):
13189         * gst/gsttag.h:
13190           Add application tag (for encoding/muxing app).
13191
13192 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13193
13194         * autogen.sh:
13195           make autopoint force, and libtoolize not copy
13196         * common/m4/as-docbook.m4:
13197           added docbook xml catalog setup check
13198         * common/m4/gst-doc.m4:
13199           use docbook check
13200
13201 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
13202
13203         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
13204         * gst/gsttag.h:
13205           add GstTagFlag
13206
13207 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13208
13209         * docs/gst/gstreamer-sections.txt:
13210         * docs/gst/tmpl/gst.sgml:
13211         * docs/gst/tmpl/gstbuffer.sgml:
13212         * docs/gst/tmpl/gstclock.sgml:
13213         * docs/gst/tmpl/gstelement.sgml:
13214         * docs/gst/tmpl/gstreamer-unused.sgml:
13215         * docs/gst/tmpl/gstxml.sgml:
13216           sync latest API changes to docs
13217
13218 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13219
13220         * gst/gstpluginfeature.c:
13221           fix doc snippet
13222         * tools/gst-inspect.c: (print_element_list):
13223           fix output of typefind
13224           add GPL header
13225         * tools/gst-launch.c:
13226           add GPL header
13227
13228 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13229
13230         * gst/elements/Makefile.am:
13231         * gst/elements/gstelements.c:
13232         * gst/elements/gsttypefindelement.c:
13233         * gst/elements/gsttypefindelement.h:
13234         * po/POTFILES.in:
13235         * po/fr.po:
13236         * po/nl.po:
13237           renamed gsttypefindelement to gsttypefind, conserving CVS history
13238
13239 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13240
13241         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
13242         * gst/gsttag.h:
13243           add some tags used in ogg as well
13244           fix _ in replaygain tags
13245
13246 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13247
13248         * gst/gsterror.h:
13249           fix wrong GST_LIBRARY_ERROR_ENCODE addition
13250
13251 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13252
13253         * gst/gstelement.c: (gst_element_error_full):
13254         * gst/gstelement.h:
13255           change _extended to _full
13256
13257 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13258
13259         reviewed by: <delete if not using a buddy>
13260
13261         * docs/gst/tmpl/gst.sgml:
13262         * docs/gst/tmpl/gstbuffer.sgml:
13263         * docs/gst/tmpl/gstclock.sgml:
13264         * docs/gst/tmpl/gstelement.sgml:
13265         * docs/gst/tmpl/gstreamer-unused.sgml:
13266         * docs/gst/tmpl/gstxml.sgml:
13267         * gst/gstelement.c: (gst_element_error_full):
13268         * gst/gstelement.h:
13269
13270 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13271
13272         * gst/gstelement.h: fix _gst_element_error_printf prototype
13273
13274 2004-01-20  David Schleef  <ds@schleef.org>
13275
13276         * gst/gststructure.c: (gst_structure_to_string):
13277         Convert function to use gst_value_serialize().
13278         * gst/gstvalue.c: (gst_value_serialize_list),
13279         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
13280         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
13281         (gst_value_serialize_int), (gst_value_serialize_double),
13282         (gst_string_wrap), (gst_value_serialize_string),
13283         (gst_value_serialize), (gst_value_deserialize):
13284         * gst/gstvalue.h:
13285         Add implementations for serialize.
13286
13287 2004-01-20  Julien MOUTTE  <julien@moutte.net>
13288
13289         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
13290         we want to keep that one in the future or change xvidenc.c to use 
13291         another error.
13292
13293 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13294
13295         * gst/gstelement.c: (_gst_element_error_printf):
13296         * gst/gstelement.h:
13297           privatise function
13298
13299 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13300
13301         * docs/random/error:
13302           doc explaining error system
13303         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
13304           cleanup
13305
13306 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13307
13308         * gst/gst-i18n-app.h:
13309         * gst/gst-i18n-lib.h:
13310           remove inclusion of config.h
13311         * po/POTFILES.in:
13312         * po/nl.po:
13313           add gst/gstelement.c
13314
13315 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13316
13317         * po/nl.po: updated Dutch translation
13318
13319 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13320
13321         * gst/gsterror.c: (_gst_core_errors_init),
13322         (_gst_library_errors_init), (_gst_resource_errors_init),
13323         (_gst_stream_errors_init):
13324         remove ending punctuation dots
13325
13326 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13327
13328         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
13329         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
13330         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13331         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13332         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13333         use GST_ERROR_SYSTEM
13334
13335 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13336
13337         * gst/gstelement.c: (gst_element_error_printf),
13338         (gst_element_error_extended):
13339         * gst/gstelement.h:
13340           add a helper printf function so we can have NULL values passed.
13341
13342 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13343
13344         * gst/gstelement.h:
13345           add G_STMT macros to gst_element_error, which isn't strictly
13346           necessary but people tell me to anyway.
13347
13348 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
13349
13350         * gst/Makefile.am:
13351         * gst/autoplug/gstspideridentity.c:
13352         (gst_spider_identity_sink_loop_type_finding):
13353         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
13354         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
13355         (gst_filesink_close_file), (gst_filesink_handle_event),
13356         (gst_filesink_chain):
13357         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
13358         (gst_filesrc_map_region), (gst_filesrc_get_read),
13359         (gst_filesrc_open_file):
13360         * gst/elements/gstidentity.c: (gst_identity_chain):
13361         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13362         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13363         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13364         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
13365         * gst/gst.h:
13366         * gst/gst_private.h:
13367         * gst/gstelement.c: (gst_element_class_init),
13368         (gst_element_default_error), (gst_element_error_func),
13369         (gst_element_error_extended):
13370         * gst/gstelement.h:
13371         * gst/gsterror.c: (_gst_core_errors_init),
13372         (_gst_library_errors_init), (_gst_resource_errors_init),
13373         (_gst_stream_errors_init), (gst_error_get_message):
13374         * gst/gsterror.h:
13375         * gst/gstinfo.c: (_gst_debug_init):
13376         * gst/gstmarshal.list:
13377         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13378         (gst_pad_recover_caps_error), (gst_pad_pull):
13379         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
13380         * gst/schedulers/gstbasicscheduler.c:
13381         (gst_basic_scheduler_chainhandler_proxy),
13382         (gst_basic_scheduler_gethandler_proxy),
13383         (gst_basic_scheduler_cothreaded_chain):
13384         * po/POTFILES.in:
13385         * po/fr.po:
13386         * po/nl.po:
13387           change error signal
13388           add error categories
13389
13390 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
13391
13392         * gst/gsttag.c: (_gst_tag_initialize):
13393         * gst/gsttag.h:
13394         Add replaygain tag
13395
13396 2004-01-18  Colin Walters  <walters@verbum.org>
13397
13398         * examples/retag/retag.c: Call gst_init before processing
13399         program args.  Add g_assert to _link_many call.
13400
13401 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13402
13403         * gst/gstpad.c: (gst_pad_alloc_buffer):
13404           Return a newly allocated buffer when the pad has no peer.
13405
13406 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13407
13408         * gst/gstclock.c: (gst_clock_get_time):
13409           make it compile with gcc 2.95 again.
13410           Patch by Scott Wheeler
13411
13412 2004-01-15  David Schleef  <ds@schleef.org>
13413
13414         * gst/gstcaps.h:
13415         Added gst_caps_is_simple() macro.
13416         * testsuite/caps/caps.c: (test1):
13417         * testsuite/caps/intersect2.c: (main):
13418         * testsuite/caps/intersection.c: (main):
13419         Fixes to make 'make check' work again after removing
13420         gst_caps_is_chained().
13421
13422 2004-01-15  Leif Johnson <leif@ambient.2y.net>
13423
13424         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
13425         and additions to the MIDI document.
13426
13427 2004-01-15  David Schleef  <ds@schleef.org>
13428
13429         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
13430         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
13431         of GST_RPAD_, since we don't know if it's a real or ghost pad.
13432
13433 2004-01-15  David Schleef  <ds@schleef.org>
13434
13435         * gst/gstqueue.c:
13436         * gst/gstqueue.h:
13437         Fix the spelling of "treshold" and make min_threshold actually
13438         affect the queue.
13439
13440 2004-01-15  David Schleef  <ds@schleef.org>
13441
13442         * gst/gstcaps.c:
13443         Add lots of documentation.
13444         * gst/gstcaps.h:
13445         Deprecate a few functions.
13446         * gst/gstpad.c:
13447         Removed use of deprecated functions.
13448
13449 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13450
13451         * gst/gstpad.c: (gst_pad_is_linked):
13452         * gst/gstpad.h:
13453           implement gst_pad_is_linked
13454         * gst/gstelement.h:
13455           reserve space for initiate_state_change
13456
13457 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13458
13459         * gst/autoplug/gstspideridentity.c:
13460         (gst_spider_identity_sink_loop_type_finding):
13461           break infinite loop by just returning instead of looping
13462         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
13463           set event time difference correctly. Set it to 1 second instead
13464           of 100ms to be more tolerant
13465         * gst/gstelement.c: (gst_element_set_time):
13466           add debugging output
13467
13468 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13469
13470         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
13471           query if buffers are inside the pool, ignore events
13472
13473 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13474
13475         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
13476         (gst_clock_set_speed), (gst_clock_set_active),
13477         (gst_clock_is_active), (gst_clock_reset),
13478         (gst_clock_handle_discont):
13479         * gst/gstclock.h:
13480           deprecate old interface and disable functions that aren't in use
13481           anymore.
13482         * gst/gstelement.h:
13483         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
13484         (gst_element_set_time), (gst_element_adjust_time):
13485           add concept of "element time" and functions to get/set this time.
13486         * gst/gstelement.c: (gst_element_change_state):
13487           update element time correctly.
13488         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13489           This is a debug message, not a g_critical.
13490         * gst/gstpad.c: (gst_pad_event_default):
13491           handle discontinuous events right with element time.
13492         * gst/gstscheduler.c: (gst_scheduler_state_transition):
13493           update to clocking fixes.
13494           set clocks on elements in READY=>PAUSED. The old behaviour caused
13495           a wrong element time on the first element that started playing.
13496         * gst/schedulers/gstbasicscheduler.c:
13497         (gst_basic_scheduler_class_init):
13498         * gst/schedulers/gstoptimalscheduler.c:
13499         (gst_opt_scheduler_class_init):
13500           remove code that just implements the default behaviour.
13501         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
13502           update to use new clocking functions
13503         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
13504         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
13505           update to test new element time.
13506         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
13507           use _get_allowed_caps instead of _get_caps. This catches filtered
13508           caps correctly.
13509         * testsuite/debug/commandline.c:
13510           update for new GST_DEBUG syntax.
13511         * testsuite/threads/Makefile.am:
13512           disable a test that only works sometimes.
13513
13514 2004-01-13  Julien MOUTTE <julien@moutte.net>
13515
13516         * po/LINGUAS: Adding fr.
13517         * po/fr.po: Adding french translation.
13518
13519 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13520
13521         * gst/parse/grammar.y:
13522         * po/POTFILES.in:
13523         * po/nl.po:
13524         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
13525           translate parsing error messages
13526
13527 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13528
13529         * po/POTFILES.in: adding gst-launch
13530         * po/nl.po: updated translation, all 99 strings translated
13531         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
13532         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
13533           fix strings for translation
13534
13535 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13536
13537         * gst/gst.c:
13538           - capitalize beginnings of popt options
13539           - fix strings for translation
13540           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
13541
13542 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13543
13544         * po/README: add some notes on how to update translations
13545
13546 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13547
13548         * ABOUT-NLS: removed, is autogenerated from autopoint
13549         * autogen.sh: add autopoint stuff
13550         * configure.ac: fix up gettext stuff
13551         * gst/Makefile.am: add i18n headers to noinst_HEADERS
13552         * gst/elements/gsttypefindelement.c: add header include
13553         * gst/gettext.h: add header, copy from system-installed header
13554         * gst/gst-i18n-app.h: to be included by each app having translations
13555         * gst/gst-i18n-lib.h: to be included by each lib having translations
13556         * gst/gst.c: (init_pre): fix up gettext calls
13557         * gst/gst_private.h: remove i18n stuff, moving to separate headers
13558         * po/LINGUAS: the new way to specify translations present
13559         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
13560         * po/Makevars: the variables filled in for GStreamer
13561         * po/POTFILES.in: added new files with translations
13562         * po/de.po: has new strings
13563         * po/nl.po: readded, has new strings
13564
13565 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13566
13567         * gst/gsttag.c: fix some strings marked for translation
13568
13569 2004-01-13  Iain <iain@prettypeople.org>
13570
13571         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
13572         group when we add an element to it, cos we unref it when we remove one
13573
13574 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
13575
13576         * testsuite/debug/commandline.c: (debug_not_reached):
13577         * testsuite/debug/output.c: (check_message):
13578           fix testsuite
13579
13580 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13581
13582         * examples/cutter/.cvsignore:
13583         * examples/helloworld/.cvsignore:
13584         * examples/launch/.cvsignore:
13585         * examples/manual/.cvsignore:
13586         * examples/mixer/.cvsignore:
13587         * examples/pingpong/.cvsignore:
13588         * examples/plugins/.cvsignore:
13589         * examples/queue/.cvsignore:
13590         * examples/queue2/.cvsignore:
13591         * examples/queue3/.cvsignore:
13592         * examples/queue4/.cvsignore:
13593         * examples/retag/.cvsignore:
13594         * examples/thread/.cvsignore:
13595         * examples/typefind/.cvsignore:
13596         * examples/xml/.cvsignore:
13597         * gst/.cvsignore:
13598         * gst/autoplug/.cvsignore:
13599         * gst/elements/.cvsignore:
13600         * gst/indexers/.cvsignore:
13601         * gst/parse/.cvsignore:
13602         * gst/registries/.cvsignore:
13603         * gst/schedulers/.cvsignore:
13604         * libs/gst/bytestream/.cvsignore:
13605         * libs/gst/control/.cvsignore:
13606         * libs/gst/getbits/.cvsignore:
13607         * tests/.cvsignore:
13608         * tests/bufspeed/.cvsignore:
13609         * tests/instantiate/.cvsignore:
13610         * tests/memchunk/.cvsignore:
13611         * tests/muxing/.cvsignore:
13612         * tests/sched/.cvsignore:
13613         * tests/seeking/.cvsignore:
13614         * tests/threadstate/.cvsignore:
13615         * testsuite/.cvsignore:
13616         * testsuite/caps/.cvsignore:
13617         * testsuite/cleanup/.cvsignore:
13618         * testsuite/dynparams/.cvsignore:
13619         * testsuite/plugin/.cvsignore:
13620         * tools/.cvsignore:
13621           update - this is huge, because it includes *.bb, *.bbg and *.da files
13622           which are generated for gcov.
13623
13624 2004-01-11  David Schleef  <ds@schleef.org>
13625
13626         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
13627         a function to parse integers in ways that strto[u]l() does not.
13628
13629 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13630
13631         * tools/gst-inspect.c: (print_caps):
13632           improve output of caps a bit
13633
13634 2004-01-11  David Schleef  <ds@schleef.org>
13635
13636         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
13637         inherit correct flags (READONLY and DONTKEEP).
13638
13639 2004-01-11  David Schleef  <ds@schleef.org>
13640
13641         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
13642         (gst_filesrc_map_region):
13643         * gst/gstbuffer.c: (_gst_buffer_initialize),
13644         (_gst_buffer_sub_free), (gst_buffer_default_copy),
13645         (gst_buffer_new), (gst_buffer_create_sub),
13646         (gst_buffer_is_span_fast), (gst_buffer_span):
13647         * gst/gstbuffer.h:
13648         Change GstBuffer private structure element names. (all files)
13649         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
13650         (gst_queue_link):
13651         * gst/gstqueue.h:
13652         Implement getcaps/pad_link functions that handle the case where
13653         there are data in the queue.
13654
13655 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13656
13657         * gst/elements/gstbufferstore.c:
13658           initialize debugging structure correctly
13659         * gst/elements/gsttee.c: (gst_tee_set_property):
13660           g_object_notify when property was changed
13661         * gst/elements/gsttypefindelement.c:
13662         (gst_type_find_element_change_state):
13663           clear caps correctly
13664
13665 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13666
13667         * gst/gstqueue.c: (gst_queue_init):
13668           Use better defaults for when a queue should block. This
13669           gets rid of jerky playback for quite a few files.
13670           It takes more memory.
13671
13672 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
13673
13674         (gst_xml_registry_parse_padtemplate):
13675           make critical message slightly more useful
13676
13677 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13678
13679         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
13680         (gst_debug_message_get), (gst_debug_log_default):
13681         * gst/gstinfo.h:
13682           Change gst_debug_log(_valist) to take a const format string.
13683           Change prototype of log function and functions using those to 
13684           take a GstDebugMessage instead of a string that requires using
13685           gst_debug_message_get.
13686
13687 2004-01-08  David Schleef  <ds@schleef.org>
13688
13689         * Makefile.am:
13690         * configure.ac:
13691         Add option --enable-gcov to build GStreamer with -fprofile-arcs
13692         and -ftest-coverage, which allows gcov to show information about
13693         testsuite coverage.
13694
13695 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13696
13697         * gst/gstutils.h:
13698           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
13699           GST_PARENT_CALL_WITH_DEFAULT
13700         * gst/elements/gstaggregator.c: 
13701         * gst/elements/gstbufferstore.c: 
13702         * gst/elements/gstfakesink.c: 
13703         * gst/elements/gstfakesrc.c: 
13704         * gst/elements/gstfdsink.c: 
13705         * gst/elements/gstfdsrc.c: 
13706         * gst/elements/gstfilesink.c: 
13707         * gst/elements/gstfilesrc.c: 
13708         * gst/elements/gstidentity.c: 
13709         * gst/elements/gstmd5sink.c: 
13710         * gst/elements/gstmultidisksrc.c:
13711         * gst/elements/gstpipefilter.c: 
13712         * gst/elements/gstshaper.c:
13713         * gst/elements/gststatistics.c:
13714         * gst/elements/gsttee.c:
13715         * gst/elements/gsttypefindelement.c:
13716           use them.
13717
13718 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
13719
13720         * docs/gst/gstreamer-docs.sgml: remove props
13721         * docs/gst/gstreamer-sections.txt: remove props
13722         * docs/gst/tmpl/gst.sgml:
13723         * docs/gst/tmpl/gstbin.sgml:
13724         * docs/gst/tmpl/gstbuffer.sgml:
13725         * docs/gst/tmpl/gstcaps.sgml:
13726         * docs/gst/tmpl/gstclock.sgml:
13727         * docs/gst/tmpl/gstelement.sgml:
13728         * docs/gst/tmpl/gstindex.sgml:
13729         * docs/gst/tmpl/gstobject.sgml:
13730         * docs/gst/tmpl/gstpad.sgml:
13731         * docs/gst/tmpl/gstpadtemplate.sgml:
13732         * docs/gst/tmpl/gstreamer-unused.sgml:
13733         * docs/gst/tmpl/gstthread.sgml:
13734         * docs/gst/tmpl/gstxml.sgml:
13735           sync with code reorganization
13736
13737 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
13738
13739         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13740         Make the 'Could not find compatible pad' message more informative.
13741
13742 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13743                                                                                 
13744         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
13745           Fix for if we pass NULL as property to location.
13746         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
13747         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
13748           Fix for instantiate-test (see below).
13749         * gst/gststructure.c: (_gst_structure_parse_value):
13750           Fix compile error on gcc-2.96.
13751         * configure.ac:
13752         * tests/Makefile.am:
13753         * tests/instantiate/Makefile.am:
13754         * tests/instantiate/create.c: (create_all_elements), (main):
13755           Add a test that instantiates all elements. This makes it easy to
13756           track dead code for old API/design (like setting event functions
13757           on sink pads and so on).
13758
13759 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
13760
13761         * gst/gstcaps.c: (gst_caps_append_structure):
13762           Move the poisoning to allow a NULL structure
13763         * gst/gstevent.c: (_gst_event_free):
13764           When freeing a navigation event, free the structure
13765           also
13766
13767 2004-01-04  David Schleef  <ds@schleef.org>
13768
13769         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13770         Remove usage of gst_pad_proxy_fixate.
13771         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
13772         (gst_caps_split_one), (gst_caps_replace):
13773         Add poisoning code.
13774         * gst/gstmarshal.list:
13775         Add pointer__pointer for fixate signal
13776         * gst/gstpad.c: (gst_real_pad_class_init),
13777         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
13778         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
13779         (gst_pad_set_explicit_caps), (gst_pad_template_new):
13780         Add poisoning code. Add fixate signal on RealPad. Change
13781         set_explicit_caps() to take const GstCaps, like try_set_caps().
13782         * gst/gstpad.h:
13783         * testsuite/caps/Makefile.am:
13784         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
13785
13786 2004-01-03  David Schleef  <ds@schleef.org>
13787
13788         * gst/elements/gsttypefindelement.c:
13789         (gst_type_find_element_have_type), (gst_type_find_element_init):
13790         Use gst_pad_use_explicit_caps for src pad.
13791         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
13792         before using it.
13793
13794 2004-01-03  David Schleef  <ds@schleef.org>
13795
13796         * gst/gstelement.c: (gst_element_link_pads_filtered),
13797         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
13798         that linking was successful.
13799         * gst/gstpad.c: (gst_pad_link_free),
13800         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
13801         (gst_pad_link_try), (gst_pad_link_unnegotiate),
13802         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
13803         GstPadLinkReturn correctly between functions, and don't fail
13804         when DELAYED is used (DELAYED is very important).  Better
13805         cleanup on unlinking and unnegotiation.  Should fix some spider
13806         bugs.
13807
13808 2004-01-02  David Schleef  <ds@schleef.org>
13809
13810         * gst/gstelement.c: (gst_element_class_init),
13811         (gst_element_base_class_init): ->padtemplates should be cleared
13812         in base_init, since we need to have a fresh list for every
13813         class.  (Alternately, we chould copy the list and share the
13814         actual pad templates (not the list), but that would require
13815         changing every plugin to move pad template registration from
13816         base_init to class_init.)
13817
13818 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13819
13820         * gst/gstelement.c: (gst_element_class_add_pad_template):
13821           Refuse registering a pad template if another pad template
13822           with the same name already exists (#114715).
13823
13824 2004-01-02  David Schleef  <ds@schleef.org>
13825
13826         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
13827         (gst_caps_is_equal_fixed): Add new function.
13828         * gst/gstcaps.h: ditto.
13829         * gst/gstpad.c: (gst_real_pad_class_init),
13830         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
13831         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
13832         check new caps against existing caps -- if they're the same, return
13833         OK without renegotiating.  caps-nego-failed signal fixed so that
13834         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
13835         to save an extra caps copy.  Don't complete negotiation if a pad
13836         link function returns DELAYED.
13837
13838 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13839
13840         * gst/gstpad.c: (gst_pad_try_relink_filtered):
13841           Fix wrong g_return_if_fail
13842
13843 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
13844
13845         * gst/gstbin.c: (gst_bin_class_init):
13846         Change the marshalling of element_added/element_removed
13847         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
13848         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
13849
13850 2004-01-01  David Schleef  <ds@schleef.org>
13851
13852         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13853         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
13854         (gst_pad_use_explicit_caps):
13855         * gst/gstpad.h:
13856         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
13857         to use an internal getcaps and link fuction so that negotiation
13858         always results in the explicitly set caps.
13859         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
13860         are particularly useful for decoders.
13861
13862 2003-12-31  David Schleef  <ds@schleef.org>
13863
13864         * gst/elements/gstidentity.c: (gst_identity_class_init),
13865         (gst_identity_init), (gst_identity_chain),
13866         (gst_identity_set_property), (gst_identity_get_property):
13867         * gst/elements/gstidentity.h:
13868         * gst/gstqueue.c: (gst_queue_init):
13869           Negotiation fixes.
13870
13871 2003-12-31  David Schleef  <ds@schleef.org>
13872
13873         * gst/gstcaps.c: (gst_caps_intersect),
13874         (_gst_caps_normalize_foreach), (gst_caps_normalize):
13875           Implement gst_caps_normalize().
13876         * testsuite/caps/normalisation.c: (main):
13877           Add an additional test
13878
13879 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13880
13881         * gst/gstqueue.c: (gst_queue_init):
13882           use gst_pad_proxy_getcaps()
13883
13884 2003-12-31  David Schleef  <ds@schleef.org>
13885
13886         * gst/elements/gstshaper.c: (gst_shaper_link):
13887         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13888         * gst/gstqueue.c: (gst_queue_link):
13889           Negotiation fixes.
13890
13891 2003-12-31  David Schleef  <ds@schleef.org>
13892
13893         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
13894         * gst/gstpad.h: Add functions that are useful as default pad
13895         link and fixate functions for elements.
13896
13897 2003-12-30  David Schleef  <ds@schleef.org>
13898
13899         * gst/gstpad.c: (gst_pad_link_try):
13900           Fix segfault when attempting to return to old caps
13901
13902 2003-12-29  David Schleef  <ds@schleef.org>
13903
13904         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
13905         (gst_caps_structure_simplify), (gst_caps_simplify):
13906         * gst/gstcaps.h:
13907           Add simplify function
13908         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
13909         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
13910         * gst/gstpad.h:
13911           Copy over srcnotify, sinknotify when calling old pad_link
13912           functions.  Add new is_negotiated() function.
13913         * gst/gststructure.c: (gst_structure_copy):
13914           Fix an incredibly stupid bug that should have been noticed
13915           weeks ago.  _copy() returned the argument, not the new copy.
13916
13917 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13918
13919         * gst/gstcaps.c: (gst_caps_append):
13920           add sanity checks
13921         * gst/gstcaps.h: (gst_caps_debug):
13922           remove, it doesn't exist anymore.
13923         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
13924         (gst_element_threadsafe_properties_post_run):
13925           make debugging messages not clutter up THREAD debug category
13926         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
13927         (gst_element_change_state):
13928           update to new caps API
13929         * gst/gstinterface.c: (gst_implements_interface_cast):
13930           don't put vital code in g_return_if_fail
13931         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
13932         (gst_pad_link_filtered):
13933           add pst_pad_try_link and use it.
13934         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
13935           implement correctly, deprecate first one.
13936         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
13937           add and implement.
13938         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
13939           implement.
13940         (gst_pad_get_negotiated_caps):
13941           add and implement. Make GST_PAD_CAPS call this function.
13942         (gst_pad_get_caps):
13943           remove unneeded check..
13944         (gst_pad_recover_caps_error):
13945           disable, always return FALSE.
13946         (gst_real_pad_dispose):
13947           don't free caps and appfilter anymore, they're unused.
13948         * gst/gstpad.h:
13949           Reflect changes mentioned above.
13950         * gst/gstsystemclock.c: (gst_system_clock_wait):
13951           Make 'clock is way behind' a debugging message.
13952         * gst/gstthread.c: (gst_thread_change_state):
13953           Fix debugging message
13954
13955 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
13956
13957         * gst/gstinfo.h:
13958           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
13959         * docs/gst/tmpl/gstreamer-unused.sgml:
13960           removed all traces of cvs conflicts
13961
13962 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13963
13964         * configure.ac:
13965         * gst/schedulers/cothreads_compat.h:
13966         * libs/Makefile.am:
13967           remove last instances of wingo cothread usage
13968
13969 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13970
13971         * gst/gstplugin.c:
13972         * gst/gstversion.h.in:
13973         * gst/parse/grammar.y:
13974           change comment block from /** to /* when not gtk-doc comments
13975
13976 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13977
13978         * gst/gst.c: whitespace and doc style fixes
13979
13980 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13981
13982         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
13983
13984 2003-12-24  Colin Walters  <walters@verbum.org>
13985
13986         * gst/elements/gsttypefindelement.c:
13987           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
13988           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
13989           Don't double-free caps.
13990
13991 2003-12-23  David Schleef  <ds@schleef.org>
13992
13993         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
13994           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
13995           Many little fixes and additions of debug statements to
13996           get rhythmbox working.
13997
13998 2003-12-23  Colin Walters  <walters@verbum.org>
13999
14000         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
14001         Use GST_PAD_LINK_SUCCESSFUL.
14002
14003 2003-12-23  David Schleef  <ds@schleef.org>
14004
14005         * gst/elements/gstaggregator.c:
14006         * gst/elements/gsttee.c:
14007           Use gst_pad_proxy_getcaps().
14008         * gst/gstpad.c:
14009         * gst/gstpad.h:
14010           Add gst_pad_proxy_getcaps(), which filter elements can use
14011           as a generic getcaps implementation.
14012           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
14013           was advertised.
14014
14015 2003-12-23  David Schleef  <ds@schleef.org>
14016
14017         * gst/gstpad.c:
14018           Rearrange/rewrite much of the pad negotiation code, since it
14019           resembled pasta.  This actually changes the way some
14020           negotiation works, since the previous code was inconsistent
14021           depending on how it was invoked.  Add (internal) structure
14022           GstPadLink, which is used to hold some information (more in
14023           the future) about the link between two pads.  Fixes a number
14024           of bugs, including random lossage of filter caps when the
14025           initial negotiation is delayed.  A few functions are still
14026           unimplemented.
14027         * gst/gstpad.h:
14028           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
14029           these when testing GstPadLinkReturn values instead of comparing
14030           directly.
14031
14032 2003-12-23  David Schleef  <ds@schleef.org>
14033
14034         * gst/gstvalue.c: 
14035         * gst/gstvalue.h:
14036           Rearrange lots of code.  Change registration of compare function
14037           into registration of compare/serialize/deserialize functions.
14038           Doesn't include implementation of gst_value_[de]serialize(),
14039           but that should be easy.
14040
14041 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
14042
14043         * docs/gst/gstreamer-sections.txt:
14044         * docs/gst/tmpl/gstprops.sgml: removed
14045         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
14046           David removed props and caps code, so let's remove their docs as well.
14047           Removed all no longer existing symbols from gstreamer-sections.txt
14048           
14049 2003-12-22  Colin Walters  <walters@verbum.org>
14050
14051         * gst/gsttaginterface.c, gst/gsttaginterface.h,
14052           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
14053           of tags directly.
14054
14055 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14056
14057         * gst/elements/gstelements.c:
14058           Set ranks of elements to NONE, so the autoplugger doesn't use them.
14059         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
14060           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
14061           gst_caps (peer).
14062
14063 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14064
14065         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
14066         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
14067         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
14068         (gst_spider_identity_sink_loop_type_finding):
14069         * gst/autoplug/gstspideridentity.h:
14070           Fix autoplugging in spider element, so it works with new caps.
14071           This was mainly caused by identifying empty caps incorrectly.
14072
14073 2003-12-22  David Schleef  <ds@schleef.org>
14074
14075         * gststructure.c, gstvalue.c, gstvalue.h: Add
14076           gst_value_init_and_copy() and use it, to avoid silly mistakes in
14077           using g_value_copy()
14078
14079 2003-12-21  David Schleef  <ds@schleef.org>
14080
14081         * many, many files: Merge CAPS branch.  This includes:
14082           - implemention of GstValue and several GstValue types
14083           - implemention of GstStructure
14084           - entire rewrite of GstCaps
14085           - removal of GstProps
14086           - many changes to GstPad to compensate for new caps paradigm
14087           - removal of GstBufferpool
14088         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
14089         gstvalue.h, gst/gstcaps[2]*.[ch]:
14090           - rename gstcaps2.[ch] to gstcaps.[ch]
14091
14092 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
14093
14094         * gst/gstqueue.c: (gst_queue_handle_pending_events),
14095         (gst_queue_chain), (gst_queue_handle_src_event):
14096           implement timeout for sending events. Workaround for if the
14097           pipeline on this queue is not passing any data.
14098
14099 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
14100                                                                                 
14101         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
14102         * moved CVS to freedesktop.org