check/gst/gstevents.c: Should fix build on 64-bit arch's
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
2
3         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
4         (test_event), (timediff), (gstevents_suite):
5           Should fix build on 64-bit arch's
6
7 2005-08-18  Andy Wingo  <wingo@pobox.com>
8
9         Make sure that when a pipeline goes to PLAYING, that data has
10         actually hit the sink.
11
12         * check/states/sinks.c (test_sink): A sink that doesn't get any
13         data shouldn't return SUCCESS for going to either PLAYING or
14         PAUSED. Test also the return values on the way back down.
15
16         * gst/gstelement.c (gst_element_set_state): When changing the
17         state of an element currently changing state asynchronously, go to
18         lost-state after commiting the pending state. Makes future calls
19         to get_state continue to return ASYNC.
20
21         * gst/base/gstbasesink.c (gst_base_sink_change_state): Return
22         ASYNC when going to PLAYING if we still don't have preroll, as can
23         happen with live sources.
24
25 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
26
27         * docs/pwg/advanced-types.xml:
28           Hack long paragraph into 2 chunks as a workaround for buggy
29           jadetex version in sid and breezy that loops infinitely and
30           eats all RAM.
31
32 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
33
34         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
35         (test_event), (timediff), (gstevents_suite):
36           Provide more error margin in clock measurements to allow for 
37           g_get_current_time inaccuracies.
38
39 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
40
41         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
42         (test_event), (timediff), (gstevents_suite):
43            Fix error message output so I might be able to tell why the
44            test works here but fails on the build farm.
45
46 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
47
48         * check/Makefile.am:
49         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
50         (test_event), (timediff), (gstevents_suite), (main):
51           I wrote a test!
52
53         * docs/design/part-seeking.txt:
54           Spelling correction
55
56         * docs/gst/tmpl/gstevent.sgml:
57         * docs/gst/tmpl/gstfakesrc.sgml:
58           Docs updates.
59
60         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
61           Treat a buffer-without-newsegment the same as a receiving 
62           a newsegment not in time format, and disable syncing to the clock
63           with a warning.
64
65         * gst/gstbus.c: (gst_bus_set_sync_handler):
66           Assert if anyone tries to replace the existing sync_handler for bus, 
67           as only the owner should be setting it.
68
69         * gst/gstevent.h:
70           Have a fixed set of custom event enums with events identified by
71           their structure name (as in 0.8), rather than a free-for-all
72           allowing collisions between enum values from different plugins.
73
74         * gst/gstpad.c: (gst_pad_class_init):
75           Docs change.
76           
77         * gst/gstqueue.c: (gst_queue_handle_sink_event):
78           Handle out-of-band downstream events from the sending thread.
79
80 2005-08-17  Andy Wingo  <wingo@pobox.com>
81
82         * gst/gstpipeline.c (gst_pipeline_change_state): Interpret
83         play-timeout==0 to mean no timeout at all. In that case, don't
84         bother with a get_state or a warning, just return directly, even
85         if it's ASYNC.
86
87         * gst/base/gstbasetransform.c: Debug changes.
88
89         * gst/gstutils.h:
90         * gst/gstutils.c (gst_bin_watch_for_state_change): Add function to
91         ensure bins post state change messages. A bit of a hack but I can't
92         think of a way to avoid it.
93
94         * check/gst/gstbin.c (test_watch_for_state_change): Added test.
95
96 2005-08-16  Andy Wingo  <wingo@pobox.com>
97
98         * gst/base/gstadapter.h:
99         * gst/base/gstadapter.c (gst_adapter_take): New function, like
100         peek() but you own the data. Not terribly efficient atm.
101
102 2005-08-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
103
104         * gst/gstutils.c: (gst_element_found_tags_for_pad), (push_and_ref),
105         (gst_element_found_tags):
106         * gst/gstutils.h:
107           Add two utility functions for tag handling.
108
109 2005-08-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
110
111         * docs/manual/advanced-dataaccess.xml:
112         * docs/manual/basics-helloworld.xml:
113           Fix docs to use _bin_add() before _link(), which fixes the examples
114           with recent core versions (reported by Madhan Raj M
115           <raj_madan@rediffmail.com>, #313199).
116
117 2005-08-16  Wim Taymans  <wim@fluendo.com>
118
119         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
120         Added subtract checks.
121
122         * docs/design/part-events.txt:
123         Some more docs about newsegment
124
125         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
126         Fix FIXME
127
128         * gst/gstcaps.c: (gst_caps_to_string):
129         Add comments, cleanups.
130         
131         * gst/gstelement.c: (gst_element_save_thyself):
132         cleanups
133         
134         * gst/gstvalue.c: (gst_value_collect_int_range),
135         (gst_string_unwrap), (gst_value_union_int_int_range),
136         (gst_value_union_int_range_int_range),
137         (gst_value_intersect_int_int_range),
138         (gst_value_intersect_int_range_int_range),
139         (gst_value_intersect_double_double_range),
140         (gst_value_intersect_double_range_double_range),
141         (gst_value_intersect_list), (gst_value_subtract_int_int_range),
142         (gst_value_subtract_int_range_int),
143         (gst_value_subtract_double_range_double),
144         (gst_value_subtract_double_range_double_range),
145         (gst_value_subtract_from_list), (gst_value_subtract_list),
146         (gst_value_can_compare), (gst_value_compare_fraction):
147         Cleanups, add comments, remove unneeded asserts.
148
149 2005-08-15  Thomas Vander Stichele  <thomas at apestaart dot org>
150
151         * tools/gst-launch.c: (event_loop):
152           don't convert NULL structures to strings
153
154 2005-08-15  Stefan Kost  <ensonic@users.sf.net>
155
156         * docs/gst/gstreamer-sections.txt:
157           made some defines private
158         * docs/gst/tmpl/gstconfig.sgml:
159         * docs/gst/tmpl/gstqueue.sgml:
160         * docs/gst/tmpl/gsttaglist.sgml:
161         * docs/gst/tmpl/gsttypes.sgml:
162         * docs/gst/tmpl/gstutils.sgml:
163         * docs/pwg/appendix-porting.xml:
164         * gst/base/gstbasesink.h:
165         * gst/base/gstbasesrc.c:
166         * gst/base/gstbasesrc.h:
167         * gst/elements/gstfakesink.c: (gst_fake_sink_class_init):
168         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init):
169         * gst/gstelement.c: (gst_element_class_init):
170         * gst/gstpad.c: (gst_pad_class_init):
171         * gst/gstqueue.c: (gst_queue_class_init):
172         * gst/gstxml.c: (gst_xml_class_init):
173           documented all undocumented signal inline
174         * libs/gst/controller/gst-controller.h:
175           added padding
176
177 2005-08-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
178
179         * docs/pwg/appendix-porting.xml:
180           Document _set_link_function -> _set_setcaps_function.
181
182 2005-08-15  Thomas Vander Stichele  <thomas at apestaart dot org>
183
184         * check/Makefile.am:
185           add a .check target for running the check
186         * check/gst-libs/controller.c: (GST_START_TEST):
187           cosmetic fixups
188         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
189           complete checks for gstbuffer; would be nice if I could get the
190           gcov stuff to work so I can see if I actually completed gstbuffer.c
191         * check/gstcheck.h:
192           add ASSERT_BUFFER_REFCOUNT
193
194 2005-08-13  Tim-Philipp Müller  <tim at centricular dot net>
195
196         * docs/gst/gstreamer-sections.txt:
197         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
198         * gst/gsttag.h:
199           Add GST_TAG_LANGUAGE_CODE as we have in 0.8, and don't
200           spew out a warning if a tag that is already registered
201           is re-registered, unless it is re-registered with a 
202           different type (#308438).
203
204 2005-08-12  Tim-Philipp Müller  <tim at centricular dot net>
205
206         * docs/pwg/appendix-porting.xml:
207         * docs/pwg/building-state.xml:
208           Add some paragraphs about state changes in 0.9 to the PWG
209           and the porting guide, in particular about the new meaning
210           of GST_STATE_PAUSED and how to write state change functions
211           with concurrent access by multiple threads in mind.
212
213 2005-08-11  Stefan Kost  <ensonic@users.sf.net>
214
215         * docs/gst/gstreamer-docs.sgml:
216         * docs/libs/gstreamer-libs-docs.sgml:
217           added deprecation and since indexes
218         * libs/gst/controller/gst-controller.c:
219         * libs/gst/controller/gst-helper.c:
220           added since tags
221
222
223 2005-08-11  Wim Taymans  <wim@fluendo.com>
224
225         * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked),
226         (gst_proxy_pad_set_target), (gst_proxy_pad_get_target),
227         (gst_proxy_pad_dispose), (gst_ghost_pad_do_activate_push),
228         (gst_ghost_pad_do_link), (gst_ghost_pad_set_internal),
229         (gst_ghost_pad_new_notarget), (gst_ghost_pad_get_target),
230         (gst_ghost_pad_set_target):
231         Actually implement (re)setting the target on a ghostpad
232         as described in the docs.
233
234 2005-08-10  Tim-Philipp Müller  <tim at centricular dot net>
235
236         * gst/gst.c: (gst_init_check_with_popt_table), (init_pre):
237           Check whether GST_DEBUG_NO_COLOR environment variable is
238           set and disable coloured debug output if that is the case.
239
240 2005-08-10  Tim-Philipp Müller  <tim at centricular dot net>
241
242         * gst/base/gsttypefindhelper.c: (helper_find_peek),
243         (gst_type_find_helper):
244           The memory returned by gst_type_find_peek() needs to
245           stay valid until the end of a typefind function, and
246           typefind functions may keep results from different 
247           offsets around, so we can't just unref the buffer from
248           the previous _peek(), but have to save all buffers 
249           returned by _peek() until typefinding is done and only
250           free them then.
251
252 2005-08-09  Tim-Philipp Müller  <tim at centricular dot net>
253
254         * docs/gst/gstreamer-sections.txt:
255         * gst/gstutils.h:
256           New macros: GST_ROUND_UP_2() through GST_ROUND_UP_64().
257
258 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
259
260         * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
261           Fix a pretty good memleak.
262
263 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
264
265         * gst/gstiterator.h:
266           Fix wrong include and 'make distcheck'.
267
268 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
269
270         * gst/gstbin.c: (bin_bus_handler):
271           Use gst_element_post_message() instead.
272
273 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
274
275         * gst/base/gstadapter.h:
276         * gst/base/gstbasesink.h:
277         * gst/base/gstbasesrc.h:
278         * gst/base/gstbasetransform.h:
279         * gst/base/gstcollectpads.h:
280         * gst/base/gstpushsrc.h:
281         * gst/gstiterator.h:
282           Add padding to our base elements' class and instance structs and
283           to GstIterator (you will need to rebuild all plugins and apps!)
284
285 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
286
287         * gst/gstbin.c: (bin_bus_handler):
288           Make default message forwarding from child->bus to bin->bus
289           threadsafe and make it not emit warnings if the parent has no bus.
290
291 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
292
293         * gst/gstelement.c: (activate_pads):
294           On paused->ready, set pad->caps to NULL, as is the documented
295           behaviour in this state change. Fixes playback of series of
296           media files when visualization is enabled in Totem.
297
298 2005-08-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
299
300         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
301           Allow NULL as filter-caps (which means "any").
302
303 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
304
305         * docs/libs/gstreamer-libs-sections.txt:
306         * libs/gst/controller/gst-controller.c:
307         * libs/gst/controller/gst-controller.h:
308         * libs/gst/controller/gst-helper.c:
309           adding more entries to the docs and fix small doc-bugs
310
311 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
312
313         * docs/gst/gstreamer-docs.sgml:
314         * docs/gst/gstreamer-sections.txt:
315         * docs/gst/gstreamer.types:
316         * docs/gst/tmpl/gstbasesink.sgml:
317         * docs/gst/tmpl/gstbasesrc.sgml:
318         * docs/gst/tmpl/gstbasetransform.sgml:
319         * docs/gst/tmpl/gstfakesrc.sgml:
320         * gst/base/gstcollectpads.c:
321         * gst/base/gstcollectpads.h:
322         * libs/gst/controller/gst-controller.c:
323         * libs/gst/controller/gst-controller.h:
324         * libs/gst/controller/gst-helper.c:
325         * libs/gst/controller/gst-interpolation.c:
326         * libs/gst/controller/lib.c:
327           added long/short desc for controller docs
328           added collectpads base class docs
329           added correct includes to base-class docs
330
331 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
332
333         * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
334         (gst_test_mono_source_set_property),
335         (gst_test_mono_source_class_init), (GST_START_TEST),
336         (gst_controller_suite):
337         * docs/gst/gstreamer-docs.sgml:
338         * docs/gst/gstreamer-sections.txt:
339         * docs/gst/gstreamer.types:
340         * docs/libs/gstreamer-libs-docs.sgml:
341         * docs/libs/gstreamer-libs-sections.txt:
342         * gst/base/gstadapter.c:
343         * libs/gst/controller/gst-controller.c:
344         (gst_controlled_property_new), (gst_controlled_property_free),
345         (gst_controller_new_valist),
346         (gst_controller_remove_properties_valist),
347         (gst_controller_sink_values), (_gst_controller_finalize):
348         * libs/gst/controller/gst-controller.h:
349         * libs/gst/controller/gst-helper.c:
350         (gst_object_control_properties), (gst_object_uncontrol_properties),
351         (gst_object_get_controller), (gst_object_set_controller),
352         (gst_object_sink_values), (gst_object_get_value_arrays),
353         (gst_object_get_value_array):
354           more tests (and fixes) for the controller
355           more docs for the controller
356           integrated companies docs for the adapter 
357
358 2005-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
359
360         * check/elements/gstfakesrc.c: (setup_fakesrc), (cleanup_fakesrc),
361         (GST_START_TEST), (fakesrc_suite):
362           add tests for sizetype
363
364 2005-08-04  Andy Wingo  <wingo@pobox.com>
365
366         * gst/elements/gstcapsfilter.c: Reimplement using basetransform,
367         fixes buffer_alloc proxying among other things.
368
369         * gst/base/gstbasetransform.c:
370         * gst/base/gstbasetransform.h:
371         Revert patch to gstbasetransform from 7-28 removing
372         delay_configure.
373
374         * gst/base/gstbasetransform.h (GstBaseTransformClass.get_size):
375         * gst/base/gstbasetransform.c (gst_base_transform_get_size):
376         Semantics changed, should return not the size of the output buffer
377         but the byte size of a buffer with a given caps.
378
379         * gst/base/gstbasetransform.c (gst_base_transform_getcaps): Better
380         debug object.
381         (gst_base_transform_configure_caps): Don't set out_size here: (in,
382         out) are not the pad caps until setcaps finishes.
383         (gst_base_transform_buffer_alloc): Proxy the buffer_alloc for the
384         not-in-place case as well. Deal with changing from in-place to
385         not-in-place within calling pad_alloc_buffer. Still a bit
386         concerned about the overhead here...
387
388 2005-08-03  Andy Wingo  <wingo@pobox.com>
389
390         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): Not
391         fixating is an error.
392
393 2005-08-04  Edward Hervey  <edward@fluendo.com>
394
395         * gst/base/gstadapter.h: 
396         Added gst_adapter_get_type() to the header
397
398 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
399
400         * check/Makefile.am:
401         * check/gst-libs/controller.c:
402         * libs/gst/controller/gst-controller.c:
403         (gst_controller_new_valist):
404           added check test suite for the controller
405         * gst/base/gstpushsrc.c:
406           fixed a doc typo
407
408 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
409
410         * docs/gst/Makefile.am:
411         * docs/gst/gstreamer-docs.sgml:
412         * docs/gst/gstreamer-sections.txt:
413         * docs/gst/gstreamer.types:
414         * docs/gst/tmpl/gstfakesrc.sgml:
415         * gst/base/README:
416         * gst/base/gstbasesink.c:
417         * gst/base/gstbasesink.h:
418         * gst/base/gstbasesrc.c:
419         * gst/base/gstbasesrc.h:
420         * gst/base/gstbasetransform.c:
421         * gst/base/gstpushsrc.c:
422         * gst/base/gstpushsrc.h:
423           add short/long description docs to base classes
424           add pushsrc to the docs
425           remove consolidated doc fragments
426
427 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
428
429         * configure.ac:
430         * docs/libs/Makefile.am:
431         * docs/libs/gstreamer-libs-docs.sgml:
432         * docs/libs/gstreamer-libs-sections.txt:
433         * docs/libs/gstreamer-libs.types:
434         * examples/Makefile.am:
435         * examples/controller/.cvsignore:
436         * examples/controller/Makefile.am:
437         * examples/controller/audio-example.c: (main):
438         * libs/gst/Makefile.am:
439         * libs/gst/controller/.cvsignore:
440         * libs/gst/controller/Makefile.am:
441         * libs/gst/controller/gst-controller.c:
442         (on_object_controlled_property_changed), (gst_timed_value_compare),
443         (gst_timed_value_find),
444         (gst_controlled_property_set_interpolation_mode),
445         (gst_controlled_property_new), (gst_controlled_property_free),
446         (gst_controller_find_controlled_property),
447         (gst_controller_new_valist), (gst_controller_new),
448         (gst_controller_remove_properties_valist),
449         (gst_controller_remove_properties), (gst_controller_set),
450         (gst_controller_set_from_list), (gst_controller_unset),
451         (gst_controller_get), (gst_controller_get_all),
452         (gst_controller_sink_values), (gst_controller_get_value_arrays),
453         (gst_controller_get_value_array),
454         (gst_controller_set_interpolation_mode),
455         (_gst_controller_finalize), (_gst_controller_init),
456         (_gst_controller_class_init), (gst_controller_get_type):
457         * libs/gst/controller/gst-controller.h:
458         * libs/gst/controller/gst-helper.c: (g_object_control_properties),
459         (g_object_uncontrol_properties), (g_object_get_controller),
460         (g_object_set_controller), (g_object_sink_values),
461         (g_object_get_value_arrays), (g_object_get_value_array):
462         * libs/gst/controller/gst-interpolation.c:
463         (gst_controlled_property_find_timed_value_node),
464         (interpolate_none_get), (interpolate_trigger_get),
465         (interpolate_trigger_get_value_array):
466         * libs/gst/controller/lib.c: (gst_controller_init):
467         * pkgconfig/Makefile.am:
468         * pkgconfig/gstreamer-control-uninstalled.pc.in:
469         * pkgconfig/gstreamer-control.pc.in:
470         * testsuite/Makefile.am:
471         * testsuite/controller/.cvsignore:
472         * testsuite/controller/Makefile.am:
473         * testsuite/controller/interpolator.c: (main):
474           added controller code
475           removed dparam pc files
476
477 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
478         * gst/base/gstcollectpads.c: (gst_collectpads_finalize),
479         (gst_collectpads_stop):
480           Broadcast the condition when shutting down, to make sure we wake all
481           threads up. Shut down pads on finalize, for safety.
482
483 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
484         * gst/base/gstbasetransform.c: (gst_base_transform_init),
485         (gst_base_transform_handle_buffer),
486         (gst_base_transform_change_state):
487           Handle PAUSED->READY->PAUSED transition after negotiation
488           occurred already.
489         * gst/gstmessage.c: (gst_message_init):
490           Extra piece of debug for new messages.
491
492 2005-08-01  Stefan Kost  <ensonic@users.sf.net>
493
494         * configure.ac:
495         * docs/gst/tmpl/gstbasesrc.sgml:
496         * docs/gst/tmpl/gstelement.sgml:
497         * docs/gst/tmpl/gstevent.sgml:
498         * docs/gst/tmpl/gstfakesrc.sgml:
499         * docs/gst/tmpl/gstformat.sgml:
500         * docs/gst/tmpl/gstghostpad.sgml:
501         * docs/gst/tmpl/gstpad.sgml:
502         * docs/gst/tmpl/gstquery.sgml:
503         * docs/gst/tmpl/gststructure.sgml:
504         * docs/gst/tmpl/gsttaglist.sgml:
505         * docs/gst/tmpl/gstvalue.sgml:
506         * docs/libs/gstreamer-libs-docs.sgml:
507         * docs/libs/gstreamer-libs-sections.txt:
508         * docs/libs/gstreamer-libs.types:
509         * libs/gst/Makefile.am:
510         * libs/gst/control/.cvsignore:
511         * libs/gst/control/Makefile.am:
512         * libs/gst/control/control.c:
513         * libs/gst/control/control.h:
514         * libs/gst/control/dparam.c:
515         * libs/gst/control/dparam.h:
516         * libs/gst/control/dparam_smooth.c:
517         * libs/gst/control/dparam_smooth.h:
518         * libs/gst/control/dparamcommon.h:
519         * libs/gst/control/dparammanager.c:
520         * libs/gst/control/dparammanager.h:
521         * libs/gst/control/dplinearinterp.c:
522         * libs/gst/control/dplinearinterp.h:
523         * libs/gst/control/unitconvert.c:
524         * libs/gst/control/unitconvert.h:
525         * testsuite/Makefile.am:
526         * testsuite/dynparams/.cvsignore:
527         * testsuite/dynparams/Makefile.am:
528         * testsuite/dynparams/dparamstest.c:
529         * tools/Makefile.am:
530         * tools/gst-inspect.c: (print_element_info), (main):
531         * tools/gst-xmlinspect.c: (print_element_info), (main):
532           deactivate and remove dparams (libgstcontrol)
533
534 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
535
536         * gst/elements/gsttypefindelement.c:
537         (gst_type_find_element_have_type), (gst_type_find_element_init),
538         (stop_typefinding), (gst_type_find_element_handle_event),
539         (gst_type_find_element_chain), (gst_type_find_element_getrange):
540         * gst/elements/gsttypefindelement.h:
541           Set caps on all outgoing buffers, not just the first one.
542
543 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
544
545         * gst/elements/gsttypefindelement.c:
546         (gst_type_find_element_have_type),
547         (gst_type_find_element_check_set_buffer_caps),
548         (gst_type_find_element_init), (stop_typefinding),
549         (gst_type_find_element_handle_event),
550         (gst_type_find_element_chain), (gst_type_find_element_getrange):
551         * gst/elements/gsttypefindelement.h:
552           Set caps on first outgoing buffer when we've found the type.
553
554 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
555
556         * docs/gst/gstreamer-docs.sgml:
557         * docs/gst/gstreamer-sections.txt:
558         * docs/gst/tmpl/gstscheduler.sgml:
559         * docs/gst/tmpl/gstschedulerfactory.sgml:
560           Remove some old cruft from docs.
561
562 2005-07-31  Tim-Philipp Müller  <tim at centricular dot net>
563
564         * gst/gstpad.h:
565           Fix inline docs for GstPadLinkReturn.
566           
567         * gst/gststructure.c: (gst_structure_has_name):
568         * gst/gststructure.h:
569         * docs/gst/gstreamer-sections.txt:
570           New API: gst_structure_has_name().
571
572 2005-07-30  Tim-Philipp Müller  <tim at centricular dot net>
573
574         * configure.ac:
575           Use AC_SYS_LARGEFILE, which will set _FILE_OFFSET_BITS=64
576           and _LARGEFILE_SOURCE in config.h as required. Do not 
577           export those flags in our .pc files any longer (#142209).
578
579           Remove unused GST_DISABLE_OMEGA_COTHREADS stuff.
580
581         * gst/elements/gstfilesink.c: (gst_file_sink_class_init),
582         (gst_file_sink_do_seek), (gst_file_sink_event),
583         (gst_file_sink_get_current_offset), (gst_file_sink_render):
584           Redo seek/tell calls with large file support in mind; add some
585           debugging messages; add log message that tells us when large
586           file support is unavailable or not enabled for some reason.
587
588         * gst/elements/gstfilesrc.c: (gst_file_src_class_init):
589           Add log message that tells us when large file support 
590           is unavailable or not enabled for some reason.
591
592 2005-07-29  Wim Taymans  <wim@fluendo.com>
593
594         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
595         Added test for removing an element with ghostpad from a bin.
596         Fixed test as current implementation does the right thing.
597
598         * gst/gstghostpad.c: (gst_proxy_pad_class_init),
599         (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
600         (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
601         (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
602         (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
603         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
604         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
605         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
606         (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
607         (gst_proxy_pad_get_target), (gst_proxy_pad_init),
608         (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
609         (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
610         (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
611         (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
612         (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
613         (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
614         * gst/gstghostpad.h:
615         Clean up ghostpads, remove properties for internal stuff.
616         Make threadsafe.
617         Fix refcounting.
618         Prepare for switching targets, not all use cases work yet.
619
620 2005-07-29  Wim Taymans  <wim@fluendo.com>
621
622         * docs/design/part-gstghostpad.txt:
623         Small update.
624
625         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
626         (gst_bin_remove_func):
627         Unlinking pads while holding the bin LOCK is not a good
628         idea.
629
630         * gst/gstpad.c: (gst_pad_class_init),
631         (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
632         (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
633         No prob setting template after creating the pad.
634
635 2005-07-29  Jan Schmidt  <thaytan@mad.scientist.com>
636
637         * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
638         (gst_bus_peek), (gst_bus_source_dispatch),
639         (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
640         (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
641           gst_bus_poll may be called from other threads. Handle
642           this nicely by not making poll_data disappear off the
643           stack once gst_bus_poll returns.
644           gst_bus_peek now increments the refcount on the returned
645           message.
646
647 2005-07-29  Wim Taymans  <wim@fluendo.com>
648
649         * docs/design/part-gstghostpad.txt:
650         Overview of current GhostPad datastructures and use
651         cases for changing the target.
652
653 2005-07-28  Wim Taymans  <wim@fluendo.com>
654
655         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
656         Added checks for hierarchy consistency whan adding linked
657         elements to bins.
658
659         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
660         Added check to test element scheduling without bin/pipeline.
661
662         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
663         First add elements to bin, then link.
664         
665         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
666         (gst_bin_remove_func):
667         Unlink pads from elements added/removed from bin to maintain
668         hierarchy consistency.
669
670 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
671
672         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
673         (gst_base_transform_handle_buffer):
674         * gst/base/gstbasetransform.h:
675           Remove broken delay_configure (fixes renegotiation of software
676           scaling pipelines); remove some leftover printf()s.
677
678 2005-07-28  Wim Taymans  <wim@fluendo.com>
679
680         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
681         Added some more tests for wrong hierarchy
682
683         * docs/design/part-overview.txt:
684         Some updates.
685
686         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
687         Cleanups.
688
689         * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
690         (gst_element_dispose):
691         Some more cleanups.
692
693         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
694         (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
695         (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
696         (gst_pad_set_caps), (gst_pad_send_event):
697         Check for correct hierarchy when linking pads. Moving to
698         strict requirement for ghostpads when linking elements in
699         different bins.
700
701         * gst/gstpad.h:
702         Clean ups. Added WRONG_HIERARCHY return value.
703
704 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
705
706         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
707           Better debug if no transform is possible.
708
709 2005-07-27  Wim Taymans  <wim@fluendo.com>
710
711         * docs/random/wtay/network-transp:
712         Some old doc I had.
713
714 2005-07-27  Wim Taymans  <wim@fluendo.com>
715
716         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
717         (gst_dp_event_from_packet):
718         Fix serialization of seek events.
719
720 2005-07-27  Wim Taymans  <wim@fluendo.com>
721
722         * check/gst-libs/gdp.c: (GST_START_TEST):
723         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
724         Fix compilation and fix event serialization.
725
726 2005-07-27  Wim Taymans  <wim@fluendo.com>
727
728         * CHANGES-0.9:
729         * docs/design/part-TODO.txt:
730         * docs/design/part-events.txt:
731         Some docs updates
732
733         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
734         (gst_base_sink_event), (gst_base_sink_do_sync),
735         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
736         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
737         (gst_base_src_do_seek), (gst_base_src_event_handler),
738         (gst_base_src_loop):
739         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
740         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
741         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
742         (gst_base_transform_event), (gst_base_transform_handle_buffer),
743         (gst_base_transform_set_passthrough),
744         (gst_base_transform_is_passthrough):
745         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
746         * gst/elements/gstfilesink.c: (gst_file_sink_event):
747         Event updates.
748
749         * gst/gstbuffer.h:
750         Use faster casts.
751
752         * gst/gstelement.c: (gst_element_seek):
753         * gst/gstelement.h:
754         Update gst_element_seek.
755
756         * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
757         (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
758         (gst_event_new_flush_start), (gst_event_new_flush_stop),
759         (gst_event_new_eos), (gst_event_new_newsegment),
760         (gst_event_parse_newsegment), (gst_event_new_tag),
761         (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
762         (gst_event_parse_qos), (gst_event_new_seek),
763         (gst_event_parse_seek), (gst_event_new_navigation):
764         * gst/gstevent.h:
765         Make GstEvent use GstStructure. Add parsing code, make sure the
766         API is sufficiently generic.
767         Mark possible directions of events and serialization.
768
769         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
770         (_gst_message_copy), (gst_message_new_segment_start),
771         (gst_message_new_segment_done), (gst_message_new_custom),
772         (gst_message_parse_segment_start),
773         (gst_message_parse_segment_done):
774         Small cleanups.
775
776         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
777         (gst_pad_set_caps), (gst_pad_send_event):
778         Update for new events. 
779         Catch events sent in wrong directions.
780
781         * gst/gstqueue.c: (gst_queue_link_src),
782         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
783         (gst_queue_handle_src_query):
784         Event updates.
785
786         * gst/gsttag.c:
787         * gst/gsttag.h:
788         Remove event code from this file.
789
790         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
791         (gst_dp_event_from_packet):
792         Event updates.
793
794 2005-07-27  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
795
796         * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
797         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
798         (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
799           Make debugging actually useful.
800
801 2005-07-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
802
803         * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
804         (gst_pad_fixate_caps):
805           Implement default fixation once again, so that gst_pad_fixate()
806           actually does anything at all. This probably needs to be some
807           sort of a last resort, and use profile-based fixation first, but
808           since that doesn't exist yet, this is the best we have. Fixes
809           visualization in Totem.
810
811 2005-07-22  Wim Taymans  <wim@fluendo.com>
812
813         * docs/design/part-events.txt:
814         Small update.
815
816         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
817         (gst_base_sink_do_sync), (gst_base_sink_activate_push),
818         (gst_base_sink_activate_pull):
819         Some more comments.
820
821         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
822         (gst_fake_src_create):
823         Fix handoff marshall.
824
825         * gst/elements/gstidentity.c: (gst_identity_class_init),
826         (gst_identity_transform_ip):
827         We're a real inplace element.
828
829         * gst/gstbus.c: (gst_bus_post):
830         Added some comments.
831
832         * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
833         * tests/muxing/case1.c: (main):
834         * tests/sched/dynamic-pipeline.c: (main):
835         * tests/sched/interrupt1.c: (main):
836         * tests/sched/interrupt2.c: (main):
837         * tests/sched/interrupt3.c: (main):
838         * tests/sched/runxml.c: (main):
839         * tests/sched/sched-stress.c: (main):
840         * tests/seeking/seeking1.c: (event_received), (main):
841         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
842         (main):
843         * tests/threadstate/threadstate3.c: (main):
844         * tests/threadstate/threadstate4.c: (main):
845         * tests/threadstate/threadstate5.c: (main):
846         Fix the tests.
847
848 2005-07-21  Wim Taymans  <wim@fluendo.com>
849
850         * docs/design/part-seeking.txt:
851         Some small additions.
852
853         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
854         (gst_base_sink_get_times), (gst_base_sink_do_sync),
855         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
856         * gst/base/gstbasesink.h:
857         discont values are gint64, handle the math correctly.
858
859         * gst/base/gstbasesrc.c: (gst_base_src_loop):
860         Make the basesrc report error if the source pad is not linked.
861
862         * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
863         (gst_queue_loop), (gst_queue_handle_src_query),
864         (gst_queue_src_activate_push):
865         Make queue collect data even if the srcpad is not linked.
866         Start pushing out data as soon as it is linked.
867
868         * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
869         * gst/gstutils.h:
870         Added gst_flow_get_name() to ease error reporting.
871
872 2005-07-20  Wim Taymans  <wim@fluendo.com>
873
874         * gst/gstmessage.c: (gst_message_new_segment_start),
875         (gst_message_new_segment_done), (gst_message_parse_segment_start),
876         (gst_message_parse_segment_done):
877         * gst/gstmessage.h:
878         Added a bunch of messages for advanced seeking.
879
880         * gst/parse/grammar.y:
881         * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
882         (gst_dpman_state_changed):
883         Fix some new-pad -> pad-added signals
884
885 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
886
887         * docs/manual/appendix-porting.xml:
888         * docs/pwg/appendix-porting.xml:
889           Document new-pad/state-change signal renames and the FixedList
890           type rename.
891
892 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
893
894         * docs/manual/advanced-autoplugging.xml:
895         * docs/manual/basics-helloworld.xml:
896         * docs/manual/basics-pads.xml:
897         * docs/random/ds/0.9-suggested-changes:
898         * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
899         * gst/gstelement.h:
900         * gst/gstevent.h:
901         * gst/gstformat.h:
902         * gst/gstquery.h:
903         * gst/gststructure.c: (gst_structure_value_get_generic_type),
904         (gst_structure_parse_array), (gst_structure_parse_value):
905         * gst/gstvalue.c: (gst_type_is_fixed),
906         (gst_value_list_prepend_value), (gst_value_list_append_value),
907         (gst_value_list_get_size), (gst_value_list_get_value),
908         (gst_value_transform_array_string), (gst_value_serialize_array),
909         (gst_value_deserialize_array), (gst_value_intersect_array),
910         (gst_value_is_fixed), (_gst_value_initialize):
911         * gst/gstvalue.h:
912           GstElement::new-pad -> pad-added, GstElement::state-change ->
913           state-changed, GstValueFixedList -> GstValueArray, add format and
914           flags as their own arguments in gst_element_seek() (should improve
915           "bindeability"), remove function generators since they don't work
916           under a whole bunch of compilers (they were deprecated already
917           anyway).
918
919 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
920
921         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
922         (_gst_debug_register_funcptr):
923         * gst/gstinfo.h:
924           Fix illegal cast on some platforms (#309253).
925
926 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
927
928         * gst/gstmessage.c: (gst_message_new_custom):
929         * gst/gstmessage.h:
930           Add _new_custom, make _new_application a macro to _new_custom.
931
932 2005-07-20  Wim Taymans  <wim@fluendo.com>
933
934         * gst/base/gstbasesrc.c: (gst_base_src_init),
935         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
936         * gst/base/gstbasesrc.h:
937         Add a gboolean to decide when to push out a discont.
938
939         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
940         (gst_queue_loop), (gst_queue_handle_src_query),
941         (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
942         (gst_queue_set_property), (gst_queue_get_property):
943         Some cleanups.
944
945         * tests/threadstate/threadstate1.c: (main):
946         Make a thread test compile and run... very silly..
947
948
949 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
950
951         * docs/manual/appendix-porting.xml:
952           Mention removal of libgstgconf-0.9.la and existence of gconf
953           elements.
954
955 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
956
957         * docs/pwg/advanced-clock.xml:
958         * docs/pwg/appendix-porting.xml:
959         * docs/pwg/intro-preface.xml:
960         * docs/pwg/other-base.xml:
961         * docs/pwg/other-manager.xml:
962         * docs/pwg/other-nton.xml:
963         * docs/pwg/other-ntoone.xml:
964         * docs/pwg/other-oneton.xml:
965         * docs/pwg/pwg.xml:
966           Document base classes, update sections of n-to-1 and 1-to-n (muxer,
967           demuxer), remove n-to-n (was never written), fix some code examples
968           and links and update the porting section to include all this.
969
970 2005-07-19  Wim Taymans  <wim@fluendo.com>
971
972         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
973         (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
974         (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
975         (gst_queue_src_activate_push), (gst_queue_change_state),
976         (gst_queue_get_property):
977         * gst/gstqueue.h:
978         Propagate GstFlowReturn more intelligently upstream and output
979         an ERROR/EOS when streaming stopped due to fatal error.
980
981 2005-07-19  Wim Taymans  <wim@fluendo.com>
982
983         * tools/gst-launch.c: (check_intr), (event_loop), (main):
984         Don't block forever for the state change to complete, the
985         pipeline already did with a sensible timeout.
986
987 2005-07-19  Wim Taymans  <wim@fluendo.com>
988
989         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
990         Make sure we never call the create function is we
991         got deactivated.
992
993 2005-07-19  Andy Wingo  <wingo@pobox.com>
994
995         * gst/parse/parse.l: Attempt to solve bug #172815.
996
997 2005-07-19  Wim Taymans  <wim@fluendo.com>
998
999         * docs/design/part-clocks.txt:
1000         * docs/design/part-events.txt:
1001         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
1002         Small docs updates.
1003         Only update the seeking values when we are not
1004         busy streaming.
1005
1006 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
1007
1008         * gst/base/gstbasesrc.c: (gst_base_src_loop):
1009           Oops, ignore the result of gst_pad_push_event here.
1010
1011 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
1012
1013         * gst/base/gstbasesrc.c: (gst_base_src_loop),
1014         (gst_base_src_activate_push):
1015           Send discont event from the loop function, as pads
1016           aren't activated yet in the activate_push handler.
1017
1018         * gst/gstbin.c: (bin_bus_handler):
1019           Don't leak element name.
1020
1021 2005-07-18  Andy Wingo  <wingo@pobox.com>
1022
1023         * configure.ac: Use AS_LIBTOOL_TAGS.
1024
1025 2005-07-18  Wim Taymans  <wim@fluendo.com>
1026
1027         * docs/gst/gstreamer.types:
1028         Remove deleted types.
1029
1030 2005-07-18  Wim Taymans  <wim@fluendo.com>
1031
1032         * check/elements/gstfakesrc.c: (GST_START_TEST):
1033         * configure.ac:
1034         * gst/Makefile.am:
1035         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
1036         (init_popt_callback):
1037         * gst/gst.h:
1038         * gst/gst_private.h:
1039         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
1040         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
1041         * gst/gstbin.h:
1042         * gst/gstbus.h:
1043         * gst/gstconfig.h.in:
1044         * gst/gstelement.c: (gst_element_class_init),
1045         (gst_element_set_base_time), (gst_element_get_base_time),
1046         (iterator_fold_with_resync), (gst_element_change_state),
1047         (gst_element_dispose), (gst_element_get_bus):
1048         * gst/gstelement.h:
1049         * gst/gstelementfactory.h:
1050         * gst/gsterror.c: (_gst_core_errors_init):
1051         * gst/gsterror.h:
1052         * gst/gstevent.h:
1053         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
1054         * gst/gstindex.c:
1055         * gst/gstinfo.c: (_gst_debug_init):
1056         * gst/gstmessage.c: (_gst_message_copy):
1057         * gst/gstmessage.h:
1058         * gst/gstminiobject.h:
1059         * gst/gstobject.c:
1060         * gst/gstobject.h:
1061         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
1062         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
1063         * gst/gstpad.h:
1064         * gst/gstparse.h:
1065         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
1066         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
1067         (gst_pipeline_get_last_stream_time):
1068         * gst/gstpipeline.h:
1069         * gst/gstpluginfeature.h:
1070         * gst/gstquery.h:
1071         * gst/gstscheduler.c:
1072         * gst/gstscheduler.h:
1073         * gst/gststructure.h:
1074         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
1075         (gst_task_finalize), (gst_task_func), (gst_task_create),
1076         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
1077         (gst_task_stop), (gst_task_pause):
1078         * gst/gsttask.h:
1079         * gst/gsttypefind.h:
1080         * gst/gsttypes.h:
1081         * gst/registries/gstlibxmlregistry.c: (load_feature),
1082         (gst_xml_registry_load), (gst_xml_registry_save_feature):
1083         * gst/registries/gstxmlregistry.c:
1084         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
1085         * gst/schedulers/threadscheduler.c:
1086         * libs/gst/control/dparammanager.h:
1087         * tools/gst-inspect.c: (print_element_list),
1088         (print_plugin_features), (print_element_features):
1089         * tools/gst-xmlinspect.c: (print_element_list),
1090         (print_plugin_info), (main):
1091         Removed plugable schedulers.
1092         Removed Scheduler/Manager from elements.
1093         Removed gsttypes.h, rearranged includes.
1094         Removed dependency pad<->element, element<>pipeline, and
1095         various others,  fix includes.
1096         implement gst_pad_get_parent() with gst_object_get_parent()
1097         Make GstTask sefcontained.
1098         Fix _get_state() on GstBin, it did not return ASYNC with a 0
1099         timeout.
1100         Fix endless loop in iterator_fold_with_resync.
1101
1102
1103 2005-07-18  Wim Taymans  <wim@fluendo.com>
1104
1105         * gst/Makefile.am:
1106         * gst/gstarch.h:
1107         Remove old file.
1108
1109 2005-07-18  Wim Taymans  <wim@fluendo.com>
1110
1111         * gst/Makefile.am:
1112         No more cothreads.h
1113
1114 2005-07-18  Wim Taymans  <wim@fluendo.com>
1115
1116         * gst/cothreads.c:
1117         * gst/cothreads.h:
1118         Let's remove these.
1119
1120 2005-07-18  Wim Taymans  <wim@fluendo.com>
1121
1122         * docs/design/part-dynamic.txt:
1123         * docs/design/part-events.txt:
1124         * docs/design/part-seeking.txt:
1125         Some more docs in the works.
1126
1127         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
1128         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
1129         (gst_base_transform_setcaps), (gst_base_transform_get_size),
1130         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
1131         (gst_base_transform_handle_buffer),
1132         (gst_base_transform_sink_activate_push),
1133         (gst_base_transform_src_activate_pull),
1134         (gst_base_transform_set_passthrough),
1135         (gst_base_transform_is_passthrough):
1136         Refcounting fixes.
1137
1138         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
1139         Cleanups.
1140
1141         * gst/gstevent.c: (gst_event_finalize):
1142         Set SRC to NULL.
1143
1144         * gst/gstutils.c: (gst_element_unlink),
1145         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
1146         (gst_pad_proxy_setcaps):
1147         * gst/gstutils.h:
1148         Add _get_parent_element() to get a pads parent as an element.
1149
1150 2005-07-18  Wim Taymans  <wim@fluendo.com>
1151
1152         * check/gst/gstbin.c: (GST_START_TEST):
1153         Remove bogus test.
1154
1155 2005-07-18  Wim Taymans  <wim@fluendo.com>
1156
1157         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
1158         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
1159         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
1160         (gst_base_sink_event), (gst_base_sink_do_sync),
1161         (gst_base_sink_chain), (gst_base_sink_loop),
1162         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
1163         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
1164         Refcounting fixes.
1165         Fix logic for returning ASYNC when not prerolled.
1166
1167 2005-07-18  Wim Taymans  <wim@fluendo.com>
1168
1169         * gst/gstqueue.c: (gst_queue_handle_sink_event):
1170         Fix nasty refcount bug.
1171
1172 2005-07-16 Philippe Khalaf <burger@speedy.org>
1173         * gst/elements/gstfdsrc.c:
1174         * gst/elements/gstfdsrc.h:
1175         * gst/elements/gstelements.c:
1176         * gst/elements/Makefile.am:
1177         Ported fdsrc to 0.9.
1178
1179 2005-07-16  Wim Taymans  <wim@fluendo.com>
1180
1181         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1182         (gst_base_sink_do_sync):
1183         Fix compile error.
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_event), (gst_base_sink_get_times),
1189         (gst_base_sink_do_sync), (gst_base_sink_change_state):
1190         * gst/base/gstbasesink.h:
1191         Store and use discont values when syncing buffers as described
1192         in design docs.
1193         
1194         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
1195         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
1196         (gst_base_src_activate_push):
1197         Push discont event when starting.
1198
1199         * gst/elements/gstidentity.c: (gst_identity_transform):
1200         Small cleanups.
1201
1202         * gst/gstbin.c: (gst_bin_change_state):
1203         Small cleanups in base_time  distribution.
1204
1205         * gst/gstelement.c: (gst_element_set_base_time),
1206         (gst_element_get_base_time), (gst_element_change_state):
1207         * gst/gstelement.h:
1208         Added methods for the base_time of the element.
1209         Some MT fixes.
1210
1211         * gst/gstpipeline.c: (gst_pipeline_send_event),
1212         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
1213         (gst_pipeline_get_last_stream_time):
1214         * gst/gstpipeline.h:
1215         MT fixes.
1216         Handle seeking as described in design doc, remove stream_time
1217         hack.
1218         Cleanups clock and stream_time selection code. Added accessors
1219         for the stream_time.
1220         
1221
1222 2005-07-16  Andy Wingo  <wingo@pobox.com>
1223
1224         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
1225         (#305291).
1226
1227 2005-07-16  Wim Taymans  <wim@fluendo.com>
1228
1229         * check/gst/gstbin.c: (GST_START_TEST):
1230         Make elements silent as the deep_notify refs the
1231         parent, which might make the test fail.
1232
1233         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
1234         Don't hold the lock for too long.
1235
1236 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
1237
1238         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
1239           Don't unref the caps we passed to gst_caps_make_writable() after
1240           passing them. gst_caps_make_writable() will do that for us.
1241
1242 2005-07-15  Andy Wingo  <wingo@pobox.com>
1243
1244         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
1245         (#157311).
1246
1247         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
1248         own marshalling function for the handoff signal. Properly type the
1249         buffer as a buffer. Fixes some warnings. Should do a more general
1250         solution.
1251         (gst_identity_class_init): Plug into the right marshaller.
1252
1253 2005-07-15  Wim Taymans  <wim@fluendo.com>
1254
1255         * docs/design/part-TODO.txt:
1256         * docs/design/part-clocks.txt:
1257         * docs/design/part-element-sink.txt:
1258         * docs/design/part-events.txt:
1259         * docs/design/part-gstpipeline.txt:
1260         Updated docs, mostly DISCONT related.
1261
1262 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
1263
1264         * docs/pwg/building-pads.xml:
1265           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
1266
1267 2005-07-15  Andy Wingo  <wingo@pobox.com>
1268
1269         * tools/gst-typefind.c: Update, add copyright block.
1270
1271         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
1272         Normalize and truncate caps before fixation.
1273
1274         * gst/gstcaps.h:
1275         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
1276         discards all but the first structure from its argument.
1277
1278 2005-07-15  Wim Taymans  <wim@fluendo.com>
1279
1280         * gst/base/gstbasetransform.c: (gst_base_transform_init),
1281         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
1282         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
1283         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
1284         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
1285         (gst_base_transform_chain), (gst_base_transform_change_state),
1286         (gst_base_transform_set_passthrough),
1287         (gst_base_transform_is_passthrough):
1288         * gst/base/gstbasetransform.h:
1289         Make passthrough work using the bufferpools.
1290         Changed API a bit, subclasses have to write into a buffer
1291         provided by the base class.
1292         More debug info in nego functions.
1293         
1294         * gst/elements/gstidentity.c: (gst_identity_init),
1295         (gst_identity_transform):
1296         Port to new base class.
1297
1298 2005-07-15  Wim Taymans  <wim@fluendo.com>
1299
1300         * gst/gstmessage.c: (gst_message_new_state_changed):
1301         * tools/gst-launch.c: (event_loop), (main):
1302         Totally dump messages in -launch with the -m option.
1303         Fix message name for State messages,
1304
1305 2005-07-14  Wim Taymans  <wim@fluendo.com>
1306
1307         * gst/base/gstbasesrc.c: (gst_base_src_loop):
1308         Post error messages on errors.
1309
1310 2005-07-14  Wim Taymans  <wim@fluendo.com>
1311
1312         * gst/gstcaps.c: (gst_caps_do_simplify):
1313         Remove debug info.
1314
1315         * gst/gsterror.h:
1316         Define error for stream stopped.
1317
1318         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1319         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
1320         Do proper return values.
1321
1322         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
1323         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
1324         (gst_pad_get_range):
1325         Better return values.
1326
1327         * gst/gstpad.h:
1328         Reorganise return values, add macro to check for fatal errors.
1329
1330         * gst/gstqueue.c: (gst_queue_chain):
1331         Return proper GstFlowReturn values,
1332
1333 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
1334
1335         * docs/gst/gstreamer-sections.txt:
1336         * docs/gst/gstreamer.types:
1337         * docs/gst/tmpl/gst.sgml:
1338         * docs/gst/tmpl/gstbasesink.sgml:
1339         * docs/gst/tmpl/gstbasesrc.sgml:
1340         * docs/gst/tmpl/gstbasetransform.sgml:
1341         * docs/gst/tmpl/gstbin.sgml:
1342         * docs/gst/tmpl/gstbuffer.sgml:
1343         * docs/gst/tmpl/gstcaps.sgml:
1344         * docs/gst/tmpl/gstclock.sgml:
1345         * docs/gst/tmpl/gstcompat.sgml:
1346         * docs/gst/tmpl/gstconfig.sgml:
1347         * docs/gst/tmpl/gstelement.sgml:
1348         * docs/gst/tmpl/gstelementdetails.sgml:
1349         * docs/gst/tmpl/gstelementfactory.sgml:
1350         * docs/gst/tmpl/gstenumtypes.sgml:
1351         * docs/gst/tmpl/gsterror.sgml:
1352         * docs/gst/tmpl/gstevent.sgml:
1353         * docs/gst/tmpl/gstfakesink.sgml:
1354         * docs/gst/tmpl/gstfakesrc.sgml:
1355         * docs/gst/tmpl/gstfilesink.sgml:
1356         * docs/gst/tmpl/gstfilesrc.sgml:
1357         * docs/gst/tmpl/gstfilter.sgml:
1358         * docs/gst/tmpl/gstformat.sgml:
1359         * docs/gst/tmpl/gstghostpad.sgml:
1360         * docs/gst/tmpl/gstimplementsinterface.sgml:
1361         * docs/gst/tmpl/gstindex.sgml:
1362         * docs/gst/tmpl/gstindexfactory.sgml:
1363         * docs/gst/tmpl/gstinfo.sgml:
1364         * docs/gst/tmpl/gstiterator.sgml:
1365         * docs/gst/tmpl/gstmacros.sgml:
1366         * docs/gst/tmpl/gstmemchunk.sgml:
1367         * docs/gst/tmpl/gstminiobject.sgml:
1368         * docs/gst/tmpl/gstobject.sgml:
1369         * docs/gst/tmpl/gstpad.sgml:
1370         * docs/gst/tmpl/gstpadtemplate.sgml:
1371         * docs/gst/tmpl/gstparse.sgml:
1372         * docs/gst/tmpl/gstpipeline.sgml:
1373         * docs/gst/tmpl/gstplugin.sgml:
1374         * docs/gst/tmpl/gstpluginfeature.sgml:
1375         * docs/gst/tmpl/gstquery.sgml:
1376         * docs/gst/tmpl/gstqueue.sgml:
1377         * docs/gst/tmpl/gstregistry.sgml:
1378         * docs/gst/tmpl/gstregistrypool.sgml:
1379         * docs/gst/tmpl/gstscheduler.sgml:
1380         * docs/gst/tmpl/gstschedulerfactory.sgml:
1381         * docs/gst/tmpl/gststructure.sgml:
1382         * docs/gst/tmpl/gstsystemclock.sgml:
1383         * docs/gst/tmpl/gsttaglist.sgml:
1384         * docs/gst/tmpl/gsttagsetter.sgml:
1385         * docs/gst/tmpl/gsttrace.sgml:
1386         * docs/gst/tmpl/gsttrashstack.sgml:
1387         * docs/gst/tmpl/gsttypefind.sgml:
1388         * docs/gst/tmpl/gsttypefindfactory.sgml:
1389         * docs/gst/tmpl/gsttypes.sgml:
1390         * docs/gst/tmpl/gsturihandler.sgml:
1391         * docs/gst/tmpl/gsturitype.sgml:
1392         * docs/gst/tmpl/gstutils.sgml:
1393         * docs/gst/tmpl/gstvalue.sgml:
1394         * docs/gst/tmpl/gstversion.sgml:
1395         * docs/gst/tmpl/gstxml.sgml:
1396         * docs/libs/tmpl/gstcontrol.sgml:
1397         * docs/libs/tmpl/gstdataprotocol.sgml:
1398         * docs/libs/tmpl/gstdparam.sgml:
1399         * docs/libs/tmpl/gstdplinint.sgml:
1400         * docs/libs/tmpl/gstdpman.sgml:
1401         * docs/libs/tmpl/gstdpsmooth.sgml:
1402         * docs/libs/tmpl/gstgetbits.sgml:
1403         * docs/libs/tmpl/gstunitconvert.sgml:
1404         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
1405         (gst_push_src_base_init), (gst_push_src_class_init),
1406         (gst_push_src_init), (gst_push_src_create):
1407         * gst/base/gstpushsrc.h:
1408         * gst/elements/gstelements.c:
1409         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
1410         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
1411         (gst_fake_sink_init), (gst_fake_sink_set_property),
1412         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
1413         (gst_fake_sink_event), (gst_fake_sink_preroll),
1414         (gst_fake_sink_render), (gst_fake_sink_change_state):
1415         * gst/elements/gstfakesink.h:
1416         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
1417         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
1418         (gst_fake_src_base_init), (gst_fake_src_class_init),
1419         (gst_fake_src_init), (gst_fake_src_event_handler),
1420         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
1421         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
1422         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
1423         (gst_fake_src_create_buffer), (gst_fake_src_create),
1424         (gst_fake_src_start), (gst_fake_src_stop):
1425         * gst/elements/gstfakesrc.h:
1426         * gst/elements/gstfilesink.c: (_do_init),
1427         (gst_file_sink_base_init), (gst_file_sink_class_init),
1428         (gst_file_sink_init), (gst_file_sink_dispose),
1429         (gst_file_sink_set_location), (gst_file_sink_set_property),
1430         (gst_file_sink_get_property), (gst_file_sink_open_file),
1431         (gst_file_sink_close_file), (gst_file_sink_query),
1432         (gst_file_sink_event), (gst_file_sink_render),
1433         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
1434         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
1435         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
1436         * gst/elements/gstfilesink.h:
1437         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
1438         (gst_file_src_class_init), (gst_file_src_init),
1439         (gst_file_src_finalize), (gst_file_src_set_location),
1440         (gst_file_src_set_property), (gst_file_src_get_property),
1441         (gst_file_src_map_region), (gst_file_src_map_small_region),
1442         (gst_file_src_create_mmap), (gst_file_src_create_read),
1443         (gst_file_src_create), (gst_file_src_is_seekable),
1444         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
1445         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
1446         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
1447         (gst_file_src_uri_handler_init):
1448         * gst/elements/gstfilesrc.h:
1449           more autistic cleanliness in functions/names/defines
1450
1451 2005-07-13  Andy Wingo  <wingo@pobox.com>
1452
1453         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
1454         source couldn't negotiate.
1455
1456         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
1457         connections again.
1458
1459         * gst/gstutils.h:
1460         * gst/gstutils.c (gst_element_link_pads_filtered): New old
1461         function. I am channeling Hades. Put your boots on suckers!!!
1462
1463 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
1464
1465         * testsuite/caps/Makefile.am:
1466         * testsuite/caps/value_compare.c:
1467         * testsuite/caps/value_intersect.c:
1468         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
1469           move two testsuite apps over to the check dir
1470
1471 2005-07-12  Wim Taymans  <wim@fluendo.com>
1472
1473         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
1474         Added more debug info in the negotiate process.
1475
1476         * gst/gstmessage.h:
1477         Prepare for segment playback.
1478
1479         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
1480         Better debugging.
1481
1482         * gst/gstutils.c:
1483         Some more docs.
1484
1485         * tools/gst-launch.c: (main):
1486         NULL pipeline on errors.
1487
1488 2005-07-12  Andy Wingo  <wingo@pobox.com>
1489
1490         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
1491         not it comes from a malloc region. Make sure our copy gets freed.
1492
1493 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1494
1495         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
1496         * check/gst/gstmessage.c: (GST_START_TEST):
1497         * check/gst/gststructure.c: (GST_START_TEST),
1498         (gst_structure_suite), (main):
1499           more testing
1500         * gst/gstelement.c: (gst_element_message_full):
1501           clean up GError and debug string now that they get copied
1502         * gst/gstmessage.c: (gst_message_new_error),
1503         (gst_message_new_warning), (gst_message_parse_error),
1504         (gst_message_parse_warning):
1505           use GST_TYPE_G_ERROR for structure_new, and take copies of
1506           arguments, so that we don't mess up refcounting
1507
1508 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1509
1510         * check/Makefile.am:
1511           add per-test valgrind targets
1512         * check/gst-libs/gdp.c: (GST_START_TEST),
1513         (gst_data_protocol_suite), (main):
1514           clean up
1515
1516 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1517
1518         * check/Makefile.am:
1519           instate more valgrindable tests
1520         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1521         (GST_START_TEST), (fakesrc_suite):
1522         * check/gst/gstpad.c: (GST_START_TEST):
1523         * check/gst/gststructure.c: (GST_START_TEST):
1524           fix test leaks
1525         * docs/gst/tmpl/gstminiobject.sgml:
1526         * gst/gstpad.c: (gst_pad_finalize):
1527           fix the static mutex leak
1528
1529 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1530
1531         * check/Makefile.am:
1532           add two more tests for valgrinding
1533         * check/gst/gstvalue.c: (GST_START_TEST):
1534           test refcount of deserialized buffer, found a leak
1535         * docs/gst/gstreamer-docs.sgml:
1536         * docs/gst/gstreamer-sections.txt:
1537         * docs/gst/gstreamer.types:
1538         * docs/gst/tmpl/gstminiobject.sgml:
1539           add miniobject to docs
1540         * gst/gstminiobject.c:
1541           add some docs
1542         * gst/gstvalue.c: (gst_value_deserialize_buffer),
1543         (gst_string_unwrap):
1544           fix a hard-to-find invalid write for one of the tests
1545           fix a leak for deserialized buffers
1546
1547 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1548
1549         * docs/pwg/advanced-events.xml:
1550         * docs/pwg/advanced-request.xml:
1551         * docs/pwg/advanced-scheduling.xml:
1552         * docs/pwg/appendix-porting.xml:
1553         * docs/pwg/building-boiler.xml:
1554         * docs/pwg/intro-preface.xml:
1555         * docs/pwg/other-ntoone.xml:
1556           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
1557           of example code and explanation for pad activation, loop() and
1558           getrange() functions and a bit more. Remove old comments pointing
1559           to loop-functions.
1560         * examples/pwg/Makefile.am:
1561           Add loop/getrange examples.
1562
1563 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1564
1565         * configure.ac:
1566           check for valgrind binary + some fixes
1567         * check/gst.supp:
1568           valgrind suppressions for the tests
1569         * check/Makefile.am:
1570           add a valgrind: target that valgrinds the unit tests
1571         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
1572         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
1573         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1574         * check/gst/gstghostpad.c:
1575           added some cleanup
1576         * check/gst/gstdata.c:
1577           removed
1578         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
1579         (thread_unref), (gst_mini_object_suite), (main):
1580           added
1581         * gst/gst.c: (gst_deinit):
1582         * gst/gst.h:
1583           add a method to clean up.
1584         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1585         (gst_system_clock_obtain):
1586           allow for disposing the system clock.
1587         * tools/gst-launch.c: (main):
1588           deinit
1589
1590 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1591
1592         * docs/gst/tmpl/gstbasesrc.sgml:
1593         * docs/gst/tmpl/gstfakesrc.sgml:
1594         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1595         (gst_base_src_init), (gst_base_src_set_property),
1596         (gst_base_src_get_property), (gst_base_src_get_range),
1597         (gst_base_src_start):
1598         * gst/base/gstbasesrc.h:
1599           add num-buffers property
1600         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1601         (gst_fakesrc_init), (gst_fakesrc_set_property),
1602         (gst_fakesrc_get_property), (gst_fakesrc_create),
1603         (gst_fakesrc_start):
1604           remove num-buffers property
1605
1606 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1607
1608         * docs/gst/gstreamer-sections.txt:
1609         * docs/gst/tmpl/gstbasesink.sgml:
1610         * docs/gst/tmpl/gstbasesrc.sgml:
1611         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
1612         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
1613         (gst_base_sink_finalize), (gst_base_sink_set_clock),
1614         (gst_base_sink_set_property), (gst_base_sink_get_property),
1615         (gst_base_sink_handle_object), (gst_base_sink_event),
1616         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
1617         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
1618         (gst_base_sink_loop), (gst_base_sink_deactivate),
1619         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
1620         (gst_base_sink_change_state):
1621         * gst/base/gstbasesink.h:
1622         * gst/base/gstbasesrc.h:
1623         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
1624         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
1625         (gst_filesink_init):
1626           more macro splitting
1627
1628 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1629
1630         * gst/gstelement.c: (gst_element_get_bus):
1631           add debug
1632         * tools/gst-launch.c: (check_intr), (event_loop):
1633           fix bus leaks
1634
1635 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1636
1637         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
1638           fix a caps leak
1639
1640 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1641
1642         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1643         (gst_base_src_finalize):
1644           add finalize method and clean up properly
1645         * gst/gstpipeline.c: (gst_pipeline_dispose):
1646           add debug
1647
1648 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1649
1650         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
1651         (gst_bin_suite):
1652           add more things to check
1653         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
1654         * gst/gstelement.c:
1655           more debug
1656
1657 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1658
1659         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1660         (GST_START_TEST), (fakesrc_suite):
1661         * check/gst-libs/gdp.c: (GST_START_TEST):
1662         * check/gst/gst.c: (GST_START_TEST):
1663         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
1664         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1665         * check/gst/gstbus.c: (GST_START_TEST):
1666         * check/gst/gstcaps.c: (GST_START_TEST):
1667         * check/gst/gstdata.c: (GST_START_TEST):
1668         * check/gst/gstelement.c: (GST_START_TEST):
1669         * check/gst/gstghostpad.c: (GST_START_TEST):
1670         * check/gst/gstiterator.c: (GST_START_TEST):
1671         * check/gst/gstmessage.c: (GST_START_TEST):
1672         * check/gst/gstobject.c: (GST_START_TEST):
1673         * check/gst/gstpad.c: (GST_START_TEST):
1674         * check/gst/gststructure.c: (GST_START_TEST):
1675         * check/gst/gstsystemclock.c: (GST_START_TEST),
1676         (gst_systemclock_suite):
1677         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
1678         * check/gst/gstvalue.c: (GST_START_TEST):
1679         * check/pipelines/cleanup.c: (GST_START_TEST):
1680         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
1681         * check/states/sinks.c: (GST_START_TEST):
1682         * check/gstcheck.c: (gst_check_init):
1683         * check/gstcheck.h:
1684           add debugging category
1685           use GST_START_TEST now, so we add a debug line
1686
1687 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1688
1689         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
1690           add test for state change message on a bin
1691         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
1692           add another test
1693         * gst/gstbin.c: (gst_bin_init):
1694         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
1695         * gst/gstelement.c: (gst_element_post_message),
1696         (gst_element_set_state):
1697         * gst/gstelementfactory.c: (gst_element_factory_create):
1698         * gst/gstmessage.c: (gst_message_new):
1699         * gst/gstscheduler.c:
1700           various debugging additions and cleanups
1701
1702 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1703
1704         * check/Makefile.am:
1705         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
1706         (main):
1707           adding tests for elements
1708         * gst/gstelement.c: (gst_element_dispose):
1709
1710 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1711
1712         * gst/registries/gstlibxmlregistry.c: (load_feature):
1713           plug more leaks.  A simple gst_init() now is leakfree, yay.
1714
1715 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1716
1717         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
1718         (gst_xml_registry_load):
1719           plug another memleak
1720
1721 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1722
1723         * configure.ac:
1724           use GST_SET_ERROR_CFLAGS
1725         * docs/faq/cvs.xml:
1726           change to ERROR_CFLAGS
1727
1728 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1729
1730         * configure.ac:
1731           make GST_ERROR_CFLAGS overridable and re-enable Werror
1732         * docs/faq/cvs.xml:
1733           add a note about error CFLAGS
1734         * docs/gst/tmpl/gstfakesrc.sgml:
1735         * gst/elements/gstfakesrc.c:
1736           comment out some unused code
1737         * gst/gst.c: (split_and_iterate):
1738         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
1739         (load_feature):
1740           plug some memleaks
1741
1742 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1743
1744         * common/Makefile.am:
1745         * common/gtk-doc.mak:
1746         * docs/gst/Makefile.am:
1747           factor out gtk-doc.mak
1748
1749 2005-07-07  Wim Taymans  <wim@fluendo.com>
1750
1751         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
1752         (gst_thread_scheduler_dispose):
1753         Unlock the STREAM_LOCK completely.
1754
1755 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1756
1757         * check/Makefile.am:
1758         * check/elements/.cvsignore:
1759         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1760         (START_TEST), (fakesrc_suite), (main):
1761         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1762         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
1763         (gst_fakesrc_create), (gst_fakesrc_start):
1764         * gst/elements/gstfakesrc.h:
1765           adding a first element test
1766
1767 2005-07-07  Andy Wingo  <wingo@pobox.com>
1768
1769         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
1770         debug message.
1771
1772 2005-07-07  Wim Taymans  <wim@fluendo.com>
1773
1774         * gst/gstquery.c:
1775         * gst/gstquery.h:
1776         Remove old types
1777
1778 2005-07-07  Wim Taymans  <wim@fluendo.com>
1779
1780         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
1781         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
1782         Allow subclasses to implement their own negotiation.
1783
1784 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1785
1786         * docs/design/part-gstbin.txt:
1787         * docs/design/part-gstpipeline.txt:
1788           Update design notes to reflect the movement of
1789           responsibility for bus handling from GstPipeline to
1790           GstBin
1791
1792 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1793
1794         * configure.ac:
1795           Remove unnecessary queue2/3/4 examples.
1796
1797 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1798
1799         * examples/Makefile.am:
1800         * examples/helloworld/helloworld.c: (event_loop), (main):
1801         * examples/queue/queue.c: (event_loop), (main):
1802         * examples/queue2/queue2.c: (main):
1803           Update a couple of the examples to work again.
1804
1805         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1806         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
1807          Spelling corrections and extra debug.
1808         
1809         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
1810         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
1811         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
1812         * gst/gstbin.h:
1813         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
1814         (gst_pipeline_change_state):
1815         * gst/gstpipeline.h:
1816           Move the bus handler for children to the GstBin, and create a
1817           separate bus for receiving messages from children to the one the
1818           bus sends 'upwards' on.
1819
1820 2005-07-06  Wim Taymans  <wim@fluendo.com>
1821
1822         * gst/base/README:
1823         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1824         (gst_base_sink_handle_object), (gst_base_sink_loop),
1825         (gst_base_sink_change_state):
1826         * gst/base/gstbasesink.h:
1827         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1828         (gst_base_src_init), (gst_base_src_setcaps),
1829         (gst_base_src_getcaps), (gst_base_src_loop),
1830         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
1831         (gst_base_src_start), (gst_base_src_change_state):
1832         * gst/base/gstbasesrc.h:
1833         Make basesrc negotiate.
1834         Handle the case where preroll fails in basesink.
1835         Update README.
1836
1837 2005-07-06  Wim Taymans  <wim@fluendo.com>
1838
1839         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
1840         Implement the fixate function.
1841         Clean up acceptcaps.
1842
1843 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1844
1845         * docs/pwg/building-filterfactory.xml:
1846         * docs/pwg/pwg.xml:
1847           Remove never-written filter-factory chapter; I'll add the various
1848           base classes to part 4 ("other element types") later on.
1849
1850 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1851
1852         * docs/pwg/advanced-negotiation.xml:
1853         * docs/pwg/building-boiler.xml:
1854         * docs/pwg/building-pads.xml:
1855         * docs/pwg/pwg.xml:
1856         * examples/pwg/Makefile.am:
1857           Add a chapter on caps negotiation, simplify the original code
1858           samples a bit w.r.t. caps negotiation, add link to the advanced
1859           section. Add a bunch of examples showing different use cases of
1860           different types of caps negotiation. Upstream renegotiation isn't
1861           fully documented yet since nobody knows how that works.
1862
1863 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
1864
1865         * check/gst/gstpad.c:
1866         * check/gstcheck.c:
1867         * gst/gstpad.c: (gst_pad_get_internal_links_default):
1868           if pad has no parent, return NULL as list of internal links
1869
1870 2005-07-05  Andy Wingo  <wingo@pobox.com>
1871
1872         * gst/elements/gstfilesrc.c:
1873         * gst/elements/gstfakesrc.c: 
1874         * gst/base/gstpushsrc.c:
1875         * gst/base/gstbasesrc.h: 
1876         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
1877         
1878 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
1879
1880         * Makefile.am:
1881           better report generation target (lcov needs a patch)
1882
1883 2005-07-05  Andy Wingo  <wingo@pobox.com>
1884
1885         * gst/elements, testsuite: Null if we got it...
1886
1887 2005-07-05  Wim Taymans  <wim@fluendo.com>
1888
1889         * configure.ac:
1890         * libs/gst/dataprotocol/Makefile.am:
1891         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
1892         * libs/gst/dataprotocol/dataprotocol.h:
1893         * pkgconfig/Makefile.am:
1894         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
1895         * pkgconfig/gstreamer-dataprotocol.pc.in:
1896         Ported dataprotol to 0.9. 
1897         Added pkgconfig files.
1898
1899 2005-07-05  Andy Wingo  <wingo@pobox.com>
1900
1901         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
1902         Default to returning TRUE for the case when tranform_caps returns
1903         a fixed caps, like for identity or volume.
1904
1905         * check/gst/gstbus.c (pound_bus_with_messages): 
1906         * check/gst/gstmessage.c (START_TEST): 
1907         * check/pipelines/simple_launch_lines.c (got_handoff): Application
1908         message API change.
1909
1910         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
1911         logic weaks here: always run transform_caps, trying passthrough
1912         operation only if the original caps intersects with the transform.
1913
1914         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
1915         source and sink caps.
1916
1917         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
1918         Intersect the peer caps with the pad template before going into
1919         transform_caps.
1920         (gst_base_transform_transform_caps): More debugging.
1921
1922         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
1923         src argument.
1924
1925 2005-07-04  Edward Hervey  <edward@fluendo.com>
1926
1927         * gst/gstutils.c:
1928         * gst/gstutils.h:
1929         (gst_pad_add_*_probe): now returns the signal id for better wrapping
1930         in bindings.
1931
1932 2005-07-04  Andy Wingo  <wingo@pobox.com>
1933
1934         * check/gst/gstpad.c: Only set explicit caps on pads.
1935
1936 2005-07-01  Andy Wingo  <wingo@pobox.com>
1937
1938         * tests/network-clock.scm: Commentary update.
1939
1940         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
1941         Didn't really make sense, not implementable with basetransform,
1942         etc.
1943         (gst_identity_transform): Unref inbuf via make_writable. Feeble
1944         attempt at implementing the sync property, needs an unlock method.
1945
1946         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
1947         New func, by default returns the same caps (the identity
1948         transformation).
1949         (gst_base_transform_getcaps): Uses transform_caps to return
1950         something sensible.
1951         (gst_base_transform_setcaps): Complicated logic to get caps on
1952         both pads, even if they are different, and to call set_caps once
1953         for every time both pads get their caps set.
1954         (gst_base_transform_handle_buffer): Give the ref to the transform
1955         function. Allows in-place modification of the buffer.
1956
1957         * gst/base/gstbasetransform.h (transform_caps): New class method.
1958         Given caps on one side, what can I do on the other.
1959         (set_caps): Take two caps, one for each side of the element.
1960
1961         * gst/gstpad.h:
1962         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
1963         caps in place. This is safe because we can check the mutability of
1964         the caps, and a good idea because fixate functions are just called
1965         as a matter of last resort. (Not actually implemented.)
1966         (gst_pad_set_caps): If the caps we're setting is actually the same
1967         as the existing pad caps, just update the pointer without calling
1968         setcaps. Assert that caps is either NULL or fixed, as per the
1969         docs.
1970
1971         * gst/gstghostpad.c: Update for fixate changes.
1972
1973 2005-07-02  Andy Wingo  <wingo@pobox.com>
1974
1975         * gst/gstcaps.c:
1976         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
1977         two refcounts makes it immutable, which is enough. Doc more.
1978
1979 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
1980
1981         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
1982           Put the mini_object into GValue as a mini_object,
1983           not a gpointer, since that's how we declared
1984           the signal.
1985
1986 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1987
1988         * examples/pwg/Makefile.am:
1989           Fix buildbot again.
1990
1991 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1992
1993         * docs/pwg/building-testapp.xml:
1994           Add extra check.
1995         * examples/pwg/Makefile.am:
1996           Fix buildbot.
1997
1998 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1999
2000         * configure.ac:
2001         * examples/Makefile.am:
2002         * examples/pwg/Makefile.am:
2003         * examples/pwg/extract.pl:
2004           Enable building the PWG examples.
2005         * docs/pwg/advanced-interfaces.xml:
2006           Add URI interface stub.
2007         * docs/pwg/advanced-types.xml:
2008         * docs/pwg/other-autoplugger.xml:
2009         * docs/pwg/appendix-porting.xml:
2010         * docs/pwg/pwg.xml:
2011           Add porting guide (mostly stubs), remove autoplugging (see ADM).
2012         * docs/pwg/building-boiler.xml:
2013         * docs/pwg/building-chainfn.xml:
2014         * docs/pwg/building-pads.xml:
2015         * docs/pwg/building-props.xml:
2016         * docs/pwg/building-state.xml:
2017         * docs/pwg/building-testapp.xml:
2018           Update the building-*.xml parts for 0.9 changes. All examples
2019           code blocks compile in examples/pwg/*.
2020
2021 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2022
2023         * docs/manual/advanced-autoplugging.xml:
2024         * docs/manual/appendix-checklist.xml:
2025         * docs/manual/appendix-integration.xml:
2026         * docs/manual/highlevel-components.xml:
2027           Fix playbin/decodebin examples, update docs a bit, mention bus
2028           instead of signals in various places, mention kmplayer and
2029           kaffeine since they have a working GStreamer backend in the KDE
2030           section.
2031
2032 2005-06-30  Wim Taymans  <wim@fluendo.com>
2033
2034         * CHANGES-0.9:
2035         * docs/design/draft-ghostpads.txt:
2036         * docs/design/draft-push-pull.txt:
2037         * docs/design/draft-query.txt:
2038         * docs/design/part-TODO.txt:
2039         * docs/design/part-query.txt:
2040         Added CHANGES-0.9 doc, updated status of other docs.
2041         
2042         * gst/gstquery.h:
2043         Remove "hmm" macro
2044
2045 2005-06-30  Wim Taymans  <wim@fluendo.com>
2046
2047         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
2048         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
2049         (gst_base_sink_change_state):
2050         * gst/base/gstbasesink.h:
2051         Some tweaks, only EOS and a buffer complete a preroll.
2052
2053 2005-06-30  Andy Wingo  <wingo@pobox.com>
2054
2055         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
2056         activate_push down to the internal pad as well.
2057
2058 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
2059
2060         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2061
2062         * gst/gsttaginterface.c:
2063           Some documentation fixes (#307394 and #307397).
2064
2065 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
2066
2067         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2068
2069         * gst/gstvalue.c: (gst_value_intersect_list):
2070           Fix memleak (#309125).
2071
2072 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2073
2074         * docs/manual/advanced-dataaccess.xml:
2075           Fix fakesrc example to compile; doesn't work, bug somewhere...?
2076         * docs/manual/basics-pads.xml:
2077           Add reference for filtered caps to above chapter.
2078
2079 2005-06-30  Wim Taymans  <wim@fluendo.com>
2080
2081         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
2082         (gst_bin_change_state):
2083         Probes are gone.
2084         Lame attempt at making the state change function a bit
2085         more readable.
2086
2087 2005-06-30  Wim Taymans  <wim@fluendo.com>
2088
2089         * docs/design/part-clocks.txt:
2090         * docs/design/part-element-sink.txt:
2091         * docs/design/part-events.txt:
2092         * docs/design/part-preroll.txt:
2093         * docs/design/part-states.txt:
2094         Some more tweeks and additions to the docs.
2095
2096 2005-06-30  Wim Taymans  <wim@fluendo.com>
2097
2098         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
2099         (default_have_data), (gst_pad_class_init), (gst_pad_init),
2100         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
2101         (gst_pad_check_pull_range), (gst_pad_get_range),
2102         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
2103         * gst/gstpad.h:
2104         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
2105         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
2106         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
2107         (gst_pad_remove_buffer_probe):
2108         Removed atomic operations, use existing LOCK.
2109         Move exception handling out of main code path.
2110
2111 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2112
2113         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
2114         (silly_return_true_function), (gst_pad_class_init),
2115         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
2116         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
2117         (gst_pad_send_event):
2118           Fix accumulator, add default value by using _emitv() instead
2119           of _emit() for signal emission.
2120
2121 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2122
2123         * docs/manual/advanced-dataaccess.xml:
2124         * examples/manual/Makefile.am:
2125           Add probe example.
2126         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
2127           Make work (??).
2128
2129 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
2130
2131         * gst/elements/gstfilesink.c: (gst_filesink_render):
2132           Simplify code so that we don't have to handle short
2133           writes and return GST_FLOW_ERROR if an error occured.
2134
2135 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2136
2137         * docs/gst/gstreamer-docs.sgml:
2138           Remove probes more.
2139
2140 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2141
2142         * docs/gst/gstreamer-sections.txt:
2143         * docs/gst/tmpl/gstpad.sgml:
2144         * docs/gst/tmpl/gstprobe.sgml:
2145         * gst/Makefile.am:
2146         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
2147         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
2148         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
2149         (gst_pad_push_event), (gst_pad_send_event):
2150         * gst/gstpad.h:
2151         * gst/gstutils.c: (gst_pad_add_data_probe),
2152         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
2153         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
2154         (gst_pad_remove_buffer_probe):
2155         * gst/gstutils.h:
2156           Remove old probes, add new g-signal-based probes and some utility
2157           functions.
2158
2159 2005-06-29  Edward Hervey  <edward@fluendo.com>
2160
2161         * gst/gstelementfactory.c:
2162         * gst/gstutils.h:
2163         * gst/gstutils.c:
2164         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
2165         the definition to the header file.
2166
2167 2005-06-29  Andy Wingo  <wingo@pobox.com>
2168
2169         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
2170         plugins from the source directory.
2171
2172 2005-06-29  Wim Taymans  <wim@fluendo.com>
2173
2174         * docs/gst/tmpl/gstbuffer.sgml:
2175         * docs/gst/tmpl/gstclock.sgml:
2176         Some fixings for blantently wrong text.
2177
2178 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
2179
2180         * check/Makefile.am:
2181         * gst/gst.c: (add_path_func), (init_pre):
2182         * gst/gstregistry.c: (gst_registry_add_path):
2183           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
2184           only scan the GST_PLUGIN_PATH locations, and not add
2185           system locations
2186
2187 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
2188
2189         * docs/gst/gstreamer-sections.txt:
2190         * docs/gst/tmpl/gstbasesrc.sgml:
2191         * gst/gstelement.c:
2192         * gst/gstelement.h:
2193         * gst/gstevent.c:
2194         * gst/gstutils.c:
2195           doc fixes
2196
2197 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2198
2199         * docs/manual/advanced-autoplugging.xml:
2200           Fix autoplugging example.
2201
2202 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2203
2204         * docs/manual/advanced-autoplugging.xml:
2205         * docs/manual/mime-world.fig:
2206           Try to get autoplugging working, fix type detection. Fix text
2207           in hello-world image.
2208
2209 2005-06-29  Wim Taymans  <wim@fluendo.com>
2210
2211         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
2212         (gst_base_sink_change_state):
2213         Small debug line.
2214
2215         * gst/gstclock.h:
2216         map SIGNAL and BROADCAST to the right function.
2217
2218         * gst/gstobject.h:
2219         Remove redundant braces.
2220
2221         * gst/gstpad.c: (gst_pad_set_caps):
2222         Don't call setcaps function when reseting caps to NULL.
2223
2224         * gst/gstsystemclock.c: (gst_system_clock_dispose),
2225         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
2226         (gst_system_clock_id_unschedule):
2227         Use BROADCAST as this is what we do.
2228
2229 2005-06-29  Wim Taymans  <wim@fluendo.com>
2230
2231         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
2232         We are actually prerolling before commiting the state
2233         change. 
2234
2235 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2236
2237         * docs/manual/advanced-clocks.xml:
2238         * docs/manual/advanced-interfaces.xml:
2239         * docs/manual/advanced-metadata.xml:
2240         * docs/manual/advanced-position.xml:
2241         * docs/manual/advanced-schedulers.xml:
2242         * docs/manual/advanced-threads.xml:
2243         * docs/manual/appendix-porting.xml:
2244         * docs/manual/basics-bins.xml:
2245         * docs/manual/basics-bus.xml:
2246         * docs/manual/basics-elements.xml:
2247         * docs/manual/basics-helloworld.xml:
2248         * docs/manual/basics-pads.xml:
2249         * docs/manual/highlevel-components.xml:
2250         * docs/manual/manual.xml:
2251         * docs/manual/thread.fig:
2252           Update (until threads/scheduling) Application Development Manual;
2253           remove GstThread, add GstBus, add simple porting checklist, add
2254           documentation for tag writing, clocks, make all examples until this
2255           part compile and run.
2256         * examples/manual/Makefile.am:
2257           Update from changes to Application Development Manual; add bus
2258           example, remove thread example.
2259
2260 2005-06-28  Wim Taymans  <wim@fluendo.com>
2261
2262         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
2263         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
2264         (gst_bus_source_dispatch):
2265         Add debugging messages.
2266         Make internal methods static.
2267         Handle the case where the bus is flushed in the handler.
2268         
2269         * gst/gstelement.c: (gst_element_get_bus):
2270         Fix refcount in _get_bus();
2271
2272         * gst/gstpipeline.c: (gst_pipeline_change_state),
2273         (gst_pipeline_get_clock_func):
2274         Clock refcounting fixes.
2275         Handle the case where preroll timed out more gracefully.
2276         
2277         * gst/gstsystemclock.c: (gst_system_clock_dispose):
2278         Clean up the internal thread in dispose. This is needed
2279         for subclasses that actually get disposed.
2280         
2281         * gst/schedulers/threadscheduler.c:
2282         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
2283         (gst_thread_scheduler_dispose):
2284         Free thread pool in dispose.
2285
2286 2005-06-28  Andy Wingo  <wingo@pobox.com>
2287
2288         * tests/network-clock-utils.scm (debug, print-event): New utils.
2289
2290         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
2291         (*packet-loss*): Unified loss probability.
2292         (network-time): Report out-of-band events.
2293
2294         * tests/plot-data: Add support for out-of-band events. Hack it
2295         into this script instead of passing it down the pipe; should fix
2296         this later.
2297
2298 2005-06-28  Wim Taymans  <wim@fluendo.com>
2299
2300         * docs/gst/gstreamer.types:
2301         * docs/gst/tmpl/gstbasesrc.sgml:
2302         * docs/gst/tmpl/gstpad.sgml:
2303         Docs fixes.
2304
2305 2005-06-28  Wim Taymans  <wim@fluendo.com>
2306
2307         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2308         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
2309         (gst_proxy_pad_do_fixatecaps):
2310         Correctly proxy the check_pull_range function.
2311
2312 2005-06-28  Andy Wingo  <wingo@pobox.com>
2313
2314         * tests/network-clock.scm: Removed need for slib.
2315         
2316 2005-06-28  Wim Taymans  <wim@fluendo.com>
2317
2318         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
2319         (gst_basesink_preroll_queue_flush):
2320         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
2321         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
2322         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2323         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
2324         (gst_proxy_pad_set_property):
2325         * gst/gstpad.c:
2326         * gst/gstpad.h:
2327         * gst/gstqueue.c: (gst_queue_init):
2328         The deprecated pad loop function is removed now.
2329
2330 2005-06-28  Andy Wingo  <wingo@pobox.com>
2331
2332         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
2333         New parameters, simulate network packet loss.
2334
2335         * tests/network-clock-utils.scm: Initialize the RNG.
2336
2337 2005-06-28  Wim Taymans  <wim@fluendo.com>
2338
2339         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
2340         (gst_basesink_event), (gst_basesink_deactivate):
2341         Flushing the preroll queue always needs to unlock the waiters.
2342
2343 2005-06-28  Edward Hervey  <edward@fluendo.com>
2344
2345         * gst/gstpipeline.c: (gst_pipeline_send_event): 
2346         Wheen a seek was successful on a pipeline, set the stream_time to the
2347         seek offset in order to have a synchronized stream_time.
2348
2349 2005-06-28  Wim Taymans  <wim@fluendo.com>
2350
2351         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2352         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
2353         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
2354         (gst_proxy_pad_do_fixatecaps):
2355         Call wrapper function instead of just calling the function
2356         pointers. This takes care of any locking and whatmore.
2357
2358 2005-06-28  Wim Taymans  <wim@fluendo.com>
2359
2360         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
2361         (gst_pad_pull_range):
2362         * gst/gstpad.h:
2363         CONNECTED -> LINKED.
2364
2365 2005-06-28  Andy Wingo  <wingo@pobox.com>
2366
2367         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
2368         source-munging commit!!!
2369
2370         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
2371         (gst_object_sink): Take gpointer arguments, not GstObject --
2372         avoids casts. Like GLib.
2373
2374         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
2375         activate.
2376
2377 2005-06-27  Andy Wingo  <wingo@pobox.com>
2378
2379         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
2380         remaining buffer.
2381
2382         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
2383         returns a sorted copy of the trace list.
2384         (gst_alloc_trace_print_live): New API, only prints traces with
2385         live objects. Sort the list.
2386         (gst_alloc_trace_print_all): Sort the list.
2387         (gst_alloc_trace_print): Align columns.
2388
2389         * gst/elements/gstttypefindelement.c:
2390         * gst/elements/gsttee.c:
2391         * gst/base/gstbasesrc.c:
2392         * gst/base/gstbasesink.c:
2393         * gst/base/gstbasetransform.c:
2394         * gst/gstqueue.c: Adapt for pad activation changes.
2395
2396         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
2397         sched.
2398         (gst_pipeline_dispose): Drop ref on sched.
2399
2400         * gst/gstpad.c (gst_pad_init): Set the default activate func.
2401         (gst_pad_activate_default): Push mode by default.
2402         (pre_activate_switch, post_activate_switch): New stubs, things to
2403         do before and after switching activation modes on pads.
2404         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
2405         the pad's activate function to choose which mode to activate.
2406         Shortcut on deactivation and call the right function directly.
2407         (gst_pad_activate_pull): New API, (de)activates a pad in pull
2408         mode.
2409         (gst_pad_activate_push): New API, same for push mode.
2410         (gst_pad_set_activate_function) 
2411         (gst_pad_set_activatepull_function) 
2412         (gst_pad_set_activatepush_function): Setters for new API.
2413
2414         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
2415         Trace all miniobjects.
2416         (gst_mini_object_make_writable): Unref the arg if we copy, like
2417         gst_caps_make_writable.
2418
2419         * gst/gstmessage.c (_gst_message_initialize): No trace init.
2420
2421         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
2422         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
2423         Adapt for new pad API.
2424
2425         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
2426
2427         * gst/gstelement.h:
2428         * gst/gstelement.c (gst_element_iterate_src_pads) 
2429         (gst_element_iterate_sink_pads): New API functions.
2430         
2431         * gst/gstelement.c (iterator_fold_with_resync): New utility,
2432         should fold into gstiterator.c in some form.
2433         (gst_element_pads_activate): Simplified via use of fold and
2434         delegation of decisions to gstpad->activate.
2435
2436         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
2437         help in debugging.
2438
2439         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
2440         class once in init, like gstmessage. Didn't run into this issue
2441         but it seems correct. Don't initialize a trace, gstminiobject does
2442         that.
2443
2444         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
2445         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
2446         to the bus.
2447         (assert_live_count): New util function, uses alloc traces to check
2448         cleanup.
2449
2450         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
2451         To be modified when unlink drops the internal pad.
2452
2453 2005-06-27  Wim Taymans  <wim@fluendo.com>
2454
2455         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
2456         (gst_bin_change_state):
2457         Cleanup the get_state() function a little, make sure it
2458         iterates the same set of elements.
2459         Added stub iterate_state_order().
2460
2461 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
2462
2463         * docs/gst/gstreamer-docs.sgml:
2464         * docs/gst/gstreamer-sections.txt:
2465         * docs/gst/gstreamer.types:
2466         * docs/gst/tmpl/gstbasesink.sgml:
2467         * docs/gst/tmpl/gstbasesrc.sgml:
2468         * docs/gst/tmpl/gstbasetransform.sgml:
2469         * docs/gst/tmpl/gstelement.sgml:
2470         * docs/gst/tmpl/gstiterator.sgml:
2471         * gst/base/gstbasesrc.c:
2472         * gst/base/gstbasesrc.h:
2473         * gst/base/gstbasetransform.h:
2474         * gst/gstelement.c:
2475         * gst/gstiterator.h:
2476           adding basetransform and iterator docs
2477
2478 2005-06-27  Andy Wingo  <wingo@pobox.com>
2479
2480         * docs/design/part-activation.txt: Notes on how activation should
2481         work -- not quite implemented yet.
2482
2483 2005-06-25  Wim Taymans  <wim@fluendo.com>
2484
2485         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
2486         At least get the chain function correct, needs more
2487         fixing.
2488
2489 2005-06-25  Wim Taymans  <wim@fluendo.com>
2490
2491         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2492         (gst_basesink_handle_object), (gst_basesink_event),
2493         (gst_basesink_do_sync), (gst_basesink_handle_event),
2494         (gst_basesink_change_state):
2495         * gst/gsttask.h:
2496         Right, two problems here: ghostpads don't take locks and
2497         glib _rec_mutex_lock_full() with depth==0 still locks.
2498         Catch illegal locking and g_warn them.
2499
2500 2005-06-25  Wim Taymans  <wim@fluendo.com>
2501
2502         * check/states/sinks.c: (START_TEST), (gst_object_suite):
2503         Have to check for completion now...
2504
2505 2005-06-25  Wim Taymans  <wim@fluendo.com>
2506
2507         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2508         (gst_basesink_handle_object), (gst_basesink_event),
2509         (gst_basesink_do_sync), (gst_basesink_handle_event),
2510         (gst_basesink_change_state):
2511         * gst/gstpad.h:
2512         Unlock STREAM_LOCK whatever the recursion was.
2513
2514 2005-06-25  Wim Taymans  <wim@fluendo.com>
2515
2516         * gst/base/gstbasesink.c: (gst_basesink_set_property),
2517         (gst_basesink_preroll_queue_empty),
2518         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
2519         (gst_basesink_event), (gst_basesink_do_sync),
2520         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
2521         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
2522         (gst_basesink_change_state):
2523         Reworked the base sink, handle event and buffer serialisation
2524         correctly and removed possible deadlock.
2525         Handle EOS correctly.
2526
2527 2005-06-25  Wim Taymans  <wim@fluendo.com>
2528
2529         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
2530         (gst_pipeline_change_state):
2531         * tools/gst-launch.c: (check_intr), (event_loop), (main):
2532         Allow elements to post EOS in the state change function.
2533         Fix up -launch, make it exit the poll loop when the
2534         pipeline actually changed state.
2535         Fix up warning parsing in -launch.
2536
2537 2005-06-25  Wim Taymans  <wim@fluendo.com>
2538
2539         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
2540         (gst_tee_sink_activate):
2541         Core takes STREAM_LOCK for us now.
2542
2543 2005-06-25  Wim Taymans  <wim@fluendo.com>
2544
2545         * gst/gstelement.c: (gst_element_get_state_func),
2546         (gst_element_set_state):
2547         * gst/gstelement.h:
2548         * gst/gstmessage.c: (gst_message_parse_error),
2549         (gst_message_parse_warning):
2550         Keep track of current target state while performing a state
2551         change so that subclasses can do something interesting.
2552         Fix parsing of warning/error messages when GError is NULL.
2553
2554 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
2555
2556         * docs/gst/Makefile.am:
2557         * docs/gst/gstreamer-docs.sgml:
2558         * docs/gst/gstreamer-sections.txt:
2559         * docs/gst/gstreamer.types:
2560         * docs/gst/tmpl/gstbasesink.sgml:
2561         * docs/gst/tmpl/gstbasesrc.sgml:
2562         * docs/gst/tmpl/gstbin.sgml:
2563         * docs/gst/tmpl/gstcompat.sgml:
2564         * docs/gst/tmpl/gstfakesink.sgml:
2565         * docs/gst/tmpl/gstfakesrc.sgml:
2566         * docs/gst/tmpl/gstfilesink.sgml:
2567         * docs/gst/tmpl/gstfilesrc.sgml:
2568         * docs/gst/tmpl/gstindex.sgml:
2569         * docs/manual/appendix-quotes.xml:
2570         * gst/base/gstbasesrc.h:
2571         * gst/elements/gstfakesrc.h:
2572         * gst/gstmessage.h:
2573           start pulling in base classes and elements in our docs
2574
2575 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
2576
2577         * docs/gst/Makefile.am:
2578         * docs/libs/Makefile.am:
2579           fixed make distcheck with gtk-doc 1.3
2580
2581 2005-06-23  Wim Taymans  <wim@fluendo.com>
2582
2583         * gst/gstelement.c: (gst_element_get_state_func),
2584         (gst_element_set_state), (gst_element_change_state):
2585         When the state did not change, also report NO_PREROLL
2586         when it matters.
2587
2588 2005-06-23  Wim Taymans  <wim@fluendo.com>
2589
2590         * gst/gstpad.c: (gst_pad_event_default):
2591         * gst/gstqueue.c: (gst_queue_loop):
2592         No unsafe task pausing please.
2593
2594 2005-06-23  Wim Taymans  <wim@fluendo.com>
2595
2596         * gst/schedulers/threadscheduler.c:
2597         (gst_thread_scheduler_task_start),
2598         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
2599         Ref the task before pushing it on the threadpool. This
2600         makes sure that we have a ref when the threadfunction is
2601         actually called.
2602
2603 2005-06-23  Andy Wingo  <wingo@pobox.com>
2604
2605         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
2606         offset is greater than the file's size.
2607
2608         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
2609         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
2610         * gst/gstobject.c (gst_object_class_init): Make the class lock
2611         recursive. Wim won't let me drop deep_notify. Decodebin works
2612         again, whoopdy doo.
2613
2614         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
2615         internal pad, and hacks accordingly. Doesn't do it on the target
2616         pad because we change its caps. Probably catches all cases of
2617         interest tho.
2618         (gst_ghost_pad_set_property): Connect to notify::caps as
2619         appropritate.
2620
2621         * tests/network-clock.scm (plot-simulation): Pipe data to the
2622         elite python skript.
2623
2624         * tests/network-clock-utils.scm (define-parameter): New macro,
2625         defines a parameter that can be set via the command line.
2626         (set-parameter!, parse-parameter-arguments): Command line args
2627         parser.
2628
2629         * tests/plot-data: Simple matplotlib-based plotter, takes input on
2630         stdin.
2631
2632 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
2633
2634         * gst/elements/gsttypefindelement.c:
2635         (gst_type_find_element_handle_event):
2636           Don't restart typefinding on a discont.
2637         * gst/gstelement.c: (gst_element_set_state):
2638           Debug spelling fix.
2639         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
2640           Allow changing mode of an active pad.
2641           Debug output fixes.
2642         * gst/registries/gstlibxmlregistry.c: (load_feature):
2643           Don't cast a static pad template to a normal pad template.
2644
2645 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
2646
2647         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2648         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2649           remove gst_strtoll completely, since it didn't actually do
2650           anything more than what g_ascii_strtoull already does.
2651           check for range errors when deserializing
2652           do a cast for the unsigned cases; but further fixing needs
2653           a decision on what the interpretation of "(int)" and
2654           deserialization should be for values that fall outside the
2655           type's boundaries (ie, refuse, or interpret as casting)
2656
2657 2005-06-23  Wim Taymans  <wim@fluendo.com>
2658
2659         * check/Makefile.am:
2660         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
2661         * docs/design/part-live-source.txt:
2662         * docs/design/part-states.txt:
2663         * gst/base/gstbasesrc.c: (gst_basesrc_init),
2664         (gst_basesrc_set_live), (gst_basesrc_is_live),
2665         (gst_basesrc_get_range), (gst_basesrc_activate),
2666         (gst_basesrc_change_state):
2667         * gst/base/gstbasesrc.h:
2668         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2669         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
2670         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
2671         * gst/gstelement.c: (gst_element_get_state_func),
2672         (gst_element_set_state):
2673         * gst/gstelement.h:
2674         * gst/gsttypes.h:
2675         * tools/gst-launch.c: (event_loop), (main):
2676         Added support for live sources and other elements that
2677         cannot do preroll.
2678         Updated design docs, added live-source design doc.
2679         Implemented live source functionality in basesrc
2680         Fix error condition in _bin_get_state()
2681         Implement live source handling in -launch.
2682         Added check for live sources.
2683         Fixed case in GstBin where elements were changed state
2684         multiple times.
2685
2686
2687 2005-06-23  Andy Wingo  <wingo@pobox.com>
2688
2689         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
2690         borken refcounting.
2691
2692         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
2693         gst_caps_replace takes care of this for us.
2694
2695         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
2696         gst_pad_set_caps on the target, not just its setcaps() function.
2697
2698         * tests/network-clock.scm: 
2699         * tests/network-clock-utils.scm: A network clock simulator.
2700         Something of an algorithmic testbed before doing something in C.
2701
2702 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2703
2704         * check/Makefile.am:
2705         * check/gst/capslist.h:
2706           copy over from 0.8, and add two with bitmasks specified with
2707           (int) 0xFF...
2708         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2709           add test to parse everything from capslist.h
2710         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
2711         (main):
2712           add test for structure deserialization
2713         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2714           add tests for deserialization of strings to int types
2715         * gst/gststructure.c: (gst_structure_nth_field_name):
2716         * gst/gststructure.h:
2717           add a way to get the name of a field referenced by index
2718         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2719           instead of checking if the resulting long long lies between
2720           min and max, we check if the long long would fit into
2721           a number of bytes for the final type.
2722           This fixes cases where a string represents 2^32 - 1, which
2723           when cast to int would be the (valid) -1, but is bigger than
2724           G_MAXINT
2725
2726 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2727
2728         * gst/parse/grammar.y:
2729           add a log line for type deserialization
2730
2731 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2732
2733         * check/gst/gstvalue.c: (START_TEST):
2734         * gst/gstvalue.c: (gst_value_deserialize):
2735           return long long, not int, so gint64 deserialization actually
2736           works.  Is there any flag that makes the compiler check this ?
2737           Fixes #308559
2738
2739 2005-06-22  Wim Taymans  <wim@fluendo.com>
2740
2741         * gst/gstbuffer.h:
2742         Added convenience macros for setting buffers in GValue.
2743
2744 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2745
2746         * check/gst/.cvsignore:
2747         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2748           add a test deserializing int64, and comment part out because
2749           it fails, yay !
2750
2751 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2752
2753         * check/Makefile.am:
2754         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
2755         * testsuite/Makefile.am:
2756         * testsuite/caps/Makefile.am:
2757         * testsuite/caps/value_serialize.c:
2758         * testsuite/test_gst_init.c:
2759           move a value_serialize test over
2760
2761 2005-06-20  Wim Taymans  <wim@fluendo.com>
2762
2763         * gst/gstpad.c:
2764         Small doc updates.
2765         
2766         * gst/gstvalue.c: (gst_value_compare_buffer),
2767         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
2768         (gst_value_compare_flags), (gst_value_serialize_flags),
2769         (gst_value_deserialize_flags), (_gst_value_initialize):
2770         Fix serialisation of buffers, they are not boxed types anymore
2771
2772 2005-06-20  Wim Taymans  <wim@fluendo.com>
2773
2774         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2775         Testcase to show error in buffer-on-caps serialisation.
2776
2777 2005-06-20  Andy Wingo  <wingo@pobox.com>
2778
2779         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
2780         will be adding to later.
2781
2782         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
2783         if its socks fill with rocks.
2784         (gst_system_clock_obtain): Set the name on object construction.
2785         Avoid double-checked locking.
2786
2787 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
2788
2789         * gst/gsturi.c: (gst_element_make_from_uri):
2790           Fix potential endless loop.
2791
2792 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2793
2794         * check/Makefile.am:
2795           add gsttag
2796         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
2797         (main):
2798           move over from testsuite dir and clean up
2799         * configure.ac:
2800         * gst/gsttag.c:
2801         * testsuite/Makefile.am:
2802         * testsuite/tags/.cvsignore:
2803         * testsuite/tags/Makefile.am:
2804         * testsuite/tags/merge.c:
2805           remove testsuite/tags
2806
2807 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2808
2809         * docs/gst/gstreamer-sections.txt:
2810         * docs/gst/tmpl/gstenumtypes.sgml:
2811         * win32/gstenumtypes.c:
2812           clean up documentation build a little
2813
2814 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2815
2816         * check/gstcheck.h:
2817           add macros for checking refcounts on objects and caps
2818         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
2819           add some more unit tests
2820         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
2821         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
2822           fix leaked refcounts (I hope :)) so unittest works
2823         * gst/gstpad.h:
2824           whitespace removal
2825
2826 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2827
2828         * configure.ac: back to HEAD
2829
2830 === release 0.9.1 ===
2831
2832 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2833
2834         * NEWS:
2835         * RELEASE:
2836           updated
2837
2838 2005-06-17  Andy Wingo  <wingo@pobox.com>
2839
2840         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
2841         assert; it's always possible that the pad gets deactivated in
2842         between the checks in gstpad.c and the implementation. Rely on
2843         finish_preroll() to return a FLUSHING or similar instead of on the
2844         assert.
2845         
2846         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
2847         clock and post an EOS message if we come out of finish_preroll in
2848         the playing state.
2849
2850 2005-06-16  David Schleef  <ds@schleef.org>
2851
2852         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
2853         (gst_capsfilter_set_property): Allow NULL as possible value
2854         for filter_caps property, indicating GST_CAPS_ANY.
2855
2856 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2857
2858         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
2859           fix debug output
2860         * gst/schedulers/Makefile.am:
2861           use libgst prefix
2862         * gstreamer.spec.in:
2863           fix spec for it
2864
2865 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2866
2867         * gstreamer.spec.in:
2868           clean up
2869
2870 2005-06-08  Andy Wingo  <wingo@pobox.com>
2871
2872         * gst/gstutils.c: RPAD fixes all around.
2873         (gst_element_link_pads): Refcounting fixes.
2874
2875         * tools/gst-inspect.c:
2876         * tools/gst-xmlinspect.c:
2877         * parse/grammar.y:
2878         * gst/base/gsttypefindhelper.c:
2879         * gst/base/gstbasesink.c:
2880         * gst/gstqueue.c: RPAD fixes.
2881
2882         * gst/gstghostpad.h:
2883         * gst/gstghostpad.c: New ghost pad implementation as full proxy
2884         pads. The tricky thing is they provide both source and sink
2885         interfaces, since they proxy the internal pad for the external
2886         pad, and vice versa. Implement with lower-level ProxyPad objects,
2887         with the interior proxy pad as a child of the exterior ghost pad.
2888         Should write a doc on this.
2889         
2890         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
2891         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
2892         gst_object API.
2893         
2894         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
2895         pads are real pads. No ghost pads in this file. Not documenting
2896         the myriad s/RPAD/PAD/ and REALIZE fixes.
2897         (gst_pad_class_init): Add properties for "direction" and
2898         "template". Both are construct-only, so they can't change during
2899         the life of the pad. Fixes properly deriving from GstPad.
2900         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
2901         derived objects, just set properties when creating the objects via
2902         g_object_new.
2903         (gst_pad_get_parent): Implement as a function, return NULL if the
2904         parent is not an element.
2905         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
2906         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
2907         
2908         * gst/gstobject.c (gst_object_class_init): Make name a construct
2909         property. Don't set it in the object init.
2910
2911         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
2912         with UNKNOWN direction.
2913         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
2914         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
2915         (gst_element_remove_pad): Remove ghost-pad special cases.
2916         (gst_element_pads_activate): Remove rpad cruft.
2917
2918         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
2919         catch the pad's-parent-not-an-element case.
2920
2921         * gst/gst.h: Include gstghostpad.h.
2922
2923         * gst/gst.c (init_post): No more real, ghost pads.
2924
2925         * gst/Makefile.am: Add gstghostpad.[ch].
2926
2927         * check/Makefile.am:
2928         * check/gst/gstbin.c:
2929         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
2930         into a bin creates ghost pads, and that the refcounts are right.
2931         Partly moved from gstbin.c.
2932
2933 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2934
2935         * check/gst-libs/.cvsignore:
2936         * check/gst/.cvsignore:
2937         * check/pipelines/.cvsignore:
2938           ignore more
2939         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
2940         (START_TEST), (cleanup_suite), (main):
2941           add some tests related to cleanup after running pipelines
2942
2943 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2944
2945         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
2946           add a testsuite for GstBuffer
2947
2948 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2949
2950         * gst/gstminiobject.h:
2951           add defines for accessing the refcount
2952
2953 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
2954
2955         * Makefile.am: added support for html unit test coverage reports
2956
2957 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
2958
2959         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
2960           Free existing caps if the capsfilter changes. Add a FIXME about
2961           setting those caps on the pads.
2962
2963         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
2964           Before adding a ghost pad to a parent bin, check that there isn't
2965           already one for the element on the bin. Prevents infinite recursion
2966           when using decodebin in parse pipelines. Andy says he'll rewrite the
2967           way this works anyway, so ignore the hack.
2968
2969 2005-06-02  Andy Wingo  <wingo@pobox.com>
2970
2971         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
2972         file size, pass it on to the type find helper.
2973
2974         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
2975         segment_start and segment_end properly according to the seek
2976         method. Segment_end is still a bit flaky because offset can be
2977         negative for CUR and END cases, but it takes -1 as an "unset"
2978         value.
2979
2980 2005-06-02  Wim Taymans  <wim@fluendo.com>
2981
2982         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
2983         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
2984         (gst_basesink_activate):
2985         * gst/base/gstbasesink.h:
2986         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2987         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2988         (gst_pad_query), (gst_pad_start_task):
2989         * gst/gstpad.h:
2990         * gst/gstqueue.c: (gst_queue_bufferalloc),
2991         (gst_queue_handle_sink_event), (gst_queue_chain):
2992         Bufferalloc: return GstFlowReturn to more accuratly report
2993         why allocation failed.
2994
2995 2005-06-02  Wim Taymans  <wim@fluendo.com>
2996
2997         * gst/gstpipeline.c: (gst_pipeline_send_event):
2998         Take snapshot of state without blocking.
2999
3000 2005-06-02  Wim Taymans  <wim@fluendo.com>
3001
3002         * docs/design/part-TODO.txt:
3003         * docs/design/part-caps.txt:
3004         * docs/design/part-clocks.txt:
3005         * docs/design/part-negotiation.txt:
3006         * docs/design/part-preroll.txt:
3007         Small doc updates 
3008
3009 2005-05-30  Wim Taymans  <wim@fluendo.com>
3010
3011         * gst/elements/gstidentity.c: (gst_identity_event),
3012         (gst_identity_transform), (gst_identity_get_property):
3013         Protect last_message property as it is accessed from
3014         multiple threads.
3015
3016 2005-05-30  Wim Taymans  <wim@fluendo.com>
3017
3018         * gst/gstelement.c: (gst_element_init),
3019         (gst_element_pads_activate), (gst_element_change_state):
3020         Slicker pad activation code.
3021
3022 2005-05-30  Wim Taymans  <wim@fluendo.com>
3023
3024         * gst/Makefile.am:
3025         * gst/gstelement.h:
3026         * gst/gstelementfactory.h:
3027         * gst/gsttypes.h:
3028         Move elementfactory methods to separate .h file.
3029
3030 2005-05-30  Wim Taymans  <wim@fluendo.com>
3031
3032         * docs/design/part-overview.txt:
3033         * gst/gstsystemclock.h:
3034         Small typo fixes, doc updates.
3035
3036 2005-05-30  Wim Taymans  <wim@fluendo.com>
3037
3038         * gst/gst.c: (gst_init_get_popt_table), (init_post),
3039         (init_popt_callback):
3040         Remove cpu-opt flag.
3041
3042 2005-05-30  Wim Taymans  <wim@fluendo.com>
3043
3044         * gst/gstbuffer.c: (gst_subbuffer_finalize),
3045         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
3046         * gst/gstbuffer.h:
3047         Avoid typechecking in places where not needed.
3048         Added accessor for malloc_data.
3049
3050 2005-05-30  Wim Taymans  <wim@fluendo.com>
3051
3052         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
3053         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
3054         (gst_pad_configure_sink), (gst_pad_configure_src),
3055         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
3056         (gst_pad_start_task):
3057         Propagate errors from _set_caps() in configure_src/sink
3058         functions instead of returning TRUE.
3059         FLUSH events can travel up and downstream
3060
3061
3062 2005-05-30  Wim Taymans  <wim@fluendo.com>
3063
3064         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
3065         (gst_basesink_activate):
3066         Handle EOS in preroll.
3067
3068 2005-05-30  Wim Taymans  <wim@fluendo.com>
3069
3070         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
3071         (gst_queue_loop), (gst_queue_handle_src_event):
3072         Remove old pieces of code
3073         Flushing the queue in an upstream event is a very bad idea.
3074
3075 2005-05-26  Andy Wingo  <wingo@pobox.com>
3076
3077         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
3078         gst_value_set_mini_object so as to add a ref on the object (which
3079         will be removed when the value is unset).
3080
3081         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
3082         arg type in ::handoff.
3083
3084         * gst/gstelement.c (gst_element_change_state): Also deactivate
3085         pads in READY->NULL, just in case the element didn't make it to
3086         PAUSED. Wingo tested, Wim approved.
3087
3088 2005-05-26  Wim Taymans  <wim@fluendo.com>
3089
3090         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3091         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
3092         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
3093         A flushing pad cannot be used to alloc_buffer from.
3094
3095 2005-05-26  Wim Taymans  <wim@fluendo.com>
3096
3097         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
3098         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
3099         (gst_bus_source_dispatch), (gst_bus_source_finalize),
3100         (gst_bus_create_watch), (gst_bus_add_watch_full):
3101         * gst/gstbus.h:
3102         Implement a real GSource and use g_main_context_wakeup() to
3103         signal new messages instead of the socketpair.
3104
3105 2005-05-25  Wim Taymans  <wim@fluendo.com>
3106
3107         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
3108         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
3109         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3110         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
3111         (gst_pad_send_event), (gst_pad_start_task):
3112         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
3113         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
3114         (gst_queue_sink_activate), (gst_queue_src_activate),
3115         (gst_queue_change_state):
3116         * gst/gstqueue.h:
3117         Fix state changes for non sinks. We now change sinks, then elements
3118         with unconnected srcpads, then the rest.
3119         More efficient queue unlocking in flush and state changes.
3120         Set the pad activate mode even if it does not have an activate
3121         function.
3122
3123 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3124
3125         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
3126           Don't go in pull mode for non-seekable sources.
3127         * gst/elements/gsttypefindelement.h:
3128         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3129         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
3130         (free_entry), (stop_typefinding),
3131         (gst_type_find_element_handle_event), (find_peek),
3132         (gst_type_find_element_chain), (do_pull_typefind),
3133         (gst_type_find_element_change_state):
3134           Allow typefinding (w/o seeking) in push-mode, simplified version
3135           of what was in 0.8.
3136         * gst/gstutils.c: (gst_buffer_join):
3137         * gst/gstutils.h:
3138           gst_buffer_join() from 0.8.
3139
3140 2005-05-25  Wim Taymans  <wim@fluendo.com>
3141
3142         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3143         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
3144         (gst_pad_send_event), (gst_pad_start_task):
3145         Disable attempt at mode switching until it is figured out.
3146
3147 2005-05-25  Wim Taymans  <wim@fluendo.com>
3148
3149         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
3150         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
3151         (gst_basesink_finish_preroll), (gst_basesink_chain),
3152         (gst_basesink_loop), (gst_basesink_activate),
3153         (gst_basesink_change_state):
3154         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
3155         (gst_basesrc_get_range), (gst_basesrc_loop),
3156         (gst_basesrc_activate):
3157         * gst/elements/gsttee.c: (gst_tee_sink_activate):
3158         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
3159         (gst_real_pad_init), (gst_real_pad_set_property),
3160         (gst_real_pad_get_property), (gst_pad_set_active),
3161         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
3162         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
3163         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
3164         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
3165         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3166         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
3167         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
3168         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
3169         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
3170         (gst_pad_stop_task):
3171         * gst/gstpad.h:
3172         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
3173         (gst_queue_loop), (gst_queue_src_activate):
3174         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
3175         (gst_task_get_state):
3176         * gst/gsttask.h:
3177         * gst/schedulers/threadscheduler.c:
3178         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
3179         Implement gst_pad_pause/start/stop_task(), take STREAM lock
3180         in task function.
3181         Remove ACTIVE pad flag, use FLUSHING everywhere
3182         Added _pad_chain(), _pad_get_range() to call chain/getrange 
3183         functions.
3184         Add locks around IS_FLUSHING when reading.
3185         Take STREAM lock in chain(), get_range() functions so plugins
3186         don't need to take it anymore.
3187         
3188
3189
3190 2005-05-25  Wim Taymans  <wim@fluendo.com>
3191
3192         * tools/gst-launch.c: (event_loop):
3193         Unref message after using its contents instead of
3194         before.
3195
3196 2005-05-24  Wim Taymans  <wim@fluendo.com>
3197
3198         * docs/design/draft-ghostpads.txt:
3199         * docs/design/draft-push-pull.txt:
3200         * docs/design/draft-query.txt:
3201         * docs/design/part-overview.txt:
3202         Docs updates, added general overview doc.
3203
3204 2005-05-21  David Schleef  <ds@schleef.org>
3205
3206         * docs/gst/tmpl/old/GstBin.sgml:
3207         * docs/gst/tmpl/old/GstBuffer.sgml:
3208         * docs/gst/tmpl/old/GstCaps.sgml:
3209         * docs/gst/tmpl/old/GstClock.sgml:
3210         * docs/gst/tmpl/old/GstCompat.sgml:
3211         * docs/gst/tmpl/old/GstData.sgml:
3212         * docs/gst/tmpl/old/GstElement.sgml:
3213         * docs/gst/tmpl/old/GstEvent.sgml:
3214         * docs/gst/tmpl/old/GstIndex.sgml:
3215         * docs/gst/tmpl/old/GstStructure.sgml:
3216         * docs/gst/tmpl/old/GstTag.sgml:
3217         * docs/gst/tmpl/old/cothreads.sgml:
3218         * docs/gst/tmpl/old/cothreads_compat.sgml:
3219         * docs/gst/tmpl/old/gettext.sgml:
3220         * docs/gst/tmpl/old/gobject2gtk.sgml:
3221         * docs/gst/tmpl/old/grammar.tab.sgml:
3222         * docs/gst/tmpl/old/gst-i18n-app.sgml:
3223         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
3224         * docs/gst/tmpl/old/gst_private.sgml:
3225         * docs/gst/tmpl/old/gstaggregator.sgml:
3226         * docs/gst/tmpl/old/gstarch.sgml:
3227         * docs/gst/tmpl/old/gstatomic_impl.sgml:
3228         * docs/gst/tmpl/old/gstbufferstore.sgml:
3229         * docs/gst/tmpl/old/gstdata_private.sgml:
3230         * docs/gst/tmpl/old/gstdisksink.sgml:
3231         * docs/gst/tmpl/old/gstdisksrc.sgml:
3232         * docs/gst/tmpl/old/gstelementfactory.sgml:
3233         * docs/gst/tmpl/old/gstextratypes.sgml:
3234         * docs/gst/tmpl/old/gstfakesink.sgml:
3235         * docs/gst/tmpl/old/gstfakesrc.sgml:
3236         * docs/gst/tmpl/old/gstfdsink.sgml:
3237         * docs/gst/tmpl/old/gstfdsrc.sgml:
3238         * docs/gst/tmpl/old/gstfilesink.sgml:
3239         * docs/gst/tmpl/old/gstfilesrc.sgml:
3240         * docs/gst/tmpl/old/gsthttpsrc.sgml:
3241         * docs/gst/tmpl/old/gstidentity.sgml:
3242         * docs/gst/tmpl/old/gstindexfactory.sgml:
3243         * docs/gst/tmpl/old/gstmarshal.sgml:
3244         * docs/gst/tmpl/old/gstmd5sink.sgml:
3245         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
3246         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
3247         * docs/gst/tmpl/old/gstpadtemplate.sgml:
3248         * docs/gst/tmpl/old/gstpipefilter.sgml:
3249         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
3250         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
3251         * docs/gst/tmpl/old/gstshaper.sgml:
3252         * docs/gst/tmpl/old/gstspider.sgml:
3253         * docs/gst/tmpl/old/gstspideridentity.sgml:
3254         * docs/gst/tmpl/old/gststatistics.sgml:
3255         * docs/gst/tmpl/old/gsttee.sgml:
3256         * docs/gst/tmpl/old/gsttimecache.sgml:
3257         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
3258         * docs/gst/tmpl/old/gstxmlregistry.sgml:
3259         * docs/gst/tmpl/old/gthread-cothreads.sgml:
3260         * docs/gst/tmpl/old/types.sgml:
3261           I didn't intend to add these or check them in.
3262
3263 2005-05-19  David Schleef  <ds@schleef.org>
3264
3265         * configure.ac: Use -no-common everywhere.  In a sane world, it
3266           would be the default in libtool, because without it, you can't
3267           build DLLs on Windows.
3268         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
3269         * docs/gst/gstreamer-sections.txt:
3270         * docs/gst/tmpl/gstcpu.sgml:
3271         * docs/gst/tmpl/gstdata.sgml:
3272         * docs/gst/tmpl/gstthread.sgml:
3273
3274 2005-05-19  David Schleef  <ds@schleef.org>
3275
3276         * gst/gstminiobject.c: (gst_value_set_mini_object),
3277         (gst_value_take_mini_object), (gst_value_get_mini_object):
3278         * gst/gstminiobject.h: Add GValue set/get functions.
3279
3280 2005-05-19  Wim Taymans  <wim@fluendo.com>
3281
3282         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
3283         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
3284         (gst_subbuffer_init), (gst_buffer_is_span_fast):
3285         * gst/gstbuffer.h:
3286         * gst/gstbus.c: (gst_bus_post):
3287         * gst/gstelement.c: (gst_element_get_random_pad):
3288         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
3289         Make subbufer unref the parent in finalize.
3290         some more debugging info.
3291
3292
3293 2005-05-19  Wim Taymans  <wim@fluendo.com>
3294
3295         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3296         (gst_basesink_init), (gst_basesink_finalize),
3297         (gst_basesink_activate), (gst_basesink_change_state):
3298         Don't free preroll queue too early.
3299
3300 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3301
3302         * gst/Makefile.am:
3303         * gst/ROADMAP:
3304           Hi, I'm outdated. Please shoot me.
3305
3306 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3307
3308         * gst/gstpipeline.c: (gst_pipeline_send_event):
3309           Do not access variables after they have been deleted.
3310
3311 2005-05-19  Wim Taymans  <wim@fluendo.com>
3312
3313         * tools/gst-inspect.c: (print_plugin_features):
3314         A plugin feature does unfortunatly not use the
3315         object name yet...
3316
3317 2005-05-18  Wim Taymans  <wim@fluendo.com>
3318
3319         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
3320         Port _span() functions to new subbuffers.
3321
3322 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3323
3324         * gst/gstbin.c: (gst_bin_add_func):
3325           Fix clock settery in bins when adding kids after the clock has
3326           been selected.
3327
3328 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3329
3330         * gst/elements/gstidentity.c: (gst_identity_class_init):
3331           Workaround until signals support GstMiniObject.
3332
3333 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
3334
3335         * gst/gstbuffer.c:
3336         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
3337
3338 2005-05-18  Wim Taymans  <wim@fluendo.com>
3339
3340         * gst/base/Makefile.am:
3341         * gst/base/gstadapter.c: (gst_adapter_base_init),
3342         (gst_adapter_class_init), (gst_adapter_init),
3343         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
3344         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
3345         (gst_adapter_flush), (gst_adapter_available),
3346         (gst_adapter_available_fast):
3347         * gst/base/gstadapter.h:
3348         Ported and added adapter to the base classes.
3349
3350 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3351
3352         * gst/gst.c:
3353         * gst/gstmessage.c:
3354           Make sure the class is reffed/unreffed once before threads can be
3355           used.  Fixes #304551.
3356
3357 2005-05-17  Wim Taymans  <wim@fluendo.com>
3358
3359         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
3360         (gst_basesink_chain_unlocked), (gst_basesink_activate):
3361         * gst/gstminiobject.c: (gst_mini_object_get_type),
3362         (gst_mini_object_free):
3363         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
3364         (gst_pad_push), (gst_pad_push_event):
3365         * gst/gstqueue.c: (gst_queue_change_state):
3366         Don't queue buffers in basesink when we are flushing.
3367         Unref buffer when flushing in basesink.
3368         Flush queue when going to READY
3369         Unref buffer when _push() returns an error.
3370         Don't free MiniObject instance when refcount is incremented
3371         in _finalize() so that we can recover objects.
3372
3373 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
3374
3375         * docs/manual/advanced-schedulers.xml:
3376         * docs/manual/appendix-checklist.xml:
3377         * docs/pwg/advanced-clock.xml:
3378         * docs/pwg/advanced-interfaces.xml:
3379         * docs/pwg/advanced-request.xml:
3380         * docs/pwg/advanced-types.xml:
3381         * docs/pwg/intro-preface.xml:
3382         * examples/plugins/example.c: (gst_example_get_type),
3383         (gst_example_class_init), (gst_example_chain),
3384         (gst_example_set_property), (gst_example_get_property),
3385         (gst_example_change_state), (plugin_init):
3386         * examples/plugins/example.h:
3387           small doc fixes
3388
3389 2005-05-17  Wim Taymans  <wim@fluendo.com>
3390
3391         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
3392         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
3393         * gst/gstqueue.c: (gst_queue_change_state):
3394         Clear queue when going to READY.
3395         Remove IN_SETCAPS flag too.
3396
3397 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
3398
3399         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
3400           Remove implicit cast from gboolean to GstElementStateReturn;
3401           make sure we still return failure in paused => ready case if
3402           the parent class fails to change state and our own stop 
3403           vfunc succeeds.
3404
3405 2005-05-17  Wim Taymans  <wim@fluendo.com>
3406
3407         * tools/gst-launch.c: (event_loop):
3408         Message was unreffed too soon.
3409
3410 2005-05-16  Andy Wingo  <wingo@pobox.com>
3411
3412         * gst/gstbin.c (sink_iterator_filter): Err... um...
3413
3414         * check/gst/gstbin.c (test_ghost_pads): New test for the
3415         ghosting-if-elements-not-in-same-bin behavior.
3416
3417 2005-05-16  David Schleef  <ds@schleef.org>
3418
3419         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
3420         accessing refcount directly.
3421
3422 2005-05-15  David Schleef  <ds@schleef.org>
3423
3424         * check/Makefile.am: remove GstData checks
3425         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
3426         * gst/Makefile.am: add miniobject, remove data
3427         * gst/gst.h: add miniobject, remove data
3428         * gst/gstdata.c: remove
3429         * gst/gstdata.h: remove
3430         * gst/gstdata_private.h: remove
3431         * gst/gsttypes.h: remove GstEvent and GstMessage
3432         * gst/gstelement.c: (gst_element_post_message): fix for API changes
3433         * gst/gstmarshal.list: change BOXED -> OBJECT
3434
3435         Implement GstMiniObject.
3436         * gst/gstminiobject.c:
3437         * gst/gstminiobject.h:
3438
3439         Modify to be subclasses of GstMiniObject.
3440         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
3441         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
3442         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
3443         (gst_subbuffer_get_type), (gst_subbuffer_init),
3444         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
3445         (gst_buffer_span):
3446         * gst/gstbuffer.h:
3447         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
3448         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
3449         (_gst_event_copy), (gst_event_new):
3450         * gst/gstevent.h:
3451         * gst/gstmessage.c: (_gst_message_initialize),
3452         (gst_message_get_type), (gst_message_class_init),
3453         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
3454         (gst_message_new), (gst_message_new_error),
3455         (gst_message_new_warning), (gst_message_new_tag),
3456         (gst_message_new_state_changed), (gst_message_new_application):
3457         * gst/gstmessage.h:
3458         * gst/gstprobe.c: (gst_probe_perform),
3459         (gst_probe_dispatcher_dispatch):
3460         * gst/gstprobe.h:
3461         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
3462         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
3463         (_gst_query_copy), (gst_query_new):
3464
3465         Update elements for GstData -> GstMiniObject changes
3466         * gst/gstquery.h:
3467         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
3468         (gst_queue_chain), (gst_queue_loop):
3469         * gst/elements/gstbufferstore.c:
3470         (gst_buffer_store_add_buffer_func),
3471         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
3472         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3473         (gst_fakesink_render):
3474         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
3475         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
3476         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
3477         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
3478         (gst_filesrc_create_read):
3479         * gst/elements/gstidentity.c: (gst_identity_class_init):
3480         * gst/elements/gsttypefindelement.c:
3481         (gst_type_find_element_src_event), (free_entry_buffers),
3482         (gst_type_find_element_handle_event):
3483         * libs/gst/dataprotocol/dataprotocol.c:
3484         (gst_dp_header_from_buffer):
3485         * libs/gst/dataprotocol/dataprotocol.h:
3486         * libs/gst/dataprotocol/dp-private.h:
3487
3488 2005-05-15  David Schleef  <ds@schleef.org>
3489
3490         * gst/elements/gstelements.c: Don't include headers that were
3491         just removed.
3492
3493 2005-05-15  David Schleef  <ds@schleef.org>
3494
3495         * gst/elements/Makefile.am: Remove some elements that don't
3496         need to be in the core (or even exist at all).
3497         * gst/elements/gstaggregator.c:
3498         * gst/elements/gstaggregator.h:
3499         * gst/elements/gstmd5sink.c:
3500         * gst/elements/gstmd5sink.h:
3501         * gst/elements/gstmultifilesrc.c:
3502         * gst/elements/gstmultifilesrc.h:
3503         * gst/elements/gstpipefilter.c:
3504         * gst/elements/gstpipefilter.h:
3505         * gst/elements/gstshaper.c:
3506         * gst/elements/gstshaper.h:
3507         * gst/elements/gststatistics.c:
3508         * gst/elements/gststatistics.h:
3509         * po/POTFILES.in: Remove above files.
3510
3511 2005-05-14  Andy Wingo  <wingo@pobox.com>
3512
3513         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
3514         so as to get the refs right.
3515         (sink_iterator_filter): New function, wraps bin_element_is_sink,
3516         unreffing objects that don't pass the filter.
3517
3518         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
3519         gst_element_set_bus.
3520         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
3521         normal cases, this will destroy the bus.
3522
3523         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
3524         object.
3525
3526         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
3527         has no sinks.
3528
3529 2005-05-13  Andy Wingo  <wingo@pobox.com>
3530
3531         * gst/gstutils.c (gst_element_link_pads): Instead of calling
3532         gst_pad_link, call pad_link_maybe_ghosting,
3533         (pad_link_maybe_ghosting): Links pads, making sure that the
3534         elements being linked are in the same bin.
3535         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
3536         Helpers for pad_link_maybe_ghosting.
3537
3538 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3539
3540         * configure.ac:
3541           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
3542
3543 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3544
3545         * docs/design/part-element-source.txt:
3546           Mention GstPushSrc
3547
3548 2005-05-12  Wim Taymans  <wim@fluendo.com>
3549
3550         * gst/base/gstbasesink.c: (gst_basesink_init),
3551         (gst_basesink_activate):
3552         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
3553         (gst_basesrc_is_seekable):
3554         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
3555         (bin_element_is_sink), (gst_bin_change_state):
3556         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3557         * gst/gstelement.h:
3558         Identify sinks by their flag to avoid overly complicated
3559         checks (fow now).
3560         Do state changes even for elements not reachable from the
3561         sinks.
3562         BaseSink is a sink now :)
3563         Some more debugging info in the basesrc.
3564
3565
3566 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3567
3568         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
3569           Implement _query on a bin, similar to _send_event.
3570
3571 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
3572
3573         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
3574           Discont event offset format should be GST_FORMAT_BYTES,
3575           not GST_FORMAT_TIME.
3576
3577 2005-05-12  Wim Taymans  <wim@fluendo.com>
3578
3579         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
3580         Same fix as Ronald's but without the signal. 
3581
3582 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3583
3584         * gst/gstutils.c: (gst_element_query_position):
3585           No, an element is not a pad.
3586
3587 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3588
3589         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
3590         (gst_bin_get_state):
3591           If a child is removed from a bin while we remove the child from
3592           the bin and while we're retrieving its state, signal this to the
3593           get_state function so we abort the wait (instead of waiting for
3594           a timeout) and can immediately re-iterate over all other elements.
3595
3596 2005-05-12  Wim Taymans  <wim@fluendo.com>
3597
3598         * gst/base/Makefile.am:
3599         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
3600         (gst_basesrc_start):
3601         * gst/base/gstbasesrc.h:
3602         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
3603         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
3604         (gst_pushsrc_init), (gst_pushsrc_create):
3605         * gst/base/gstpushsrc.h:
3606         Added is_seekable to BaseSrc
3607         Added simple PushSrc.
3608
3609 2005-05-11  Wim Taymans  <wim@fluendo.com>
3610
3611         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3612         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3613         (gst_element_link_pads), (gst_element_query_position),
3614         (gst_element_query_convert), (intersect_caps_func),
3615         (gst_pad_query_position), (gst_pad_query_convert):
3616         Fix refcounting in utils function.
3617         No point in trying to activate a pad when it's added, it could
3618         be added from the state change function and then we deadlock, the
3619         element has to decide what to do.
3620
3621 2005-05-10  Andy Wingo  <wingo@pobox.com>
3622
3623         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
3624         *all* the arguments.
3625
3626         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
3627         stream lock if it's a FLUSH_DONE; normal flushes don't get the
3628         lock (according to the docs -- if this is wrong change the docs).
3629
3630         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
3631         flush messages in the NULL state.
3632
3633         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
3634         message immediately and return.
3635         (gst_bus_set_flushing): New function. If a bus is flushing, it
3636         flushes out any queued messages and immediately unrefs new
3637         messages. This is so when an element goes to NULL, all of the
3638         unhandled messages coming from it can be freed, and their
3639         references to the element dropped. In other words: message source
3640         ref considered harmful :P
3641
3642         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
3643         we're finished with it.
3644
3645         * gst/gstmessage.c (gst_message_new_state_changed): 
3646
3647 2005-05-10  Wim Taymans  <wim@fluendo.com>
3648
3649         * gst/gstvalue.c: (gst_value_compare_flags),
3650         (gst_value_serialize_flags), (gst_value_deserialize_flags),
3651         (_gst_value_initialize):
3652         Added flags serialize/deserialize/compare code.
3653
3654 2005-05-09  Andy Wingo  <wingo@pobox.com>
3655
3656         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
3657         Intersect the peer's caps with our caps.
3658
3659 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3660
3661         * gst/base/gsttypefindhelper.c: (helper_find_peek):
3662         * gst/elements/gsttypefindelement.c: (find_peek):
3663           Handle negative offsets better. Fixes decodebin.
3664
3665 2005-05-09  Wim Taymans  <wim@fluendo.com>
3666
3667         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
3668         (gst_base_transform_event):
3669         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
3670         Implement accept_caps.
3671         Fix silly lock/unlock mismatch in base class.
3672
3673 2005-05-09  Wim Taymans  <wim@fluendo.com>
3674
3675         * docs/design/draft-push-pull.txt:
3676         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
3677         * gst/elements/gstfilesink.c: (gst_filesink_init),
3678         (gst_filesink_query):
3679         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3680         (gst_type_find_handle_src_query), (find_element_get_length):
3681         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
3682         * gst/gstelement.h:
3683         * gst/gstmessage.c:
3684         * gst/gstmessage.h:
3685         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
3686         (gst_real_pad_get_caps_unlocked),
3687         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
3688         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3689         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
3690         (gst_real_pad_dispose), (gst_real_pad_finalize),
3691         (gst_pad_load_and_link), (gst_pad_save_thyself),
3692         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
3693         (gst_pad_check_pull_range), (gst_pad_pull_range),
3694         (gst_pad_template_get_type), (gst_pad_template_class_init),
3695         (gst_pad_template_init), (gst_pad_template_dispose),
3696         (name_is_valid), (gst_static_pad_template_get),
3697         (gst_pad_template_new), (gst_static_pad_template_get_caps),
3698         (gst_pad_template_get_caps), (gst_pad_set_element_private),
3699         (gst_pad_get_element_private), (gst_pad_start_task),
3700         (gst_pad_pause_task), (gst_pad_stop_task),
3701         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
3702         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
3703         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
3704         (gst_ghost_pad_new):
3705         * gst/gstpad.h:
3706         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
3707         (gst_query_new_position), (gst_query_set_position),
3708         (gst_query_parse_position), (gst_query_new_convert),
3709         (gst_query_set_convert), (gst_query_parse_convert):
3710         * gst/gstquery.h:
3711         * gst/gstqueryutils.c:
3712         * gst/gstqueryutils.h:
3713         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3714         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3715         (gst_queue_handle_src_query):
3716         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3717         (gst_element_query_position), (gst_element_query_convert),
3718         (intersect_caps_func), (gst_pad_query_position),
3719         (gst_pad_query_convert):
3720         * gst/gstutils.h:
3721         * tools/gst-inspect.c: (print_pad_info):
3722         * tools/gst-xmlinspect.c: (print_element_info):
3723         Remove old query functions. Ported old code.
3724         Added position/convert helper functions to gstutils.
3725         Reordered gstpad.c code, grouping relevant things.
3726         Remove gst_message_new(), always need to speficy a specific
3727         message.
3728
3729
3730 2005-05-09  Andy Wingo  <wingo@pobox.com>
3731
3732         * gst/gstiterator.h: Add some includes.
3733
3734         * gst/gstqueryutils.h: Include more headers.
3735
3736         * gst/gstpad.h:
3737         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
3738         some uses of gst_pad_query.
3739
3740         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
3741         NULL out parameters.
3742         (gst_query_new_position): New proc, allocates a new position
3743         query.
3744
3745         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
3746         gstqueryutils.c to the build.
3747
3748         * gst/gststructure.c (gst_structure_set_valist): Implement with
3749         the generic G_VALUE_COLLECT.
3750         
3751 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
3752
3753         * gst/Makefile.am: (gst_headers):
3754         Added gstqueryutils.h to the list of headers to install, that was
3755         a 'nachty' move wingo :)
3756
3757 2005-05-06  Andy Wingo  <wingo@pobox.com>
3758
3759         * gst/gstquery.h
3760         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
3761         GstData, init a memchunk.
3762         (standard_definitions): Add a few query types, deprecate a few.
3763         (gst_query_get_type): New proc.
3764         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
3765         implementation.
3766         (gst_query_new_application, gst_query_get_structure): New public
3767         procs.
3768
3769         * docs/design/draft-query.txt: Removed LINKS from the query types,
3770         because all the rest can be dispatched to other pads -- seemed
3771         ugly to have a query that couldn't be dispatched. internal_links
3772         is fine as a pad method.
3773
3774         * gst/gstpad.h: Add query2 as a pad method, add the new functions
3775         in gstpad.c, but maintain binary compatibility for the moment.
3776         Will fix before 0.9 is out.
3777
3778         * gst/gstqueryutils.c: 
3779         * gst/gstqueryutils.h: New files, implement 3 methods for each
3780         query type: parse_query, parse_response, and set. Probably need an
3781         allocator as well.
3782
3783         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
3784
3785         * gst/elements/gstfilesink.c (gst_filesink_query2):
3786         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
3787         query_types, and formats methods.
3788
3789         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
3790         (gst_pad_set_query2_function): New functions.
3791         (gst_real_pad_init): Set query2_default as the default query2
3792         function. Basically just dispatches to internally linked pads.
3793
3794         Needs review!
3795         
3796         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
3797         without using the atomic operations. Only one thread can possibly
3798         be accessing the data at this point. Changed so as to avoid
3799         gst_atomic operations.
3800
3801 2005-05-06  Wim Taymans  <wim@fluendo.com>
3802
3803         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
3804         Also set caps if we use the fallback buffer alloc.
3805
3806 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
3807
3808         * docs/gst/Makefile.am:
3809         * docs/gst/gstreamer-docs.sgml:
3810         * docs/gst/gstreamer-sections.txt:
3811         * docs/gst/tmpl/gstatomic.sgml:
3812         * docs/gst/tmpl/gstmemchunk.sgml:
3813         * testsuite/elements/struct_i386.h:
3814         * win32/GStreamer.vcproj:
3815         * win32/Makefile:
3816           Purge GstAtomic stuff from docs and win32 makefiles as well
3817
3818 2005-05-06  Wim Taymans  <wim@fluendo.com>
3819
3820         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
3821         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
3822         * gst/gstpad.c: (gst_pad_peer_get_caps):
3823         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3824         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3825         (gst_queue_src_activate), (gst_queue_change_state):
3826         * gst/gstqueue.h:
3827         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3828         (intersect_caps_func):
3829         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
3830         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
3831         Some fixes for the peer_get_caps() change.
3832
3833 2005-05-06  Wim Taymans  <wim@fluendo.com>
3834
3835         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
3836         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
3837         (gst_basesink_activate):
3838         Actually do something with error codes returned from the push
3839         functions.
3840
3841 2005-05-06  Wim Taymans  <wim@fluendo.com>
3842
3843         * docs/design/part-element-sink.txt:
3844         * docs/design/part-element-source.txt:
3845         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3846         (gst_basesink_event), (gst_basesink_activate):
3847         * gst/base/gstbasesink.h:
3848         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
3849         (gst_basesrc_activate):
3850         * gst/base/gstbasesrc.h:
3851         * gst/gstelement.c: (gst_element_pads_activate):
3852         Some more documentation.
3853         Fixed scheduling decision in _pads_activate().
3854
3855 2005-05-05  Andy Wingo  <wingo@pobox.com>
3856
3857         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
3858         the test suite.
3859
3860 2005-05-05  Wim Taymans  <wim@fluendo.com>
3861
3862         * gst/base/Makefile.am:
3863         * gst/base/gstbasesink.h:
3864         * gst/base/gstbasesrc.c: (gst_basesrc_init),
3865         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
3866         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
3867         (gst_collectpads_class_init), (gst_collectpads_init),
3868         (gst_collectpads_finalize), (gst_collectpads_new),
3869         (gst_collectpads_set_function), (gst_collectpads_add_pad),
3870         (find_pad), (gst_collectpads_remove_pad),
3871         (gst_collectpads_is_active), (gst_collectpads_collect),
3872         (gst_collectpads_collect_range), (gst_collectpads_start),
3873         (gst_collectpads_stop), (gst_collectpads_peek),
3874         (gst_collectpads_pop), (gst_collectpads_available),
3875         (gst_collectpads_read), (gst_collectpads_flush),
3876         (gst_collectpads_chain):
3877         * gst/base/gstcollectpads.h:
3878         * gst/elements/Makefile.am:
3879         * gst/elements/gstelements.c:
3880         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3881         (gst_fakesink_get_times), (gst_fakesink_event),
3882         (gst_fakesink_preroll), (gst_fakesink_render):
3883         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
3884         (gst_filesink_init), (gst_filesink_set_location),
3885         (gst_filesink_open_file), (gst_filesink_close_file),
3886         (gst_filesink_pad_query), (gst_filesink_event),
3887         (gst_filesink_render), (gst_filesink_change_state):
3888         * gst/elements/gstfilesink.h:
3889         Added object to help in making collect pad based elements.
3890         Ported filesink.
3891         Make event function in sink baseclass return gboolean.
3892
3893 2005-05-05  Wim Taymans  <wim@fluendo.com>
3894
3895         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
3896         (gst_bin_get_by_name):
3897         * gst/gstbuffer.h:
3898         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
3899         (gst_clock_finalize):
3900         * gst/gstdata.c: (gst_data_replace):
3901         * gst/gstdata.h:
3902         * gst/gstelement.c: (gst_element_request_pad),
3903         (gst_element_pads_activate):
3904         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
3905         (gst_object_unref):
3906         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3907         (gst_pad_set_checkgetrange_function),
3908         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
3909         (gst_pad_check_pull_range), (gst_pad_pull_range),
3910         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3911         (gst_pad_pause_task), (gst_pad_stop_task):
3912         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3913         (gst_element_request_pad), (gst_pad_proxy_getcaps):
3914         Fix name lookup in GstBin.
3915         Added _data_replace() function and _buffer_replace()
3916         Use finalize method to clean up clock.
3917         Fix refcounting on request pads.
3918         Fix pad schedule mode error.
3919         Some more object refcounting debug info,
3920
3921
3922 2005-05-04  Andy Wingo <wingo@pobox.com>
3923
3924         * check/Makefile.am:
3925         * docs/gst/tmpl/gstatomic.sgml:
3926         * docs/gst/tmpl/gstplugin.sgml:
3927         * gst/base/gstbasesink.c: (gst_basesink_activate):
3928         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
3929         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
3930         (gst_basesrc_query), (gst_basesrc_set_property),
3931         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
3932         (gst_basesrc_activate):
3933         * gst/base/gstbasesrc.h:
3934         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
3935         (gst_base_transform_src_activate):
3936         * gst/elements/gstelements.c:
3937         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3938         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
3939         * gst/elements/gsttee.c: (gst_tee_sink_activate):
3940         * gst/elements/gsttypefindelement.c: (find_element_get_length),
3941         (gst_type_find_element_checkgetrange),
3942         (gst_type_find_element_activate):
3943         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
3944         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
3945         (gst_caps_load_thyself):
3946         * gst/gstelement.c: (gst_element_pads_activate),
3947         (gst_element_save_thyself), (gst_element_restore_thyself):
3948         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
3949         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
3950         * gst/gstpad.h:
3951         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
3952         (gst_xml_parse_file), (gst_xml_parse_memory),
3953         (gst_xml_get_element), (gst_xml_make_element):
3954         * gst/indexers/gstfileindex.c: (gst_file_index_load),
3955         (_file_index_id_save_xml), (gst_file_index_commit):
3956         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
3957         (read_enum), (load_pad_template), (load_feature), (load_plugin),
3958         (load_paths):
3959         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
3960         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
3961         * tools/gst-complete.c: (main):
3962         * tools/gst-compprep.c: (main):
3963         * tools/gst-inspect.c: (print_element_properties_info):
3964         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
3965         * tools/gst-xmlinspect.c: (print_element_properties):
3966         GCC 4 fixen.
3967         
3968 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
3969
3970         * gst/gstplugin.c: (gst_plugin_check_module),
3971         (gst_plugin_check_file), (gst_plugin_load_file):
3972             apply patch from #172526 to make register work on MacOSX
3973
3974 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3975
3976         * docs/gst/tmpl/gstconfig.sgml:
3977         * gst/gstconfig.h.in:
3978           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
3979         * testsuite/debug/printf_extension.c: (main):
3980           Do not use GST_PTR_FORMAT on pointers to types with
3981           sizeof < sizeof(gpointer).  Fixes test on 64-bit
3982         * testsuite/elements/property.h:
3983           use correct printf format
3984
3985 2005-05-02  Wim Taymans  <wim@fluendo.com>
3986
3987         * docs/design/draft-push-pull.txt:
3988         * docs/design/draft-query.txt:
3989         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
3990         (gst_basesrc_start):
3991         Added draft for new query API.
3992         Added draft for better selecting scheduling methods.
3993         Make basesrc ignore length if the subclass does not support
3994         it.
3995
3996 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3997
3998         * gst/Makefile.am:
3999           possible fixes for automake-1.5 - _LIBADD is reserved
4000
4001 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
4002
4003         * docs/faq/Makefile.am:
4004         * docs/manual/Makefile.am:
4005         * docs/manuals.mak:
4006         * docs/pwg/Makefile.am:
4007         * gst/Makefile.am:
4008           possible fixes for automake-1.5
4009
4010 2005-04-28  Wim Taymans  <wim@fluendo.com>
4011
4012         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4013         (gst_basesink_pad_getcaps), (gst_basesink_init),
4014         (gst_basesink_do_sync):
4015         * gst/gstclock.c: (gst_clock_entry_new):
4016         * gst/gstevent.c: (gst_event_discont_get_value):
4017         * gst/gstpipeline.c: (pipeline_bus_handler),
4018         (gst_pipeline_change_state):
4019         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
4020         Better debugging of clocking info.
4021         Allow NULL values when getting discont values.
4022
4023 2005-04-27  Wim Taymans  <wim@fluendo.com>
4024
4025         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
4026         * check/gst/gstpad.c: (gst_pad_suite):
4027         Increase timeout for checks.
4028
4029 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
4030
4031         * check/Makefile.am:
4032           fix the broken rule for cleanup.  Apparently this rule is
4033           only needed on FC2, so maybe this warrants further autotool
4034           inspection.
4035
4036 2005-04-26  Wim Taymans  <wim@fluendo.com>
4037
4038         * gst/gsttrashstack.h:
4039         Ooohh. a nasty one! After having a failed pop() from the stack,
4040         it's possible that the stack is empty. In that case, don't
4041         follow the NULL pointer.
4042
4043 2005-04-25  Wim Taymans  <wim@fluendo.com>
4044
4045         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4046         (gst_pad_set_checkgetrange_function),
4047         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
4048         (gst_pad_check_pull_range), (gst_pad_pull_range),
4049         (gst_static_pad_template_get_caps), (gst_pad_start_task),
4050         (gst_pad_pause_task), (gst_pad_stop_task):
4051         * gst/gstplugin.c: (gst_plugin_load):
4052         * gst/gstplugin.h:
4053         Remove gst_library_load as it does more harm than good with
4054         the new g_module flags.
4055         Revert bogus caps template check in pad linking, pad caps
4056         are important when linking not the template, which is more
4057         general than the current caps.
4058
4059 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4060
4061         * gst/autoplug/.cvsignore:
4062         * gst/autoplug/Makefile.am:
4063         * gst/autoplug/gstsearchfuncs.c:
4064         * gst/autoplug/gstsearchfuncs.h:
4065         * gst/autoplug/gstspider.c:
4066         * gst/autoplug/gstspider.h:
4067         * gst/autoplug/gstspideridentity.c:
4068         * gst/autoplug/gstspideridentity.h:
4069         * gst/autoplug/spidertest.c:
4070           Die, spider, die.
4071
4072 2005-04-25  Wim Taymans  <wim@fluendo.com>
4073
4074         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4075         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
4076         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
4077         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
4078         * gst/gstpad.h:
4079         Added stubs for unimplemented functions. 
4080
4081 2005-04-24  David Schleef  <ds@schleef.org>
4082
4083         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
4084         please fix.
4085
4086 2005-04-24  David Schleef  <ds@schleef.org>
4087
4088         Convert everything from GstAtomicInt to g_atomic_int_*, and
4089         remove gstatomic.
4090         * gst/Makefile.am:
4091         * gst/gstatomic.c:
4092         * gst/gstatomic.h:
4093         * gst/gstatomic_impl.h:
4094         * gst/gstbuffer.c:
4095         * gst/gstcaps.c:
4096         * gst/gstcaps.h:
4097         * gst/gstclock.c:
4098         * gst/gstclock.h:
4099         * gst/gstdata.c:
4100         * gst/gstdata.h:
4101         * gst/gstdata_private.h:
4102         * gst/gstevent.c:
4103         * gst/gstinfo.c:
4104         * gst/gstinfo.h:
4105         * gst/gstmessage.c:
4106         * gst/gstobject.c:
4107         * gst/gstobject.h:
4108         * gst/gststructure.c:
4109         * gst/gststructure.h:
4110         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
4111         * gst/gstutils.h:
4112
4113 2005-04-24  David Schleef  <ds@schleef.org>
4114
4115         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
4116         make the regressions tests work.  Remove some code that is no
4117         longer true.
4118         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
4119         Disable warning for pads without templates.
4120
4121 2005-04-24  David Schleef  <ds@schleef.org>
4122
4123         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
4124         functions that handle filtered links.
4125         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
4126         removed functions.
4127         * gst/gstutils.c: Fix/remove utility functions that handle
4128         filtered caps.
4129         * gst/gstutils.h:
4130         * gst/gstvalue.c: Add serialization/deserialization of caps
4131         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
4132         requires fixing so that the filter caps notation creates
4133         a capsfilter element and sets the filter_caps property.  I
4134         think everyone probably wants to keep the shorthand notation.
4135         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
4136         * docs/gst/tmpl/gstpad.sgml:
4137
4138         * gst/elements/gstelements.c: Register capsfilter element.
4139         * gst/Makefile.am: fix spacing
4140         * docs/random/ds/0.9-suggested-changes: random
4141
4142 2005-04-23  David Schleef  <ds@schleef.org>
4143
4144         * gst/elements/Makefile.am:
4145         * gst/elements/gstcapsfilter.c: New element that acts like an
4146         identity, but filters caps.  Will eventually replace filtered
4147         caps in pad linking.
4148         * gst/gstutils.c: (gst_element_create_all_pads): New function
4149         to create all the ALWAYS pads that are registered with an
4150         element class.  This functionality should eventually be
4151         merged in with GstElement initialization.
4152         * gst/gstutils.h:
4153         * testsuite/trigger/README: part of trigger test code that should
4154         have been checked in a long time ago.
4155
4156 2005-04-23  David Schleef  <ds@schleef.org>
4157
4158         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
4159         needed with new versions of libtool (nobody will confirm this),
4160         and hard to carry around.
4161         * gst/autoplug/Makefile.am:
4162         * gst/base/Makefile.am:
4163         * gst/elements/Makefile.am:
4164         * gst/indexers/Makefile.am:
4165         * gst/schedulers/Makefile.am:
4166         * libs/gst/bytestream/Makefile.am:
4167         * libs/gst/control/Makefile.am:
4168         * libs/gst/dataprotocol/Makefile.am:
4169         * libs/gst/getbits/Makefile.am:
4170
4171 2005-04-21  Wim Taymans  <wim@fluendo.com>
4172
4173         * docs/design/draft-push-pull.txt:
4174         * docs/design/part-MT-refcounting.txt:
4175         * docs/design/part-TODO.txt:
4176         * docs/design/part-caps.txt:
4177         * docs/design/part-events.txt:
4178         * docs/design/part-gstbus.txt:
4179         * docs/design/part-gstpipeline.txt:
4180         * docs/design/part-messages.txt:
4181         * docs/design/part-push-pull.txt:
4182         * docs/design/part-query.txt:
4183         Some more docs.
4184
4185 2005-04-21  Wim Taymans  <wim@fluendo.com>
4186
4187         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
4188         (gst_message_new), (gst_message_new_error),
4189         (gst_message_new_warning), (gst_message_new_tag),
4190         (gst_message_new_state_changed), (gst_message_new_application),
4191         (gst_message_get_structure):
4192         * gst/gstmessage.h:
4193         * gst/gststructure.c: (gst_structure_set_parent_refcount),
4194         (gst_structure_copy_conditional):
4195         Use parent refcount in GstMessage to ensure GstStructure
4196         consistency.
4197         Cleaned up headers a bit.
4198         
4199
4200 2005-04-20  Wim Taymans  <wim@fluendo.com>
4201
4202         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4203         (gst_basesink_pad_getcaps), (gst_basesink_init),
4204         (gst_basesink_chain_unlocked):
4205         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
4206         (gst_type_find_helper):
4207         * gst/elements/gsttypefindelement.c:
4208         (gst_type_find_element_have_type), (gst_type_find_element_init),
4209         (stop_typefinding), (gst_type_find_element_handle_event),
4210         (find_suggest), (gst_type_find_element_chain),
4211         (gst_type_find_element_checkgetrange),
4212         (gst_type_find_element_getrange), (do_typefind),
4213         (gst_type_find_element_activate):
4214         * gst/gstbuffer.c: (_gst_buffer_sub_free),
4215         (gst_buffer_default_free), (gst_buffer_default_copy),
4216         (gst_buffer_set_caps):
4217         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
4218         (gst_caps_replace):
4219         * gst/gstmessage.c: (gst_message_new),
4220         (gst_message_new_state_changed):
4221         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4222         (gst_pad_set_checkgetrange_function),
4223         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
4224         (gst_pad_set_caps), (gst_pad_check_pull_range),
4225         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
4226         * gst/gstpad.h:
4227         * gst/gsttypefind.c: (gst_type_find_register):
4228         Make gst_caps_replace() work like other _replace() functions.
4229         Use _caps_replace() where possible.
4230         Make sure _message_new() initialises its field.
4231         Add gst_static_pad_template_get_caps()
4232
4233
4234 2005-04-18  Andy Wingo  <wingo@pobox.com>
4235
4236         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
4237         on the peer, not the pad. I think that was a typo. Pass an extra
4238         arg to see if random access is possible. Activate the pads as
4239         PULL_RANGE if possible.
4240
4241         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
4242
4243         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
4244         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
4245         to PROP_....
4246
4247 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4248
4249         * docs/faq/using.xml:
4250           Add note on gstreamer-properties (#154996).
4251
4252 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4253
4254         * docs/random/bbb/optional-properties:
4255           Some analysis on optional properties.
4256
4257 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4258
4259         * docs/gst/tmpl/gstelementfactory.sgml:
4260         * gst/gstelement.h:
4261         * gst/gstelementfactory.c: (gst_element_factory_init),
4262         (gst_element_factory_cleanup), (gst_element_register),
4263         (__gst_element_factory_add_static_pad_template),
4264         (gst_element_factory_get_static_pad_templates),
4265         (gst_element_factory_can_src_caps),
4266         (gst_element_factory_can_sink_caps):
4267         * gst/registries/Makefile.am:
4268         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
4269         (gst_xml_registry_class_init), (gst_xml_registry_init),
4270         (gst_xml_registry_new), (gst_xml_registry_set_property),
4271         (gst_xml_registry_get_property), (get_time), (make_dir),
4272         (gst_xml_registry_get_perms_func),
4273         (plugin_times_older_than_recurse), (plugin_times_older_than),
4274         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
4275         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
4276         (add_to_char_array), (read_string), (read_uint), (read_enum),
4277         (load_pad_template), (load_feature), (load_plugin), (load_paths),
4278         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
4279         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
4280         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
4281         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
4282         (gst_xml_registry_rebuild):
4283         * gst/registries/gstlibxmlregistry.h:
4284         * tools/gst-compprep.c: (main):
4285         * tools/gst-inspect.c: (print_pad_templates_info):
4286         * tools/gst-xmlinspect.c: (print_element_info):
4287           Use libxml2 for registry parsing, use staticpadtemplates in
4288           elementfactories. Makes gst_init() +/- 10x faster.
4289
4290 2005-04-12  Wim Taymans  <wim@fluendo.com>
4291
4292         * gst/base/Makefile.am:
4293         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4294         (gst_basesink_pad_getcaps), (gst_basesink_init),
4295         (gst_basesink_event), (gst_basesink_change_state):
4296         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4297         (gst_basesrc_init), (gst_basesrc_query),
4298         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
4299         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
4300         (gst_basesrc_check_get_range), (gst_basesrc_loop),
4301         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
4302         (gst_basesrc_stop), (gst_basesrc_activate),
4303         (gst_basesrc_change_state):
4304         * gst/base/gsttypefindhelper.c: (helper_find_peek),
4305         (helper_find_suggest), (gst_type_find_helper):
4306         * gst/base/gsttypefindhelper.h:
4307         * gst/elements/Makefile.am:
4308         * gst/elements/gstelements.c:
4309         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
4310         (gst_fakesink_get_times), (gst_fakesink_event),
4311         (gst_fakesink_preroll), (gst_fakesink_render):
4312         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4313         (gst_fakesrc_init), (gst_fakesrc_event_handler),
4314         (gst_fakesrc_get_property), (gst_fakesrc_create),
4315         (gst_fakesrc_start), (gst_fakesrc_stop):
4316         * gst/elements/gstfakesrc.h:
4317         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
4318         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
4319         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
4320         (gst_filesrc_create_read), (gst_filesrc_create),
4321         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
4322         (gst_filesrc_start):
4323         * gst/elements/gsttypefindelement.c:
4324         (gst_type_find_element_have_type), (gst_type_find_element_init),
4325         (start_typefinding), (stop_typefinding), (push_buffer_store),
4326         (gst_type_find_element_handle_event),
4327         (gst_type_find_element_chain),
4328         (gst_type_find_element_checkgetrange),
4329         (gst_type_find_element_getrange), (do_typefind),
4330         (gst_type_find_element_activate),
4331         (gst_type_find_element_change_state):
4332         * gst/elements/gsttypefindelement.h:
4333         * gst/gstpipeline.c: (pipeline_bus_handler):
4334         Added typefind helper.
4335         Small preroll fix in the base sink.
4336         Disable typefind code in basesrc.
4337         Crude port of typefindelement.
4338         Fakesrc cleanups.
4339
4340
4341 2005-04-11  Wim Taymans  <wim@fluendo.com>
4342
4343         * check/gst/gstbus.c: (gstbus_suite):
4344         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
4345         * check/gstcheck.h:
4346           Fix up the timeout so that the test does not fail.
4347
4348 2005-04-06  Wim Taymans  <wim@fluendo.com>
4349
4350         * gst/base/README:
4351         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4352         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
4353         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
4354         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
4355         (gst_basesrc_check_get_range), (gst_basesrc_loop),
4356         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
4357         (gst_basesrc_stop), (gst_basesrc_activate),
4358         (gst_basesrc_change_state), (basesrc_find_peek),
4359         (basesrc_find_suggest), (gst_basesrc_type_find):
4360         * gst/base/gstbasesrc.h:
4361         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
4362         (gst_filesrc_class_init), (gst_filesrc_init),
4363         (gst_filesrc_finalize), (gst_filesrc_set_location),
4364         (gst_filesrc_set_property), (gst_filesrc_get_property),
4365         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
4366         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
4367         (gst_filesrc_create_read), (gst_filesrc_create),
4368         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
4369         * gst/elements/gstfilesrc.h:
4370         * gst/gstelement.c: (gst_element_get_state_func),
4371         (gst_element_lost_state), (gst_element_pads_activate):
4372         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4373         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
4374         (gst_pad_pull_range):
4375         * gst/gstpad.h:
4376         More work on the generic source base class, implement seeking,
4377         query.
4378         Make filesrc extend the base source class.
4379         Added gst_pad_set_checkgetrange_function to GstPad.
4380
4381 2005-04-06  Andy Wingo  <wingo@pobox.com>
4382
4383         * pkgconfig/gstreamer-base.pc.in:
4384         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
4385
4386         * pkgconfig/Makefile.am:
4387         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
4388
4389 2005-04-04  Wim Taymans  <wim@fluendo.com>
4390
4391         * gst/base/Makefile.am:
4392         * gst/base/README:
4393         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4394         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4395         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4396         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
4397         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4398         (gst_basesrc_base_init), (gst_basesrc_class_init),
4399         (gst_basesrc_init), (gst_basesrc_get_formats),
4400         (gst_basesrc_get_query_types), (gst_basesrc_query),
4401         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
4402         (gst_basesrc_set_property), (gst_basesrc_get_property),
4403         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
4404         (gst_basesrc_loop), (gst_basesrc_activate),
4405         (gst_basesrc_change_state):
4406         * gst/base/gstbasesrc.h:
4407         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
4408         (gst_fakesrc_class_init), (gst_fakesrc_init),
4409         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
4410         (gst_fakesrc_get_property), (gst_fakesrc_create):
4411         * gst/elements/gstfakesrc.h:
4412         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
4413         (gst_filesrc_open_file), (gst_filesrc_loop),
4414         (gst_filesrc_activate), (filesrc_find_peek),
4415         (gst_filesrc_type_find):
4416         Made base source class, make fakesrc extend it.
4417         Add comments to basesink class.
4418         Some filesrc cleanup.
4419
4420 2005-03-31  David Schleef  <ds@schleef.org>
4421
4422         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
4423         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
4424         expected to link against libgstreamer.
4425         * gst/base/Makefile.am: link against libgstreamer
4426         * gst/elements/Makefile.am: same
4427
4428 2005-03-31  Andy Wingo  <wingo@pobox.com>
4429
4430         * tests/instantiate/Makefile.am:
4431         * tests/instantiate/caps.c: Add test to test speed of caps copy
4432         and free.
4433
4434         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
4435         GMemChunk to be fair.
4436
4437         * gst/gsttrashstack.h: Remove warning about using the fallback
4438         trash stack implementation, it's still faster than malloc.
4439
4440 2005-03-30  Andy Wingo  <wingo@pobox.com>
4441
4442         * tests/complexity.c: Add a copyright.
4443
4444 2005-03-31  Wim Taymans  <wim@fluendo.com>
4445
4446         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
4447         (gst_base_transform_class_init), (gst_base_transform_init),
4448         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
4449         (gst_base_transform_get_property),
4450         (gst_base_transform_sink_activate),
4451         (gst_base_transform_src_activate),
4452         (gst_base_transform_change_state):
4453         * gst/base/gstbasetransform.h:
4454         * gst/elements/gstidentity.c: (gst_identity_class_init),
4455         (gst_identity_event), (gst_identity_check_perfect),
4456         (gst_identity_transform), (gst_identity_start),
4457         (gst_identity_stop):
4458         Added start/stop methods to transform base class so subclasses 
4459         don't need to deal with state changes even.
4460
4461 2005-03-31  Wim Taymans  <wim@fluendo.com>
4462
4463         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
4464         (gst_event_new_discontinuous), (gst_event_discont_get_value):
4465         * gst/gstevent.h:
4466         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4467         (gst_pad_pull_range):
4468         Added rate to the discont event to prepare for variable speed
4469         and reverse playback.
4470
4471 2005-03-29  David Schleef  <ds@schleef.org>
4472
4473         * configure.ac:
4474         * testsuite/trigger/Makefile.am:
4475         * testsuite/trigger/trigger.c: A little example program to show
4476         how trigger-based elements can work.
4477
4478 2005-03-29  Wim Taymans  <wim@fluendo.com>
4479
4480         * gst/base/Makefile.am:
4481         * gst/base/README:
4482         * gst/base/gstbasesink.c: (gst_basesink_get_type),
4483         (gst_basesink_base_init), (gst_basesink_class_init),
4484         (gst_basesink_pad_getcaps), (gst_basesink_init),
4485         (gst_basesink_activate), (gst_basesink_change_state):
4486         * gst/base/gstbasesink.h:
4487         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
4488         (gst_base_transform_base_init), (gst_base_transform_finalize),
4489         (gst_base_transform_class_init), (gst_base_transform_init),
4490         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
4491         (gst_base_transform_event), (gst_base_transform_getrange),
4492         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
4493         (gst_base_transform_set_property),
4494         (gst_base_transform_get_property),
4495         (gst_base_transform_sink_activate),
4496         (gst_base_transform_src_activate),
4497         (gst_base_transform_change_state):
4498         * gst/base/gstbasetransform.h:
4499         * gst/elements/gstidentity.c: (gst_identity_finalize),
4500         (gst_identity_class_init), (gst_identity_init),
4501         (gst_identity_event), (gst_identity_check_perfect),
4502         (gst_identity_transform), (gst_identity_set_property),
4503         (gst_identity_get_property), (gst_identity_change_state):
4504         * gst/elements/gstidentity.h:
4505         * gst/gstelement.c: (gst_element_get_state_func),
4506         (gst_element_lost_state), (gst_element_pads_activate):
4507         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4508         (gst_pad_check_pull_range), (gst_pad_pull_range):
4509         * gst/gstpad.h:
4510         Simplify pad activation.
4511         Added function to check if pull_range can be performed.
4512         Error out when pulling inactive or flushing pads.
4513         Removed const from refcounted types as it does not make sense.
4514         Simplify pad templates in basesink
4515         Added base class for simple 1-to-1 transforms.
4516         Make identity subclass the base transform.
4517
4518 2005-03-29  Andy Wingo  <wingo@pobox.com>
4519
4520         * docs/libs/gstreamer-libs-overrides.txt: 
4521         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
4522         really don't understand what's going on, but like whatever. I want
4523         green buildbot!
4524
4525         * docs/gst/Makefile.am:
4526         * docs/libs/Makefile.am: Dist the overrides files.
4527
4528         * check/Makefile.am (clean-local): Remove .libs directories.
4529
4530         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
4531         elements to EXTRA_DIST, so po/ files are happy.
4532
4533         * po/POTFILES.in: Er, remove it here.
4534
4535         * po/POTFILES: Remove gstspider.c.
4536
4537         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
4538
4539         * docs/libs/gstreamer-libs-docs.sgml: 
4540         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
4541         bytestream.
4542
4543         * tests/complexity.c (main): Set the length of the preroll queue
4544         on the sinks to prevent a lockup.
4545
4546         * libs/gst/dataprotocol/Makefile.am: 
4547         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
4548         the same as the one in check/gst-libs/gdp.c.
4549
4550         * po/, docs/gst/: Commit automatic changes to docs and po files.
4551
4552         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
4553         the versioned libgstbase.
4554
4555         * check/Makefile.am: Depend on an unversioned gst-register, seems
4556         to make autoconf happier.
4557
4558         * gst/base/Makefile.am: Make libgstbase a versioned lib.
4559
4560 2005-03-28  Wim Taymans  <wim@fluendo.com>
4561
4562         * configure.ac:
4563         * docs/design/part-gstelement.txt:
4564         * docs/design/part-negotiation.txt:
4565         * docs/design/part-preroll.txt:
4566         * docs/design/part-scheduling.txt:
4567         * docs/design/part-states.txt:
4568         * gst/Makefile.am:
4569         * gst/base/Makefile.am:
4570         * gst/base/README:
4571         * gst/base/gstbasesink.c: (gst_basesink_get_template),
4572         (gst_basesink_base_init), (gst_basesink_class_init),
4573         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4574         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4575         (gst_basesink_set_pad_functions),
4576         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
4577         (gst_basesink_set_property), (gst_basesink_get_property),
4578         (gst_base_sink_get_template), (gst_base_sink_get_caps),
4579         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
4580         (gst_basesink_preroll_queue_push),
4581         (gst_basesink_preroll_queue_empty),
4582         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
4583         (gst_basesink_event), (gst_basesink_get_times),
4584         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
4585         (gst_basesink_chain_unlocked), (gst_basesink_chain),
4586         (gst_basesink_loop), (gst_basesink_activate),
4587         (gst_basesink_change_state):
4588         * gst/base/gstbasesink.h:
4589         * gst/elements/Makefile.am:
4590         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
4591         (gst_fakesink_class_init), (gst_fakesink_init),
4592         (gst_fakesink_set_property), (gst_fakesink_get_property),
4593         (gst_fakesink_get_times), (gst_fakesink_event),
4594         (gst_fakesink_preroll), (gst_fakesink_render),
4595         (gst_fakesink_change_state):
4596         * gst/elements/gstfakesink.h:
4597         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4598         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
4599         * gst/gstelement.c: (gst_element_add_pad),
4600         (gst_element_get_state_func), (gst_element_abort_state),
4601         (gst_element_commit_state), (gst_element_lost_state),
4602         (gst_element_set_state), (gst_element_pads_activate):
4603         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
4604         * gst/gstpipeline.c: (gst_pipeline_send_event),
4605         (gst_pipeline_change_state):
4606         Added state change code.
4607         Added/updated docs.
4608         Added sink base class, make fakesink extend the base class.
4609         Small cleanups in GstPipeline.
4610
4611 2005-03-26  David Schleef  <ds@schleef.org>
4612
4613         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
4614         is broken and should be implemented in a different library.
4615         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
4616         * gst/gst.h: remove gstcpu.h
4617         * gst/gstcpu.c: remove
4618         * gst/gstcpu.h: remove
4619         * gst/Makefile.am.future: Remove this file.  It's ancient.
4620
4621 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4622
4623         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4624         (gst_bin_send_event):
4625           Add default event/set_manager handlers. The set_manager handler
4626           takes care that the manager is distributed over kids that were
4627           already in the bin before the manager was set. The event handler
4628           is a utility virtual function that sends the event over all sinks,
4629           so that gst_element_send_event (bin, event); has the expected
4630           behaviour.
4631         * gst/gstpad.c: (gst_pad_event_default):
4632           Re-install default event handling for discontinuities, so that
4633           seeking works without requiring hacks in applications or extra
4634           code in sinks.
4635         * gst/gstpipeline.c: (gst_pipeline_class_init),
4636         (gst_pipeline_send_event):
4637           Half hack, half utility: set a pipeline to PAUSED for seek events,
4638           since that is the only way we can guarantee a/v sync. Means that
4639           you can do gst_element_seek (pipeline, method, pos); on a pipeline
4640           and it "just works".
4641
4642 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4643
4644         * gst/gstpipeline.c: (gst_pipeline_use_clock):
4645           Lock/unlock mismatch.
4646
4647 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
4648
4649         * docs/faq/gst-uninstalled:
4650           add gst-plugins-base
4651         * docs/gst/Makefile.am:
4652           don't error out until docs are fixed
4653         * docs/gst/gstreamer.types:
4654           remove thread
4655
4656 2005-03-22  Wim Taymans  <wim@fluendo.com>
4657
4658         * check/Makefile.am:
4659         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
4660         * gst/gststructure.c: (gst_structure_set_valist),
4661         (gst_structure_copy_conditional):
4662         Activated more tests.
4663         Added message test.
4664         Added G_TYPE_POINTER to GstStructure.
4665         
4666
4667 2005-03-22  Wim Taymans  <wim@fluendo.com>
4668
4669         * docs/design/part-TODO.txt:
4670         * docs/design/part-events.txt:
4671         * docs/design/part-gstbin.txt:
4672         * docs/design/part-gstbus.txt:
4673         * docs/design/part-gstpipeline.txt:
4674         * docs/design/part-messages.txt:
4675         * gst/gstbus.c:
4676         * gst/gstmessage.c:
4677         Docs updates
4678
4679 2005-03-21  Wim Taymans  <wim@fluendo.com>
4680
4681         * gst/gstbus.c: (gst_bus_post):
4682         Fix copy-and-paste error.
4683
4684 2005-03-21  Wim Taymans  <wim@fluendo.com>
4685
4686         * check/Makefile.am:
4687         * gst/Makefile.am:
4688         * gst/elements/Makefile.am:
4689         * gst/elements/gstelements.c:
4690         * gst/elements/gstfakesink.c: (gst_fakesink_init),
4691         (gst_fakesink_event), (gst_fakesink_chain):
4692         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4693         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
4694         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
4695         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
4696         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
4697         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
4698         (gst_fakesrc_loop), (gst_fakesrc_activate),
4699         (gst_fakesrc_change_state):
4700         * gst/elements/gstfakesrc.h:
4701         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
4702         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
4703         (gst_filesrc_open_file), (gst_filesrc_loop),
4704         (gst_filesrc_activate), (gst_filesrc_change_state),
4705         (filesrc_find_peek), (filesrc_find_suggest),
4706         (gst_filesrc_type_find):
4707         * gst/elements/gstidentity.c: (gst_identity_finalize),
4708         (gst_identity_class_init), (gst_identity_init),
4709         (gst_identity_proxy_getcaps), (identity_queue_push),
4710         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
4711         (gst_identity_getrange), (gst_identity_chain),
4712         (gst_identity_sink_loop), (gst_identity_src_loop),
4713         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
4714         (gst_identity_set_property), (gst_identity_get_property),
4715         (gst_identity_change_state):
4716         * gst/elements/gstidentity.h:
4717         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
4718         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
4719         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
4720         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
4721         (gst_tee_sink_activate):
4722         * gst/elements/gsttee.h:
4723         * gst/gst.c: (gst_register_core_elements), (init_post):
4724         * gst/gst.h:
4725         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
4726         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
4727         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
4728         (gst_bin_change_state):
4729         * gst/gstbin.h:
4730         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
4731         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
4732         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
4733         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
4734         (gst_bus_set_sync_handler), (gst_bus_create_watch),
4735         (bus_watch_callback), (bus_watch_destroy),
4736         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
4737         (poll_timeout), (gst_bus_poll):
4738         * gst/gstbus.h:
4739         * gst/gstcaps.h:
4740         * gst/gstdata.h:
4741         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4742         (gst_element_post_message), (gst_element_message_full),
4743         (gst_element_get_state_func), (gst_element_get_state),
4744         (gst_element_abort_state), (gst_element_commit_state),
4745         (gst_element_lost_state), (gst_element_set_state),
4746         (gst_element_pads_activate), (gst_element_change_state),
4747         (gst_element_dispose), (gst_element_set_manager_func),
4748         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
4749         (gst_element_set_manager), (gst_element_get_manager),
4750         (gst_element_set_bus), (gst_element_get_bus),
4751         (gst_element_set_scheduler), (gst_element_get_scheduler):
4752         * gst/gstelement.h:
4753         * gst/gstevent.c: (gst_event_new_segment_seek),
4754         (gst_event_new_flush):
4755         * gst/gstevent.h:
4756         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
4757         (_gst_message_free), (gst_message_get_type), (gst_message_new),
4758         (gst_message_new_eos), (gst_message_new_error),
4759         (gst_message_new_warning), (gst_message_new_tag),
4760         (gst_message_new_state_changed), (gst_message_new_application),
4761         (gst_message_get_structure), (gst_message_parse_tag),
4762         (gst_message_parse_state_changed), (gst_message_parse_error),
4763         (gst_message_parse_warning):
4764         * gst/gstmessage.h:
4765         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
4766         (gst_real_pad_set_property), (gst_pad_set_active),
4767         (gst_pad_is_active), (gst_pad_set_blocked_async),
4768         (gst_pad_set_blocked), (gst_pad_is_blocked),
4769         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
4770         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
4771         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
4772         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
4773         (gst_pad_link_filtered), (gst_pad_relink_filtered),
4774         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
4775         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
4776         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
4777         (gst_pad_set_caps), (gst_pad_configure_sink),
4778         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
4779         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
4780         (gst_real_pad_dispose), (gst_real_pad_finalize),
4781         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
4782         (gst_pad_event_default_dispatch), (gst_pad_event_default),
4783         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
4784         * gst/gstpad.h:
4785         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
4786         (pipeline_bus_handler), (gst_pipeline_change_state),
4787         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
4788         * gst/gstpipeline.h:
4789         * gst/gstprobe.h:
4790         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
4791         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
4792         (gst_queue_link_src), (gst_queue_bufferalloc),
4793         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
4794         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
4795         (gst_queue_loop), (gst_queue_handle_src_event),
4796         (gst_queue_handle_src_query), (gst_queue_src_activate),
4797         (gst_queue_change_state):
4798         * gst/gstqueue.h:
4799         * gst/gstscheduler.c: (gst_scheduler_init),
4800         (gst_scheduler_dispose), (gst_scheduler_create_task),
4801         (gst_scheduler_factory_create):
4802         * gst/gstscheduler.h:
4803         * gst/gststructure.c: (gst_structure_get_type),
4804         (gst_structure_copy_conditional):
4805         * gst/gststructure.h:
4806         * gst/gsttaginterface.h:
4807         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
4808         (gst_task_init), (gst_task_dispose), (gst_task_create),
4809         (gst_task_get_state), (gst_task_start), (gst_task_stop),
4810         (gst_task_pause):
4811         * gst/gsttask.h:
4812         * gst/gstthread.c:
4813         * gst/gstthread.h:
4814         * gst/gsttypes.h:
4815         * gst/schedulers/Makefile.am:
4816         * gst/schedulers/cothreads_compat.h:
4817         * gst/schedulers/entryscheduler.c:
4818         * gst/schedulers/faircothreads.c:
4819         * gst/schedulers/faircothreads.h:
4820         * gst/schedulers/fairscheduler.c:
4821         * gst/schedulers/gstbasicscheduler.c:
4822         * gst/schedulers/gstoptimalscheduler.c:
4823         * gst/schedulers/gthread-cothreads.h:
4824         * gst/schedulers/threadscheduler.c:
4825         (gst_thread_scheduler_task_get_type),
4826         (gst_thread_scheduler_task_class_init),
4827         (gst_thread_scheduler_task_init),
4828         (gst_thread_scheduler_task_start),
4829         (gst_thread_scheduler_task_stop),
4830         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
4831         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
4832         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
4833         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
4834         (plugin_init):
4835         * libs/gst/Makefile.am:
4836         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
4837         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
4838         (gst_file_pad_parent_set):
4839         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
4840         (gst_dp_event_from_packet):
4841         * tests/complexity.c: (main):
4842         * tests/mass_elements.c: (main):
4843         * testsuite/states/locked.c: (message_received), (main):
4844         * testsuite/states/parent.c: (main):
4845         * tools/gst-inspect.c: (print_element_flag_info),
4846         (print_implementation_info), (print_pad_info):
4847         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
4848         (main):
4849         * tools/gst-md5sum.c: (event_loop), (main):
4850         * tools/gst-typefind.c: (main):
4851         * tools/gst-xmlinspect.c: (print_element_info):
4852         Next big merge.
4853         Added GstBus for mainloop integration.
4854         Added GstMessage for sending notifications on the bus.
4855         Added GstTask as an abstraction for pipeline entry points.
4856         Removed GstThread.
4857         Removed Schedulers.
4858         Simplified GstQueue for multithreaded core.
4859         Made _link threadsafe, removed old capsnego.
4860         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
4861         Added pad blocking functions.
4862         Reworked scheduling functions in GstPad to prepare for
4863         scheduling updates soon.
4864         Moved events out of data stream.
4865         Simplified GstEvent types.
4866         Added return values to push/pull.
4867         Removed clocking from GstElement.
4868         Added prototypes for state change function for next merge.
4869         Removed iterate from bins and state change management.
4870         Fixed some elements, disabled others for now.
4871         Fixed -inspect and -launch.
4872         Added check for GstBus.
4873
4874 2005-03-10  Wim Taymans  <wim@fluendo.com>
4875
4876         * docs/design/part-MT-refcounting.txt:
4877         * docs/design/part-clocks.txt:
4878         * docs/design/part-gstelement.txt:
4879         * docs/design/part-gstobject.txt:
4880         * docs/design/part-standards.txt:
4881         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4882         (gst_bin_remove_func), (gst_bin_remove):
4883         * gst/gstbin.h:
4884         * gst/gstbuffer.c:
4885         * gst/gstcaps.h:
4886         * testsuite/clock/clock1.c: (main):
4887         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
4888         (main):
4889         * testsuite/dlopen/loadgst.c: (do_test):
4890         * testsuite/refcounting/bin.c: (add_remove_test1),
4891         (add_remove_test2), (main):
4892         * testsuite/refcounting/element.c: (main):
4893         * testsuite/refcounting/element_pad.c: (main):
4894         * testsuite/refcounting/pad.c: (main):
4895         * tools/gst-launch.c: (sigint_handler_sighandler):
4896         * tools/gst-typefind.c: (main):
4897         Doc updates.
4898         Added doc about clock.
4899         removed gst_bin_iterate_recurse_up(), marked methods
4900         for removal.
4901         Fix more testsuites.
4902
4903 2005-03-09  Wim Taymans  <wim@fluendo.com>
4904
4905         * gst/gstpad.c: (gst_pad_get_direction),
4906         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
4907         (gst_pad_collect_valist):
4908         * testsuite/bins/interface.c: (main):
4909         * testsuite/caps/audioscale.c: (test_caps):
4910         * testsuite/caps/caps.c: (test1), (test2), (test3):
4911         * testsuite/caps/deserialize.c: (main):
4912         * testsuite/caps/enumcaps.c: (main):
4913         * testsuite/caps/filtercaps.c: (main):
4914         * testsuite/caps/intersect2.c: (main):
4915         * testsuite/caps/random.c: (main):
4916         * testsuite/caps/renegotiate.c: (my_fixate), (main):
4917         * testsuite/caps/sets.c: (check_caps):
4918         * testsuite/caps/simplify.c: (check_caps), (main):
4919         * testsuite/caps/subtract.c: (check_caps):
4920         Fix _pad_get_direction wrt ghostpads.
4921         Fix caps testsuite.
4922
4923 2005-03-09  Wim Taymans  <wim@fluendo.com>
4924
4925         * check/Makefile.am:
4926         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
4927         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
4928         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
4929         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
4930         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
4931         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
4932         (gst_bin_remove), (gst_bin_iterate_recurse_up),
4933         (bin_element_is_sink), (gst_bin_iterate_sinks),
4934         (gst_bin_iterate_all_by_interface):
4935         * gst/gstbin.h:
4936         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
4937         (gst_element_change_state), (gst_element_dispose),
4938         (gst_element_finalize), (gst_element_set_loop_function):
4939         * gst/gstelement.h:
4940         * gst/gstiterator.c: (find_custom_fold_func):
4941         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4942         (gst_pad_collectv), (gst_pad_collect_valist),
4943         (gst_pad_template_new):
4944         * gst/gstpipeline.c: (gst_pipeline_class_init),
4945         (gst_pipeline_dispose), (gst_pipeline_set_property),
4946         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
4947         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
4948         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
4949         * gst/gstutils.h:
4950         * gst/schedulers/entryscheduler.c:
4951         * gst/schedulers/gstbasicscheduler.c:
4952         (gst_basic_scheduler_cothreaded_chain),
4953         (gst_basic_scheduler_chain_add_element):
4954         * testsuite/bins/interface.c: (main):
4955         Added GstBin test.
4956         Added GstSystemClock test.
4957         Implemented clock distribution code in GstBin.
4958         Implemented iterate sinks method for future use.
4959         Rearranged gstelement.h
4960         Fix GstIterator comparison bug.
4961         Moved some code to GstPipeline, mostly clocking related.
4962
4963 2005-03-09  Wim Taymans  <wim@fluendo.com>
4964
4965         * configure.ac:
4966         * gst/gst_private.h:
4967         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4968         (gst_bin_remove_func), (gst_bin_remove),
4969         (gst_bin_get_by_name_recurse_up):
4970         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
4971         (gst_clock_id_compare_func), (gst_clock_id_wait),
4972         (gst_clock_id_wait_async), (gst_clock_init),
4973         (gst_clock_adjust_unlocked), (gst_clock_get_time):
4974         * gst/gstelement.h:
4975         * gst/gstinfo.c: (_gst_debug_init):
4976         * gst/gstobject.h:
4977         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4978         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
4979         * gst/gstpad.h:
4980         Bump version number, we're now 0.9.0
4981         Add future debugging category.
4982         Fix NULL _unref() in _get_by_name_recurse_up
4983         Rearrange gstpad.h.
4984         Update some docs.
4985
4986 2005-03-08  Wim Taymans  <wim@fluendo.com>
4987
4988         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
4989         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4990         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
4991         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
4992         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
4993         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
4994         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
4995         * gst/elements/gstidentity.c: (gst_identity_class_init):
4996         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
4997         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
4998         * gst/elements/gstshaper.c: (gst_shaper_class_init):
4999         * gst/elements/gststatistics.c: (gst_statistics_class_init):
5000         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
5001         (gst_tee_link):
5002         * gst/gstelement.c: (gst_element_class_init),
5003         (gst_element_base_class_init), (gst_element_init),
5004         (gst_element_get_random_pad), (gst_element_wait_state_change),
5005         (gst_element_change_state), (gst_element_dispose),
5006         (gst_element_finalize), (gst_element_set_loop_function):
5007         * gst/gstelement.h:
5008         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
5009         * gst/gstthread.c: (gst_thread_class_init),
5010         (gst_thread_release_children_locks), (gst_thread_change_state):
5011         * gst/schedulers/gstbasicscheduler.c:
5012         (gst_basic_scheduler_loopfunc_wrapper),
5013         (gst_basic_scheduler_chain_wrapper),
5014         (gst_basic_scheduler_src_wrapper),
5015         (gst_basic_scheduler_remove_element):
5016         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
5017         Remove threadsafe properties. Fix elements because GObject
5018         complains when installing a property before declaring a
5019         set/get_property handler.
5020         Rearrange gstelement.h file, use STATE macros for state locks.
5021         Free mutexes in the finalize method instead of dispose.
5022
5023 2005-03-08  Wim Taymans  <wim@fluendo.com>
5024
5025         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
5026         * gst/gstthread.c: (gst_thread_release_children_locks):
5027         Added parentage check.
5028         Fix build og GstThread again.
5029
5030 2005-03-08  Wim Taymans  <wim@fluendo.com>
5031
5032         * docs/design/part-MT-refcounting.txt:
5033         * docs/design/part-conventions.txt:
5034         * docs/design/part-gstobject.txt:
5035         * docs/design/part-relations.txt:
5036         * docs/design/part-standards.txt:
5037         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
5038         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
5039         (gst_bin_get_by_name), (gst_bin_get_by_interface),
5040         (gst_bin_iterate_all_by_interface):
5041         * gst/gstbuffer.h:
5042         * gst/gstclock.h:
5043         * gst/gstelement.c: (gst_element_class_init),
5044         (gst_element_change_state), (gst_element_set_loop_function):
5045         * gst/gstelement.h:
5046         * gst/gstiterator.c:
5047         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
5048         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
5049         (gst_object_dispatch_properties_changed), (gst_object_set_name),
5050         (gst_object_set_parent), (gst_object_unparent),
5051         (gst_object_check_uniqueness):
5052         * gst/gstobject.h:
5053         Docs updates, clean up some headers.
5054
5055 2005-03-07  Wim Taymans  <wim@fluendo.com>
5056
5057         * check/.cvsignore:
5058         * check/Makefile.am:
5059         * check/gst-libs/.cvsignore:
5060         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
5061         * check/gst/.cvsignore:
5062         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
5063         (START_TEST), (gstbus_suite), (main):
5064         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
5065         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
5066         (gst_data_suite), (main):
5067         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
5068         (add_fold_func), (gstiterator_suite), (main):
5069         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
5070         (thread_name_object), (thread_name_object_default),
5071         (gst_object_name_compare), (gst_object_suite), (main):
5072         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
5073         (gst_pad_suite), (main):
5074         * check/gstcheck.c: (gst_check_log_message_func),
5075         (gst_check_log_critical_func), (gst_check_init):
5076         * check/gstcheck.h:
5077         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
5078         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
5079         Added checks.
5080
5081 2005-03-07  Wim Taymans  <wim@fluendo.com>
5082
5083         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
5084         (gst_list_iterator_next), (gst_list_iterator_resync),
5085         (gst_list_iterator_free), (gst_iterator_new_list),
5086         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
5087         (gst_iterator_free), (gst_iterator_push), (filter_next),
5088         (filter_resync), (filter_uninit), (filter_free),
5089         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
5090         (gst_iterator_foreach), (find_custom_fold_func),
5091         (gst_iterator_find_custom):
5092         * gst/gstiterator.h:
5093         Added missing files.
5094
5095 2005-03-07  Wim Taymans  <wim@fluendo.com>
5096
5097         * Makefile.am:
5098         * configure.ac:
5099         * docs/design/part-MT-refcounting.txt:
5100         * docs/design/part-conventions.txt:
5101         * docs/design/part-gstobject.txt:
5102         * docs/design/part-relations.txt:
5103         * examples/mixer/mixer.c: (main):
5104         * examples/thread/thread.c: (eos), (main):
5105         * gst/Makefile.am:
5106         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
5107         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
5108         (gst_spider_plug_from_srcpad):
5109         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
5110         (gst_spider_identity_change_state),
5111         (gst_spider_identity_sink_loop_type_finding):
5112         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
5113         * gst/elements/gstidentity.c: (gst_identity_init):
5114         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
5115         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
5116         * gst/elements/gsttypefindelement.c: (free_entry):
5117         * gst/gst.c:
5118         * gst/gst.h:
5119         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
5120         (gst_bin_set_clock_func), (gst_bin_auto_clock),
5121         (gst_bin_set_index), (gst_bin_set_element_sched),
5122         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
5123         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
5124         (gst_bin_iterate_elements), (iterate_child_recurse),
5125         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
5126         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
5127         (compare_interface), (gst_bin_get_by_interface),
5128         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
5129         * gst/gstbin.h:
5130         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
5131         (gst_buffer_default_free), (gst_buffer_default_copy),
5132         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
5133         (gst_buffer_create_sub):
5134         * gst/gstbuffer.h:
5135         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
5136         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
5137         (gst_caps_unref), (gst_static_caps_get),
5138         (gst_caps_remove_and_get_structure), (gst_caps_append),
5139         (gst_caps_append_structure), (gst_caps_remove_structure),
5140         (gst_caps_copy_nth), (gst_caps_set_simple),
5141         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
5142         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
5143         (gst_caps_structure_intersect_field), (gst_caps_intersect),
5144         (gst_caps_structure_subtract_field), (gst_caps_subtract),
5145         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
5146         (gst_caps_structure_figure_out_union),
5147         (gst_caps_switch_structures), (gst_caps_do_simplify),
5148         (gst_caps_replace), (gst_caps_from_string),
5149         (gst_caps_copy_conditional):
5150         * gst/gstcaps.h:
5151         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
5152         (_gst_clock_id_free), (gst_clock_id_unref),
5153         (gst_clock_id_compare_func), (gst_clock_id_wait),
5154         (gst_clock_id_wait_async), (gst_clock_class_init),
5155         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
5156         (gst_clock_get_time), (gst_clock_set_time_adjust),
5157         (gst_clock_set_property), (gst_clock_get_property):
5158         * gst/gstclock.h:
5159         * gst/gstcompat.h:
5160         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
5161         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
5162         * gst/gstdata.h:
5163         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
5164         (gst_element_requires_clock), (gst_element_provides_clock),
5165         (gst_element_set_clock), (gst_element_clock_wait),
5166         (gst_element_wait), (gst_element_set_time_delay),
5167         (gst_element_is_indexable), (gst_element_add_pad),
5168         (gst_element_add_ghost_pad), (gst_element_remove_pad),
5169         (pad_compare_name), (gst_element_get_static_pad),
5170         (gst_element_request_pad), (gst_element_get_request_pad),
5171         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
5172         (gst_element_class_get_pad_template_list),
5173         (gst_element_class_get_pad_template), (gst_element_error_func),
5174         (gst_element_get_random_pad), (gst_element_get_event_masks),
5175         (gst_element_send_event), (gst_element_seek),
5176         (gst_element_get_query_types), (gst_element_query),
5177         (gst_element_get_formats), (gst_element_convert),
5178         (gst_element_is_locked_state), (gst_element_set_locked_state),
5179         (gst_element_sync_state_with_parent), (gst_element_change_state),
5180         (gst_element_finalize), (gst_element_yield),
5181         (gst_element_interrupt), (gst_element_set_scheduler),
5182         (gst_element_get_scheduler), (gst_element_set_loop_function):
5183         * gst/gstelement.h:
5184         * gst/gstevent.h:
5185         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
5186         (gst_format_get_by_nick), (gst_format_get_details),
5187         (gst_format_iterate_definitions):
5188         * gst/gstformat.h:
5189         * gst/gstindex.c: (gst_index_gtype_resolver):
5190         * gst/gstinfo.c:
5191         * gst/gstinfo.h:
5192         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
5193         (gst_mem_chunk_free):
5194         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
5195         (gst_object_ref), (gst_object_unref), (gst_object_sink),
5196         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
5197         (gst_object_dispatch_properties_changed),
5198         (gst_object_set_name_default), (gst_object_set_name),
5199         (gst_object_get_name), (gst_object_set_name_prefix),
5200         (gst_object_get_name_prefix), (gst_object_set_parent),
5201         (gst_object_get_parent), (gst_object_unparent),
5202         (gst_object_check_uniqueness), (gst_object_save_thyself),
5203         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
5204         (gst_object_set_property), (gst_object_get_property),
5205         (gst_object_get_path_string):
5206         * gst/gstobject.h:
5207         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
5208         (gst_real_pad_init), (gst_real_pad_get_property),
5209         (gst_pad_custom_new), (gst_pad_get_direction),
5210         (gst_pad_set_active), (gst_pad_is_active),
5211         (gst_pad_set_event_function), (gst_pad_is_linked),
5212         (gst_pad_link_free), (gst_pad_link_intersect),
5213         (gst_pad_link_fixate), (gst_pad_set_caps),
5214         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
5215         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
5216         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
5217         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
5218         (gst_pad_get_caps), (gst_pad_peer_get_caps),
5219         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
5220         (gst_pad_realize), (gst_pad_get_allowed_caps),
5221         (gst_real_pad_dispose), (gst_real_pad_finalize),
5222         (gst_pad_collectv), (gst_pad_collect_valist),
5223         (gst_pad_template_dispose), (gst_pad_template_new),
5224         (gst_pad_get_internal_links):
5225         * gst/gstpad.h:
5226         * gst/gstpipeline.c: (gst_pipeline_dispose),
5227         (gst_pipeline_change_state):
5228         * gst/gstpipeline.h:
5229         * gst/gstplugin.c:
5230         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
5231         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
5232         * gst/gstpluginfeature.h:
5233         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5234         * gst/gstquery.c: (_gst_query_type_initialize),
5235         (gst_query_type_register), (gst_query_type_get_by_nick),
5236         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
5237         * gst/gstquery.h:
5238         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
5239         * gst/gstscheduler.c: (gst_scheduler_add_element),
5240         (gst_scheduler_factory_create):
5241         * gst/gststructure.c: (gst_structure_set_parent_refcount),
5242         (gst_structure_free), (gst_structure_set_name),
5243         (gst_structure_id_set_value), (gst_structure_set_value),
5244         (gst_structure_set_valist), (gst_structure_remove_field),
5245         (gst_structure_remove_fields),
5246         (gst_structure_remove_fields_valist),
5247         (gst_structure_remove_all_fields), (gst_structure_foreach),
5248         (gst_structure_map_in_place),
5249         (gst_caps_structure_fixate_field_nearest_int),
5250         (gst_caps_structure_fixate_field_nearest_double):
5251         * gst/gststructure.h:
5252         * gst/gstsystemclock.c: (gst_system_clock_class_init),
5253         (gst_system_clock_init), (gst_system_clock_dispose),
5254         (gst_system_clock_async_thread),
5255         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
5256         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
5257         * gst/gstsystemclock.h:
5258         * gst/gsttag.c: (gst_tag_list_add_value_internal),
5259         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
5260         * gst/gsttaginterface.c:
5261         * gst/gstthread.c: (gst_thread_dispose),
5262         (gst_thread_release_children_locks), (gst_thread_change_state),
5263         (gst_thread_main_loop):
5264         * gst/gsttrashstack.h:
5265         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
5266         * gst/gsttypes.h:
5267         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
5268         (gst_element_request_pad), (gst_element_get_pad_from_template),
5269         (gst_element_request_compatible_pad),
5270         (gst_element_get_compatible_pad_filtered),
5271         (gst_element_get_compatible_pad), (gst_element_state_get_name),
5272         (gst_element_link_pads_filtered), (gst_element_link_filtered),
5273         (gst_element_link_many), (gst_element_link),
5274         (gst_element_link_pads), (gst_element_unlink_pads),
5275         (gst_element_unlink_many), (gst_element_unlink),
5276         (gst_pad_can_link_filtered), (gst_pad_can_link),
5277         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
5278         (gst_object_default_error), (gst_bin_add_many),
5279         (gst_bin_remove_many), (gst_element_populate_std_props),
5280         (gst_element_class_install_std_props), (gst_buffer_merge),
5281         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
5282         (link_fold_func), (gst_pad_proxy_setcaps):
5283         * gst/gstutils.h:
5284         * gst/gstvalue.c: (gst_value_deserialize_string):
5285         * gst/parse/grammar.y:
5286         * gst/schedulers/gstbasicscheduler.c:
5287         (gst_basic_scheduler_cothreaded_chain),
5288         (gst_basic_scheduler_chain_recursive_add),
5289         (gst_basic_scheduler_pad_link):
5290         * gst/schedulers/gstoptimalscheduler.c:
5291         (get_group_schedule_function),
5292         (gst_opt_scheduler_state_transition),
5293         (gst_opt_scheduler_add_element), (element_get_reachables_func):
5294         * libs/gst/bytestream/bytestream.c:
5295         * libs/gst/dataprotocol/dataprotocol.c:
5296         (gst_dp_header_from_buffer):
5297         * po/nb.po:
5298         * po/ru.po:
5299         * tests/threadstate/threadstate2.c: (eos):
5300         * tools/gst-compprep.c: (main):
5301         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
5302         (print_pad_info), (print_children_info):
5303         * tools/gst-launch.c: (idle_func), (main):
5304         * tools/gst-md5sum.c: (idle_func), (main):
5305         * tools/gst-xmlinspect.c: (print_element_info):
5306         First THREADED backport attempt, focusing on adding locks and
5307         making sure the API is threadsafe. Needs more work. More docs
5308         follow this week.
5309
5310 2005-02-24  Andy Wingo  <wingo@pobox.com>
5311
5312         * tests/bench-complexity.scm:
5313         * tests/complexity.gnuplot: New files, good for running complexity
5314         benchmarks.
5315
5316         * tests/Makefile.am:
5317         * tests/complexity.c: New test, sets up N elements, at each level
5318         teeing into M streams per element. Eeeenteresting.
5319
5320         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
5321         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
5322         running bench-mass_elements.scm.
5323
5324         * tests/bench-mass_elements.scm: New script, runs mass_elements
5325         for various numbers of identities, outputting the results to a
5326         file. Requires guile 1.6. Just for testing.
5327
5328 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5329
5330         * gst/schedulers/fairscheduler.c:
5331           compile with debug disabled
5332
5333 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
5334
5335         * configure.ac:
5336           hunting season on 0.9 is now OPEN
5337
5338 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
5339
5340         * docs/libs/tmpl/gstcontrol.sgml:
5341         * docs/libs/tmpl/gstdparam.sgml:
5342         * docs/libs/tmpl/gstdplinint.sgml:
5343         * docs/libs/tmpl/gstdpman.sgml:
5344         * docs/libs/tmpl/gstdpsmooth.sgml:
5345         * docs/libs/tmpl/gstunitconvert.sgml:
5346           more docs for the state of dparams
5347
5348 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5349
5350         * gst/gstelementfactory.c: (gst_element_factory_create):
5351         * gst/gstobject.c: (gst_object_init),
5352         (gst_object_set_name_default), (gst_object_set_name):
5353           name objects by default, not in gst_element_factory_create. Allows
5354           using elements created with g_object_new. (fixes #167283)
5355
5356 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5357
5358         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
5359           make the time that debugging functions print relative to when
5360           gst_init was called
5361
5362 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
5363
5364         * gst/gsttaginterface.c:
5365           Fix inline docs: tag setter vararg functions are NULL-terminated,
5366           GST_TAG_INVALID doesn't exist any more.
5367
5368 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5369
5370         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
5371         Allocate the 1 byte more memory that was forgotten!!!!!
5372         fixes memory corruption on 64bit platforms
5373
5374 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
5375
5376         * docs/pwg/building-pads.xml:
5377         * docs/pwg/intro-basics.xml:
5378           fixed a few typos, relabeled introductionary list of types
5379         * docs/random/ensonic/dparams.txt:
5380           more notes abut dparam changes
5381         * libs/gst/control/dparam.c: (gst_dparam_attach):
5382         * libs/gst/control/dparammanager.c:
5383         * libs/gst/control/dparammanager.h:
5384           - many comments and notes on dparam implementation
5385           - new dparams are were not initialized to the default value
5386             from param spec
5387
5388 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
5389
5390         submitted by: Peter Astakhov
5391
5392         * po/LINGUAS:
5393         * po/ru.po:
5394           adding Russian translation
5395
5396 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5397
5398         * configure.ac:
5399         * docs/gst/Makefile.am:
5400         * docs/libs/Makefile.am:
5401           make sure popt is added to gtk-doc flags.  Fixes #147782.
5402
5403 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
5404
5405         * docs/faq/using.xml:
5406           Fix typo in FAQ (artssink => artsdsink)
5407
5408 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5409
5410         * tools/gst-launch.1.in:
5411           Fix typo (#166699).
5412
5413 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
5414
5415         * docs/faq/using.xml:
5416           Add -v argument to fakesrc/fakesink gst-launch line,
5417           so that the promised output will actually show up.
5418
5419 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5420
5421         * gst/gstthread.c: (gst_thread_change_state):
5422           Implement state-change error handling (#166073).
5423
5424 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5425
5426         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
5427           Release interrupt after handling (#166250).
5428
5429 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5430
5431         * configure.ac:
5432           back to HEAD
5433
5434 === release 0.8.9 ===
5435
5436 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5437
5438         * NEWS:
5439         * RELEASE:
5440         * configure.ac:
5441           releasing 0.8.9, "Like Eating Glass"
5442
5443 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5444
5445         submitted by: Clytie Siddall
5446
5447         * po/vi.po: Added Vietnamese translation
5448
5449 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5450
5451         patch by: Tim Philipp-Müller
5452
5453         * configure.ac:
5454         * gst/gstpad.c:
5455           unref data when probe function returns FALSE.  Fixes #166362
5456
5457 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5458
5459         * gst/gst.c: (gst_init_get_popt_table):
5460           Fix typo (#166269).
5461
5462 2005-02-04  Andy Wingo  <wingo@pobox.com>
5463
5464         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
5465         the debugging on whether the caps are compatible.
5466
5467 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5468
5469         * docs/manual/basics-elements.xml:
5470           Fix two typos.
5471
5472 2005-02-02  Wim Taymans  <wim@fluendo.com>
5473
5474         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
5475         (schedule_chain), (get_invalid_call), (chain_invalid_call),
5476         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
5477         Remove some FIXMEs after analysing and commenting why they
5478         are not issues.
5479
5480 2005-02-02  Wim Taymans  <wim@fluendo.com>
5481
5482         * gst/schedulers/gstoptimalscheduler.c:
5483         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
5484         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
5485         (get_invalid_call), (chain_invalid_call),
5486         (get_group_schedule_function), (loop_group_schedule_function),
5487         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
5488         (gst_opt_scheduler_state_transition),
5489         (gst_opt_scheduler_add_element),
5490         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
5491         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
5492         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
5493         (gst_opt_scheduler_show):
5494         Added lock to protect scheduler data structures.
5495
5496 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5497
5498         * testsuite/threads/threadi.c: (cb_data):
5499           Fix buglet in test.
5500
5501 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5502
5503         * testsuite/threads/Makefile.am:
5504         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
5505           On Wim's request, split the test in three separately-compiled
5506           tests that each test a very specific bug. Two of them still fail,
5507           will create bugs for those. threadi.c indicates why they fail.
5508
5509 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5510
5511         * gst/schedulers/gstoptimalscheduler.c:
5512         (get_group_schedule_function):
5513           Try to work with the threading mess that queue_link is.
5514
5515 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5516
5517         * gst/gstbin.c: (gst_bin_remove_func):
5518           Explicitely make an element release locks in a group when being
5519           remove from a bin.
5520         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
5521           If there's no scheduler, always return immediately (similar to
5522           gst_element_interrupt).
5523
5524 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5525
5526         * gst/gstbin.c: (gst_bin_child_state_change_func):
5527           Remove a piece of code that could never be reached.
5528         * docs/gst/gstreamer-sections.txt:
5529         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
5530         (gst_pad_call_get_function):
5531         * gst/gstpad.h:
5532         * testsuite/pad/Makefile.am:
5533           Fix #150546, enable tests.
5534
5535 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5536
5537         * docs/pwg/advanced-types.xml:
5538           Fix description for buffer-frames=0.
5539         * docs/gst/tmpl/gstbin.sgml:
5540         * gst/gstbin.c: (gst_bin_child_state_change_func),
5541         (gst_bin_change_state), (gst_bin_change_state_norecurse):
5542         * gst/gstbin.h:
5543         * testsuite/threads/Makefile.am:
5544         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
5545         (cb_state), (cb_play), (main):
5546           Fix non-recursive state changes to *really* change the state
5547           of the object, and not just call parent_class->state_change.
5548           Fix a lot of lockups caused by this. Fixes #132775. Add test
5549           for the problem. Also enable test to show #142588 (fixed).
5550         * gst/gstthread.c: (gst_thread_change_state),
5551         (gst_thread_child_state_change):
5552           Don't exit the thread if we go to NULL and are inside thread
5553           context. Instead, return control to the main thread context
5554           and exit from there.
5555         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
5556           Don't unset virtual functions, since those may still be used.
5557           That's not necessarily correct, but suffices for now.
5558         * configure.ac:
5559         * testsuite/Makefile.am:
5560         * testsuite/pad/Makefile.am:
5561         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
5562         (gst_test_sink_base_init), (gst_test_sink_chain),
5563         (gst_test_sink_init), (main):
5564         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
5565         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
5566         (main):
5567         * testsuite/pad/link.c: (gst_test_element_class_init),
5568         (gst_test_element_base_init), (gst_test_src_get),
5569         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
5570         (gst_test_filter_loop), (gst_test_filter_init),
5571         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
5572         (cb_error), (main):
5573           Add tests to show #150546. Pass, but should fail (currently
5574           disabled from the testsuite).
5575         * gst/gstscheduler.c: (gst_scheduler_dispose):
5576           Dereference child schedulers on dispose (#94464).
5577         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
5578           Fix typo.
5579         * testsuite/threads/thread.c: (main):
5580           Add more debug.
5581
5582 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5583
5584         * gst/gstpad.c: (gst_pad_push):
5585           Oops, revert previous commit, broke testsuite...
5586
5587 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5588
5589         * gst/gstpad.c: (gst_pad_push):
5590           Add check that the pad on which the push is performed is not a
5591           get-based pad (#150546).
5592
5593 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5594
5595         * gst/elements/gsttypefindelement.c:
5596         (gst_type_find_element_handle_event):
5597           Fix buffer pushing if stream EOSes during typefinding.
5598
5599 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
5600
5601         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5602
5603         * gst/gstvalue.c: (gst_string_wrap):
5604           Allow NULL-strings as argument (#165365).
5605
5606 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
5607
5608         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5609
5610         * gst/schedulers/faircothreads.c:
5611         (gst_fair_scheduler_cothread_queue_show):
5612           Fix build without debug enabled.
5613
5614 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
5615
5616         * docs/gst/gstreamer-sections.txt:
5617         * docs/libs/gstreamer-libs-docs.sgml:
5618         * docs/libs/gstreamer-libs-sections.txt:
5619         * docs/libs/tmpl/gstcontrol.sgml:
5620         * docs/libs/tmpl/gstdparam.sgml:
5621         * docs/libs/tmpl/gstdplinint.sgml:
5622         * docs/libs/tmpl/gstdpman.sgml:
5623         * docs/libs/tmpl/gstdpsmooth.sgml:
5624         * docs/libs/tmpl/gstputbits.sgml:
5625         * docs/libs/tmpl/gstunitconvert.sgml:
5626         * libs/gst/control/dparam.c:
5627         * libs/gst/control/dparam.h:
5628         * libs/gst/control/dparammanager.c:
5629         (gst_dpman_add_required_dparam_callback),
5630         (gst_dpman_add_required_dparam_direct),
5631         (gst_dpman_add_required_dparam_array),
5632         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
5633         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
5634         (gst_dpman_get_manager)
5635           restructured DParam docs
5636
5637 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
5638
5639         * gst-element-check.m4:
5640           Only check for gst-inspect if we haven't already
5641           found it in previous element check runs
5642
5643 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
5644
5645         * docs/gst/Makefile.am:
5646         * docs/libs/Makefile.am:
5647           fixed install rules to treat style.css as optional
5648
5649 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
5650
5651         * docs/gst/Makefile.am:
5652         * docs/libs/Makefile.am:
5653           install style.css along with docs
5654         * docs/gst/tmpl/gstbin.sgml:
5655         * docs/gst/tmpl/gstclock.sgml:
5656         * docs/gst/tmpl/gstdata.sgml:
5657         * docs/gst/tmpl/gstelement.sgml:
5658         * gst/gstbin.h:
5659         * gst/gstelement.c: (gst_element_class_init):
5660         * gst/gstelement.h:
5661           fixing incomplete docs
5662
5663 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
5664
5665         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5666           Don't unref seek event twice when fflush() fails
5667           
5668 2005-01-22  David Schleef  <ds@schleef.org>
5669
5670         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
5671
5672 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
5673
5674         * docs/gst/Makefile.am:
5675         * docs/libs/Makefile.am:
5676           added params for deprecation guards
5677         * gst/gst.c:
5678         * gst/gst.h:
5679         * gst/gsterror.c: (_gst_resource_errors_init),
5680         (_gst_stream_errors_init):
5681         * gst/gsterror.h:
5682           documented some more enums
5683
5684 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
5685         * gst/autoplug/gstspideridentity.c:
5686         Cosmetic fix - spider_find_peek should be static
5687         * gst/parse/parse.l:
5688         Applying fix for #164261
5689
5690 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
5691
5692         * docs/gst/gstreamer-sections.txt:
5693         * docs/gst/tmpl/gstplugin.sgml:
5694         * docs/libs/gstreamer-libs-sections.txt:
5695         * docs/libs/tmpl/gstcontrol.sgml:
5696         * gst/gstbuffer.h:
5697         * gst/gsttag.h:
5698         * gst/gstvalue.c:
5699           added docs for the TAG defines
5700
5701 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5702
5703         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
5704           Only unref entry if there is an entry.
5705
5706 2005-01-17  Wim Taymans  <wim@fluendo.com>
5707
5708         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5709         (remove_from_group), (schedule_group), (normalize_group),
5710         (gst_opt_scheduler_iterate):
5711         Also ref/unref decoupled elements before iterating the
5712         group since they are not added to the list of elements.
5713
5714 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5715
5716         * docs/manual/highlevel-components.xml:
5717           Add subtitle/streamselection as new features to playbin.
5718
5719 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5720
5721         * docs/manual/manual.xml:
5722           Re-enable dataaccess docs (oops).
5723
5724 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5725
5726         * docs/pwg/advanced-types.xml:
5727         * docs/random/mimetypes:
5728           Add documentation on libsndfile types (#163309), by Steve Baker
5729           <steve@stevebaker.org>.
5730         * gst/gstelement.c: (gst_element_release_request_pad):
5731           If an element has no explicit function, just remove the pad.
5732
5733 2005-01-17  Luca Ognibene  <luogni@tin.it>
5734
5735         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5736
5737         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
5738           Fix memleak (#163801).
5739
5740 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5741
5742         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
5743           I think this is actually more correct...
5744
5745 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5746
5747         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5748           Another workaround for memory access while destroyed in callback.
5749           Please, someone with refcount knowledge, have a look at this.
5750
5751 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5752
5753         * docs/faq/faq.xml:
5754         * docs/faq/legal.xml:
5755           move the legal Q&A here
5756
5757 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5758
5759         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
5760         (gst_tee_request_new_pad):
5761           Fix negotiation.
5762
5763 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5764
5765         * docs/random/omega/caps2:
5766         * testsuite/caps/caps_strings:
5767           replace framerate aproximations by their real value
5768           (24000/1001, 30000/1001, 60000/1001)
5769           Partially fixes bug #164049
5770
5771 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5772
5773         * docs/gst/Makefile.am:
5774           don't fail on the stupid GstPoptOption
5775
5776 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5777
5778         * gst/gstpad.h:
5779         * gst/gstprobe.c:
5780           allow probes to work on ghost pads by realizing the pad
5781           probe debugging
5782
5783 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5784
5785         * docs/gst/gstreamer-sections.txt:
5786         * docs/gst/tmpl/gstpad.sgml:
5787         * gst/gstpad.c: (gst_pad_set_active_recursive):
5788         * gst/gstpad.h:
5789           Add gst_pad_set_active_recursive().
5790
5791 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5792
5793         * docs/random/release:
5794           updates
5795         * gst/gst_private.h:
5796         * gst/gstinfo.c:
5797         * gst/gstobject.c:
5798           move deep_notify logging to a new category
5799         * gst/gstprobe.c:
5800         * gst/gstprobe.h:
5801           add stuff so bindings can wrap probes
5802
5803 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5804
5805         * gst/gstplugin.c: (gst_plugin_load):
5806           Fix plugin loading if plugin/lib was already loaded. Fixes
5807           #163383
5808
5809 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
5810
5811         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5812
5813         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
5814           Protect plugin loading by a mutex so it's threadsafe. Fixes
5815           #163234.
5816
5817 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5818
5819         * gst/gstevent.c: (_gst_event_copy):
5820           Reference source object when copying events, since it'll be
5821           dereferenced on event dereferencing as well.
5822
5823 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5824
5825         * docs/gst/gstreamer-sections.txt:
5826         * docs/gst/tmpl/gstevent.sgml:
5827         * gst/gstevent.c: (gst_event_new_filler_stamped),
5828         (gst_event_filler_get_duration):
5829         * gst/gstevent.h:
5830           Add two new functions for filler events (which are used to
5831           synchronize streams if one of them is not having any data
5832           for a while) without interrupting the actual data-stream.
5833           Basically a no-op.
5834         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5835         (gst_queue_link_sink), (gst_queue_link_src),
5836         (gst_queue_change_state):
5837           Allow for renegotiation while filled. Required for stream
5838           switching while playing.
5839
5840 2005-01-08  Benjamin Otte  <otte@gnome.org>
5841
5842         * gst/gstelement.c: (gst_element_link_many):
5843           fix up g_return_if_fail's
5844         * po/LINGUAS:
5845         * po/de.po:
5846           add German translation, that was somehow not included
5847
5848 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5849
5850         * docs/random/mimetypes:
5851           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
5852           do not add them to riff-lib as they are not common
5853
5854 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5855
5856         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5857           Check for existence of probe after performing the probe before
5858           re-accessing it to prevent segfaults caused by removal of the
5859           probe in the callback.
5860
5861 2005-01-05  David Schleef  <ds@schleef.org>
5862
5863         * testsuite/registry/Makefile.am:
5864         * testsuite/registry/gst-print-formats.c:
5865         (print_pad_templates_info), (print_element_list),
5866         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
5867         (g_list_uniqify), (get_pad_templates_info),
5868         (get_element_mime_list), (print_mime_list), (main): A little
5869         program that looks through the registry to find elements of
5870         a given type.  Not particularly interesting as a test, except
5871         that there's no other test covering the same area.
5872
5873 2005-01-05  David Schleef  <ds@schleef.org>
5874
5875         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
5876         (fault_handler_sigaction), (fault_spin),
5877         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
5878         in signal.h-type signal handlers by not calling forbidden functions,
5879         including gst_element_set_state().
5880
5881 2005-01-05  David Schleef  <ds@schleef.org>
5882
5883         * gst/gstvalue.h: Mark _gst_reserved[] as private
5884
5885 2005-01-05  David Schleef  <ds@schleef.org>
5886
5887         * gst/gstvalue.c: Fix doc build problem.
5888
5889 2005-01-05  David Schleef  <ds@schleef.org>
5890
5891         * gst/gstvalue.c: Add some documentation
5892
5893 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
5894
5895         * docs/README:
5896           another shell oneliner for empty return value docs
5897         * gst/gstcaps.c:
5898         * gst/gstvalue.c:
5899         * libs/gst/control/dparam.c:
5900           more doc fixes (parameters and return values)
5901
5902 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
5903
5904         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5905
5906         * gst/gstregistry.h:
5907         * gst/registries/gstxmlregistry.c:
5908           Fix macro's for Mingw (fixes #162276).
5909
5910 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
5911
5912         * docs/README:
5913           quick shell oneliner to find undocumented members
5914         * docs/gst/tmpl/gstplugin.sgml:
5915         * docs/gst/tmpl/gstscheduler.sgml:
5916         * docs/gst/tmpl/gstthread.sgml:
5917           more enumtypes cleanup
5918         * gst/gsterror.h:
5919           activated documentation comments, now someone needs to document
5920           the enums :(
5921
5922 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5923
5924         * docs/manual/manual.xml:
5925           Add dataaccess part (doh!).
5926
5927 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5928
5929         * docs/manual/advanced-autoplugging.xml:
5930           Fix typo (intiate -> initiate).
5931
5932 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5933
5934         * docs/random/bbb/streamselection:
5935           Add some notes on how to handle multi-subtitle/-audio streams.
5936
5937 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
5938
5939         * docs/gst/gstreamer-docs.sgml:
5940         * docs/gst/gstreamer-sections.txt:
5941         * docs/gst/tmpl/gstenumtypes.sgml:
5942         * docs/gst/tmpl/gsterror.sgml:
5943         * docs/gst/tmpl/gstevent.sgml:
5944         * docs/gst/tmpl/gstpad.sgml:
5945         * docs/gst/tmpl/gstpadtemplate.sgml:
5946         * docs/gst/tmpl/gstthread.sgml:
5947           removed gstenumtypes section from docs and put all the enums into
5948           their sections
5949
5950 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5951
5952         * gst/gstplugin.c:
5953           document gst_library_load a bit more (riff special case + return
5954           value if already loaded)
5955         * testsuite/bytestream/filepadsink.c:
5956           plugin name is 'gstbytestream', not 'bytestream'
5957
5958 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5959
5960         * docs/random/bbb/subtitles:
5961           Add some first mind rumblings on proper subtitle support.
5962
5963 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
5964
5965         * po/ca.po:
5966         * po/sv.po:
5967           updated translations
5968
5969 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5970
5971         * docs/manual/advanced-dataaccess.xml:
5972           Add section on how to use fakesrc/fakesink/identity in your
5973           application, plus section on how to embed plugins. Also mention
5974           probes.
5975         * docs/manual/appendix-checklist.xml:
5976         * docs/manual/appendix-debugging.xml:
5977         * docs/manual/appendix-gnome.xml:
5978         * docs/manual/appendix-integration.xml:
5979           Debug -> checklist, GNOME -> integration, add sections on Linux,
5980           KDE integration and add other things useful for application
5981           development.
5982         * docs/manual/manual.xml:
5983           Remove some fixmes, update some file pointers.
5984         * docs/pwg/appendix-checklist.xml:
5985           Fix typo.
5986         * docs/pwg/building-boiler.xml:
5987           Remove ugly header and add commented fixme.
5988         * docs/pwg/pwg.xml:
5989           Add fixme.
5990         * examples/manual/Makefile.am:
5991           Add example for added docs.
5992
5993 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5994
5995         * configure.ac:
5996           back to HEAD
5997
5998 === release 0.8.8 ===
5999
6000 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
6001
6002         * NEWS:
6003         * RELEASE:
6004         * configure.ac:
6005           Releasing 0.8.8, "I'll Take Care Of You"
6006
6007 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
6008
6009         * configure.ac:
6010           second prerelease
6011
6012 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
6013
6014         patch by: Wim Taymans
6015
6016         * gst/gstbin.c:
6017           Fix for #159852 - make iterate emission threadsafe
6018
6019 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
6020
6021         * docs/faq/cvs.xml:
6022           notes about new fdo account request
6023
6024 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
6025
6026         * docs/gst/gstreamer-docs.sgml:
6027         * docs/gst/tmpl/gstenumtypes.sgml:
6028         * docs/gst/tmpl/gstplugin.sgml:
6029         * docs/libs/gstreamer-libs-docs.sgml:
6030           Added missing short docs. Added ids for navigation.
6031
6032 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6033
6034         * docs/manual/advanced-autoplugging.xml:
6035         * docs/manual/advanced-schedulers.xml:
6036         * docs/manual/advanced-threads.xml:
6037           Rewrites. Remove cothreads, go a bit into opt specifically,
6038           document threads and their gotchas, and do some technical stuff
6039           on autoplugging plus add some working examples. Fixes #157395.
6040         * examples/manual/Makefile.am:
6041           Add typefind/autoplugger example (one that actually works).
6042           Remove queue example since it's a duplicate of the thread one.
6043
6044 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6045
6046         * gst/gstvalue.c: (gst_value_deserialize_string):
6047           use deprecated g_value_set_string_take_ownership to keep compatible
6048           with glib 2.2
6049
6050 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6051
6052         * gst/gstvalue.c: (gst_value_deserialize_string):
6053           revert last patch, only dom a g_utf8_validate now before accepting
6054           the string - caps parsing strips " from strings so we can't rely on
6055           them
6056         * testsuite/caps/value_serialize.c: (test_string_deserialization):
6057           disable a test that tested the above and comment it
6058
6059 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
6060
6061         Patch reviewed by David Schleef  <ds@schleef.org>
6062
6063         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
6064         bug #153882)
6065         * win32/gstenumtypes.h: same
6066
6067 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6068
6069         * gst/gstpad.c: (gst_pad_query):
6070           Do query on realized pad, similar to how convert/send_event handle
6071           this. Also makes sense, since this pad belongs to the function to
6072           which this query will be sent. Fixes #158163.
6073
6074 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
6075
6076         * docs/manual/appendix-programs.xml: fix pipeline to actually work
6077
6078 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
6079
6080         * docs/faq/general.xml: fix pipeline to actually work
6081
6082 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6083
6084         * gst/gstvalue.c: (gst_value_deserialize_string):
6085           check that a simple string that gets deserialized does not contain
6086           invalid characters
6087         * testsuite/caps/value_serialize.c: (test_string_deserialization):
6088           remove a test that tested a wring behaviour
6089
6090 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
6091
6092         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6093
6094         * docs/manual/intro-motivation.xml:
6095           Fix typos.
6096
6097 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
6098
6099         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6100
6101         * docs/gst/tmpl/gstprobe.sgml:
6102           Fix documentation of probe callback - it is supposed to return
6103           FALSE, not TRUE, to remove data from the stream (#159087).
6104
6105 2004-12-16  Daniel Gazard  <dany42@free.fr>
6106
6107         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6108
6109         * gst/gstelementfactory.c: (gst_element_factory_create):
6110           Fix compile failure if compiling without libxml2 support (#149936).
6111
6112 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6113
6114         * docs/manual/advanced-autoplugging.xml:
6115         * docs/manual/highlevel-components.xml:
6116           Move spider from autoplugging to components. Autoplugging is for
6117           internals, not for solutions. ;-).
6118
6119 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6120
6121         * docs/random/ds/0.9-suggested-changes:
6122           Make note on device/location/uri property names.
6123
6124 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6125
6126         * docs/manual/advanced-autoplugging.xml:
6127         * docs/manual/advanced-clocks.xml:
6128         * docs/manual/advanced-interfaces.xml:
6129         * docs/manual/advanced-metadata.xml:
6130         * docs/manual/advanced-position.xml:
6131         * docs/manual/advanced-schedulers.xml:
6132         * docs/manual/advanced-threads.xml:
6133         * docs/manual/appendix-gnome.xml:
6134         * docs/manual/appendix-programs.xml:
6135         * docs/manual/appendix-quotes.xml:
6136         * docs/manual/autoplugging.xml:
6137         * docs/manual/basics-bins.xml:
6138         * docs/manual/basics-data.xml:
6139         * docs/manual/basics-elements.xml:
6140         * docs/manual/basics-helloworld.xml:
6141         * docs/manual/basics-init.xml:
6142         * docs/manual/basics-pads.xml:
6143         * docs/manual/basics-plugins.xml:
6144         * docs/manual/bins-api.xml:
6145         * docs/manual/bins.xml:
6146         * docs/manual/buffers-api.xml:
6147         * docs/manual/buffers.xml:
6148         * docs/manual/clocks.xml:
6149         * docs/manual/components.xml:
6150         * docs/manual/cothreads.xml:
6151         * docs/manual/debugging.xml:
6152         * docs/manual/dparams-app.xml:
6153         * docs/manual/dynamic.xml:
6154         * docs/manual/elements-api.xml:
6155         * docs/manual/elements.xml:
6156         * docs/manual/factories.xml:
6157         * docs/manual/gnome.xml:
6158         * docs/manual/goals.xml:
6159         * docs/manual/helloworld.xml:
6160         * docs/manual/helloworld2.xml:
6161         * docs/manual/highlevel-components.xml:
6162         * docs/manual/highlevel-xml.xml:
6163         * docs/manual/init-api.xml:
6164         * docs/manual/intro-basics.xml:
6165         * docs/manual/intro-motivation.xml:
6166         * docs/manual/intro-preface.xml:
6167         * docs/manual/intro.xml:
6168         * docs/manual/links-api.xml:
6169         * docs/manual/links.xml:
6170         * docs/manual/manual.xml:
6171         * docs/manual/motivation.xml:
6172         * docs/manual/pads-api.xml:
6173         * docs/manual/pads.xml:
6174         * docs/manual/plugins-api.xml:
6175         * docs/manual/plugins.xml:
6176         * docs/manual/programs.xml:
6177         * docs/manual/queues.xml:
6178         * docs/manual/quotes.xml:
6179         * docs/manual/schedulers.xml:
6180         * docs/manual/states-api.xml:
6181         * docs/manual/states.xml:
6182         * docs/manual/threads.xml:
6183         * docs/manual/typedetection.xml:
6184         * docs/manual/win32.xml:
6185         * docs/manual/xml.xml:
6186           Try 2. This time, include a short preface as a "general
6187           introduction", also add code blocks around all code samples
6188           so they get compiled. We still need a way to tell readers
6189           the filename of the code sample. In some cases, don't show
6190           all code in the documentation, but do include it in the generated
6191           code. This allows for focussing on specific bits in the docs,
6192           while still having a full test application available.
6193         * examples/manual/Makefile.am:
6194           Fix up examples for new ADM. Add several of the new examples that
6195           were either added or were missing from the build system.
6196         * examples/manual/extract.pl:
6197           Allow nameless blocks.
6198
6199 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6200
6201         * docs/manual/elements-api.xml:
6202         * docs/manual/helloworld.xml:
6203         * examples/manual/extract.pl:
6204           fix last example.  Add example of adding code blocks that are not
6205           shown in docbook output.
6206
6207 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6208
6209         * docs/manual/dynamic.xml:
6210         * docs/manual/elements-api.xml:
6211         * docs/manual/gnome.xml:
6212         * docs/manual/helloworld2.xml:
6213         * docs/manual/init-api.xml:
6214         * docs/manual/queues.xml:
6215         * docs/manual/threads.xml:
6216         * docs/manual/xml.xml:
6217         * examples/manual/extract.pl:
6218           Make it possible to extract example code from separate blocks.
6219           Should make Ronald happy.
6220
6221 2004-12-15  Wim Taymans  <wim@fluendo.com>
6222
6223         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6224         (remove_from_group), (group_elements_set_visited),
6225         (normalize_group), (gst_opt_scheduler_iterate):
6226         Fix bug where a flag was not updated on a decoupled entry point 
6227         because we were just checking the group element list and decoupled
6228         elements are not in that list..
6229
6230 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6231
6232         * docs/manual/advanced-autoplugging.xml:
6233         * docs/manual/advanced-clocks.xml:
6234         * docs/manual/advanced-dparams.xml:
6235         * docs/manual/advanced-interfaces.xml:
6236         * docs/manual/advanced-metadata.xml:
6237         * docs/manual/advanced-position.xml:
6238         * docs/manual/advanced-schedulers.xml:
6239         * docs/manual/advanced-threads.xml:
6240         * docs/manual/appendix-debugging.xml:
6241         * docs/manual/appendix-gnome.xml:
6242         * docs/manual/appendix-programs.xml:
6243         * docs/manual/appendix-quotes.xml:
6244         * docs/manual/appendix-win32.xml:
6245         * docs/manual/autoplugging.xml:
6246         * docs/manual/basics-bins.xml:
6247         * docs/manual/basics-data.xml:
6248         * docs/manual/basics-elements.xml:
6249         * docs/manual/basics-helloworld.xml:
6250         * docs/manual/basics-init.xml:
6251         * docs/manual/basics-pads.xml:
6252         * docs/manual/basics-plugins.xml:
6253         * docs/manual/bins-api.xml:
6254         * docs/manual/bins.xml:
6255         * docs/manual/buffers-api.xml:
6256         * docs/manual/buffers.xml:
6257         * docs/manual/clocks.xml:
6258         * docs/manual/components.xml:
6259         * docs/manual/cothreads.xml:
6260         * docs/manual/debugging.xml:
6261         * docs/manual/dparams-app.xml:
6262         * docs/manual/dynamic.xml:
6263         * docs/manual/elements-api.xml:
6264         * docs/manual/elements.xml:
6265         * docs/manual/factories.xml:
6266         * docs/manual/gnome.xml:
6267         * docs/manual/goals.xml:
6268         * docs/manual/helloworld.xml:
6269         * docs/manual/helloworld2.xml:
6270         * docs/manual/highlevel-components.xml:
6271         * docs/manual/highlevel-xml.xml:
6272         * docs/manual/init-api.xml:
6273         * docs/manual/intro-motivation.xml:
6274         * docs/manual/intro-preface.xml:
6275         * docs/manual/intro.xml:
6276         * docs/manual/links-api.xml:
6277         * docs/manual/links.xml:
6278         * docs/manual/manual.xml:
6279         * docs/manual/motivation.xml:
6280         * docs/manual/pads-api.xml:
6281         * docs/manual/pads.xml:
6282         * docs/manual/plugins-api.xml:
6283         * docs/manual/plugins.xml:
6284         * docs/manual/programs.xml:
6285         * docs/manual/queues.xml:
6286         * docs/manual/quotes.xml:
6287         * docs/manual/schedulers.xml:
6288         * docs/manual/states-api.xml:
6289         * docs/manual/states.xml:
6290         * docs/manual/threads.xml:
6291         * docs/manual/typedetection.xml:
6292         * docs/manual/win32.xml:
6293         * docs/manual/xml.xml:
6294           First try at rewriting the ADM. Needs lotsamore work, but some
6295           parts might already be somewhat useful.
6296         * docs/pwg/advanced-interfaces.xml:
6297           Remove properties interface, it never actually existed (except for
6298           on my HD...).
6299
6300 2004-12-13  David Schleef  <ds@schleef.org>
6301
6302         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
6303         be NULL (bug #160220).
6304
6305 2004-12-13  David Schleef  <ds@schleef.org>
6306
6307         * configure.ac: remove all mmx stuff, because it's not used.
6308         * docs/random/ds/0.9-suggested-changes: additional notes
6309         * include/Makefile.am: we don't use these anymore
6310         * include/mmx.h: remove
6311         * include/sse.h: remove
6312
6313 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6314
6315         * docs/random/mimetypes:
6316           Add FOURCC code for h264 codec (VSSH)
6317           Add alternate FOURCC codes for h263 related codecs
6318
6319 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
6320
6321         * docs/manual/programs.xml:
6322           Added more gst-launch examples.
6323
6324 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6325
6326         * gst/gstqueue.c: (gst_queue_handle_src_query):
6327           Check for availability again.
6328
6329 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6330
6331         * gst/gstcaps.c: (gst_caps_compare_structures):
6332           Simple caps go first. This has the nice side-effect of fixing an
6333           obscure warning.
6334
6335 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6336
6337         * gst/gstversion.h.in:
6338           Protect header.
6339
6340 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6341
6342         * gst/schedulers/gstoptimalscheduler.c:
6343         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
6344         (gst_opt_scheduler_get_wrapper):
6345           When we're recursing into a chain run, only run the directly
6346           related group, not all queued ones. This will fix a possible
6347           deadlock in chains with more than two groups.
6348
6349 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6350
6351         * autogen.sh:
6352           remove patch if autopoint fails
6353
6354 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6355
6356         * docs/gst/gstreamer-sections.txt:
6357           Document Thomas' addition, fix build, make Luis the sheriff happy.
6358
6359 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
6360
6361         * gst/gstplugin.c:
6362         * gst/gstplugin.h:
6363           add accessor for version field
6364
6365 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6366
6367         submitted by: Luca Ferretti <elle.uca@infinito.it>
6368
6369         * po/LINGUAS:
6370         * po/it.po:
6371           New tranlation added: Italian
6372
6373 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6374
6375         * gst/gstpad.c: (gst_pad_is_negotiated),
6376         (gst_pad_get_negotiated_caps):
6377           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
6378           it doesn't actually check the contents), so be sure to hand it
6379           a RealPad else we'll crash.
6380
6381 2004-12-03  Wim Taymans  <wim@fluendo.com>
6382
6383         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
6384         (gst_queue_link), (gst_queue_handle_src_query):
6385         Reverted to 1.110 until this makes the testsuite and various
6386         apps work.
6387
6388 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
6389
6390         * docs/upload.mak: fix included CVS conflict strings
6391
6392 2004-12-01  William Jon McCann  <mccann@jhu.edu>
6393
6394         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6395
6396         * gst/gstelement.c: (gst_element_error_full):
6397           Use g_error_new_literal because error text may have
6398           percentage signs in it. Fixes #160019.
6399
6400 2004-12-01  Benjamin Otte  <otte@gnome.org>
6401
6402         * gst/elements/gstbufferstore.c:
6403         (gst_buffer_store_add_buffer_func):
6404           don't try to make subbuffers bigger than they can be. (fixes
6405           #159970)
6406
6407 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6408
6409         * docs/gst/gstreamer-sections.txt:
6410         * docs/gst/tmpl/gstvalue.sgml:
6411           Add new function to docs to fix build.
6412
6413 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6414
6415         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
6416         * gst/gstpad.c: (_gst_pad_default_fixate_value),
6417         (_gst_pad_default_fixate_foreach):
6418         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
6419         * gst/gstvalue.h:
6420           Deprecate _type_is_fixed, use _value_is_fixed instead, since
6421           in some cases (arrays), the fixedness depends on the content.
6422         * gst/gstqueue.c: (gst_queue_handle_src_query):
6423           Check for availability before doing something.
6424
6425 2004-11-29  Wim Taymans  <wim@fluendo.com>
6426
6427         * testsuite/threads/Makefile.am:
6428         * testsuite/threads/signals.c: (gst_test_get_type),
6429         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
6430         (gst_test_set_property), (gst_test_get_property),
6431         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
6432         (gst_test_do_prop), (run_thread), (main):
6433         Added a bunch of testcases that show threadsafety bugs in glib.
6434
6435 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
6436
6437         * docs/manual/programs.xml:
6438           Added a first batch of gst-launch examples, as provided by Ronald
6439           and others from the devel-mlist
6440
6441 2004-11-28  Benjamin Otte  <otte@gnome.org>
6442
6443         * gst/gstelement.c: (gst_element_negotiate_pads):
6444           simplify
6445         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
6446         (gst_value_serialize_string), (gst_value_deserialize_string):
6447           add unwrapping of previously wrapped strings. Fix bug in wrapping
6448           while at it.
6449         * testsuite/caps/value_serialize.c: (test1),
6450         (test_string_serialization), (test_string_deserialization), (main):
6451           add tests for string (de)serialization
6452
6453 2004-11-26  Wim Taymans  <wim@fluendo.com>
6454
6455         * testsuite/threads/159566.c: (object_deep_notify), (main):
6456         * testsuite/threads/Makefile.am:
6457         Added testsuite to show bug #159566
6458
6459 2004-11-25  Wim Taymans  <wim@fluendo.com>
6460
6461         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
6462         (gst_thread_child_state_change), (gst_thread_main_loop):
6463         Ref the thread object in the GThread mainloop. Break out of the
6464         thread mainloop if it holds the last ref. This properly exits
6465         the threads when disposing the thread from its own context. It
6466         also avoids possible deadlocks in the dispose function.
6467
6468 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
6469
6470         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
6471         it is necessary to wait.
6472
6473 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6474
6475         * docs/pwg/building-boiler.xml:
6476           Make description somewhat clearer.
6477
6478 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6479
6480         * docs/upload.mak:
6481           Apparently docs changed location on FDO's server.
6482
6483 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6484
6485         * docs/pwg/appendix-checklist.xml:
6486           Add some random notes on things to check when writing an element.
6487           This list can be extended as people see fit.
6488
6489 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
6490
6491         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
6492         (gst_queue_link_src): Allow for renegotiating the caps of the sink
6493         pad. The queue will now wait until it is empty and forward the new
6494         caps to the source.
6495         * gst/gstbin.c (gst_bin_set_element_sched)
6496         (gst_bin_unset_element_sched): Make sure that all elements and
6497         links are registered and unregistered with the scheduler exactly
6498         once. This elaborates on a fix by Benjamin Otte, but
6499         guarantees that decoupled elements are also registered.
6500
6501 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
6502
6503         * docs/manual/quotes.xml:
6504           add a quote
6505         * configure.ac:
6506         * gst/gst.c:
6507         * gst/gstinfo.c:
6508           add LIBDIR and move init message higher up so it's at the start
6509
6510 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
6511
6512         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
6513         * gstreamer.spec.in: add fair
6514
6515 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6516
6517         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6518         * gst/elements/gstidentity.c: (gst_identity_class_init):
6519           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
6520           <teuf@gnome.org> (#157263).
6521         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
6522         (gst_type_find_handle_src_query):
6523           Subtract size of internally stored data from position queries.
6524
6525 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
6526
6527         * gst/schedulers/fairscheduler.c:
6528         * gst/schedulers/faircothreads.c:
6529         * gst/schedulers/faircothreads.h:
6530         New cothread based scheduler: Fair scheduler.
6531         * gst/schedulers/gthread-cothreads.h: 
6532         Add the standard #if around the whole file.
6533         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
6534         compilation of the functions defined in this file. This is
6535         necessary to be able to use this file as a normal header.
6536         * gst/schedulers/Makefile.am: Add compiling support for fair
6537         scheduler.
6538         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
6539         scheduler cothreads layer from documentation generation.
6540
6541 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6542
6543         * gst/autoplug/gstspideridentity.c:
6544         (gst_spider_identity_sink_loop_type_finding):
6545           Don't crash if that function is not implemented.
6546
6547 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6548
6549         * docs/pwg/advanced-types.xml:
6550           Another typo.
6551
6552 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6553
6554         * docs/pwg/intro-preface.xml:
6555           Hm, ok, so the brackets weren't really useful...
6556         * docs/pwg/other-ntoone.xml:
6557           Fix embarassing typo.
6558
6559 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6560
6561         * docs/pwg/intro-preface.xml:
6562           Rewrite preface.
6563
6564 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6565
6566         * docs/pwg/advanced-scheduling.xml:
6567         * docs/pwg/advanced-tagging.xml:
6568         * docs/pwg/advanced-types.xml:
6569         * docs/pwg/building-boiler.xml:
6570         * docs/pwg/building-chainfn.xml:
6571         * docs/pwg/building-signals.xml:
6572         * docs/pwg/building-state.xml:
6573         * docs/pwg/building-testapp.xml:
6574         * docs/pwg/intro-basics.xml:
6575         * docs/pwg/other-manager.xml:
6576         * docs/pwg/other-source.xml:
6577           Typo fixes.
6578         * docs/pwg/other-manager.xml:
6579           Add some first content. No example code yet.
6580         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
6581           Remove double newlines.
6582
6583 2004-11-04  Wim Taymans  <wim@fluendo.com>
6584
6585         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6586         (remove_from_group), (normalize_group), (group_migrate_connected),
6587         (gst_opt_scheduler_iterate):
6588         * testsuite/schedulers/.cvsignore:
6589         * testsuite/schedulers/Makefile.am:
6590         * testsuite/schedulers/queue_link.c: (main):
6591         Added testcase for scheduler segfault.
6592         Fix scheduler segfault when removing a decoupled
6593         entry point as the last element from a group.
6594
6595 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6596
6597         * gst/gstmarshal.list: add missing marshaller, fixes build
6598
6599 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6600
6601         * docs/random/signal: added notes about using BOXED for GstBuffer
6602         signal marshallers, not POINTER
6603
6604 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6605
6606         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6607         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
6608         POINTER=>BOXED changes to marshal GstBuffers
6609
6610 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6611
6612         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
6613         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
6614
6615 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
6616
6617         * docs/gst/gstreamer-sections.txt:
6618         * docs/gst/tmpl/gstcaps.sgml:
6619         * docs/gst/tmpl/gsterror.sgml:
6620         * docs/gst/tmpl/gstinfo.sgml:
6621         * docs/gst/tmpl/gstmacros.sgml:
6622         * docs/gst/tmpl/gstutils.sgml:
6623         * docs/random/ensonic/interfaces.txt:
6624         * gst/gstinfo.h:
6625           added some more docs, removed two obsolete defines
6626
6627 2004-11-02  Kjartan Maraas <as at gnome.org>
6628
6629         reviewed by: Wim Taymans, Ronald Bultje.
6630
6631         * gst/cothreads.c: (cothread_create):
6632         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
6633         (gst_bin_child_state_change_func):
6634         * gst/gstbuffer.c: (gst_buffer_span):
6635         * gst/gstelement.c: (gst_element_get_index),
6636         (gst_element_get_event_masks), (gst_element_get_query_types),
6637         (gst_element_get_formats):
6638         * gst/gsterror.c: (_gst_core_errors_init),
6639         (_gst_library_errors_init), (_gst_resource_errors_init),
6640         (_gst_stream_errors_init):
6641         * gst/gstobject.c: (gst_object_default_deep_notify):
6642         * gst/gstpad.c: (gst_pad_get_event_masks),
6643         (gst_pad_get_internal_links_default):
6644         * gst/gstplugin.c: (gst_plugin_register_func),
6645         (gst_plugin_get_module):
6646         * gst/gststructure.c: (gst_structure_get_string),
6647         (gst_structure_get_abbrs), (gst_structure_from_abbr),
6648         (gst_structure_to_abbr):
6649         * gst/gstutils.c: (gst_print_element_args):
6650         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6651         (setup_group_scheduler), (gst_opt_scheduler_iterate):
6652         Aplied part of patch #157127: Cleanup of issues reported by 
6653         sparse.
6654         Also do not try to use cothreads when there is no cothread
6655         context yet.
6656
6657 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
6658
6659         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6660         (gst_opt_scheduler_iterate):
6661         Applied patch #154061. Running a pipeline in which an element 
6662         calls GST_ELEMENT_ERROR in the chain function, the opt 
6663         scheduler doesn't unref the chain so it never gets freed.
6664
6665 2004-11-02  Wim Taymans  <wim@fluendo.com>
6666
6667         * gst/gststructure.c: (gst_structure_get_abbrs),
6668         (gst_structure_from_abbr), (gst_structure_to_abbr):
6669         Remove that ugly if-then thing in the code that converts
6670         between strings and types.
6671
6672 2004-11-02  Wim Taymans  <wim@fluendo.com>
6673
6674         * gst/gstscheduler.c: (gst_scheduler_add_element),
6675         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
6676         Aplied clock distribution patch, this should fix bug
6677         #148787.
6678
6679 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
6680
6681         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
6682
6683         * po/LINGUAS:
6684         * po/nb.po:
6685           Added Norwegian Bokmaal translation
6686
6687 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6688
6689         * tools/gst-inspect.c: (print_signal_info):
6690           print signal arguments as pointers if they are
6691
6692 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
6693
6694         * docs/pwg/building-boiler.xml:
6695           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
6696
6697 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6698
6699         * gst/parse/parse.l:
6700         * testsuite/parse/parse1.c: (main):
6701         Since parse can do 'element name=a:b' make 'a:b.' work as
6702         well. 
6703         Added testcase to verify fix.
6704
6705 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6706
6707         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
6708         Use the realpad when printing the direction.
6709         Add extra \n when printing extensions of typefind factories.
6710
6711 2004-10-13  David Schleef  <ds@schleef.org>
6712
6713         * examples/manual/Makefile.am: $< isn't portable in Makefile
6714         rules.
6715
6716 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
6717
6718         * docs/gst/tmpl/gstobject.sgml:
6719         * docs/gst/tmpl/gstplugin.sgml:
6720         * docs/gst/tmpl/gstpluginfeature.sgml:
6721         * docs/gst/tmpl/gstregistry.sgml:
6722         * docs/gst/tmpl/gstversion.sgml:
6723         * gst/gstbin.c:
6724           more api documentation
6725         * gst/gstplugin.c: (gst_plugin_register_func),
6726         (gst_plugin_check_file), (gst_plugin_load_file):
6727           better error signaling and logging
6728
6729 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6730
6731         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
6732           Subtract current queue contents from position queries.
6733
6734 2004-10-11  Johan Dahlin  <johan@gnome.org>
6735
6736         * gst/gsturi.c (gst_uri_get_location): unescape string
6737         (gst_uri_construct): escape string.
6738
6739 2004-10-11  Benjamin Otte  <otte@gnome.org>
6740
6741         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
6742         (gst_pad_try_set_caps_nonfixed):
6743           allow renegotiation of unconnected pads (as inside spider). Simply
6744           return OK if unconnected - mimic try_set_caps there.
6745
6746 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6747
6748         * gst/gstbin.c: (gst_bin_sync_children_state):
6749           Add missing break.
6750
6751 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6752
6753         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
6754         Set element to EOS before sending EOS event
6755
6756 2004-10-08  Wim Taymans  <wim at fluendo dot com>
6757
6758         * gst/elements/gsttypefindelement.c:
6759         (gst_type_find_element_handle_event):
6760         Handle EOS events when doing the transition from
6761         typefind to data passing. This should fix the
6762         infinite loops in short files.
6763
6764 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6765
6766         * gst/gstthread.c: (gst_thread_change_state),
6767         (gst_thread_child_state_change):
6768         Make sure no iteration happens while performing
6769         the state change as it could mess up the internal
6770         consistency of the thread state.
6771
6772 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6773
6774         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
6775         (gst_thread_change_state), (gst_thread_child_state_change):
6776         Do not try to grab the iterate lock in the state change method
6777         when we are in the same thread as the iterate or else we
6778         could deadlock. Some other cleanups.
6779
6780 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6781
6782         * configure.ac:
6783           bump nano to cvs
6784
6785 === release 0.8.7 ===
6786
6787 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6788
6789         * configure.ac:
6790         * NEWS:
6791         * RELEASE:
6792         * configure.ac:
6793           releasing 0.8.7, "A Cruise"
6794
6795 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6796
6797         * docs/random/mimetypes:
6798         Add an entry for Sony ATRAC3 audio format with mime-type
6799         used by rmdemux et riff-read
6800
6801 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6802
6803         * gst/elements/gsttypefindelement.c: (stop_typefinding):
6804         Push the buffer store instead of clearing it in case that
6805         the stream is not seekable.
6806
6807 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6808
6809         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
6810         (gst_thread_main_loop):
6811         Lock the iteration and the state change so that automatic
6812         negotiation and fixation does not happen at the same time
6813         as the in stream negotiation.
6814
6815 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6816
6817         * configure.ac:
6818           bump nano to cvs
6819
6820 === release 0.8.6 ===
6821
6822 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6823
6824         * configure.ac:
6825         * NEWS:
6826         * RELEASE:
6827         * configure.ac:
6828           releasing 0.8.6, "Narc"
6829
6830 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6831
6832         * configure.ac:
6833           prerel bump
6834
6835 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6836
6837         patch by: Steve Lhomme
6838
6839         * gst/elements/gstfakesrc.c:
6840         * gst/elements/gstidentity.c:
6841         * gst/gstthread.c:
6842           Fix for #153881
6843
6844 2004-10-01  Wim Taymans  <wim at fluendo dot com>
6845
6846         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
6847         Fix threadsafety of the crc checking function.
6848
6849 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6850
6851         patch by: Ronald Bultje
6852
6853         * gst/elements/gsttypefindelement.c: (stop_typefinding),
6854         (gst_type_find_element_handle_event),
6855         (gst_type_find_element_chain):
6856         * gst/elements/gsttypefindelement.h:
6857          #153657.
6858          Filter out discont event from seekable sources when typefind
6859          asks them to seek.  Fixes typefind with demuxers for
6860          avi, asf and matroska.
6861
6862 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6863
6864         * docs/gst/gstreamer-sections.txt:
6865         * gst/gstcaps.c:
6866         * gst/gstcaps.h:
6867         * gst/gstpad.c:
6868           Revert preferred caps: (#147789)
6869
6870 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
6871
6872         * win32/dirent.c:
6873           fix a memory leak
6874
6875 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6876
6877         * configure.ac:
6878           bump for prerelease
6879
6880 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6881
6882         * docs/Makefile.am:
6883         * docs/manual/elements-api.xml:
6884           restructure so that common stuff is shown first
6885         * docs/manual/init-api.xml:
6886           convert to examples
6887         * docs/manual/manual.xml:
6888         * docs/manuals.mak:
6889         * docs/url.entities:
6890           link to API on the website, possibly override later in build
6891         * examples/manual/.cvsignore:
6892           ignore more
6893         * examples/manual/Makefile.am:
6894           add more examples
6895         * examples/manual/extract.pl:
6896           error out on failure
6897
6898 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6899
6900         * docs/gst/tmpl/gstthread.sgml:
6901         * docs/manual/init-api.xml:
6902         * examples/manual/Makefile.am:
6903           convert two code bits to examples
6904
6905 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6906
6907         * gst/gstelement.c: (gst_element_change_state):
6908           Well, actually, I was about to remove this insane assert when
6909           I noticed Wim already did that. A warning is nice so we can
6910           fix actual ugs (using --g-fatal-warnings and backtraces), so
6911           I added that instead.
6912
6913 2004-09-06  Wim Taymans  <wim@fluendo.com>
6914
6915         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
6916         (gst_element_threadsafe_properties_post_run),
6917         (gst_element_set_state), (gst_element_change_state):
6918         Added extra refcounting around various places. 
6919
6920 2004-09-06  Wim Taymans  <wim@fluendo.com>
6921
6922         * gst/gstpad.c: (gst_pad_link_call_link_functions):
6923         Fix debug info.
6924
6925 2004-09-06  Wim Taymans  <wim@fluendo.com>
6926
6927         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6928         (remove_from_group):
6929         Some more debug info.
6930
6931 2004-09-03  Wim Taymans  <wim@fluendo.com>
6932
6933         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
6934         (gst_fakesrc_init), (gst_fakesrc_set_clock),
6935         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
6936         (gst_fakesrc_get), (gst_fakesrc_change_state):
6937         * gst/elements/gstfakesrc.h:
6938         * gst/elements/gstidentity.c: (gst_identity_class_init),
6939         (gst_identity_init), (gst_identity_chain),
6940         (gst_identity_set_property), (gst_identity_get_property),
6941         (gst_identity_change_state):
6942         * gst/elements/gstidentity.h:
6943         Added datarate properties to limit the datarate.
6944
6945 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6946
6947         * gst/autoplug/gstspider.c: (plugin_init):
6948           don't set a rank. We don't want to autoplug by inserting spiders.
6949
6950 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6951
6952         * gst/autoplug/gstspider.c: (gst_spider_class_init),
6953         (gst_spider_identity_plug):
6954           add a template for spider's sink
6955         * gst/gst.c: (gst_register_core_elements):
6956           queue's rank should be NULL, we don't want spider to add it.
6957
6958 2004-08-18  David Schleef  <ds@schleef.org>
6959
6960         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
6961         * docs/libs/Makefile.am: same
6962         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
6963         * docs/random/ds/0.9-planning: random additions
6964         * docs/random/ds/0.9-suggested-changes: same
6965         * gst/gstxml.h: remove vestigal GstXMLNs definition
6966
6967         Preferred caps: (#147789)
6968         * docs/gst/gstreamer-sections.txt: Add symbols
6969         * docs/gst/tmpl/gstcaps.sgml: Add symbols
6970         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
6971         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
6972         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
6973         (gst_caps_get_preferred), (gst_caps_set_preferred),
6974         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
6975         (gst_caps_use_preferred): Handle caps preferences
6976         * gst/gstcaps.h: Add caps preferences
6977         * gst/gstpad.c: (gst_pad_link_get_preferred),
6978         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
6979         (gst_pad_renegotiate), (gst_pad_guess_preferred),
6980         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
6981         negotiation.
6982
6983 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6984
6985         * gst/autoplug/gstspideridentity.c:
6986         (gst_spider_identity_request_new_pad):
6987         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
6988         (gst_aggregator_init):
6989         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
6990         (gst_fakesink_init):
6991         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
6992         (gst_fakesrc_init):
6993         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
6994         (gst_fdsink_init):
6995         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
6996         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
6997         (gst_filesink_init):
6998         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
6999         (gst_filesrc_init):
7000         * gst/elements/gstidentity.c: (gst_identity_base_init),
7001         (gst_identity_init):
7002         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
7003         (gst_multifilesrc_init):
7004         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
7005         (gst_pipefilter_init):
7006         * gst/elements/gststatistics.c: (gst_statistics_base_init),
7007         (gst_statistics_init):
7008         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
7009         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
7010           s/gst_pad_new/&_from_template/
7011           register pad templates in the base_init function
7012           add static pad template definitions
7013
7014 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7015
7016         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
7017         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
7018         * testsuite/refcounting/pad.c: (main):
7019         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
7020           s/gst_pad_new/&_from_template/
7021           prepare deprecation of gst_pad_new
7022
7023 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
7024
7025         patch by: Luca Ognibene <skaboy81@virgilio.it>
7026
7027         * gst/gstcaps.c:
7028         * gst/gstelement.c:
7029         * gst/gstpad.c:
7030         * gst/gstxml.c:
7031           fix memleaks.  Fixes #150001
7032
7033 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7034
7035         * docs/random/ds/0.9-suggested-changes:
7036           add notes - mostly about pad templates
7037
7038 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
7039
7040         * win32/GStreamer.vcproj:
7041           temporary locale files are .gmo not .mo
7042
7043 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7044
7045         * configure.ac: bump nano to cvs
7046
7047 === release 0.8.5 ===
7048
7049 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7050
7051         * configure.ac:
7052           releasing 0.8.5, "Stuttgart"
7053         * NEWS:
7054         * RELEASE:
7055         * configure.ac:
7056         * docs/random/release:
7057           updates for release
7058
7059 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7060
7061         patch by: Wim Taymans (wim@fluendo.com)
7062
7063         * gst/gstbuffer.c:
7064         * gst/gstindex.h:
7065         * libs/gst/dataprotocol/dataprotocol.c:
7066           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
7067
7068 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7069
7070         * Makefile.am:
7071         * win32/MANIFEST:
7072           add win32 dir to the build.  Fixes #149981.
7073
7074 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7075
7076         * configure.ac:
7077           bump libtool versioning
7078         * gst/gststructure.c:
7079           mark function as static
7080         * po/af.po:
7081         * po/az.po:
7082         * po/ca.po:
7083         * po/cs.po:
7084         * po/en_GB.po:
7085         * po/fr.po:
7086         * po/nl.po:
7087         * po/sq.po:
7088         * po/sr.po:
7089         * po/sv.po:
7090         * po/tr.po:
7091         * po/uk.po:
7092           translations update
7093         * win32/README.txt:
7094           trademark protection
7095
7096 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7097
7098         * configure.ac:
7099           fix GST_ORIGIN
7100           set GST_PACKAGE to source, and distinguish between release and other
7101         * tools/gst-inspect.c:
7102           print out plugin an element factory is part of so we see this info
7103
7104 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7105
7106         * docs/gst/gstreamer-sections.txt:
7107         * docs/gst/tmpl/gstbuffer.sgml:
7108         * docs/gst/tmpl/gstschedulerfactory.sgml:
7109           reorder docs a little, make GstBuffer's more sensible.
7110         * gst/gstbuffer.h:
7111           API: added GST_BUFFER_FLAG_DELTA_UNIT
7112         * gst/gstscheduler.c:
7113           comment API addition
7114
7115 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7116
7117         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
7118           work with non-regular files that can be mmapped (like /dev/zero)
7119         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
7120           get rid of typefinds that require a seek when we can't seek instead
7121           of trying them over and over again
7122         * tools/gst-launch.c: (idle_func), (error_cb), (main):
7123           return non-zero failure value when the pipeline was interrupted or
7124           an error occurred
7125
7126 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
7127
7128         * win32/config.h:
7129         * win32/GStreamer.vcproj:
7130           compile and install the locales
7131
7132 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
7133
7134         * gst/gstvalue.c:
7135           fix a possible memory leak under Windows
7136
7137 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
7138
7139         * win32/GStreamer.vcproj:
7140           fix a memory leak that occured under Windows
7141         * win32/gstreamer.def:
7142           add gst_scheduler_register
7143
7144 2004-08-11  Benjamin Otte  <otte@gnome.org>
7145
7146         * docs/gst/gstreamer-sections.txt:
7147         * gst/gstscheduler.c: (gst_scheduler_register):
7148         * gst/gstscheduler.h:
7149           API:
7150           add gst_scheduler_register shortcut similar to gst_element_register
7151         * gst/schedulers/entryscheduler.c: (plugin_init):
7152         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
7153         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
7154           use it
7155
7156 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
7157
7158         * gst/gstvalue.h:
7159           fix a memory leak that occured under Windows
7160
7161 2004-08-10  Colin Walters  <walters@redhat.com>
7162
7163         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
7164         Don't use O_EXCL to open temporary registry.  It will prevent
7165         registry creation if a temporary one already exists, which
7166         is unnecessary.
7167
7168 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7169
7170         * docs/gst/gstreamer-sections.txt:
7171         * docs/gst/tmpl/gstvalue.sgml:
7172           remove some valuable stuff from the documentation due to the use of GST_EXPORT
7173
7174 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7175
7176         * win32/gstbytestream.vcproj:
7177         * win32/gstelements.vcproj:
7178         * win32/gstgetbits.vcproj:
7179         * win32/gst-inspect.vcproj:
7180         * win32/gst-launch.vcproj:
7181         * win32/gstoptimalscheduler.vcproj:
7182         * win32/GStreamer.vcproj:
7183         * win32/gst-register.vcproj:
7184         * win32/gstspider.vcproj:
7185           update the include and lib dirs to fit standard libraries as
7186           described in the Win32 manual
7187
7188 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7189
7190         * win32/config.h:
7191         * win32/gstversion.h:
7192           enable NLS again, push the version number for the coming 0.8.5 release
7193
7194 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7195
7196         * gst/gstvalue.h:
7197           export gst_type_XXX for windows DLLs
7198
7199 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7200
7201         * docs/faq/gst-uninstalled:
7202           fix PKG_CONFIG_PATH and PYTHONPATH
7203         * gst/schedulers/Makefile.am:
7204           cleanup
7205         * libs/gst/bytestream/bytestream.c:
7206           remove newline
7207         * po/LINGUAS:
7208         * po/sq.po:
7209           adding Albanian translation (Laurent Dhima)
7210         * po/cs.po:
7211           updated
7212
7213 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7214
7215         * po/ca.po:
7216         * po/sv.po:
7217           updated translations
7218
7219 2004-08-04  Benjamin Otte  <otte@gnome.org>
7220
7221         * tests/mass_elements.c: (main):
7222           allow specifying src and sink element explicitly, so I can test
7223           videotestsrc instead of fakesrc
7224
7225 2004-08-04  Benjamin Otte  <otte@gnome.org>
7226
7227         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
7228         (gst_structure_id_empty_new), (gst_structure_empty_new),
7229         (gst_structure_copy):
7230           add gst_structure_id_empty_new_with_size to allow preallocating
7231           value array sizes. Use this in gst_structure_copy to get rid of
7232           reallocs.
7233           don't do quark=>string=>quark when copying structures
7234
7235 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
7236
7237         * docs/manual/win32.xml:
7238         * win32/README.txt:
7239           update documentation with the clean version of dependencies
7240
7241 2004-08-03  Benjamin Otte  <otte@gnome.org>
7242
7243         * gst/schedulers/entryscheduler.c:
7244         (gst_entry_scheduler_remove_element):
7245           fix for GST_DISABLE_DEBUG
7246         * tools/gst-launch.c: (print_tag):
7247           fixes for G_DISABLE_ASSERT
7248
7249 2004-08-03  Benjamin Otte  <otte@gnome.org>
7250
7251         * gst/gst.c: (gst_register_core_elements):
7252           fix for G_DISABLE_ASSERT
7253         * gst/gstinfo.c: (__gst_in_valgrind):
7254           add for GST_DISABLE_DEBUG
7255
7256 2004-08-03  Benjamin Otte  <otte@gnome.org>
7257
7258         * gst/parse/parse.l:
7259           fix for G_DISABLE_ASSERT
7260
7261 2004-08-03  Wim Taymans  <wim@fluendo.com>
7262
7263         * gst/gstbin.c: (gst_bin_get_type),
7264         (gst_bin_child_state_change_func):
7265         * gst/gstthread.c: (gst_thread_change_state):
7266         Backported some debug logging from a reverted patch
7267         Don't try to destroy the thread twice. Added some more
7268         debugging in GstThread. Unlock and signal even if we
7269         are in the thread context.
7270
7271 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7272
7273         * po/uk.po:
7274           updated translation
7275
7276 2004-07-30  David Schleef  <ds@schleef.org>
7277
7278         * gst/gstatomic_impl.h: Enable atomic code for x86_64
7279
7280 2004-07-29  David Schleef  <ds@schleef.org>
7281
7282         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
7283         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
7284
7285 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
7286
7287         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7288         (gst_bin_add_func), (gst_bin_remove_func),
7289         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
7290         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
7291         (gst_bin_change_state_norecurse), (gst_bin_dispose),
7292         (gst_bin_sync_children_state):
7293         * gst/gstbin.h:
7294         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
7295         (gst_thread_change_state):
7296         * testsuite/states/Makefile.am:
7297           revert state change patches as agreed so we can rework them
7298           gradually
7299
7300 2004-07-29  Benjamin Otte  <otte@gnome.org>
7301
7302         * libs/gst/control/Makefile.am:
7303           link to libgstreamer (fixes Debian bug 262019, see
7304           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
7305
7306 2004-07-29  Wim Taymans  <wim@fluendo.com>
7307
7308         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
7309         (check_from_fraction_convert), (transform_test), (main):
7310         Make the test less pedantic about float roundoff errors.
7311
7312 2004-07-29  Benjamin Otte  <otte@gnome.org>
7313
7314         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
7315         (gst_filesrc_srcpad_event):
7316           make seek events to before start/after end of file not fail, but
7317           seek to start/end instead
7318         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
7319           add more output
7320
7321 2004-07-29  Benjamin Otte  <otte@gnome.org>
7322
7323         * gst/gstpad.c: (gst_pad_set_explicit_caps):
7324           check that caps are fixed
7325         * gst/gstpad.c: (gst_pad_template_new):
7326           don't try to simplify caps, costs too much time on gst_init
7327         * gst/gstplugin.c: (gst_plugin_add_feature):
7328           G_ERROR if features are added twice
7329         * gst/gsttypefind.c: (gst_type_find_register):
7330         * gst/gstelementfactory.c: (gst_element_register):
7331           don't add features twice
7332         * docs/random/ds/0.9-suggested-changes:
7333           add note about possible gst_init optimization
7334
7335 2004-07-28  David Schleef  <ds@schleef.org>
7336
7337         * testsuite/elements/Makefile.am:
7338         * testsuite/elements/struct_i386.h:
7339         * testsuite/elements/struct_size.c: (main):  A little test
7340         to keep distcheck from working if someone changes a structure
7341         size accidentally.
7342
7343 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7344
7345         * docs/libs/Makefile.am:
7346         * docs/libs/gstreamer-libs-docs.sgml:
7347         * docs/libs/gstreamer-libs-sections.txt:
7348         * docs/libs/tmpl/gstbytestream.sgml:
7349         * docs/libs/tmpl/gstcontrol.sgml:
7350         * docs/libs/tmpl/gstdataprotocol.sgml:
7351         * docs/libs/tmpl/gstgetbits.sgml:
7352         * libs/gst/bytestream/Makefile.am:
7353         * libs/gst/bytestream/bytestream.c:
7354         * libs/gst/bytestream/bytestream.h:
7355         * libs/gst/control/Makefile.am:
7356         * libs/gst/dataprotocol/Makefile.am:
7357         * libs/gst/getbits/Makefile.am:
7358         * libs/gst/getbits/getbits.h:
7359           various doc and style fixes, adding bytestream to libs docs.
7360
7361 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7362
7363         * docs/gst/gstreamer-docs.sgml:
7364         * docs/libs/Makefile.am:
7365         * docs/libs/gstreamer-libs-docs.sgml:
7366         * docs/libs/gstreamer-libs-sections.txt:
7367         * libs/gst/control/dparam.c:
7368           more doc fixes.  gst-libs docs now build the same way as gst.
7369
7370 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7371
7372         * configure.ac:
7373         * testsuite/Makefile.am:
7374         * testsuite/bins/Makefile.am:
7375         * testsuite/caps/Makefile.am:
7376         * testsuite/cleanup/Makefile.am:
7377         * testsuite/clock/Makefile.am:
7378         * testsuite/debug/Makefile.am:
7379         * testsuite/dlopen/Makefile.am:
7380         * testsuite/dynparams/Makefile.am:
7381         * testsuite/elements/.cvsignore:
7382         * testsuite/elements/Makefile.am:
7383         * testsuite/enumcaps/Makefile.am:
7384         * testsuite/enumcaps/enumcaps.c:
7385         * testsuite/ghostpads/Makefile.am:
7386         * testsuite/indexers/Makefile.am:
7387         * testsuite/negotiation/Makefile.am:
7388         * testsuite/parse/Makefile.am:
7389         * testsuite/plugin/Makefile.am:
7390         * testsuite/refcounting/Makefile.am:
7391         * testsuite/schedulers/.cvsignore:
7392         * testsuite/states/Makefile.am:
7393         * testsuite/tags/Makefile.am:
7394         * testsuite/threads/Makefile.am:
7395           fold enumcaps into caps dir
7396           clean up Makefile.am's for testsuite
7397
7398 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7399
7400         * docs/gst/Makefile.am:
7401         * docs/libs/Makefile.am:
7402           clean up docs build.  Fixes needless rebuilding of template files.
7403
7404 2004-07-28  Wim Taymans  <wim@fluendo.com>
7405
7406         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
7407         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
7408         Make sure that a bin state change tries to keep the children
7409         in sync. 
7410         Added debug logging to the thread.
7411
7412 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
7413
7414         * win32/GStreamer.vcproj:
7415         * win32/gstreamer.def:
7416           more exports for the plugins
7417
7418 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
7419
7420         * win32/gstgetbits.vcproj:
7421         * win32/gstgetbits.def:
7422         * win32/msvc71.sln:
7423           add support for the getbits plugin
7424
7425 2004-07-27  Wim Taymans  <wim@fluendo.com>
7426
7427         * gst/gstvalue.c: (gst_value_transform_double_fraction),
7428         (gst_value_transform_fraction_double), (_gst_value_initialize):
7429         * testsuite/caps/Makefile.am:
7430         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
7431         (check_from_fraction_convert), (transform_test), (main):
7432         Added transform functions between double and fraction.
7433         Added testcase to verify transforms
7434
7435 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7436
7437         * win32/GStreamer.vcproj:
7438           rename GStreamer-0.8.lib to libgstreamer.lib
7439
7440 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7441
7442         * win32/gstelements.vcproj:
7443         * win32/gstoptimalscheduler.vcproj:
7444           fixes for the Release build
7445
7446 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7447
7448         * win32/config.h:
7449           update the version number
7450
7451 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7452
7453         * win32/GStreamer.vcproj:
7454           add gstinterface to the build
7455
7456 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7457
7458         * win32/gstreamer.def:
7459           add many definitions needed by plugins,
7460           GST_CAT_DEFAULT only available in the Debug build ?
7461
7462 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7463
7464         * gst/gstelement.c: (gst_element_set_eos_recursive):
7465           various whitespace fixes.
7466           doc fix, fixes #148497
7467
7468 2004-07-25  Benjamin Otte  <otte@gnome.org>
7469
7470         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
7471           don't delay links on the sink elements, it causes unnegotiated
7472           links.
7473         * gst/elements/gsttypefindelement.c:
7474         (gst_type_find_element_base_init):
7475           add our padtemplates, we indeed do have some.
7476         * gst/elements/gsttypefindelement.c:
7477         (gst_type_find_element_handle_event),
7478         (gst_type_find_element_chain):
7479           don't push data when typefinding failed.
7480         * gst/gstpad.c: (gst_pad_link_fixate):
7481           check that no fixate function returns empty caps.
7482         * gst/gstpad.c: (gst_pad_push):
7483           check that the link is negotiated before data gets pushed.
7484         * tools/gst-register.c: (main):
7485           don't assert (fixes #148283)
7486
7487 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7488
7489         * docs/gst/gstreamer-sections.txt:
7490         * docs/gst/tmpl/gstconfig.sgml:
7491           add GST_PLUGIN_EXPORT definition
7492
7493 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7494
7495         * gst/gstplugin.h:
7496         * gst/gstconfig.h.in:
7497         * win32/gstconfig.h:
7498         * win32/gstelements.def:
7499         * win32/gstelements.vcproj:
7500         * win32/gstoptimalscheduler.def:
7501         * win32/gstoptimalscheduler.vcproj:
7502         * win32/gstspider.def:
7503         * win32/gstspider.vcproj:
7504           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
7505
7506 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7507
7508         * docs/gst/gstreamer-sections.txt:
7509           remove GST_CAT_DEFAULT because the type has changed
7510
7511 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7512
7513         * win32/gstbytestream.vcproj:
7514         * win32/gstelements.vcproj:
7515         * win32/gst-inspect.vcproj:
7516         * win32/gst-launch.vcproj:
7517         * win32/gstoptimalscheduler.vcproj:
7518         * win32/GStreamer.vcproj:
7519         * win32/gst-register.vcproj:
7520         * win32/gstspider.vcproj:
7521         * win32/msvc71.sln:
7522           Copy the files where needed after building, The testsuite will be
7523           built separately
7524
7525 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7526
7527         * win32/config.h:
7528         * win32/README.txt:
7529         * docs/manual/win32.xml:
7530         Fixed the plugin and GStreamer location
7531
7532 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7533
7534         * win32/gstreamer.def:
7535         More exports for the plugins
7536
7537 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7538
7539         * gst/gstinfo.h:
7540         Marc was right, we need to export literally GST_CAT_DEFAULT
7541
7542 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7543
7544         * win32/config.h:
7545         NLS crashes in gettext, disabled until this is solved
7546
7547 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7548
7549         * win32/gst-inspect.vcproj:
7550         * win32/gst-launch.vcproj:
7551         Should use NLS when available
7552
7553 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7554
7555         * gst/registries/gstxmlregistry.c:
7556         removing the file doesn't seem to be a good idea on Linux
7557
7558 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7559
7560         * gst/registries/gstxmlregistry.c:
7561         Remove the registry before renaming the tempfile (needed for Windows)
7562
7563 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7564
7565         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
7566         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
7567         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
7568         * gst/elements/gstmultifilesrc.h:
7569         Added newmedia property so it generates newmedia events between each
7570         file when property is set, as well as fixed eos handling
7571
7572 2004-07-22  David Schleef  <ds@schleef.org>
7573
7574         * gst/gststructure.c: (gst_structure_id_empty_new),
7575         (gst_structure_empty_new):  Set type field correctly.
7576         * gst/gststructure.h: Check type field correctly.
7577         * testsuite/caps/Makefile.am:
7578         * testsuite/caps/structure.c: (test1), (main): Add a very small
7579         test for structures.
7580
7581 2004-07-22  David Schleef  <ds@schleef.org>
7582
7583         * docs/random/ds/0.9-suggested-changes: more comments
7584         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
7585
7586 2004-07-22  Benjamin Otte  <otte@gnome.org>
7587
7588         * gst/gstelementfactory.c: (gst_element_register):
7589           set the factory in the class struct, so gst_element_get_factory
7590           actually works
7591         * gst/parse/grammar.y:
7592           set element to playing when it gets unlocked as we can't rely on the
7593           bin state - all elements in the bin state might still be locked in
7594           NULL)
7595
7596 2004-07-22  Benjamin Otte  <otte@gnome.org>
7597
7598         * gst/gstelement.c: (gst_element_set_state_func):
7599           make this a static function
7600
7601 2004-07-22  Wim Taymans  <wim@fluendo.com>
7602
7603         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
7604         (gst_opt_scheduler_pad_link):
7605         fix 147894-2 and the group_link problem.
7606
7607 2004-07-22  Wim Taymans  <wim@fluendo.com>
7608
7609         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7610         (handoff_identity), (main):
7611         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7612         (handoff_identity), (main):
7613         * testsuite/schedulers/Makefile.am:
7614         * testsuite/schedulers/group_link.c: (main):
7615         Show bug in scheduler when linking chain and loop based element 
7616         where the chain based element was not yet in a group.
7617
7618 2004-07-21  Benjamin Otte  <otte@gnome.org>
7619
7620         * gst/.cvsignore:
7621         * gst/autoplug/.cvsignore:
7622         * gst/elements/.cvsignore:
7623         * gst/indexers/.cvsignore:
7624         * libs/gst/bytestream/.cvsignore:
7625         * libs/gst/control/.cvsignore:
7626         * libs/gst/getbits/.cvsignore:
7627         * testsuite/states/.cvsignore:
7628         * testsuite/threads/.cvsignore:
7629           keep this up to date, since I seem to be the only one who cares
7630           about not missing files on commits (editor's note: no you don't,
7631           but feel free to change them at the time you add stuff instead
7632           of later on)
7633
7634 2004-07-21  Benjamin Otte  <otte@gnome.org>
7635
7636         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7637         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
7638         (gst_bin_child_state_change_func), (set_kid_state_func),
7639         (gst_bin_set_state), (gst_bin_change_state_norecurse):
7640           make state changes work correctly and reentrant (so removing
7641           elements from bins during state changes of bins doesn't cause
7642           segfaults or even wrong states)
7643           add debugging category and debugging output to print children states
7644         * gst/gstbin.c: (gst_bin_dispose): 
7645           add some assertion checks
7646         * gst/gstbin.h:
7647         * gst/gstbin.c: (gst_bin_sync_children_state):
7648           deprecate this function - it just does gst_bin_set_state (bin,
7649           GST_STATE (bin)) 
7650         * testsuite/threads/queue.c: (main):
7651           don't use gst_bin_sync_children_state anymore
7652         * testsuite/states/Makefile.am:
7653         * testsuite/states/bin.c:
7654           test that the state changes of bins work as expected
7655         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
7656           some adjustments to change states correctly, too
7657         * gst/gstthread.c: (gst_thread_change_state):
7658           don't enable/disable "threadsafe" properties, they're unused and
7659           cause random segfaults
7660         * testsuite/threads/Makefile.am:
7661           the queue check randomly passes now, ignore it
7662
7663 2004-07-21  Benjamin Otte  <otte@gnome.org>
7664
7665         * gst/gstpad.c:
7666           check if data is NULL before outputting debug info. (fixes #145100)
7667
7668 2004-07-21  Benjamin Otte  <otte@gnome.org>
7669
7670         * gst/schedulers/entryscheduler.c:
7671         (gst_entry_scheduler_loop_wrapper),
7672         (gst_entry_scheduler_chain_wrapper),
7673         (gst_entry_scheduler_get_wrapper):
7674           reset the state when the cothread starts, so we don't get assertion
7675           failures on restarting of cothreads
7676
7677 2004-07-20  Benjamin Otte  <otte@gnome.org>
7678
7679         * gst/gstelement.c: (gst_element_link_pads_filtered):
7680           use correct sinkpad, if only sinkpad is specified, but not srcpad
7681           (fixes #147889)
7682         * gst/gstelement.c: (gst_element_set_state_func),
7683         (gst_element_change_state): ref/unref the element, signal handlers
7684         could get rid of the element otherwise
7685
7686 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7687
7688         * docs/random/ds/0.9-suggested-changes:
7689           Make note about renaming fixed-list to array.
7690         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
7691         (_gst_value_initialize):
7692           Add array intersections.
7693         * testsuite/caps/intersect2.c: (main):
7694           Add test for array intersections.
7695
7696 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7697
7698         * configure.ac: back to cvs
7699
7700 === release 0.8.4 ===
7701
7702 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7703
7704         * configure.ac:
7705           releasing 0.8.4, "Paella"
7706           bump libtool versioning
7707
7708 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7709
7710         * po/LINGUAS:
7711         * po/ca.po:
7712           adding Catalan translation (Jordi Mallach)
7713
7714 2004-07-20  Wim Taymans  <wim@fluendo.com>
7715
7716         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7717         (handoff_identity), (main):
7718         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7719         (handoff_identity), (main):
7720         * testsuite/schedulers/Makefile.am:
7721         Added failing testcase for variant of #147894
7722
7723 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7724
7725         patch by: David Moore
7726
7727         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7728         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
7729         (group_migrate_connected):
7730         * testsuite/schedulers/Makefile.am:
7731           fix for #142813 (Deadlock in optimal scheduler)
7732
7733 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7734
7735         patch by: Wim Taymans
7736
7737         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7738         (gst_opt_scheduler_schedule_run_queue),
7739         (gst_opt_scheduler_get_wrapper), (get_group),
7740         (group_migrate_connected):
7741         * testsuite/schedulers/Makefile.am:
7742           fix for #147819 (Add some checks in the opt scheduler)
7743
7744 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7745
7746         patch by: Benjamin Otte
7747
7748         * gst/gstelementfactory.c: (__gst_element_details_set):
7749           fix for #147929: running gst-register in non-utf8 locale can cause
7750           invalid registry
7751
7752 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7753
7754         patch by: Wim Taymans
7755
7756         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
7757         (group_has_element), (element_get_reachables_func),
7758         (group_migrate_connected):
7759           fix for #147894 (opt scheduler decoupled elements mismanagement)
7760         * testsuite/schedulers/Makefile.am:
7761           testsuite app now passes
7762
7763 2004-07-19  Wim Taymans  <wim@fluendo.com>
7764
7765         * testsuite/schedulers/147819.c: (handoff_identity1),
7766         (handoff_identity2), (main):
7767         * testsuite/schedulers/Makefile.am:
7768         Added testcase for bug 147819
7769
7770 2004-07-19  Wim Taymans  <wim@fluendo.com>
7771
7772         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7773         (handoff_identity), (main):
7774         * testsuite/schedulers/Makefile.am:
7775         Added testcase for bug 147894
7776
7777 2004-07-16  Wim Taymans  <wim@fluendo.com>
7778
7779         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
7780         * testsuite/schedulers/142183.c: (handoff_identity), (main):
7781         * testsuite/schedulers/Makefile.am:
7782         Added testsuite for bug 142183 in its two incarnations. Refcount
7783         is not increased for scheduled elements and threadsafe properties
7784         mutexes are not properly unlocked.
7785
7786 2004-07-16  Wim Taymans  <wim@fluendo.com>
7787
7788         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
7789         (create_chain), (destroy_chain), (create_group), (destroy_group),
7790         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
7791         (group_dec_link), (gst_opt_scheduler_pad_link),
7792         (group_inc_links_for_element), (group_migrate_connected):
7793         Call group_inc_link with the proper src->sink ordering -- 
7794         break this, and we break sort_chain. patch from wingo for bug
7795         147713.
7796         Partially revert patch 1.89. When adding a loop based element to 
7797         the scheduler, the links to other groups are automatically followed
7798         and incremented. This should not happen because the bin will call
7799         pad_link explicitly for those connection, resulting in them counted 
7800         twice. Results in assertion failure on pipeline cleanup.
7801
7802 2004-07-16  Wim Taymans  <wim@fluendo.com>
7803
7804         * testsuite/schedulers/143777-2.c: (main):
7805         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
7806         (main):
7807         * testsuite/schedulers/Makefile.am:
7808         Added cleanup code to testcase 143777-2.
7809         Added testcase to show bug 147713, does not really show the
7810         deadlock as I can't figure out how to trigger it, but it does
7811         demonstrate bad ordering in the scheduler.
7812
7813 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7814
7815         * gst/gstvalue.c: (gst_value_deserialize_fraction):
7816           change strndup to g_strndup.  Fixes #147707
7817
7818 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7819
7820         * po/af.po:
7821         * po/az.po:
7822         * po/cs.po:
7823         * po/en_GB.po:
7824         * po/fr.po:
7825         * po/nl.po:
7826         * po/sr.po:
7827         * po/sv.po:
7828         * po/tr.po:
7829         * po/uk.po:
7830           updated translations
7831
7832 2004-07-16  Benjamin Otte  <otte@gnome.org>
7833
7834         * gst/gstvalue.c: (gst_greatest_common_divisor):
7835           use ints and return ints, fractions only use ints, too, so this
7836           avoids accidently casting multiplications to unsigned
7837         (gst_value_lcopy_fraction): it's ints, not uint32
7838         (gst_value_set_fraction): disallow minint, multiplying and negation
7839           are broken with it
7840         (gst_value_fraction_multiply): fix to make large numbers work and get
7841         rid of the assumption that the multiplication of two ints fits an
7842         int64 - dunno if that's true for all systems
7843         * testsuite/caps/Makefile.am:
7844         * testsuite/caps/fraction-multiply-and-zero.c:
7845         (check_multiplication), (check_equal), (zero_test), (main):
7846           add tests for all the stuff above
7847         * testsuite/caps/value_compare.c: (test1):
7848           fix comment
7849         * tests/.cvsignore:
7850         * testsuite/caps/.cvsignore:
7851         * testsuite/debug/.cvsignore:
7852         * testsuite/dlopen/.cvsignore:
7853         * testsuite/states/.cvsignore:
7854           get up to date
7855
7856 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7857
7858         * docs/manual/bins-api.xml:
7859         * docs/manual/factories.xml:
7860         * docs/manual/helloworld.xml:
7861         * docs/manual/links-api.xml: 
7862           fixes for out of date info, incorrect info and grammar
7863
7864 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7865
7866         * docs/manual/pads.xml:
7867         * docs/manual/pads-api.xml: grammar fix
7868
7869 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7870
7871         * docs/manual/pads-api.xml: typo + grammar fix
7872
7873 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7874
7875         * docs/gst/gstreamer-sections.txt:
7876           add new symbols
7877         * docs/gst/tmpl/gstelement.sgml:
7878         * docs/gst/tmpl/gstpad.sgml:
7879         * docs/gst/tmpl/gsttypes.sgml:
7880         * docs/gst/tmpl/gstvalue.sgml:
7881           update docs
7882         * gst/gststructure.c: (gst_structure_set_valist),
7883         (gst_structure_from_abbr), (gst_structure_to_abbr):
7884         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
7885         (gst_greatest_common_divisor), (gst_value_init_fraction),
7886         (gst_value_copy_fraction), (gst_value_collect_fraction),
7887         (gst_value_lcopy_fraction), (gst_value_set_fraction),
7888         (gst_value_get_fraction_numerator),
7889         (gst_value_get_fraction_denominator),
7890         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
7891         (gst_value_deserialize_fraction),
7892         (gst_value_transform_fraction_string),
7893         (gst_value_transform_string_fraction),
7894         (gst_value_compare_fraction), (_gst_value_initialize):
7895         * gst/gstvalue.h:
7896           adding GstFraction GValue type, get/set, and multiply
7897         * testsuite/caps/Makefile.am:
7898         * testsuite/caps/fraction.c: (test), (main):
7899         * testsuite/caps/string-conversions.c: (main):
7900         * testsuite/caps/value_compare.c: (test1), (main):
7901           add regression tests for GstFraction
7902
7903 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7904         
7905         * docs/manual/init-api.xml: Grammar fix
7906
7907 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7908
7909         * docs/manual/states.xml: Fix inconsistent information
7910
7911 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7912
7913         * gst/gstelement.c: (gst_element_set_state):
7914         * gst/gstpad.c: (gst_pad_try_set_caps):
7915         * gst/gststructure.c:
7916         * gst/gstthread.c: (gst_thread_child_state_change):
7917         * gst/gstvalue.c: (gst_value_compare_double):
7918         * gst/gstvalue.h:
7919         * testsuite/parse/parse1.c: (main):
7920           debugging additions and style cleanups
7921
7922 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7923
7924         * docs/manual/states.xml: Grammar fix
7925
7926 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7927
7928         * docs/manual/pads.xml: Grammar fix
7929
7930 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7931
7932         * docs/manual/elements.xml: Fixed image reference
7933
7934 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7935
7936         * docs/manual/goals.xml: Grammar fix
7937
7938 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7939
7940         * docs/manual/motivation.xml:
7941         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
7942
7943 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7944
7945         * docs/manual/motivation.xml: Fix spelling
7946
7947 2004-07-15  Benjamin Otte  <otte@gnome.org>
7948
7949         * gst/gstelement.h: 
7950           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
7951           strings.
7952         * gst/gstelement.c (gst_element_class_init):
7953           GError's are boxed, not objects
7954         * gst/gstmarshal.list:
7955           update list for the fixed error signal
7956
7957 2004-07-14  Andy Wingo  <wingo@pobox.com>
7958
7959         * gst/gsttag.c: Add a tag merge func for pointers. The header was
7960         there all along, but the function wasn't. (guile-gstreamer's build
7961         system uses the address of the function -- I wasn't actually
7962         trying to use this.)
7963
7964 2004-07-14  Andy Wingo  <wingo@pobox.com>
7965
7966         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
7967         as gst_pad_proxy_pad_link) just link to every other pad when they
7968         are called. In the case where the graph has cycles, this will mean
7969         that a call to try_set_caps will recurse. Allow this recursion
7970         and return OK, while we wait for the first try_set_caps to give a
7971         proper return value.
7972         (gst_pad_link_call_link_functions): Since this function is the
7973         only one to set the NEGOTIATING flag on a pad, if the flag is set
7974         it means that the link functions have indirectly recursed. If this
7975         happens, error out to avoid infinite recursion and an eventual
7976         SEGV.
7977         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
7978         (gst_pad_proxy_getcaps): Intersect the result with the template
7979         caps to ensure that the return value is valid.
7980
7981 2004-07-14  Andy Wingo  <wingo@pobox.com>
7982
7983         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
7984         one refcount, the calling function is the owner of the buffer.
7985
7986 2004-07-14  Wim Taymans  <wim@fluendo.com>
7987
7988         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7989         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7990         Fix stupid warning when an element is to be migrated but
7991         is already migrated.
7992
7993 2004-07-14  Wim Taymans  <wim@fluendo.com>
7994
7995         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7996         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7997         Make sure that a single non-loop-based element does not 
7998         end up in a group. This fixes the testsuite again.
7999
8000 2004-07-14  Wim Taymans  <wim@fluendo.com>
8001
8002         * gst/schedulers/gstoptimalscheduler.c: (create_group),
8003         (add_to_group), (merge_groups), (schedule_group),
8004         (gst_opt_scheduler_get_wrapper), (group_elements),
8005         (group_dec_link), (gst_opt_scheduler_pad_link),
8006         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
8007         (gst_opt_scheduler_iterate):
8008         move isolated groups to a new chain.
8009         Emit a warning instead of segfaulting in some error cases.
8010         Fix a bug where the link count between groups was not calculated 
8011         correctly. Fixes #144510.
8012
8013 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
8014         * gst/elements/gstfilesrc.c:
8015           Binary files support under Windows now OK
8016       
8017 2004-07-13  Benjamin Otte  <otte@gnome.org>
8018
8019           compatibility fixes for Solaris 8/gcc 2.95
8020         * configure.ac:
8021           include libintl libs in LDFLAGS
8022         * gstvalue.c (gst_value_deserialize_buffer):
8023           cast isxdigit stuff to int to silence compiler warning
8024
8025 2004-07-12  Benjamin Otte  <otte@gnome.org>
8026
8027         * gst/gsttypes.h:
8028           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
8029           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
8030           just causes support madness
8031         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
8032           make it work without this
8033         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
8034         (gst_file_index_commit):
8035           glib IO channels don't want binary mode
8036         * testsuite/bytestream/filepadsink.c: (main):
8037         * testsuite/bytestream/test1.c: (read_param_file):
8038           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
8039
8040 2004-07-12  Benjamin Otte  <otte@gnome.org>
8041
8042         * gst/gstelement.c: (gst_element_class_init),
8043         (gst_element_set_state), (gst_element_set_state_func):
8044           virutalize gst_element_set_state, use set_state member in class
8045           struct that was already added in 0.7 for this.
8046         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
8047         (gst_bin_change_state):
8048           make gst_bin_foreach works similar to other foreach functions, plug
8049           memleaks in it. Make functions using it work with the new approach.
8050           Document gst_bin_foreach, so it can be exported if we want to
8051         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
8052           use virtualized set_state to make set_state on bins set the state of
8053           all its children.
8054
8055 2004-07-12  Benjamin Otte  <otte@gnome.org>
8056
8057         * configure.ac:
8058           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
8059           http://bugs.gentoo.org/show_bug.cgi?id=53967)
8060         * gst/gstpad.c: (gst_pad_alloc_buffer):
8061           allow buffer_alloc functions to return NULL and allocate a normal
8062           buffer in that case
8063
8064 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
8065         * gst/elements/gstfilesink.c:
8066         * gst/elements/gstfilesrc.c:
8067         * gst/indexers/gstfileindex.c:
8068         * gst/gsttypes.h:
8069         * testsuite/bytestream/filepadsink.c:
8070         * testsuite/bytestream/test1.c:
8071           Handle binary files under Windows
8072
8073 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
8074         * docs/manual/win32.xml:
8075         * win32/config.h:
8076         * win32/gst-register.vcproj:
8077         * win32/gstreamer.def:
8078           Update to another gettext public build
8079
8080 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
8081         * gst/gstplugin.c:
8082           Fix an impossible C syntax
8083         * win32/config.h:
8084           Disable i18n under Windows for the moment
8085         * win32/gst-register.vcproj:
8086           Use this configuration
8087
8088 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
8089         * docs/manual/quotes.xml:
8090           Keep the quotes file alive
8091         * docs/random/ds/0.9-suggested-changes:
8092           Add the suggestion of including a 'rowstride' as part of video
8093           format caps
8094
8095 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8096
8097         * gst/gstelement.c: (gst_element_set_state),
8098         (gst_element_change_state):
8099           d'oh.  Set PENDING state correctly before forcing bin to change.
8100         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8101         (gst_structure_parse_fixed_list):
8102         * gst/schedulers/gstoptimalscheduler.c:
8103         (gst_opt_scheduler_state_transition):
8104         * testsuite/states/parent.c: (main):
8105           remove comment now that it's fixed.
8106
8107 2004-07-11  Benjamin Otte  <otte@gnome.org>
8108
8109         * gst/gstclock.h:
8110           GST_SECOND shouldn't cause a conversion to unsigned.
8111         * testsuite/clock/.cvsignore:
8112         * testsuite/clock/Makefile.am:
8113         * testsuite/clock/signedness.c: (main):
8114           make sure it never will again
8115
8116 2004-07-11  Andy Wingo  <wingo@pobox.com>
8117
8118         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
8119         whose state is higher than the bin state, raise the bin state to
8120         ensure that bin state := highest child state.
8121         
8122 2004-07-11  Andy Wingo  <wingo@pobox.com>
8123
8124         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
8125         procedure on the children of a bin. Assumes that the procedure can
8126         change the set of children.
8127         (set_kid_state_func): New static function.
8128         (gst_bin_change_state): Use gst_bin_foreach to call
8129         set_kid_state_func. Fixes a bug: if a child had a state-change
8130         handler that removes it from the bin, there would be a segfault.
8131         Hopefully it should also work in the case where the state-change
8132         handler on one child adds or removes other children. In any case,
8133         fixes should go to gst_bin_foreach.
8134
8135 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
8136
8137         * gst/gstelement.c: (gst_element_set_state):
8138           compatibility fix for latest plugins release.  Change loop back
8139           to while {}
8140
8141 2004-07-09  Wim Taymans  <wim@fluendo.com>
8142
8143         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
8144         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
8145         (gst_thread_main_loop):
8146         Since remove is virtual in GstBin we must not assume the 
8147         elements GList to have anothing useful.
8148         Add some more logging to GstThread and be a bit more paranoid
8149         when resetting the scheduler.
8150         Set the state of the bin to NULL before removing the children.
8151
8152 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8153
8154         * testsuite/threads/Makefile.am:
8155         * testsuite/threads/threadg.c:
8156           added test to check if problem when removing all elements from a
8157           GstThread before setting GstThread state to NULL
8158
8159 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8160
8161         * docs/gst/tmpl/gstelement.sgml:
8162         * docs/gst/tmpl/gsttypes.sgml:
8163         * gst/gstbin.c: (gst_bin_change_state):
8164         * gst/gstelement.c: (gst_element_set_state),
8165         (gst_element_change_state):
8166           rework so that for bins we try to set the state on all children
8167           as well even if the bin is in the correct state already.
8168           change while to do so at least one iteration is done.
8169           For regular elements, we fall back to the previous behaviour for
8170           now since we first need a new plugins release.
8171         * testsuite/states/parent.c: (main):
8172           test for this case
8173           Fixes #123774
8174
8175 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8176
8177         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
8178         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
8179         (gst_queue_release_locks), (gst_queue_change_state),
8180         (gst_queue_set_property):
8181           add proper lock debugging.  Change dispose to finalize, since
8182           we're freeing mutexes and other stuff which should happen only once.
8183
8184 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8185
8186         * docs/gst/tmpl/gstelement.sgml:
8187         * docs/gst/tmpl/gstplugin.sgml:
8188         * docs/gst/tmpl/gsttypes.sgml:
8189         * docs/pwg/building-state.xml:
8190         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
8191         * gst/gstelement.c: (gst_element_change_state):
8192         * gst/gstthread.c: (gst_thread_change_state):
8193           catch wrong state changes in element base class.
8194
8195 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8196
8197         * gst/gstinfo.h:
8198           clean up layout a little.
8199
8200 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8201
8202         * configure.ac:
8203         * testsuite/Makefile.am:
8204         * testsuite/states/Makefile.am:
8205         * testsuite/states/parent.c: (main):
8206           re-enable states testsuite dir.  Add test for state changes and
8207           parent behaviour
8208
8209 2004-07-09  Wim Taymans  <wim@fluendo.com>
8210
8211         * gst/schedulers/gstoptimalscheduler.c:
8212         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
8213         (element_get_reachables_func), (element_get_reachables),
8214         (debug_element), (rechain_group), (group_migrate_connected),
8215         (gst_opt_scheduler_pad_unlink):
8216         Do not try to migrate decoupled elements to a new group since
8217         they are not added to groups.
8218
8219 2004-07-08  Benjamin Otte  <otte@gnome.org>
8220
8221         * gst/gstelement.c: (gst_element_error_func):
8222           make reentrant (= allow removing elements in error handler)
8223
8224 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8225
8226         * gst/gstpad.c: (gst_pad_event_default_dispatch),
8227         (gst_pad_send_event), (gst_pad_call_chain_function):
8228           events sent to elements below PAUSED cannot be handled, so
8229           don't try to
8230
8231 2004-07-08  Wim Taymans  <wim@fluendo.com>
8232
8233         * gst/schedulers/gstoptimalscheduler.c:
8234         (chain_recursively_migrate_group), (create_group),
8235         (schedule_group), (gst_opt_scheduler_pad_link),
8236         (group_elements_set_visited), (element_get_reachables_func),
8237         (element_get_reachables), (group_can_reach_group), (debug_element),
8238         (rechain_group), (group_migrate_connected),
8239         (gst_opt_scheduler_pad_unlink):
8240         * testsuite/schedulers/Makefile.am:
8241         Implemented group splitting and rechaining.
8242         Fixes 143777 and 143777-2 in the testsuite.
8243
8244 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8245
8246         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
8247           extra debugging
8248         * gst/gstevent.h:
8249         * gst/gstinfo.c: (gst_debug_log_default):
8250           print time nicely.  add thread pointer until someone figures out
8251           a completely portable way of getting at thread id's.
8252         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
8253         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
8254         (gst_pad_call_chain_function):
8255           extra debugging
8256         * gst/schedulers/gstoptimalscheduler.c:
8257         (get_group_schedule_function), (loop_group_schedule_function),
8258         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
8259         (pad_clear_queued), (gst_opt_scheduler_iterate):
8260           rename BUFPEN and friends to DATAPEN since that's what they are.
8261
8262 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8263
8264         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
8265         * gst/gstbuffer.h:
8266         * gst/gstpad.c:
8267           cleanups and debugging
8268
8269 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8270
8271         * configure.ac:
8272         * gst/gstvalue.c: (gst_value_compare_enum),
8273         (gst_value_serialize_enum), (gst_value_deserialize_enum),
8274         (gst_value_can_compare), (gst_value_compare):
8275         * testsuite/Makefile.am:
8276         * testsuite/enumcaps/Makefile.am:
8277         * testsuite/enumcaps/enumcaps.c:
8278           Fix enum serialization, deserialization, comparison in caps, add
8279           a test to ensure that this continues working in the future.
8280
8281 2004-07-06  David Schleef  <ds@schleef.org>
8282
8283         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
8284         Fix memleak.
8285
8286 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8287
8288         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
8289         * gst/gstplugin.h:
8290         * gst/registries/gstxmlregistry.c:
8291         (plugin_times_older_than_recurse), (plugin_times_older_than),
8292         (gst_xml_registry_parse_padtemplate):
8293           only rebuild registry when actual plugins have a newer time than
8294           the registry.  Fixes #145520
8295
8296 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8297
8298         * docs/manual/manual.xml:
8299         * docs/manual/win32.xml:
8300           add chapter on win32 building.  fixes #142422
8301
8302 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8303
8304         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
8305
8306         * gst/autoplug/gstspider.c: (gst_spider_init),
8307         (gst_spider_dispose):
8308           fix spider memleaks.  fixes #137863
8309
8310 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8311
8312         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
8313
8314         * gst/schedulers/gstoptimalscheduler.c:
8315         (gst_opt_scheduler_pad_unlink):
8316           fix SIGBUS error, fixes #145338
8317
8318 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8319
8320         * gst/gstobject.c: (gst_object_replace):
8321         * gst/gstscheduler.c: (gst_scheduler_get_clock):
8322         * gst/gstsystemclock.c: (gst_system_clock_obtain):
8323           clean up clock lifecycle.  Fixes #109831
8324
8325 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8326
8327         * po/LINGUAS:
8328         * po/cs.po:
8329           added Czech translation (Miloslav Trmac)
8330
8331 2004-07-04  David Schleef  <ds@schleef.org>
8332
8333         * tools/Makefile.am:
8334         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
8335
8336 2004-07-04  David Schleef  <ds@schleef.org>
8337
8338         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
8339
8340 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8341
8342         * gst/gstbin.c: (gst_bin_restore_thyself):
8343           chain to parent restore so the bins get restored correctly
8344           in the editor
8345
8346 2004-07-03  David Schleef  <ds@schleef.org>
8347
8348         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
8349         Actually do something in these functions, like before the big
8350         caps change.  (bug #145137)
8351
8352 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8353
8354         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
8355         (gst_element_get_compatible_pad_filtered):
8356         * gst/gstthread.c: (gst_thread_main_loop):
8357           more debugging
8358
8359 2004-07-02  David Schleef  <ds@schleef.org>
8360
8361         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
8362         * gst/gstobject.h:
8363         * gst/gstparse.h:
8364         * gst/gsttrace.h:
8365         * gst/gstxml.h:
8366
8367 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8368
8369         * gst/gstpad.c: (gst_pad_check_schedulers),
8370         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
8371         (gst_pad_link_prepare):
8372           revert until testsuite is fixed
8373
8374 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8375
8376         * testsuite/Makefile.am:
8377         * testsuite/caps/filtercaps.c: (main):
8378         * testsuite/clock/clock1.c: (main):
8379         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
8380           fix some more tests
8381
8382 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8383
8384         * testsuite/cleanup/cleanup1.c: (create_pipeline):
8385         * testsuite/cleanup/cleanup2.c: (create_pipeline):
8386         * testsuite/cleanup/cleanup4.c: (main):
8387           fix testsuite
8388
8389 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8390
8391         * libs/gst/control/control.c:
8392         * libs/gst/control/dparam.c:
8393         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
8394         * libs/gst/control/dparammanager.c:
8395         * libs/gst/control/dparammanager.h:
8396         * testsuite/dynparams/Makefile.am:
8397         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
8398         (gst_dptest_change_state), (gst_dptest_chain), (main):
8399           fix testcase for dparams
8400           add debugging category
8401
8402 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8403
8404         * testsuite/Rules:
8405           change path
8406
8407 2004-07-02  Benjamin Otte  <otte@gnome.org>
8408
8409         * tests/.cvsignore:
8410         * tests/Makefile.am:
8411         * tests/mass_elements.c: (gst_get_current_time), (main):
8412           add simple benchmark to test various speeds of fakesrc ! identity !
8413           identity ! ... ! fakesink.
8414           Usage: mass_elements [num_identities] [num_buffers]
8415           If not specified they default to 1000.
8416
8417 2004-07-02  Benjamin Otte  <otte@gnome.org>
8418
8419         * gst/gstpad.c: (gst_pad_check_schedulers),
8420         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
8421         (gst_pad_link_prepare):
8422           check that pads that get linked belong to the same manager. The old
8423           code allowed linking elements before putting them into bins, so it
8424           worked to link them and then put them in different threads, which
8425           lead to weird behaviour.
8426           Since this effectively disallows linking elements before putting
8427           them in a bin, some applications might not work after this and error
8428           out. If these applications are too critical, we might need to revert
8429           that patch. Please test this before the next release...
8430
8431 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8432
8433         * gst/gstpad.c: (gst_pad_get_caps):
8434           throw an error if the getcaps function does not return a subset of
8435           the template caps.
8436         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
8437           make disconts without position info an error in debugging
8438         * tests/spidey_bench.c: (handoff), (main):
8439           don't count first try when averaging
8440
8441 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8442
8443         * gst/gstplugin.c: (gst_plugin_load_file):
8444           figure out problem with dynamic test
8445
8446 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8447
8448         * docs/gst/Makefile.am:
8449           fix docs build
8450
8451 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8452
8453         * po/POTFILES.in:
8454         * po/af.po:
8455         * po/az.po:
8456         * po/en_GB.po:
8457         * po/fr.po:
8458         * po/nl.po:
8459         * po/sr.po:
8460         * po/sv.po:
8461         * po/tr.po:
8462         * po/uk.po:
8463         * tools/gst-register.c: (plugin_added_func), (main):
8464           i18n-ize -register, fix plural
8465
8466 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8467
8468         * gst/elements/gstidentity.c: (gst_identity_class_init),
8469         (gst_identity_init), (gst_identity_chain),
8470         (gst_identity_set_property), (gst_identity_get_property):
8471         * gst/elements/gstidentity.h:
8472           check for perfect stream
8473
8474 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8475
8476         * gst/elements/gstidentity.c: (gst_identity_chain):
8477           print offset_end
8478
8479 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8480
8481         * docs/gst/Makefile.am:
8482         * docs/gst/gstreamer-docs.sgml:
8483           doc fixes
8484
8485 2004-06-24  David Schleef  <ds@schleef.org>
8486
8487         * autogen.sh:  Remove call to env, since the buildbot isn't
8488         broken anymore.
8489
8490 2004-06-24  Wim Taymans  <wim@fluendo.com>
8491
8492         * gst/elements/Makefile.am:
8493         * gst/elements/gstelements.c:
8494         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
8495         (gst_multifdsink_class_init), (gst_multifdsink_init),
8496         (gst_multifdsink_add), (gst_multifdsink_remove),
8497         (gst_multifdsink_clear), (gst_multifdsink_chain),
8498         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
8499         * gst/elements/gstmultifdsink.h:
8500         Added an element that writes to multiple filedescriptors at once.
8501
8502 2004-06-24  Benjamin Otte  <otte@gnome.org>
8503
8504         * gst/parse/grammar.y:
8505           don't try to link elements before they have been added to bins
8506
8507 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8508
8509         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
8510         (gst_file_pad_get_length):
8511         * libs/gst/bytestream/filepad.h:
8512           add 2 new functions
8513
8514 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8515
8516         * docs/gst/gstreamer-sections.txt:
8517         remove from docs, the define that Benjamin removed from gstelement.h
8518
8519 2004-06-22  Benjamin Otte  <otte@gnome.org>
8520
8521         * gst/gstelement.h:
8522           remove define that referenced a nonexisting GstElement struct member
8523
8524 2004-06-20  Benjamin Otte  <otte@gnome.org>
8525
8526         * gst/gstdata.c: (gst_data_is_writable):
8527           whoops, return values were wrong, so writable data was marked as
8528           non-writable and vice versa. (fixes #143953, spotted by Francis
8529           Labonte)
8530           Shows how rarely we need to copy data ;)
8531
8532 2004-06-20  Benjamin Otte  <otte@gnome.org>
8533
8534         * testsuite/schedulers/.cvsignore:
8535         * testsuite/schedulers/Makefile.am:
8536         * testsuite/schedulers/143777-2.c: (main):
8537           add test for opt breakage in bug #143777
8538
8539 2004-06-20  Benjamin Otte  <otte@gnome.org>
8540
8541         * gst/gstpad.c: (gst_pad_call_chain_function):
8542           check for if we were unlinked while inside the chainfunction (fixes
8543           entrygthread having issues with #143777)
8544         * testsuite/schedulers/143777.c: (main):
8545         * testsuite/schedulers/Makefile.am:
8546           add a test for that fix
8547
8548 2004-06-20  Benjamin Otte  <otte@gnome.org>
8549
8550         * gst/gstvalue.c: (gst_value_set_int_range):
8551           test that start is smaller then end
8552         * libs/gst/bytestream/Makefile.am:
8553         * libs/gst/bytestream/filepad.c: 
8554         * libs/gst/bytestream/filepad.h:
8555           add GstFilePad - a pad that behaves like a FILE*
8556         * testsuite/bytestream/.cvsignore:
8557         * testsuite/bytestream/Makefile.am:
8558         * testsuite/bytestream/filepadsink.c: 
8559           test for the GstFilePad
8560
8561 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8562
8563         * gst/elements/gstidentity.c: (gst_identity_class_init),
8564         (gst_identity_init), (gst_identity_set_clock),
8565         (gst_identity_chain), (gst_identity_set_property),
8566         (gst_identity_get_property):
8567         * gst/elements/gstidentity.h:
8568         * gst/gstclock.c: (gst_clock_id_wait):
8569           add a "sync" property to sync to the clock
8570
8571 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8572
8573         * gst/gstelementfactory.c: (gst_element_factory_create):
8574           make the freakin "elementfactory bla has no type" message more
8575           useful. So we actually can do something when someone shows up
8576           complaining about it.
8577
8578 2004-06-15  Johan Dahlin  <johan@gnome.org>
8579
8580         * tools/gst-inspect.c (main): Fallback to plugin if no element is
8581         found. This matches the old behavior better. Thanks to Thomas for
8582         pointing out.
8583
8584 2004-06-14  David Schleef  <ds@schleef.org>
8585
8586         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
8587         -fomit-frame-pointer.  Appears to generate correct code in
8588         other cases as well.
8589
8590 2004-06-14  Johan Dahlin  <johan@gnome.org>
8591
8592         * tools/gst-inspect.c (main): Add two new command line options: -a
8593         to print all elements and -n to print the name on each line. Also
8594         fix some error reporting.
8595         (main): Simplify, remove -n and always print names if -a is specified
8596
8597 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
8598
8599         * win32/gstconfig.h:
8600         * win32/GSTreamer.vcproj:
8601         * win32/Makefile:
8602         * gst/gstconfig.h.in:
8603         * gst/gst.h:
8604         * gst/gstbin.h:
8605         * gst/gstelement.h:
8606         * gst/gstevent.h:
8607         * gst/gstobject.h:
8608         * gst/gstpad.h:
8609         * docs/gst/gstreamer-sections.txt:
8610         * docs/gst/tmpl/gstconfig.sgml:
8611           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
8612
8613 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8614         * docs/gst/gstreamer-sections.txt:
8615         * docs/gst/tmpl/gstconfig.sgml:
8616         Add the GSTREAMER_EXPORT macro to the docs
8617
8618 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8619
8620         * tools/gst-compprep.c: (handle_xmlerror), (main):
8621         Add a check for the version that introduced SetStructuredError to fix
8622         the build on FC1
8623
8624 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8625
8626         * win32/msvc71.sln:
8627         * win32/testsuite/:
8628           prepare to compile the testsuite with MSVC
8629
8630 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8631
8632         * docs/manual/win32.xml:
8633           attempt to transform the Win32 README into an XML doc
8634
8635 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8636
8637         * gst/gst.c:
8638         * gst/gstbin.*:
8639         * gst/config.h.in:
8640         * gst/gstelement.*:
8641         * gst/gstevent.h:
8642         * gst/gstobject.*:
8643         * gst/gstpad.h:
8644         * tools/gst-register.c:
8645         * win32/gstreamer.def:
8646           extern symbols are now exported for the Windows DLL
8647
8648 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8649
8650         * gst/gstinfo.h:
8651           fix a problem to enable/disable DEBUG under MSVC
8652
8653 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8654
8655         * win32/:
8656           enable more debug code in DEBUG build
8657
8658 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8659
8660         * win32/config.h:
8661         * gst/gst-i18n-app.h:
8662           enable NLS under Windows
8663
8664 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
8665         * tools/gst-compprep.c: (handle_xmlerror), (main):
8666           Make an error that baffled me a bit clearer
8667
8668 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8669
8670         * gst/gstqueue.c:
8671           don't use g_queue_get_length () because it's 2.4, use ->length
8672
8673 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
8674
8675         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
8676
8677         * tools/gst-inspect.c: (print_signal_info):
8678           don't free random data twice. (fixes #144185)
8679
8680 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
8681
8682         * gst/gstqueue.c:
8683         * gst/gstqueue.h:
8684           fix removing from the wrong queue on event timeout
8685           fix disposing of the event queue by casting correctly
8686           add mutexes for handling the event queue
8687           someone was sleeping when fixing queue last time around :)
8688
8689 2004-06-10  Johan Dahlin  <johan@gnome.org>
8690
8691         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
8692         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
8693
8694 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8695
8696         * docs/random/gdp:
8697         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
8698         * libs/gst/dataprotocol/dataprotocol.c:
8699         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8700         (gst_dp_buffer_from_header):
8701         * libs/gst/dataprotocol/dataprotocol.h:
8702         * libs/gst/dataprotocol/dp-private.h:
8703           rev version to 0.1, add buffer flags and copy them
8704
8705 2004-06-09  Johan Dahlin  <johan@gnome.org>
8706
8707         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
8708         the flags from the buffer we're copying.
8709
8710 2004-06-09  Wim Taymans  <wim@fluendo.com>
8711
8712         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
8713         * gst/elements/gstidentity.c: (gst_identity_init),
8714         (gst_identity_chain):
8715         Print more buffer info in fakesink.
8716         Make identity output similar to fakesink.
8717
8718 2004-06-07  Daniel Gazard  <dany42@free.fr>
8719
8720         reviewed by Benjamin Otte  <otte@gnome.org>
8721
8722         * configure.ac:
8723           fix cross compiling not working. (fixes #143741)
8724
8725 2004-06-07  Benjamin Otte  <otte@gnome.org>
8726
8727         * gst/gstelement.c: (gst_element_set_time_delay):
8728           add failure check
8729         * gst/gstinfo.h:
8730           put brackets around macro arguments of GST_TIME_ARGS, add note to
8731           move it to correct header in 0.9
8732
8733 2004-06-07  Benjamin Otte  <otte@gnome.org>
8734
8735         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
8736         (gst_file_index_load), (_file_index_id_save_entries),
8737         (gst_file_index_commit), (gst_file_index_add_association),
8738         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
8739         (gst_file_index_plugin_init):
8740           make debugging use a default category
8741
8742 2004-06-06  David Moore  <dcm@acm.org>
8743
8744         reviewed by Benjamin Otte  <otte@gnome.org>
8745
8746         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
8747         (gst_fdsrc_change_state):
8748           reset offset counter when going READY => PAUSED. (fixes #142903)
8749
8750 2004-06-06  ed@catmur.co.uk
8751
8752         reviewed by Benjamin Otte  <otte@gnome.org>
8753
8754         * gst/registries/gstxmlregistry.c:
8755         (gst_xml_registry_rebuild_recurse):
8756           don't rely on g_dir_open to figure out if a file is a directory, use
8757           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
8758           directories. (fixes #142850)
8759
8760 2004-06-06  Benjamin Otte  <otte@gnome.org>
8761
8762         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
8763           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
8764         * libs/gst/bytestream/adapter.c:
8765         * libs/gst/bytestream/adapter.h:
8766           fix copyright in header and typo in debugging category name
8767
8768 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8769
8770         * configure.ac:
8771           bump nano to cvs
8772
8773 === release 0.8.3 ===
8774
8775 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8776
8777         * configure.ac:
8778           update libtool versioning
8779           do a new release
8780         * docs/gst/tmpl/gstelement.sgml:
8781         * docs/gst/tmpl/gsttypes.sgml:
8782         * gst/gstinfo.c: (_gst_debug_init):
8783           put back GST_CAT_DATAFLOW to fix API breakage
8784
8785 2004-06-04  David Schleef  <ds@schleef.org>
8786
8787         * autogen.sh: Add a temporary 'env' to test buildbot problems.
8788
8789 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8790
8791         * configure.ac:
8792           bump nano to cvs
8793
8794 === release 0.8.2 ===
8795
8796 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8797
8798         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
8799           check GST_DEBUG environment variable which is parsed the same way
8800           as --gst-debug=
8801
8802 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8803
8804         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
8805                             gstmd5sink.c gstshaper.c gsttee.c
8806                             gsttypefindelement.c
8807         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
8808
8809           - removing trailing commas at end of enums
8810             it is correct C99 code but C90 compilers would complain
8811             (AIX, Forte, ...)
8812             ('should' fix #143290, at least partially)
8813
8814 2004-05-27  Wim Taymans  <wim@fluendo.com>
8815
8816         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
8817         (chain_group_set_enabled), (create_group), (add_to_group),
8818         (merge_groups), (setup_group_scheduler), (group_elements),
8819         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
8820         Don't try to follow the pad connections with other groups
8821         when a loop based element is added to the scheduler because
8822         the bin will inform the scheduler about the pad links a little
8823         later.
8824
8825 2004-05-27  Wim Taymans  <wim@fluendo.com>
8826
8827         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8828         (remove_from_chain), (chain_group_set_enabled),
8829         (setup_group_scheduler), (group_element_set_enabled),
8830         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
8831         (gst_opt_scheduler_show):
8832         Elements without a group can do a state change as well, just wait
8833         with the setup of the scheduling function when it is added to a
8834         chain.
8835
8836 2004-05-27  Wim Taymans  <wim@fluendo.com>
8837
8838         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8839         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
8840         (merge_groups), (setup_group_scheduler),
8841         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
8842         (gst_opt_scheduler_show):
8843         Fixes to maintain internal consistency of the scheduler data
8844         structures. 
8845          - adding an enabled group to a chain should increment the
8846            number of enabled elements in that chain.
8847          - removing an enabled group from a chain could disable the
8848            chain.
8849          - removing a disabled group from a chain could enable the
8850            chain.
8851          - add g_assert when internal inconsistency is detected.
8852          - adding an element to a group could increase the number of
8853            links this group has with other groups.
8854          - merging two groups also merges the chains.
8855          - also show group links in the _show method.
8856            
8857
8858 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8859
8860         * gst/gstcaps.c: (gst_caps_structure_simplify):
8861           don't print error messages when there is no error
8862         * gst/gstvalue.c: (gst_value_compare_int_range):
8863           compare the second value, too
8864         * testsuite/caps/Makefile.am:
8865         * testsuite/caps/random.c: (assert_on_error), (main):
8866           add tests to make sure the two things above are checked for
8867
8868 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8869
8870         * configure.ac:
8871         * libs/gst/dataprotocol/Makefile.am:
8872         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
8873         * libs/gst/dataprotocol/dataprotocol.h:
8874           wrap header in GST_ENABLE_NEW.  make code use it
8875
8876 2004-05-23  Johan Dahlin  <johan@gnome.org>
8877
8878         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
8879         so verbose and print GstElement signal names all the time.
8880
8881 2004-05-22  David Schleef  <ds@schleef.org>
8882
8883         * gst/registries/gstxmlregistry.c:
8884         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
8885         (bug #142957)
8886
8887 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
8888
8889         * configure.ac:
8890           scrub cflags for glib2 so gcc doesn't complain when glib is in
8891           /usr/local
8892
8893 2004-05-21  Johan Dahlin  <johan@gnome.org>
8894
8895         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
8896         __GNUC__, patch from Brian Cameron, fixes bug #142804
8897
8898 2004-05-20  David Schleef  <ds@schleef.org>
8899
8900         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
8901         comparison code.  (bug #142819)
8902
8903 2004-05-20  Wim Taymans  <wim@fluendo.com>
8904
8905         * gst/gstbuffer.c: (gst_buffer_default_copy):
8906         * gst/gstbuffer.h:
8907         Added Comment to a flag.
8908         copy relevant flags in _buffer_copy.
8909
8910 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8911
8912         reviewed by: Wim Taymans <wim at fluendo dot com>
8913
8914         * gst/gstbuffer.h:
8915           add GST_BUFFER_IN_CAPS buffer flag
8916         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8917         (gst_structure_parse_any_list), (gst_structure_parse_list),
8918         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
8919         * gst/gstvalue.c: (gst_value_serialize_any_list),
8920         (gst_value_transform_any_list_string),
8921         (gst_value_list_prepend_value), (gst_value_list_append_value),
8922         (gst_value_list_get_size), (gst_value_list_get_value),
8923         (gst_value_transform_list_string),
8924         (gst_value_transform_fixed_list_string),
8925         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
8926         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
8927         (_gst_value_initialize):
8928         * gst/gstvalue.h:
8929           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
8930           < , > as a format.
8931         * testsuite/caps/string-conversions.c: (main):
8932           add regression tests for < >
8933
8934 2004-05-20  Johan Dahlin  <johan@gnome.org>
8935
8936         * docs/gst/Makefile.am (all-local): Re-add
8937
8938 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8939
8940         * docs/gst/Makefile.am:
8941         * docs/gst/gstreamer-docs.sgml:
8942         * docs/libs/Makefile.am:
8943         * docs/libs/gstreamer-libs-docs.sgml:
8944           fix distcheck issues
8945
8946 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8947
8948         * libs/gst/dataprotocol/Makefile.am:
8949           add to autotest
8950
8951 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8952
8953         * libs/gst/dataprotocol/Makefile.am:
8954         * libs/gst/dataprotocol/dataprotocol.c:
8955         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8956         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
8957         * libs/gst/dataprotocol/dp-private.h:
8958           use GST macros to read/write fixed length ints
8959           add some more asserts
8960
8961 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8962
8963         * docs/libs/gstreamer-libs-docs.sgml:
8964         * docs/libs/gstreamer-libs-sections.txt:
8965           remove idct and putbits
8966         * configure.ac:
8967         * docs/libs/tmpl/gstdataprotocol.sgml:
8968         * libs/gst/Makefile.am:
8969         * libs/gst/dataprotocol/Makefile.am:
8970         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
8971         (buffer_test), (caps_test), (event_test), (main):
8972         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
8973         (gst_dp_dump_byte_array), (gst_dp_init),
8974         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
8975         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8976         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
8977         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
8978         (gst_dp_validate_header), (gst_dp_validate_payload),
8979         (gst_dp_validate_packet), (plugin_init):
8980         * libs/gst/dataprotocol/dataprotocol.h:
8981         * libs/gst/dataprotocol/dp-private.h:
8982           add dataprotocol
8983
8984 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8985
8986         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
8987           fix int variable deserialization and add a helper so we can actually
8988           debug this.
8989
8990 2004-05-18  David Schleef  <ds@schleef.org>
8991
8992         * testsuite/debug/commandline.c: (main): Call ./commandline, not
8993           argv[0].  Calling yourself is probably not the best way to
8994           construct a test like this, btw.
8995
8996 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8997
8998         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
8999           don't claim to be more intelligent than a scheduler when the
9000           scheduler claims the pipeline is stopped
9001         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
9002         (safe_cothread_destroy),
9003         (gst_entry_scheduler_remove_all_cothreads),
9004         (gst_entry_scheduler_reset), (_remove_cothread),
9005         (gst_entry_scheduler_state_transition):
9006           hold off cothread destruction if we're not in main cothread
9007         * configure.ac:
9008         * testsuite/Makefile.am:
9009           add new test dir
9010         * testsuite/schedulers/.cvsignore:
9011         * testsuite/schedulers/Makefile.am:
9012           add tests
9013         * testsuite/schedulers/relink.c: (cb_handoff), (main):
9014           check relinking and adding/removing elements from a running pipeline
9015         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
9016           check unlinking in a running pipeline
9017         * testsuite/schedulers/unref.c: (cb_handoff), (main):
9018           check unreffing a running pipeline
9019         * testsuite/schedulers/useless_iteration.c: (main):
9020           check iterating a pipeline that contains running threads works
9021
9022 2004-05-18  David Schleef  <ds@schleef.org>
9023
9024         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
9025           is false.
9026
9027 2004-05-18  Wim Taymans  <wim@fluendo.com>
9028
9029         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
9030         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
9031         Fixed an error introduced with patch for 1.63. When setting
9032         a get based element as the entry point in a group, make sure
9033         to mark the group as GET based.
9034
9035 2004-05-18  Wim Taymans  <wim@fluendo.com>
9036
9037         * gst/schedulers/gstoptimalscheduler.c: (create_group),
9038         (setup_group_scheduler), (loop_group_schedule_function),
9039         (gst_opt_scheduler_pad_link):
9040         Added some more debug info and fixed a bug where the group
9041         type was set to LOOP but it was in fact unknown.
9042
9043 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9044
9045         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
9046           make resetting scheduler work twice in a row
9047
9048 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9049
9050         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
9051         (CREATE_USERIALIZATION), (_gst_value_initialize),
9052         (gst_value_compare_float), (gst_value_serialize_float),
9053         (gst_value_deserialize_float), (gst_value_compare_enum),
9054         (gst_value_serialize_enum), (gst_value_deserialize_enum):
9055           add serialization and comparison functions for long, int64, enum and
9056           float values
9057         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
9058           use best serialization function in type hierarchy instead of only a
9059           matching one. This is required for enums to work.
9060         * gst/parse/grammar.y:
9061           use gst_caps_deserialize
9062         * testsuite/parse/Makefile.am:
9063           parse1 now works
9064         * testsuite/parse/parse1.c: (main):
9065           remove aggregator check, aggregator is broken, this test works now
9066           but fails because of bug #138012
9067         * testsuite/parse/parse2.c: (main):
9068           s/xvideosink/xvimagesink - this test looks a lot like we should
9069           disable it
9070
9071 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9072
9073         * gst/gstelement.c: (gst_element_class_init):
9074           whoops, store the signal id correctly
9075         * gst/schedulers/gstbasicscheduler.c:
9076         (gst_basic_scheduler_chain_wrapper):
9077           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
9078           chain function isn't linked
9079
9080 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
9081         * configure.ac:
9082         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
9083         support until we decide where the flags should be used
9084         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
9085         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
9086         * gst/gstpad.c: (gst_pad_link_call_link_functions):
9087         Output refused caps in the debug info
9088
9089 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9090
9091         * gst/elements/gstidentity.c: (gst_identity_chain):
9092           add duration debug
9093         * gst/gstinfo.c: (gst_debug_log_default):
9094           add timestamp
9095
9096 2004-05-13  Benjamin Otte  <otte@gnome.org>
9097
9098         * gst/gstpipeline.c: (gst_pipeline_dispose),
9099         (gst_pipeline_change_state):
9100           call gst_scheduler_reset on dispose (fixes #141416)
9101
9102 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9103
9104         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
9105           compute mapsize correctly
9106         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
9107           use correct datatypes when calling a varargs function
9108         * gst/elements/gsttypefindelement.c: (stop_typefinding):
9109           push a DISCONT event as first thing
9110         * gst/gst_private.h:
9111         * gst/gstinfo.c: (_gst_debug_init):
9112           remove GST_DATAFLOW debugging category
9113         * gst/gstbin.c: (gst_bin_iterate):
9114           use GST_SCHEDULING category
9115         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
9116         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
9117         (gst_pad_call_get_function):
9118           add GST_DATAFLOW to easily track flow of buffers or events.
9119         * gst/gstqueue.c: (gst_queue_get_type),
9120         (gst_queue_handle_pending_events), (gst_queue_chain),
9121         (gst_queue_get), (gst_queue_handle_src_event):
9122           use own static debugging category GST_DATAFLOW for dataflow,
9123           use DEBUG category for showing which path events go, use LOG
9124           category for buffers.
9125
9126 2004-05-10  David Schleef  <ds@schleef.org>
9127
9128         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
9129
9130 2004-05-10  David Schleef  <ds@schleef.org>
9131
9132         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
9133         symbols, because otherwise we don't know what they are.  Thanks,
9134         the GStreamer team.
9135         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
9136
9137 2004-05-10  David Schleef  <ds@schleef.org>
9138
9139         (from Steve Lhomme)
9140         * win32/Makefile: When using make clean the MS Visual Studio makefiles
9141         are deleted.  Fix.
9142         * win32/Makefile.inspect:
9143         * win32/Makefile.launch:
9144         * win32/Makefile.register:
9145
9146 2004-05-10  David Schleef  <ds@schleef.org>
9147
9148         * gst/gstinfo.h: Add missing inline function.
9149         * gst/gsttrace.c: add include
9150         * gst/parse/grammar.y: remove unused code
9151         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
9152         more portable.
9153         * tools/gst-register.c: wrap unistd.h
9154         
9155         More additions/fixes from Steve for the MSVC build.
9156         * win32/GStreamer.vcproj:
9157         * win32/Makefile:
9158         * win32/Makefile.inspect:
9159         * win32/Makefile.launch:
9160         * win32/Makefile.register:
9161         * win32/README.txt:
9162         * win32/gst-inspect.vcproj:
9163         * win32/gst-launch.vcproj:
9164         * win32/gst-register.vcproj:
9165         * win32/gstbytestream.def:
9166         * win32/gstbytestream.vcproj:
9167         * win32/gstconfig.h:
9168         * win32/gstelements.def:
9169         * win32/gstelements.vcproj:
9170         * win32/gstenumtypes.c:
9171         * win32/gstenumtypes.h:
9172         * win32/gstoptimalscheduler.def:
9173         * win32/gstoptimalscheduler.vcproj:
9174         * win32/gstreamer.def:
9175         * win32/gstspider.def:
9176         * win32/gstspider.vcproj:
9177         * win32/gstversion.h:
9178         * win32/msvc71.sln:
9179
9180 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9181
9182         * gst/gstelement.c: (gst_element_class_init),
9183         (gst_element_no_more_pads):
9184         * gst/gstelement.h:
9185           add gst_element_no_more_pads and the "no-more-pads" signal
9186
9187 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9188
9189         * gst/gstregistry.c: (gst_registry_add_plugin):
9190           refuse to add plugins when a plugin with same name is already
9191           registered. Fixes a bunch of "How to remove plugins?" issues.
9192           May lead to other problems though, let's test
9193
9194 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9195
9196         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
9197         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
9198         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
9199
9200 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9201
9202         * tests/Makefile.am: fix am16 issue
9203
9204 2004-05-09  Benjamin Otte  <otte@gnome.org>
9205
9206         * libs/gst/bytestream/Makefile.am:
9207           we should indeed add .c files to makefiles or they won't be built
9208           (d'oh)
9209
9210 2004-05-08  Benjamin Otte  <otte@gnome.org>
9211
9212         * gst/gstpad.c: (gst_pad_proxy_fixate):
9213           really reduce the set of caps
9214
9215 2004-05-08  Benjamin Otte  <otte@gnome.org>
9216
9217         * tests/Makefile.am:
9218         * tests/spidey_bench.c: (handoff), (main):
9219           add benchmark to test how long spider needs to create a pipeline
9220
9221 2004-05-08  Benjamin Otte  <otte@gnome.org>
9222
9223         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
9224           mark links as unengaged when unnegotiating instead of deactivating.
9225           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
9226
9227 2004-05-08  Benjamin Otte  <otte@gnome.org>
9228
9229         * docs/manual/helloworld.xml:
9230           s/audiosink/osssink (patch by Patrick Guimond)
9231
9232 2004-05-07  David Schleef  <ds@schleef.org>
9233
9234         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
9235         since it contains important stuff.
9236
9237 2004-05-07  David Schleef  <ds@schleef.org>
9238
9239         * testsuite/caps/caps.c: (test3), (main): A check for appending
9240         ANY caps.
9241
9242 2004-05-07  David Schleef  <ds@schleef.org>
9243
9244         * common/m4/as-compiler-flag.m4: Properly quote arguments,
9245         which may contain commas.  Fixes detection of -Wa,-mregnames
9246
9247 2004-05-06  David Schleef  <ds@schleef.org>
9248
9249         Changes to handle compilers that don't have variadic macro
9250         support.  In particular, glib headers define some inlines
9251         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
9252         builds.
9253         * gst/Makefile.am:
9254         * gst/cothreads.c:
9255         * gst/elements/gstfdsink.c:
9256         * gst/elements/gstfdsrc.c:
9257         * gst/elements/gstfilesink.c:
9258         * gst/elements/gstfilesrc.c:
9259         * gst/gst_private.h:
9260         * gst/gstatomic.c:
9261         * gst/gstcaps.c: (gst_caps_append):
9262         * gst/gstcpu.c: (gst_cpuid_i386):
9263         * gst/gstelement.c:
9264         * gst/gsterror.c:
9265         * gst/gstfilter.c:
9266         * gst/gstinfo.h:
9267         * gst/gstprobe.c:
9268         * gst/gstquery.c:
9269         * gst/gstregistry.c:
9270         * gst/gststructure.c:
9271         * gst/gsttaginterface.c:
9272         * gst/gsttrace.c: (gst_trace_new):
9273         * gst/gsttrashstack.c:
9274         * gst/gsturi.c:
9275         * gst/gstvalue.c:
9276         * gst/parse/grammar.y:
9277         * gst/parse/parse.l:
9278         * tools/gst-inspect.c: (main):
9279         * tools/gst-launch.c: (main):
9280         * tools/gst-xmlinspect.c: (PUT_STRING):
9281
9282 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9283
9284         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9285         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9286         * gst/elements/gstfilesrc.h:
9287           send NEW_MEDIA events correctly
9288         * gst/elements/gsttypefindelement.c: (start_typefinding),
9289         (gst_type_find_element_handle_event):
9290           restart typefinding when we get a NEW_MEDIA event
9291         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
9292         (gst_bin_dispose):
9293           don't die when someone removes elements in callbacks
9294         * gst/gstelement.c: (gst_element_change_state):
9295           improve debugging
9296         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
9297           we need a NEW_MEDIA event to engage a link
9298         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
9299           don't g_print debugging stuff
9300         * testsuite/caps/simplify.c: (check_caps):
9301
9302 2004-05-04  Benjamin Otte  <otte@gnome.org>
9303
9304         * gst/parse/grammar.y:
9305           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
9306
9307 2004-05-04  Benjamin Otte  <otte@gnome.org>
9308
9309         * testsuite/caps/renegotiate.c: (main):
9310           improve output in error case
9311
9312 2004-05-04  Benjamin Otte  <otte@gnome.org>
9313
9314         * gst/parse/grammar.y:
9315           fix assert to not trigger when there's no error argument
9316         * gst/parse/parse.l:
9317           fix definition of caps to allow more than two structures
9318         * testsuite/caps/Makefile.am:
9319         * testsuite/caps/renegotiate.c: (main):
9320           it's sinesrc and works in that case
9321
9322 2004-05-04  Wim Taymans  <wim@fluendo.com>
9323
9324         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
9325         (group_dec_link), (gst_opt_scheduler_pad_unlink):
9326         when removing an element from a group, we always need to
9327         decrement the link count that this group had with other 
9328         groups through the element.
9329         added an extra assert to catch inconsistencies when decrementing
9330         the link count.
9331
9332 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9333
9334         * configure.ac:
9335         * docs/gst/Makefile.am:
9336         * docs/gst/gstreamer-sections.txt:
9337         * docs/gst/tmpl/gstcompat.sgml:
9338         * examples/appreader/Makefile.am:
9339         * examples/cutter/Makefile.am:
9340         * examples/events/Makefile.am:
9341         * examples/helloworld/Makefile.am:
9342         * examples/helloworld2/Makefile.am:
9343         * examples/launch/Makefile.am:
9344         * examples/manual/Makefile.am:
9345         * examples/mixer/Makefile.am:
9346         * examples/pingpong/Makefile.am:
9347         * examples/plugins/Makefile.am:
9348         * examples/queue/Makefile.am:
9349         * examples/queue2/Makefile.am:
9350         * examples/queue3/Makefile.am:
9351         * examples/queue4/Makefile.am:
9352         * examples/retag/Makefile.am:
9353         * examples/thread/Makefile.am:
9354         * examples/typefind/Makefile.am:
9355         * examples/xml/Makefile.am:
9356         * gst/Makefile.am:
9357         * gst/autoplug/Makefile.am:
9358         * gst/elements/Makefile.am:
9359         * gst/gstcompat.h:
9360         * gst/indexers/Makefile.am:
9361         * gst/parse/Makefile.am:
9362         * gst/registries/Makefile.am:
9363         * gst/schedulers/Makefile.am:
9364         * libs/gst/bytestream/Makefile.am:
9365         * libs/gst/control/Makefile.am:
9366         * libs/gst/getbits/Makefile.am:
9367         * po/af.po:
9368         * po/az.po:
9369         * po/en_GB.po:
9370         * po/fr.po:
9371         * po/nl.po:
9372         * po/sr.po:
9373         * po/sv.po:
9374         * po/tr.po:
9375         * po/uk.po:
9376         * tests/Makefile.am:
9377         * tests/bufspeed/Makefile.am:
9378         * tests/instantiate/Makefile.am:
9379         * tests/memchunk/Makefile.am:
9380         * tests/muxing/Makefile.am:
9381         * tests/negotiation/Makefile.am:
9382         * tests/probes/Makefile.am:
9383         * tests/sched/Makefile.am:
9384         * tests/seeking/Makefile.am:
9385         * tests/threadstate/Makefile.am:
9386         * testsuite/caps/Makefile.am:
9387         * testsuite/cleanup/Makefile.am:
9388         * testsuite/dlopen/Makefile.am:
9389         * testsuite/dynparams/Makefile.am:
9390         * testsuite/plugin/Makefile.am:
9391         * testsuite/states/Makefile.am:
9392         * tools/Makefile.am:
9393           reorganize compile/link flags to be consistent
9394           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
9395
9396 2004-05-04  David Schleef  <ds@schleef.org>
9397
9398         The "once more, with feeling" check-in.
9399         * testsuite/caps/Makefile.am: dist caps_strings
9400         * testsuite/caps/renegotiate.c: (main): This test triggers a
9401           segfault in the core.  Marking as failing.
9402
9403 2004-05-03  David Schleef  <ds@schleef.org>
9404
9405         * testsuite/caps/deserialize.c: (main): Fix problems noticed
9406           by the build bots.
9407         * testsuite/caps/renegotiate.c: (main): Same.
9408
9409 2004-05-03  David Schleef  <ds@schleef.org>
9410
9411         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
9412
9413 2004-05-03  David Schleef  <ds@schleef.org>
9414
9415         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
9416           variable to find our source file.
9417
9418 2004-05-03  David Schleef  <ds@schleef.org>
9419
9420         * configure.ac:  Link plugins with libgstreamer and dependent
9421           libraries
9422         * testsuite/caps/Makefile.am:
9423         * testsuite/caps/caps_strings:
9424         * testsuite/caps/deserialize.c: (main): Add a little test to slog
9425           through a file of caps strings and test each one
9426
9427 2004-05-04  Benjamin Otte  <otte@gnome.org>
9428
9429         * libs/gst/bytestream/Makefile.am:
9430         * libs/gst/bytestream/adapter.c: 
9431         * libs/gst/bytestream/adapter.h:
9432           add GstAdapter, similar to bytestream, but doesn't require ugly event
9433           handling or uglier loopbased elements
9434
9435 2004-05-03  David Schleef  <ds@schleef.org>
9436
9437         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
9438         * testsuite/caps/erathostenes.c:
9439         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
9440
9441 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9442
9443         * docs/pwg/pwg.xml:
9444           remove hardcoded stylesheet path (duh)
9445         * docs/random/release:
9446         * docs/gst/gstreamer-sections.txt:
9447         * gst/Makefile.am:
9448         * gst/gst.h:
9449         * gst/gst_private.h:
9450         * gst/gstcaps.c:
9451         * gst/gstevent.c:
9452         * gst/gstformat.c:
9453         * gst/gstinfo.c:
9454         * gst/gstinfo.h:
9455         * gst/gstinterface.c:
9456         * gst/gstmemchunk.c:
9457         * gst/gstprobe.c:
9458         * gst/gstquery.c:
9459         * gst/gstregistry.c:
9460         * gst/gstregistrypool.c:
9461         * gst/gststructure.c:
9462         * gst/gsttaginterface.c:
9463         * gst/gstthread.c:
9464         * gst/gsttrace.c:
9465         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
9466         * gst/gsturi.c:
9467         * gst/gstvalue.c:
9468           deprecate gst_info; remove gstlog.h
9469    
9470
9471 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9472
9473         * Makefile.am:
9474         * po/en_GB.po:
9475         * po/sv.po:
9476         * po/uk.po:
9477           updated translations
9478
9479 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9480
9481         * gst/gstbin.c: (gst_bin_dispose):
9482           better debugging
9483
9484 2004-05-03  Johan Dahlin  <johan@gnome.org>
9485
9486         * gst/schedulers/gstoptimalscheduler.c
9487         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
9488         really is a GstElement. Avoids critical when running gst-launch -v
9489         and a oggdemux/decoding pipeline.
9490
9491 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9492
9493         * docs/gst/tmpl/gstpipeline.sgml :
9494         * docs/manual/elements-api.xml :
9495                 doc fix by Patrick Guimond (Protector) from devel ML
9496                 reviewed by ronald
9497
9498 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9499
9500         * docs/gst/Makefile.am :
9501         * docs/libs/Makefile.am :
9502                 apply a patch from Arwed v. Merkatz so that gtk-doc
9503                 generated docs install (same for .devhelp file)
9504                 (fixes part 1 of #138836)
9505
9506 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9507
9508         * docs/faq/dependencies.xml: typo
9509         * docs/faq/getting.xml :
9510             - fix download URL for new gstreamer site
9511             - hide sf.net download page as latest version aren't there
9512             - fix apt URLs
9513             - fill "get via CVS" paragraph (link to dev page on the site)
9514         * docs/faq/general.xml:
9515             hide status tables as they no more exists
9516             change case on plugins license file to reflect reality
9517         * docs/faq/troubleshooting.xml:
9518             remove the wiki question/answer as there is no more wiki
9519
9520 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9521
9522         * gst/gsterror.h:
9523           include the headers needed for declarations used in this header
9524
9525 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9526
9527         * docs/random/uraeus/gstreamer_and_midi.txt :
9528           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
9529           (fixes #132288)
9530
9531 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
9532
9533         reviewed by Benjamin Otte  <otte@gnome.org>
9534
9535         * gst/schedulers/gthread-cothreads.h:
9536           free allocated data for main cothread, too when destroying context
9537           (fixes #141417)
9538
9539 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9540
9541         * docs/manual/goals.xml : remove duplicated paragraph at end 
9542         of doc page (fixes #141448)
9543
9544 2004-04-29  David Schleef  <ds@schleef.org>
9545
9546         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
9547         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
9548
9549 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9550
9551         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
9552           fix property
9553         * gst/gstcaps.c:
9554           fix doc string
9555         * po/POTFILES.in:
9556           rename typefind source file
9557
9558 2004-04-28  David Schleef  <ds@schleef.org>
9559
9560         Several new files from Steve Lhomme's MSVC patch (bug #141317):
9561         * win32/GStreamer.vcproj:
9562         * win32/Makefile:
9563         * win32/config.h:
9564         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
9565         (_trewinddir), (_ttelldir), (_tseekdir):
9566         * win32/dirent.h:
9567         * win32/gst-inspect.vcproj:
9568         * win32/gst-launch.vcproj:
9569         * win32/gst-register.vcproj:
9570         * win32/gstbytestream.vcproj:
9571         * win32/gstelements.vcproj:
9572         * win32/gstoptimalscheduler.vcproj:
9573         * win32/gstspider.vcproj:
9574         * win32/gtchar.h:
9575         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
9576         * win32/mman.h:
9577         * win32/mman.inl:
9578         * win32/msvc71.sln:
9579
9580 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9581
9582         * gst/gst.c: (init_post):
9583         * gst/gstinfo.c:
9584           remove useless _gst_progname stuff
9585         * tools/gst-inspect.c: (print_field), (print_caps):
9586           improve caps output
9587
9588 2004-04-28  David Schleef  <ds@schleef.org>
9589
9590         Disable parsing of a lot of files that aren't part of the
9591         exported API.  Move corresponding template files to old/,
9592         waiting for removal when they don't contain anything
9593         interesting.
9594         * docs/gst/Makefile.am:
9595         * docs/gst/gstreamer-sections.txt:
9596         * docs/gst/tmpl/cothreads.sgml:
9597         * docs/gst/tmpl/cothreads_compat.sgml:
9598         * docs/gst/tmpl/gettext.sgml:
9599         * docs/gst/tmpl/gobject2gtk.sgml:
9600         * docs/gst/tmpl/grammar.tab.sgml:
9601         * docs/gst/tmpl/gst-i18n-app.sgml:
9602         * docs/gst/tmpl/gst-i18n-lib.sgml:
9603         * docs/gst/tmpl/gst_private.sgml:
9604         * docs/gst/tmpl/gstaggregator.sgml:
9605         * docs/gst/tmpl/gstarch.sgml:
9606         * docs/gst/tmpl/gstatomic_impl.sgml:
9607         * docs/gst/tmpl/gstbufferstore.sgml:
9608         * docs/gst/tmpl/gstdata_private.sgml:
9609         * docs/gst/tmpl/gstdisksink.sgml:
9610         * docs/gst/tmpl/gstdisksrc.sgml:
9611         * docs/gst/tmpl/gstelementfactory.sgml:
9612         * docs/gst/tmpl/gstextratypes.sgml:
9613         * docs/gst/tmpl/gstfakesink.sgml:
9614         * docs/gst/tmpl/gstfakesrc.sgml:
9615         * docs/gst/tmpl/gstfdsink.sgml:
9616         * docs/gst/tmpl/gstfdsrc.sgml:
9617         * docs/gst/tmpl/gstfilesink.sgml:
9618         * docs/gst/tmpl/gstfilesrc.sgml:
9619         * docs/gst/tmpl/gsthttpsrc.sgml:
9620         * docs/gst/tmpl/gstidentity.sgml:
9621         * docs/gst/tmpl/gstindexfactory.sgml:
9622         * docs/gst/tmpl/gstmarshal.sgml:
9623         * docs/gst/tmpl/gstmd5sink.sgml:
9624         * docs/gst/tmpl/gstmultidisksrc.sgml:
9625         * docs/gst/tmpl/gstmultifilesrc.sgml:
9626         * docs/gst/tmpl/gstpadtemplate.sgml:
9627         * docs/gst/tmpl/gstpipefilter.sgml:
9628         * docs/gst/tmpl/gstschedulerfactory.sgml:
9629         * docs/gst/tmpl/gstsearchfuncs.sgml:
9630         * docs/gst/tmpl/gstshaper.sgml:
9631         * docs/gst/tmpl/gstspider.sgml:
9632         * docs/gst/tmpl/gstspideridentity.sgml:
9633         * docs/gst/tmpl/gststatistics.sgml:
9634         * docs/gst/tmpl/gsttee.sgml:
9635         * docs/gst/tmpl/gsttimecache.sgml:
9636         * docs/gst/tmpl/gsttypefind.sgml:
9637         * docs/gst/tmpl/gsttypefindfactory.sgml:
9638         * docs/gst/tmpl/gstxmlregistry.sgml:
9639         * docs/gst/tmpl/gthread-cothreads.sgml:
9640         * docs/gst/tmpl/old/cothreads.sgml:
9641         * docs/gst/tmpl/old/cothreads_compat.sgml:
9642         * docs/gst/tmpl/old/gettext.sgml:
9643         * docs/gst/tmpl/old/gobject2gtk.sgml:
9644         * docs/gst/tmpl/old/grammar.tab.sgml:
9645         * docs/gst/tmpl/old/gst-i18n-app.sgml:
9646         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
9647         * docs/gst/tmpl/old/gst_private.sgml:
9648         * docs/gst/tmpl/old/gstaggregator.sgml:
9649         * docs/gst/tmpl/old/gstarch.sgml:
9650         * docs/gst/tmpl/old/gstatomic_impl.sgml:
9651         * docs/gst/tmpl/old/gstbufferstore.sgml:
9652         * docs/gst/tmpl/old/gstdata_private.sgml:
9653         * docs/gst/tmpl/old/gstdisksink.sgml:
9654         * docs/gst/tmpl/old/gstdisksrc.sgml:
9655         * docs/gst/tmpl/old/gstelementfactory.sgml:
9656         * docs/gst/tmpl/old/gstextratypes.sgml:
9657         * docs/gst/tmpl/old/gstfakesink.sgml:
9658         * docs/gst/tmpl/old/gstfakesrc.sgml:
9659         * docs/gst/tmpl/old/gstfdsink.sgml:
9660         * docs/gst/tmpl/old/gstfdsrc.sgml:
9661         * docs/gst/tmpl/old/gstfilesink.sgml:
9662         * docs/gst/tmpl/old/gstfilesrc.sgml:
9663         * docs/gst/tmpl/old/gsthttpsrc.sgml:
9664         * docs/gst/tmpl/old/gstidentity.sgml:
9665         * docs/gst/tmpl/old/gstindexfactory.sgml:
9666         * docs/gst/tmpl/old/gstmarshal.sgml:
9667         * docs/gst/tmpl/old/gstmd5sink.sgml:
9668         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
9669         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
9670         * docs/gst/tmpl/old/gstpadtemplate.sgml:
9671         * docs/gst/tmpl/old/gstpipefilter.sgml:
9672         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
9673         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
9674         * docs/gst/tmpl/old/gstshaper.sgml:
9675         * docs/gst/tmpl/old/gstspider.sgml:
9676         * docs/gst/tmpl/old/gstspideridentity.sgml:
9677         * docs/gst/tmpl/old/gststatistics.sgml:
9678         * docs/gst/tmpl/old/gsttee.sgml:
9679         * docs/gst/tmpl/old/gsttimecache.sgml:
9680         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
9681         * docs/gst/tmpl/old/gstxmlregistry.sgml:
9682         * docs/gst/tmpl/old/gthread-cothreads.sgml:
9683         * docs/gst/tmpl/old/types.sgml:
9684         * docs/gst/tmpl/types.sgml:
9685
9686         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
9687         gtkdoc-scan doesn't like files with the same name in different
9688         directories.
9689         * gst/elements/Makefile.am:
9690         * gst/elements/gstelements.c:
9691         * gst/elements/gsttypefind.c: 
9692         * gst/elements/gsttypefind.h:
9693         * gst/elements/gsttypefindelement.c:
9694         * gst/elements/gsttypefindelement.h:
9695
9696 2004-04-28  David Schleef  <ds@schleef.org>
9697
9698         A bunch of portability fixes, derived from Steve Lhomme's MSVC
9699         patch (bug #141317):
9700         * gst/gst-i18n-lib.h: Allow disabling gettext.
9701         * gst/gstatomic_impl.h: disable warning when it's dumb.
9702         * gst/gstclock.c: fix include
9703         * gst/gstcompat.h: fix variadic macro
9704         * gst/gstinfo.c: fix include
9705         * gst/gstmacros.h: add defines for inlines on MSVC
9706         * gst/gstplugin.c: fix includes
9707         * gst/gstregistry.c: fix includes
9708         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
9709         * gst/gstsystemclock.c: fix include
9710         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
9711         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
9712         * gst/registries/gstxmlregistry.c:
9713         (gst_xml_registry_parse_element_factory): fix use of non-portable
9714         functions
9715         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
9716         * libs/gst/control/dparammanager.h: same
9717
9718 2004-04-28  David Schleef  <ds@schleef.org>
9719
9720         Move a bunch of unused files to old/ with names that are
9721         not case-insensitive-unique.  These files still contain some
9722         useful information that needs to be merged into gstbin.sgml,
9723         etc., so they shouldn't be deleted yet.
9724         * docs/gst/tmpl/GstBin.sgml:
9725         * docs/gst/tmpl/GstBuffer.sgml:
9726         * docs/gst/tmpl/GstCaps.sgml:
9727         * docs/gst/tmpl/GstClock.sgml:
9728         * docs/gst/tmpl/GstCompat.sgml:
9729         * docs/gst/tmpl/GstData.sgml:
9730         * docs/gst/tmpl/GstElement.sgml:
9731         * docs/gst/tmpl/GstEvent.sgml:
9732         * docs/gst/tmpl/GstIndex.sgml:
9733         * docs/gst/tmpl/GstStructure.sgml:
9734         * docs/gst/tmpl/GstTag.sgml:
9735         * docs/gst/tmpl/old/GstBin.sgml:
9736         * docs/gst/tmpl/old/GstBuffer.sgml:
9737         * docs/gst/tmpl/old/GstCaps.sgml:
9738         * docs/gst/tmpl/old/GstClock.sgml:
9739         * docs/gst/tmpl/old/GstCompat.sgml:
9740         * docs/gst/tmpl/old/GstData.sgml:
9741         * docs/gst/tmpl/old/GstElement.sgml:
9742         * docs/gst/tmpl/old/GstEvent.sgml:
9743         * docs/gst/tmpl/old/GstIndex.sgml:
9744         * docs/gst/tmpl/old/GstStructure.sgml:
9745         * docs/gst/tmpl/old/GstTag.sgml:
9746
9747 2004-04-28  David Schleef  <ds@schleef.org>
9748
9749         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
9750         (gst_caps_append), (gst_caps_append_structure),
9751         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
9752         (gst_caps_set_simple), (gst_caps_set_simple_valist),
9753         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
9754         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
9755         (gst_caps_intersect), (gst_caps_normalize),
9756         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
9757         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
9758         * gst/gstcaps.h: use GST_IS_CAPS().
9759
9760 2004-04-26  David Schleef  <ds@schleef.org>
9761
9762         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
9763         assembly.  gcc doesn't handle it correctly. (bug #141083)
9764         * gst/gsttrashstack.h: same
9765
9766 2004-04-25  Benjamin Otte  <otte@gnome.org>
9767
9768         * gst/gstelement.c: (gst_element_change_state):
9769           fix assertion to do an int comparison
9770
9771 2004-04-25  Benjamin Otte  <otte@gnome.org>
9772
9773         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9774           better debugging output on error
9775
9776 2004-04-25  Benjamin Otte  <otte@gnome.org>
9777
9778         * gst/gstcaps.c: (gst_caps_subtract):
9779           fix memleak
9780
9781 2004-04-23  Benjamin Otte  <otte@gnome.org>
9782
9783         * gst/gstvalue.c: (gst_value_compare_buffer),
9784         (_gst_value_initialize):
9785           add comparison function for buffers
9786
9787 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9788
9789         * docs/pwg/pwg.xml:
9790           Just found out that this so-called "ima-wav" format is really
9791           just "dvi adpcm" (according to the MS WAV documentation). So
9792           renaming it. We didn't use it yet anyway.
9793
9794 2004-04-23  Benjamin Otte  <otte@gnome.org>
9795
9796         * gst/gstcaps.c: (gst_caps_is_always_compatible):
9797           call gst_caps_is_subset
9798
9799 2004-04-23  Benjamin Otte  <otte@gnome.org>
9800
9801         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
9802         (gst_caps_is_subset):
9803           add documentation
9804
9805 2004-04-23  Benjamin Otte  <otte@gnome.org>
9806           
9807         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
9808         (gst_caps_structure_subtract), (gst_caps_subtract),
9809         (gst_caps_structure_figure_out_union),
9810         (gst_caps_structure_simplify), (gst_caps_do_simplify):
9811           fix simplifying and subtracting not working correctly with optional
9812           properties
9813           solve assorted problems that make it now simplify ebven more
9814         * docs/gst/tmpl/gstcaps.sgml:
9815         * gst/gstcaps.h:
9816           make gst_caps_do_simplify return a bool to indicate if it simplified
9817         * testsuite/caps/simplify.c: (main):
9818           add more checks. The tests is quite a bit useless right now because
9819           the core is heavily simplifying itself.
9820         * testsuite/caps/caps.h:
9821           fix caps to contain all optional properties
9822
9823 2004-04-22  Benjamin Otte  <otte@gnome.org>
9824
9825         * docs/gst/tmpl/gstcaps.sgml:
9826         * docs/gst/tmpl/gstfilesrc.sgml:
9827         * docs/gst/tmpl/gststructure.sgml:
9828         * docs/gst/tmpl/gstvalue.sgml:
9829           update for recent API changes
9830         * gst/gstcaps.c: (gst_caps_do_simplify):
9831           fix to stop trying with a freed structure
9832         * gst/gstpad.c: (gst_pad_link_fixate):
9833           simplify caps
9834         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
9835           remove C++ comment
9836         * gst/gstpad.h:
9837           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
9838         * gst/gststructure.c: (gst_structure_value_get_generic_type),
9839         (gst_structure_to_string):
9840           keep the correct type when using lists of ranges
9841         * gst/gstvalue.c: (gst_value_list_prepend_value),
9842         (gst_value_list_append_value):
9843           copy the value before adding to the list (d'oh)
9844         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
9845         (gst_value_subtract_int_range_int_range):
9846           handle overflows correctly
9847         * gst/gstvalue.c: (gst_value_subtract_from_list):
9848           fix memleak
9849         * testsuite/caps/caps.h:
9850           add a caps that caused segfaults
9851
9852 2004-04-22  Benjamin Otte  <otte@gnome.org>
9853
9854         * testsuite/refcounting/pad.c: (main):
9855           fix test
9856
9857 2004-04-22  Benjamin Otte  <otte@gnome.org>
9858
9859         * gst/gstcaps.c: (gst_caps_subtract):
9860           allow subtracting ANY and EMPTY from ANY caps
9861
9862 2004-04-22  Benjamin Otte  <otte@gnome.org>
9863
9864         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
9865         (gst_caps_union):
9866           only simplify in functions that create new caps. Simplifying in
9867           gst_caps_append breaks tests.
9868
9869 2004-04-22  Benjamin Otte  <otte@gnome.org>
9870
9871         * gst/gstcaps.c: (gst_caps_structure_simplify):
9872           unset GValue after use
9873         * gst/gstcaps.c: (gst_caps_append), 
9874         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
9875           use gst_caps_simplify (reduces registry size by 30%)
9876         * gst/gstpad.c: (gst_pad_template_new):
9877           don't allow NULL caps
9878
9879 2004-04-22  Benjamin Otte  <otte@gnome.org>
9880
9881         * docs/gst/gstreamer-sections.txt:
9882           add gst_caps_do_simplify
9883         * gst/gstcaps.c:
9884           add documentation for gst_caps_do_simplify
9885         * gst/gstvalue.h:
9886           fix typo in gst_value_register_subtract_func declaration for gst-doc
9887
9888 2004-04-22  Benjamin Otte  <otte@gnome.org>
9889
9890         * gst/gstcaps.c: (gst_caps_from_string_inplace):
9891           fix bug when converting from empty string.
9892         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
9893         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
9894           use gst_caps_new_empty to allocate a new caps. Only that function
9895           allocates memory for caps now.
9896         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
9897         (gst_caps_remove_structure):
9898           add ability to remove one structure (but not to header yet)
9899         * gst/gstcaps.c: (gst_caps_compare_structures),
9900         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
9901         (gst_caps_structure_simplify), (gst_caps_do_simplify),
9902         * gst/gstcaps.h:
9903           add gst_caps_do_simplify that tries to simplify a caps in place.
9904           Deprecate old gst_caps_simplify function.
9905         * testsuite/caps/caps.h:
9906           add caps.h containing a common set of caps to test against.
9907         * testsuite/caps/sets.c: (check_caps), (main):
9908           use it.
9909         * testsuite/caps/.cvsignore:
9910         * testsuite/caps/Makefile.am:
9911         * testsuite/caps/simplify.c: (check_caps), (main):
9912           add test to check correctness and efficency of caps simplification.
9913
9914 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
9915
9916         reviewed by Benjamin Otte  <otte@gnome.org>
9917
9918         * gst/gstparse.c: (_gst_parse_escape):
9919           Free the GString used in _gst_parse_escape()
9920
9921 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9922
9923         * gst/gstpad.c: (gst_pad_link_negotiate):
9924           refuse to link if the link is not possible
9925         * configure.ac:
9926         * testsuite/Makefile.am:
9927         * testsuite/negotiation/.cvsignore:
9928         * testsuite/negotiation/Makefile.am:
9929         * testsuite/negotiation/pad_link.c: (main):
9930           add test that checks the above behaviour
9931
9932 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9933
9934         * docs/gst/gstreamer-sections.txt:
9935           add newly added API
9936
9937 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9938
9939         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9940         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
9941         (gst_filesrc_open_file), (gst_filesrc_close_file),
9942         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
9943         * gst/elements/gstfilesrc.h:
9944           add support for non-regular files (#140734)
9945
9946 2004-04-21  Benjamin Otte  <otte@gnome.org>
9947
9948         * gst/gstpad.c: (gst_pad_link_fixate):
9949           add sophisticated error checking code to see if fixation functions
9950           did their fixation right
9951
9952 2004-04-21  Benjamin Otte  <otte@gnome.org>
9953
9954         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
9955           check for ANY caps before appending/unioning
9956         * gst/gstcaps.c: (gst_caps_is_subset),
9957         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
9958         (gst_caps_structure_subtract), (gst_caps_subtract):
9959         * gst/gstcaps.h:
9960           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
9961           the API. deprecate gst_caps_is_equal_fixed
9962         * gst/gstpad.c: (gst_pad_try_set_caps):
9963         * gst/gstqueue.c: (gst_queue_link):
9964           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
9965         * gst/gststructure.c: (gst_structure_get_name_id):
9966         * gst/gststructure.h:
9967           add function gst_structure_get_name_id
9968         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
9969         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
9970         (gst_value_subtract_int_range_int_range),
9971         (gst_value_subtract_double_double_range),
9972         (gst_value_subtract_double_range_double),
9973         (gst_value_subtract_double_range_double_range),
9974         (gst_value_subtract_from_list), (gst_value_subtract_list),
9975         (gst_value_can_intersect), (gst_value_subtract),
9976         (gst_value_can_subtract), (gst_value_register_subtract_func),
9977         (_gst_value_initialize):
9978         * gst/gstvalue.h:
9979           add support for subtracting values from each other. Note that
9980           subtracting means subtracting as in set theory. Required for caps
9981           stuff above.
9982         * testsuite/caps/.cvsignore:
9983         * testsuite/caps/Makefile.am:
9984         * testsuite/caps/erathostenes.c: (erathostenes), (main):
9985         * testsuite/caps/sets.c: (check_caps), (main):
9986         * testsuite/caps/subtract.c: (check_caps), (main):
9987           add tests for subtraction and equality code.
9988
9989 2004-04-20  David Schleef  <ds@schleef.org>
9990
9991         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
9992         * gst/indexers/Makefile.am:
9993         * gst/schedulers/Makefile.am:
9994         * libs/gst/bytestream/Makefile.am:
9995         * libs/gst/control/Makefile.am:
9996         * libs/gst/getbits/Makefile.am:
9997
9998 2004-04-20  David Schleef  <ds@schleef.org>
9999
10000         * common/as-libtool.mak: Fine-tune DLL building.
10001         * configure.ac: Link plugins against libgstreamer.  Define plugindir
10002         (like gst-plugins)
10003         * examples/plugins/Makefile.am: remove plugindir
10004         * gst/autoplug/Makefile.am: DLL building fixes
10005         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
10006         Windows.
10007         * gst/elements/gstelements.c: Conditionally disable pipefilter.
10008         * gst/indexers/Makefile.am: DLL building fixes
10009         * gst/schedulers/Makefile.am: DLL building fixes.
10010         * libs/gst/bytestream/Makefile.am: DLL building fixes.
10011         * libs/gst/control/Makefile.am: same
10012         * libs/gst/getbits/Makefile.am: same
10013         * testsuite/Makefile.am: New dlopen directory
10014         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
10015         when dlopened.
10016         * testsuite/dlopen/dlopen_gst.c: (main): same
10017         * testsuite/dlopen/loadgst.c: (do_test): same
10018
10019 2004-04-20  David Schleef  <ds@schleef.org>
10020
10021         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
10022         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
10023
10024 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10025
10026         * gst/gstelement.c: (gst_element_wait),
10027         (gst_element_set_time_delay), (gst_element_change_state):
10028           Use GST_TIME_*
10029
10030 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10031
10032         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
10033         (gst_spider_identity_plug):
10034           improve debugging messages
10035         * gst/gstbin.c: (gst_bin_remove_func):
10036           make sure the state_change function is only called with simple state
10037           transitions
10038
10039 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10040
10041         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
10042         (gst_fakesink_set_property), (gst_fakesink_chain):
10043         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
10044         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
10045         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
10046         * gst/elements/gstidentity.c: (gst_identity_chain),
10047         (gst_identity_set_property):
10048         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
10049         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
10050           add warnings to _set_property for unknown arguments
10051           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
10052
10053 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10054
10055         * Makefile.am:
10056         * docs/manuals.mak:
10057           add .po file download snippet
10058           fix a bug in the doc makefile
10059
10060 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10061
10062         * Makefile.am:
10063         * po/LINGUAS:
10064         * po/en_GB.po:
10065           Added en_GB translation (Gareth Owen)
10066
10067 2004-04-20  Johan Dahlin  <johan@gnome.org>
10068
10069         * gst/gstpad.c (_invent_event): Clean up
10070
10071 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10072
10073         * testsuite/caps/filtercaps.c: (main):
10074           fix test to test things correctly (caps are complicated)
10075
10076 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10077
10078         * testsuite/caps/Makefile.am:
10079         * testsuite/caps/filtercaps.c: (main):
10080           add test (that doesn't work right now, but should)
10081
10082 2004-04-19  David Schleef  <ds@schleef.org>
10083
10084         * configure.ac: Add test for allowing unaligned access.  Add define
10085         to put in gstconfig.h.
10086         * docs/gst/gstreamer-sections.txt: New symbols
10087         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
10088         * docs/gst/tmpl/gstfilesrc.sgml:
10089         * docs/gst/tmpl/gstparse.sgml:
10090         * docs/gst/tmpl/gsttypes.sgml:
10091         * docs/gst/tmpl/gstutils.sgml:
10092         * docs/gst/tmpl/gstvalue.sgml:
10093         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
10094         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
10095         on most !i386/!powerpc architectures.  From Daniel Gazard
10096         <daniel.gazard@free.fr>.  (bug #140156)
10097         * po/af.po: Check in changes made by gettext.
10098         * po/az.po:
10099         * po/fr.po:
10100         * po/nl.po:
10101         * po/sr.po:
10102         * po/sv.po:
10103
10104 2004-04-20  Benjamin Otte  <otte@gnome.org>
10105
10106         * gst/schedulers/entryscheduler.c: 
10107         (gst_entry_scheduler_yield):
10108           refuse to yield when decoupled elements insist on doing that.
10109           At least it's better than crashing
10110
10111 2004-04-19  David Schleef  <ds@schleef.org>
10112
10113         * docs/libs/Makefile.am: Change sinclude to include
10114         * docs/gst/Makefile.am: same
10115         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
10116
10117 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10118
10119         * po/LINGUAS:
10120         * po/uk.po:
10121           Added Ukrainian translation (Maxim V. Dziumanenko)
10122
10123 2004-04-19  Johan Dahlin  <johan@gnome.org>
10124
10125         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
10126         checking here, do it before calling the function.
10127         Clean up, use for loops instead of while loops while iterating
10128         over lists.
10129
10130         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
10131         in debug message.
10132         (gst_spider_create_and_plug): Improve debug message.
10133         General: Replace while loops which iterates over GLists with for
10134         loops. Which are much cleaner, improves readability, especially
10135         for gst_spider_identity_plug
10136
10137         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
10138         fixes bug 140477
10139
10140 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10141
10142         * po/LINGUAS:
10143         * po/tr.po:
10144           Added Turkish translation (Baris Cicek)
10145
10146 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10147
10148         * docs/faq/troubleshooting.xml:
10149           Mention gst-register in the FAQ (fixes 139045).
10150
10151 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10152
10153         * docs/gst/gstreamer-sections.txt:
10154
10155 2004-04-17  Benjamin Otte  <otte@gnome.org>
10156
10157         * gst/gstelement.c: (gst_element_dispose):
10158           simplify
10159         * gst/gstpad.c: (gst_pad_call_chain_function):
10160           don't create loads of events due to bad macro usage
10161
10162 2004-04-16  David Schleef  <ds@schleef.org>
10163
10164         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
10165         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
10166         * gst/gstvalue.c: (gst_value_serialize_buffer),
10167         (gst_value_deserialize_buffer), (gst_type_is_fixed),
10168         (_gst_value_initialize): Create a new function gst_type_is_fixed()
10169         to indicate types that are fixed wrt caps or not.  Switching to
10170         this function fixes (bug #140298).
10171         * gst/gstvalue.h:
10172
10173 2004-04-16  David Schleef  <ds@schleef.org>
10174
10175         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
10176         for GST_UNALIGNED_ACESS, since we essentially know which archs
10177         are ok.
10178
10179 2004-04-17  Benjamin Otte  <otte@gnome.org>
10180
10181         * docs/gst/Makefile.am:
10182           ignore gst/parse directory when building docs (fixes #140205)
10183
10184 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10185
10186         * testsuite/refcounting/mem.c: (vmsize):
10187           do error checking
10188
10189 2004-04-16  Johan Dahlin  <johan@gnome.org>
10190
10191         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
10192         and gst_pad_call_get_function.
10193
10194 2004-04-15  David Schleef  <ds@schleef.org>
10195
10196         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
10197         checks if we can access unaligned memory.
10198         * configure.ac: Use it.
10199
10200 2004-04-16  Benjamin Otte  <otte@gnome.org>
10201
10202         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
10203         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
10204         * gst/elements/gstfilesrc.h:
10205           s/seek_happened/need_discont/ and require discont before sending any
10206           data
10207
10208 2004-04-15  David Schleef  <ds@schleef.org>
10209
10210         * gst/gstvalue.c: (gst_value_serialize_buffer),
10211         (gst_value_deserialize_buffer), (_gst_value_initialize):
10212         Register these types as fundamental types. (bug #140015)
10213
10214 2004-04-16  Benjamin Otte  <otte@gnome.org>
10215
10216         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
10217         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
10218         (gst_pad_pull):
10219           implement enforcing discont events before buffers are passed. This
10220           allows state changes of only some elements and later correctly going
10221           on where they left off (or in short: you can now set audio sinks to
10222           NULL to release the device when the pipeline is paused)
10223         * gst/gstpad.c: (gst_pad_call_chain_function),
10224         (gst_pad_call_get_function):
10225         * gst/gstpad.h:
10226           add gst_pad_call_chain_function and gst_pad_call_get_function for
10227           scheduler interaction. They are required because of the changes
10228           above.
10229         * gst/schedulers/entryscheduler.c: (get_buffer),
10230         (gst_entry_scheduler_chain_wrapper),
10231         (gst_entry_scheduler_get_wrapper),
10232         (gst_entry_scheduler_state_transition),
10233         (gst_entry_scheduler_pad_link):
10234         * gst/schedulers/gstbasicscheduler.c:
10235         (gst_basic_scheduler_chain_wrapper),
10236         (gst_basic_scheduler_src_wrapper),
10237         (gst_basic_scheduler_chainhandler_proxy),
10238         (gst_basic_scheduler_gethandler_proxy),
10239         (gst_basic_scheduler_cothreaded_chain),
10240         (gst_basic_scheduler_chain_elements):
10241         * gst/schedulers/gstoptimalscheduler.c:
10242         (get_group_schedule_function), (pad_clear_queued),
10243         (gst_opt_scheduler_pad_link):
10244           use the new functions instead of calling get/chain-functions
10245           directly.
10246
10247 2004-04-15  David Schleef  <ds@schleef.org>
10248
10249         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
10250         * docs/gst/tmpl/gstinfo.sgml: same
10251         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
10252         gtk-doc put here.
10253         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
10254         * examples/queue/queue.c: (main):  We iterate pipelines, not
10255         bins.  (bug #139996)
10256
10257 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10258
10259         * docs/pwg/advanced-types.xml:
10260           Add MS RLE support. Also document Qt RLE although I have no sample
10261           files for that yet. And document an extra property for ADPCM.
10262
10263 2004-04-15  David Schleef  <ds@schleef.org>
10264
10265         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
10266         (_gst_plugin_fault_handler_setup):  Disable more stuff on
10267         Windows.
10268
10269 2004-04-15  David Schleef  <ds@schleef.org>
10270
10271         * gst/gstinfo.c: (_gst_debug_init): Change some internal
10272         symbol names to not conflict with new gstinfo.h symbols.
10273         * gst/gstinfo.h: Add inline functions for all those crazy
10274         compilers that don't know how to handle variadic macros (MSVC).
10275
10276 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10277
10278         * configure.ac: bump nano to 1
10279
10280 === release 0.8.1 ===
10281
10282 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10283
10284         * NEWS:
10285         * RELEASE:
10286         * configure.ac:
10287           releasing 0.8.1, "Snow Brigade"
10288
10289 2004-04-14  David Schleef  <ds@schleef.org>
10290
10291         * testsuite/Makefile.am: define tests_ignore
10292         * testsuite/Rules: Added new tests_ignore, which get compiled,
10293         but not run (generally because they're inconsistent or have
10294         heisenbugs).  Now we can ensure all the .c files compile in
10295         testsuite/.
10296         * testsuite/bins/Makefile.am: define tests_ignore
10297         * testsuite/bytestream/Makefile.am:
10298         * testsuite/caps/Makefile.am:
10299         * testsuite/clock/Makefile.am:
10300         * testsuite/debug/Makefile.am:
10301         * testsuite/debug/global.c: (gst_debug_log_one),
10302         (gst_debug_log_two): Fix compilation problem.
10303         * testsuite/dynparams/Makefile.am:
10304         * testsuite/elements/Makefile.am:
10305         * testsuite/ghostpads/Makefile.am:
10306         * testsuite/indexers/Makefile.am:
10307         * testsuite/parse/Makefile.am:
10308         * testsuite/plugin/Makefile.am:
10309         * testsuite/refcounting/Makefile.am:
10310         * testsuite/refcounting/element_pad.c: (main): Don't return leak
10311         results, because it's not calculated correctly.
10312         * testsuite/refcounting/pad.c: (main): same
10313         * testsuite/states/Makefile.am:
10314         * testsuite/tags/Makefile.am:
10315         * testsuite/threads/Makefile.am:
10316
10317 2004-04-14  David Schleef  <ds@schleef.org>
10318
10319         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
10320         generating bad code around the cpu detection asm code.
10321
10322 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10323
10324         * tools/gst-inspect.c: (print_element_info):
10325           print numeric version of rank as well, since we added some - 1
10326           rank values to elements
10327
10328 2004-04-13  David Schleef  <ds@schleef.org>
10329
10330         * configure.ac:  Disable various code when compiling for MinGW.
10331         * gst/elements/Makefile.am:
10332         * gst/elements/gstelements.c:
10333         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10334         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
10335         * gst/registries/gstxmlregistry.c: (make_dir):
10336
10337 2004-04-13  David Schleef  <ds@schleef.org>
10338
10339         * gst/Makefile.am:
10340         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
10341         assembly.
10342         * gst/gstcpuid_i386.s: remove
10343
10344 2004-04-13  David Schleef  <ds@schleef.org>
10345
10346         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
10347         seems to think it needs to be done.
10348         * docs/gst/tmpl/gstfakesink.sgml:
10349         * docs/gst/tmpl/gstfakesrc.sgml:
10350         * docs/gst/tmpl/gstfdsink.sgml:
10351         * docs/gst/tmpl/gstfdsrc.sgml:
10352         * docs/gst/tmpl/gstfilesink.sgml:
10353         * docs/gst/tmpl/gstfilesrc.sgml:
10354         * docs/gst/tmpl/gstidentity.sgml:
10355         * docs/gst/tmpl/gstmd5sink.sgml:
10356         * docs/gst/tmpl/gstmultifilesrc.sgml:
10357         * docs/gst/tmpl/gstpipefilter.sgml:
10358         * docs/gst/tmpl/gstshaper.sgml:
10359         * docs/gst/tmpl/gstspider.sgml:
10360         * docs/gst/tmpl/gstspideridentity.sgml:
10361         * docs/gst/tmpl/gststatistics.sgml:
10362         * docs/gst/tmpl/gsttee.sgml:
10363         * docs/gst/tmpl/gsttypefind.sgml:
10364         * docs/gst/tmpl/gstutils.sgml:
10365
10366 2004-04-13  David Schleef  <ds@schleef.org>
10367
10368         * configure.ac: Changes to remove POSIXisms (mmap in this case)
10369         and to build DLLs on Windows.
10370         * gst/Makefile.am:
10371         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
10372         (gst_filesrc_open_file):
10373         * gst/schedulers/Makefile.am:
10374
10375 2004-04-13  David Schleef  <ds@schleef.org>
10376
10377         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
10378         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
10379         fixating lists.
10380
10381 2004-04-12  David Schleef  <ds@schleef.org>
10382
10383         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
10384         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
10385         to using it.
10386         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
10387         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
10388         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
10389         * gst/gststructure.c: (gst_structure_set_valist),
10390         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
10391         support for buffers.
10392         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
10393         intended to be const.
10394         * gst/gsttag.h: same
10395         * gst/gstvalue.c: (gst_value_serialize_buffer),
10396         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
10397         to (de)serialize buffers.
10398         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
10399         * testsuite/caps/string-conversions.c: (main):
10400         * testsuite/caps/value_serialize.c: add new test
10401
10402 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10403
10404         * docs/pwg/advanced-types.xml:
10405           Document MS video 1 (video/x-msvideocodec) mimetype/format.
10406
10407 2004-04-11  Benjamin Otte  <otte@gnome.org>
10408
10409         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
10410           rename categories to basic_*
10411         * gst/schedulers/gstbasicscheduler.c: 
10412         (gst_basic_scheduler_chain_wrapper),
10413         (gst_basic_scheduler_chainhandler_proxy),
10414         (gst_basic_scheduler_gethandler_proxy),
10415         (gst_basic_scheduler_eventhandler_proxy):
10416           debugging category fixes - put common stuff in log category
10417         * gst/schedulers/gstbasicscheduler.c: 
10418         (gst_basic_scheduler_chain_elements):
10419           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
10420           active and linking two active chains
10421
10422 2004-04-10  Benjamin Otte  <otte@gnome.org>
10423
10424         * docs/pwg/intro-preface.xml:
10425           fix dead links and remove reference to Wiki
10426
10427 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10428
10429         * gst/schedulers/gstbasicscheduler.c:
10430           make sure we can switch back to the main function if we're still in
10431           the main function (supposed to fix #139617)
10432         * gst/schedulers/gthread-cothreads.h:
10433           don't throw an error when switching to the same cothread
10434
10435 2004-04-09  Benjamin Otte  <otte@gnome.org>
10436
10437         * gst/gstbin.c: (gst_bin_get_type):
10438         * gst/gstclock.c: (gst_clock_get_type):
10439         * gst/gstindex.c: (gst_index_get_type):
10440         * gst/gstobject.c: (gst_object_get_type),
10441         (gst_signal_object_get_type):
10442         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
10443         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
10444         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
10445         * gst/gstqueue.c: (gst_queue_get_type):
10446         * gst/gstregistry.c: (gst_registry_get_type):
10447         * gst/gstsystemclock.c: (gst_system_clock_get_type):
10448         * gst/gstthread.c: (gst_thread_get_type):
10449           don't use memchunks for these objects, use malloc instead
10450
10451 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10452
10453         * docs/gst/.cvsignore:
10454         * docs/gst/Makefile.am:
10455         * docs/gst/gstreamer-sections.txt:
10456         * docs/gst/tmpl/gstaggregator.sgml:
10457         * docs/gst/tmpl/gstbuffer.sgml:
10458         * docs/gst/tmpl/gstclock.sgml:
10459         * docs/gst/tmpl/gstelement.sgml:
10460         * docs/gst/tmpl/gstfakesink.sgml:
10461         * docs/gst/tmpl/gstfakesrc.sgml:
10462         * docs/gst/tmpl/gstfdsink.sgml:
10463         * docs/gst/tmpl/gstfdsrc.sgml:
10464         * docs/gst/tmpl/gstfilesink.sgml:
10465         * docs/gst/tmpl/gstfilesrc.sgml:
10466         * docs/gst/tmpl/gstidentity.sgml:
10467         * docs/gst/tmpl/gstindex.sgml:
10468         * docs/gst/tmpl/gstinfo.sgml:
10469         * docs/gst/tmpl/gstmd5sink.sgml:
10470         * docs/gst/tmpl/gstmultifilesrc.sgml:
10471         * docs/gst/tmpl/gstpad.sgml:
10472         * docs/gst/tmpl/gstpipefilter.sgml:
10473         * docs/gst/tmpl/gstpipeline.sgml:
10474         * docs/gst/tmpl/gstpluginfeature.sgml:
10475         * docs/gst/tmpl/gstqueue.sgml:
10476         * docs/gst/tmpl/gstregistry.sgml:
10477         * docs/gst/tmpl/gstscheduler.sgml:
10478         * docs/gst/tmpl/gstshaper.sgml:
10479         * docs/gst/tmpl/gstspider.sgml:
10480         * docs/gst/tmpl/gstspideridentity.sgml:
10481         * docs/gst/tmpl/gststatistics.sgml:
10482         * docs/gst/tmpl/gstsystemclock.sgml:
10483         * docs/gst/tmpl/gsttee.sgml:
10484         * docs/gst/tmpl/gstthread.sgml:
10485         * docs/gst/tmpl/gsttypefind.sgml:
10486         * docs/gst/tmpl/gstutils.sgml:
10487           further doc build fixes
10488
10489 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10490
10491         * docs/gst/Makefile.am:
10492           make docs exit on scanning problems
10493           fix nonsrcdir build issues
10494         * docs/gst/gstreamer-sections.txt:
10495           adding stuff from -unused
10496         * gst/gstqueue.h:
10497           create GstQueueSize
10498         * gst/schedulers/cothreads_compat.h:
10499           fix cothread warnings
10500
10501 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10502
10503         * docs/gst/gstreamer-sections.txt:
10504           remove defines deprecated by Benjamin
10505
10506 2004-04-07  Benjamin Otte  <otte@gnome.org>
10507
10508         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10509           when the buffer is complete, don't check if other buffers are needed
10510         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
10511           check that the offset is >0 so we don't try to read before the
10512           beginning of the file
10513         * gst/gstpad.c: (gst_pad_set_pad_template):
10514           sink the template, so we don't end up with 130k pad templates
10515
10516 2004-04-06  Benjamin Otte  <otte@gnome.org>
10517
10518         * gst/autoplug/gstspider.c: (gst_spider_link_add):
10519           don't ref the element, adding already reffed it. And we didn't unref
10520           it later anyway... (huge memleak when you used many spider elements)
10521         * gst/gstelement.c: (gst_element_base_class_finalize):
10522         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
10523         (gst_element_register):
10524         * gst/gsturi.c: (gst_element_make_from_uri):
10525           use gst_object_(un)ref instead of g_object(un)ref
10526
10527 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10528
10529         * gst/gstbuffer.h:
10530           remove macro that wouldn't work anymore because struct member has
10531           been removed.
10532         * gst/schedulers/entryscheduler.c: (schedule_forward):
10533           fix segfault for unconnected pads
10534         
10535 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10536
10537         reviewed by David Schleef <ds@schleef.org>
10538
10539         * gst/gstinfo.h:
10540           *_FORMAT modifiers should require putting a % in front of them for
10541           consistency reasons.
10542
10543 2004-04-05  Colin Walters  <walters@redhat.com>
10544
10545         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
10546         space.
10547
10548 2004-04-05  Benjamin Otte  <otte@gnome.org>
10549
10550         * configure.ac:
10551         * gst/Makefile.am:
10552         * gst/gst_private.h:
10553         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
10554           add support for detecting if GStreamer runs inside valgrind.
10555           requires valgrind (d'oh) and --enable-debug for correct cdetection.
10556           print a big message in valgrind that GStreamer has detected it's
10557           running inside and might now use different code.
10558         * gst/gstmemchunk.c: (populate), (free_area),
10559         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
10560         (gst_mem_chunk_free):
10561           flag memchunks for valgrind, so it can detect leaking of chunks.
10562           This allows detecting leaks of GstBuffer and GstEvent correctly
10563           inside valgrind.
10564
10565 2004-04-05  David Schleef  <ds@schleef.org>
10566
10567         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
10568           jensgr@gmx.net (Jens Granseuer)
10569
10570 2004-04-05  David Schleef  <ds@schleef.org>
10571
10572         * gst/gstbuffer.c: (_gst_buffer_sub_free),
10573         (gst_buffer_default_free), (gst_buffer_default_copy),
10574         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
10575         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
10576         structures in one place.
10577
10578 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10579
10580         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
10581           (GST_TIME_FORMAT, GST_TIME_ARGS)
10582
10583 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10584
10585         * testsuite/elements/Makefile.am:
10586           disable test until it stops breaking make distcheck
10587
10588 2004-04-05  Johan Dahlin  <johan@gnome.org>
10589
10590         * po/sv.po: Updated translation
10591
10592 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10593
10594         * gst/gstplugin.c: (gst_plugin_load_file):
10595           fix segfault for when original plugin was loaded statically
10596
10597 2004-04-05  Benjamin Otte  <otte@gnome.org>
10598
10599         * testsuite/debug/category.c: (main):
10600         * testsuite/debug/commandline.c: (main):
10601         * testsuite/debug/output.c: (main):
10602           fix tests to work again with debugging enabled
10603
10604 2004-04-05  Benjamin Otte  <otte@gnome.org>
10605
10606         * gst/schedulers/gstbasicscheduler.c:
10607         (gst_basic_scheduler_pad_link):
10608           fix to work with recent scheduling changes
10609
10610 2004-04-05  Benjamin Otte  <otte@gnome.org>
10611
10612         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
10613         prepareChangeLog doesn't work when cvs indents):
10614           don't throw an error when no element can be scheduled, there's too
10615           many weird reasons why it doesn't work. Return STOPPED instead.
10616           decoupled elemts' schedulability doesn't depend on bufpens.
10617
10618 2004-04-04  Benjamin Otte  <otte@gnome.org>
10619
10620         * gst/schedulers/gstbasicscheduler.c:
10621         (gst_basic_scheduler_pad_select):
10622           fix uninitialized variable warnings
10623
10624 2004-04-04  Benjamin Otte  <otte@gnome.org>
10625
10626         * gst/gstpad.c: (gst_pad_collect_valist):
10627           fix uninitialized variable warning
10628         * gst/schedulers/entryscheduler.c: (schedule_forward):
10629           fix shadowed variable
10630
10631 2004-04-04  Benjamin Otte  <otte@gnome.org>
10632
10633         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
10634         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
10635         (gst_pad_select):
10636         * gst/gstpad.h:
10637         * gst/gstscheduler.c: (gst_scheduler_pad_select),
10638         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
10639         * gst/gstscheduler.h:
10640           implement gst_pad_collect as replacement for gst_pad_select.
10641           deprecate gst_pad_select and gst_scheduler_(un)lock_element
10642           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
10643           new pad_select, lock and unlock calls.
10644         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
10645         * gst/cothreads.h:
10646         * gst/schedulers/cothreads_compat.h:
10647         * gst/schedulers/gthread-cothreads.h:
10648           remove unused cothread_lock and cothread_unlock calls
10649         * gst/schedulers/entryscheduler.c:
10650         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
10651         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
10652         (gst_entry_scheduler_pad_select):
10653           update to new API
10654         * gst/schedulers/gstbasicscheduler.c:
10655         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
10656         (gst_basic_scheduler_pad_select):
10657           remove useless lock and unlock calls, update pad_select to new API
10658           (untested)
10659         * gst/schedulers/gstoptimalscheduler.c:
10660         (gst_opt_scheduler_class_init):
10661           remove useless select, lock and unlock function calls
10662         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
10663           use gst_pad_collect instead of gst_pad_select
10664
10665 2004-04-04  Benjamin Otte  <otte@gnome.org>
10666
10667         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
10668         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
10669         (schedule_next_element), (print_entry):
10670           add can_schedule_pad to handle element states.
10671           add schedule_forward to select the correct entry to schedule next
10672
10673 2004-04-03  Benjamin Otte  <otte@gnome.org>
10674
10675         * gst/schedulers/entryscheduler.c: 
10676           remove unused variable, fix error inside Rb, fix compile warning in
10677           unreachable code
10678
10679 2004-04-03  Benjamin Otte  <otte@gnome.org>
10680
10681         * gst/schedulers/entryscheduler.c:
10682           completely revamp the inner workings, so it's a lot easier to
10683           understand and extend
10684
10685 2004-04-03  Andy Wingo  <wingo@pobox.com>
10686
10687         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
10688         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
10689         This allows better introspection of pipeline topology.
10690         (add_to_chain): Don't do trickery to put loop elements first;
10691         rather, queue a chain sort by marking the chain as dirty.
10692         (remove_from_chain): Mark the chain dirty.
10693         (sort_chain): New function. Sorts the group list so that terminal
10694         sinks are first. This means elements on the sink side will be
10695         preferentially sscheduled before elements on the src side of the
10696         pipeline.
10697         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
10698         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
10699         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
10700         (group_inc_link): Change argument and variable names to match the
10701         new link structure member names (src and sink).
10702         (group_dec_link): Add some description
10703
10704 2004-04-03  Benjamin Otte  <otte@gnome.org>
10705
10706         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
10707         * gst/gstinfo.h:
10708         * testsuite/debug/category.c: (main):
10709         * testsuite/debug/commandline.c: (main):
10710         * testsuite/debug/output.c: (main):
10711         * testsuite/debug/printf_extension.c: (main):
10712           fix to successfully build and test with --disable-gst-debug
10713           configure switch (fixes #138705)
10714
10715 2004-04-03  Benjamin Otte  <otte@gnome.org>
10716
10717         * docs/pwg/building-boiler.xml:
10718           add cvs login line and s/anonymous/anoncvs/
10719
10720 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
10721
10722         reviewed by Benjamin Otte  <otte@gnome.org>
10723
10724         * gst/gststructure.c: (gst_structure_free):
10725           memleak fix: free fields array (partial fix for #134839)
10726
10727 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10728
10729         * docs/random/ds/0.9-suggested-changes:
10730           Add a note to change handoff use in fakesrc to be usable in
10731           a more generic way (fakesrc should be renamed to appsrc or so).
10732         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
10733           Change signal type to scope, so we can fill the buffer in the
10734           handoff handler (that's the whole use of this signal...).
10735
10736 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10737
10738         * docs/pwg/other-ntoone.xml:
10739           Document muxers and n-to-1 elements.
10740
10741 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
10742
10743         * gst/registries/gstxmlregistry.c
10744         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
10745         determine if a file is a G_MODULE. The old one discards paths
10746         containing "so" somewhere in the middle. My home directory is
10747         called "soto". Go figure...
10748
10749 2004-03-31  David Schleef  <ds@schleef.org>
10750
10751         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
10752         to eventually deprecate gst_buffer_merge().  (bug: #136408)
10753         * gst/gstbuffer.h:
10754
10755 2004-03-31  David Schleef  <ds@schleef.org>
10756
10757         * gst/gstvalue.c: (gst_value_union_int_int_range),
10758         (gst_value_union_int_range_int_range), (gst_value_can_union),
10759         (gst_value_union), (_gst_value_initialize):  Add some union
10760         implementations.  We didn't have any previously.
10761         * testsuite/caps/Makefile.am:
10762         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
10763         (gst_audioscale_getcaps), (test_caps), (main): A little test
10764         that is the same as the caps manipulation in audioscale.
10765
10766 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10767
10768         * docs/faq/general.xml:
10769           add entry about "does gst support format X?"
10770
10771 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10772
10773         * gst/gstthread.c:
10774           fix docs
10775         * gst/gstutils.h:
10776           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
10777
10778 2004-03-30  Benjamin Otte  <otte@gnome.org>
10779
10780         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10781           set the offset of the buffer to the requested offset
10782         * gst/elements/gsttypefind.c: (stop_typefinding):
10783           revert patch 1.18 (which I unfortunately don't know the reason for).
10784           This is needed to allow downstream elements to seek. Otherwise
10785           typefind might overwrite a previous seek by downstream elements.
10786           This lead to errors with id3tag and typefind on some mp3s.
10787         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10788         (gst_entry_scheduler_iterate):
10789           be more verbose when debugging
10790
10791 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10792
10793         * gst/gstcaps.c: (gst_caps_from_string_inplace):
10794           make sure we don't get NULL strings
10795
10796 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10797
10798         * gst/gstcaps.c:
10799         * gst/gstelement.c:
10800         * gst/gstelementfactory.c: (gst_element_factory_get_type):
10801         * gst/gstindex.c: (gst_index_resolver_get_type),
10802         (gst_index_get_type), (gst_index_factory_get_type):
10803         * gst/gstinfo.c:
10804         * gst/gstpad.c:
10805         * gst/gstplugin.c:
10806         * gst/gsturi.c: (gst_uri_handler_get_type):
10807         * gst/gstvalue.c:
10808           first batch of documentation fixes
10809
10810 2004-03-29  David Schleef  <ds@schleef.org>
10811
10812         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
10813         * docs/gst/gstreamer-docs.sgml:  More hacking
10814         * docs/gst/gstreamer-sections.txt:
10815         * docs/gst/tmpl/cothreads_compat.sgml:
10816         * docs/gst/tmpl/gstcaps.sgml:
10817         * docs/gst/tmpl/gstclock.sgml:
10818         * docs/gst/tmpl/gstelement.sgml:
10819         * docs/gst/tmpl/gstevent.sgml:
10820         * docs/gst/tmpl/gstpad.sgml:
10821         * docs/gst/tmpl/gstutils.sgml:
10822         * docs/gst/tmpl/gstxml.sgml:
10823         * docs/gst/tmpl/gthread-cothreads.sgml:
10824         * docs/random/ds/0.9-suggested-changes:
10825         * gst/elements/gstfakesink.h: doc fixes
10826         * gst/elements/gstfakesrc.h: doc fixes
10827         * gst/gstcaps.c: doc fixes
10828         * gst/gstcaps.h: doc fixes
10829         * gst/gstelement.c: doc fixes
10830         * gst/gstelement.h: doc fixes
10831         * gst/gstindex.c: doc fixes
10832         * gst/gstinfo.c: doc fixes
10833         * gst/gstpad.c: doc fixes
10834         * gst/gstpad.h: doc fixes
10835         * gst/gstplugin.c: doc fixes
10836         * gst/gsttypefind.h: doc fixes
10837         * gst/gsturi.c: doc fixes
10838         * gst/gstvalue.c: doc fixes
10839
10840 2004-03-29  Colin Walters  <walters@redhat.com>
10841
10842         * gst/registries/gstxmlregistry.c (get_time)
10843         (plugin_times_older_than_recurse):
10844         Use the result of stat to determine whether a path is a file,
10845         so we don't attempt to opendir() files.
10846
10847 2004-03-29  Benjamin Otte  <otte@gnome.org>
10848
10849         * gst/gstpad.c: (gst_pad_set_explicit_caps):
10850           print caps in debugging output when setting caps failed
10851         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10852         (schedule_next_element), (get_buffer), (run_chainhandler),
10853         (element_may_start), (gst_entry_scheduler_chain_handler),
10854         (gst_entry_scheduler_get_handler),
10855         (gst_entry_scheduler_state_transition),
10856         (gst_entry_scheduler_pad_link):
10857           make this scheduler a testcase for mandatory
10858           discont-before-first-buffer which is needed if we want to allow apps
10859           to release the sound device.
10860           add SCHED_ASSERT macro to print scheduler state before an assertion
10861           triggers.
10862
10863 2004-03-29  Benjamin Otte  <otte@gnome.org>
10864
10865         * COPYING:
10866           replace by LGPL (former COPYING.LIB). The core is completely
10867           licensed LGPL.
10868         * COPYING.LIB:
10869           remove
10870
10871 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10872
10873         * po/af.po:
10874         * po/sv.po:
10875           updated Afrikaans and Swedish
10876
10877 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10878
10879         * po/LINGUAS:
10880         * po/az.po:
10881           adding Azerbaijani (Mətin Əmirov)
10882
10883 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
10884
10885         * gst/gstelement.h: 
10886         * gst/gstelement.c (gst_element_set_time_delay): New function for
10887         setting element time taking into account a hardware buffering
10888         delay.
10889         (gst_element_set_time): Now just an invocation of
10890         gst_element_set_time_delay.
10891         * gst/gstclock.h: 
10892         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
10893         allowing to set event times in the future.
10894         (gst_clock_get_event_time): Now just an invocation of
10895         gst_clock_get_event_time_delay.
10896
10897 2004-03-28  Benjamin Otte  <otte@gnome.org>
10898
10899         * gst/gstbin.c: (gst_bin_set_element_sched),
10900         (gst_bin_unset_element_sched):
10901           don't add decoupled elements to schedulers - otherwise it's
10902           impossible to control if a link to a decoupled element was already
10903           removed from a scheduler or not.
10904         * gst/schedulers/cothreads_compat.h:
10905         * gst/schedulers/gthread-cothreads.h:
10906           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
10907           is no "unused" warning.
10908         * gst/schedulers/Makefile.am:
10909         * gst/schedulers/entryscheduler.c:
10910           add new scheduler, based on ideas from talking to David and Martin.
10911           It's supposed to be small and correct. Currently it's also slow (but
10912           it's not noticable)
10913         * examples/retag/retag.c: (main):
10914         * testsuite/bytestream/test1.c: (main):
10915           fix missing NULLs at end of variadic functions
10916         * testsuite/elements/.cvsignore:
10917           update
10918
10919 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
10920
10921         * gst/gstevent.h:
10922         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
10923
10924 2004-03-25  David Schleef  <ds@schleef.org>
10925
10926         * docs/gst/gstreamer-sections.txt:  More doc hacking.
10927         * docs/gst/tmpl/gstaggregator.sgml:
10928         * docs/gst/tmpl/gstautoplugfactory.sgml:
10929         * docs/gst/tmpl/gstbin.sgml:
10930         * docs/gst/tmpl/gstbuffer.sgml:
10931         * docs/gst/tmpl/gstbufferstore.sgml:
10932         * docs/gst/tmpl/gstfakesink.sgml:
10933         * docs/gst/tmpl/gstfakesrc.sgml:
10934         * docs/gst/tmpl/gstmd5sink.sgml:
10935         * docs/gst/tmpl/gstreamer-unused.sgml:
10936         * docs/gst/tmpl/gstsearchfuncs.sgml:
10937         * docs/gst/tmpl/gstshaper.sgml:
10938         * docs/gst/tmpl/gstspider.sgml:
10939         * docs/gst/tmpl/gsttee.sgml:
10940         * docs/gst/tmpl/gstutils.sgml:
10941         * docs/gst/tmpl/gstvalue.sgml:
10942         * docs/gst/tmpl/gstxml.sgml:
10943         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
10944         and we don't support it.
10945         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
10946         (gst_use_threads), (gst_has_threads): same
10947         * gst/gstthreaddummy.c: same
10948         * gst/autoplug/gstspider.c: Make gst_spider_details static.
10949         * gst/autoplug/gstspider.h: same
10950         * gst/elements/gstaggregator.h: Remove bogus function from header
10951         * gst/elements/gstfakesink.h: same
10952         * gst/elements/gstfakesrc.h: same
10953         * gst/elements/gstmd5sink.h: same
10954         * gst/elements/gstshaper.h: same
10955         * gst/elements/gsttee.h: same
10956         * gst/gstbin.c: doc fixes
10957         * gst/gstbin.h: Remove unused definition.
10958         * gst/gstbuffer.c: doc fixes
10959         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
10960         * gst/gstfilter.c: doc fixes
10961         * gst/gsttag.c: doc fixes
10962         * gst/gstvalue.c: doc fixes
10963
10964 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10965
10966         * docs/pwg/advanced-types.xml:
10967           Document typefinding.
10968         * docs/pwg/other-oneton.xml:
10969           Document one-to-n elements, demuxers and parsers.
10970
10971 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
10972
10973         reviewed by: David Schleef  <ds@schleef.org>
10974
10975         * configure.ac: Check bison version (bug #127838)
10976
10977 2004-03-25  David Schleef  <ds@schleef.org>
10978
10979         * docs/gst/gstreamer-docs.sgml: More fine tuning.
10980         * docs/gst/gstreamer-sections.txt:
10981         * docs/gst/tmpl/gstautoplug.sgml:
10982         * docs/gst/tmpl/gststaticautoplug.sgml:
10983         * docs/gst/tmpl/gststaticautoplugrender.sgml:
10984         * docs/gst/tmpl/gstutils.sgml:
10985         * docs/gst/tmpl/gstxml.sgml:
10986
10987 2004-03-24  David Schleef  <ds@schleef.org>
10988
10989         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
10990         manual being such complete crap, that I decided to do major
10991         hacking of it.  This checkin replaces any fine tuning that
10992         may have been done previously, with the benefit of actually
10993         being complete for much of the API that was changed since
10994         0.6.  Further fine tuning will occur shortly.  (bug #134721)
10995         * docs/gst/gstreamer-sections.txt:
10996         * docs/gst/tmpl/GstBin.sgml:
10997         * docs/gst/tmpl/GstBuffer.sgml:
10998         * docs/gst/tmpl/GstCaps.sgml:
10999         * docs/gst/tmpl/GstClock.sgml:
11000         * docs/gst/tmpl/GstCompat.sgml:
11001         * docs/gst/tmpl/GstData.sgml:
11002         * docs/gst/tmpl/GstElement.sgml:
11003         * docs/gst/tmpl/GstEvent.sgml:
11004         * docs/gst/tmpl/GstIndex.sgml:
11005         * docs/gst/tmpl/GstStructure.sgml:
11006         * docs/gst/tmpl/GstTag.sgml:
11007         * docs/gst/tmpl/cothreads.sgml:
11008         * docs/gst/tmpl/cothreads_compat.sgml:
11009         * docs/gst/tmpl/gettext.sgml:
11010         * docs/gst/tmpl/grammar.tab.sgml:
11011         * docs/gst/tmpl/gst-i18n-app.sgml:
11012         * docs/gst/tmpl/gst-i18n-lib.sgml:
11013         * docs/gst/tmpl/gst.sgml:
11014         * docs/gst/tmpl/gst_private.sgml:
11015         * docs/gst/tmpl/gstaggregator.sgml:
11016         * docs/gst/tmpl/gstarch.sgml:
11017         * docs/gst/tmpl/gstatomic.sgml:
11018         * docs/gst/tmpl/gstatomic_impl.sgml:
11019         * docs/gst/tmpl/gstbin.sgml:
11020         * docs/gst/tmpl/gstbuffer.sgml:
11021         * docs/gst/tmpl/gstbufferstore.sgml:
11022         * docs/gst/tmpl/gstcaps.sgml:
11023         * docs/gst/tmpl/gstclock.sgml:
11024         * docs/gst/tmpl/gstcompat.sgml:
11025         * docs/gst/tmpl/gstconfig.sgml:
11026         * docs/gst/tmpl/gstcpu.sgml:
11027         * docs/gst/tmpl/gstdata.sgml:
11028         * docs/gst/tmpl/gstdata_private.sgml:
11029         * docs/gst/tmpl/gstelement.sgml:
11030         * docs/gst/tmpl/gstenumtypes.sgml:
11031         * docs/gst/tmpl/gsterror.sgml:
11032         * docs/gst/tmpl/gstevent.sgml:
11033         * docs/gst/tmpl/gstfakesink.sgml:
11034         * docs/gst/tmpl/gstfakesrc.sgml:
11035         * docs/gst/tmpl/gstfilesink.sgml:
11036         * docs/gst/tmpl/gstfilter.sgml:
11037         * docs/gst/tmpl/gstindex.sgml:
11038         * docs/gst/tmpl/gstinfo.sgml:
11039         * docs/gst/tmpl/gstinterface.sgml:
11040         * docs/gst/tmpl/gstlog.sgml:
11041         * docs/gst/tmpl/gstmacros.sgml:
11042         * docs/gst/tmpl/gstmarshal.sgml:
11043         * docs/gst/tmpl/gstmd5sink.sgml:
11044         * docs/gst/tmpl/gstmultifilesrc.sgml:
11045         * docs/gst/tmpl/gstobject.sgml:
11046         * docs/gst/tmpl/gstpad.sgml:
11047         * docs/gst/tmpl/gstparse.sgml:
11048         * docs/gst/tmpl/gstpipeline.sgml:
11049         * docs/gst/tmpl/gstplugin.sgml:
11050         * docs/gst/tmpl/gstpluginfeature.sgml:
11051         * docs/gst/tmpl/gstqueue.sgml:
11052         * docs/gst/tmpl/gstreamer-unused.sgml:
11053         * docs/gst/tmpl/gstregistry.sgml:
11054         * docs/gst/tmpl/gstregistrypool.sgml:
11055         * docs/gst/tmpl/gstscheduler.sgml:
11056         * docs/gst/tmpl/gstsearchfuncs.sgml:
11057         * docs/gst/tmpl/gstshaper.sgml:
11058         * docs/gst/tmpl/gstspider.sgml:
11059         * docs/gst/tmpl/gstspideridentity.sgml:
11060         * docs/gst/tmpl/gststructure.sgml:
11061         * docs/gst/tmpl/gstsystemclock.sgml:
11062         * docs/gst/tmpl/gsttag.sgml:
11063         * docs/gst/tmpl/gsttaginterface.sgml:
11064         * docs/gst/tmpl/gsttee.sgml:
11065         * docs/gst/tmpl/gstthread.sgml:
11066         * docs/gst/tmpl/gsttrace.sgml:
11067         * docs/gst/tmpl/gsttrashstack.sgml:
11068         * docs/gst/tmpl/gsttypefind.sgml:
11069         * docs/gst/tmpl/gsttypes.sgml:
11070         * docs/gst/tmpl/gsturi.sgml:
11071         * docs/gst/tmpl/gsturitype.sgml:
11072         * docs/gst/tmpl/gstutils.sgml:
11073         * docs/gst/tmpl/gstvalue.sgml:
11074         * docs/gst/tmpl/gstversion.sgml:
11075         * docs/gst/tmpl/gstxml.sgml:
11076         * docs/gst/tmpl/gstxmlregistry.sgml:
11077         * docs/gst/tmpl/gthread-cothreads.sgml:
11078         * docs/gst/tmpl/types.sgml:
11079
11080 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11081
11082         * docs/pwg/other-sink.xml:
11083         * docs/pwg/other-source.xml:
11084           Documentation on how to write source and sink elements. Other
11085           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
11086           manager, autoplugger) are all still pending.
11087
11088 2004-03-25  Benjamin Otte  <otte@gnome.org>
11089
11090         * testsuite/elements/Makefile.am:
11091         * testsuite/elements/gst-compprep-check:
11092           add check to make sure gst-compprep works
11093         * testsuite/elements/gst-inspect-check.in:
11094           improve initialization output
11095         * testsuite/Makefile.am:
11096         * testsuite/gst-inspect-check:
11097           remove old file
11098
11099 2004-03-24  David Schleef  <ds@schleef.org>
11100
11101         * testsuite/elements/Makefile.am:
11102         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
11103         to the testsuite.
11104
11105 2004-03-24  Benjamin Otte  <otte@gnome.org>
11106
11107         * libs/gst/control/dparam.c: (gst_dparam_attach),
11108         (gst_dparam_detach):
11109         * libs/gst/control/dparammanager.c: (gst_dpman_init):
11110           fix lvalue casts for real
11111
11112 2004-03-24  Benjamin Otte  <otte@gnome.org>
11113
11114         * gst/schedulers/gstbasicscheduler.c:
11115         (gst_basic_scheduler_src_wrapper):
11116         * gst/schedulers/gstoptimalscheduler.c:
11117         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
11118         (pad_clear_queued), (gst_opt_scheduler_add_element),
11119         (gst_opt_scheduler_remove_element):
11120           fix GStreamer to not have issues with lvalue casts anymore (fixes
11121           #136841)
11122
11123 2004-03-24  Benjamin Otte  <otte@gnome.org>
11124
11125         * gst/gstelement.c:
11126           add documentation about a gobject quirk where the object hasn't the
11127           correct class pointer set on initialization
11128         * gst/schedulers/gstbasicscheduler.c:
11129         (gst_basic_scheduler_src_wrapper):
11130           make sure to not run into an infinite loop
11131
11132 2004-03-22  Benjamin Otte  <otte@gnome.org>
11133
11134         * gst/gstutils.c: (gst_util_dump_mem):
11135         * gst/gstutils.h:
11136           first argument of gst_util_dump_mem should be const
11137
11138 2004-03-22  Johan Dahlin  <johan@gnome.org>
11139
11140         * gst/gstvalue.h: Clean up a little bit.
11141
11142 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
11143
11144         reviewed by Benjamin Otte  <otte@gnome.org>
11145
11146         * gst/autoplug/gstspider.c: (gst_spider_dispose):
11147         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
11148         (gst_aggregator_class_init), (gst_aggregator_init):
11149         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
11150         (gst_filesrc_dispose), (gst_filesrc_set_location):
11151         * gst/elements/gstidentity.c: (gst_identity_finalize),
11152         (gst_identity_class_init), (gst_identity_chain):
11153         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11154         * gst/elements/gststatistics.c: (gst_statistics_finalize),
11155         (gst_statistics_class_init):
11156         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
11157         (gst_tee_get_property):
11158           clean up used memory in this elements correctly on teardown (closes
11159           #137279)
11160
11161 2004-03-20  Colin Walters  <walters@redhat.com>
11162
11163         * gst/registries/gstxmlregistry.c:
11164         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
11165         registry saving atomic.
11166
11167 2004-03-20  Colin Walters  <walters@redhat.com>
11168
11169         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
11170         Just use
11171         access() instead of actually creating and deleting files.
11172
11173 2004-03-18  David Schleef  <ds@schleef.org>
11174
11175         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
11176         (bug #137625)
11177
11178 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11179
11180         * po/sv.po: updated translation (Christian Rose)
11181
11182 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11183
11184         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
11185         (gst_filesink_get_query_types), (_do_init),
11186         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
11187           return FALSE silently
11188         * po/af.po: updated translation (Petri Jooste)
11189
11190 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11191
11192         * Makefile.am:
11193         * configure.ac:
11194           dist common properly
11195         * po/af.po:
11196         * po/fr.po:
11197         * po/nl.po:
11198         * po/sr.po:
11199         * po/sv.po:
11200           refreshing translations
11201
11202 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11203
11204         * po/LINGUAS:
11205         * po/sv.po:
11206         * po/af.po:
11207           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
11208
11209 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11210
11211         * Makefile.am: use common/release.mak
11212
11213 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11214
11215         * docs/faq/gst-uninstalled:
11216           adding gst-monkeysaudio to the list of possible plugin dirs
11217
11218 2004-03-16  David Schleef  <ds@schleef.org>
11219
11220         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
11221         (gst_init_check_with_popt_table):  Fix some gettext strings to
11222         make them easier to translate.  Required making the strings
11223         non-const.
11224
11225 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11226
11227         * configure.ac: bump nano to 1
11228
11229 === release 0.8.0 ===
11230
11231 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11232
11233         * configure.ac: release 0.8.0, "Executive Slacks"
11234
11235 2004-03-16  Johan Dahlin  <johan@gnome.org>
11236
11237         * gst/schedulers/gstoptimalscheduler.c
11238         (gst_opt_scheduler_pad_unlink): Remove double ;,
11239         spotted by Scott Wheeler
11240
11241 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11242
11243         * configure.ac: bump libtool version
11244
11245 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11246
11247         * gst/gstcaps.h:
11248         * gst/gststructure.h:
11249           add reserved padding
11250
11251 2004-03-15  Benjamin Otte  <otte@gnome.org>
11252
11253         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
11254           set the first parameter for select call correctly.
11255           (fixes #137230)
11256
11257 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11258
11259         * *.c,*.h: don't mix tabs and spaces
11260
11261 2004-03-15  Johan Dahlin  <johan@gnome.org>
11262
11263         * gst/schedulers/gstoptimalscheduler.c
11264         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
11265         crash on MPEG playback. My boolean arithmetic is a bit rusty.
11266
11267         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
11268         
11269 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11270
11271         * testsuite/Rules:
11272           fix gst-register rules
11273
11274 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11275
11276         * testsuite/Rules:
11277           use versioned gst-register
11278
11279 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11280
11281         * docs/libs/gstreamer-libs-sections.txt:
11282           remove </SUBSECTION>
11283         * gst/gstplugin.c:
11284         * gst/gstregistry.c: (gst_registry_add_plugin):
11285         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
11286         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
11287           add debugging and fix some comment blocks
11288
11289 2004-03-15  Johan Dahlin  <johan@gnome.org>
11290
11291         * *.h: Revert indent changes.
11292         
11293 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
11294
11295         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
11296           g_error_free the g_error
11297         * tools/gst-feedback-m.m:
11298           check for other versions of gstreamer
11299         * tools/gst-indent:
11300           use sh, not bash
11301
11302 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
11303
11304         * tools/gst-register.c: do not spill paths when registries are not
11305           writable, until we fix the "user running gst-register" case.
11306
11307 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11308
11309         * *.c, *.h: commit of gst-indent run on core
11310
11311 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11312
11313         * tools/gst-indent:
11314         * tools/Makefile.am:
11315           add our indentation style as a script
11316
11317 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11318
11319         * po/sr.po:
11320         * po/LINGUAS:
11321           added Serbian translation
11322
11323 2004-03-13  Benjamin Otte  <otte@gnome.org>
11324
11325         * gst/gstelement.c:
11326           add documentation note about gst_element_found_tags_for_pad not
11327           being usable in getfunctions. (see #137042)
11328
11329 2004-03-12  David Schleef  <ds@schleef.org>
11330
11331         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
11332         change API right now!  Readd gst_caps_is_simple() macro.
11333         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
11334         uninitialized variable.  I'd bet this caused crashes.
11335         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
11336
11337 2004-03-12  Johan Dahlin  <johan@gnome.org>
11338
11339         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
11340         * gst/gstcaps.h: Clean up
11341
11342         * gst/gst.c (init_post): call gst_caps_get_type() instead of
11343         _gst_caps_initalize()
11344
11345         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
11346         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
11347
11348         * gst/gststructure.c (gst_structure_get_type): Ditto
11349
11350         * gst/gststructure.h: Ditto
11351         
11352 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11353
11354         * gst/gstqueue.c: (gst_queue_init):
11355           Reset default max. values in queues. Reason is simply to avoid
11356           braindead use. If you want wider values, use the properties. The
11357           default is supposed to always work. Wider values would make this
11358           beast a memory hog by default (250 full-PAL RGB32 video frames?
11359           That's 440 MB! No thank you).
11360
11361 2004-03-10  David Schleef  <ds@schleef.org>
11362
11363         * tools/gst-run.c: (main):  Fix crash when no relevant tools
11364         were found.  (bug #136793)
11365
11366 2004-03-10  Johan Dahlin  <johan@gnome.org>
11367
11368         * gst/schedulers/gstoptimalscheduler.c
11369         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
11370         links to elements within the same group, so we can finally remove
11371         that annoying warning. Refactor the code a little bit
11372         (group_dec_links_for_element): Split out
11373
11374 2004-03-09  David Schleef  <ds@schleef.org>
11375
11376         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
11377         (bug #134863)
11378
11379 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11380
11381         * configure.ac: first bug fix due to major/minor bump
11382
11383 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11384
11385         * configure.ac: bump nano to 1
11386
11387 === release 0.7.6 ===
11388
11389 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11390
11391         * NEWS:
11392         * RELEASE:
11393         * configure.ac:
11394           releasing 0.7.6, "Almost"
11395         * po/fr.po:
11396         * po/nl.po:
11397         * tools/Makefile.am:
11398         * tools/gst-feedback-m.m:
11399           unversioned source
11400
11401 2004-03-09  Johan Dahlin  <johan@gnome.org>
11402
11403         Reviewed by: Thomas Vander Stichele
11404
11405         * gst/gstelement.c (gst_element_class_init): register second
11406         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
11407         language bindings can (de)marshall correctly.
11408
11409         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
11410
11411         * gst/gsterror.c (gst_g_error_get_type): New function
11412
11413         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
11414         with VOID:OBJECT,OBJECT,STRING 
11415
11416 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
11417
11418         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
11419         Free a leaked g_timer on early returns.
11420
11421 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11422
11423         * docs/pwg/advanced-types.xml:
11424           Add cinepak description.
11425
11426 2004-03-07  David Schleef  <ds@schleef.org>
11427
11428         * docs/random/mimetypes:  Added cinepak description
11429
11430 2004-03-07  Andy Wingo  <wingo@pobox.com>
11431
11432         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
11433
11434         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
11435         there are no links to other groups when a group is destroyed.
11436         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
11437         removed from a group, make sure the link count to elements linked
11438         to other pads is appropriately decremented. This really fixes
11439         #135672.
11440
11441         The 1.60->1.61 patch has been reapplied in light of this fix.
11442
11443         * gst/gstelement.c (gst_element_dispose): Really protect against
11444         multiple invocations this time.
11445
11446 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11447
11448         * docs/gst/gstreamer-sections.txt:
11449         * docs/gst/tmpl/gsttag.sgml:
11450           remove some deprecated functions, document some existing ones
11451         * gst/gsttag.c: (gst_tag_get_flag):
11452         * gst/gsttag.h:
11453           add accessor function
11454
11455 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11456
11457         * docs/gst/gstreamer-sections.txt:
11458         * docs/gst/tmpl/gsttag.sgml:
11459         * docs/gst/tmpl/gstxml.sgml:
11460         * gst/gsttag.c: (gst_tag_get_flag):
11461         * gst/gsttag.h:
11462
11463 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
11464
11465         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
11466         leak
11467
11468 2004-03-05  David Schleef  <ds@schleef.org>
11469
11470         * REQUIREMENTS: Add bison and flex.
11471         * configure.ac: Fix comment about bison.
11472         * docs/random/ds/0.9-suggested-changes: yer ma
11473         * tools/gst-inspect.c: (print_element_info):  Fix warning.
11474
11475 2004-03-05  Benjamin Otte  <otte@gnome.org>
11476
11477         * gst/gstelement.c: (gst_element_error_full):
11478           revert recent recursive state changing commit - messing with other
11479           elements' states is evil and should be done by apps only.
11480
11481 2004-03-05  Benjamin Otte  <otte@gnome.org>
11482
11483         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
11484           check for empty intersection instead of NULL caps
11485         (gst_element_get_compatible_pad_filtered):
11486           remove old workaround that is only a bug nowadays
11487
11488 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11489
11490         * gst/gstelement.c: (gst_element_error_full):
11491           make elements try to recursively change state to PAUSED on all
11492           parents after an error to suppress ensuing warnings
11493         * gst/parse/grammar.y:
11494           make it check if it was able to sync the state, and throw an error
11495           if not, so stuff like
11496           oggdemux ! vorbisdec ! osssink gets caught
11497
11498 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11499
11500         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
11501           it contains lib64; use AS_AC_EXPAND to handle it properly
11502
11503 2004-03-05  David Schleef  <ds@schleef.org>
11504
11505         * gst/gstcpuid_i386.s:  Remove unused code
11506         * libs/gst/getbits/getbits.c: (gst_getbits_init),
11507         (gst_getbits_newbuf): Remove MMX code
11508         * libs/gst/getbits/getbits.h: Remove MMX code
11509
11510 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
11511
11512         * debian/.cvsignore:
11513         * debian/README.Debian:
11514         * debian/changelog:
11515         * debian/control:
11516         * debian/control.in:
11517         * debian/copyright:
11518         * debian/gstreamer-core-libs-dev.files:
11519         * debian/gstreamer-core-libs.files:
11520         * debian/gstreamer-core.files:
11521         * debian/gstreamer-core.postinst:
11522         * debian/gstreamer-core.postrm:
11523         * debian/gstreamer-doc.files:
11524         * debian/gstreamer-doc.links:
11525         * debian/gstreamer-doc.lintian:
11526         * debian/gstreamer-runtime.files:
11527         * debian/gstreamer-runtime.manpages:
11528         * debian/gstreamer-runtime.postinst:
11529         * debian/gstreamer-runtime.postrm:
11530         * debian/gstreamer-tools.files:
11531         * debian/gstreamer-tools.manpages:
11532         * debian/libgstreamer-dev.files:
11533         * debian/libgstreamer0.4.1.files:
11534         * debian/libgstreamerVERSION.files:
11535         * debian/rules:
11536         Debian package info not maintained here.
11537
11538 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11539
11540         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11541         * gst/gstbin.c: (gst_bin_class_init):
11542         * gst/gstelement.c: (gst_element_class_init):
11543         * gst/gstindex.c: (gst_index_class_init):
11544         * gst/gstobject.c: (gst_object_class_init),
11545         (gst_signal_object_class_init):
11546         * gst/gstpad.c: (gst_pad_template_class_init):
11547         * gst/gstregistry.c: (gst_registry_class_init):
11548         * gst/gsturi.c: (gst_uri_handler_base_init):
11549         * gst/gstxml.c: (gst_xml_class_init):
11550         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11551         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
11552           make all signal names use dashes instead of underscore
11553
11554 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11555
11556         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
11557
11558 2004-03-03  Benjamin Otte  <otte@gnome.org>
11559
11560         * gst/schedulers/gstoptimalscheduler.c:
11561           revert last commit by Andy Wingo. It causes segfaults on unreffing
11562           in Rhythmbox. (see bug #135672)
11563
11564 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11565
11566         * po/fr.po: fix typo
11567
11568 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11569
11570         * tools/gst-inspect.c: (main): 
11571         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
11572
11573 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11574
11575         * configure.ac:
11576           get GLIB_ONLY and POPT flags for the nonversioned binaries
11577         * tools/Makefile.am:
11578           use them
11579
11580 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11581
11582         * gst/gst.c: (init_post):
11583           change so that GST_REGISTRY now is where the global registry gets
11584           saved, since that is where plugins now get attached to first, and
11585           spilled over to the user registry.  Note that in the case of using
11586           GST_REGISTRY env var, we don't want to affect any real registries
11587           beyond the one given by this var, and thus we don't set a user
11588           registry to spill to.  So make sure GST_REGISTRY is writable.
11589
11590 2004-03-01  David Schleef  <ds@schleef.org>
11591
11592         * AUTHORS:  Added some names.  Add yourself if you're missing.
11593
11594 2004-03-01  David Schleef  <ds@schleef.org>
11595
11596         * MAINTAINERS: Add
11597
11598 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
11599
11600         * configure.ac:
11601           remove whitespace
11602         * docs/gst/tmpl/gstbuffer.sgml:
11603         * docs/gst/tmpl/gstdata.sgml:
11604         * docs/gst/tmpl/gstreamer-unused.sgml:
11605         * docs/gst/tmpl/gstxml.sgml:
11606           doc update
11607         * docs/manuals.mak:
11608           add a FIXME
11609         * docs/pwg/intro-preface.xml:
11610         * docs/pwg/pwg.xml:
11611           remove GNOME
11612         * gst/gst.c: (init_post):
11613           try GST_PLUGIN_PATH paths for the _global_registry first
11614         * gst/gstelement.h:
11615           add the error message as well, otherwise (null) debug info doesn't
11616           make much sense
11617         * tools/gst-register.c: (main):
11618           spill paths to next registry if this registry is not writable
11619         * po/fr.po:
11620         * po/nl.po:
11621           translation updates
11622
11623 2004-03-01  Johan Dahlin  <johan@gnome.org>
11624
11625         * gst/gstbuffer.c (_gst_buffer_initialize): 
11626         * gst/gstdata.c (gst_data_get_type): 
11627         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
11628         instead of ref, since some applications that uses GBoxed
11629         routines depends on a function that actually returns a copy.
11630
11631 2004-02-27  Benjamin Otte  <otte@gnome.org>
11632
11633         * gst/gstbuffer.h:
11634           remove gst_buffer_free, use gst_data_unref
11635         * gst/gstdata.c: (gst_data_get_type):
11636           use refcounting in GstData GBoxed registration
11637         * gst/gstdata.h:
11638           remove gst_data_free, use gst_data_unref
11639
11640 2004-02-27  Johan Dahlin  <johan@gnome.org>
11641
11642         * gst/gstdata.c (gst_data_get_type): New function, register
11643         GstData as a GBoxed type.
11644
11645         * gst/gstdata.h (GST_TYPE_DATA): New macro
11646
11647 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
11648
11649         * Makefile.am:
11650         * gstreamer.spec.in:
11651           put back RELEASE
11652         * gst/Makefile.am:
11653           clean up non-disting of built files
11654         * testsuite/debug/commandline.c:
11655           test fix for option rename
11656
11657 2004-02-26  David Schleef  <ds@schleef.org>
11658
11659         * configure.ac:  We don't really need glib-2.3.  Also remove
11660         some unneeded checks for library functions.
11661         * gst/Makefile.am:  Instead, we need to not dist files created
11662         by glib-genmarshal.
11663
11664 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11665
11666         * configure.ac:
11667           bump glib required version to 2.3.0 for g_value_takes_boxed
11668
11669  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
11670
11671         * common/m4/gst-docs.m4
11672         change flavour text from enable to disable as enable is our default
11673         closes bug Bug 135304
11674
11675 === release 0.7.5 ===
11676  
11677  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11678  
11679         * NEWS:
11680           instate NEWS file
11681         * Makefile.am:
11682         * gstreamer.spec.in:
11683         * RELEASE:
11684           put back release
11685         * configure.ac:
11686         * docs/random/release:
11687           more updates
11688
11689 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11690
11691         * gst/gsttag.c: (_gst_tag_initialize):
11692         * po/fr.po:
11693         * po/nl.po:
11694           remove hyphen from codec tags
11695
11696 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11697
11698         * gst/parse/Makefile.am:
11699           fix dependency so that a make from a clean build works the first
11700           time
11701
11702 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11703
11704         * docs/random/release:
11705           update release strategy
11706         * po/fr.po:
11707           auto-update po file
11708         * po/nl.po:
11709           update dutch translation
11710
11711 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11712
11713         * docs/manual/debugging.xml:
11714         fix manual for new debugging system
11715
11716 2004-02-25  Andy Wingo  <wingo@pobox.com>
11717
11718         * gst/gstpad.c (gst_pad_link_prepare): Re-add
11719         gst_pad_link_prepare. Please email the list with specific reasons
11720         for reverting.
11721
11722 2004-02-24  Andy Wingo  <wingo@pobox.com>
11723
11724         * gst/gstelement.c (gst_element_dispose): Protect against multiple
11725         invocations.
11726
11727         * gst/schedulers/gstoptimalscheduler.c:
11728         I added a mess of prototypes at the top of the file by way of
11729         documentation. Some of the operations on chains and groups were
11730         re-organized.
11731
11732         (create_group): Added a type argument so if the group is enabled,
11733         the setup_group_scheduler knows what to do.
11734         (group_elements): Added a type argument here, too, to be passed on
11735         to create_group.
11736         (group_element_set_enabled): If an unlinked PLAYING element is
11737         added to a bin, we have to create a new group to hold the element,
11738         and this function will be called before the group is added to the
11739         chain. Thus we have a valid case for group->chain==NULL. Instead
11740         of calling chain_group_set_enabled, just set the flag on the group
11741         (the chain's status will be set when the group is added to it).
11742         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
11743         Setup the group scheduler when the group is enabled, not
11744         specifically when an element goes PAUSED->PLAYING. This means
11745         PLAYING elements can be added, linked, and scheduled into a
11746         PLAYING pipeline, as was intended.
11747         (add_to_group): Don't ref the group twice. I don't know when this
11748         double-ref got in here. Removing it has the potential to cause
11749         segfaults if other parts of the scheduler are buggy. If you find
11750         that the scheduler is segfaulting for you, put in an extra ref
11751         here and see if that hacks over the underlying issue. Of course,
11752         then find out what code is unreffing a group it doesn't own...
11753         (create_group): Make the extra refcount floating, and remove it
11754         after adding the element. This means that...
11755         (unref_group): Destroy when the refcount reaches 0, not 1, like
11756         every other refcounted object in the known universe.
11757         (remove_from_group): When a group becomes empty, set it to be not
11758         active, and remove it from its chain. Don't unref it again,
11759         there's no floating reference any more.
11760         (destroy_group): We have to remove the group from the chain in
11761         remove_from_group (rather than here) to break refcounting cycles
11762         (the chain always has a ref on the group). So assert that
11763         group->chain==NULL.
11764         (ref_group_by_count): Removed, it was commented out anyway.
11765         (merge_chains): Use the remove_from_chain and add_to_chain
11766         primitives to do the reparenting, instead of rolling our own
11767         implementation.
11768         (add_to_chain): The first non-disabled group in the chain's group
11769         list will be the entry point for the chain. Because buffers can
11770         accumulate in loop elements' peer bufpens, we preferentially
11771         schedule loop groups before get groups to avoid unnecessary
11772         execution of get-based groups when the bufpens are already full.
11773         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
11774         (get_group_schedule_function): Ditto.
11775         (loop_group_schedule_function): Ditto.
11776         (gst_opt_scheduler_loop_wrapper): Ditto.
11777         (gst_opt_scheduler_iterate): Ditto.
11778
11779         I understand the opt scheduler now, yippee!
11780
11781         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
11782         (gst_pad_get_name, gst_pad_set_chain_function) 
11783         (gst_pad_set_get_function, gst_pad_set_event_function) 
11784         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
11785         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
11786         (gst_pad_set_query_function, gst_pad_get_query_types) 
11787         (gst_pad_get_query_types_default) 
11788         (gst_pad_set_internal_link_function) 
11789         (gst_pad_set_formats_function, gst_pad_set_link_function) 
11790         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
11791         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
11792         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
11793         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
11794         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
11795         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
11796         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
11797         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
11798         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
11799         (gst_pad_event_default_dispatch, gst_pad_event_default) 
11800         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
11801         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
11802         (gst_pad_get_formats_default, gst_pad_get_formats): Better
11803         argument checks, and some doc fixes.
11804
11805         (gst_pad_custom_new_from_template): Um, does anyone
11806         use these functions? Actually make a custom pad instead of a
11807         normal one.
11808         (gst_pad_try_set_caps): Transpose some checks.
11809         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
11810         the pad is in negotiation.
11811         (gst_pad_try_relink_filtered): Use pad_link_prepare.
11812         
11813         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
11814
11815         * gst/gstelement.h: 
11816         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
11817         on the list.
11818
11819 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11820
11821         * gst/gstbin.c: (gst_bin_add):
11822           add error for not being able to add elements
11823
11824 2004-02-22  Julien MOUTTE <julien@moutte.net>
11825
11826         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
11827         audio-codec and video-codec.
11828
11829 2004-02-22  Benjamin Otte  <otte@gnome.org>
11830
11831         reported by: Padraig O'Briain <padraig.obriain@sun.com>
11832
11833         * autogen.sh:
11834           replace test -e with test -x for mkinstalldirs to be more portable.
11835           (fixes #134816)
11836
11837 2004-02-22  Benjamin Otte  <otte@gnome.org>
11838
11839         * gst/gstpad.c:
11840           revert last patch from Andy, it makes gst_pad_can_link_filtered much
11841           too noisy
11842         * gst/gsttag.c: (_gst_tag_initialize):
11843         * gst/gsttag.h:
11844           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
11845         * libs/gst/control/dparam.c: (gst_dparam_attach):
11846         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
11847           check that types for attached dparams match
11848
11849 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11850
11851         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
11852         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11853         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11854           fix errors
11855
11856 2004-02-20  Andy Wingo  <wingo@pobox.com>
11857
11858         * gst/gstbin.c:
11859         * gst/gstbuffer.c:
11860         * gst/gstplugin.c:
11861         * gst/registries/gstxmlregistry.c: 
11862         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
11863
11864         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
11865         (gst_element_add_pad): DEBUG->INFO, some fixes.
11866         (gst_element_get_compatible_pad_template): Just see if the
11867         templates' caps intersect, not if one is a strict subset of the
11868         other. This conforms more to what gst_pad_link_intersect() does.
11869         (gst_element_class_add_pad_template): Don't memcpy the pad
11870         template, just ref it.
11871         (gst_element_get_compatible_pad_filtered): Clean up debug messages
11872
11873         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
11874         (gst_pad_link_filtered): Debug changes.
11875         (gst_pad_link_prepare): New function, consolidated from
11876         can_link_filtered and link_filtered.
11877
11878         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
11879         look more like that of the functions in gstelement.c
11880
11881         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
11882         object, and return the empty string if object is NULL.
11883
11884         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
11885         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
11886         LOG, not DEBUG. We still get flex info on debug.
11887
11888         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
11889         debug string more verbose.
11890         (plugin_times_older_than): DEBUG->LOG.
11891
11892 2004-02-20  Julien MOUTTE <julien@moutte.net>
11893
11894         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
11895         will emit found_tag for each stream they demux with the codec.
11896
11897 2004-02-20  Benjamin Otte  <otte@gnome.org>
11898
11899         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
11900           copy navigation event correctly. Check freeing tag lists. 
11901         * gst/gstthread.c: (gst_thread_change_state):
11902           don't abort() on state changing mess - it might happen because of
11903           bugs.
11904         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
11905           use boxed functions
11906         * gst/gstvalue.h:
11907           fix GST_VALUE_HOLDS_CAPS
11908
11909 2004-02-19  David Schleef  <ds@schleef.org>
11910
11911         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
11912         and use it for GST_FUNCTION.  (bug #134750)
11913
11914 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11915
11916         * po/fr.po:
11917         * po/nl.po:
11918           updating translations
11919
11920 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11921
11922         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
11923
11924 2004-02-18  kost@imn.htwk-leipzig.de
11925
11926         reviewed by: David Schleef  <ds@schleef.org>
11927
11928         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
11929         for libgstcontrol.
11930
11931 2004-02-18  David Schleef  <ds@schleef.org>
11932
11933         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11934         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11935         (gst_dpsmooth_new): Additional fixes to get double dparams working.
11936         * tools/gst-inspect.c: (print_element_info): Support dumping of
11937         double dparam information.
11938
11939 2004-02-17  David Schleef  <ds@schleef.org>
11940
11941         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11942         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
11943         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
11944         Use GST_TYPE_CAPS in signal prototype.
11945         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
11946         Convert GST_TYPE_CAPS to boxed.
11947         * gst/gstelement.c: (gst_element_class_init):
11948         Use GST_TYPE_TAG_LIST in signal prototype.
11949         * gst/gstindex.c: (gst_index_class_init):
11950         * gst/gstindex.h:
11951         Add GST_TYPE_INDEX_ENTRY type.
11952         * gst/gstmarshal.list:
11953         Add necessary marshal types.
11954         * gst/gstpad.c: (gst_real_pad_class_init),
11955         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
11956         (gst_pad_recover_caps_error):
11957         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
11958         * gst/gststructure.c: (_gst_structure_initialize),
11959         (gst_structure_copy), (_gst_structure_copy_conditional):
11960         * gst/gststructure.h:
11961         Convert GST_TYPE_STRUCTURE to boxed.
11962         * gst/gsttag.c: (gst_tag_list_get_type):
11963         * gst/gsttag.h:
11964         Add GST_TYPE_TAG_LIST type.
11965
11966 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11967
11968         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
11969         to what we agreed with david.
11970         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
11971
11972 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11973
11974         * po/nl.po: update translation
11975
11976 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11977
11978         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
11979           throw an error if spider is trying to play a mime type there is
11980           no decoder for
11981         * po/POTFILES.in:
11982           add gst/autoplug/gstspider.c for translation
11983
11984 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11985
11986         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
11987         silently when the pad is negotiating.
11988
11989 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11990
11991         * docs/faq/Makefile.am:
11992           add script to run gstreamer uninstalled 
11993         * docs/faq/faq.xml:
11994         * docs/faq/developing.xml:
11995         * docs/faq/gst-uninstalled:
11996           extract script to run gstreamer uninstalled
11997         * docs/manuals.mak:
11998           add EXTRA_SOURCES variable for Makefile.am's to set to
11999           use additional SOURCE files for the doc build
12000
12001 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
12002
12003         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
12004
12005 2004-02-15  Julien MOUTTE  <julien@moutte.net>
12006
12007         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
12008         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
12009         an error was thrown by osssink. Basically a state change failure for
12010         an element in a different scheduling group was considered as
12011         successful, which means that caps nego was going on and weird stuff
12012         happened. Like I wrote in the comment there, if someone wants to
12013         revert that please drop me a mail explaining why because I really see
12014         no point in keeping that broken behaviour there.
12015         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
12016         be empty, we then return NULL which will trigger a nice error when 
12017         pulling from the pad.
12018
12019 2004-02-13  David Schleef  <ds@schleef.org>
12020
12021         * libs/gst/control/dparam.c: (gst_dparam_class_init),
12022         (gst_dparam_get_property), (gst_dparam_set_property),
12023         (gst_dparam_do_update_default):
12024         * libs/gst/control/dparam.h:
12025         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
12026         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
12027         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
12028         (gst_dpsmooth_do_update_double):
12029         * libs/gst/control/dparam_smooth.h:
12030         * libs/gst/control/dparammanager.c:
12031         (gst_dpman_inline_direct_update):
12032         Add support for double dparams.
12033
12034 2004-02-13  David Schleef  <ds@schleef.org>
12035
12036         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
12037         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
12038
12039 2004-02-13  Mattias Wadman  <mattias@sudac.org>
12040
12041         reviewed by: David Schleef  <ds@schleef.org>
12042
12043         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
12044         (gst_fdsrc_init), (gst_fdsrc_set_property),
12045         (gst_fdsrc_get_property), (gst_fdsrc_get):
12046         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
12047         and sends an EOS event if file descriptor reading times out.
12048
12049 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12050
12051         * configure.ac:
12052           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
12053
12054 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12055
12056         * configure.ac: pass required libxml version as argument
12057         (bug reported by Christophe Fergeau)
12058
12059 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12060   
12061         * docs/gst/gstreamer-docs.sgml:
12062         * docs/gst/tmpl/gstxml.sgml:
12063         * docs/libs/gstreamer-libs-docs.sgml:
12064           version API docs
12065
12066 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12067
12068         * gst/gstinfo.c:
12069         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
12070         (gst_registry_pool_feature_filter):
12071         * gst/gstthread.c: (gst_thread_class_init):
12072         * gst/gstvalue.c:
12073           add includes exposed by building without libxml
12074         * gst/indexers/Makefile.am:
12075           do not build fileindex when LOADSAVE disabled; we should have
12076           a better libxml check later since fileindex depends on xml, not
12077           LOADSAVE or REGISTRY
12078         * libs/gst/control/Makefile.am:
12079           link with m
12080         * tools/Makefile.am:
12081           fix wrong source code for gst-xmlinspect
12082
12083 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12084
12085         * configure.ac:
12086           fix gcov help output
12087           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
12088         * docs/random/release:
12089           some updated releasing notes
12090         * gstreamer.spec.in:
12091           more updates
12092
12093 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12094
12095         * docs/faq/faq.xml:
12096         * docs/manual/manual.xml:
12097         * docs/pwg/pwg.xml:
12098         * docs/pwg/titlepage.xml:
12099           put version in documentation
12100
12101 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12102
12103         * tools/Makefile.am: fix man page installation
12104
12105 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12106
12107         * configure.ac:
12108           don't check for libxml when load/save and registry disabled (#105844)
12109         * gstreamer.spec.in:
12110           sync with fedora candidate spec
12111
12112 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12113
12114         * po/fr.po:
12115         * po/nl.po:
12116           replace multidisksrc with multifilesrc
12117
12118 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12119
12120         * po/POTFILES.in:
12121           update to multidisksrc => multifilesrc file renaming (#134145)
12122
12123 2004-02-11  David Schleef  <ds@schleef.org>
12124
12125         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
12126         * docs/gst/tmpl/gstpadtemplate.sgml: same
12127         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
12128         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
12129         fixing dance.
12130         * gst/gstutils.c: Remove disabled code that uses GstProps.
12131         * gst/registries/gstxmlregistry.h: same
12132         * docs/random/ds/0.9-suggested-changes: random notes
12133
12134 2004-02-11  kost@imn.htwk-leipzig.de
12135
12136         reviewed by: David Schleef  <ds@schleef.org>
12137
12138         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
12139         initialisation of clock (bug #134128)
12140
12141 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12142
12143         * configure.ac:
12144         * gst/elements/Makefile.am:
12145         * gst/elements/gstelements.c:
12146         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
12147         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
12148         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
12149         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
12150         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
12151         * gst/elements/gstmultifilesrc.h:
12152           rename multidisksrc to multifilesrc (part of #122200)
12153
12154 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12155
12156         * docs/manuals.mak:
12157           fix automake complaints
12158         * gst-element-check.m4:
12159           fix unquotedness
12160
12161 2004-02-11  David Schleef  <ds@schleef.org>
12162
12163         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
12164         * gst/gstatomic_impl.h: Disable sparc implementation.
12165
12166 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12167
12168         * gst-element-check.m4:
12169           fix underquoted macros as reported by automake 1.8.x (#133800)
12170         * configure.ac:
12171           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
12172           by autopoint (fixes #132996)
12173
12174 2004-02-10  Andy Wingo  <wingo@pobox.com>
12175
12176         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
12177         way to do inheritance.
12178         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
12179         (gst_pad_get_query_types, gst_pad_get_query_types_default):
12180         Routine docs.
12181         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
12182         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
12183         doc.
12184         (gst_pad_unlink, gst_pad_is_linked): Docs.
12185         (gst_pad_renegotiate): A brief description of capsnego.
12186         (gst_pad_try_set_caps): Document.
12187         (gst_pad_try_set_caps_nonfixed): Document.
12188         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
12189         (gst_pad_set_parent): Deprecated (although not out of the API).
12190         (gst_pad_get_parent): Deprecated, although many plugins use this.
12191         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
12192         are private and will go away in 0.9.
12193         (gst_pad_perform_negotiate): Doc.
12194         (gst_pad_link_unnegotiate): I think this is meant to be static.
12195         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
12196         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
12197         (gst_pad_get_peer): Doc updates.
12198         (gst_pad_caps_change_notify): Doc.
12199         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
12200         (gst_ghost_pad_new): Doc fixes.
12201
12202         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
12203         (gst_object_check_uniqueness): 
12204
12205         * gst/gstelement.c (gst_element_add_pad) 
12206         (gst_element_add_ghost_pad, gst_element_remove_pad) 
12207         (gst_element_remove_ghost_pad, gst_element_get_pad) 
12208         (gst_element_get_static_pad, gst_element_get_pad_list) 
12209         (gst_element_class_get_pad_template_list) 
12210         (gst_element_class_get_pad_template): Work on the docs.
12211         (gst_element_get_pad_template_list): Uses the class method.
12212         (gst_element_get_compatible_pad_template): Docs, and consolidate
12213         some test conditions. 
12214         (gst_element_get_pad_from_template): New static function.
12215         (gst_element_request_compatible_pad): Docs, and work with
12216         non-request compatible templates. 
12217         (gst_element_get_compatible_pad_filtered): Docs and remove
12218         redundant checks.
12219         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
12220         (gst_element_link_filtered, gst_element_link_many) 
12221         (gst_element_link, gst_element_link_pads) 
12222         (gst_element_unlink_many): Docs.
12223
12224 2004-02-05  Andy Wingo  <wingo@pobox.com>
12225
12226         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
12227         s/pointer/boxed/.
12228
12229         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
12230
12231         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
12232         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
12233         with the type=GST_TYPE_CAPS. This allows language bindings to know
12234         what kind of data they're dealing with.
12235
12236         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
12237         to NULL when g_value_init is called. GstCaps, which rolls its own
12238         type implementation, now does the same instead of allocating empty
12239         caps.
12240         (_gst_caps_initialize, _gst_caps_collect_value,
12241         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
12242         table methods. This allows G_VALUE_COLLECT to work.
12243
12244 2004-02-05  Andy Wingo  <wingo@pobox.com>
12245
12246         * configure.ac:
12247         * testsuite/Makefile.am (SUBDIRS): 
12248         * testsuite/ghostpads/Makefile.am: 
12249         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
12250
12251         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
12252         These two routines are the only ones that set
12253         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
12254         pad template. They should be made static, depending on ABI needs.
12255         (gst_real_pad_dispose): Handle the case of ghost pads without a
12256         parent. Assert after dealing with ghost pads that the ghost pad
12257         list is empty.
12258         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
12259         set after creation.
12260         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
12261         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
12262         functions. set_property will call add_ghost_pad/remove_ghost_pad
12263         as appropriate.
12264         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
12265
12266         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
12267         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
12268         (gst_element_remove_pad): Handle ghost pads as well.
12269         (gst_element_remove_ghost_pad): Deprecated (could be removed,
12270         depending on API-stability needs).
12271
12272 2004-02-05  Andy Wingo  <wingo@pobox.com>
12273
12274         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
12275         of course they're const
12276
12277 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12278
12279         * tools/Makefile.am:
12280         * tools/gst-feedback:
12281         * tools/gst-feedback-0.7:
12282           make gst-feedback versioned too for consistency
12283
12284 2004-02-11  David Schleef  <ds@schleef.org>
12285
12286         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12287         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
12288
12289 2004-02-10  Julien MOUTTE <julien@moutte.net>
12290
12291         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
12292         the structure does not contain a valid tag list. Adding a safety check
12293         to remove a noisy warning in that case.
12294
12295 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
12296
12297         * gst/gst.c: fix name to be in line with others
12298
12299 2004-02-09  Julien MOUTTE <julien@moutte.net>
12300
12301         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
12302         not shout that loud when len is 0. Just return 0 silently.
12303
12304 2004-02-09  Julien MOUTTE  <julien@moutte.net>
12305
12306         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
12307         because data_unref has one and I prefer the debug to be symetric.
12308         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
12309         were refed when added to the queue and unrefed only once when the queue
12310         was flushed. Now the flush handler unref the buffers two times : first
12311         unref for the ref added when pushing in the queue's tail and second
12312         unref to destroy the flushed buffer.
12313
12314 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
12315
12316         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
12317
12318 2004-02-06  David Schleef  <ds@schleef.org>
12319
12320         * docs/random/ds/0.9-suggested-changes: Random ramblings
12321         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
12322         to int before printing.
12323         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
12324         * gst/parse/parse.l: same.  See bug #129600
12325
12326 2004-02-06  David Schleef  <ds@schleef.org>
12327
12328         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
12329         (gst_index_add_entry), (gst_index_add_associationv),
12330         (gst_index_add_association): Add gst_index_add_associationv()
12331         and clean up gst_index_add_association(). #127133
12332
12333 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12334
12335         * autogen.sh: check out common with right tag if CVS/Tag exists
12336
12337 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12338
12339         * testsuite/ghostpads/ghostpads.c: (main):
12340           fix testsuite from segfaulting
12341
12342 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12343
12344         * Makefile.am: add release target
12345         * configure.ac: bump nano to 1
12346         * docs/random/release:
12347
12348 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12349
12350         * gst/gstcaps.h:
12351         * gst/gstelement.c: (gst_element_base_class_init),
12352         (gst_element_class_set_details), (gst_element_clear_pad_caps):
12353         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12354         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
12355         (gst_real_pad_dispose):
12356         * gst/gststructure.c: (gst_structure_free),
12357         (gst_structure_from_string):
12358           put reverted patch back in
12359         * gst/gstelement.c: (gst_element_remove_pad):
12360           free explicit caps if they're set
12361         * gst/gstpad.c: (_gst_pad_default_fixate_func):
12362           copy the structure when fixating
12363
12364 2004-02-05  David Schleef  <ds@schleef.org>
12365
12366         * gst/gstmarshal.list:
12367         * gst/gstpad.c: (gst_real_pad_class_init),
12368         (_gst_real_pad_fixate_accumulator):
12369         Revert POINTER->BOXED change in signal marshaller.
12370
12371 === release 0.7.4 ===
12372                                                                                 
12373 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12374                                                                                 
12375         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
12376         * configure.ac: changed for release
12377
12378 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
12379
12380         * gstreamer.spec.in:
12381           bump required version of gtk-doc
12382
12383 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
12384
12385         * gst/gstcaps.h:
12386         * gst/gstelement.c: (gst_element_base_class_init),
12387         (gst_element_class_set_details), (gst_element_clear_pad_caps):
12388         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12389         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
12390         (gst_real_pad_dispose):
12391         * gst/gststructure.c: (gst_structure_free),
12392         (gst_structure_from_string):
12393           revert patch that breaks applications, reapply after release
12394           to get this fixed properly
12395
12396 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12397
12398         * gst/gsttag.c: (_gst_tag_initialize):
12399         * gst/gsttag.h:
12400           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
12401
12402 2004-02-04  David Schleef  <ds@schleef.org>
12403
12404         Fix some memleaks:
12405         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
12406         (gst_spider_plug_from_srcpad):
12407         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
12408
12409 2004-02-04  David Schleef  <ds@schleef.org>
12410
12411         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
12412         a GstRealPad before accessing its structure members.
12413
12414 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12415
12416         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
12417         (gst_clock_get_speed):
12418         * gst/gstclock.h:
12419           reset padding, remove unused fields
12420
12421 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12422
12423         * gst/autoplug/gstspideridentity.c:
12424         (gst_spider_identity_sink_loop_type_finding):
12425           use get_allowed_caps, not get_caps (fixes #132519)
12426         * gst/elements/gsttypefind.c: (stop_typefinding):
12427           use correct order when sending buffers and seeking
12428
12429 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12430
12431         * configure.ac:
12432         * gst/gstelement.h:
12433         * gst/gstpad.h:
12434         * gst/gstqueue.h:
12435           upgrade libtool CURRENT, reset padding
12436
12437 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12438
12439         * configure.ac:
12440           bump to prerelease
12441           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
12442
12443 2004-02-04  David Schleef  <ds@schleef.org>
12444
12445         * docs/random/ds/0.9-suggested-changes: random notes
12446         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
12447         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
12448         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
12449         expansion.
12450         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
12451         (gst_filesink_get_query_types): same
12452         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
12453         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
12454         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
12455         to use new GST_PTR_FORMAT.
12456         * gst/gstelement.h: deprecate function factory macros
12457         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
12458         These are our last variadic macros that can't be replaced with
12459         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
12460         attempting to deprecate gst_element_clock_wait().
12461         * gst/gstevent.h: same
12462         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12463         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
12464         * gst/gstpad.h: deprecate function factory macros similar to above.
12465
12466 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12467
12468         * configure.ac:
12469         * tools/Makefile.am:
12470         * tools/gst-run.c: (popt_callback), (hash_print_key),
12471         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
12472         (get_candidates), (main):
12473           add new source file to generate non-versioned wrapper binaries
12474           for our tools.
12475
12476 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12477
12478         * gst/gstevent.c: (_gst_event_free):
12479           actually break; inside the switch statement
12480         * gst/parse/grammar.y:
12481           fix memleak where GValues weren't unset
12482
12483 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12484
12485         * gst/gststructure.c: (gst_structure_from_string):
12486           fix huge memleak
12487         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12488         (new_entry), (gst_type_find_element_chain):
12489         * gst/gstelement.c: (gst_element_base_class_init),
12490         (gst_element_class_set_details):
12491         * gst/gstpad.c: (gst_pad_can_link_filtered):
12492           fix smaller memleaks
12493         * gst/gstpad.c: (gst_real_pad_dispose):
12494           check that explicit caps are gone
12495         * gst/gststructure.c: (gst_structure_free):
12496           actually free the structure
12497         * gst/gstelement.c: (gst_element_clear_pad_caps):
12498           unset explicit caps
12499
12500 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12501
12502         * tools/Makefile.am:
12503           use AM_CFLAGS since all the CFLAGS are the same
12504           use AM_LDFAGS
12505
12506 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12507
12508         * docs/manual/gnome.xml:
12509           expand example a little
12510         * gst/gst.c: (gst_init_with_popt_table),
12511         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
12512           make sure popt option displays are done with right textdomain
12513           use GstPoptOption type
12514         * gst/gst.h:
12515           create GstPoptOption type
12516
12517 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12518
12519         * gst/gsterror.c: (_gst_stream_errors_init):
12520         * gst/gsterror.h:
12521           adding error type for no codec
12522         * po/POTFILES.in:
12523           add gst-inspect
12524         * po/nl.po:
12525           update dutch translation
12526         * tools/gst-inspect.c: (print_element_list), (main):
12527           do proper internationalization
12528         * tools/gst-launch.c: (idle_func):
12529           remove commented out function call
12530
12531 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12532
12533         * docs/README:
12534           add some error fixing notes
12535         * docs/gst/gstreamer-sections.txt:
12536           remove double entries
12537         * docs/gst/tmpl/gstbin.sgml:
12538         * docs/gst/tmpl/gstclock.sgml:
12539           remove override
12540         * docs/gst/tmpl/gstelement.sgml:
12541         * docs/gst/tmpl/gstindex.sgml:
12542         * docs/gst/tmpl/gstobject.sgml:
12543         * docs/gst/tmpl/gstpadtemplate.sgml:
12544         * docs/gst/tmpl/gstreamer-unused.sgml:
12545         * docs/gst/tmpl/gsttag.sgml:
12546         * docs/gst/tmpl/gstthread.sgml:
12547         * docs/gst/tmpl/gstxml.sgml:
12548         * gst/gsttag.h:
12549           sync header prototypes with c decls
12550         * gst/gsttaginterface.c:
12551           fix doc headers
12552
12553 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12554
12555         * gst/parse/Makefile.am:
12556         * gst/gstobject.h:
12557           get rid of gstmarshal.h dependency. It's not needed.
12558         * gst/gst.h:
12559         * gst/elements/gstfakesink.c:
12560         * gst/elements/gstfakesrc.c:
12561         * gst/elements/gstidentity.c:
12562         * gst/gstbin.c:
12563         * gst/gstelement.c:
12564         * gst/gstindex.c:
12565         * gst/gstobject.c:
12566         * gst/gstpad.c:
12567         * gst/gstthread.c:
12568         * gst/gstxml.c:
12569         * libs/gst/control/dparam.c:
12570         * libs/gst/control/dparammanager.c:
12571           include gstmarshal.h.
12572         Fixes #132045
12573
12574 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12575
12576         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
12577         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
12578         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
12579         * gst/elements/gstfilesrc.h:
12580           don't ref the filesrc when creating mmaped buffers. Don't keep a
12581           list of not-yet-destroyed buffers.
12582         * gst/gstbuffer.h:
12583           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
12584
12585 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12586
12587         * gst/gst.c: (init_pre):
12588           remove textdomain
12589
12590 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12591
12592         * docs/pwg/advanced-events.xml:
12593         * docs/pwg/advanced-scheduling.xml:
12594         * docs/pwg/intro-basics.xml:
12595         * docs/pwg/other-manager.xml:
12596         * docs/pwg/other-nton.xml:
12597         * docs/pwg/other-ntoone.xml:
12598         * docs/pwg/other-oneton.xml:
12599         * docs/pwg/pwg.xml:
12600           All sort of documentation... Forgot what. Point is that I want this
12601           in before I leave. The 'other-*' will be the last section and will
12602           explain issues specific to these type of elements.
12603
12604 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12605
12606         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12607         (gst_filesrc_get_read):
12608           set all the values on buffers that we can
12609
12610 2004-02-02  David Schleef  <ds@schleef.org>
12611
12612         Change usage of isblah() to g_ascii_isblah() to be more locale
12613         independent.  (#133076)
12614         * gst/gsturi.c: (gst_uri_protocol_check_internal):
12615         * gst/gstutils.c:
12616         * gst/parse/parse.l:
12617
12618 2004-02-02  Jon Trowbridge  <trow@gnu.org>
12619
12620         reviewed by: David Schleef  <ds@schleef.org>
12621
12622         Fix memory leaks:
12623         * gst/gstcaps.c: (gst_caps_to_string):
12624         * gst/registries/gstxmlregistry.c:
12625         (gst_xml_registry_add_path_list_func),
12626         (gst_xml_registry_parse_padtemplate):
12627
12628 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12629
12630         * gst/gstelement.c: (gst_element_default_error):
12631           suffix error messages with period
12632
12633 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12634
12635         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12636         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12637         * gst/gsterror.c: (gst_error_get_message):
12638           Suffix with dots
12639         * po/fr.po:
12640         * po/nl.po:
12641           Update translation files
12642
12643 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12644
12645         * gst/autoplug/gstspideridentity.c:
12646         (gst_spider_identity_sink_loop_type_finding):
12647         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12648         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12649         (gst_filesink_close_file), (gst_filesink_handle_event),
12650         (gst_filesink_chain):
12651         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12652         (gst_filesrc_get_read), (gst_filesrc_open_file):
12653         * gst/elements/gstidentity.c: (gst_identity_chain):
12654         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12655         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12656         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12657         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12658         * gst/gsterror.c: (_gst_core_errors_init),
12659         (_gst_library_errors_init), (_gst_resource_errors_init),
12660         (_gst_stream_errors_init), (gst_error_get_message):
12661         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12662         (gst_pad_recover_caps_error), (gst_pad_pull):
12663         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12664         * gst/schedulers/gstbasicscheduler.c:
12665         (gst_basic_scheduler_chainhandler_proxy),
12666         (gst_basic_scheduler_gethandler_proxy),
12667         (gst_basic_scheduler_cothreaded_chain):
12668           Suffix error messages with period.
12669           Use (NULL) instead of NULL
12670
12671 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12672
12673         * docs/gst/tmpl/gstelement.sgml:
12674         * docs/gst/tmpl/gstxml.sgml:
12675         * gst/gstelement.c: (gst_element_error_full):
12676           add element path to error
12677
12678 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12679
12680         * docs/random/mimetypes:
12681           update raw int/float info
12682         * gst/gsttag.c: (_gst_tag_initialize):
12683         * gst/gsttag.h:
12684           add GST_TAG_ENCODER
12685
12686 2004-01-30  David Schleef  <ds@schleef.org>
12687
12688         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
12689           missing (#132991)
12690
12691 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
12692
12693         reviewed by Benjamin Otte 
12694           parts of the patch submitted in bug #113913
12695
12696         * configure.ac:
12697           use AC_C_INLINE. Use = instead of == with test
12698         * examples/plugins/example.c:
12699         * gst/autoplug/gstspideridentity.c:
12700         * gst/elements/gstfdsrc.c:
12701         * gst/elements/gstfilesrc.c:
12702         * gst/elements/gstidentity.c:
12703         * gst/elements/gstmultidisksrc.c:
12704         * gst/elements/gststatistics.c:
12705         * gst/gstelement.c:
12706         * gst/gstobject.c:
12707         * gst/gstpad.c:
12708         * gst/gstpipeline.c:
12709         * gst/gstthread.c:
12710           don't end enums with a comma
12711         * gst/gstindex.c: (gst_index_compare_func):
12712           do explicit casting to gint
12713         * gst/gsttrace.c: (gst_trace_text_flush):
12714           #define strsize as a macro
12715
12716 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
12717
12718         * docs/README:
12719         * docs/gst/gstreamer-docs.sgml:
12720         * docs/gst/gstreamer-sections.txt:
12721         * docs/gst/tmpl/gstelement.sgml:
12722         * docs/gst/tmpl/gsterror.sgml:
12723         * docs/gst/tmpl/gstinterface.sgml:
12724         * docs/gst/tmpl/gstreamer-unused.sgml:
12725         * docs/gst/tmpl/gststructure.sgml:
12726         * docs/gst/tmpl/gsttag.sgml:
12727         * docs/gst/tmpl/gsttaginterface.sgml:
12728         * docs/gst/tmpl/gstvalue.sgml:
12729         make sure all API ends up in the built docs
12730         * gst/gstinterface.c:
12731         * gst/gststructure.c: (gst_structure_id_set_value),
12732         (gst_structure_set_value), (gst_structure_id_get_value):
12733         * gst/gststructure.h:
12734         * gst/gstvalue.h:
12735         sync .h with .c declarations
12736
12737 2004-01-30  Julien Moutte  <julien@moutte.net>
12738
12739         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
12740         Ronald will fix riffread.
12741
12742 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12743
12744         * docs/pwg/advanced-interfaces.xml:
12745           Added tuner interface docs.
12746
12747 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12748
12749         * docs/random/mimetypes:
12750           correct Theora information
12751         * gst/gstelement.h:
12752           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
12753
12754 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12755
12756         * gst/gstelement.c: (gst_element_error_full):
12757         * gst/gstelement.h:
12758           GST_ELEMENT_ERROR in enum -> _IN_ERROR
12759
12760 2004-01-29  Julien MOUTTE  <julien@moutte.net>
12761
12762         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
12763         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
12764         again and even before DISCONT.
12765         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
12766         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
12767         bytestream so that it's not stopping to fill the bytestream if events
12768         different than EOS or DISCONT are received. Instead it process them so
12769         that they go downstream.
12770
12771 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12772
12773         * docs/gst/tmpl/gstelement.sgml:
12774         * docs/gst/tmpl/gstreamer-unused.sgml:
12775         * docs/gst/tmpl/gstxml.sgml:
12776         * gst/autoplug/gstspideridentity.c:
12777         (gst_spider_identity_sink_loop_type_finding):
12778         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12779         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12780         (gst_filesink_close_file), (gst_filesink_handle_event),
12781         (gst_filesink_chain):
12782         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12783         (gst_filesrc_get_read), (gst_filesrc_open_file):
12784         * gst/elements/gstidentity.c: (gst_identity_chain):
12785         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12786         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12787         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12788         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12789         * gst/gstelement.h:
12790         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12791         (gst_pad_recover_caps_error), (gst_pad_pull):
12792         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12793         * gst/schedulers/gstbasicscheduler.c:
12794         (gst_basic_scheduler_chainhandler_proxy),
12795         (gst_basic_scheduler_gethandler_proxy),
12796         (gst_basic_scheduler_cothreaded_chain):
12797           gst_element_error -> GST_ELEMENT_ERROR
12798
12799 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12800
12801         * docs/Makefile.am:
12802         * docs/gst/tmpl/gstelement.sgml:
12803         * docs/gst/tmpl/gstxml.sgml:
12804         * docs/manuals.mak:
12805         * docs/pwg/advanced-request.xml:
12806         * docs/pwg/advanced-scheduling.xml:
12807         * docs/pwg/advanced-tagging.xml:
12808           fix non-validating docbook using CDATA
12809           make sure make check-local gets run first to check if it validates
12810
12811 2004-01-29  Julien MOUTTE <julien@moutte.net>
12812
12813         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
12814         handling (up and downstream).
12815         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
12816         my_filter thing.
12817
12818 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12819
12820         * docs/pwg/advanced-tagging.xml:
12821           Add docs about tag writing.
12822
12823 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12824
12825         * docs/pwg/advanced-tagging.xml:
12826           Add a part about tag reading and application signalling... Tag
12827           writing still needs to be documented.
12828         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12829           We can set file locations in READY, too.
12830
12831 2004-01-29  Julien MOUTTE <julien@moutte.net>
12832
12833         * docs/random/ds/element-checklist: Adding some notes about src
12834         events.
12835
12836 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12837
12838         * docs/random/mimetypes:
12839           Update docs to point to correct elements for various mimetypes, and
12840           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
12841           <stephane.loeuillet@tiscali.fr>.
12842
12843 2004-01-28  David Schleef  <ds@schleef.org>
12844
12845         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
12846
12847 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12848
12849         * docs/random/mimetypes:
12850           update docs for audio/x-raw-float. Add "buffer-frames=0 means
12851           undefined"
12852         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12853           make it only work in NULL.
12854         * gst/gstcaps.c:
12855           don't posion NULL caps
12856         * gst/gstelement.c: (gst_element_set_time):
12857           add debugging statement
12858         * gst/gstelement.c: (gst_element_emit_found_tag),
12859         (gst_element_found_tag_func), (gst_element_found_tags):
12860         * gst/gstelement.h:
12861           These functions take const taglists
12862         * gst/gstpad.c: (gst_pad_proxy_getcaps):
12863           fix memleak
12864         * gst/gstpad.c: (gst_pad_event_default):
12865           make more effort on handling discont and clocks, g_warn if everything
12866           fails
12867         * gst/gststructure.c: (gst_structure_remove_fields),
12868         (gst_structure_remove_fields_valist):
12869         * gst/gststructure.h:
12870           add gst_structure_remove_fields(_valist)
12871         * gst/gsttag.c:
12872           fix doc glitch
12873
12874 2004-01-28  David Schleef  <ds@schleef.org>
12875
12876         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
12877         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
12878         Fix memory leakage of gst_caps_to_string().
12879
12880         Use GST_PTR_FORMAT instead of gst_caps_to_string():
12881         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
12882         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
12883         (gst_spider_identity_sink_loop_type_finding):
12884         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12885         (find_suggest):
12886         * gst/gstpad.c: (gst_pad_try_relink_filtered),
12887         (gst_pad_set_explicit_caps):
12888         * gst/parse/grammar.y:
12889
12890 2004-01-28  David Schleef  <ds@schleef.org>
12891
12892         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
12893         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
12894         * docs/random/ds/0.9-suggested-changes: Notes from Company.
12895         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
12896         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
12897         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
12898         (gst_debug_log_default), (_gst_info_printf_extension),
12899         (_gst_info_printf_extension_arginfo):  Add printf extension.
12900         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
12901         * gst/gststructure.c: (gst_structure_to_string),
12902         (_gst_structure_parse_value): Use gst_value_deserialize() and
12903         remove old code.
12904         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
12905         (gst_value_deserialize_boolean), (gst_strtoi),
12906         (gst_value_deserialize_int), (gst_value_deserialize_double),
12907         (gst_value_deserialize_string), (gst_value_deserialize): Implement
12908         a bunch of deserialize functions and gst_value_deserialize.
12909         * gst/gstvalue.h: er, _de_serialize, not unserialize
12910         * testsuite/caps/string-conversions.c: (main): We don't currently
12911         handle (float) in caps, so convert these to (double).
12912         * testsuite/debug/Makefile.am: Add new test for the printf extension
12913         * testsuite/debug/printf_extension.c: (main): same
12914
12915 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12916
12917         * docs/random/company/time:
12918           Add some docs about clocking and time
12919
12920 2004-01-28  Julien MOUTTE <julien@moutte.net>
12921
12922         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
12923
12924 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12925
12926         * docs/pwg/advanced-clock.xml:
12927         * docs/pwg/advanced-dparams.xml:
12928         * docs/pwg/advanced-events.xml:
12929         * docs/pwg/advanced-interfaces.xml:
12930         * docs/pwg/advanced-midi.xml:
12931         * docs/pwg/advanced-request.xml:
12932         * docs/pwg/advanced-scheduling.xml:
12933         * docs/pwg/advanced-tagging.xml:
12934         * docs/pwg/advanced-types.xml:
12935         * docs/pwg/appendix-checklist.xml:
12936         * docs/pwg/building-boiler.xml:
12937         * docs/pwg/building-chainfn.xml:
12938         * docs/pwg/building-filterfactory.xml:
12939         * docs/pwg/building-pads.xml:
12940         * docs/pwg/building-props.xml:
12941         * docs/pwg/building-signals.xml:
12942         * docs/pwg/building-state.xml:
12943         * docs/pwg/building-testapp.xml:
12944         * docs/pwg/intro-basics.xml:
12945         * docs/pwg/intro-preface.xml:
12946         * docs/pwg/other-autoplugger.xml:
12947         * docs/pwg/other-sink.xml:
12948         * docs/pwg/other-source.xml:
12949         * docs/pwg/titlepage.xml:
12950           fix up id's
12951
12952 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12953
12954         * docs/95NonPath:
12955         * docs/HACKING:
12956         * docs/README:
12957         * docs/building-the-docs-on-debian:
12958           collect relevant bits of doc info
12959
12960 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12961
12962         * docs/pwg/advanced_tagging.xml:
12963           Half-assed commit so Thomas can re-arrange document IDs here to be
12964           consistent, too.
12965
12966 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12967
12968         * docs/manual/autoplugging.xml:
12969         * docs/manual/bins-api.xml:
12970         * docs/manual/bins.xml:
12971         * docs/manual/buffers-api.xml:
12972         * docs/manual/buffers.xml:
12973         * docs/manual/clocks.xml:
12974         * docs/manual/components.xml:
12975         * docs/manual/cothreads.xml:
12976         * docs/manual/debugging.xml:
12977         * docs/manual/dparams-app.xml:
12978         * docs/manual/dynamic.xml:
12979         * docs/manual/elements-api.xml:
12980         * docs/manual/elements.xml:
12981         * docs/manual/factories.xml:
12982         * docs/manual/gnome.xml:
12983         * docs/manual/goals.xml:
12984         * docs/manual/helloworld.xml:
12985         * docs/manual/helloworld2.xml:
12986         * docs/manual/init-api.xml:
12987         * docs/manual/intro.xml:
12988         * docs/manual/links-api.xml:
12989         * docs/manual/links.xml:
12990         * docs/manual/manual.xml:
12991         * docs/manual/motivation.xml:
12992         * docs/manual/pads-api.xml:
12993         * docs/manual/pads.xml:
12994         * docs/manual/plugins-api.xml:
12995         * docs/manual/plugins.xml:
12996         * docs/manual/programs.xml:
12997         * docs/manual/queues.xml:
12998         * docs/manual/quotes.xml:
12999         * docs/manual/schedulers.xml:
13000         * docs/manual/states-api.xml:
13001         * docs/manual/states.xml:
13002         * docs/manual/threads.xml:
13003         * docs/manual/typedetection.xml:
13004         * docs/manual/xml.xml:
13005           use chapter, part, section or misc as id starts for all bits
13006
13007 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13008
13009         * docs/gst/gstreamer-sections.txt:
13010           Fix up TITLE of the sections
13011
13012 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13013
13014         * docs/pwg/advanced_interfaces.xml:
13015           Add documentation on propertyprobing.
13016         * docs/pwg/advanced_events.xml:
13017         * docs/pwg/advanced_tagging.xml:
13018         * docs/pwg/building_boiler.xml:
13019         * docs/pwg/building_filterfactory.xml:
13020         * docs/pwg/pwg.xml:
13021           Move filterfactory and tagging into their own chapter, add a chapter
13022           on events. all these are empty placeholders that will be filled in
13023           some day.
13024
13025 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13026
13027         * docs/pwg/advanced_interfaces.xml:
13028           Docs for mixer interface. Also a check for website uploading.
13029
13030 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13031
13032         * docs/HACKING:
13033         * docs/Makefile.am:
13034         * docs/faq/Makefile.am:
13035         * docs/gst/Makefile.am:
13036         * docs/gst/tmpl/gstelement.sgml:
13037         * docs/gst/tmpl/gstplugin.sgml:
13038         * docs/gst/tmpl/gstreamer-unused.sgml:
13039         * docs/libs/Makefile.am:
13040         * docs/manual/Makefile.am:
13041         * docs/manuals.mak:
13042         * docs/pwg/Makefile.am:
13043         * docs/upload.mak:
13044           Separate out upload target and make it similar for
13045           both docbook and gtk-doc docs
13046
13047 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13048
13049         * docs/manuals.mak:
13050           Fix upload target to work with freedesktop
13051
13052 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13053
13054         * docs/pwg/advanced_types.xml:
13055           Add notes on creating your own types.
13056         * docs/pwg/building_boiler.xml:
13057         * docs/pwg/building_pads.xml:
13058         * docs/pwg/building_state.xml:
13059           Add some stuff about how to retrieve values from structures, how
13060           that relates to types and change layout slightly again to be almost
13061           perfect.
13062
13063 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13064
13065         * docs/pwg/advanced_dparams.xml:
13066         * docs/pwg/advanced_scheduling.xml:
13067           Change index layout slightly.
13068
13069 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13070
13071         * docs/pwg/advanced_clock.xml:
13072         * docs/pwg/advanced_interfaces.xml:
13073         * docs/pwg/advanced_midi.xml:
13074           General placeholders for now.
13075         * docs/pwg/advanced_request.xml:
13076           Explanation about sometimes and request pads.
13077         * docs/pwg/advanced_scheduling.xml:
13078           Concept of bytestream, loopfunctions and schedulers.
13079         * docs/pwg/building_boiler.xml:
13080           Add something about plugin-init.
13081
13082 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13083
13084         * docs/pwg/building_pads.xml:
13085           Fix broken docbook
13086
13087 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13088
13089         * docs/pwg/advanced_interfaces.xml:
13090         * docs/pwg/pwg.xml:
13091           Add as a placeholder for future filling-in.
13092         * docs/pwg/basics_autoplugging.xml:
13093         * docs/pwg/basics_buffers.xml:
13094         * docs/pwg/basics_elements.xml:
13095         * docs/pwg/basics_events.xml:
13096         * docs/pwg/basics_plugins.xml:
13097         * docs/pwg/basics_types.xml:
13098           Remove, because unused (this is all in intro_basics.xml).
13099         * docs/pwg/building_signals.xml:
13100           Short intro to signals + reference to GObject docs - we really
13101           shouldn't go into these sort of things to deply because we don't
13102           use them that extensively anyway.
13103         * docs/pwg/building_state.xml:
13104           Explanation of states. Benjamin, please check.
13105         * docs/pwg/building_testapp.xml:
13106           Put everything in one page - putting only a few lines of content
13107           per page doesn't really make sense.
13108
13109           Time to get into the advanced topics. ;).
13110
13111 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13112
13113         * docs/pwg/advanced_types.xml:
13114           Finish documenting the current state of mimetypes.
13115         * docs/pwg/building_boiler.xml:
13116         * docs/pwg/building_chainfn.xml:
13117         * docs/pwg/building_pads.xml:
13118         * docs/pwg/building_props.xml:
13119         * docs/pwg/building_testapp.xml:
13120           Start documenting the "how to build a simple audio filter" part
13121           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
13122           states and (maybe?) a short introduction to capsnego in the chapter
13123           on pads (building_pads.xml). Capsnego should probably be explained
13124           fully in advanced_capsnego.xml or so.
13125
13126 2004-01-26  David Schleef  <ds@schleef.org>
13127
13128         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
13129         * gst/gstpad.h: Add new function to allow element to (somewhat)
13130         specify non-fixed caps on a pad.
13131         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
13132         that I added a few weeks ago.
13133
13134 2004-01-26  David Schleef  <ds@schleef.org>
13135
13136         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
13137           making try_set_caps() work with non-fixed caps.
13138
13139 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13140
13141         * docs/pwg/advanced_types.xml:
13142         * docs/pwg/intro_basics.xml:
13143         * docs/pwg/intro_preface.xml:
13144         * docs/pwg/pwg.xml:
13145         * docs/pwg/titlepage.xml:
13146           First try to resurrect the PWG. I'm halfway integrating the mimetypes
13147           in here (docs/random/mimetypes), and will from there on work on both
13148           updating outdated parts and adding missing parts.
13149           That doesn't mean I'll fix it completely, but I'll try at least. ;).
13150
13151 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
13152
13153         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
13154           policy is set
13155
13156 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13157
13158         * gst/gstelement.h:
13159           remove gst_element_factory_get_version. It doesn't exist anymore.
13160         * gst/gstplugin.c:
13161         * gst/gstplugin.h:
13162           remove gst_plugin_set_name and change gst_plugin_get_longname to
13163           gst_plugin_get_description to match code.
13164         * gst/gsterror.h:
13165           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
13166         * gst/gstpad.c: (gst_pad_try_set_caps):
13167           make it work with nonfixed caps.
13168           Note that even in the nonfixed case the link function of the pad
13169           that tries to set caps isn't called.
13170
13171 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13172
13173         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
13174           fix bug where buffer was not assembled correctly
13175         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
13176           silence by default
13177         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
13178           only seek if there's no more buffers that could work without seeking
13179
13180 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13181
13182         * gst/gsttag.c: (_gst_tag_initialize):
13183         * gst/gsttag.h:
13184           Add application tag (for encoding/muxing app).
13185
13186 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13187
13188         * autogen.sh:
13189           make autopoint force, and libtoolize not copy
13190         * common/m4/as-docbook.m4:
13191           added docbook xml catalog setup check
13192         * common/m4/gst-doc.m4:
13193           use docbook check
13194
13195 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
13196
13197         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
13198         * gst/gsttag.h:
13199           add GstTagFlag
13200
13201 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13202
13203         * docs/gst/gstreamer-sections.txt:
13204         * docs/gst/tmpl/gst.sgml:
13205         * docs/gst/tmpl/gstbuffer.sgml:
13206         * docs/gst/tmpl/gstclock.sgml:
13207         * docs/gst/tmpl/gstelement.sgml:
13208         * docs/gst/tmpl/gstreamer-unused.sgml:
13209         * docs/gst/tmpl/gstxml.sgml:
13210           sync latest API changes to docs
13211
13212 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13213
13214         * gst/gstpluginfeature.c:
13215           fix doc snippet
13216         * tools/gst-inspect.c: (print_element_list):
13217           fix output of typefind
13218           add GPL header
13219         * tools/gst-launch.c:
13220           add GPL header
13221
13222 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13223
13224         * gst/elements/Makefile.am:
13225         * gst/elements/gstelements.c:
13226         * gst/elements/gsttypefindelement.c:
13227         * gst/elements/gsttypefindelement.h:
13228         * po/POTFILES.in:
13229         * po/fr.po:
13230         * po/nl.po:
13231           renamed gsttypefindelement to gsttypefind, conserving CVS history
13232
13233 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13234
13235         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
13236         * gst/gsttag.h:
13237           add some tags used in ogg as well
13238           fix _ in replaygain tags
13239
13240 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13241
13242         * gst/gsterror.h:
13243           fix wrong GST_LIBRARY_ERROR_ENCODE addition
13244
13245 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13246
13247         * gst/gstelement.c: (gst_element_error_full):
13248         * gst/gstelement.h:
13249           change _extended to _full
13250
13251 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13252
13253         reviewed by: <delete if not using a buddy>
13254
13255         * docs/gst/tmpl/gst.sgml:
13256         * docs/gst/tmpl/gstbuffer.sgml:
13257         * docs/gst/tmpl/gstclock.sgml:
13258         * docs/gst/tmpl/gstelement.sgml:
13259         * docs/gst/tmpl/gstreamer-unused.sgml:
13260         * docs/gst/tmpl/gstxml.sgml:
13261         * gst/gstelement.c: (gst_element_error_full):
13262         * gst/gstelement.h:
13263
13264 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13265
13266         * gst/gstelement.h: fix _gst_element_error_printf prototype
13267
13268 2004-01-20  David Schleef  <ds@schleef.org>
13269
13270         * gst/gststructure.c: (gst_structure_to_string):
13271         Convert function to use gst_value_serialize().
13272         * gst/gstvalue.c: (gst_value_serialize_list),
13273         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
13274         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
13275         (gst_value_serialize_int), (gst_value_serialize_double),
13276         (gst_string_wrap), (gst_value_serialize_string),
13277         (gst_value_serialize), (gst_value_deserialize):
13278         * gst/gstvalue.h:
13279         Add implementations for serialize.
13280
13281 2004-01-20  Julien MOUTTE  <julien@moutte.net>
13282
13283         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
13284         we want to keep that one in the future or change xvidenc.c to use 
13285         another error.
13286
13287 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13288
13289         * gst/gstelement.c: (_gst_element_error_printf):
13290         * gst/gstelement.h:
13291           privatise function
13292
13293 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13294
13295         * docs/random/error:
13296           doc explaining error system
13297         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
13298           cleanup
13299
13300 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13301
13302         * gst/gst-i18n-app.h:
13303         * gst/gst-i18n-lib.h:
13304           remove inclusion of config.h
13305         * po/POTFILES.in:
13306         * po/nl.po:
13307           add gst/gstelement.c
13308
13309 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13310
13311         * po/nl.po: updated Dutch translation
13312
13313 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13314
13315         * gst/gsterror.c: (_gst_core_errors_init),
13316         (_gst_library_errors_init), (_gst_resource_errors_init),
13317         (_gst_stream_errors_init):
13318         remove ending punctuation dots
13319
13320 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13321
13322         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
13323         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
13324         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13325         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13326         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13327         use GST_ERROR_SYSTEM
13328
13329 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13330
13331         * gst/gstelement.c: (gst_element_error_printf),
13332         (gst_element_error_extended):
13333         * gst/gstelement.h:
13334           add a helper printf function so we can have NULL values passed.
13335
13336 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13337
13338         * gst/gstelement.h:
13339           add G_STMT macros to gst_element_error, which isn't strictly
13340           necessary but people tell me to anyway.
13341
13342 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
13343
13344         * gst/Makefile.am:
13345         * gst/autoplug/gstspideridentity.c:
13346         (gst_spider_identity_sink_loop_type_finding):
13347         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
13348         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
13349         (gst_filesink_close_file), (gst_filesink_handle_event),
13350         (gst_filesink_chain):
13351         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
13352         (gst_filesrc_map_region), (gst_filesrc_get_read),
13353         (gst_filesrc_open_file):
13354         * gst/elements/gstidentity.c: (gst_identity_chain):
13355         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13356         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13357         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13358         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
13359         * gst/gst.h:
13360         * gst/gst_private.h:
13361         * gst/gstelement.c: (gst_element_class_init),
13362         (gst_element_default_error), (gst_element_error_func),
13363         (gst_element_error_extended):
13364         * gst/gstelement.h:
13365         * gst/gsterror.c: (_gst_core_errors_init),
13366         (_gst_library_errors_init), (_gst_resource_errors_init),
13367         (_gst_stream_errors_init), (gst_error_get_message):
13368         * gst/gsterror.h:
13369         * gst/gstinfo.c: (_gst_debug_init):
13370         * gst/gstmarshal.list:
13371         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13372         (gst_pad_recover_caps_error), (gst_pad_pull):
13373         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
13374         * gst/schedulers/gstbasicscheduler.c:
13375         (gst_basic_scheduler_chainhandler_proxy),
13376         (gst_basic_scheduler_gethandler_proxy),
13377         (gst_basic_scheduler_cothreaded_chain):
13378         * po/POTFILES.in:
13379         * po/fr.po:
13380         * po/nl.po:
13381           change error signal
13382           add error categories
13383
13384 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
13385
13386         * gst/gsttag.c: (_gst_tag_initialize):
13387         * gst/gsttag.h:
13388         Add replaygain tag
13389
13390 2004-01-18  Colin Walters  <walters@verbum.org>
13391
13392         * examples/retag/retag.c: Call gst_init before processing
13393         program args.  Add g_assert to _link_many call.
13394
13395 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13396
13397         * gst/gstpad.c: (gst_pad_alloc_buffer):
13398           Return a newly allocated buffer when the pad has no peer.
13399
13400 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13401
13402         * gst/gstclock.c: (gst_clock_get_time):
13403           make it compile with gcc 2.95 again.
13404           Patch by Scott Wheeler
13405
13406 2004-01-15  David Schleef  <ds@schleef.org>
13407
13408         * gst/gstcaps.h:
13409         Added gst_caps_is_simple() macro.
13410         * testsuite/caps/caps.c: (test1):
13411         * testsuite/caps/intersect2.c: (main):
13412         * testsuite/caps/intersection.c: (main):
13413         Fixes to make 'make check' work again after removing
13414         gst_caps_is_chained().
13415
13416 2004-01-15  Leif Johnson <leif@ambient.2y.net>
13417
13418         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
13419         and additions to the MIDI document.
13420
13421 2004-01-15  David Schleef  <ds@schleef.org>
13422
13423         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
13424         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
13425         of GST_RPAD_, since we don't know if it's a real or ghost pad.
13426
13427 2004-01-15  David Schleef  <ds@schleef.org>
13428
13429         * gst/gstqueue.c:
13430         * gst/gstqueue.h:
13431         Fix the spelling of "treshold" and make min_threshold actually
13432         affect the queue.
13433
13434 2004-01-15  David Schleef  <ds@schleef.org>
13435
13436         * gst/gstcaps.c:
13437         Add lots of documentation.
13438         * gst/gstcaps.h:
13439         Deprecate a few functions.
13440         * gst/gstpad.c:
13441         Removed use of deprecated functions.
13442
13443 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13444
13445         * gst/gstpad.c: (gst_pad_is_linked):
13446         * gst/gstpad.h:
13447           implement gst_pad_is_linked
13448         * gst/gstelement.h:
13449           reserve space for initiate_state_change
13450
13451 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13452
13453         * gst/autoplug/gstspideridentity.c:
13454         (gst_spider_identity_sink_loop_type_finding):
13455           break infinite loop by just returning instead of looping
13456         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
13457           set event time difference correctly. Set it to 1 second instead
13458           of 100ms to be more tolerant
13459         * gst/gstelement.c: (gst_element_set_time):
13460           add debugging output
13461
13462 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13463
13464         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
13465           query if buffers are inside the pool, ignore events
13466
13467 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13468
13469         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
13470         (gst_clock_set_speed), (gst_clock_set_active),
13471         (gst_clock_is_active), (gst_clock_reset),
13472         (gst_clock_handle_discont):
13473         * gst/gstclock.h:
13474           deprecate old interface and disable functions that aren't in use
13475           anymore.
13476         * gst/gstelement.h:
13477         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
13478         (gst_element_set_time), (gst_element_adjust_time):
13479           add concept of "element time" and functions to get/set this time.
13480         * gst/gstelement.c: (gst_element_change_state):
13481           update element time correctly.
13482         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13483           This is a debug message, not a g_critical.
13484         * gst/gstpad.c: (gst_pad_event_default):
13485           handle discontinuous events right with element time.
13486         * gst/gstscheduler.c: (gst_scheduler_state_transition):
13487           update to clocking fixes.
13488           set clocks on elements in READY=>PAUSED. The old behaviour caused
13489           a wrong element time on the first element that started playing.
13490         * gst/schedulers/gstbasicscheduler.c:
13491         (gst_basic_scheduler_class_init):
13492         * gst/schedulers/gstoptimalscheduler.c:
13493         (gst_opt_scheduler_class_init):
13494           remove code that just implements the default behaviour.
13495         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
13496           update to use new clocking functions
13497         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
13498         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
13499           update to test new element time.
13500         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
13501           use _get_allowed_caps instead of _get_caps. This catches filtered
13502           caps correctly.
13503         * testsuite/debug/commandline.c:
13504           update for new GST_DEBUG syntax.
13505         * testsuite/threads/Makefile.am:
13506           disable a test that only works sometimes.
13507
13508 2004-01-13  Julien MOUTTE <julien@moutte.net>
13509
13510         * po/LINGUAS: Adding fr.
13511         * po/fr.po: Adding french translation.
13512
13513 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13514
13515         * gst/parse/grammar.y:
13516         * po/POTFILES.in:
13517         * po/nl.po:
13518         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
13519           translate parsing error messages
13520
13521 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13522
13523         * po/POTFILES.in: adding gst-launch
13524         * po/nl.po: updated translation, all 99 strings translated
13525         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
13526         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
13527           fix strings for translation
13528
13529 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13530
13531         * gst/gst.c:
13532           - capitalize beginnings of popt options
13533           - fix strings for translation
13534           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
13535
13536 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13537
13538         * po/README: add some notes on how to update translations
13539
13540 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13541
13542         * ABOUT-NLS: removed, is autogenerated from autopoint
13543         * autogen.sh: add autopoint stuff
13544         * configure.ac: fix up gettext stuff
13545         * gst/Makefile.am: add i18n headers to noinst_HEADERS
13546         * gst/elements/gsttypefindelement.c: add header include
13547         * gst/gettext.h: add header, copy from system-installed header
13548         * gst/gst-i18n-app.h: to be included by each app having translations
13549         * gst/gst-i18n-lib.h: to be included by each lib having translations
13550         * gst/gst.c: (init_pre): fix up gettext calls
13551         * gst/gst_private.h: remove i18n stuff, moving to separate headers
13552         * po/LINGUAS: the new way to specify translations present
13553         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
13554         * po/Makevars: the variables filled in for GStreamer
13555         * po/POTFILES.in: added new files with translations
13556         * po/de.po: has new strings
13557         * po/nl.po: readded, has new strings
13558
13559 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13560
13561         * gst/gsttag.c: fix some strings marked for translation
13562
13563 2004-01-13  Iain <iain@prettypeople.org>
13564
13565         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
13566         group when we add an element to it, cos we unref it when we remove one
13567
13568 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
13569
13570         * testsuite/debug/commandline.c: (debug_not_reached):
13571         * testsuite/debug/output.c: (check_message):
13572           fix testsuite
13573
13574 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13575
13576         * examples/cutter/.cvsignore:
13577         * examples/helloworld/.cvsignore:
13578         * examples/launch/.cvsignore:
13579         * examples/manual/.cvsignore:
13580         * examples/mixer/.cvsignore:
13581         * examples/pingpong/.cvsignore:
13582         * examples/plugins/.cvsignore:
13583         * examples/queue/.cvsignore:
13584         * examples/queue2/.cvsignore:
13585         * examples/queue3/.cvsignore:
13586         * examples/queue4/.cvsignore:
13587         * examples/retag/.cvsignore:
13588         * examples/thread/.cvsignore:
13589         * examples/typefind/.cvsignore:
13590         * examples/xml/.cvsignore:
13591         * gst/.cvsignore:
13592         * gst/autoplug/.cvsignore:
13593         * gst/elements/.cvsignore:
13594         * gst/indexers/.cvsignore:
13595         * gst/parse/.cvsignore:
13596         * gst/registries/.cvsignore:
13597         * gst/schedulers/.cvsignore:
13598         * libs/gst/bytestream/.cvsignore:
13599         * libs/gst/control/.cvsignore:
13600         * libs/gst/getbits/.cvsignore:
13601         * tests/.cvsignore:
13602         * tests/bufspeed/.cvsignore:
13603         * tests/instantiate/.cvsignore:
13604         * tests/memchunk/.cvsignore:
13605         * tests/muxing/.cvsignore:
13606         * tests/sched/.cvsignore:
13607         * tests/seeking/.cvsignore:
13608         * tests/threadstate/.cvsignore:
13609         * testsuite/.cvsignore:
13610         * testsuite/caps/.cvsignore:
13611         * testsuite/cleanup/.cvsignore:
13612         * testsuite/dynparams/.cvsignore:
13613         * testsuite/plugin/.cvsignore:
13614         * tools/.cvsignore:
13615           update - this is huge, because it includes *.bb, *.bbg and *.da files
13616           which are generated for gcov.
13617
13618 2004-01-11  David Schleef  <ds@schleef.org>
13619
13620         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
13621         a function to parse integers in ways that strto[u]l() does not.
13622
13623 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13624
13625         * tools/gst-inspect.c: (print_caps):
13626           improve output of caps a bit
13627
13628 2004-01-11  David Schleef  <ds@schleef.org>
13629
13630         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
13631         inherit correct flags (READONLY and DONTKEEP).
13632
13633 2004-01-11  David Schleef  <ds@schleef.org>
13634
13635         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
13636         (gst_filesrc_map_region):
13637         * gst/gstbuffer.c: (_gst_buffer_initialize),
13638         (_gst_buffer_sub_free), (gst_buffer_default_copy),
13639         (gst_buffer_new), (gst_buffer_create_sub),
13640         (gst_buffer_is_span_fast), (gst_buffer_span):
13641         * gst/gstbuffer.h:
13642         Change GstBuffer private structure element names. (all files)
13643         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
13644         (gst_queue_link):
13645         * gst/gstqueue.h:
13646         Implement getcaps/pad_link functions that handle the case where
13647         there are data in the queue.
13648
13649 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13650
13651         * gst/elements/gstbufferstore.c:
13652           initialize debugging structure correctly
13653         * gst/elements/gsttee.c: (gst_tee_set_property):
13654           g_object_notify when property was changed
13655         * gst/elements/gsttypefindelement.c:
13656         (gst_type_find_element_change_state):
13657           clear caps correctly
13658
13659 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13660
13661         * gst/gstqueue.c: (gst_queue_init):
13662           Use better defaults for when a queue should block. This
13663           gets rid of jerky playback for quite a few files.
13664           It takes more memory.
13665
13666 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
13667
13668         (gst_xml_registry_parse_padtemplate):
13669           make critical message slightly more useful
13670
13671 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13672
13673         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
13674         (gst_debug_message_get), (gst_debug_log_default):
13675         * gst/gstinfo.h:
13676           Change gst_debug_log(_valist) to take a const format string.
13677           Change prototype of log function and functions using those to 
13678           take a GstDebugMessage instead of a string that requires using
13679           gst_debug_message_get.
13680
13681 2004-01-08  David Schleef  <ds@schleef.org>
13682
13683         * Makefile.am:
13684         * configure.ac:
13685         Add option --enable-gcov to build GStreamer with -fprofile-arcs
13686         and -ftest-coverage, which allows gcov to show information about
13687         testsuite coverage.
13688
13689 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13690
13691         * gst/gstutils.h:
13692           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
13693           GST_PARENT_CALL_WITH_DEFAULT
13694         * gst/elements/gstaggregator.c: 
13695         * gst/elements/gstbufferstore.c: 
13696         * gst/elements/gstfakesink.c: 
13697         * gst/elements/gstfakesrc.c: 
13698         * gst/elements/gstfdsink.c: 
13699         * gst/elements/gstfdsrc.c: 
13700         * gst/elements/gstfilesink.c: 
13701         * gst/elements/gstfilesrc.c: 
13702         * gst/elements/gstidentity.c: 
13703         * gst/elements/gstmd5sink.c: 
13704         * gst/elements/gstmultidisksrc.c:
13705         * gst/elements/gstpipefilter.c: 
13706         * gst/elements/gstshaper.c:
13707         * gst/elements/gststatistics.c:
13708         * gst/elements/gsttee.c:
13709         * gst/elements/gsttypefindelement.c:
13710           use them.
13711
13712 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
13713
13714         * docs/gst/gstreamer-docs.sgml: remove props
13715         * docs/gst/gstreamer-sections.txt: remove props
13716         * docs/gst/tmpl/gst.sgml:
13717         * docs/gst/tmpl/gstbin.sgml:
13718         * docs/gst/tmpl/gstbuffer.sgml:
13719         * docs/gst/tmpl/gstcaps.sgml:
13720         * docs/gst/tmpl/gstclock.sgml:
13721         * docs/gst/tmpl/gstelement.sgml:
13722         * docs/gst/tmpl/gstindex.sgml:
13723         * docs/gst/tmpl/gstobject.sgml:
13724         * docs/gst/tmpl/gstpad.sgml:
13725         * docs/gst/tmpl/gstpadtemplate.sgml:
13726         * docs/gst/tmpl/gstreamer-unused.sgml:
13727         * docs/gst/tmpl/gstthread.sgml:
13728         * docs/gst/tmpl/gstxml.sgml:
13729           sync with code reorganization
13730
13731 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
13732
13733         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13734         Make the 'Could not find compatible pad' message more informative.
13735
13736 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13737                                                                                 
13738         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
13739           Fix for if we pass NULL as property to location.
13740         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
13741         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
13742           Fix for instantiate-test (see below).
13743         * gst/gststructure.c: (_gst_structure_parse_value):
13744           Fix compile error on gcc-2.96.
13745         * configure.ac:
13746         * tests/Makefile.am:
13747         * tests/instantiate/Makefile.am:
13748         * tests/instantiate/create.c: (create_all_elements), (main):
13749           Add a test that instantiates all elements. This makes it easy to
13750           track dead code for old API/design (like setting event functions
13751           on sink pads and so on).
13752
13753 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
13754
13755         * gst/gstcaps.c: (gst_caps_append_structure):
13756           Move the poisoning to allow a NULL structure
13757         * gst/gstevent.c: (_gst_event_free):
13758           When freeing a navigation event, free the structure
13759           also
13760
13761 2004-01-04  David Schleef  <ds@schleef.org>
13762
13763         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13764         Remove usage of gst_pad_proxy_fixate.
13765         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
13766         (gst_caps_split_one), (gst_caps_replace):
13767         Add poisoning code.
13768         * gst/gstmarshal.list:
13769         Add pointer__pointer for fixate signal
13770         * gst/gstpad.c: (gst_real_pad_class_init),
13771         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
13772         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
13773         (gst_pad_set_explicit_caps), (gst_pad_template_new):
13774         Add poisoning code. Add fixate signal on RealPad. Change
13775         set_explicit_caps() to take const GstCaps, like try_set_caps().
13776         * gst/gstpad.h:
13777         * testsuite/caps/Makefile.am:
13778         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
13779
13780 2004-01-03  David Schleef  <ds@schleef.org>
13781
13782         * gst/elements/gsttypefindelement.c:
13783         (gst_type_find_element_have_type), (gst_type_find_element_init):
13784         Use gst_pad_use_explicit_caps for src pad.
13785         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
13786         before using it.
13787
13788 2004-01-03  David Schleef  <ds@schleef.org>
13789
13790         * gst/gstelement.c: (gst_element_link_pads_filtered),
13791         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
13792         that linking was successful.
13793         * gst/gstpad.c: (gst_pad_link_free),
13794         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
13795         (gst_pad_link_try), (gst_pad_link_unnegotiate),
13796         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
13797         GstPadLinkReturn correctly between functions, and don't fail
13798         when DELAYED is used (DELAYED is very important).  Better
13799         cleanup on unlinking and unnegotiation.  Should fix some spider
13800         bugs.
13801
13802 2004-01-02  David Schleef  <ds@schleef.org>
13803
13804         * gst/gstelement.c: (gst_element_class_init),
13805         (gst_element_base_class_init): ->padtemplates should be cleared
13806         in base_init, since we need to have a fresh list for every
13807         class.  (Alternately, we chould copy the list and share the
13808         actual pad templates (not the list), but that would require
13809         changing every plugin to move pad template registration from
13810         base_init to class_init.)
13811
13812 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13813
13814         * gst/gstelement.c: (gst_element_class_add_pad_template):
13815           Refuse registering a pad template if another pad template
13816           with the same name already exists (#114715).
13817
13818 2004-01-02  David Schleef  <ds@schleef.org>
13819
13820         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
13821         (gst_caps_is_equal_fixed): Add new function.
13822         * gst/gstcaps.h: ditto.
13823         * gst/gstpad.c: (gst_real_pad_class_init),
13824         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
13825         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
13826         check new caps against existing caps -- if they're the same, return
13827         OK without renegotiating.  caps-nego-failed signal fixed so that
13828         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
13829         to save an extra caps copy.  Don't complete negotiation if a pad
13830         link function returns DELAYED.
13831
13832 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13833
13834         * gst/gstpad.c: (gst_pad_try_relink_filtered):
13835           Fix wrong g_return_if_fail
13836
13837 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
13838
13839         * gst/gstbin.c: (gst_bin_class_init):
13840         Change the marshalling of element_added/element_removed
13841         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
13842         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
13843
13844 2004-01-01  David Schleef  <ds@schleef.org>
13845
13846         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13847         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
13848         (gst_pad_use_explicit_caps):
13849         * gst/gstpad.h:
13850         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
13851         to use an internal getcaps and link fuction so that negotiation
13852         always results in the explicitly set caps.
13853         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
13854         are particularly useful for decoders.
13855
13856 2003-12-31  David Schleef  <ds@schleef.org>
13857
13858         * gst/elements/gstidentity.c: (gst_identity_class_init),
13859         (gst_identity_init), (gst_identity_chain),
13860         (gst_identity_set_property), (gst_identity_get_property):
13861         * gst/elements/gstidentity.h:
13862         * gst/gstqueue.c: (gst_queue_init):
13863           Negotiation fixes.
13864
13865 2003-12-31  David Schleef  <ds@schleef.org>
13866
13867         * gst/gstcaps.c: (gst_caps_intersect),
13868         (_gst_caps_normalize_foreach), (gst_caps_normalize):
13869           Implement gst_caps_normalize().
13870         * testsuite/caps/normalisation.c: (main):
13871           Add an additional test
13872
13873 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13874
13875         * gst/gstqueue.c: (gst_queue_init):
13876           use gst_pad_proxy_getcaps()
13877
13878 2003-12-31  David Schleef  <ds@schleef.org>
13879
13880         * gst/elements/gstshaper.c: (gst_shaper_link):
13881         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13882         * gst/gstqueue.c: (gst_queue_link):
13883           Negotiation fixes.
13884
13885 2003-12-31  David Schleef  <ds@schleef.org>
13886
13887         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
13888         * gst/gstpad.h: Add functions that are useful as default pad
13889         link and fixate functions for elements.
13890
13891 2003-12-30  David Schleef  <ds@schleef.org>
13892
13893         * gst/gstpad.c: (gst_pad_link_try):
13894           Fix segfault when attempting to return to old caps
13895
13896 2003-12-29  David Schleef  <ds@schleef.org>
13897
13898         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
13899         (gst_caps_structure_simplify), (gst_caps_simplify):
13900         * gst/gstcaps.h:
13901           Add simplify function
13902         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
13903         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
13904         * gst/gstpad.h:
13905           Copy over srcnotify, sinknotify when calling old pad_link
13906           functions.  Add new is_negotiated() function.
13907         * gst/gststructure.c: (gst_structure_copy):
13908           Fix an incredibly stupid bug that should have been noticed
13909           weeks ago.  _copy() returned the argument, not the new copy.
13910
13911 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13912
13913         * gst/gstcaps.c: (gst_caps_append):
13914           add sanity checks
13915         * gst/gstcaps.h: (gst_caps_debug):
13916           remove, it doesn't exist anymore.
13917         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
13918         (gst_element_threadsafe_properties_post_run):
13919           make debugging messages not clutter up THREAD debug category
13920         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
13921         (gst_element_change_state):
13922           update to new caps API
13923         * gst/gstinterface.c: (gst_implements_interface_cast):
13924           don't put vital code in g_return_if_fail
13925         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
13926         (gst_pad_link_filtered):
13927           add pst_pad_try_link and use it.
13928         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
13929           implement correctly, deprecate first one.
13930         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
13931           add and implement.
13932         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
13933           implement.
13934         (gst_pad_get_negotiated_caps):
13935           add and implement. Make GST_PAD_CAPS call this function.
13936         (gst_pad_get_caps):
13937           remove unneeded check..
13938         (gst_pad_recover_caps_error):
13939           disable, always return FALSE.
13940         (gst_real_pad_dispose):
13941           don't free caps and appfilter anymore, they're unused.
13942         * gst/gstpad.h:
13943           Reflect changes mentioned above.
13944         * gst/gstsystemclock.c: (gst_system_clock_wait):
13945           Make 'clock is way behind' a debugging message.
13946         * gst/gstthread.c: (gst_thread_change_state):
13947           Fix debugging message
13948
13949 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
13950
13951         * gst/gstinfo.h:
13952           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
13953         * docs/gst/tmpl/gstreamer-unused.sgml:
13954           removed all traces of cvs conflicts
13955
13956 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13957
13958         * configure.ac:
13959         * gst/schedulers/cothreads_compat.h:
13960         * libs/Makefile.am:
13961           remove last instances of wingo cothread usage
13962
13963 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13964
13965         * gst/gstplugin.c:
13966         * gst/gstversion.h.in:
13967         * gst/parse/grammar.y:
13968           change comment block from /** to /* when not gtk-doc comments
13969
13970 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13971
13972         * gst/gst.c: whitespace and doc style fixes
13973
13974 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13975
13976         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
13977
13978 2003-12-24  Colin Walters  <walters@verbum.org>
13979
13980         * gst/elements/gsttypefindelement.c:
13981           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
13982           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
13983           Don't double-free caps.
13984
13985 2003-12-23  David Schleef  <ds@schleef.org>
13986
13987         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
13988           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
13989           Many little fixes and additions of debug statements to
13990           get rhythmbox working.
13991
13992 2003-12-23  Colin Walters  <walters@verbum.org>
13993
13994         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
13995         Use GST_PAD_LINK_SUCCESSFUL.
13996
13997 2003-12-23  David Schleef  <ds@schleef.org>
13998
13999         * gst/elements/gstaggregator.c:
14000         * gst/elements/gsttee.c:
14001           Use gst_pad_proxy_getcaps().
14002         * gst/gstpad.c:
14003         * gst/gstpad.h:
14004           Add gst_pad_proxy_getcaps(), which filter elements can use
14005           as a generic getcaps implementation.
14006           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
14007           was advertised.
14008
14009 2003-12-23  David Schleef  <ds@schleef.org>
14010
14011         * gst/gstpad.c:
14012           Rearrange/rewrite much of the pad negotiation code, since it
14013           resembled pasta.  This actually changes the way some
14014           negotiation works, since the previous code was inconsistent
14015           depending on how it was invoked.  Add (internal) structure
14016           GstPadLink, which is used to hold some information (more in
14017           the future) about the link between two pads.  Fixes a number
14018           of bugs, including random lossage of filter caps when the
14019           initial negotiation is delayed.  A few functions are still
14020           unimplemented.
14021         * gst/gstpad.h:
14022           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
14023           these when testing GstPadLinkReturn values instead of comparing
14024           directly.
14025
14026 2003-12-23  David Schleef  <ds@schleef.org>
14027
14028         * gst/gstvalue.c: 
14029         * gst/gstvalue.h:
14030           Rearrange lots of code.  Change registration of compare function
14031           into registration of compare/serialize/deserialize functions.
14032           Doesn't include implementation of gst_value_[de]serialize(),
14033           but that should be easy.
14034
14035 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
14036
14037         * docs/gst/gstreamer-sections.txt:
14038         * docs/gst/tmpl/gstprops.sgml: removed
14039         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
14040           David removed props and caps code, so let's remove their docs as well.
14041           Removed all no longer existing symbols from gstreamer-sections.txt
14042           
14043 2003-12-22  Colin Walters  <walters@verbum.org>
14044
14045         * gst/gsttaginterface.c, gst/gsttaginterface.h,
14046           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
14047           of tags directly.
14048
14049 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14050
14051         * gst/elements/gstelements.c:
14052           Set ranks of elements to NONE, so the autoplugger doesn't use them.
14053         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
14054           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
14055           gst_caps (peer).
14056
14057 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14058
14059         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
14060         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
14061         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
14062         (gst_spider_identity_sink_loop_type_finding):
14063         * gst/autoplug/gstspideridentity.h:
14064           Fix autoplugging in spider element, so it works with new caps.
14065           This was mainly caused by identifying empty caps incorrectly.
14066
14067 2003-12-22  David Schleef  <ds@schleef.org>
14068
14069         * gststructure.c, gstvalue.c, gstvalue.h: Add
14070           gst_value_init_and_copy() and use it, to avoid silly mistakes in
14071           using g_value_copy()
14072
14073 2003-12-21  David Schleef  <ds@schleef.org>
14074
14075         * many, many files: Merge CAPS branch.  This includes:
14076           - implemention of GstValue and several GstValue types
14077           - implemention of GstStructure
14078           - entire rewrite of GstCaps
14079           - removal of GstProps
14080           - many changes to GstPad to compensate for new caps paradigm
14081           - removal of GstBufferpool
14082         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
14083         gstvalue.h, gst/gstcaps[2]*.[ch]:
14084           - rename gstcaps2.[ch] to gstcaps.[ch]
14085
14086 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
14087
14088         * gst/gstqueue.c: (gst_queue_handle_pending_events),
14089         (gst_queue_chain), (gst_queue_handle_src_event):
14090           implement timeout for sending events. Workaround for if the
14091           pipeline on this queue is not passing any data.
14092
14093 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
14094                                                                                 
14095         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
14096         * moved CVS to freedesktop.org