check/gst/gstevents.c: Provide more error margin in clock measurements to allow for...
[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           Provide more error margin in clock measurements to allow for 
6           g_get_current_time inaccuracies.
7
8 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
9
10         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
11         (test_event), (timediff), (gstevents_suite):
12            Fix error message output so I might be able to tell why the
13            test works here but fails on the build farm.
14
15 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
16
17         * check/Makefile.am:
18         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
19         (test_event), (timediff), (gstevents_suite), (main):
20           I wrote a test!
21
22         * docs/design/part-seeking.txt:
23           Spelling correction
24
25         * docs/gst/tmpl/gstevent.sgml:
26         * docs/gst/tmpl/gstfakesrc.sgml:
27           Docs updates.
28
29         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
30           Treat a buffer-without-newsegment the same as a receiving 
31           a newsegment not in time format, and disable syncing to the clock
32           with a warning.
33
34         * gst/gstbus.c: (gst_bus_set_sync_handler):
35           Assert if anyone tries to replace the existing sync_handler for bus, 
36           as only the owner should be setting it.
37
38         * gst/gstevent.h:
39           Have a fixed set of custom event enums with events identified by
40           their structure name (as in 0.8), rather than a free-for-all
41           allowing collisions between enum values from different plugins.
42
43         * gst/gstpad.c: (gst_pad_class_init):
44           Docs change.
45           
46         * gst/gstqueue.c: (gst_queue_handle_sink_event):
47           Handle out-of-band downstream events from the sending thread.
48
49 2005-08-17  Andy Wingo  <wingo@pobox.com>
50
51         * gst/gstpipeline.c (gst_pipeline_change_state): Interpret
52         play-timeout==0 to mean no timeout at all. In that case, don't
53         bother with a get_state or a warning, just return directly, even
54         if it's ASYNC.
55
56         * gst/base/gstbasetransform.c: Debug changes.
57
58         * gst/gstutils.h:
59         * gst/gstutils.c (gst_bin_watch_for_state_change): Add function to
60         ensure bins post state change messages. A bit of a hack but I can't
61         think of a way to avoid it.
62
63         * check/gst/gstbin.c (test_watch_for_state_change): Added test.
64
65 2005-08-16  Andy Wingo  <wingo@pobox.com>
66
67         * gst/base/gstadapter.h:
68         * gst/base/gstadapter.c (gst_adapter_take): New function, like
69         peek() but you own the data. Not terribly efficient atm.
70
71 2005-08-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
72
73         * gst/gstutils.c: (gst_element_found_tags_for_pad), (push_and_ref),
74         (gst_element_found_tags):
75         * gst/gstutils.h:
76           Add two utility functions for tag handling.
77
78 2005-08-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
79
80         * docs/manual/advanced-dataaccess.xml:
81         * docs/manual/basics-helloworld.xml:
82           Fix docs to use _bin_add() before _link(), which fixes the examples
83           with recent core versions (reported by Madhan Raj M
84           <raj_madan@rediffmail.com>, #313199).
85
86 2005-08-16  Wim Taymans  <wim@fluendo.com>
87
88         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
89         Added subtract checks.
90
91         * docs/design/part-events.txt:
92         Some more docs about newsegment
93
94         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
95         Fix FIXME
96
97         * gst/gstcaps.c: (gst_caps_to_string):
98         Add comments, cleanups.
99         
100         * gst/gstelement.c: (gst_element_save_thyself):
101         cleanups
102         
103         * gst/gstvalue.c: (gst_value_collect_int_range),
104         (gst_string_unwrap), (gst_value_union_int_int_range),
105         (gst_value_union_int_range_int_range),
106         (gst_value_intersect_int_int_range),
107         (gst_value_intersect_int_range_int_range),
108         (gst_value_intersect_double_double_range),
109         (gst_value_intersect_double_range_double_range),
110         (gst_value_intersect_list), (gst_value_subtract_int_int_range),
111         (gst_value_subtract_int_range_int),
112         (gst_value_subtract_double_range_double),
113         (gst_value_subtract_double_range_double_range),
114         (gst_value_subtract_from_list), (gst_value_subtract_list),
115         (gst_value_can_compare), (gst_value_compare_fraction):
116         Cleanups, add comments, remove unneeded asserts.
117
118 2005-08-15  Thomas Vander Stichele  <thomas at apestaart dot org>
119
120         * tools/gst-launch.c: (event_loop):
121           don't convert NULL structures to strings
122
123 2005-08-15  Stefan Kost  <ensonic@users.sf.net>
124
125         * docs/gst/gstreamer-sections.txt:
126           made some defines private
127         * docs/gst/tmpl/gstconfig.sgml:
128         * docs/gst/tmpl/gstqueue.sgml:
129         * docs/gst/tmpl/gsttaglist.sgml:
130         * docs/gst/tmpl/gsttypes.sgml:
131         * docs/gst/tmpl/gstutils.sgml:
132         * docs/pwg/appendix-porting.xml:
133         * gst/base/gstbasesink.h:
134         * gst/base/gstbasesrc.c:
135         * gst/base/gstbasesrc.h:
136         * gst/elements/gstfakesink.c: (gst_fake_sink_class_init):
137         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init):
138         * gst/gstelement.c: (gst_element_class_init):
139         * gst/gstpad.c: (gst_pad_class_init):
140         * gst/gstqueue.c: (gst_queue_class_init):
141         * gst/gstxml.c: (gst_xml_class_init):
142           documented all undocumented signal inline
143         * libs/gst/controller/gst-controller.h:
144           added padding
145
146 2005-08-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
147
148         * docs/pwg/appendix-porting.xml:
149           Document _set_link_function -> _set_setcaps_function.
150
151 2005-08-15  Thomas Vander Stichele  <thomas at apestaart dot org>
152
153         * check/Makefile.am:
154           add a .check target for running the check
155         * check/gst-libs/controller.c: (GST_START_TEST):
156           cosmetic fixups
157         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
158           complete checks for gstbuffer; would be nice if I could get the
159           gcov stuff to work so I can see if I actually completed gstbuffer.c
160         * check/gstcheck.h:
161           add ASSERT_BUFFER_REFCOUNT
162
163 2005-08-13  Tim-Philipp Müller  <tim at centricular dot net>
164
165         * docs/gst/gstreamer-sections.txt:
166         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
167         * gst/gsttag.h:
168           Add GST_TAG_LANGUAGE_CODE as we have in 0.8, and don't
169           spew out a warning if a tag that is already registered
170           is re-registered, unless it is re-registered with a 
171           different type (#308438).
172
173 2005-08-12  Tim-Philipp Müller  <tim at centricular dot net>
174
175         * docs/pwg/appendix-porting.xml:
176         * docs/pwg/building-state.xml:
177           Add some paragraphs about state changes in 0.9 to the PWG
178           and the porting guide, in particular about the new meaning
179           of GST_STATE_PAUSED and how to write state change functions
180           with concurrent access by multiple threads in mind.
181
182 2005-08-11  Stefan Kost  <ensonic@users.sf.net>
183
184         * docs/gst/gstreamer-docs.sgml:
185         * docs/libs/gstreamer-libs-docs.sgml:
186           added deprecation and since indexes
187         * libs/gst/controller/gst-controller.c:
188         * libs/gst/controller/gst-helper.c:
189           added since tags
190
191
192 2005-08-11  Wim Taymans  <wim@fluendo.com>
193
194         * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked),
195         (gst_proxy_pad_set_target), (gst_proxy_pad_get_target),
196         (gst_proxy_pad_dispose), (gst_ghost_pad_do_activate_push),
197         (gst_ghost_pad_do_link), (gst_ghost_pad_set_internal),
198         (gst_ghost_pad_new_notarget), (gst_ghost_pad_get_target),
199         (gst_ghost_pad_set_target):
200         Actually implement (re)setting the target on a ghostpad
201         as described in the docs.
202
203 2005-08-10  Tim-Philipp Müller  <tim at centricular dot net>
204
205         * gst/gst.c: (gst_init_check_with_popt_table), (init_pre):
206           Check whether GST_DEBUG_NO_COLOR environment variable is
207           set and disable coloured debug output if that is the case.
208
209 2005-08-10  Tim-Philipp Müller  <tim at centricular dot net>
210
211         * gst/base/gsttypefindhelper.c: (helper_find_peek),
212         (gst_type_find_helper):
213           The memory returned by gst_type_find_peek() needs to
214           stay valid until the end of a typefind function, and
215           typefind functions may keep results from different 
216           offsets around, so we can't just unref the buffer from
217           the previous _peek(), but have to save all buffers 
218           returned by _peek() until typefinding is done and only
219           free them then.
220
221 2005-08-09  Tim-Philipp Müller  <tim at centricular dot net>
222
223         * docs/gst/gstreamer-sections.txt:
224         * gst/gstutils.h:
225           New macros: GST_ROUND_UP_2() through GST_ROUND_UP_64().
226
227 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
228
229         * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
230           Fix a pretty good memleak.
231
232 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
233
234         * gst/gstiterator.h:
235           Fix wrong include and 'make distcheck'.
236
237 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
238
239         * gst/gstbin.c: (bin_bus_handler):
240           Use gst_element_post_message() instead.
241
242 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
243
244         * gst/base/gstadapter.h:
245         * gst/base/gstbasesink.h:
246         * gst/base/gstbasesrc.h:
247         * gst/base/gstbasetransform.h:
248         * gst/base/gstcollectpads.h:
249         * gst/base/gstpushsrc.h:
250         * gst/gstiterator.h:
251           Add padding to our base elements' class and instance structs and
252           to GstIterator (you will need to rebuild all plugins and apps!)
253
254 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
255
256         * gst/gstbin.c: (bin_bus_handler):
257           Make default message forwarding from child->bus to bin->bus
258           threadsafe and make it not emit warnings if the parent has no bus.
259
260 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
261
262         * gst/gstelement.c: (activate_pads):
263           On paused->ready, set pad->caps to NULL, as is the documented
264           behaviour in this state change. Fixes playback of series of
265           media files when visualization is enabled in Totem.
266
267 2005-08-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
268
269         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
270           Allow NULL as filter-caps (which means "any").
271
272 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
273
274         * docs/libs/gstreamer-libs-sections.txt:
275         * libs/gst/controller/gst-controller.c:
276         * libs/gst/controller/gst-controller.h:
277         * libs/gst/controller/gst-helper.c:
278           adding more entries to the docs and fix small doc-bugs
279
280 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
281
282         * docs/gst/gstreamer-docs.sgml:
283         * docs/gst/gstreamer-sections.txt:
284         * docs/gst/gstreamer.types:
285         * docs/gst/tmpl/gstbasesink.sgml:
286         * docs/gst/tmpl/gstbasesrc.sgml:
287         * docs/gst/tmpl/gstbasetransform.sgml:
288         * docs/gst/tmpl/gstfakesrc.sgml:
289         * gst/base/gstcollectpads.c:
290         * gst/base/gstcollectpads.h:
291         * libs/gst/controller/gst-controller.c:
292         * libs/gst/controller/gst-controller.h:
293         * libs/gst/controller/gst-helper.c:
294         * libs/gst/controller/gst-interpolation.c:
295         * libs/gst/controller/lib.c:
296           added long/short desc for controller docs
297           added collectpads base class docs
298           added correct includes to base-class docs
299
300 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
301
302         * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
303         (gst_test_mono_source_set_property),
304         (gst_test_mono_source_class_init), (GST_START_TEST),
305         (gst_controller_suite):
306         * docs/gst/gstreamer-docs.sgml:
307         * docs/gst/gstreamer-sections.txt:
308         * docs/gst/gstreamer.types:
309         * docs/libs/gstreamer-libs-docs.sgml:
310         * docs/libs/gstreamer-libs-sections.txt:
311         * gst/base/gstadapter.c:
312         * libs/gst/controller/gst-controller.c:
313         (gst_controlled_property_new), (gst_controlled_property_free),
314         (gst_controller_new_valist),
315         (gst_controller_remove_properties_valist),
316         (gst_controller_sink_values), (_gst_controller_finalize):
317         * libs/gst/controller/gst-controller.h:
318         * libs/gst/controller/gst-helper.c:
319         (gst_object_control_properties), (gst_object_uncontrol_properties),
320         (gst_object_get_controller), (gst_object_set_controller),
321         (gst_object_sink_values), (gst_object_get_value_arrays),
322         (gst_object_get_value_array):
323           more tests (and fixes) for the controller
324           more docs for the controller
325           integrated companies docs for the adapter 
326
327 2005-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
328
329         * check/elements/gstfakesrc.c: (setup_fakesrc), (cleanup_fakesrc),
330         (GST_START_TEST), (fakesrc_suite):
331           add tests for sizetype
332
333 2005-08-04  Andy Wingo  <wingo@pobox.com>
334
335         * gst/elements/gstcapsfilter.c: Reimplement using basetransform,
336         fixes buffer_alloc proxying among other things.
337
338         * gst/base/gstbasetransform.c:
339         * gst/base/gstbasetransform.h:
340         Revert patch to gstbasetransform from 7-28 removing
341         delay_configure.
342
343         * gst/base/gstbasetransform.h (GstBaseTransformClass.get_size):
344         * gst/base/gstbasetransform.c (gst_base_transform_get_size):
345         Semantics changed, should return not the size of the output buffer
346         but the byte size of a buffer with a given caps.
347
348         * gst/base/gstbasetransform.c (gst_base_transform_getcaps): Better
349         debug object.
350         (gst_base_transform_configure_caps): Don't set out_size here: (in,
351         out) are not the pad caps until setcaps finishes.
352         (gst_base_transform_buffer_alloc): Proxy the buffer_alloc for the
353         not-in-place case as well. Deal with changing from in-place to
354         not-in-place within calling pad_alloc_buffer. Still a bit
355         concerned about the overhead here...
356
357 2005-08-03  Andy Wingo  <wingo@pobox.com>
358
359         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): Not
360         fixating is an error.
361
362 2005-08-04  Edward Hervey  <edward@fluendo.com>
363
364         * gst/base/gstadapter.h: 
365         Added gst_adapter_get_type() to the header
366
367 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
368
369         * check/Makefile.am:
370         * check/gst-libs/controller.c:
371         * libs/gst/controller/gst-controller.c:
372         (gst_controller_new_valist):
373           added check test suite for the controller
374         * gst/base/gstpushsrc.c:
375           fixed a doc typo
376
377 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
378
379         * docs/gst/Makefile.am:
380         * docs/gst/gstreamer-docs.sgml:
381         * docs/gst/gstreamer-sections.txt:
382         * docs/gst/gstreamer.types:
383         * docs/gst/tmpl/gstfakesrc.sgml:
384         * gst/base/README:
385         * gst/base/gstbasesink.c:
386         * gst/base/gstbasesink.h:
387         * gst/base/gstbasesrc.c:
388         * gst/base/gstbasesrc.h:
389         * gst/base/gstbasetransform.c:
390         * gst/base/gstpushsrc.c:
391         * gst/base/gstpushsrc.h:
392           add short/long description docs to base classes
393           add pushsrc to the docs
394           remove consolidated doc fragments
395
396 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
397
398         * configure.ac:
399         * docs/libs/Makefile.am:
400         * docs/libs/gstreamer-libs-docs.sgml:
401         * docs/libs/gstreamer-libs-sections.txt:
402         * docs/libs/gstreamer-libs.types:
403         * examples/Makefile.am:
404         * examples/controller/.cvsignore:
405         * examples/controller/Makefile.am:
406         * examples/controller/audio-example.c: (main):
407         * libs/gst/Makefile.am:
408         * libs/gst/controller/.cvsignore:
409         * libs/gst/controller/Makefile.am:
410         * libs/gst/controller/gst-controller.c:
411         (on_object_controlled_property_changed), (gst_timed_value_compare),
412         (gst_timed_value_find),
413         (gst_controlled_property_set_interpolation_mode),
414         (gst_controlled_property_new), (gst_controlled_property_free),
415         (gst_controller_find_controlled_property),
416         (gst_controller_new_valist), (gst_controller_new),
417         (gst_controller_remove_properties_valist),
418         (gst_controller_remove_properties), (gst_controller_set),
419         (gst_controller_set_from_list), (gst_controller_unset),
420         (gst_controller_get), (gst_controller_get_all),
421         (gst_controller_sink_values), (gst_controller_get_value_arrays),
422         (gst_controller_get_value_array),
423         (gst_controller_set_interpolation_mode),
424         (_gst_controller_finalize), (_gst_controller_init),
425         (_gst_controller_class_init), (gst_controller_get_type):
426         * libs/gst/controller/gst-controller.h:
427         * libs/gst/controller/gst-helper.c: (g_object_control_properties),
428         (g_object_uncontrol_properties), (g_object_get_controller),
429         (g_object_set_controller), (g_object_sink_values),
430         (g_object_get_value_arrays), (g_object_get_value_array):
431         * libs/gst/controller/gst-interpolation.c:
432         (gst_controlled_property_find_timed_value_node),
433         (interpolate_none_get), (interpolate_trigger_get),
434         (interpolate_trigger_get_value_array):
435         * libs/gst/controller/lib.c: (gst_controller_init):
436         * pkgconfig/Makefile.am:
437         * pkgconfig/gstreamer-control-uninstalled.pc.in:
438         * pkgconfig/gstreamer-control.pc.in:
439         * testsuite/Makefile.am:
440         * testsuite/controller/.cvsignore:
441         * testsuite/controller/Makefile.am:
442         * testsuite/controller/interpolator.c: (main):
443           added controller code
444           removed dparam pc files
445
446 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
447         * gst/base/gstcollectpads.c: (gst_collectpads_finalize),
448         (gst_collectpads_stop):
449           Broadcast the condition when shutting down, to make sure we wake all
450           threads up. Shut down pads on finalize, for safety.
451
452 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
453         * gst/base/gstbasetransform.c: (gst_base_transform_init),
454         (gst_base_transform_handle_buffer),
455         (gst_base_transform_change_state):
456           Handle PAUSED->READY->PAUSED transition after negotiation
457           occurred already.
458         * gst/gstmessage.c: (gst_message_init):
459           Extra piece of debug for new messages.
460
461 2005-08-01  Stefan Kost  <ensonic@users.sf.net>
462
463         * configure.ac:
464         * docs/gst/tmpl/gstbasesrc.sgml:
465         * docs/gst/tmpl/gstelement.sgml:
466         * docs/gst/tmpl/gstevent.sgml:
467         * docs/gst/tmpl/gstfakesrc.sgml:
468         * docs/gst/tmpl/gstformat.sgml:
469         * docs/gst/tmpl/gstghostpad.sgml:
470         * docs/gst/tmpl/gstpad.sgml:
471         * docs/gst/tmpl/gstquery.sgml:
472         * docs/gst/tmpl/gststructure.sgml:
473         * docs/gst/tmpl/gsttaglist.sgml:
474         * docs/gst/tmpl/gstvalue.sgml:
475         * docs/libs/gstreamer-libs-docs.sgml:
476         * docs/libs/gstreamer-libs-sections.txt:
477         * docs/libs/gstreamer-libs.types:
478         * libs/gst/Makefile.am:
479         * libs/gst/control/.cvsignore:
480         * libs/gst/control/Makefile.am:
481         * libs/gst/control/control.c:
482         * libs/gst/control/control.h:
483         * libs/gst/control/dparam.c:
484         * libs/gst/control/dparam.h:
485         * libs/gst/control/dparam_smooth.c:
486         * libs/gst/control/dparam_smooth.h:
487         * libs/gst/control/dparamcommon.h:
488         * libs/gst/control/dparammanager.c:
489         * libs/gst/control/dparammanager.h:
490         * libs/gst/control/dplinearinterp.c:
491         * libs/gst/control/dplinearinterp.h:
492         * libs/gst/control/unitconvert.c:
493         * libs/gst/control/unitconvert.h:
494         * testsuite/Makefile.am:
495         * testsuite/dynparams/.cvsignore:
496         * testsuite/dynparams/Makefile.am:
497         * testsuite/dynparams/dparamstest.c:
498         * tools/Makefile.am:
499         * tools/gst-inspect.c: (print_element_info), (main):
500         * tools/gst-xmlinspect.c: (print_element_info), (main):
501           deactivate and remove dparams (libgstcontrol)
502
503 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
504
505         * gst/elements/gsttypefindelement.c:
506         (gst_type_find_element_have_type), (gst_type_find_element_init),
507         (stop_typefinding), (gst_type_find_element_handle_event),
508         (gst_type_find_element_chain), (gst_type_find_element_getrange):
509         * gst/elements/gsttypefindelement.h:
510           Set caps on all outgoing buffers, not just the first one.
511
512 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
513
514         * gst/elements/gsttypefindelement.c:
515         (gst_type_find_element_have_type),
516         (gst_type_find_element_check_set_buffer_caps),
517         (gst_type_find_element_init), (stop_typefinding),
518         (gst_type_find_element_handle_event),
519         (gst_type_find_element_chain), (gst_type_find_element_getrange):
520         * gst/elements/gsttypefindelement.h:
521           Set caps on first outgoing buffer when we've found the type.
522
523 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
524
525         * docs/gst/gstreamer-docs.sgml:
526         * docs/gst/gstreamer-sections.txt:
527         * docs/gst/tmpl/gstscheduler.sgml:
528         * docs/gst/tmpl/gstschedulerfactory.sgml:
529           Remove some old cruft from docs.
530
531 2005-07-31  Tim-Philipp Müller  <tim at centricular dot net>
532
533         * gst/gstpad.h:
534           Fix inline docs for GstPadLinkReturn.
535           
536         * gst/gststructure.c: (gst_structure_has_name):
537         * gst/gststructure.h:
538         * docs/gst/gstreamer-sections.txt:
539           New API: gst_structure_has_name().
540
541 2005-07-30  Tim-Philipp Müller  <tim at centricular dot net>
542
543         * configure.ac:
544           Use AC_SYS_LARGEFILE, which will set _FILE_OFFSET_BITS=64
545           and _LARGEFILE_SOURCE in config.h as required. Do not 
546           export those flags in our .pc files any longer (#142209).
547
548           Remove unused GST_DISABLE_OMEGA_COTHREADS stuff.
549
550         * gst/elements/gstfilesink.c: (gst_file_sink_class_init),
551         (gst_file_sink_do_seek), (gst_file_sink_event),
552         (gst_file_sink_get_current_offset), (gst_file_sink_render):
553           Redo seek/tell calls with large file support in mind; add some
554           debugging messages; add log message that tells us when large
555           file support is unavailable or not enabled for some reason.
556
557         * gst/elements/gstfilesrc.c: (gst_file_src_class_init):
558           Add log message that tells us when large file support 
559           is unavailable or not enabled for some reason.
560
561 2005-07-29  Wim Taymans  <wim@fluendo.com>
562
563         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
564         Added test for removing an element with ghostpad from a bin.
565         Fixed test as current implementation does the right thing.
566
567         * gst/gstghostpad.c: (gst_proxy_pad_class_init),
568         (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
569         (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
570         (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
571         (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
572         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
573         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
574         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
575         (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
576         (gst_proxy_pad_get_target), (gst_proxy_pad_init),
577         (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
578         (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
579         (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
580         (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
581         (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
582         (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
583         * gst/gstghostpad.h:
584         Clean up ghostpads, remove properties for internal stuff.
585         Make threadsafe.
586         Fix refcounting.
587         Prepare for switching targets, not all use cases work yet.
588
589 2005-07-29  Wim Taymans  <wim@fluendo.com>
590
591         * docs/design/part-gstghostpad.txt:
592         Small update.
593
594         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
595         (gst_bin_remove_func):
596         Unlinking pads while holding the bin LOCK is not a good
597         idea.
598
599         * gst/gstpad.c: (gst_pad_class_init),
600         (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
601         (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
602         No prob setting template after creating the pad.
603
604 2005-07-29  Jan Schmidt  <thaytan@mad.scientist.com>
605
606         * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
607         (gst_bus_peek), (gst_bus_source_dispatch),
608         (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
609         (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
610           gst_bus_poll may be called from other threads. Handle
611           this nicely by not making poll_data disappear off the
612           stack once gst_bus_poll returns.
613           gst_bus_peek now increments the refcount on the returned
614           message.
615
616 2005-07-29  Wim Taymans  <wim@fluendo.com>
617
618         * docs/design/part-gstghostpad.txt:
619         Overview of current GhostPad datastructures and use
620         cases for changing the target.
621
622 2005-07-28  Wim Taymans  <wim@fluendo.com>
623
624         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
625         Added checks for hierarchy consistency whan adding linked
626         elements to bins.
627
628         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
629         Added check to test element scheduling without bin/pipeline.
630
631         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
632         First add elements to bin, then link.
633         
634         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
635         (gst_bin_remove_func):
636         Unlink pads from elements added/removed from bin to maintain
637         hierarchy consistency.
638
639 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
640
641         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
642         (gst_base_transform_handle_buffer):
643         * gst/base/gstbasetransform.h:
644           Remove broken delay_configure (fixes renegotiation of software
645           scaling pipelines); remove some leftover printf()s.
646
647 2005-07-28  Wim Taymans  <wim@fluendo.com>
648
649         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
650         Added some more tests for wrong hierarchy
651
652         * docs/design/part-overview.txt:
653         Some updates.
654
655         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
656         Cleanups.
657
658         * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
659         (gst_element_dispose):
660         Some more cleanups.
661
662         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
663         (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
664         (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
665         (gst_pad_set_caps), (gst_pad_send_event):
666         Check for correct hierarchy when linking pads. Moving to
667         strict requirement for ghostpads when linking elements in
668         different bins.
669
670         * gst/gstpad.h:
671         Clean ups. Added WRONG_HIERARCHY return value.
672
673 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
674
675         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
676           Better debug if no transform is possible.
677
678 2005-07-27  Wim Taymans  <wim@fluendo.com>
679
680         * docs/random/wtay/network-transp:
681         Some old doc I had.
682
683 2005-07-27  Wim Taymans  <wim@fluendo.com>
684
685         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
686         (gst_dp_event_from_packet):
687         Fix serialization of seek events.
688
689 2005-07-27  Wim Taymans  <wim@fluendo.com>
690
691         * check/gst-libs/gdp.c: (GST_START_TEST):
692         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
693         Fix compilation and fix event serialization.
694
695 2005-07-27  Wim Taymans  <wim@fluendo.com>
696
697         * CHANGES-0.9:
698         * docs/design/part-TODO.txt:
699         * docs/design/part-events.txt:
700         Some docs updates
701
702         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
703         (gst_base_sink_event), (gst_base_sink_do_sync),
704         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
705         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
706         (gst_base_src_do_seek), (gst_base_src_event_handler),
707         (gst_base_src_loop):
708         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
709         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
710         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
711         (gst_base_transform_event), (gst_base_transform_handle_buffer),
712         (gst_base_transform_set_passthrough),
713         (gst_base_transform_is_passthrough):
714         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
715         * gst/elements/gstfilesink.c: (gst_file_sink_event):
716         Event updates.
717
718         * gst/gstbuffer.h:
719         Use faster casts.
720
721         * gst/gstelement.c: (gst_element_seek):
722         * gst/gstelement.h:
723         Update gst_element_seek.
724
725         * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
726         (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
727         (gst_event_new_flush_start), (gst_event_new_flush_stop),
728         (gst_event_new_eos), (gst_event_new_newsegment),
729         (gst_event_parse_newsegment), (gst_event_new_tag),
730         (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
731         (gst_event_parse_qos), (gst_event_new_seek),
732         (gst_event_parse_seek), (gst_event_new_navigation):
733         * gst/gstevent.h:
734         Make GstEvent use GstStructure. Add parsing code, make sure the
735         API is sufficiently generic.
736         Mark possible directions of events and serialization.
737
738         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
739         (_gst_message_copy), (gst_message_new_segment_start),
740         (gst_message_new_segment_done), (gst_message_new_custom),
741         (gst_message_parse_segment_start),
742         (gst_message_parse_segment_done):
743         Small cleanups.
744
745         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
746         (gst_pad_set_caps), (gst_pad_send_event):
747         Update for new events. 
748         Catch events sent in wrong directions.
749
750         * gst/gstqueue.c: (gst_queue_link_src),
751         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
752         (gst_queue_handle_src_query):
753         Event updates.
754
755         * gst/gsttag.c:
756         * gst/gsttag.h:
757         Remove event code from this file.
758
759         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
760         (gst_dp_event_from_packet):
761         Event updates.
762
763 2005-07-27  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
764
765         * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
766         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
767         (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
768           Make debugging actually useful.
769
770 2005-07-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
771
772         * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
773         (gst_pad_fixate_caps):
774           Implement default fixation once again, so that gst_pad_fixate()
775           actually does anything at all. This probably needs to be some
776           sort of a last resort, and use profile-based fixation first, but
777           since that doesn't exist yet, this is the best we have. Fixes
778           visualization in Totem.
779
780 2005-07-22  Wim Taymans  <wim@fluendo.com>
781
782         * docs/design/part-events.txt:
783         Small update.
784
785         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
786         (gst_base_sink_do_sync), (gst_base_sink_activate_push),
787         (gst_base_sink_activate_pull):
788         Some more comments.
789
790         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
791         (gst_fake_src_create):
792         Fix handoff marshall.
793
794         * gst/elements/gstidentity.c: (gst_identity_class_init),
795         (gst_identity_transform_ip):
796         We're a real inplace element.
797
798         * gst/gstbus.c: (gst_bus_post):
799         Added some comments.
800
801         * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
802         * tests/muxing/case1.c: (main):
803         * tests/sched/dynamic-pipeline.c: (main):
804         * tests/sched/interrupt1.c: (main):
805         * tests/sched/interrupt2.c: (main):
806         * tests/sched/interrupt3.c: (main):
807         * tests/sched/runxml.c: (main):
808         * tests/sched/sched-stress.c: (main):
809         * tests/seeking/seeking1.c: (event_received), (main):
810         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
811         (main):
812         * tests/threadstate/threadstate3.c: (main):
813         * tests/threadstate/threadstate4.c: (main):
814         * tests/threadstate/threadstate5.c: (main):
815         Fix the tests.
816
817 2005-07-21  Wim Taymans  <wim@fluendo.com>
818
819         * docs/design/part-seeking.txt:
820         Some small additions.
821
822         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
823         (gst_base_sink_get_times), (gst_base_sink_do_sync),
824         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
825         * gst/base/gstbasesink.h:
826         discont values are gint64, handle the math correctly.
827
828         * gst/base/gstbasesrc.c: (gst_base_src_loop):
829         Make the basesrc report error if the source pad is not linked.
830
831         * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
832         (gst_queue_loop), (gst_queue_handle_src_query),
833         (gst_queue_src_activate_push):
834         Make queue collect data even if the srcpad is not linked.
835         Start pushing out data as soon as it is linked.
836
837         * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
838         * gst/gstutils.h:
839         Added gst_flow_get_name() to ease error reporting.
840
841 2005-07-20  Wim Taymans  <wim@fluendo.com>
842
843         * gst/gstmessage.c: (gst_message_new_segment_start),
844         (gst_message_new_segment_done), (gst_message_parse_segment_start),
845         (gst_message_parse_segment_done):
846         * gst/gstmessage.h:
847         Added a bunch of messages for advanced seeking.
848
849         * gst/parse/grammar.y:
850         * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
851         (gst_dpman_state_changed):
852         Fix some new-pad -> pad-added signals
853
854 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
855
856         * docs/manual/appendix-porting.xml:
857         * docs/pwg/appendix-porting.xml:
858           Document new-pad/state-change signal renames and the FixedList
859           type rename.
860
861 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
862
863         * docs/manual/advanced-autoplugging.xml:
864         * docs/manual/basics-helloworld.xml:
865         * docs/manual/basics-pads.xml:
866         * docs/random/ds/0.9-suggested-changes:
867         * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
868         * gst/gstelement.h:
869         * gst/gstevent.h:
870         * gst/gstformat.h:
871         * gst/gstquery.h:
872         * gst/gststructure.c: (gst_structure_value_get_generic_type),
873         (gst_structure_parse_array), (gst_structure_parse_value):
874         * gst/gstvalue.c: (gst_type_is_fixed),
875         (gst_value_list_prepend_value), (gst_value_list_append_value),
876         (gst_value_list_get_size), (gst_value_list_get_value),
877         (gst_value_transform_array_string), (gst_value_serialize_array),
878         (gst_value_deserialize_array), (gst_value_intersect_array),
879         (gst_value_is_fixed), (_gst_value_initialize):
880         * gst/gstvalue.h:
881           GstElement::new-pad -> pad-added, GstElement::state-change ->
882           state-changed, GstValueFixedList -> GstValueArray, add format and
883           flags as their own arguments in gst_element_seek() (should improve
884           "bindeability"), remove function generators since they don't work
885           under a whole bunch of compilers (they were deprecated already
886           anyway).
887
888 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
889
890         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
891         (_gst_debug_register_funcptr):
892         * gst/gstinfo.h:
893           Fix illegal cast on some platforms (#309253).
894
895 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
896
897         * gst/gstmessage.c: (gst_message_new_custom):
898         * gst/gstmessage.h:
899           Add _new_custom, make _new_application a macro to _new_custom.
900
901 2005-07-20  Wim Taymans  <wim@fluendo.com>
902
903         * gst/base/gstbasesrc.c: (gst_base_src_init),
904         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
905         * gst/base/gstbasesrc.h:
906         Add a gboolean to decide when to push out a discont.
907
908         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
909         (gst_queue_loop), (gst_queue_handle_src_query),
910         (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
911         (gst_queue_set_property), (gst_queue_get_property):
912         Some cleanups.
913
914         * tests/threadstate/threadstate1.c: (main):
915         Make a thread test compile and run... very silly..
916
917
918 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
919
920         * docs/manual/appendix-porting.xml:
921           Mention removal of libgstgconf-0.9.la and existence of gconf
922           elements.
923
924 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
925
926         * docs/pwg/advanced-clock.xml:
927         * docs/pwg/appendix-porting.xml:
928         * docs/pwg/intro-preface.xml:
929         * docs/pwg/other-base.xml:
930         * docs/pwg/other-manager.xml:
931         * docs/pwg/other-nton.xml:
932         * docs/pwg/other-ntoone.xml:
933         * docs/pwg/other-oneton.xml:
934         * docs/pwg/pwg.xml:
935           Document base classes, update sections of n-to-1 and 1-to-n (muxer,
936           demuxer), remove n-to-n (was never written), fix some code examples
937           and links and update the porting section to include all this.
938
939 2005-07-19  Wim Taymans  <wim@fluendo.com>
940
941         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
942         (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
943         (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
944         (gst_queue_src_activate_push), (gst_queue_change_state),
945         (gst_queue_get_property):
946         * gst/gstqueue.h:
947         Propagate GstFlowReturn more intelligently upstream and output
948         an ERROR/EOS when streaming stopped due to fatal error.
949
950 2005-07-19  Wim Taymans  <wim@fluendo.com>
951
952         * tools/gst-launch.c: (check_intr), (event_loop), (main):
953         Don't block forever for the state change to complete, the
954         pipeline already did with a sensible timeout.
955
956 2005-07-19  Wim Taymans  <wim@fluendo.com>
957
958         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
959         Make sure we never call the create function is we
960         got deactivated.
961
962 2005-07-19  Andy Wingo  <wingo@pobox.com>
963
964         * gst/parse/parse.l: Attempt to solve bug #172815.
965
966 2005-07-19  Wim Taymans  <wim@fluendo.com>
967
968         * docs/design/part-clocks.txt:
969         * docs/design/part-events.txt:
970         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
971         Small docs updates.
972         Only update the seeking values when we are not
973         busy streaming.
974
975 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
976
977         * gst/base/gstbasesrc.c: (gst_base_src_loop):
978           Oops, ignore the result of gst_pad_push_event here.
979
980 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
981
982         * gst/base/gstbasesrc.c: (gst_base_src_loop),
983         (gst_base_src_activate_push):
984           Send discont event from the loop function, as pads
985           aren't activated yet in the activate_push handler.
986
987         * gst/gstbin.c: (bin_bus_handler):
988           Don't leak element name.
989
990 2005-07-18  Andy Wingo  <wingo@pobox.com>
991
992         * configure.ac: Use AS_LIBTOOL_TAGS.
993
994 2005-07-18  Wim Taymans  <wim@fluendo.com>
995
996         * docs/gst/gstreamer.types:
997         Remove deleted types.
998
999 2005-07-18  Wim Taymans  <wim@fluendo.com>
1000
1001         * check/elements/gstfakesrc.c: (GST_START_TEST):
1002         * configure.ac:
1003         * gst/Makefile.am:
1004         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
1005         (init_popt_callback):
1006         * gst/gst.h:
1007         * gst/gst_private.h:
1008         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
1009         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
1010         * gst/gstbin.h:
1011         * gst/gstbus.h:
1012         * gst/gstconfig.h.in:
1013         * gst/gstelement.c: (gst_element_class_init),
1014         (gst_element_set_base_time), (gst_element_get_base_time),
1015         (iterator_fold_with_resync), (gst_element_change_state),
1016         (gst_element_dispose), (gst_element_get_bus):
1017         * gst/gstelement.h:
1018         * gst/gstelementfactory.h:
1019         * gst/gsterror.c: (_gst_core_errors_init):
1020         * gst/gsterror.h:
1021         * gst/gstevent.h:
1022         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
1023         * gst/gstindex.c:
1024         * gst/gstinfo.c: (_gst_debug_init):
1025         * gst/gstmessage.c: (_gst_message_copy):
1026         * gst/gstmessage.h:
1027         * gst/gstminiobject.h:
1028         * gst/gstobject.c:
1029         * gst/gstobject.h:
1030         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
1031         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
1032         * gst/gstpad.h:
1033         * gst/gstparse.h:
1034         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
1035         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
1036         (gst_pipeline_get_last_stream_time):
1037         * gst/gstpipeline.h:
1038         * gst/gstpluginfeature.h:
1039         * gst/gstquery.h:
1040         * gst/gstscheduler.c:
1041         * gst/gstscheduler.h:
1042         * gst/gststructure.h:
1043         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
1044         (gst_task_finalize), (gst_task_func), (gst_task_create),
1045         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
1046         (gst_task_stop), (gst_task_pause):
1047         * gst/gsttask.h:
1048         * gst/gsttypefind.h:
1049         * gst/gsttypes.h:
1050         * gst/registries/gstlibxmlregistry.c: (load_feature),
1051         (gst_xml_registry_load), (gst_xml_registry_save_feature):
1052         * gst/registries/gstxmlregistry.c:
1053         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
1054         * gst/schedulers/threadscheduler.c:
1055         * libs/gst/control/dparammanager.h:
1056         * tools/gst-inspect.c: (print_element_list),
1057         (print_plugin_features), (print_element_features):
1058         * tools/gst-xmlinspect.c: (print_element_list),
1059         (print_plugin_info), (main):
1060         Removed plugable schedulers.
1061         Removed Scheduler/Manager from elements.
1062         Removed gsttypes.h, rearranged includes.
1063         Removed dependency pad<->element, element<>pipeline, and
1064         various others,  fix includes.
1065         implement gst_pad_get_parent() with gst_object_get_parent()
1066         Make GstTask sefcontained.
1067         Fix _get_state() on GstBin, it did not return ASYNC with a 0
1068         timeout.
1069         Fix endless loop in iterator_fold_with_resync.
1070
1071
1072 2005-07-18  Wim Taymans  <wim@fluendo.com>
1073
1074         * gst/Makefile.am:
1075         * gst/gstarch.h:
1076         Remove old file.
1077
1078 2005-07-18  Wim Taymans  <wim@fluendo.com>
1079
1080         * gst/Makefile.am:
1081         No more cothreads.h
1082
1083 2005-07-18  Wim Taymans  <wim@fluendo.com>
1084
1085         * gst/cothreads.c:
1086         * gst/cothreads.h:
1087         Let's remove these.
1088
1089 2005-07-18  Wim Taymans  <wim@fluendo.com>
1090
1091         * docs/design/part-dynamic.txt:
1092         * docs/design/part-events.txt:
1093         * docs/design/part-seeking.txt:
1094         Some more docs in the works.
1095
1096         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
1097         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
1098         (gst_base_transform_setcaps), (gst_base_transform_get_size),
1099         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
1100         (gst_base_transform_handle_buffer),
1101         (gst_base_transform_sink_activate_push),
1102         (gst_base_transform_src_activate_pull),
1103         (gst_base_transform_set_passthrough),
1104         (gst_base_transform_is_passthrough):
1105         Refcounting fixes.
1106
1107         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
1108         Cleanups.
1109
1110         * gst/gstevent.c: (gst_event_finalize):
1111         Set SRC to NULL.
1112
1113         * gst/gstutils.c: (gst_element_unlink),
1114         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
1115         (gst_pad_proxy_setcaps):
1116         * gst/gstutils.h:
1117         Add _get_parent_element() to get a pads parent as an element.
1118
1119 2005-07-18  Wim Taymans  <wim@fluendo.com>
1120
1121         * check/gst/gstbin.c: (GST_START_TEST):
1122         Remove bogus test.
1123
1124 2005-07-18  Wim Taymans  <wim@fluendo.com>
1125
1126         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
1127         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
1128         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
1129         (gst_base_sink_event), (gst_base_sink_do_sync),
1130         (gst_base_sink_chain), (gst_base_sink_loop),
1131         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
1132         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
1133         Refcounting fixes.
1134         Fix logic for returning ASYNC when not prerolled.
1135
1136 2005-07-18  Wim Taymans  <wim@fluendo.com>
1137
1138         * gst/gstqueue.c: (gst_queue_handle_sink_event):
1139         Fix nasty refcount bug.
1140
1141 2005-07-16 Philippe Khalaf <burger@speedy.org>
1142         * gst/elements/gstfdsrc.c:
1143         * gst/elements/gstfdsrc.h:
1144         * gst/elements/gstelements.c:
1145         * gst/elements/Makefile.am:
1146         Ported fdsrc to 0.9.
1147
1148 2005-07-16  Wim Taymans  <wim@fluendo.com>
1149
1150         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1151         (gst_base_sink_do_sync):
1152         Fix compile error.
1153
1154 2005-07-16  Wim Taymans  <wim@fluendo.com>
1155
1156         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1157         (gst_base_sink_event), (gst_base_sink_get_times),
1158         (gst_base_sink_do_sync), (gst_base_sink_change_state):
1159         * gst/base/gstbasesink.h:
1160         Store and use discont values when syncing buffers as described
1161         in design docs.
1162         
1163         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
1164         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
1165         (gst_base_src_activate_push):
1166         Push discont event when starting.
1167
1168         * gst/elements/gstidentity.c: (gst_identity_transform):
1169         Small cleanups.
1170
1171         * gst/gstbin.c: (gst_bin_change_state):
1172         Small cleanups in base_time  distribution.
1173
1174         * gst/gstelement.c: (gst_element_set_base_time),
1175         (gst_element_get_base_time), (gst_element_change_state):
1176         * gst/gstelement.h:
1177         Added methods for the base_time of the element.
1178         Some MT fixes.
1179
1180         * gst/gstpipeline.c: (gst_pipeline_send_event),
1181         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
1182         (gst_pipeline_get_last_stream_time):
1183         * gst/gstpipeline.h:
1184         MT fixes.
1185         Handle seeking as described in design doc, remove stream_time
1186         hack.
1187         Cleanups clock and stream_time selection code. Added accessors
1188         for the stream_time.
1189         
1190
1191 2005-07-16  Andy Wingo  <wingo@pobox.com>
1192
1193         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
1194         (#305291).
1195
1196 2005-07-16  Wim Taymans  <wim@fluendo.com>
1197
1198         * check/gst/gstbin.c: (GST_START_TEST):
1199         Make elements silent as the deep_notify refs the
1200         parent, which might make the test fail.
1201
1202         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
1203         Don't hold the lock for too long.
1204
1205 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
1206
1207         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
1208           Don't unref the caps we passed to gst_caps_make_writable() after
1209           passing them. gst_caps_make_writable() will do that for us.
1210
1211 2005-07-15  Andy Wingo  <wingo@pobox.com>
1212
1213         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
1214         (#157311).
1215
1216         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
1217         own marshalling function for the handoff signal. Properly type the
1218         buffer as a buffer. Fixes some warnings. Should do a more general
1219         solution.
1220         (gst_identity_class_init): Plug into the right marshaller.
1221
1222 2005-07-15  Wim Taymans  <wim@fluendo.com>
1223
1224         * docs/design/part-TODO.txt:
1225         * docs/design/part-clocks.txt:
1226         * docs/design/part-element-sink.txt:
1227         * docs/design/part-events.txt:
1228         * docs/design/part-gstpipeline.txt:
1229         Updated docs, mostly DISCONT related.
1230
1231 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
1232
1233         * docs/pwg/building-pads.xml:
1234           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
1235
1236 2005-07-15  Andy Wingo  <wingo@pobox.com>
1237
1238         * tools/gst-typefind.c: Update, add copyright block.
1239
1240         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
1241         Normalize and truncate caps before fixation.
1242
1243         * gst/gstcaps.h:
1244         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
1245         discards all but the first structure from its argument.
1246
1247 2005-07-15  Wim Taymans  <wim@fluendo.com>
1248
1249         * gst/base/gstbasetransform.c: (gst_base_transform_init),
1250         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
1251         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
1252         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
1253         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
1254         (gst_base_transform_chain), (gst_base_transform_change_state),
1255         (gst_base_transform_set_passthrough),
1256         (gst_base_transform_is_passthrough):
1257         * gst/base/gstbasetransform.h:
1258         Make passthrough work using the bufferpools.
1259         Changed API a bit, subclasses have to write into a buffer
1260         provided by the base class.
1261         More debug info in nego functions.
1262         
1263         * gst/elements/gstidentity.c: (gst_identity_init),
1264         (gst_identity_transform):
1265         Port to new base class.
1266
1267 2005-07-15  Wim Taymans  <wim@fluendo.com>
1268
1269         * gst/gstmessage.c: (gst_message_new_state_changed):
1270         * tools/gst-launch.c: (event_loop), (main):
1271         Totally dump messages in -launch with the -m option.
1272         Fix message name for State messages,
1273
1274 2005-07-14  Wim Taymans  <wim@fluendo.com>
1275
1276         * gst/base/gstbasesrc.c: (gst_base_src_loop):
1277         Post error messages on errors.
1278
1279 2005-07-14  Wim Taymans  <wim@fluendo.com>
1280
1281         * gst/gstcaps.c: (gst_caps_do_simplify):
1282         Remove debug info.
1283
1284         * gst/gsterror.h:
1285         Define error for stream stopped.
1286
1287         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1288         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
1289         Do proper return values.
1290
1291         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
1292         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
1293         (gst_pad_get_range):
1294         Better return values.
1295
1296         * gst/gstpad.h:
1297         Reorganise return values, add macro to check for fatal errors.
1298
1299         * gst/gstqueue.c: (gst_queue_chain):
1300         Return proper GstFlowReturn values,
1301
1302 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
1303
1304         * docs/gst/gstreamer-sections.txt:
1305         * docs/gst/gstreamer.types:
1306         * docs/gst/tmpl/gst.sgml:
1307         * docs/gst/tmpl/gstbasesink.sgml:
1308         * docs/gst/tmpl/gstbasesrc.sgml:
1309         * docs/gst/tmpl/gstbasetransform.sgml:
1310         * docs/gst/tmpl/gstbin.sgml:
1311         * docs/gst/tmpl/gstbuffer.sgml:
1312         * docs/gst/tmpl/gstcaps.sgml:
1313         * docs/gst/tmpl/gstclock.sgml:
1314         * docs/gst/tmpl/gstcompat.sgml:
1315         * docs/gst/tmpl/gstconfig.sgml:
1316         * docs/gst/tmpl/gstelement.sgml:
1317         * docs/gst/tmpl/gstelementdetails.sgml:
1318         * docs/gst/tmpl/gstelementfactory.sgml:
1319         * docs/gst/tmpl/gstenumtypes.sgml:
1320         * docs/gst/tmpl/gsterror.sgml:
1321         * docs/gst/tmpl/gstevent.sgml:
1322         * docs/gst/tmpl/gstfakesink.sgml:
1323         * docs/gst/tmpl/gstfakesrc.sgml:
1324         * docs/gst/tmpl/gstfilesink.sgml:
1325         * docs/gst/tmpl/gstfilesrc.sgml:
1326         * docs/gst/tmpl/gstfilter.sgml:
1327         * docs/gst/tmpl/gstformat.sgml:
1328         * docs/gst/tmpl/gstghostpad.sgml:
1329         * docs/gst/tmpl/gstimplementsinterface.sgml:
1330         * docs/gst/tmpl/gstindex.sgml:
1331         * docs/gst/tmpl/gstindexfactory.sgml:
1332         * docs/gst/tmpl/gstinfo.sgml:
1333         * docs/gst/tmpl/gstiterator.sgml:
1334         * docs/gst/tmpl/gstmacros.sgml:
1335         * docs/gst/tmpl/gstmemchunk.sgml:
1336         * docs/gst/tmpl/gstminiobject.sgml:
1337         * docs/gst/tmpl/gstobject.sgml:
1338         * docs/gst/tmpl/gstpad.sgml:
1339         * docs/gst/tmpl/gstpadtemplate.sgml:
1340         * docs/gst/tmpl/gstparse.sgml:
1341         * docs/gst/tmpl/gstpipeline.sgml:
1342         * docs/gst/tmpl/gstplugin.sgml:
1343         * docs/gst/tmpl/gstpluginfeature.sgml:
1344         * docs/gst/tmpl/gstquery.sgml:
1345         * docs/gst/tmpl/gstqueue.sgml:
1346         * docs/gst/tmpl/gstregistry.sgml:
1347         * docs/gst/tmpl/gstregistrypool.sgml:
1348         * docs/gst/tmpl/gstscheduler.sgml:
1349         * docs/gst/tmpl/gstschedulerfactory.sgml:
1350         * docs/gst/tmpl/gststructure.sgml:
1351         * docs/gst/tmpl/gstsystemclock.sgml:
1352         * docs/gst/tmpl/gsttaglist.sgml:
1353         * docs/gst/tmpl/gsttagsetter.sgml:
1354         * docs/gst/tmpl/gsttrace.sgml:
1355         * docs/gst/tmpl/gsttrashstack.sgml:
1356         * docs/gst/tmpl/gsttypefind.sgml:
1357         * docs/gst/tmpl/gsttypefindfactory.sgml:
1358         * docs/gst/tmpl/gsttypes.sgml:
1359         * docs/gst/tmpl/gsturihandler.sgml:
1360         * docs/gst/tmpl/gsturitype.sgml:
1361         * docs/gst/tmpl/gstutils.sgml:
1362         * docs/gst/tmpl/gstvalue.sgml:
1363         * docs/gst/tmpl/gstversion.sgml:
1364         * docs/gst/tmpl/gstxml.sgml:
1365         * docs/libs/tmpl/gstcontrol.sgml:
1366         * docs/libs/tmpl/gstdataprotocol.sgml:
1367         * docs/libs/tmpl/gstdparam.sgml:
1368         * docs/libs/tmpl/gstdplinint.sgml:
1369         * docs/libs/tmpl/gstdpman.sgml:
1370         * docs/libs/tmpl/gstdpsmooth.sgml:
1371         * docs/libs/tmpl/gstgetbits.sgml:
1372         * docs/libs/tmpl/gstunitconvert.sgml:
1373         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
1374         (gst_push_src_base_init), (gst_push_src_class_init),
1375         (gst_push_src_init), (gst_push_src_create):
1376         * gst/base/gstpushsrc.h:
1377         * gst/elements/gstelements.c:
1378         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
1379         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
1380         (gst_fake_sink_init), (gst_fake_sink_set_property),
1381         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
1382         (gst_fake_sink_event), (gst_fake_sink_preroll),
1383         (gst_fake_sink_render), (gst_fake_sink_change_state):
1384         * gst/elements/gstfakesink.h:
1385         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
1386         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
1387         (gst_fake_src_base_init), (gst_fake_src_class_init),
1388         (gst_fake_src_init), (gst_fake_src_event_handler),
1389         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
1390         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
1391         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
1392         (gst_fake_src_create_buffer), (gst_fake_src_create),
1393         (gst_fake_src_start), (gst_fake_src_stop):
1394         * gst/elements/gstfakesrc.h:
1395         * gst/elements/gstfilesink.c: (_do_init),
1396         (gst_file_sink_base_init), (gst_file_sink_class_init),
1397         (gst_file_sink_init), (gst_file_sink_dispose),
1398         (gst_file_sink_set_location), (gst_file_sink_set_property),
1399         (gst_file_sink_get_property), (gst_file_sink_open_file),
1400         (gst_file_sink_close_file), (gst_file_sink_query),
1401         (gst_file_sink_event), (gst_file_sink_render),
1402         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
1403         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
1404         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
1405         * gst/elements/gstfilesink.h:
1406         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
1407         (gst_file_src_class_init), (gst_file_src_init),
1408         (gst_file_src_finalize), (gst_file_src_set_location),
1409         (gst_file_src_set_property), (gst_file_src_get_property),
1410         (gst_file_src_map_region), (gst_file_src_map_small_region),
1411         (gst_file_src_create_mmap), (gst_file_src_create_read),
1412         (gst_file_src_create), (gst_file_src_is_seekable),
1413         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
1414         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
1415         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
1416         (gst_file_src_uri_handler_init):
1417         * gst/elements/gstfilesrc.h:
1418           more autistic cleanliness in functions/names/defines
1419
1420 2005-07-13  Andy Wingo  <wingo@pobox.com>
1421
1422         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
1423         source couldn't negotiate.
1424
1425         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
1426         connections again.
1427
1428         * gst/gstutils.h:
1429         * gst/gstutils.c (gst_element_link_pads_filtered): New old
1430         function. I am channeling Hades. Put your boots on suckers!!!
1431
1432 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
1433
1434         * testsuite/caps/Makefile.am:
1435         * testsuite/caps/value_compare.c:
1436         * testsuite/caps/value_intersect.c:
1437         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
1438           move two testsuite apps over to the check dir
1439
1440 2005-07-12  Wim Taymans  <wim@fluendo.com>
1441
1442         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
1443         Added more debug info in the negotiate process.
1444
1445         * gst/gstmessage.h:
1446         Prepare for segment playback.
1447
1448         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
1449         Better debugging.
1450
1451         * gst/gstutils.c:
1452         Some more docs.
1453
1454         * tools/gst-launch.c: (main):
1455         NULL pipeline on errors.
1456
1457 2005-07-12  Andy Wingo  <wingo@pobox.com>
1458
1459         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
1460         not it comes from a malloc region. Make sure our copy gets freed.
1461
1462 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1463
1464         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
1465         * check/gst/gstmessage.c: (GST_START_TEST):
1466         * check/gst/gststructure.c: (GST_START_TEST),
1467         (gst_structure_suite), (main):
1468           more testing
1469         * gst/gstelement.c: (gst_element_message_full):
1470           clean up GError and debug string now that they get copied
1471         * gst/gstmessage.c: (gst_message_new_error),
1472         (gst_message_new_warning), (gst_message_parse_error),
1473         (gst_message_parse_warning):
1474           use GST_TYPE_G_ERROR for structure_new, and take copies of
1475           arguments, so that we don't mess up refcounting
1476
1477 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1478
1479         * check/Makefile.am:
1480           add per-test valgrind targets
1481         * check/gst-libs/gdp.c: (GST_START_TEST),
1482         (gst_data_protocol_suite), (main):
1483           clean up
1484
1485 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1486
1487         * check/Makefile.am:
1488           instate more valgrindable tests
1489         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1490         (GST_START_TEST), (fakesrc_suite):
1491         * check/gst/gstpad.c: (GST_START_TEST):
1492         * check/gst/gststructure.c: (GST_START_TEST):
1493           fix test leaks
1494         * docs/gst/tmpl/gstminiobject.sgml:
1495         * gst/gstpad.c: (gst_pad_finalize):
1496           fix the static mutex leak
1497
1498 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1499
1500         * check/Makefile.am:
1501           add two more tests for valgrinding
1502         * check/gst/gstvalue.c: (GST_START_TEST):
1503           test refcount of deserialized buffer, found a leak
1504         * docs/gst/gstreamer-docs.sgml:
1505         * docs/gst/gstreamer-sections.txt:
1506         * docs/gst/gstreamer.types:
1507         * docs/gst/tmpl/gstminiobject.sgml:
1508           add miniobject to docs
1509         * gst/gstminiobject.c:
1510           add some docs
1511         * gst/gstvalue.c: (gst_value_deserialize_buffer),
1512         (gst_string_unwrap):
1513           fix a hard-to-find invalid write for one of the tests
1514           fix a leak for deserialized buffers
1515
1516 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1517
1518         * docs/pwg/advanced-events.xml:
1519         * docs/pwg/advanced-request.xml:
1520         * docs/pwg/advanced-scheduling.xml:
1521         * docs/pwg/appendix-porting.xml:
1522         * docs/pwg/building-boiler.xml:
1523         * docs/pwg/intro-preface.xml:
1524         * docs/pwg/other-ntoone.xml:
1525           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
1526           of example code and explanation for pad activation, loop() and
1527           getrange() functions and a bit more. Remove old comments pointing
1528           to loop-functions.
1529         * examples/pwg/Makefile.am:
1530           Add loop/getrange examples.
1531
1532 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1533
1534         * configure.ac:
1535           check for valgrind binary + some fixes
1536         * check/gst.supp:
1537           valgrind suppressions for the tests
1538         * check/Makefile.am:
1539           add a valgrind: target that valgrinds the unit tests
1540         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
1541         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
1542         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1543         * check/gst/gstghostpad.c:
1544           added some cleanup
1545         * check/gst/gstdata.c:
1546           removed
1547         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
1548         (thread_unref), (gst_mini_object_suite), (main):
1549           added
1550         * gst/gst.c: (gst_deinit):
1551         * gst/gst.h:
1552           add a method to clean up.
1553         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1554         (gst_system_clock_obtain):
1555           allow for disposing the system clock.
1556         * tools/gst-launch.c: (main):
1557           deinit
1558
1559 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1560
1561         * docs/gst/tmpl/gstbasesrc.sgml:
1562         * docs/gst/tmpl/gstfakesrc.sgml:
1563         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1564         (gst_base_src_init), (gst_base_src_set_property),
1565         (gst_base_src_get_property), (gst_base_src_get_range),
1566         (gst_base_src_start):
1567         * gst/base/gstbasesrc.h:
1568           add num-buffers property
1569         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1570         (gst_fakesrc_init), (gst_fakesrc_set_property),
1571         (gst_fakesrc_get_property), (gst_fakesrc_create),
1572         (gst_fakesrc_start):
1573           remove num-buffers property
1574
1575 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1576
1577         * docs/gst/gstreamer-sections.txt:
1578         * docs/gst/tmpl/gstbasesink.sgml:
1579         * docs/gst/tmpl/gstbasesrc.sgml:
1580         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
1581         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
1582         (gst_base_sink_finalize), (gst_base_sink_set_clock),
1583         (gst_base_sink_set_property), (gst_base_sink_get_property),
1584         (gst_base_sink_handle_object), (gst_base_sink_event),
1585         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
1586         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
1587         (gst_base_sink_loop), (gst_base_sink_deactivate),
1588         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
1589         (gst_base_sink_change_state):
1590         * gst/base/gstbasesink.h:
1591         * gst/base/gstbasesrc.h:
1592         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
1593         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
1594         (gst_filesink_init):
1595           more macro splitting
1596
1597 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1598
1599         * gst/gstelement.c: (gst_element_get_bus):
1600           add debug
1601         * tools/gst-launch.c: (check_intr), (event_loop):
1602           fix bus leaks
1603
1604 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1605
1606         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
1607           fix a caps leak
1608
1609 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1610
1611         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1612         (gst_base_src_finalize):
1613           add finalize method and clean up properly
1614         * gst/gstpipeline.c: (gst_pipeline_dispose):
1615           add debug
1616
1617 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1618
1619         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
1620         (gst_bin_suite):
1621           add more things to check
1622         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
1623         * gst/gstelement.c:
1624           more debug
1625
1626 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1627
1628         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1629         (GST_START_TEST), (fakesrc_suite):
1630         * check/gst-libs/gdp.c: (GST_START_TEST):
1631         * check/gst/gst.c: (GST_START_TEST):
1632         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
1633         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1634         * check/gst/gstbus.c: (GST_START_TEST):
1635         * check/gst/gstcaps.c: (GST_START_TEST):
1636         * check/gst/gstdata.c: (GST_START_TEST):
1637         * check/gst/gstelement.c: (GST_START_TEST):
1638         * check/gst/gstghostpad.c: (GST_START_TEST):
1639         * check/gst/gstiterator.c: (GST_START_TEST):
1640         * check/gst/gstmessage.c: (GST_START_TEST):
1641         * check/gst/gstobject.c: (GST_START_TEST):
1642         * check/gst/gstpad.c: (GST_START_TEST):
1643         * check/gst/gststructure.c: (GST_START_TEST):
1644         * check/gst/gstsystemclock.c: (GST_START_TEST),
1645         (gst_systemclock_suite):
1646         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
1647         * check/gst/gstvalue.c: (GST_START_TEST):
1648         * check/pipelines/cleanup.c: (GST_START_TEST):
1649         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
1650         * check/states/sinks.c: (GST_START_TEST):
1651         * check/gstcheck.c: (gst_check_init):
1652         * check/gstcheck.h:
1653           add debugging category
1654           use GST_START_TEST now, so we add a debug line
1655
1656 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1657
1658         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
1659           add test for state change message on a bin
1660         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
1661           add another test
1662         * gst/gstbin.c: (gst_bin_init):
1663         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
1664         * gst/gstelement.c: (gst_element_post_message),
1665         (gst_element_set_state):
1666         * gst/gstelementfactory.c: (gst_element_factory_create):
1667         * gst/gstmessage.c: (gst_message_new):
1668         * gst/gstscheduler.c:
1669           various debugging additions and cleanups
1670
1671 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1672
1673         * check/Makefile.am:
1674         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
1675         (main):
1676           adding tests for elements
1677         * gst/gstelement.c: (gst_element_dispose):
1678
1679 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1680
1681         * gst/registries/gstlibxmlregistry.c: (load_feature):
1682           plug more leaks.  A simple gst_init() now is leakfree, yay.
1683
1684 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1685
1686         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
1687         (gst_xml_registry_load):
1688           plug another memleak
1689
1690 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1691
1692         * configure.ac:
1693           use GST_SET_ERROR_CFLAGS
1694         * docs/faq/cvs.xml:
1695           change to ERROR_CFLAGS
1696
1697 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1698
1699         * configure.ac:
1700           make GST_ERROR_CFLAGS overridable and re-enable Werror
1701         * docs/faq/cvs.xml:
1702           add a note about error CFLAGS
1703         * docs/gst/tmpl/gstfakesrc.sgml:
1704         * gst/elements/gstfakesrc.c:
1705           comment out some unused code
1706         * gst/gst.c: (split_and_iterate):
1707         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
1708         (load_feature):
1709           plug some memleaks
1710
1711 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1712
1713         * common/Makefile.am:
1714         * common/gtk-doc.mak:
1715         * docs/gst/Makefile.am:
1716           factor out gtk-doc.mak
1717
1718 2005-07-07  Wim Taymans  <wim@fluendo.com>
1719
1720         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
1721         (gst_thread_scheduler_dispose):
1722         Unlock the STREAM_LOCK completely.
1723
1724 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1725
1726         * check/Makefile.am:
1727         * check/elements/.cvsignore:
1728         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1729         (START_TEST), (fakesrc_suite), (main):
1730         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1731         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
1732         (gst_fakesrc_create), (gst_fakesrc_start):
1733         * gst/elements/gstfakesrc.h:
1734           adding a first element test
1735
1736 2005-07-07  Andy Wingo  <wingo@pobox.com>
1737
1738         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
1739         debug message.
1740
1741 2005-07-07  Wim Taymans  <wim@fluendo.com>
1742
1743         * gst/gstquery.c:
1744         * gst/gstquery.h:
1745         Remove old types
1746
1747 2005-07-07  Wim Taymans  <wim@fluendo.com>
1748
1749         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
1750         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
1751         Allow subclasses to implement their own negotiation.
1752
1753 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1754
1755         * docs/design/part-gstbin.txt:
1756         * docs/design/part-gstpipeline.txt:
1757           Update design notes to reflect the movement of
1758           responsibility for bus handling from GstPipeline to
1759           GstBin
1760
1761 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1762
1763         * configure.ac:
1764           Remove unnecessary queue2/3/4 examples.
1765
1766 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1767
1768         * examples/Makefile.am:
1769         * examples/helloworld/helloworld.c: (event_loop), (main):
1770         * examples/queue/queue.c: (event_loop), (main):
1771         * examples/queue2/queue2.c: (main):
1772           Update a couple of the examples to work again.
1773
1774         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1775         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
1776          Spelling corrections and extra debug.
1777         
1778         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
1779         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
1780         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
1781         * gst/gstbin.h:
1782         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
1783         (gst_pipeline_change_state):
1784         * gst/gstpipeline.h:
1785           Move the bus handler for children to the GstBin, and create a
1786           separate bus for receiving messages from children to the one the
1787           bus sends 'upwards' on.
1788
1789 2005-07-06  Wim Taymans  <wim@fluendo.com>
1790
1791         * gst/base/README:
1792         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1793         (gst_base_sink_handle_object), (gst_base_sink_loop),
1794         (gst_base_sink_change_state):
1795         * gst/base/gstbasesink.h:
1796         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1797         (gst_base_src_init), (gst_base_src_setcaps),
1798         (gst_base_src_getcaps), (gst_base_src_loop),
1799         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
1800         (gst_base_src_start), (gst_base_src_change_state):
1801         * gst/base/gstbasesrc.h:
1802         Make basesrc negotiate.
1803         Handle the case where preroll fails in basesink.
1804         Update README.
1805
1806 2005-07-06  Wim Taymans  <wim@fluendo.com>
1807
1808         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
1809         Implement the fixate function.
1810         Clean up acceptcaps.
1811
1812 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1813
1814         * docs/pwg/building-filterfactory.xml:
1815         * docs/pwg/pwg.xml:
1816           Remove never-written filter-factory chapter; I'll add the various
1817           base classes to part 4 ("other element types") later on.
1818
1819 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1820
1821         * docs/pwg/advanced-negotiation.xml:
1822         * docs/pwg/building-boiler.xml:
1823         * docs/pwg/building-pads.xml:
1824         * docs/pwg/pwg.xml:
1825         * examples/pwg/Makefile.am:
1826           Add a chapter on caps negotiation, simplify the original code
1827           samples a bit w.r.t. caps negotiation, add link to the advanced
1828           section. Add a bunch of examples showing different use cases of
1829           different types of caps negotiation. Upstream renegotiation isn't
1830           fully documented yet since nobody knows how that works.
1831
1832 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
1833
1834         * check/gst/gstpad.c:
1835         * check/gstcheck.c:
1836         * gst/gstpad.c: (gst_pad_get_internal_links_default):
1837           if pad has no parent, return NULL as list of internal links
1838
1839 2005-07-05  Andy Wingo  <wingo@pobox.com>
1840
1841         * gst/elements/gstfilesrc.c:
1842         * gst/elements/gstfakesrc.c: 
1843         * gst/base/gstpushsrc.c:
1844         * gst/base/gstbasesrc.h: 
1845         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
1846         
1847 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
1848
1849         * Makefile.am:
1850           better report generation target (lcov needs a patch)
1851
1852 2005-07-05  Andy Wingo  <wingo@pobox.com>
1853
1854         * gst/elements, testsuite: Null if we got it...
1855
1856 2005-07-05  Wim Taymans  <wim@fluendo.com>
1857
1858         * configure.ac:
1859         * libs/gst/dataprotocol/Makefile.am:
1860         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
1861         * libs/gst/dataprotocol/dataprotocol.h:
1862         * pkgconfig/Makefile.am:
1863         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
1864         * pkgconfig/gstreamer-dataprotocol.pc.in:
1865         Ported dataprotol to 0.9. 
1866         Added pkgconfig files.
1867
1868 2005-07-05  Andy Wingo  <wingo@pobox.com>
1869
1870         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
1871         Default to returning TRUE for the case when tranform_caps returns
1872         a fixed caps, like for identity or volume.
1873
1874         * check/gst/gstbus.c (pound_bus_with_messages): 
1875         * check/gst/gstmessage.c (START_TEST): 
1876         * check/pipelines/simple_launch_lines.c (got_handoff): Application
1877         message API change.
1878
1879         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
1880         logic weaks here: always run transform_caps, trying passthrough
1881         operation only if the original caps intersects with the transform.
1882
1883         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
1884         source and sink caps.
1885
1886         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
1887         Intersect the peer caps with the pad template before going into
1888         transform_caps.
1889         (gst_base_transform_transform_caps): More debugging.
1890
1891         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
1892         src argument.
1893
1894 2005-07-04  Edward Hervey  <edward@fluendo.com>
1895
1896         * gst/gstutils.c:
1897         * gst/gstutils.h:
1898         (gst_pad_add_*_probe): now returns the signal id for better wrapping
1899         in bindings.
1900
1901 2005-07-04  Andy Wingo  <wingo@pobox.com>
1902
1903         * check/gst/gstpad.c: Only set explicit caps on pads.
1904
1905 2005-07-01  Andy Wingo  <wingo@pobox.com>
1906
1907         * tests/network-clock.scm: Commentary update.
1908
1909         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
1910         Didn't really make sense, not implementable with basetransform,
1911         etc.
1912         (gst_identity_transform): Unref inbuf via make_writable. Feeble
1913         attempt at implementing the sync property, needs an unlock method.
1914
1915         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
1916         New func, by default returns the same caps (the identity
1917         transformation).
1918         (gst_base_transform_getcaps): Uses transform_caps to return
1919         something sensible.
1920         (gst_base_transform_setcaps): Complicated logic to get caps on
1921         both pads, even if they are different, and to call set_caps once
1922         for every time both pads get their caps set.
1923         (gst_base_transform_handle_buffer): Give the ref to the transform
1924         function. Allows in-place modification of the buffer.
1925
1926         * gst/base/gstbasetransform.h (transform_caps): New class method.
1927         Given caps on one side, what can I do on the other.
1928         (set_caps): Take two caps, one for each side of the element.
1929
1930         * gst/gstpad.h:
1931         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
1932         caps in place. This is safe because we can check the mutability of
1933         the caps, and a good idea because fixate functions are just called
1934         as a matter of last resort. (Not actually implemented.)
1935         (gst_pad_set_caps): If the caps we're setting is actually the same
1936         as the existing pad caps, just update the pointer without calling
1937         setcaps. Assert that caps is either NULL or fixed, as per the
1938         docs.
1939
1940         * gst/gstghostpad.c: Update for fixate changes.
1941
1942 2005-07-02  Andy Wingo  <wingo@pobox.com>
1943
1944         * gst/gstcaps.c:
1945         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
1946         two refcounts makes it immutable, which is enough. Doc more.
1947
1948 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
1949
1950         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
1951           Put the mini_object into GValue as a mini_object,
1952           not a gpointer, since that's how we declared
1953           the signal.
1954
1955 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1956
1957         * examples/pwg/Makefile.am:
1958           Fix buildbot again.
1959
1960 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1961
1962         * docs/pwg/building-testapp.xml:
1963           Add extra check.
1964         * examples/pwg/Makefile.am:
1965           Fix buildbot.
1966
1967 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1968
1969         * configure.ac:
1970         * examples/Makefile.am:
1971         * examples/pwg/Makefile.am:
1972         * examples/pwg/extract.pl:
1973           Enable building the PWG examples.
1974         * docs/pwg/advanced-interfaces.xml:
1975           Add URI interface stub.
1976         * docs/pwg/advanced-types.xml:
1977         * docs/pwg/other-autoplugger.xml:
1978         * docs/pwg/appendix-porting.xml:
1979         * docs/pwg/pwg.xml:
1980           Add porting guide (mostly stubs), remove autoplugging (see ADM).
1981         * docs/pwg/building-boiler.xml:
1982         * docs/pwg/building-chainfn.xml:
1983         * docs/pwg/building-pads.xml:
1984         * docs/pwg/building-props.xml:
1985         * docs/pwg/building-state.xml:
1986         * docs/pwg/building-testapp.xml:
1987           Update the building-*.xml parts for 0.9 changes. All examples
1988           code blocks compile in examples/pwg/*.
1989
1990 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1991
1992         * docs/manual/advanced-autoplugging.xml:
1993         * docs/manual/appendix-checklist.xml:
1994         * docs/manual/appendix-integration.xml:
1995         * docs/manual/highlevel-components.xml:
1996           Fix playbin/decodebin examples, update docs a bit, mention bus
1997           instead of signals in various places, mention kmplayer and
1998           kaffeine since they have a working GStreamer backend in the KDE
1999           section.
2000
2001 2005-06-30  Wim Taymans  <wim@fluendo.com>
2002
2003         * CHANGES-0.9:
2004         * docs/design/draft-ghostpads.txt:
2005         * docs/design/draft-push-pull.txt:
2006         * docs/design/draft-query.txt:
2007         * docs/design/part-TODO.txt:
2008         * docs/design/part-query.txt:
2009         Added CHANGES-0.9 doc, updated status of other docs.
2010         
2011         * gst/gstquery.h:
2012         Remove "hmm" macro
2013
2014 2005-06-30  Wim Taymans  <wim@fluendo.com>
2015
2016         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
2017         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
2018         (gst_base_sink_change_state):
2019         * gst/base/gstbasesink.h:
2020         Some tweaks, only EOS and a buffer complete a preroll.
2021
2022 2005-06-30  Andy Wingo  <wingo@pobox.com>
2023
2024         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
2025         activate_push down to the internal pad as well.
2026
2027 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
2028
2029         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2030
2031         * gst/gsttaginterface.c:
2032           Some documentation fixes (#307394 and #307397).
2033
2034 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
2035
2036         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2037
2038         * gst/gstvalue.c: (gst_value_intersect_list):
2039           Fix memleak (#309125).
2040
2041 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2042
2043         * docs/manual/advanced-dataaccess.xml:
2044           Fix fakesrc example to compile; doesn't work, bug somewhere...?
2045         * docs/manual/basics-pads.xml:
2046           Add reference for filtered caps to above chapter.
2047
2048 2005-06-30  Wim Taymans  <wim@fluendo.com>
2049
2050         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
2051         (gst_bin_change_state):
2052         Probes are gone.
2053         Lame attempt at making the state change function a bit
2054         more readable.
2055
2056 2005-06-30  Wim Taymans  <wim@fluendo.com>
2057
2058         * docs/design/part-clocks.txt:
2059         * docs/design/part-element-sink.txt:
2060         * docs/design/part-events.txt:
2061         * docs/design/part-preroll.txt:
2062         * docs/design/part-states.txt:
2063         Some more tweeks and additions to the docs.
2064
2065 2005-06-30  Wim Taymans  <wim@fluendo.com>
2066
2067         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
2068         (default_have_data), (gst_pad_class_init), (gst_pad_init),
2069         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
2070         (gst_pad_check_pull_range), (gst_pad_get_range),
2071         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
2072         * gst/gstpad.h:
2073         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
2074         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
2075         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
2076         (gst_pad_remove_buffer_probe):
2077         Removed atomic operations, use existing LOCK.
2078         Move exception handling out of main code path.
2079
2080 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2081
2082         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
2083         (silly_return_true_function), (gst_pad_class_init),
2084         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
2085         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
2086         (gst_pad_send_event):
2087           Fix accumulator, add default value by using _emitv() instead
2088           of _emit() for signal emission.
2089
2090 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2091
2092         * docs/manual/advanced-dataaccess.xml:
2093         * examples/manual/Makefile.am:
2094           Add probe example.
2095         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
2096           Make work (??).
2097
2098 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
2099
2100         * gst/elements/gstfilesink.c: (gst_filesink_render):
2101           Simplify code so that we don't have to handle short
2102           writes and return GST_FLOW_ERROR if an error occured.
2103
2104 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2105
2106         * docs/gst/gstreamer-docs.sgml:
2107           Remove probes more.
2108
2109 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2110
2111         * docs/gst/gstreamer-sections.txt:
2112         * docs/gst/tmpl/gstpad.sgml:
2113         * docs/gst/tmpl/gstprobe.sgml:
2114         * gst/Makefile.am:
2115         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
2116         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
2117         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
2118         (gst_pad_push_event), (gst_pad_send_event):
2119         * gst/gstpad.h:
2120         * gst/gstutils.c: (gst_pad_add_data_probe),
2121         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
2122         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
2123         (gst_pad_remove_buffer_probe):
2124         * gst/gstutils.h:
2125           Remove old probes, add new g-signal-based probes and some utility
2126           functions.
2127
2128 2005-06-29  Edward Hervey  <edward@fluendo.com>
2129
2130         * gst/gstelementfactory.c:
2131         * gst/gstutils.h:
2132         * gst/gstutils.c:
2133         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
2134         the definition to the header file.
2135
2136 2005-06-29  Andy Wingo  <wingo@pobox.com>
2137
2138         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
2139         plugins from the source directory.
2140
2141 2005-06-29  Wim Taymans  <wim@fluendo.com>
2142
2143         * docs/gst/tmpl/gstbuffer.sgml:
2144         * docs/gst/tmpl/gstclock.sgml:
2145         Some fixings for blantently wrong text.
2146
2147 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
2148
2149         * check/Makefile.am:
2150         * gst/gst.c: (add_path_func), (init_pre):
2151         * gst/gstregistry.c: (gst_registry_add_path):
2152           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
2153           only scan the GST_PLUGIN_PATH locations, and not add
2154           system locations
2155
2156 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
2157
2158         * docs/gst/gstreamer-sections.txt:
2159         * docs/gst/tmpl/gstbasesrc.sgml:
2160         * gst/gstelement.c:
2161         * gst/gstelement.h:
2162         * gst/gstevent.c:
2163         * gst/gstutils.c:
2164           doc fixes
2165
2166 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2167
2168         * docs/manual/advanced-autoplugging.xml:
2169           Fix autoplugging example.
2170
2171 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2172
2173         * docs/manual/advanced-autoplugging.xml:
2174         * docs/manual/mime-world.fig:
2175           Try to get autoplugging working, fix type detection. Fix text
2176           in hello-world image.
2177
2178 2005-06-29  Wim Taymans  <wim@fluendo.com>
2179
2180         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
2181         (gst_base_sink_change_state):
2182         Small debug line.
2183
2184         * gst/gstclock.h:
2185         map SIGNAL and BROADCAST to the right function.
2186
2187         * gst/gstobject.h:
2188         Remove redundant braces.
2189
2190         * gst/gstpad.c: (gst_pad_set_caps):
2191         Don't call setcaps function when reseting caps to NULL.
2192
2193         * gst/gstsystemclock.c: (gst_system_clock_dispose),
2194         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
2195         (gst_system_clock_id_unschedule):
2196         Use BROADCAST as this is what we do.
2197
2198 2005-06-29  Wim Taymans  <wim@fluendo.com>
2199
2200         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
2201         We are actually prerolling before commiting the state
2202         change. 
2203
2204 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2205
2206         * docs/manual/advanced-clocks.xml:
2207         * docs/manual/advanced-interfaces.xml:
2208         * docs/manual/advanced-metadata.xml:
2209         * docs/manual/advanced-position.xml:
2210         * docs/manual/advanced-schedulers.xml:
2211         * docs/manual/advanced-threads.xml:
2212         * docs/manual/appendix-porting.xml:
2213         * docs/manual/basics-bins.xml:
2214         * docs/manual/basics-bus.xml:
2215         * docs/manual/basics-elements.xml:
2216         * docs/manual/basics-helloworld.xml:
2217         * docs/manual/basics-pads.xml:
2218         * docs/manual/highlevel-components.xml:
2219         * docs/manual/manual.xml:
2220         * docs/manual/thread.fig:
2221           Update (until threads/scheduling) Application Development Manual;
2222           remove GstThread, add GstBus, add simple porting checklist, add
2223           documentation for tag writing, clocks, make all examples until this
2224           part compile and run.
2225         * examples/manual/Makefile.am:
2226           Update from changes to Application Development Manual; add bus
2227           example, remove thread example.
2228
2229 2005-06-28  Wim Taymans  <wim@fluendo.com>
2230
2231         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
2232         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
2233         (gst_bus_source_dispatch):
2234         Add debugging messages.
2235         Make internal methods static.
2236         Handle the case where the bus is flushed in the handler.
2237         
2238         * gst/gstelement.c: (gst_element_get_bus):
2239         Fix refcount in _get_bus();
2240
2241         * gst/gstpipeline.c: (gst_pipeline_change_state),
2242         (gst_pipeline_get_clock_func):
2243         Clock refcounting fixes.
2244         Handle the case where preroll timed out more gracefully.
2245         
2246         * gst/gstsystemclock.c: (gst_system_clock_dispose):
2247         Clean up the internal thread in dispose. This is needed
2248         for subclasses that actually get disposed.
2249         
2250         * gst/schedulers/threadscheduler.c:
2251         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
2252         (gst_thread_scheduler_dispose):
2253         Free thread pool in dispose.
2254
2255 2005-06-28  Andy Wingo  <wingo@pobox.com>
2256
2257         * tests/network-clock-utils.scm (debug, print-event): New utils.
2258
2259         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
2260         (*packet-loss*): Unified loss probability.
2261         (network-time): Report out-of-band events.
2262
2263         * tests/plot-data: Add support for out-of-band events. Hack it
2264         into this script instead of passing it down the pipe; should fix
2265         this later.
2266
2267 2005-06-28  Wim Taymans  <wim@fluendo.com>
2268
2269         * docs/gst/gstreamer.types:
2270         * docs/gst/tmpl/gstbasesrc.sgml:
2271         * docs/gst/tmpl/gstpad.sgml:
2272         Docs fixes.
2273
2274 2005-06-28  Wim Taymans  <wim@fluendo.com>
2275
2276         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2277         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
2278         (gst_proxy_pad_do_fixatecaps):
2279         Correctly proxy the check_pull_range function.
2280
2281 2005-06-28  Andy Wingo  <wingo@pobox.com>
2282
2283         * tests/network-clock.scm: Removed need for slib.
2284         
2285 2005-06-28  Wim Taymans  <wim@fluendo.com>
2286
2287         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
2288         (gst_basesink_preroll_queue_flush):
2289         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
2290         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
2291         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2292         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
2293         (gst_proxy_pad_set_property):
2294         * gst/gstpad.c:
2295         * gst/gstpad.h:
2296         * gst/gstqueue.c: (gst_queue_init):
2297         The deprecated pad loop function is removed now.
2298
2299 2005-06-28  Andy Wingo  <wingo@pobox.com>
2300
2301         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
2302         New parameters, simulate network packet loss.
2303
2304         * tests/network-clock-utils.scm: Initialize the RNG.
2305
2306 2005-06-28  Wim Taymans  <wim@fluendo.com>
2307
2308         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
2309         (gst_basesink_event), (gst_basesink_deactivate):
2310         Flushing the preroll queue always needs to unlock the waiters.
2311
2312 2005-06-28  Edward Hervey  <edward@fluendo.com>
2313
2314         * gst/gstpipeline.c: (gst_pipeline_send_event): 
2315         Wheen a seek was successful on a pipeline, set the stream_time to the
2316         seek offset in order to have a synchronized stream_time.
2317
2318 2005-06-28  Wim Taymans  <wim@fluendo.com>
2319
2320         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2321         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
2322         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
2323         (gst_proxy_pad_do_fixatecaps):
2324         Call wrapper function instead of just calling the function
2325         pointers. This takes care of any locking and whatmore.
2326
2327 2005-06-28  Wim Taymans  <wim@fluendo.com>
2328
2329         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
2330         (gst_pad_pull_range):
2331         * gst/gstpad.h:
2332         CONNECTED -> LINKED.
2333
2334 2005-06-28  Andy Wingo  <wingo@pobox.com>
2335
2336         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
2337         source-munging commit!!!
2338
2339         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
2340         (gst_object_sink): Take gpointer arguments, not GstObject --
2341         avoids casts. Like GLib.
2342
2343         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
2344         activate.
2345
2346 2005-06-27  Andy Wingo  <wingo@pobox.com>
2347
2348         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
2349         remaining buffer.
2350
2351         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
2352         returns a sorted copy of the trace list.
2353         (gst_alloc_trace_print_live): New API, only prints traces with
2354         live objects. Sort the list.
2355         (gst_alloc_trace_print_all): Sort the list.
2356         (gst_alloc_trace_print): Align columns.
2357
2358         * gst/elements/gstttypefindelement.c:
2359         * gst/elements/gsttee.c:
2360         * gst/base/gstbasesrc.c:
2361         * gst/base/gstbasesink.c:
2362         * gst/base/gstbasetransform.c:
2363         * gst/gstqueue.c: Adapt for pad activation changes.
2364
2365         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
2366         sched.
2367         (gst_pipeline_dispose): Drop ref on sched.
2368
2369         * gst/gstpad.c (gst_pad_init): Set the default activate func.
2370         (gst_pad_activate_default): Push mode by default.
2371         (pre_activate_switch, post_activate_switch): New stubs, things to
2372         do before and after switching activation modes on pads.
2373         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
2374         the pad's activate function to choose which mode to activate.
2375         Shortcut on deactivation and call the right function directly.
2376         (gst_pad_activate_pull): New API, (de)activates a pad in pull
2377         mode.
2378         (gst_pad_activate_push): New API, same for push mode.
2379         (gst_pad_set_activate_function) 
2380         (gst_pad_set_activatepull_function) 
2381         (gst_pad_set_activatepush_function): Setters for new API.
2382
2383         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
2384         Trace all miniobjects.
2385         (gst_mini_object_make_writable): Unref the arg if we copy, like
2386         gst_caps_make_writable.
2387
2388         * gst/gstmessage.c (_gst_message_initialize): No trace init.
2389
2390         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
2391         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
2392         Adapt for new pad API.
2393
2394         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
2395
2396         * gst/gstelement.h:
2397         * gst/gstelement.c (gst_element_iterate_src_pads) 
2398         (gst_element_iterate_sink_pads): New API functions.
2399         
2400         * gst/gstelement.c (iterator_fold_with_resync): New utility,
2401         should fold into gstiterator.c in some form.
2402         (gst_element_pads_activate): Simplified via use of fold and
2403         delegation of decisions to gstpad->activate.
2404
2405         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
2406         help in debugging.
2407
2408         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
2409         class once in init, like gstmessage. Didn't run into this issue
2410         but it seems correct. Don't initialize a trace, gstminiobject does
2411         that.
2412
2413         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
2414         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
2415         to the bus.
2416         (assert_live_count): New util function, uses alloc traces to check
2417         cleanup.
2418
2419         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
2420         To be modified when unlink drops the internal pad.
2421
2422 2005-06-27  Wim Taymans  <wim@fluendo.com>
2423
2424         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
2425         (gst_bin_change_state):
2426         Cleanup the get_state() function a little, make sure it
2427         iterates the same set of elements.
2428         Added stub iterate_state_order().
2429
2430 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
2431
2432         * docs/gst/gstreamer-docs.sgml:
2433         * docs/gst/gstreamer-sections.txt:
2434         * docs/gst/gstreamer.types:
2435         * docs/gst/tmpl/gstbasesink.sgml:
2436         * docs/gst/tmpl/gstbasesrc.sgml:
2437         * docs/gst/tmpl/gstbasetransform.sgml:
2438         * docs/gst/tmpl/gstelement.sgml:
2439         * docs/gst/tmpl/gstiterator.sgml:
2440         * gst/base/gstbasesrc.c:
2441         * gst/base/gstbasesrc.h:
2442         * gst/base/gstbasetransform.h:
2443         * gst/gstelement.c:
2444         * gst/gstiterator.h:
2445           adding basetransform and iterator docs
2446
2447 2005-06-27  Andy Wingo  <wingo@pobox.com>
2448
2449         * docs/design/part-activation.txt: Notes on how activation should
2450         work -- not quite implemented yet.
2451
2452 2005-06-25  Wim Taymans  <wim@fluendo.com>
2453
2454         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
2455         At least get the chain function correct, needs more
2456         fixing.
2457
2458 2005-06-25  Wim Taymans  <wim@fluendo.com>
2459
2460         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2461         (gst_basesink_handle_object), (gst_basesink_event),
2462         (gst_basesink_do_sync), (gst_basesink_handle_event),
2463         (gst_basesink_change_state):
2464         * gst/gsttask.h:
2465         Right, two problems here: ghostpads don't take locks and
2466         glib _rec_mutex_lock_full() with depth==0 still locks.
2467         Catch illegal locking and g_warn them.
2468
2469 2005-06-25  Wim Taymans  <wim@fluendo.com>
2470
2471         * check/states/sinks.c: (START_TEST), (gst_object_suite):
2472         Have to check for completion now...
2473
2474 2005-06-25  Wim Taymans  <wim@fluendo.com>
2475
2476         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2477         (gst_basesink_handle_object), (gst_basesink_event),
2478         (gst_basesink_do_sync), (gst_basesink_handle_event),
2479         (gst_basesink_change_state):
2480         * gst/gstpad.h:
2481         Unlock STREAM_LOCK whatever the recursion was.
2482
2483 2005-06-25  Wim Taymans  <wim@fluendo.com>
2484
2485         * gst/base/gstbasesink.c: (gst_basesink_set_property),
2486         (gst_basesink_preroll_queue_empty),
2487         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
2488         (gst_basesink_event), (gst_basesink_do_sync),
2489         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
2490         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
2491         (gst_basesink_change_state):
2492         Reworked the base sink, handle event and buffer serialisation
2493         correctly and removed possible deadlock.
2494         Handle EOS correctly.
2495
2496 2005-06-25  Wim Taymans  <wim@fluendo.com>
2497
2498         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
2499         (gst_pipeline_change_state):
2500         * tools/gst-launch.c: (check_intr), (event_loop), (main):
2501         Allow elements to post EOS in the state change function.
2502         Fix up -launch, make it exit the poll loop when the
2503         pipeline actually changed state.
2504         Fix up warning parsing in -launch.
2505
2506 2005-06-25  Wim Taymans  <wim@fluendo.com>
2507
2508         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
2509         (gst_tee_sink_activate):
2510         Core takes STREAM_LOCK for us now.
2511
2512 2005-06-25  Wim Taymans  <wim@fluendo.com>
2513
2514         * gst/gstelement.c: (gst_element_get_state_func),
2515         (gst_element_set_state):
2516         * gst/gstelement.h:
2517         * gst/gstmessage.c: (gst_message_parse_error),
2518         (gst_message_parse_warning):
2519         Keep track of current target state while performing a state
2520         change so that subclasses can do something interesting.
2521         Fix parsing of warning/error messages when GError is NULL.
2522
2523 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
2524
2525         * docs/gst/Makefile.am:
2526         * docs/gst/gstreamer-docs.sgml:
2527         * docs/gst/gstreamer-sections.txt:
2528         * docs/gst/gstreamer.types:
2529         * docs/gst/tmpl/gstbasesink.sgml:
2530         * docs/gst/tmpl/gstbasesrc.sgml:
2531         * docs/gst/tmpl/gstbin.sgml:
2532         * docs/gst/tmpl/gstcompat.sgml:
2533         * docs/gst/tmpl/gstfakesink.sgml:
2534         * docs/gst/tmpl/gstfakesrc.sgml:
2535         * docs/gst/tmpl/gstfilesink.sgml:
2536         * docs/gst/tmpl/gstfilesrc.sgml:
2537         * docs/gst/tmpl/gstindex.sgml:
2538         * docs/manual/appendix-quotes.xml:
2539         * gst/base/gstbasesrc.h:
2540         * gst/elements/gstfakesrc.h:
2541         * gst/gstmessage.h:
2542           start pulling in base classes and elements in our docs
2543
2544 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
2545
2546         * docs/gst/Makefile.am:
2547         * docs/libs/Makefile.am:
2548           fixed make distcheck with gtk-doc 1.3
2549
2550 2005-06-23  Wim Taymans  <wim@fluendo.com>
2551
2552         * gst/gstelement.c: (gst_element_get_state_func),
2553         (gst_element_set_state), (gst_element_change_state):
2554         When the state did not change, also report NO_PREROLL
2555         when it matters.
2556
2557 2005-06-23  Wim Taymans  <wim@fluendo.com>
2558
2559         * gst/gstpad.c: (gst_pad_event_default):
2560         * gst/gstqueue.c: (gst_queue_loop):
2561         No unsafe task pausing please.
2562
2563 2005-06-23  Wim Taymans  <wim@fluendo.com>
2564
2565         * gst/schedulers/threadscheduler.c:
2566         (gst_thread_scheduler_task_start),
2567         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
2568         Ref the task before pushing it on the threadpool. This
2569         makes sure that we have a ref when the threadfunction is
2570         actually called.
2571
2572 2005-06-23  Andy Wingo  <wingo@pobox.com>
2573
2574         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
2575         offset is greater than the file's size.
2576
2577         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
2578         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
2579         * gst/gstobject.c (gst_object_class_init): Make the class lock
2580         recursive. Wim won't let me drop deep_notify. Decodebin works
2581         again, whoopdy doo.
2582
2583         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
2584         internal pad, and hacks accordingly. Doesn't do it on the target
2585         pad because we change its caps. Probably catches all cases of
2586         interest tho.
2587         (gst_ghost_pad_set_property): Connect to notify::caps as
2588         appropritate.
2589
2590         * tests/network-clock.scm (plot-simulation): Pipe data to the
2591         elite python skript.
2592
2593         * tests/network-clock-utils.scm (define-parameter): New macro,
2594         defines a parameter that can be set via the command line.
2595         (set-parameter!, parse-parameter-arguments): Command line args
2596         parser.
2597
2598         * tests/plot-data: Simple matplotlib-based plotter, takes input on
2599         stdin.
2600
2601 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
2602
2603         * gst/elements/gsttypefindelement.c:
2604         (gst_type_find_element_handle_event):
2605           Don't restart typefinding on a discont.
2606         * gst/gstelement.c: (gst_element_set_state):
2607           Debug spelling fix.
2608         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
2609           Allow changing mode of an active pad.
2610           Debug output fixes.
2611         * gst/registries/gstlibxmlregistry.c: (load_feature):
2612           Don't cast a static pad template to a normal pad template.
2613
2614 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
2615
2616         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2617         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2618           remove gst_strtoll completely, since it didn't actually do
2619           anything more than what g_ascii_strtoull already does.
2620           check for range errors when deserializing
2621           do a cast for the unsigned cases; but further fixing needs
2622           a decision on what the interpretation of "(int)" and
2623           deserialization should be for values that fall outside the
2624           type's boundaries (ie, refuse, or interpret as casting)
2625
2626 2005-06-23  Wim Taymans  <wim@fluendo.com>
2627
2628         * check/Makefile.am:
2629         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
2630         * docs/design/part-live-source.txt:
2631         * docs/design/part-states.txt:
2632         * gst/base/gstbasesrc.c: (gst_basesrc_init),
2633         (gst_basesrc_set_live), (gst_basesrc_is_live),
2634         (gst_basesrc_get_range), (gst_basesrc_activate),
2635         (gst_basesrc_change_state):
2636         * gst/base/gstbasesrc.h:
2637         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2638         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
2639         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
2640         * gst/gstelement.c: (gst_element_get_state_func),
2641         (gst_element_set_state):
2642         * gst/gstelement.h:
2643         * gst/gsttypes.h:
2644         * tools/gst-launch.c: (event_loop), (main):
2645         Added support for live sources and other elements that
2646         cannot do preroll.
2647         Updated design docs, added live-source design doc.
2648         Implemented live source functionality in basesrc
2649         Fix error condition in _bin_get_state()
2650         Implement live source handling in -launch.
2651         Added check for live sources.
2652         Fixed case in GstBin where elements were changed state
2653         multiple times.
2654
2655
2656 2005-06-23  Andy Wingo  <wingo@pobox.com>
2657
2658         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
2659         borken refcounting.
2660
2661         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
2662         gst_caps_replace takes care of this for us.
2663
2664         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
2665         gst_pad_set_caps on the target, not just its setcaps() function.
2666
2667         * tests/network-clock.scm: 
2668         * tests/network-clock-utils.scm: A network clock simulator.
2669         Something of an algorithmic testbed before doing something in C.
2670
2671 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2672
2673         * check/Makefile.am:
2674         * check/gst/capslist.h:
2675           copy over from 0.8, and add two with bitmasks specified with
2676           (int) 0xFF...
2677         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2678           add test to parse everything from capslist.h
2679         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
2680         (main):
2681           add test for structure deserialization
2682         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2683           add tests for deserialization of strings to int types
2684         * gst/gststructure.c: (gst_structure_nth_field_name):
2685         * gst/gststructure.h:
2686           add a way to get the name of a field referenced by index
2687         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2688           instead of checking if the resulting long long lies between
2689           min and max, we check if the long long would fit into
2690           a number of bytes for the final type.
2691           This fixes cases where a string represents 2^32 - 1, which
2692           when cast to int would be the (valid) -1, but is bigger than
2693           G_MAXINT
2694
2695 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2696
2697         * gst/parse/grammar.y:
2698           add a log line for type deserialization
2699
2700 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2701
2702         * check/gst/gstvalue.c: (START_TEST):
2703         * gst/gstvalue.c: (gst_value_deserialize):
2704           return long long, not int, so gint64 deserialization actually
2705           works.  Is there any flag that makes the compiler check this ?
2706           Fixes #308559
2707
2708 2005-06-22  Wim Taymans  <wim@fluendo.com>
2709
2710         * gst/gstbuffer.h:
2711         Added convenience macros for setting buffers in GValue.
2712
2713 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2714
2715         * check/gst/.cvsignore:
2716         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2717           add a test deserializing int64, and comment part out because
2718           it fails, yay !
2719
2720 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2721
2722         * check/Makefile.am:
2723         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
2724         * testsuite/Makefile.am:
2725         * testsuite/caps/Makefile.am:
2726         * testsuite/caps/value_serialize.c:
2727         * testsuite/test_gst_init.c:
2728           move a value_serialize test over
2729
2730 2005-06-20  Wim Taymans  <wim@fluendo.com>
2731
2732         * gst/gstpad.c:
2733         Small doc updates.
2734         
2735         * gst/gstvalue.c: (gst_value_compare_buffer),
2736         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
2737         (gst_value_compare_flags), (gst_value_serialize_flags),
2738         (gst_value_deserialize_flags), (_gst_value_initialize):
2739         Fix serialisation of buffers, they are not boxed types anymore
2740
2741 2005-06-20  Wim Taymans  <wim@fluendo.com>
2742
2743         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2744         Testcase to show error in buffer-on-caps serialisation.
2745
2746 2005-06-20  Andy Wingo  <wingo@pobox.com>
2747
2748         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
2749         will be adding to later.
2750
2751         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
2752         if its socks fill with rocks.
2753         (gst_system_clock_obtain): Set the name on object construction.
2754         Avoid double-checked locking.
2755
2756 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
2757
2758         * gst/gsturi.c: (gst_element_make_from_uri):
2759           Fix potential endless loop.
2760
2761 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2762
2763         * check/Makefile.am:
2764           add gsttag
2765         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
2766         (main):
2767           move over from testsuite dir and clean up
2768         * configure.ac:
2769         * gst/gsttag.c:
2770         * testsuite/Makefile.am:
2771         * testsuite/tags/.cvsignore:
2772         * testsuite/tags/Makefile.am:
2773         * testsuite/tags/merge.c:
2774           remove testsuite/tags
2775
2776 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2777
2778         * docs/gst/gstreamer-sections.txt:
2779         * docs/gst/tmpl/gstenumtypes.sgml:
2780         * win32/gstenumtypes.c:
2781           clean up documentation build a little
2782
2783 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2784
2785         * check/gstcheck.h:
2786           add macros for checking refcounts on objects and caps
2787         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
2788           add some more unit tests
2789         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
2790         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
2791           fix leaked refcounts (I hope :)) so unittest works
2792         * gst/gstpad.h:
2793           whitespace removal
2794
2795 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2796
2797         * configure.ac: back to HEAD
2798
2799 === release 0.9.1 ===
2800
2801 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2802
2803         * NEWS:
2804         * RELEASE:
2805           updated
2806
2807 2005-06-17  Andy Wingo  <wingo@pobox.com>
2808
2809         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
2810         assert; it's always possible that the pad gets deactivated in
2811         between the checks in gstpad.c and the implementation. Rely on
2812         finish_preroll() to return a FLUSHING or similar instead of on the
2813         assert.
2814         
2815         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
2816         clock and post an EOS message if we come out of finish_preroll in
2817         the playing state.
2818
2819 2005-06-16  David Schleef  <ds@schleef.org>
2820
2821         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
2822         (gst_capsfilter_set_property): Allow NULL as possible value
2823         for filter_caps property, indicating GST_CAPS_ANY.
2824
2825 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2826
2827         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
2828           fix debug output
2829         * gst/schedulers/Makefile.am:
2830           use libgst prefix
2831         * gstreamer.spec.in:
2832           fix spec for it
2833
2834 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2835
2836         * gstreamer.spec.in:
2837           clean up
2838
2839 2005-06-08  Andy Wingo  <wingo@pobox.com>
2840
2841         * gst/gstutils.c: RPAD fixes all around.
2842         (gst_element_link_pads): Refcounting fixes.
2843
2844         * tools/gst-inspect.c:
2845         * tools/gst-xmlinspect.c:
2846         * parse/grammar.y:
2847         * gst/base/gsttypefindhelper.c:
2848         * gst/base/gstbasesink.c:
2849         * gst/gstqueue.c: RPAD fixes.
2850
2851         * gst/gstghostpad.h:
2852         * gst/gstghostpad.c: New ghost pad implementation as full proxy
2853         pads. The tricky thing is they provide both source and sink
2854         interfaces, since they proxy the internal pad for the external
2855         pad, and vice versa. Implement with lower-level ProxyPad objects,
2856         with the interior proxy pad as a child of the exterior ghost pad.
2857         Should write a doc on this.
2858         
2859         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
2860         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
2861         gst_object API.
2862         
2863         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
2864         pads are real pads. No ghost pads in this file. Not documenting
2865         the myriad s/RPAD/PAD/ and REALIZE fixes.
2866         (gst_pad_class_init): Add properties for "direction" and
2867         "template". Both are construct-only, so they can't change during
2868         the life of the pad. Fixes properly deriving from GstPad.
2869         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
2870         derived objects, just set properties when creating the objects via
2871         g_object_new.
2872         (gst_pad_get_parent): Implement as a function, return NULL if the
2873         parent is not an element.
2874         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
2875         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
2876         
2877         * gst/gstobject.c (gst_object_class_init): Make name a construct
2878         property. Don't set it in the object init.
2879
2880         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
2881         with UNKNOWN direction.
2882         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
2883         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
2884         (gst_element_remove_pad): Remove ghost-pad special cases.
2885         (gst_element_pads_activate): Remove rpad cruft.
2886
2887         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
2888         catch the pad's-parent-not-an-element case.
2889
2890         * gst/gst.h: Include gstghostpad.h.
2891
2892         * gst/gst.c (init_post): No more real, ghost pads.
2893
2894         * gst/Makefile.am: Add gstghostpad.[ch].
2895
2896         * check/Makefile.am:
2897         * check/gst/gstbin.c:
2898         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
2899         into a bin creates ghost pads, and that the refcounts are right.
2900         Partly moved from gstbin.c.
2901
2902 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2903
2904         * check/gst-libs/.cvsignore:
2905         * check/gst/.cvsignore:
2906         * check/pipelines/.cvsignore:
2907           ignore more
2908         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
2909         (START_TEST), (cleanup_suite), (main):
2910           add some tests related to cleanup after running pipelines
2911
2912 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2913
2914         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
2915           add a testsuite for GstBuffer
2916
2917 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2918
2919         * gst/gstminiobject.h:
2920           add defines for accessing the refcount
2921
2922 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
2923
2924         * Makefile.am: added support for html unit test coverage reports
2925
2926 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
2927
2928         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
2929           Free existing caps if the capsfilter changes. Add a FIXME about
2930           setting those caps on the pads.
2931
2932         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
2933           Before adding a ghost pad to a parent bin, check that there isn't
2934           already one for the element on the bin. Prevents infinite recursion
2935           when using decodebin in parse pipelines. Andy says he'll rewrite the
2936           way this works anyway, so ignore the hack.
2937
2938 2005-06-02  Andy Wingo  <wingo@pobox.com>
2939
2940         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
2941         file size, pass it on to the type find helper.
2942
2943         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
2944         segment_start and segment_end properly according to the seek
2945         method. Segment_end is still a bit flaky because offset can be
2946         negative for CUR and END cases, but it takes -1 as an "unset"
2947         value.
2948
2949 2005-06-02  Wim Taymans  <wim@fluendo.com>
2950
2951         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
2952         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
2953         (gst_basesink_activate):
2954         * gst/base/gstbasesink.h:
2955         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2956         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2957         (gst_pad_query), (gst_pad_start_task):
2958         * gst/gstpad.h:
2959         * gst/gstqueue.c: (gst_queue_bufferalloc),
2960         (gst_queue_handle_sink_event), (gst_queue_chain):
2961         Bufferalloc: return GstFlowReturn to more accuratly report
2962         why allocation failed.
2963
2964 2005-06-02  Wim Taymans  <wim@fluendo.com>
2965
2966         * gst/gstpipeline.c: (gst_pipeline_send_event):
2967         Take snapshot of state without blocking.
2968
2969 2005-06-02  Wim Taymans  <wim@fluendo.com>
2970
2971         * docs/design/part-TODO.txt:
2972         * docs/design/part-caps.txt:
2973         * docs/design/part-clocks.txt:
2974         * docs/design/part-negotiation.txt:
2975         * docs/design/part-preroll.txt:
2976         Small doc updates 
2977
2978 2005-05-30  Wim Taymans  <wim@fluendo.com>
2979
2980         * gst/elements/gstidentity.c: (gst_identity_event),
2981         (gst_identity_transform), (gst_identity_get_property):
2982         Protect last_message property as it is accessed from
2983         multiple threads.
2984
2985 2005-05-30  Wim Taymans  <wim@fluendo.com>
2986
2987         * gst/gstelement.c: (gst_element_init),
2988         (gst_element_pads_activate), (gst_element_change_state):
2989         Slicker pad activation code.
2990
2991 2005-05-30  Wim Taymans  <wim@fluendo.com>
2992
2993         * gst/Makefile.am:
2994         * gst/gstelement.h:
2995         * gst/gstelementfactory.h:
2996         * gst/gsttypes.h:
2997         Move elementfactory methods to separate .h file.
2998
2999 2005-05-30  Wim Taymans  <wim@fluendo.com>
3000
3001         * docs/design/part-overview.txt:
3002         * gst/gstsystemclock.h:
3003         Small typo fixes, doc updates.
3004
3005 2005-05-30  Wim Taymans  <wim@fluendo.com>
3006
3007         * gst/gst.c: (gst_init_get_popt_table), (init_post),
3008         (init_popt_callback):
3009         Remove cpu-opt flag.
3010
3011 2005-05-30  Wim Taymans  <wim@fluendo.com>
3012
3013         * gst/gstbuffer.c: (gst_subbuffer_finalize),
3014         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
3015         * gst/gstbuffer.h:
3016         Avoid typechecking in places where not needed.
3017         Added accessor for malloc_data.
3018
3019 2005-05-30  Wim Taymans  <wim@fluendo.com>
3020
3021         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
3022         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
3023         (gst_pad_configure_sink), (gst_pad_configure_src),
3024         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
3025         (gst_pad_start_task):
3026         Propagate errors from _set_caps() in configure_src/sink
3027         functions instead of returning TRUE.
3028         FLUSH events can travel up and downstream
3029
3030
3031 2005-05-30  Wim Taymans  <wim@fluendo.com>
3032
3033         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
3034         (gst_basesink_activate):
3035         Handle EOS in preroll.
3036
3037 2005-05-30  Wim Taymans  <wim@fluendo.com>
3038
3039         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
3040         (gst_queue_loop), (gst_queue_handle_src_event):
3041         Remove old pieces of code
3042         Flushing the queue in an upstream event is a very bad idea.
3043
3044 2005-05-26  Andy Wingo  <wingo@pobox.com>
3045
3046         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
3047         gst_value_set_mini_object so as to add a ref on the object (which
3048         will be removed when the value is unset).
3049
3050         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
3051         arg type in ::handoff.
3052
3053         * gst/gstelement.c (gst_element_change_state): Also deactivate
3054         pads in READY->NULL, just in case the element didn't make it to
3055         PAUSED. Wingo tested, Wim approved.
3056
3057 2005-05-26  Wim Taymans  <wim@fluendo.com>
3058
3059         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3060         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
3061         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
3062         A flushing pad cannot be used to alloc_buffer from.
3063
3064 2005-05-26  Wim Taymans  <wim@fluendo.com>
3065
3066         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
3067         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
3068         (gst_bus_source_dispatch), (gst_bus_source_finalize),
3069         (gst_bus_create_watch), (gst_bus_add_watch_full):
3070         * gst/gstbus.h:
3071         Implement a real GSource and use g_main_context_wakeup() to
3072         signal new messages instead of the socketpair.
3073
3074 2005-05-25  Wim Taymans  <wim@fluendo.com>
3075
3076         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
3077         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
3078         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3079         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
3080         (gst_pad_send_event), (gst_pad_start_task):
3081         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
3082         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
3083         (gst_queue_sink_activate), (gst_queue_src_activate),
3084         (gst_queue_change_state):
3085         * gst/gstqueue.h:
3086         Fix state changes for non sinks. We now change sinks, then elements
3087         with unconnected srcpads, then the rest.
3088         More efficient queue unlocking in flush and state changes.
3089         Set the pad activate mode even if it does not have an activate
3090         function.
3091
3092 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3093
3094         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
3095           Don't go in pull mode for non-seekable sources.
3096         * gst/elements/gsttypefindelement.h:
3097         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3098         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
3099         (free_entry), (stop_typefinding),
3100         (gst_type_find_element_handle_event), (find_peek),
3101         (gst_type_find_element_chain), (do_pull_typefind),
3102         (gst_type_find_element_change_state):
3103           Allow typefinding (w/o seeking) in push-mode, simplified version
3104           of what was in 0.8.
3105         * gst/gstutils.c: (gst_buffer_join):
3106         * gst/gstutils.h:
3107           gst_buffer_join() from 0.8.
3108
3109 2005-05-25  Wim Taymans  <wim@fluendo.com>
3110
3111         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3112         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
3113         (gst_pad_send_event), (gst_pad_start_task):
3114         Disable attempt at mode switching until it is figured out.
3115
3116 2005-05-25  Wim Taymans  <wim@fluendo.com>
3117
3118         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
3119         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
3120         (gst_basesink_finish_preroll), (gst_basesink_chain),
3121         (gst_basesink_loop), (gst_basesink_activate),
3122         (gst_basesink_change_state):
3123         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
3124         (gst_basesrc_get_range), (gst_basesrc_loop),
3125         (gst_basesrc_activate):
3126         * gst/elements/gsttee.c: (gst_tee_sink_activate):
3127         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
3128         (gst_real_pad_init), (gst_real_pad_set_property),
3129         (gst_real_pad_get_property), (gst_pad_set_active),
3130         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
3131         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
3132         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
3133         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
3134         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3135         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
3136         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
3137         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
3138         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
3139         (gst_pad_stop_task):
3140         * gst/gstpad.h:
3141         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
3142         (gst_queue_loop), (gst_queue_src_activate):
3143         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
3144         (gst_task_get_state):
3145         * gst/gsttask.h:
3146         * gst/schedulers/threadscheduler.c:
3147         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
3148         Implement gst_pad_pause/start/stop_task(), take STREAM lock
3149         in task function.
3150         Remove ACTIVE pad flag, use FLUSHING everywhere
3151         Added _pad_chain(), _pad_get_range() to call chain/getrange 
3152         functions.
3153         Add locks around IS_FLUSHING when reading.
3154         Take STREAM lock in chain(), get_range() functions so plugins
3155         don't need to take it anymore.
3156         
3157
3158
3159 2005-05-25  Wim Taymans  <wim@fluendo.com>
3160
3161         * tools/gst-launch.c: (event_loop):
3162         Unref message after using its contents instead of
3163         before.
3164
3165 2005-05-24  Wim Taymans  <wim@fluendo.com>
3166
3167         * docs/design/draft-ghostpads.txt:
3168         * docs/design/draft-push-pull.txt:
3169         * docs/design/draft-query.txt:
3170         * docs/design/part-overview.txt:
3171         Docs updates, added general overview doc.
3172
3173 2005-05-21  David Schleef  <ds@schleef.org>
3174
3175         * docs/gst/tmpl/old/GstBin.sgml:
3176         * docs/gst/tmpl/old/GstBuffer.sgml:
3177         * docs/gst/tmpl/old/GstCaps.sgml:
3178         * docs/gst/tmpl/old/GstClock.sgml:
3179         * docs/gst/tmpl/old/GstCompat.sgml:
3180         * docs/gst/tmpl/old/GstData.sgml:
3181         * docs/gst/tmpl/old/GstElement.sgml:
3182         * docs/gst/tmpl/old/GstEvent.sgml:
3183         * docs/gst/tmpl/old/GstIndex.sgml:
3184         * docs/gst/tmpl/old/GstStructure.sgml:
3185         * docs/gst/tmpl/old/GstTag.sgml:
3186         * docs/gst/tmpl/old/cothreads.sgml:
3187         * docs/gst/tmpl/old/cothreads_compat.sgml:
3188         * docs/gst/tmpl/old/gettext.sgml:
3189         * docs/gst/tmpl/old/gobject2gtk.sgml:
3190         * docs/gst/tmpl/old/grammar.tab.sgml:
3191         * docs/gst/tmpl/old/gst-i18n-app.sgml:
3192         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
3193         * docs/gst/tmpl/old/gst_private.sgml:
3194         * docs/gst/tmpl/old/gstaggregator.sgml:
3195         * docs/gst/tmpl/old/gstarch.sgml:
3196         * docs/gst/tmpl/old/gstatomic_impl.sgml:
3197         * docs/gst/tmpl/old/gstbufferstore.sgml:
3198         * docs/gst/tmpl/old/gstdata_private.sgml:
3199         * docs/gst/tmpl/old/gstdisksink.sgml:
3200         * docs/gst/tmpl/old/gstdisksrc.sgml:
3201         * docs/gst/tmpl/old/gstelementfactory.sgml:
3202         * docs/gst/tmpl/old/gstextratypes.sgml:
3203         * docs/gst/tmpl/old/gstfakesink.sgml:
3204         * docs/gst/tmpl/old/gstfakesrc.sgml:
3205         * docs/gst/tmpl/old/gstfdsink.sgml:
3206         * docs/gst/tmpl/old/gstfdsrc.sgml:
3207         * docs/gst/tmpl/old/gstfilesink.sgml:
3208         * docs/gst/tmpl/old/gstfilesrc.sgml:
3209         * docs/gst/tmpl/old/gsthttpsrc.sgml:
3210         * docs/gst/tmpl/old/gstidentity.sgml:
3211         * docs/gst/tmpl/old/gstindexfactory.sgml:
3212         * docs/gst/tmpl/old/gstmarshal.sgml:
3213         * docs/gst/tmpl/old/gstmd5sink.sgml:
3214         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
3215         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
3216         * docs/gst/tmpl/old/gstpadtemplate.sgml:
3217         * docs/gst/tmpl/old/gstpipefilter.sgml:
3218         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
3219         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
3220         * docs/gst/tmpl/old/gstshaper.sgml:
3221         * docs/gst/tmpl/old/gstspider.sgml:
3222         * docs/gst/tmpl/old/gstspideridentity.sgml:
3223         * docs/gst/tmpl/old/gststatistics.sgml:
3224         * docs/gst/tmpl/old/gsttee.sgml:
3225         * docs/gst/tmpl/old/gsttimecache.sgml:
3226         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
3227         * docs/gst/tmpl/old/gstxmlregistry.sgml:
3228         * docs/gst/tmpl/old/gthread-cothreads.sgml:
3229         * docs/gst/tmpl/old/types.sgml:
3230           I didn't intend to add these or check them in.
3231
3232 2005-05-19  David Schleef  <ds@schleef.org>
3233
3234         * configure.ac: Use -no-common everywhere.  In a sane world, it
3235           would be the default in libtool, because without it, you can't
3236           build DLLs on Windows.
3237         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
3238         * docs/gst/gstreamer-sections.txt:
3239         * docs/gst/tmpl/gstcpu.sgml:
3240         * docs/gst/tmpl/gstdata.sgml:
3241         * docs/gst/tmpl/gstthread.sgml:
3242
3243 2005-05-19  David Schleef  <ds@schleef.org>
3244
3245         * gst/gstminiobject.c: (gst_value_set_mini_object),
3246         (gst_value_take_mini_object), (gst_value_get_mini_object):
3247         * gst/gstminiobject.h: Add GValue set/get functions.
3248
3249 2005-05-19  Wim Taymans  <wim@fluendo.com>
3250
3251         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
3252         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
3253         (gst_subbuffer_init), (gst_buffer_is_span_fast):
3254         * gst/gstbuffer.h:
3255         * gst/gstbus.c: (gst_bus_post):
3256         * gst/gstelement.c: (gst_element_get_random_pad):
3257         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
3258         Make subbufer unref the parent in finalize.
3259         some more debugging info.
3260
3261
3262 2005-05-19  Wim Taymans  <wim@fluendo.com>
3263
3264         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3265         (gst_basesink_init), (gst_basesink_finalize),
3266         (gst_basesink_activate), (gst_basesink_change_state):
3267         Don't free preroll queue too early.
3268
3269 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3270
3271         * gst/Makefile.am:
3272         * gst/ROADMAP:
3273           Hi, I'm outdated. Please shoot me.
3274
3275 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3276
3277         * gst/gstpipeline.c: (gst_pipeline_send_event):
3278           Do not access variables after they have been deleted.
3279
3280 2005-05-19  Wim Taymans  <wim@fluendo.com>
3281
3282         * tools/gst-inspect.c: (print_plugin_features):
3283         A plugin feature does unfortunatly not use the
3284         object name yet...
3285
3286 2005-05-18  Wim Taymans  <wim@fluendo.com>
3287
3288         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
3289         Port _span() functions to new subbuffers.
3290
3291 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3292
3293         * gst/gstbin.c: (gst_bin_add_func):
3294           Fix clock settery in bins when adding kids after the clock has
3295           been selected.
3296
3297 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3298
3299         * gst/elements/gstidentity.c: (gst_identity_class_init):
3300           Workaround until signals support GstMiniObject.
3301
3302 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
3303
3304         * gst/gstbuffer.c:
3305         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
3306
3307 2005-05-18  Wim Taymans  <wim@fluendo.com>
3308
3309         * gst/base/Makefile.am:
3310         * gst/base/gstadapter.c: (gst_adapter_base_init),
3311         (gst_adapter_class_init), (gst_adapter_init),
3312         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
3313         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
3314         (gst_adapter_flush), (gst_adapter_available),
3315         (gst_adapter_available_fast):
3316         * gst/base/gstadapter.h:
3317         Ported and added adapter to the base classes.
3318
3319 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3320
3321         * gst/gst.c:
3322         * gst/gstmessage.c:
3323           Make sure the class is reffed/unreffed once before threads can be
3324           used.  Fixes #304551.
3325
3326 2005-05-17  Wim Taymans  <wim@fluendo.com>
3327
3328         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
3329         (gst_basesink_chain_unlocked), (gst_basesink_activate):
3330         * gst/gstminiobject.c: (gst_mini_object_get_type),
3331         (gst_mini_object_free):
3332         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
3333         (gst_pad_push), (gst_pad_push_event):
3334         * gst/gstqueue.c: (gst_queue_change_state):
3335         Don't queue buffers in basesink when we are flushing.
3336         Unref buffer when flushing in basesink.
3337         Flush queue when going to READY
3338         Unref buffer when _push() returns an error.
3339         Don't free MiniObject instance when refcount is incremented
3340         in _finalize() so that we can recover objects.
3341
3342 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
3343
3344         * docs/manual/advanced-schedulers.xml:
3345         * docs/manual/appendix-checklist.xml:
3346         * docs/pwg/advanced-clock.xml:
3347         * docs/pwg/advanced-interfaces.xml:
3348         * docs/pwg/advanced-request.xml:
3349         * docs/pwg/advanced-types.xml:
3350         * docs/pwg/intro-preface.xml:
3351         * examples/plugins/example.c: (gst_example_get_type),
3352         (gst_example_class_init), (gst_example_chain),
3353         (gst_example_set_property), (gst_example_get_property),
3354         (gst_example_change_state), (plugin_init):
3355         * examples/plugins/example.h:
3356           small doc fixes
3357
3358 2005-05-17  Wim Taymans  <wim@fluendo.com>
3359
3360         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
3361         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
3362         * gst/gstqueue.c: (gst_queue_change_state):
3363         Clear queue when going to READY.
3364         Remove IN_SETCAPS flag too.
3365
3366 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
3367
3368         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
3369           Remove implicit cast from gboolean to GstElementStateReturn;
3370           make sure we still return failure in paused => ready case if
3371           the parent class fails to change state and our own stop 
3372           vfunc succeeds.
3373
3374 2005-05-17  Wim Taymans  <wim@fluendo.com>
3375
3376         * tools/gst-launch.c: (event_loop):
3377         Message was unreffed too soon.
3378
3379 2005-05-16  Andy Wingo  <wingo@pobox.com>
3380
3381         * gst/gstbin.c (sink_iterator_filter): Err... um...
3382
3383         * check/gst/gstbin.c (test_ghost_pads): New test for the
3384         ghosting-if-elements-not-in-same-bin behavior.
3385
3386 2005-05-16  David Schleef  <ds@schleef.org>
3387
3388         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
3389         accessing refcount directly.
3390
3391 2005-05-15  David Schleef  <ds@schleef.org>
3392
3393         * check/Makefile.am: remove GstData checks
3394         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
3395         * gst/Makefile.am: add miniobject, remove data
3396         * gst/gst.h: add miniobject, remove data
3397         * gst/gstdata.c: remove
3398         * gst/gstdata.h: remove
3399         * gst/gstdata_private.h: remove
3400         * gst/gsttypes.h: remove GstEvent and GstMessage
3401         * gst/gstelement.c: (gst_element_post_message): fix for API changes
3402         * gst/gstmarshal.list: change BOXED -> OBJECT
3403
3404         Implement GstMiniObject.
3405         * gst/gstminiobject.c:
3406         * gst/gstminiobject.h:
3407
3408         Modify to be subclasses of GstMiniObject.
3409         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
3410         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
3411         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
3412         (gst_subbuffer_get_type), (gst_subbuffer_init),
3413         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
3414         (gst_buffer_span):
3415         * gst/gstbuffer.h:
3416         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
3417         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
3418         (_gst_event_copy), (gst_event_new):
3419         * gst/gstevent.h:
3420         * gst/gstmessage.c: (_gst_message_initialize),
3421         (gst_message_get_type), (gst_message_class_init),
3422         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
3423         (gst_message_new), (gst_message_new_error),
3424         (gst_message_new_warning), (gst_message_new_tag),
3425         (gst_message_new_state_changed), (gst_message_new_application):
3426         * gst/gstmessage.h:
3427         * gst/gstprobe.c: (gst_probe_perform),
3428         (gst_probe_dispatcher_dispatch):
3429         * gst/gstprobe.h:
3430         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
3431         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
3432         (_gst_query_copy), (gst_query_new):
3433
3434         Update elements for GstData -> GstMiniObject changes
3435         * gst/gstquery.h:
3436         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
3437         (gst_queue_chain), (gst_queue_loop):
3438         * gst/elements/gstbufferstore.c:
3439         (gst_buffer_store_add_buffer_func),
3440         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
3441         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3442         (gst_fakesink_render):
3443         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
3444         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
3445         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
3446         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
3447         (gst_filesrc_create_read):
3448         * gst/elements/gstidentity.c: (gst_identity_class_init):
3449         * gst/elements/gsttypefindelement.c:
3450         (gst_type_find_element_src_event), (free_entry_buffers),
3451         (gst_type_find_element_handle_event):
3452         * libs/gst/dataprotocol/dataprotocol.c:
3453         (gst_dp_header_from_buffer):
3454         * libs/gst/dataprotocol/dataprotocol.h:
3455         * libs/gst/dataprotocol/dp-private.h:
3456
3457 2005-05-15  David Schleef  <ds@schleef.org>
3458
3459         * gst/elements/gstelements.c: Don't include headers that were
3460         just removed.
3461
3462 2005-05-15  David Schleef  <ds@schleef.org>
3463
3464         * gst/elements/Makefile.am: Remove some elements that don't
3465         need to be in the core (or even exist at all).
3466         * gst/elements/gstaggregator.c:
3467         * gst/elements/gstaggregator.h:
3468         * gst/elements/gstmd5sink.c:
3469         * gst/elements/gstmd5sink.h:
3470         * gst/elements/gstmultifilesrc.c:
3471         * gst/elements/gstmultifilesrc.h:
3472         * gst/elements/gstpipefilter.c:
3473         * gst/elements/gstpipefilter.h:
3474         * gst/elements/gstshaper.c:
3475         * gst/elements/gstshaper.h:
3476         * gst/elements/gststatistics.c:
3477         * gst/elements/gststatistics.h:
3478         * po/POTFILES.in: Remove above files.
3479
3480 2005-05-14  Andy Wingo  <wingo@pobox.com>
3481
3482         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
3483         so as to get the refs right.
3484         (sink_iterator_filter): New function, wraps bin_element_is_sink,
3485         unreffing objects that don't pass the filter.
3486
3487         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
3488         gst_element_set_bus.
3489         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
3490         normal cases, this will destroy the bus.
3491
3492         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
3493         object.
3494
3495         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
3496         has no sinks.
3497
3498 2005-05-13  Andy Wingo  <wingo@pobox.com>
3499
3500         * gst/gstutils.c (gst_element_link_pads): Instead of calling
3501         gst_pad_link, call pad_link_maybe_ghosting,
3502         (pad_link_maybe_ghosting): Links pads, making sure that the
3503         elements being linked are in the same bin.
3504         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
3505         Helpers for pad_link_maybe_ghosting.
3506
3507 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3508
3509         * configure.ac:
3510           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
3511
3512 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3513
3514         * docs/design/part-element-source.txt:
3515           Mention GstPushSrc
3516
3517 2005-05-12  Wim Taymans  <wim@fluendo.com>
3518
3519         * gst/base/gstbasesink.c: (gst_basesink_init),
3520         (gst_basesink_activate):
3521         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
3522         (gst_basesrc_is_seekable):
3523         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
3524         (bin_element_is_sink), (gst_bin_change_state):
3525         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3526         * gst/gstelement.h:
3527         Identify sinks by their flag to avoid overly complicated
3528         checks (fow now).
3529         Do state changes even for elements not reachable from the
3530         sinks.
3531         BaseSink is a sink now :)
3532         Some more debugging info in the basesrc.
3533
3534
3535 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3536
3537         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
3538           Implement _query on a bin, similar to _send_event.
3539
3540 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
3541
3542         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
3543           Discont event offset format should be GST_FORMAT_BYTES,
3544           not GST_FORMAT_TIME.
3545
3546 2005-05-12  Wim Taymans  <wim@fluendo.com>
3547
3548         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
3549         Same fix as Ronald's but without the signal. 
3550
3551 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3552
3553         * gst/gstutils.c: (gst_element_query_position):
3554           No, an element is not a pad.
3555
3556 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3557
3558         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
3559         (gst_bin_get_state):
3560           If a child is removed from a bin while we remove the child from
3561           the bin and while we're retrieving its state, signal this to the
3562           get_state function so we abort the wait (instead of waiting for
3563           a timeout) and can immediately re-iterate over all other elements.
3564
3565 2005-05-12  Wim Taymans  <wim@fluendo.com>
3566
3567         * gst/base/Makefile.am:
3568         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
3569         (gst_basesrc_start):
3570         * gst/base/gstbasesrc.h:
3571         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
3572         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
3573         (gst_pushsrc_init), (gst_pushsrc_create):
3574         * gst/base/gstpushsrc.h:
3575         Added is_seekable to BaseSrc
3576         Added simple PushSrc.
3577
3578 2005-05-11  Wim Taymans  <wim@fluendo.com>
3579
3580         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3581         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3582         (gst_element_link_pads), (gst_element_query_position),
3583         (gst_element_query_convert), (intersect_caps_func),
3584         (gst_pad_query_position), (gst_pad_query_convert):
3585         Fix refcounting in utils function.
3586         No point in trying to activate a pad when it's added, it could
3587         be added from the state change function and then we deadlock, the
3588         element has to decide what to do.
3589
3590 2005-05-10  Andy Wingo  <wingo@pobox.com>
3591
3592         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
3593         *all* the arguments.
3594
3595         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
3596         stream lock if it's a FLUSH_DONE; normal flushes don't get the
3597         lock (according to the docs -- if this is wrong change the docs).
3598
3599         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
3600         flush messages in the NULL state.
3601
3602         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
3603         message immediately and return.
3604         (gst_bus_set_flushing): New function. If a bus is flushing, it
3605         flushes out any queued messages and immediately unrefs new
3606         messages. This is so when an element goes to NULL, all of the
3607         unhandled messages coming from it can be freed, and their
3608         references to the element dropped. In other words: message source
3609         ref considered harmful :P
3610
3611         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
3612         we're finished with it.
3613
3614         * gst/gstmessage.c (gst_message_new_state_changed): 
3615
3616 2005-05-10  Wim Taymans  <wim@fluendo.com>
3617
3618         * gst/gstvalue.c: (gst_value_compare_flags),
3619         (gst_value_serialize_flags), (gst_value_deserialize_flags),
3620         (_gst_value_initialize):
3621         Added flags serialize/deserialize/compare code.
3622
3623 2005-05-09  Andy Wingo  <wingo@pobox.com>
3624
3625         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
3626         Intersect the peer's caps with our caps.
3627
3628 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3629
3630         * gst/base/gsttypefindhelper.c: (helper_find_peek):
3631         * gst/elements/gsttypefindelement.c: (find_peek):
3632           Handle negative offsets better. Fixes decodebin.
3633
3634 2005-05-09  Wim Taymans  <wim@fluendo.com>
3635
3636         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
3637         (gst_base_transform_event):
3638         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
3639         Implement accept_caps.
3640         Fix silly lock/unlock mismatch in base class.
3641
3642 2005-05-09  Wim Taymans  <wim@fluendo.com>
3643
3644         * docs/design/draft-push-pull.txt:
3645         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
3646         * gst/elements/gstfilesink.c: (gst_filesink_init),
3647         (gst_filesink_query):
3648         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3649         (gst_type_find_handle_src_query), (find_element_get_length):
3650         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
3651         * gst/gstelement.h:
3652         * gst/gstmessage.c:
3653         * gst/gstmessage.h:
3654         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
3655         (gst_real_pad_get_caps_unlocked),
3656         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
3657         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3658         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
3659         (gst_real_pad_dispose), (gst_real_pad_finalize),
3660         (gst_pad_load_and_link), (gst_pad_save_thyself),
3661         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
3662         (gst_pad_check_pull_range), (gst_pad_pull_range),
3663         (gst_pad_template_get_type), (gst_pad_template_class_init),
3664         (gst_pad_template_init), (gst_pad_template_dispose),
3665         (name_is_valid), (gst_static_pad_template_get),
3666         (gst_pad_template_new), (gst_static_pad_template_get_caps),
3667         (gst_pad_template_get_caps), (gst_pad_set_element_private),
3668         (gst_pad_get_element_private), (gst_pad_start_task),
3669         (gst_pad_pause_task), (gst_pad_stop_task),
3670         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
3671         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
3672         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
3673         (gst_ghost_pad_new):
3674         * gst/gstpad.h:
3675         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
3676         (gst_query_new_position), (gst_query_set_position),
3677         (gst_query_parse_position), (gst_query_new_convert),
3678         (gst_query_set_convert), (gst_query_parse_convert):
3679         * gst/gstquery.h:
3680         * gst/gstqueryutils.c:
3681         * gst/gstqueryutils.h:
3682         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3683         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3684         (gst_queue_handle_src_query):
3685         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3686         (gst_element_query_position), (gst_element_query_convert),
3687         (intersect_caps_func), (gst_pad_query_position),
3688         (gst_pad_query_convert):
3689         * gst/gstutils.h:
3690         * tools/gst-inspect.c: (print_pad_info):
3691         * tools/gst-xmlinspect.c: (print_element_info):
3692         Remove old query functions. Ported old code.
3693         Added position/convert helper functions to gstutils.
3694         Reordered gstpad.c code, grouping relevant things.
3695         Remove gst_message_new(), always need to speficy a specific
3696         message.
3697
3698
3699 2005-05-09  Andy Wingo  <wingo@pobox.com>
3700
3701         * gst/gstiterator.h: Add some includes.
3702
3703         * gst/gstqueryutils.h: Include more headers.
3704
3705         * gst/gstpad.h:
3706         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
3707         some uses of gst_pad_query.
3708
3709         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
3710         NULL out parameters.
3711         (gst_query_new_position): New proc, allocates a new position
3712         query.
3713
3714         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
3715         gstqueryutils.c to the build.
3716
3717         * gst/gststructure.c (gst_structure_set_valist): Implement with
3718         the generic G_VALUE_COLLECT.
3719         
3720 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
3721
3722         * gst/Makefile.am: (gst_headers):
3723         Added gstqueryutils.h to the list of headers to install, that was
3724         a 'nachty' move wingo :)
3725
3726 2005-05-06  Andy Wingo  <wingo@pobox.com>
3727
3728         * gst/gstquery.h
3729         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
3730         GstData, init a memchunk.
3731         (standard_definitions): Add a few query types, deprecate a few.
3732         (gst_query_get_type): New proc.
3733         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
3734         implementation.
3735         (gst_query_new_application, gst_query_get_structure): New public
3736         procs.
3737
3738         * docs/design/draft-query.txt: Removed LINKS from the query types,
3739         because all the rest can be dispatched to other pads -- seemed
3740         ugly to have a query that couldn't be dispatched. internal_links
3741         is fine as a pad method.
3742
3743         * gst/gstpad.h: Add query2 as a pad method, add the new functions
3744         in gstpad.c, but maintain binary compatibility for the moment.
3745         Will fix before 0.9 is out.
3746
3747         * gst/gstqueryutils.c: 
3748         * gst/gstqueryutils.h: New files, implement 3 methods for each
3749         query type: parse_query, parse_response, and set. Probably need an
3750         allocator as well.
3751
3752         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
3753
3754         * gst/elements/gstfilesink.c (gst_filesink_query2):
3755         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
3756         query_types, and formats methods.
3757
3758         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
3759         (gst_pad_set_query2_function): New functions.
3760         (gst_real_pad_init): Set query2_default as the default query2
3761         function. Basically just dispatches to internally linked pads.
3762
3763         Needs review!
3764         
3765         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
3766         without using the atomic operations. Only one thread can possibly
3767         be accessing the data at this point. Changed so as to avoid
3768         gst_atomic operations.
3769
3770 2005-05-06  Wim Taymans  <wim@fluendo.com>
3771
3772         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
3773         Also set caps if we use the fallback buffer alloc.
3774
3775 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
3776
3777         * docs/gst/Makefile.am:
3778         * docs/gst/gstreamer-docs.sgml:
3779         * docs/gst/gstreamer-sections.txt:
3780         * docs/gst/tmpl/gstatomic.sgml:
3781         * docs/gst/tmpl/gstmemchunk.sgml:
3782         * testsuite/elements/struct_i386.h:
3783         * win32/GStreamer.vcproj:
3784         * win32/Makefile:
3785           Purge GstAtomic stuff from docs and win32 makefiles as well
3786
3787 2005-05-06  Wim Taymans  <wim@fluendo.com>
3788
3789         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
3790         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
3791         * gst/gstpad.c: (gst_pad_peer_get_caps):
3792         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3793         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3794         (gst_queue_src_activate), (gst_queue_change_state):
3795         * gst/gstqueue.h:
3796         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3797         (intersect_caps_func):
3798         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
3799         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
3800         Some fixes for the peer_get_caps() change.
3801
3802 2005-05-06  Wim Taymans  <wim@fluendo.com>
3803
3804         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
3805         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
3806         (gst_basesink_activate):
3807         Actually do something with error codes returned from the push
3808         functions.
3809
3810 2005-05-06  Wim Taymans  <wim@fluendo.com>
3811
3812         * docs/design/part-element-sink.txt:
3813         * docs/design/part-element-source.txt:
3814         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3815         (gst_basesink_event), (gst_basesink_activate):
3816         * gst/base/gstbasesink.h:
3817         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
3818         (gst_basesrc_activate):
3819         * gst/base/gstbasesrc.h:
3820         * gst/gstelement.c: (gst_element_pads_activate):
3821         Some more documentation.
3822         Fixed scheduling decision in _pads_activate().
3823
3824 2005-05-05  Andy Wingo  <wingo@pobox.com>
3825
3826         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
3827         the test suite.
3828
3829 2005-05-05  Wim Taymans  <wim@fluendo.com>
3830
3831         * gst/base/Makefile.am:
3832         * gst/base/gstbasesink.h:
3833         * gst/base/gstbasesrc.c: (gst_basesrc_init),
3834         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
3835         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
3836         (gst_collectpads_class_init), (gst_collectpads_init),
3837         (gst_collectpads_finalize), (gst_collectpads_new),
3838         (gst_collectpads_set_function), (gst_collectpads_add_pad),
3839         (find_pad), (gst_collectpads_remove_pad),
3840         (gst_collectpads_is_active), (gst_collectpads_collect),
3841         (gst_collectpads_collect_range), (gst_collectpads_start),
3842         (gst_collectpads_stop), (gst_collectpads_peek),
3843         (gst_collectpads_pop), (gst_collectpads_available),
3844         (gst_collectpads_read), (gst_collectpads_flush),
3845         (gst_collectpads_chain):
3846         * gst/base/gstcollectpads.h:
3847         * gst/elements/Makefile.am:
3848         * gst/elements/gstelements.c:
3849         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3850         (gst_fakesink_get_times), (gst_fakesink_event),
3851         (gst_fakesink_preroll), (gst_fakesink_render):
3852         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
3853         (gst_filesink_init), (gst_filesink_set_location),
3854         (gst_filesink_open_file), (gst_filesink_close_file),
3855         (gst_filesink_pad_query), (gst_filesink_event),
3856         (gst_filesink_render), (gst_filesink_change_state):
3857         * gst/elements/gstfilesink.h:
3858         Added object to help in making collect pad based elements.
3859         Ported filesink.
3860         Make event function in sink baseclass return gboolean.
3861
3862 2005-05-05  Wim Taymans  <wim@fluendo.com>
3863
3864         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
3865         (gst_bin_get_by_name):
3866         * gst/gstbuffer.h:
3867         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
3868         (gst_clock_finalize):
3869         * gst/gstdata.c: (gst_data_replace):
3870         * gst/gstdata.h:
3871         * gst/gstelement.c: (gst_element_request_pad),
3872         (gst_element_pads_activate):
3873         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
3874         (gst_object_unref):
3875         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3876         (gst_pad_set_checkgetrange_function),
3877         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
3878         (gst_pad_check_pull_range), (gst_pad_pull_range),
3879         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3880         (gst_pad_pause_task), (gst_pad_stop_task):
3881         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3882         (gst_element_request_pad), (gst_pad_proxy_getcaps):
3883         Fix name lookup in GstBin.
3884         Added _data_replace() function and _buffer_replace()
3885         Use finalize method to clean up clock.
3886         Fix refcounting on request pads.
3887         Fix pad schedule mode error.
3888         Some more object refcounting debug info,
3889
3890
3891 2005-05-04  Andy Wingo <wingo@pobox.com>
3892
3893         * check/Makefile.am:
3894         * docs/gst/tmpl/gstatomic.sgml:
3895         * docs/gst/tmpl/gstplugin.sgml:
3896         * gst/base/gstbasesink.c: (gst_basesink_activate):
3897         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
3898         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
3899         (gst_basesrc_query), (gst_basesrc_set_property),
3900         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
3901         (gst_basesrc_activate):
3902         * gst/base/gstbasesrc.h:
3903         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
3904         (gst_base_transform_src_activate):
3905         * gst/elements/gstelements.c:
3906         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3907         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
3908         * gst/elements/gsttee.c: (gst_tee_sink_activate):
3909         * gst/elements/gsttypefindelement.c: (find_element_get_length),
3910         (gst_type_find_element_checkgetrange),
3911         (gst_type_find_element_activate):
3912         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
3913         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
3914         (gst_caps_load_thyself):
3915         * gst/gstelement.c: (gst_element_pads_activate),
3916         (gst_element_save_thyself), (gst_element_restore_thyself):
3917         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
3918         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
3919         * gst/gstpad.h:
3920         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
3921         (gst_xml_parse_file), (gst_xml_parse_memory),
3922         (gst_xml_get_element), (gst_xml_make_element):
3923         * gst/indexers/gstfileindex.c: (gst_file_index_load),
3924         (_file_index_id_save_xml), (gst_file_index_commit):
3925         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
3926         (read_enum), (load_pad_template), (load_feature), (load_plugin),
3927         (load_paths):
3928         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
3929         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
3930         * tools/gst-complete.c: (main):
3931         * tools/gst-compprep.c: (main):
3932         * tools/gst-inspect.c: (print_element_properties_info):
3933         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
3934         * tools/gst-xmlinspect.c: (print_element_properties):
3935         GCC 4 fixen.
3936         
3937 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
3938
3939         * gst/gstplugin.c: (gst_plugin_check_module),
3940         (gst_plugin_check_file), (gst_plugin_load_file):
3941             apply patch from #172526 to make register work on MacOSX
3942
3943 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3944
3945         * docs/gst/tmpl/gstconfig.sgml:
3946         * gst/gstconfig.h.in:
3947           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
3948         * testsuite/debug/printf_extension.c: (main):
3949           Do not use GST_PTR_FORMAT on pointers to types with
3950           sizeof < sizeof(gpointer).  Fixes test on 64-bit
3951         * testsuite/elements/property.h:
3952           use correct printf format
3953
3954 2005-05-02  Wim Taymans  <wim@fluendo.com>
3955
3956         * docs/design/draft-push-pull.txt:
3957         * docs/design/draft-query.txt:
3958         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
3959         (gst_basesrc_start):
3960         Added draft for new query API.
3961         Added draft for better selecting scheduling methods.
3962         Make basesrc ignore length if the subclass does not support
3963         it.
3964
3965 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3966
3967         * gst/Makefile.am:
3968           possible fixes for automake-1.5 - _LIBADD is reserved
3969
3970 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3971
3972         * docs/faq/Makefile.am:
3973         * docs/manual/Makefile.am:
3974         * docs/manuals.mak:
3975         * docs/pwg/Makefile.am:
3976         * gst/Makefile.am:
3977           possible fixes for automake-1.5
3978
3979 2005-04-28  Wim Taymans  <wim@fluendo.com>
3980
3981         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3982         (gst_basesink_pad_getcaps), (gst_basesink_init),
3983         (gst_basesink_do_sync):
3984         * gst/gstclock.c: (gst_clock_entry_new):
3985         * gst/gstevent.c: (gst_event_discont_get_value):
3986         * gst/gstpipeline.c: (pipeline_bus_handler),
3987         (gst_pipeline_change_state):
3988         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
3989         Better debugging of clocking info.
3990         Allow NULL values when getting discont values.
3991
3992 2005-04-27  Wim Taymans  <wim@fluendo.com>
3993
3994         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
3995         * check/gst/gstpad.c: (gst_pad_suite):
3996         Increase timeout for checks.
3997
3998 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3999
4000         * check/Makefile.am:
4001           fix the broken rule for cleanup.  Apparently this rule is
4002           only needed on FC2, so maybe this warrants further autotool
4003           inspection.
4004
4005 2005-04-26  Wim Taymans  <wim@fluendo.com>
4006
4007         * gst/gsttrashstack.h:
4008         Ooohh. a nasty one! After having a failed pop() from the stack,
4009         it's possible that the stack is empty. In that case, don't
4010         follow the NULL pointer.
4011
4012 2005-04-25  Wim Taymans  <wim@fluendo.com>
4013
4014         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4015         (gst_pad_set_checkgetrange_function),
4016         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
4017         (gst_pad_check_pull_range), (gst_pad_pull_range),
4018         (gst_static_pad_template_get_caps), (gst_pad_start_task),
4019         (gst_pad_pause_task), (gst_pad_stop_task):
4020         * gst/gstplugin.c: (gst_plugin_load):
4021         * gst/gstplugin.h:
4022         Remove gst_library_load as it does more harm than good with
4023         the new g_module flags.
4024         Revert bogus caps template check in pad linking, pad caps
4025         are important when linking not the template, which is more
4026         general than the current caps.
4027
4028 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4029
4030         * gst/autoplug/.cvsignore:
4031         * gst/autoplug/Makefile.am:
4032         * gst/autoplug/gstsearchfuncs.c:
4033         * gst/autoplug/gstsearchfuncs.h:
4034         * gst/autoplug/gstspider.c:
4035         * gst/autoplug/gstspider.h:
4036         * gst/autoplug/gstspideridentity.c:
4037         * gst/autoplug/gstspideridentity.h:
4038         * gst/autoplug/spidertest.c:
4039           Die, spider, die.
4040
4041 2005-04-25  Wim Taymans  <wim@fluendo.com>
4042
4043         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4044         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
4045         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
4046         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
4047         * gst/gstpad.h:
4048         Added stubs for unimplemented functions. 
4049
4050 2005-04-24  David Schleef  <ds@schleef.org>
4051
4052         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
4053         please fix.
4054
4055 2005-04-24  David Schleef  <ds@schleef.org>
4056
4057         Convert everything from GstAtomicInt to g_atomic_int_*, and
4058         remove gstatomic.
4059         * gst/Makefile.am:
4060         * gst/gstatomic.c:
4061         * gst/gstatomic.h:
4062         * gst/gstatomic_impl.h:
4063         * gst/gstbuffer.c:
4064         * gst/gstcaps.c:
4065         * gst/gstcaps.h:
4066         * gst/gstclock.c:
4067         * gst/gstclock.h:
4068         * gst/gstdata.c:
4069         * gst/gstdata.h:
4070         * gst/gstdata_private.h:
4071         * gst/gstevent.c:
4072         * gst/gstinfo.c:
4073         * gst/gstinfo.h:
4074         * gst/gstmessage.c:
4075         * gst/gstobject.c:
4076         * gst/gstobject.h:
4077         * gst/gststructure.c:
4078         * gst/gststructure.h:
4079         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
4080         * gst/gstutils.h:
4081
4082 2005-04-24  David Schleef  <ds@schleef.org>
4083
4084         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
4085         make the regressions tests work.  Remove some code that is no
4086         longer true.
4087         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
4088         Disable warning for pads without templates.
4089
4090 2005-04-24  David Schleef  <ds@schleef.org>
4091
4092         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
4093         functions that handle filtered links.
4094         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
4095         removed functions.
4096         * gst/gstutils.c: Fix/remove utility functions that handle
4097         filtered caps.
4098         * gst/gstutils.h:
4099         * gst/gstvalue.c: Add serialization/deserialization of caps
4100         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
4101         requires fixing so that the filter caps notation creates
4102         a capsfilter element and sets the filter_caps property.  I
4103         think everyone probably wants to keep the shorthand notation.
4104         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
4105         * docs/gst/tmpl/gstpad.sgml:
4106
4107         * gst/elements/gstelements.c: Register capsfilter element.
4108         * gst/Makefile.am: fix spacing
4109         * docs/random/ds/0.9-suggested-changes: random
4110
4111 2005-04-23  David Schleef  <ds@schleef.org>
4112
4113         * gst/elements/Makefile.am:
4114         * gst/elements/gstcapsfilter.c: New element that acts like an
4115         identity, but filters caps.  Will eventually replace filtered
4116         caps in pad linking.
4117         * gst/gstutils.c: (gst_element_create_all_pads): New function
4118         to create all the ALWAYS pads that are registered with an
4119         element class.  This functionality should eventually be
4120         merged in with GstElement initialization.
4121         * gst/gstutils.h:
4122         * testsuite/trigger/README: part of trigger test code that should
4123         have been checked in a long time ago.
4124
4125 2005-04-23  David Schleef  <ds@schleef.org>
4126
4127         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
4128         needed with new versions of libtool (nobody will confirm this),
4129         and hard to carry around.
4130         * gst/autoplug/Makefile.am:
4131         * gst/base/Makefile.am:
4132         * gst/elements/Makefile.am:
4133         * gst/indexers/Makefile.am:
4134         * gst/schedulers/Makefile.am:
4135         * libs/gst/bytestream/Makefile.am:
4136         * libs/gst/control/Makefile.am:
4137         * libs/gst/dataprotocol/Makefile.am:
4138         * libs/gst/getbits/Makefile.am:
4139
4140 2005-04-21  Wim Taymans  <wim@fluendo.com>
4141
4142         * docs/design/draft-push-pull.txt:
4143         * docs/design/part-MT-refcounting.txt:
4144         * docs/design/part-TODO.txt:
4145         * docs/design/part-caps.txt:
4146         * docs/design/part-events.txt:
4147         * docs/design/part-gstbus.txt:
4148         * docs/design/part-gstpipeline.txt:
4149         * docs/design/part-messages.txt:
4150         * docs/design/part-push-pull.txt:
4151         * docs/design/part-query.txt:
4152         Some more docs.
4153
4154 2005-04-21  Wim Taymans  <wim@fluendo.com>
4155
4156         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
4157         (gst_message_new), (gst_message_new_error),
4158         (gst_message_new_warning), (gst_message_new_tag),
4159         (gst_message_new_state_changed), (gst_message_new_application),
4160         (gst_message_get_structure):
4161         * gst/gstmessage.h:
4162         * gst/gststructure.c: (gst_structure_set_parent_refcount),
4163         (gst_structure_copy_conditional):
4164         Use parent refcount in GstMessage to ensure GstStructure
4165         consistency.
4166         Cleaned up headers a bit.
4167         
4168
4169 2005-04-20  Wim Taymans  <wim@fluendo.com>
4170
4171         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4172         (gst_basesink_pad_getcaps), (gst_basesink_init),
4173         (gst_basesink_chain_unlocked):
4174         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
4175         (gst_type_find_helper):
4176         * gst/elements/gsttypefindelement.c:
4177         (gst_type_find_element_have_type), (gst_type_find_element_init),
4178         (stop_typefinding), (gst_type_find_element_handle_event),
4179         (find_suggest), (gst_type_find_element_chain),
4180         (gst_type_find_element_checkgetrange),
4181         (gst_type_find_element_getrange), (do_typefind),
4182         (gst_type_find_element_activate):
4183         * gst/gstbuffer.c: (_gst_buffer_sub_free),
4184         (gst_buffer_default_free), (gst_buffer_default_copy),
4185         (gst_buffer_set_caps):
4186         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
4187         (gst_caps_replace):
4188         * gst/gstmessage.c: (gst_message_new),
4189         (gst_message_new_state_changed):
4190         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4191         (gst_pad_set_checkgetrange_function),
4192         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
4193         (gst_pad_set_caps), (gst_pad_check_pull_range),
4194         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
4195         * gst/gstpad.h:
4196         * gst/gsttypefind.c: (gst_type_find_register):
4197         Make gst_caps_replace() work like other _replace() functions.
4198         Use _caps_replace() where possible.
4199         Make sure _message_new() initialises its field.
4200         Add gst_static_pad_template_get_caps()
4201
4202
4203 2005-04-18  Andy Wingo  <wingo@pobox.com>
4204
4205         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
4206         on the peer, not the pad. I think that was a typo. Pass an extra
4207         arg to see if random access is possible. Activate the pads as
4208         PULL_RANGE if possible.
4209
4210         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
4211
4212         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
4213         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
4214         to PROP_....
4215
4216 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4217
4218         * docs/faq/using.xml:
4219           Add note on gstreamer-properties (#154996).
4220
4221 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4222
4223         * docs/random/bbb/optional-properties:
4224           Some analysis on optional properties.
4225
4226 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4227
4228         * docs/gst/tmpl/gstelementfactory.sgml:
4229         * gst/gstelement.h:
4230         * gst/gstelementfactory.c: (gst_element_factory_init),
4231         (gst_element_factory_cleanup), (gst_element_register),
4232         (__gst_element_factory_add_static_pad_template),
4233         (gst_element_factory_get_static_pad_templates),
4234         (gst_element_factory_can_src_caps),
4235         (gst_element_factory_can_sink_caps):
4236         * gst/registries/Makefile.am:
4237         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
4238         (gst_xml_registry_class_init), (gst_xml_registry_init),
4239         (gst_xml_registry_new), (gst_xml_registry_set_property),
4240         (gst_xml_registry_get_property), (get_time), (make_dir),
4241         (gst_xml_registry_get_perms_func),
4242         (plugin_times_older_than_recurse), (plugin_times_older_than),
4243         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
4244         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
4245         (add_to_char_array), (read_string), (read_uint), (read_enum),
4246         (load_pad_template), (load_feature), (load_plugin), (load_paths),
4247         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
4248         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
4249         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
4250         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
4251         (gst_xml_registry_rebuild):
4252         * gst/registries/gstlibxmlregistry.h:
4253         * tools/gst-compprep.c: (main):
4254         * tools/gst-inspect.c: (print_pad_templates_info):
4255         * tools/gst-xmlinspect.c: (print_element_info):
4256           Use libxml2 for registry parsing, use staticpadtemplates in
4257           elementfactories. Makes gst_init() +/- 10x faster.
4258
4259 2005-04-12  Wim Taymans  <wim@fluendo.com>
4260
4261         * gst/base/Makefile.am:
4262         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4263         (gst_basesink_pad_getcaps), (gst_basesink_init),
4264         (gst_basesink_event), (gst_basesink_change_state):
4265         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4266         (gst_basesrc_init), (gst_basesrc_query),
4267         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
4268         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
4269         (gst_basesrc_check_get_range), (gst_basesrc_loop),
4270         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
4271         (gst_basesrc_stop), (gst_basesrc_activate),
4272         (gst_basesrc_change_state):
4273         * gst/base/gsttypefindhelper.c: (helper_find_peek),
4274         (helper_find_suggest), (gst_type_find_helper):
4275         * gst/base/gsttypefindhelper.h:
4276         * gst/elements/Makefile.am:
4277         * gst/elements/gstelements.c:
4278         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
4279         (gst_fakesink_get_times), (gst_fakesink_event),
4280         (gst_fakesink_preroll), (gst_fakesink_render):
4281         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4282         (gst_fakesrc_init), (gst_fakesrc_event_handler),
4283         (gst_fakesrc_get_property), (gst_fakesrc_create),
4284         (gst_fakesrc_start), (gst_fakesrc_stop):
4285         * gst/elements/gstfakesrc.h:
4286         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
4287         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
4288         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
4289         (gst_filesrc_create_read), (gst_filesrc_create),
4290         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
4291         (gst_filesrc_start):
4292         * gst/elements/gsttypefindelement.c:
4293         (gst_type_find_element_have_type), (gst_type_find_element_init),
4294         (start_typefinding), (stop_typefinding), (push_buffer_store),
4295         (gst_type_find_element_handle_event),
4296         (gst_type_find_element_chain),
4297         (gst_type_find_element_checkgetrange),
4298         (gst_type_find_element_getrange), (do_typefind),
4299         (gst_type_find_element_activate),
4300         (gst_type_find_element_change_state):
4301         * gst/elements/gsttypefindelement.h:
4302         * gst/gstpipeline.c: (pipeline_bus_handler):
4303         Added typefind helper.
4304         Small preroll fix in the base sink.
4305         Disable typefind code in basesrc.
4306         Crude port of typefindelement.
4307         Fakesrc cleanups.
4308
4309
4310 2005-04-11  Wim Taymans  <wim@fluendo.com>
4311
4312         * check/gst/gstbus.c: (gstbus_suite):
4313         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
4314         * check/gstcheck.h:
4315           Fix up the timeout so that the test does not fail.
4316
4317 2005-04-06  Wim Taymans  <wim@fluendo.com>
4318
4319         * gst/base/README:
4320         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4321         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
4322         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
4323         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
4324         (gst_basesrc_check_get_range), (gst_basesrc_loop),
4325         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
4326         (gst_basesrc_stop), (gst_basesrc_activate),
4327         (gst_basesrc_change_state), (basesrc_find_peek),
4328         (basesrc_find_suggest), (gst_basesrc_type_find):
4329         * gst/base/gstbasesrc.h:
4330         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
4331         (gst_filesrc_class_init), (gst_filesrc_init),
4332         (gst_filesrc_finalize), (gst_filesrc_set_location),
4333         (gst_filesrc_set_property), (gst_filesrc_get_property),
4334         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
4335         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
4336         (gst_filesrc_create_read), (gst_filesrc_create),
4337         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
4338         * gst/elements/gstfilesrc.h:
4339         * gst/gstelement.c: (gst_element_get_state_func),
4340         (gst_element_lost_state), (gst_element_pads_activate):
4341         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4342         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
4343         (gst_pad_pull_range):
4344         * gst/gstpad.h:
4345         More work on the generic source base class, implement seeking,
4346         query.
4347         Make filesrc extend the base source class.
4348         Added gst_pad_set_checkgetrange_function to GstPad.
4349
4350 2005-04-06  Andy Wingo  <wingo@pobox.com>
4351
4352         * pkgconfig/gstreamer-base.pc.in:
4353         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
4354
4355         * pkgconfig/Makefile.am:
4356         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
4357
4358 2005-04-04  Wim Taymans  <wim@fluendo.com>
4359
4360         * gst/base/Makefile.am:
4361         * gst/base/README:
4362         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4363         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4364         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4365         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
4366         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4367         (gst_basesrc_base_init), (gst_basesrc_class_init),
4368         (gst_basesrc_init), (gst_basesrc_get_formats),
4369         (gst_basesrc_get_query_types), (gst_basesrc_query),
4370         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
4371         (gst_basesrc_set_property), (gst_basesrc_get_property),
4372         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
4373         (gst_basesrc_loop), (gst_basesrc_activate),
4374         (gst_basesrc_change_state):
4375         * gst/base/gstbasesrc.h:
4376         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
4377         (gst_fakesrc_class_init), (gst_fakesrc_init),
4378         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
4379         (gst_fakesrc_get_property), (gst_fakesrc_create):
4380         * gst/elements/gstfakesrc.h:
4381         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
4382         (gst_filesrc_open_file), (gst_filesrc_loop),
4383         (gst_filesrc_activate), (filesrc_find_peek),
4384         (gst_filesrc_type_find):
4385         Made base source class, make fakesrc extend it.
4386         Add comments to basesink class.
4387         Some filesrc cleanup.
4388
4389 2005-03-31  David Schleef  <ds@schleef.org>
4390
4391         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
4392         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
4393         expected to link against libgstreamer.
4394         * gst/base/Makefile.am: link against libgstreamer
4395         * gst/elements/Makefile.am: same
4396
4397 2005-03-31  Andy Wingo  <wingo@pobox.com>
4398
4399         * tests/instantiate/Makefile.am:
4400         * tests/instantiate/caps.c: Add test to test speed of caps copy
4401         and free.
4402
4403         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
4404         GMemChunk to be fair.
4405
4406         * gst/gsttrashstack.h: Remove warning about using the fallback
4407         trash stack implementation, it's still faster than malloc.
4408
4409 2005-03-30  Andy Wingo  <wingo@pobox.com>
4410
4411         * tests/complexity.c: Add a copyright.
4412
4413 2005-03-31  Wim Taymans  <wim@fluendo.com>
4414
4415         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
4416         (gst_base_transform_class_init), (gst_base_transform_init),
4417         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
4418         (gst_base_transform_get_property),
4419         (gst_base_transform_sink_activate),
4420         (gst_base_transform_src_activate),
4421         (gst_base_transform_change_state):
4422         * gst/base/gstbasetransform.h:
4423         * gst/elements/gstidentity.c: (gst_identity_class_init),
4424         (gst_identity_event), (gst_identity_check_perfect),
4425         (gst_identity_transform), (gst_identity_start),
4426         (gst_identity_stop):
4427         Added start/stop methods to transform base class so subclasses 
4428         don't need to deal with state changes even.
4429
4430 2005-03-31  Wim Taymans  <wim@fluendo.com>
4431
4432         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
4433         (gst_event_new_discontinuous), (gst_event_discont_get_value):
4434         * gst/gstevent.h:
4435         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4436         (gst_pad_pull_range):
4437         Added rate to the discont event to prepare for variable speed
4438         and reverse playback.
4439
4440 2005-03-29  David Schleef  <ds@schleef.org>
4441
4442         * configure.ac:
4443         * testsuite/trigger/Makefile.am:
4444         * testsuite/trigger/trigger.c: A little example program to show
4445         how trigger-based elements can work.
4446
4447 2005-03-29  Wim Taymans  <wim@fluendo.com>
4448
4449         * gst/base/Makefile.am:
4450         * gst/base/README:
4451         * gst/base/gstbasesink.c: (gst_basesink_get_type),
4452         (gst_basesink_base_init), (gst_basesink_class_init),
4453         (gst_basesink_pad_getcaps), (gst_basesink_init),
4454         (gst_basesink_activate), (gst_basesink_change_state):
4455         * gst/base/gstbasesink.h:
4456         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
4457         (gst_base_transform_base_init), (gst_base_transform_finalize),
4458         (gst_base_transform_class_init), (gst_base_transform_init),
4459         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
4460         (gst_base_transform_event), (gst_base_transform_getrange),
4461         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
4462         (gst_base_transform_set_property),
4463         (gst_base_transform_get_property),
4464         (gst_base_transform_sink_activate),
4465         (gst_base_transform_src_activate),
4466         (gst_base_transform_change_state):
4467         * gst/base/gstbasetransform.h:
4468         * gst/elements/gstidentity.c: (gst_identity_finalize),
4469         (gst_identity_class_init), (gst_identity_init),
4470         (gst_identity_event), (gst_identity_check_perfect),
4471         (gst_identity_transform), (gst_identity_set_property),
4472         (gst_identity_get_property), (gst_identity_change_state):
4473         * gst/elements/gstidentity.h:
4474         * gst/gstelement.c: (gst_element_get_state_func),
4475         (gst_element_lost_state), (gst_element_pads_activate):
4476         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4477         (gst_pad_check_pull_range), (gst_pad_pull_range):
4478         * gst/gstpad.h:
4479         Simplify pad activation.
4480         Added function to check if pull_range can be performed.
4481         Error out when pulling inactive or flushing pads.
4482         Removed const from refcounted types as it does not make sense.
4483         Simplify pad templates in basesink
4484         Added base class for simple 1-to-1 transforms.
4485         Make identity subclass the base transform.
4486
4487 2005-03-29  Andy Wingo  <wingo@pobox.com>
4488
4489         * docs/libs/gstreamer-libs-overrides.txt: 
4490         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
4491         really don't understand what's going on, but like whatever. I want
4492         green buildbot!
4493
4494         * docs/gst/Makefile.am:
4495         * docs/libs/Makefile.am: Dist the overrides files.
4496
4497         * check/Makefile.am (clean-local): Remove .libs directories.
4498
4499         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
4500         elements to EXTRA_DIST, so po/ files are happy.
4501
4502         * po/POTFILES.in: Er, remove it here.
4503
4504         * po/POTFILES: Remove gstspider.c.
4505
4506         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
4507
4508         * docs/libs/gstreamer-libs-docs.sgml: 
4509         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
4510         bytestream.
4511
4512         * tests/complexity.c (main): Set the length of the preroll queue
4513         on the sinks to prevent a lockup.
4514
4515         * libs/gst/dataprotocol/Makefile.am: 
4516         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
4517         the same as the one in check/gst-libs/gdp.c.
4518
4519         * po/, docs/gst/: Commit automatic changes to docs and po files.
4520
4521         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
4522         the versioned libgstbase.
4523
4524         * check/Makefile.am: Depend on an unversioned gst-register, seems
4525         to make autoconf happier.
4526
4527         * gst/base/Makefile.am: Make libgstbase a versioned lib.
4528
4529 2005-03-28  Wim Taymans  <wim@fluendo.com>
4530
4531         * configure.ac:
4532         * docs/design/part-gstelement.txt:
4533         * docs/design/part-negotiation.txt:
4534         * docs/design/part-preroll.txt:
4535         * docs/design/part-scheduling.txt:
4536         * docs/design/part-states.txt:
4537         * gst/Makefile.am:
4538         * gst/base/Makefile.am:
4539         * gst/base/README:
4540         * gst/base/gstbasesink.c: (gst_basesink_get_template),
4541         (gst_basesink_base_init), (gst_basesink_class_init),
4542         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4543         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4544         (gst_basesink_set_pad_functions),
4545         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
4546         (gst_basesink_set_property), (gst_basesink_get_property),
4547         (gst_base_sink_get_template), (gst_base_sink_get_caps),
4548         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
4549         (gst_basesink_preroll_queue_push),
4550         (gst_basesink_preroll_queue_empty),
4551         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
4552         (gst_basesink_event), (gst_basesink_get_times),
4553         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
4554         (gst_basesink_chain_unlocked), (gst_basesink_chain),
4555         (gst_basesink_loop), (gst_basesink_activate),
4556         (gst_basesink_change_state):
4557         * gst/base/gstbasesink.h:
4558         * gst/elements/Makefile.am:
4559         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
4560         (gst_fakesink_class_init), (gst_fakesink_init),
4561         (gst_fakesink_set_property), (gst_fakesink_get_property),
4562         (gst_fakesink_get_times), (gst_fakesink_event),
4563         (gst_fakesink_preroll), (gst_fakesink_render),
4564         (gst_fakesink_change_state):
4565         * gst/elements/gstfakesink.h:
4566         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4567         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
4568         * gst/gstelement.c: (gst_element_add_pad),
4569         (gst_element_get_state_func), (gst_element_abort_state),
4570         (gst_element_commit_state), (gst_element_lost_state),
4571         (gst_element_set_state), (gst_element_pads_activate):
4572         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
4573         * gst/gstpipeline.c: (gst_pipeline_send_event),
4574         (gst_pipeline_change_state):
4575         Added state change code.
4576         Added/updated docs.
4577         Added sink base class, make fakesink extend the base class.
4578         Small cleanups in GstPipeline.
4579
4580 2005-03-26  David Schleef  <ds@schleef.org>
4581
4582         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
4583         is broken and should be implemented in a different library.
4584         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
4585         * gst/gst.h: remove gstcpu.h
4586         * gst/gstcpu.c: remove
4587         * gst/gstcpu.h: remove
4588         * gst/Makefile.am.future: Remove this file.  It's ancient.
4589
4590 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4591
4592         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4593         (gst_bin_send_event):
4594           Add default event/set_manager handlers. The set_manager handler
4595           takes care that the manager is distributed over kids that were
4596           already in the bin before the manager was set. The event handler
4597           is a utility virtual function that sends the event over all sinks,
4598           so that gst_element_send_event (bin, event); has the expected
4599           behaviour.
4600         * gst/gstpad.c: (gst_pad_event_default):
4601           Re-install default event handling for discontinuities, so that
4602           seeking works without requiring hacks in applications or extra
4603           code in sinks.
4604         * gst/gstpipeline.c: (gst_pipeline_class_init),
4605         (gst_pipeline_send_event):
4606           Half hack, half utility: set a pipeline to PAUSED for seek events,
4607           since that is the only way we can guarantee a/v sync. Means that
4608           you can do gst_element_seek (pipeline, method, pos); on a pipeline
4609           and it "just works".
4610
4611 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4612
4613         * gst/gstpipeline.c: (gst_pipeline_use_clock):
4614           Lock/unlock mismatch.
4615
4616 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
4617
4618         * docs/faq/gst-uninstalled:
4619           add gst-plugins-base
4620         * docs/gst/Makefile.am:
4621           don't error out until docs are fixed
4622         * docs/gst/gstreamer.types:
4623           remove thread
4624
4625 2005-03-22  Wim Taymans  <wim@fluendo.com>
4626
4627         * check/Makefile.am:
4628         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
4629         * gst/gststructure.c: (gst_structure_set_valist),
4630         (gst_structure_copy_conditional):
4631         Activated more tests.
4632         Added message test.
4633         Added G_TYPE_POINTER to GstStructure.
4634         
4635
4636 2005-03-22  Wim Taymans  <wim@fluendo.com>
4637
4638         * docs/design/part-TODO.txt:
4639         * docs/design/part-events.txt:
4640         * docs/design/part-gstbin.txt:
4641         * docs/design/part-gstbus.txt:
4642         * docs/design/part-gstpipeline.txt:
4643         * docs/design/part-messages.txt:
4644         * gst/gstbus.c:
4645         * gst/gstmessage.c:
4646         Docs updates
4647
4648 2005-03-21  Wim Taymans  <wim@fluendo.com>
4649
4650         * gst/gstbus.c: (gst_bus_post):
4651         Fix copy-and-paste error.
4652
4653 2005-03-21  Wim Taymans  <wim@fluendo.com>
4654
4655         * check/Makefile.am:
4656         * gst/Makefile.am:
4657         * gst/elements/Makefile.am:
4658         * gst/elements/gstelements.c:
4659         * gst/elements/gstfakesink.c: (gst_fakesink_init),
4660         (gst_fakesink_event), (gst_fakesink_chain):
4661         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4662         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
4663         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
4664         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
4665         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
4666         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
4667         (gst_fakesrc_loop), (gst_fakesrc_activate),
4668         (gst_fakesrc_change_state):
4669         * gst/elements/gstfakesrc.h:
4670         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
4671         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
4672         (gst_filesrc_open_file), (gst_filesrc_loop),
4673         (gst_filesrc_activate), (gst_filesrc_change_state),
4674         (filesrc_find_peek), (filesrc_find_suggest),
4675         (gst_filesrc_type_find):
4676         * gst/elements/gstidentity.c: (gst_identity_finalize),
4677         (gst_identity_class_init), (gst_identity_init),
4678         (gst_identity_proxy_getcaps), (identity_queue_push),
4679         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
4680         (gst_identity_getrange), (gst_identity_chain),
4681         (gst_identity_sink_loop), (gst_identity_src_loop),
4682         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
4683         (gst_identity_set_property), (gst_identity_get_property),
4684         (gst_identity_change_state):
4685         * gst/elements/gstidentity.h:
4686         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
4687         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
4688         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
4689         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
4690         (gst_tee_sink_activate):
4691         * gst/elements/gsttee.h:
4692         * gst/gst.c: (gst_register_core_elements), (init_post):
4693         * gst/gst.h:
4694         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
4695         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
4696         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
4697         (gst_bin_change_state):
4698         * gst/gstbin.h:
4699         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
4700         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
4701         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
4702         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
4703         (gst_bus_set_sync_handler), (gst_bus_create_watch),
4704         (bus_watch_callback), (bus_watch_destroy),
4705         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
4706         (poll_timeout), (gst_bus_poll):
4707         * gst/gstbus.h:
4708         * gst/gstcaps.h:
4709         * gst/gstdata.h:
4710         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4711         (gst_element_post_message), (gst_element_message_full),
4712         (gst_element_get_state_func), (gst_element_get_state),
4713         (gst_element_abort_state), (gst_element_commit_state),
4714         (gst_element_lost_state), (gst_element_set_state),
4715         (gst_element_pads_activate), (gst_element_change_state),
4716         (gst_element_dispose), (gst_element_set_manager_func),
4717         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
4718         (gst_element_set_manager), (gst_element_get_manager),
4719         (gst_element_set_bus), (gst_element_get_bus),
4720         (gst_element_set_scheduler), (gst_element_get_scheduler):
4721         * gst/gstelement.h:
4722         * gst/gstevent.c: (gst_event_new_segment_seek),
4723         (gst_event_new_flush):
4724         * gst/gstevent.h:
4725         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
4726         (_gst_message_free), (gst_message_get_type), (gst_message_new),
4727         (gst_message_new_eos), (gst_message_new_error),
4728         (gst_message_new_warning), (gst_message_new_tag),
4729         (gst_message_new_state_changed), (gst_message_new_application),
4730         (gst_message_get_structure), (gst_message_parse_tag),
4731         (gst_message_parse_state_changed), (gst_message_parse_error),
4732         (gst_message_parse_warning):
4733         * gst/gstmessage.h:
4734         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
4735         (gst_real_pad_set_property), (gst_pad_set_active),
4736         (gst_pad_is_active), (gst_pad_set_blocked_async),
4737         (gst_pad_set_blocked), (gst_pad_is_blocked),
4738         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
4739         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
4740         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
4741         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
4742         (gst_pad_link_filtered), (gst_pad_relink_filtered),
4743         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
4744         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
4745         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
4746         (gst_pad_set_caps), (gst_pad_configure_sink),
4747         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
4748         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
4749         (gst_real_pad_dispose), (gst_real_pad_finalize),
4750         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
4751         (gst_pad_event_default_dispatch), (gst_pad_event_default),
4752         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
4753         * gst/gstpad.h:
4754         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
4755         (pipeline_bus_handler), (gst_pipeline_change_state),
4756         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
4757         * gst/gstpipeline.h:
4758         * gst/gstprobe.h:
4759         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
4760         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
4761         (gst_queue_link_src), (gst_queue_bufferalloc),
4762         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
4763         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
4764         (gst_queue_loop), (gst_queue_handle_src_event),
4765         (gst_queue_handle_src_query), (gst_queue_src_activate),
4766         (gst_queue_change_state):
4767         * gst/gstqueue.h:
4768         * gst/gstscheduler.c: (gst_scheduler_init),
4769         (gst_scheduler_dispose), (gst_scheduler_create_task),
4770         (gst_scheduler_factory_create):
4771         * gst/gstscheduler.h:
4772         * gst/gststructure.c: (gst_structure_get_type),
4773         (gst_structure_copy_conditional):
4774         * gst/gststructure.h:
4775         * gst/gsttaginterface.h:
4776         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
4777         (gst_task_init), (gst_task_dispose), (gst_task_create),
4778         (gst_task_get_state), (gst_task_start), (gst_task_stop),
4779         (gst_task_pause):
4780         * gst/gsttask.h:
4781         * gst/gstthread.c:
4782         * gst/gstthread.h:
4783         * gst/gsttypes.h:
4784         * gst/schedulers/Makefile.am:
4785         * gst/schedulers/cothreads_compat.h:
4786         * gst/schedulers/entryscheduler.c:
4787         * gst/schedulers/faircothreads.c:
4788         * gst/schedulers/faircothreads.h:
4789         * gst/schedulers/fairscheduler.c:
4790         * gst/schedulers/gstbasicscheduler.c:
4791         * gst/schedulers/gstoptimalscheduler.c:
4792         * gst/schedulers/gthread-cothreads.h:
4793         * gst/schedulers/threadscheduler.c:
4794         (gst_thread_scheduler_task_get_type),
4795         (gst_thread_scheduler_task_class_init),
4796         (gst_thread_scheduler_task_init),
4797         (gst_thread_scheduler_task_start),
4798         (gst_thread_scheduler_task_stop),
4799         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
4800         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
4801         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
4802         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
4803         (plugin_init):
4804         * libs/gst/Makefile.am:
4805         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
4806         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
4807         (gst_file_pad_parent_set):
4808         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
4809         (gst_dp_event_from_packet):
4810         * tests/complexity.c: (main):
4811         * tests/mass_elements.c: (main):
4812         * testsuite/states/locked.c: (message_received), (main):
4813         * testsuite/states/parent.c: (main):
4814         * tools/gst-inspect.c: (print_element_flag_info),
4815         (print_implementation_info), (print_pad_info):
4816         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
4817         (main):
4818         * tools/gst-md5sum.c: (event_loop), (main):
4819         * tools/gst-typefind.c: (main):
4820         * tools/gst-xmlinspect.c: (print_element_info):
4821         Next big merge.
4822         Added GstBus for mainloop integration.
4823         Added GstMessage for sending notifications on the bus.
4824         Added GstTask as an abstraction for pipeline entry points.
4825         Removed GstThread.
4826         Removed Schedulers.
4827         Simplified GstQueue for multithreaded core.
4828         Made _link threadsafe, removed old capsnego.
4829         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
4830         Added pad blocking functions.
4831         Reworked scheduling functions in GstPad to prepare for
4832         scheduling updates soon.
4833         Moved events out of data stream.
4834         Simplified GstEvent types.
4835         Added return values to push/pull.
4836         Removed clocking from GstElement.
4837         Added prototypes for state change function for next merge.
4838         Removed iterate from bins and state change management.
4839         Fixed some elements, disabled others for now.
4840         Fixed -inspect and -launch.
4841         Added check for GstBus.
4842
4843 2005-03-10  Wim Taymans  <wim@fluendo.com>
4844
4845         * docs/design/part-MT-refcounting.txt:
4846         * docs/design/part-clocks.txt:
4847         * docs/design/part-gstelement.txt:
4848         * docs/design/part-gstobject.txt:
4849         * docs/design/part-standards.txt:
4850         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4851         (gst_bin_remove_func), (gst_bin_remove):
4852         * gst/gstbin.h:
4853         * gst/gstbuffer.c:
4854         * gst/gstcaps.h:
4855         * testsuite/clock/clock1.c: (main):
4856         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
4857         (main):
4858         * testsuite/dlopen/loadgst.c: (do_test):
4859         * testsuite/refcounting/bin.c: (add_remove_test1),
4860         (add_remove_test2), (main):
4861         * testsuite/refcounting/element.c: (main):
4862         * testsuite/refcounting/element_pad.c: (main):
4863         * testsuite/refcounting/pad.c: (main):
4864         * tools/gst-launch.c: (sigint_handler_sighandler):
4865         * tools/gst-typefind.c: (main):
4866         Doc updates.
4867         Added doc about clock.
4868         removed gst_bin_iterate_recurse_up(), marked methods
4869         for removal.
4870         Fix more testsuites.
4871
4872 2005-03-09  Wim Taymans  <wim@fluendo.com>
4873
4874         * gst/gstpad.c: (gst_pad_get_direction),
4875         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
4876         (gst_pad_collect_valist):
4877         * testsuite/bins/interface.c: (main):
4878         * testsuite/caps/audioscale.c: (test_caps):
4879         * testsuite/caps/caps.c: (test1), (test2), (test3):
4880         * testsuite/caps/deserialize.c: (main):
4881         * testsuite/caps/enumcaps.c: (main):
4882         * testsuite/caps/filtercaps.c: (main):
4883         * testsuite/caps/intersect2.c: (main):
4884         * testsuite/caps/random.c: (main):
4885         * testsuite/caps/renegotiate.c: (my_fixate), (main):
4886         * testsuite/caps/sets.c: (check_caps):
4887         * testsuite/caps/simplify.c: (check_caps), (main):
4888         * testsuite/caps/subtract.c: (check_caps):
4889         Fix _pad_get_direction wrt ghostpads.
4890         Fix caps testsuite.
4891
4892 2005-03-09  Wim Taymans  <wim@fluendo.com>
4893
4894         * check/Makefile.am:
4895         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
4896         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
4897         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
4898         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
4899         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
4900         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
4901         (gst_bin_remove), (gst_bin_iterate_recurse_up),
4902         (bin_element_is_sink), (gst_bin_iterate_sinks),
4903         (gst_bin_iterate_all_by_interface):
4904         * gst/gstbin.h:
4905         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
4906         (gst_element_change_state), (gst_element_dispose),
4907         (gst_element_finalize), (gst_element_set_loop_function):
4908         * gst/gstelement.h:
4909         * gst/gstiterator.c: (find_custom_fold_func):
4910         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4911         (gst_pad_collectv), (gst_pad_collect_valist),
4912         (gst_pad_template_new):
4913         * gst/gstpipeline.c: (gst_pipeline_class_init),
4914         (gst_pipeline_dispose), (gst_pipeline_set_property),
4915         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
4916         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
4917         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
4918         * gst/gstutils.h:
4919         * gst/schedulers/entryscheduler.c:
4920         * gst/schedulers/gstbasicscheduler.c:
4921         (gst_basic_scheduler_cothreaded_chain),
4922         (gst_basic_scheduler_chain_add_element):
4923         * testsuite/bins/interface.c: (main):
4924         Added GstBin test.
4925         Added GstSystemClock test.
4926         Implemented clock distribution code in GstBin.
4927         Implemented iterate sinks method for future use.
4928         Rearranged gstelement.h
4929         Fix GstIterator comparison bug.
4930         Moved some code to GstPipeline, mostly clocking related.
4931
4932 2005-03-09  Wim Taymans  <wim@fluendo.com>
4933
4934         * configure.ac:
4935         * gst/gst_private.h:
4936         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4937         (gst_bin_remove_func), (gst_bin_remove),
4938         (gst_bin_get_by_name_recurse_up):
4939         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
4940         (gst_clock_id_compare_func), (gst_clock_id_wait),
4941         (gst_clock_id_wait_async), (gst_clock_init),
4942         (gst_clock_adjust_unlocked), (gst_clock_get_time):
4943         * gst/gstelement.h:
4944         * gst/gstinfo.c: (_gst_debug_init):
4945         * gst/gstobject.h:
4946         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4947         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
4948         * gst/gstpad.h:
4949         Bump version number, we're now 0.9.0
4950         Add future debugging category.
4951         Fix NULL _unref() in _get_by_name_recurse_up
4952         Rearrange gstpad.h.
4953         Update some docs.
4954
4955 2005-03-08  Wim Taymans  <wim@fluendo.com>
4956
4957         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
4958         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4959         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
4960         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
4961         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
4962         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
4963         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
4964         * gst/elements/gstidentity.c: (gst_identity_class_init):
4965         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
4966         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
4967         * gst/elements/gstshaper.c: (gst_shaper_class_init):
4968         * gst/elements/gststatistics.c: (gst_statistics_class_init):
4969         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
4970         (gst_tee_link):
4971         * gst/gstelement.c: (gst_element_class_init),
4972         (gst_element_base_class_init), (gst_element_init),
4973         (gst_element_get_random_pad), (gst_element_wait_state_change),
4974         (gst_element_change_state), (gst_element_dispose),
4975         (gst_element_finalize), (gst_element_set_loop_function):
4976         * gst/gstelement.h:
4977         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
4978         * gst/gstthread.c: (gst_thread_class_init),
4979         (gst_thread_release_children_locks), (gst_thread_change_state):
4980         * gst/schedulers/gstbasicscheduler.c:
4981         (gst_basic_scheduler_loopfunc_wrapper),
4982         (gst_basic_scheduler_chain_wrapper),
4983         (gst_basic_scheduler_src_wrapper),
4984         (gst_basic_scheduler_remove_element):
4985         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4986         Remove threadsafe properties. Fix elements because GObject
4987         complains when installing a property before declaring a
4988         set/get_property handler.
4989         Rearrange gstelement.h file, use STATE macros for state locks.
4990         Free mutexes in the finalize method instead of dispose.
4991
4992 2005-03-08  Wim Taymans  <wim@fluendo.com>
4993
4994         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
4995         * gst/gstthread.c: (gst_thread_release_children_locks):
4996         Added parentage check.
4997         Fix build og GstThread again.
4998
4999 2005-03-08  Wim Taymans  <wim@fluendo.com>
5000
5001         * docs/design/part-MT-refcounting.txt:
5002         * docs/design/part-conventions.txt:
5003         * docs/design/part-gstobject.txt:
5004         * docs/design/part-relations.txt:
5005         * docs/design/part-standards.txt:
5006         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
5007         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
5008         (gst_bin_get_by_name), (gst_bin_get_by_interface),
5009         (gst_bin_iterate_all_by_interface):
5010         * gst/gstbuffer.h:
5011         * gst/gstclock.h:
5012         * gst/gstelement.c: (gst_element_class_init),
5013         (gst_element_change_state), (gst_element_set_loop_function):
5014         * gst/gstelement.h:
5015         * gst/gstiterator.c:
5016         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
5017         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
5018         (gst_object_dispatch_properties_changed), (gst_object_set_name),
5019         (gst_object_set_parent), (gst_object_unparent),
5020         (gst_object_check_uniqueness):
5021         * gst/gstobject.h:
5022         Docs updates, clean up some headers.
5023
5024 2005-03-07  Wim Taymans  <wim@fluendo.com>
5025
5026         * check/.cvsignore:
5027         * check/Makefile.am:
5028         * check/gst-libs/.cvsignore:
5029         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
5030         * check/gst/.cvsignore:
5031         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
5032         (START_TEST), (gstbus_suite), (main):
5033         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
5034         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
5035         (gst_data_suite), (main):
5036         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
5037         (add_fold_func), (gstiterator_suite), (main):
5038         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
5039         (thread_name_object), (thread_name_object_default),
5040         (gst_object_name_compare), (gst_object_suite), (main):
5041         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
5042         (gst_pad_suite), (main):
5043         * check/gstcheck.c: (gst_check_log_message_func),
5044         (gst_check_log_critical_func), (gst_check_init):
5045         * check/gstcheck.h:
5046         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
5047         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
5048         Added checks.
5049
5050 2005-03-07  Wim Taymans  <wim@fluendo.com>
5051
5052         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
5053         (gst_list_iterator_next), (gst_list_iterator_resync),
5054         (gst_list_iterator_free), (gst_iterator_new_list),
5055         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
5056         (gst_iterator_free), (gst_iterator_push), (filter_next),
5057         (filter_resync), (filter_uninit), (filter_free),
5058         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
5059         (gst_iterator_foreach), (find_custom_fold_func),
5060         (gst_iterator_find_custom):
5061         * gst/gstiterator.h:
5062         Added missing files.
5063
5064 2005-03-07  Wim Taymans  <wim@fluendo.com>
5065
5066         * Makefile.am:
5067         * configure.ac:
5068         * docs/design/part-MT-refcounting.txt:
5069         * docs/design/part-conventions.txt:
5070         * docs/design/part-gstobject.txt:
5071         * docs/design/part-relations.txt:
5072         * examples/mixer/mixer.c: (main):
5073         * examples/thread/thread.c: (eos), (main):
5074         * gst/Makefile.am:
5075         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
5076         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
5077         (gst_spider_plug_from_srcpad):
5078         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
5079         (gst_spider_identity_change_state),
5080         (gst_spider_identity_sink_loop_type_finding):
5081         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
5082         * gst/elements/gstidentity.c: (gst_identity_init):
5083         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
5084         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
5085         * gst/elements/gsttypefindelement.c: (free_entry):
5086         * gst/gst.c:
5087         * gst/gst.h:
5088         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
5089         (gst_bin_set_clock_func), (gst_bin_auto_clock),
5090         (gst_bin_set_index), (gst_bin_set_element_sched),
5091         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
5092         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
5093         (gst_bin_iterate_elements), (iterate_child_recurse),
5094         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
5095         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
5096         (compare_interface), (gst_bin_get_by_interface),
5097         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
5098         * gst/gstbin.h:
5099         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
5100         (gst_buffer_default_free), (gst_buffer_default_copy),
5101         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
5102         (gst_buffer_create_sub):
5103         * gst/gstbuffer.h:
5104         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
5105         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
5106         (gst_caps_unref), (gst_static_caps_get),
5107         (gst_caps_remove_and_get_structure), (gst_caps_append),
5108         (gst_caps_append_structure), (gst_caps_remove_structure),
5109         (gst_caps_copy_nth), (gst_caps_set_simple),
5110         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
5111         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
5112         (gst_caps_structure_intersect_field), (gst_caps_intersect),
5113         (gst_caps_structure_subtract_field), (gst_caps_subtract),
5114         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
5115         (gst_caps_structure_figure_out_union),
5116         (gst_caps_switch_structures), (gst_caps_do_simplify),
5117         (gst_caps_replace), (gst_caps_from_string),
5118         (gst_caps_copy_conditional):
5119         * gst/gstcaps.h:
5120         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
5121         (_gst_clock_id_free), (gst_clock_id_unref),
5122         (gst_clock_id_compare_func), (gst_clock_id_wait),
5123         (gst_clock_id_wait_async), (gst_clock_class_init),
5124         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
5125         (gst_clock_get_time), (gst_clock_set_time_adjust),
5126         (gst_clock_set_property), (gst_clock_get_property):
5127         * gst/gstclock.h:
5128         * gst/gstcompat.h:
5129         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
5130         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
5131         * gst/gstdata.h:
5132         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
5133         (gst_element_requires_clock), (gst_element_provides_clock),
5134         (gst_element_set_clock), (gst_element_clock_wait),
5135         (gst_element_wait), (gst_element_set_time_delay),
5136         (gst_element_is_indexable), (gst_element_add_pad),
5137         (gst_element_add_ghost_pad), (gst_element_remove_pad),
5138         (pad_compare_name), (gst_element_get_static_pad),
5139         (gst_element_request_pad), (gst_element_get_request_pad),
5140         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
5141         (gst_element_class_get_pad_template_list),
5142         (gst_element_class_get_pad_template), (gst_element_error_func),
5143         (gst_element_get_random_pad), (gst_element_get_event_masks),
5144         (gst_element_send_event), (gst_element_seek),
5145         (gst_element_get_query_types), (gst_element_query),
5146         (gst_element_get_formats), (gst_element_convert),
5147         (gst_element_is_locked_state), (gst_element_set_locked_state),
5148         (gst_element_sync_state_with_parent), (gst_element_change_state),
5149         (gst_element_finalize), (gst_element_yield),
5150         (gst_element_interrupt), (gst_element_set_scheduler),
5151         (gst_element_get_scheduler), (gst_element_set_loop_function):
5152         * gst/gstelement.h:
5153         * gst/gstevent.h:
5154         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
5155         (gst_format_get_by_nick), (gst_format_get_details),
5156         (gst_format_iterate_definitions):
5157         * gst/gstformat.h:
5158         * gst/gstindex.c: (gst_index_gtype_resolver):
5159         * gst/gstinfo.c:
5160         * gst/gstinfo.h:
5161         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
5162         (gst_mem_chunk_free):
5163         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
5164         (gst_object_ref), (gst_object_unref), (gst_object_sink),
5165         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
5166         (gst_object_dispatch_properties_changed),
5167         (gst_object_set_name_default), (gst_object_set_name),
5168         (gst_object_get_name), (gst_object_set_name_prefix),
5169         (gst_object_get_name_prefix), (gst_object_set_parent),
5170         (gst_object_get_parent), (gst_object_unparent),
5171         (gst_object_check_uniqueness), (gst_object_save_thyself),
5172         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
5173         (gst_object_set_property), (gst_object_get_property),
5174         (gst_object_get_path_string):
5175         * gst/gstobject.h:
5176         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
5177         (gst_real_pad_init), (gst_real_pad_get_property),
5178         (gst_pad_custom_new), (gst_pad_get_direction),
5179         (gst_pad_set_active), (gst_pad_is_active),
5180         (gst_pad_set_event_function), (gst_pad_is_linked),
5181         (gst_pad_link_free), (gst_pad_link_intersect),
5182         (gst_pad_link_fixate), (gst_pad_set_caps),
5183         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
5184         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
5185         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
5186         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
5187         (gst_pad_get_caps), (gst_pad_peer_get_caps),
5188         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
5189         (gst_pad_realize), (gst_pad_get_allowed_caps),
5190         (gst_real_pad_dispose), (gst_real_pad_finalize),
5191         (gst_pad_collectv), (gst_pad_collect_valist),
5192         (gst_pad_template_dispose), (gst_pad_template_new),
5193         (gst_pad_get_internal_links):
5194         * gst/gstpad.h:
5195         * gst/gstpipeline.c: (gst_pipeline_dispose),
5196         (gst_pipeline_change_state):
5197         * gst/gstpipeline.h:
5198         * gst/gstplugin.c:
5199         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
5200         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
5201         * gst/gstpluginfeature.h:
5202         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5203         * gst/gstquery.c: (_gst_query_type_initialize),
5204         (gst_query_type_register), (gst_query_type_get_by_nick),
5205         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
5206         * gst/gstquery.h:
5207         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
5208         * gst/gstscheduler.c: (gst_scheduler_add_element),
5209         (gst_scheduler_factory_create):
5210         * gst/gststructure.c: (gst_structure_set_parent_refcount),
5211         (gst_structure_free), (gst_structure_set_name),
5212         (gst_structure_id_set_value), (gst_structure_set_value),
5213         (gst_structure_set_valist), (gst_structure_remove_field),
5214         (gst_structure_remove_fields),
5215         (gst_structure_remove_fields_valist),
5216         (gst_structure_remove_all_fields), (gst_structure_foreach),
5217         (gst_structure_map_in_place),
5218         (gst_caps_structure_fixate_field_nearest_int),
5219         (gst_caps_structure_fixate_field_nearest_double):
5220         * gst/gststructure.h:
5221         * gst/gstsystemclock.c: (gst_system_clock_class_init),
5222         (gst_system_clock_init), (gst_system_clock_dispose),
5223         (gst_system_clock_async_thread),
5224         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
5225         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
5226         * gst/gstsystemclock.h:
5227         * gst/gsttag.c: (gst_tag_list_add_value_internal),
5228         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
5229         * gst/gsttaginterface.c:
5230         * gst/gstthread.c: (gst_thread_dispose),
5231         (gst_thread_release_children_locks), (gst_thread_change_state),
5232         (gst_thread_main_loop):
5233         * gst/gsttrashstack.h:
5234         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
5235         * gst/gsttypes.h:
5236         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
5237         (gst_element_request_pad), (gst_element_get_pad_from_template),
5238         (gst_element_request_compatible_pad),
5239         (gst_element_get_compatible_pad_filtered),
5240         (gst_element_get_compatible_pad), (gst_element_state_get_name),
5241         (gst_element_link_pads_filtered), (gst_element_link_filtered),
5242         (gst_element_link_many), (gst_element_link),
5243         (gst_element_link_pads), (gst_element_unlink_pads),
5244         (gst_element_unlink_many), (gst_element_unlink),
5245         (gst_pad_can_link_filtered), (gst_pad_can_link),
5246         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
5247         (gst_object_default_error), (gst_bin_add_many),
5248         (gst_bin_remove_many), (gst_element_populate_std_props),
5249         (gst_element_class_install_std_props), (gst_buffer_merge),
5250         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
5251         (link_fold_func), (gst_pad_proxy_setcaps):
5252         * gst/gstutils.h:
5253         * gst/gstvalue.c: (gst_value_deserialize_string):
5254         * gst/parse/grammar.y:
5255         * gst/schedulers/gstbasicscheduler.c:
5256         (gst_basic_scheduler_cothreaded_chain),
5257         (gst_basic_scheduler_chain_recursive_add),
5258         (gst_basic_scheduler_pad_link):
5259         * gst/schedulers/gstoptimalscheduler.c:
5260         (get_group_schedule_function),
5261         (gst_opt_scheduler_state_transition),
5262         (gst_opt_scheduler_add_element), (element_get_reachables_func):
5263         * libs/gst/bytestream/bytestream.c:
5264         * libs/gst/dataprotocol/dataprotocol.c:
5265         (gst_dp_header_from_buffer):
5266         * po/nb.po:
5267         * po/ru.po:
5268         * tests/threadstate/threadstate2.c: (eos):
5269         * tools/gst-compprep.c: (main):
5270         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
5271         (print_pad_info), (print_children_info):
5272         * tools/gst-launch.c: (idle_func), (main):
5273         * tools/gst-md5sum.c: (idle_func), (main):
5274         * tools/gst-xmlinspect.c: (print_element_info):
5275         First THREADED backport attempt, focusing on adding locks and
5276         making sure the API is threadsafe. Needs more work. More docs
5277         follow this week.
5278
5279 2005-02-24  Andy Wingo  <wingo@pobox.com>
5280
5281         * tests/bench-complexity.scm:
5282         * tests/complexity.gnuplot: New files, good for running complexity
5283         benchmarks.
5284
5285         * tests/Makefile.am:
5286         * tests/complexity.c: New test, sets up N elements, at each level
5287         teeing into M streams per element. Eeeenteresting.
5288
5289         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
5290         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
5291         running bench-mass_elements.scm.
5292
5293         * tests/bench-mass_elements.scm: New script, runs mass_elements
5294         for various numbers of identities, outputting the results to a
5295         file. Requires guile 1.6. Just for testing.
5296
5297 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5298
5299         * gst/schedulers/fairscheduler.c:
5300           compile with debug disabled
5301
5302 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
5303
5304         * configure.ac:
5305           hunting season on 0.9 is now OPEN
5306
5307 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
5308
5309         * docs/libs/tmpl/gstcontrol.sgml:
5310         * docs/libs/tmpl/gstdparam.sgml:
5311         * docs/libs/tmpl/gstdplinint.sgml:
5312         * docs/libs/tmpl/gstdpman.sgml:
5313         * docs/libs/tmpl/gstdpsmooth.sgml:
5314         * docs/libs/tmpl/gstunitconvert.sgml:
5315           more docs for the state of dparams
5316
5317 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5318
5319         * gst/gstelementfactory.c: (gst_element_factory_create):
5320         * gst/gstobject.c: (gst_object_init),
5321         (gst_object_set_name_default), (gst_object_set_name):
5322           name objects by default, not in gst_element_factory_create. Allows
5323           using elements created with g_object_new. (fixes #167283)
5324
5325 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5326
5327         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
5328           make the time that debugging functions print relative to when
5329           gst_init was called
5330
5331 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
5332
5333         * gst/gsttaginterface.c:
5334           Fix inline docs: tag setter vararg functions are NULL-terminated,
5335           GST_TAG_INVALID doesn't exist any more.
5336
5337 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5338
5339         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
5340         Allocate the 1 byte more memory that was forgotten!!!!!
5341         fixes memory corruption on 64bit platforms
5342
5343 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
5344
5345         * docs/pwg/building-pads.xml:
5346         * docs/pwg/intro-basics.xml:
5347           fixed a few typos, relabeled introductionary list of types
5348         * docs/random/ensonic/dparams.txt:
5349           more notes abut dparam changes
5350         * libs/gst/control/dparam.c: (gst_dparam_attach):
5351         * libs/gst/control/dparammanager.c:
5352         * libs/gst/control/dparammanager.h:
5353           - many comments and notes on dparam implementation
5354           - new dparams are were not initialized to the default value
5355             from param spec
5356
5357 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
5358
5359         submitted by: Peter Astakhov
5360
5361         * po/LINGUAS:
5362         * po/ru.po:
5363           adding Russian translation
5364
5365 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5366
5367         * configure.ac:
5368         * docs/gst/Makefile.am:
5369         * docs/libs/Makefile.am:
5370           make sure popt is added to gtk-doc flags.  Fixes #147782.
5371
5372 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
5373
5374         * docs/faq/using.xml:
5375           Fix typo in FAQ (artssink => artsdsink)
5376
5377 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5378
5379         * tools/gst-launch.1.in:
5380           Fix typo (#166699).
5381
5382 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
5383
5384         * docs/faq/using.xml:
5385           Add -v argument to fakesrc/fakesink gst-launch line,
5386           so that the promised output will actually show up.
5387
5388 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5389
5390         * gst/gstthread.c: (gst_thread_change_state):
5391           Implement state-change error handling (#166073).
5392
5393 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5394
5395         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
5396           Release interrupt after handling (#166250).
5397
5398 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5399
5400         * configure.ac:
5401           back to HEAD
5402
5403 === release 0.8.9 ===
5404
5405 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5406
5407         * NEWS:
5408         * RELEASE:
5409         * configure.ac:
5410           releasing 0.8.9, "Like Eating Glass"
5411
5412 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5413
5414         submitted by: Clytie Siddall
5415
5416         * po/vi.po: Added Vietnamese translation
5417
5418 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5419
5420         patch by: Tim Philipp-Müller
5421
5422         * configure.ac:
5423         * gst/gstpad.c:
5424           unref data when probe function returns FALSE.  Fixes #166362
5425
5426 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5427
5428         * gst/gst.c: (gst_init_get_popt_table):
5429           Fix typo (#166269).
5430
5431 2005-02-04  Andy Wingo  <wingo@pobox.com>
5432
5433         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
5434         the debugging on whether the caps are compatible.
5435
5436 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5437
5438         * docs/manual/basics-elements.xml:
5439           Fix two typos.
5440
5441 2005-02-02  Wim Taymans  <wim@fluendo.com>
5442
5443         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
5444         (schedule_chain), (get_invalid_call), (chain_invalid_call),
5445         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
5446         Remove some FIXMEs after analysing and commenting why they
5447         are not issues.
5448
5449 2005-02-02  Wim Taymans  <wim@fluendo.com>
5450
5451         * gst/schedulers/gstoptimalscheduler.c:
5452         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
5453         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
5454         (get_invalid_call), (chain_invalid_call),
5455         (get_group_schedule_function), (loop_group_schedule_function),
5456         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
5457         (gst_opt_scheduler_state_transition),
5458         (gst_opt_scheduler_add_element),
5459         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
5460         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
5461         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
5462         (gst_opt_scheduler_show):
5463         Added lock to protect scheduler data structures.
5464
5465 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5466
5467         * testsuite/threads/threadi.c: (cb_data):
5468           Fix buglet in test.
5469
5470 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5471
5472         * testsuite/threads/Makefile.am:
5473         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
5474           On Wim's request, split the test in three separately-compiled
5475           tests that each test a very specific bug. Two of them still fail,
5476           will create bugs for those. threadi.c indicates why they fail.
5477
5478 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5479
5480         * gst/schedulers/gstoptimalscheduler.c:
5481         (get_group_schedule_function):
5482           Try to work with the threading mess that queue_link is.
5483
5484 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5485
5486         * gst/gstbin.c: (gst_bin_remove_func):
5487           Explicitely make an element release locks in a group when being
5488           remove from a bin.
5489         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
5490           If there's no scheduler, always return immediately (similar to
5491           gst_element_interrupt).
5492
5493 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5494
5495         * gst/gstbin.c: (gst_bin_child_state_change_func):
5496           Remove a piece of code that could never be reached.
5497         * docs/gst/gstreamer-sections.txt:
5498         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
5499         (gst_pad_call_get_function):
5500         * gst/gstpad.h:
5501         * testsuite/pad/Makefile.am:
5502           Fix #150546, enable tests.
5503
5504 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5505
5506         * docs/pwg/advanced-types.xml:
5507           Fix description for buffer-frames=0.
5508         * docs/gst/tmpl/gstbin.sgml:
5509         * gst/gstbin.c: (gst_bin_child_state_change_func),
5510         (gst_bin_change_state), (gst_bin_change_state_norecurse):
5511         * gst/gstbin.h:
5512         * testsuite/threads/Makefile.am:
5513         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
5514         (cb_state), (cb_play), (main):
5515           Fix non-recursive state changes to *really* change the state
5516           of the object, and not just call parent_class->state_change.
5517           Fix a lot of lockups caused by this. Fixes #132775. Add test
5518           for the problem. Also enable test to show #142588 (fixed).
5519         * gst/gstthread.c: (gst_thread_change_state),
5520         (gst_thread_child_state_change):
5521           Don't exit the thread if we go to NULL and are inside thread
5522           context. Instead, return control to the main thread context
5523           and exit from there.
5524         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
5525           Don't unset virtual functions, since those may still be used.
5526           That's not necessarily correct, but suffices for now.
5527         * configure.ac:
5528         * testsuite/Makefile.am:
5529         * testsuite/pad/Makefile.am:
5530         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
5531         (gst_test_sink_base_init), (gst_test_sink_chain),
5532         (gst_test_sink_init), (main):
5533         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
5534         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
5535         (main):
5536         * testsuite/pad/link.c: (gst_test_element_class_init),
5537         (gst_test_element_base_init), (gst_test_src_get),
5538         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
5539         (gst_test_filter_loop), (gst_test_filter_init),
5540         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
5541         (cb_error), (main):
5542           Add tests to show #150546. Pass, but should fail (currently
5543           disabled from the testsuite).
5544         * gst/gstscheduler.c: (gst_scheduler_dispose):
5545           Dereference child schedulers on dispose (#94464).
5546         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
5547           Fix typo.
5548         * testsuite/threads/thread.c: (main):
5549           Add more debug.
5550
5551 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5552
5553         * gst/gstpad.c: (gst_pad_push):
5554           Oops, revert previous commit, broke testsuite...
5555
5556 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5557
5558         * gst/gstpad.c: (gst_pad_push):
5559           Add check that the pad on which the push is performed is not a
5560           get-based pad (#150546).
5561
5562 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5563
5564         * gst/elements/gsttypefindelement.c:
5565         (gst_type_find_element_handle_event):
5566           Fix buffer pushing if stream EOSes during typefinding.
5567
5568 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
5569
5570         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5571
5572         * gst/gstvalue.c: (gst_string_wrap):
5573           Allow NULL-strings as argument (#165365).
5574
5575 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
5576
5577         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5578
5579         * gst/schedulers/faircothreads.c:
5580         (gst_fair_scheduler_cothread_queue_show):
5581           Fix build without debug enabled.
5582
5583 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
5584
5585         * docs/gst/gstreamer-sections.txt:
5586         * docs/libs/gstreamer-libs-docs.sgml:
5587         * docs/libs/gstreamer-libs-sections.txt:
5588         * docs/libs/tmpl/gstcontrol.sgml:
5589         * docs/libs/tmpl/gstdparam.sgml:
5590         * docs/libs/tmpl/gstdplinint.sgml:
5591         * docs/libs/tmpl/gstdpman.sgml:
5592         * docs/libs/tmpl/gstdpsmooth.sgml:
5593         * docs/libs/tmpl/gstputbits.sgml:
5594         * docs/libs/tmpl/gstunitconvert.sgml:
5595         * libs/gst/control/dparam.c:
5596         * libs/gst/control/dparam.h:
5597         * libs/gst/control/dparammanager.c:
5598         (gst_dpman_add_required_dparam_callback),
5599         (gst_dpman_add_required_dparam_direct),
5600         (gst_dpman_add_required_dparam_array),
5601         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
5602         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
5603         (gst_dpman_get_manager)
5604           restructured DParam docs
5605
5606 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
5607
5608         * gst-element-check.m4:
5609           Only check for gst-inspect if we haven't already
5610           found it in previous element check runs
5611
5612 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
5613
5614         * docs/gst/Makefile.am:
5615         * docs/libs/Makefile.am:
5616           fixed install rules to treat style.css as optional
5617
5618 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
5619
5620         * docs/gst/Makefile.am:
5621         * docs/libs/Makefile.am:
5622           install style.css along with docs
5623         * docs/gst/tmpl/gstbin.sgml:
5624         * docs/gst/tmpl/gstclock.sgml:
5625         * docs/gst/tmpl/gstdata.sgml:
5626         * docs/gst/tmpl/gstelement.sgml:
5627         * gst/gstbin.h:
5628         * gst/gstelement.c: (gst_element_class_init):
5629         * gst/gstelement.h:
5630           fixing incomplete docs
5631
5632 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
5633
5634         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5635           Don't unref seek event twice when fflush() fails
5636           
5637 2005-01-22  David Schleef  <ds@schleef.org>
5638
5639         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
5640
5641 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
5642
5643         * docs/gst/Makefile.am:
5644         * docs/libs/Makefile.am:
5645           added params for deprecation guards
5646         * gst/gst.c:
5647         * gst/gst.h:
5648         * gst/gsterror.c: (_gst_resource_errors_init),
5649         (_gst_stream_errors_init):
5650         * gst/gsterror.h:
5651           documented some more enums
5652
5653 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
5654         * gst/autoplug/gstspideridentity.c:
5655         Cosmetic fix - spider_find_peek should be static
5656         * gst/parse/parse.l:
5657         Applying fix for #164261
5658
5659 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
5660
5661         * docs/gst/gstreamer-sections.txt:
5662         * docs/gst/tmpl/gstplugin.sgml:
5663         * docs/libs/gstreamer-libs-sections.txt:
5664         * docs/libs/tmpl/gstcontrol.sgml:
5665         * gst/gstbuffer.h:
5666         * gst/gsttag.h:
5667         * gst/gstvalue.c:
5668           added docs for the TAG defines
5669
5670 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5671
5672         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
5673           Only unref entry if there is an entry.
5674
5675 2005-01-17  Wim Taymans  <wim@fluendo.com>
5676
5677         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5678         (remove_from_group), (schedule_group), (normalize_group),
5679         (gst_opt_scheduler_iterate):
5680         Also ref/unref decoupled elements before iterating the
5681         group since they are not added to the list of elements.
5682
5683 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5684
5685         * docs/manual/highlevel-components.xml:
5686           Add subtitle/streamselection as new features to playbin.
5687
5688 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5689
5690         * docs/manual/manual.xml:
5691           Re-enable dataaccess docs (oops).
5692
5693 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5694
5695         * docs/pwg/advanced-types.xml:
5696         * docs/random/mimetypes:
5697           Add documentation on libsndfile types (#163309), by Steve Baker
5698           <steve@stevebaker.org>.
5699         * gst/gstelement.c: (gst_element_release_request_pad):
5700           If an element has no explicit function, just remove the pad.
5701
5702 2005-01-17  Luca Ognibene  <luogni@tin.it>
5703
5704         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5705
5706         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
5707           Fix memleak (#163801).
5708
5709 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5710
5711         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
5712           I think this is actually more correct...
5713
5714 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5715
5716         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5717           Another workaround for memory access while destroyed in callback.
5718           Please, someone with refcount knowledge, have a look at this.
5719
5720 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5721
5722         * docs/faq/faq.xml:
5723         * docs/faq/legal.xml:
5724           move the legal Q&A here
5725
5726 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5727
5728         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
5729         (gst_tee_request_new_pad):
5730           Fix negotiation.
5731
5732 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5733
5734         * docs/random/omega/caps2:
5735         * testsuite/caps/caps_strings:
5736           replace framerate aproximations by their real value
5737           (24000/1001, 30000/1001, 60000/1001)
5738           Partially fixes bug #164049
5739
5740 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5741
5742         * docs/gst/Makefile.am:
5743           don't fail on the stupid GstPoptOption
5744
5745 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5746
5747         * gst/gstpad.h:
5748         * gst/gstprobe.c:
5749           allow probes to work on ghost pads by realizing the pad
5750           probe debugging
5751
5752 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5753
5754         * docs/gst/gstreamer-sections.txt:
5755         * docs/gst/tmpl/gstpad.sgml:
5756         * gst/gstpad.c: (gst_pad_set_active_recursive):
5757         * gst/gstpad.h:
5758           Add gst_pad_set_active_recursive().
5759
5760 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5761
5762         * docs/random/release:
5763           updates
5764         * gst/gst_private.h:
5765         * gst/gstinfo.c:
5766         * gst/gstobject.c:
5767           move deep_notify logging to a new category
5768         * gst/gstprobe.c:
5769         * gst/gstprobe.h:
5770           add stuff so bindings can wrap probes
5771
5772 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5773
5774         * gst/gstplugin.c: (gst_plugin_load):
5775           Fix plugin loading if plugin/lib was already loaded. Fixes
5776           #163383
5777
5778 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
5779
5780         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5781
5782         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
5783           Protect plugin loading by a mutex so it's threadsafe. Fixes
5784           #163234.
5785
5786 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5787
5788         * gst/gstevent.c: (_gst_event_copy):
5789           Reference source object when copying events, since it'll be
5790           dereferenced on event dereferencing as well.
5791
5792 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5793
5794         * docs/gst/gstreamer-sections.txt:
5795         * docs/gst/tmpl/gstevent.sgml:
5796         * gst/gstevent.c: (gst_event_new_filler_stamped),
5797         (gst_event_filler_get_duration):
5798         * gst/gstevent.h:
5799           Add two new functions for filler events (which are used to
5800           synchronize streams if one of them is not having any data
5801           for a while) without interrupting the actual data-stream.
5802           Basically a no-op.
5803         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5804         (gst_queue_link_sink), (gst_queue_link_src),
5805         (gst_queue_change_state):
5806           Allow for renegotiation while filled. Required for stream
5807           switching while playing.
5808
5809 2005-01-08  Benjamin Otte  <otte@gnome.org>
5810
5811         * gst/gstelement.c: (gst_element_link_many):
5812           fix up g_return_if_fail's
5813         * po/LINGUAS:
5814         * po/de.po:
5815           add German translation, that was somehow not included
5816
5817 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5818
5819         * docs/random/mimetypes:
5820           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
5821           do not add them to riff-lib as they are not common
5822
5823 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5824
5825         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5826           Check for existence of probe after performing the probe before
5827           re-accessing it to prevent segfaults caused by removal of the
5828           probe in the callback.
5829
5830 2005-01-05  David Schleef  <ds@schleef.org>
5831
5832         * testsuite/registry/Makefile.am:
5833         * testsuite/registry/gst-print-formats.c:
5834         (print_pad_templates_info), (print_element_list),
5835         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
5836         (g_list_uniqify), (get_pad_templates_info),
5837         (get_element_mime_list), (print_mime_list), (main): A little
5838         program that looks through the registry to find elements of
5839         a given type.  Not particularly interesting as a test, except
5840         that there's no other test covering the same area.
5841
5842 2005-01-05  David Schleef  <ds@schleef.org>
5843
5844         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
5845         (fault_handler_sigaction), (fault_spin),
5846         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
5847         in signal.h-type signal handlers by not calling forbidden functions,
5848         including gst_element_set_state().
5849
5850 2005-01-05  David Schleef  <ds@schleef.org>
5851
5852         * gst/gstvalue.h: Mark _gst_reserved[] as private
5853
5854 2005-01-05  David Schleef  <ds@schleef.org>
5855
5856         * gst/gstvalue.c: Fix doc build problem.
5857
5858 2005-01-05  David Schleef  <ds@schleef.org>
5859
5860         * gst/gstvalue.c: Add some documentation
5861
5862 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
5863
5864         * docs/README:
5865           another shell oneliner for empty return value docs
5866         * gst/gstcaps.c:
5867         * gst/gstvalue.c:
5868         * libs/gst/control/dparam.c:
5869           more doc fixes (parameters and return values)
5870
5871 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
5872
5873         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5874
5875         * gst/gstregistry.h:
5876         * gst/registries/gstxmlregistry.c:
5877           Fix macro's for Mingw (fixes #162276).
5878
5879 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
5880
5881         * docs/README:
5882           quick shell oneliner to find undocumented members
5883         * docs/gst/tmpl/gstplugin.sgml:
5884         * docs/gst/tmpl/gstscheduler.sgml:
5885         * docs/gst/tmpl/gstthread.sgml:
5886           more enumtypes cleanup
5887         * gst/gsterror.h:
5888           activated documentation comments, now someone needs to document
5889           the enums :(
5890
5891 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5892
5893         * docs/manual/manual.xml:
5894           Add dataaccess part (doh!).
5895
5896 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5897
5898         * docs/manual/advanced-autoplugging.xml:
5899           Fix typo (intiate -> initiate).
5900
5901 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5902
5903         * docs/random/bbb/streamselection:
5904           Add some notes on how to handle multi-subtitle/-audio streams.
5905
5906 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
5907
5908         * docs/gst/gstreamer-docs.sgml:
5909         * docs/gst/gstreamer-sections.txt:
5910         * docs/gst/tmpl/gstenumtypes.sgml:
5911         * docs/gst/tmpl/gsterror.sgml:
5912         * docs/gst/tmpl/gstevent.sgml:
5913         * docs/gst/tmpl/gstpad.sgml:
5914         * docs/gst/tmpl/gstpadtemplate.sgml:
5915         * docs/gst/tmpl/gstthread.sgml:
5916           removed gstenumtypes section from docs and put all the enums into
5917           their sections
5918
5919 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5920
5921         * gst/gstplugin.c:
5922           document gst_library_load a bit more (riff special case + return
5923           value if already loaded)
5924         * testsuite/bytestream/filepadsink.c:
5925           plugin name is 'gstbytestream', not 'bytestream'
5926
5927 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5928
5929         * docs/random/bbb/subtitles:
5930           Add some first mind rumblings on proper subtitle support.
5931
5932 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
5933
5934         * po/ca.po:
5935         * po/sv.po:
5936           updated translations
5937
5938 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5939
5940         * docs/manual/advanced-dataaccess.xml:
5941           Add section on how to use fakesrc/fakesink/identity in your
5942           application, plus section on how to embed plugins. Also mention
5943           probes.
5944         * docs/manual/appendix-checklist.xml:
5945         * docs/manual/appendix-debugging.xml:
5946         * docs/manual/appendix-gnome.xml:
5947         * docs/manual/appendix-integration.xml:
5948           Debug -> checklist, GNOME -> integration, add sections on Linux,
5949           KDE integration and add other things useful for application
5950           development.
5951         * docs/manual/manual.xml:
5952           Remove some fixmes, update some file pointers.
5953         * docs/pwg/appendix-checklist.xml:
5954           Fix typo.
5955         * docs/pwg/building-boiler.xml:
5956           Remove ugly header and add commented fixme.
5957         * docs/pwg/pwg.xml:
5958           Add fixme.
5959         * examples/manual/Makefile.am:
5960           Add example for added docs.
5961
5962 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5963
5964         * configure.ac:
5965           back to HEAD
5966
5967 === release 0.8.8 ===
5968
5969 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5970
5971         * NEWS:
5972         * RELEASE:
5973         * configure.ac:
5974           Releasing 0.8.8, "I'll Take Care Of You"
5975
5976 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5977
5978         * configure.ac:
5979           second prerelease
5980
5981 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5982
5983         patch by: Wim Taymans
5984
5985         * gst/gstbin.c:
5986           Fix for #159852 - make iterate emission threadsafe
5987
5988 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5989
5990         * docs/faq/cvs.xml:
5991           notes about new fdo account request
5992
5993 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
5994
5995         * docs/gst/gstreamer-docs.sgml:
5996         * docs/gst/tmpl/gstenumtypes.sgml:
5997         * docs/gst/tmpl/gstplugin.sgml:
5998         * docs/libs/gstreamer-libs-docs.sgml:
5999           Added missing short docs. Added ids for navigation.
6000
6001 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6002
6003         * docs/manual/advanced-autoplugging.xml:
6004         * docs/manual/advanced-schedulers.xml:
6005         * docs/manual/advanced-threads.xml:
6006           Rewrites. Remove cothreads, go a bit into opt specifically,
6007           document threads and their gotchas, and do some technical stuff
6008           on autoplugging plus add some working examples. Fixes #157395.
6009         * examples/manual/Makefile.am:
6010           Add typefind/autoplugger example (one that actually works).
6011           Remove queue example since it's a duplicate of the thread one.
6012
6013 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6014
6015         * gst/gstvalue.c: (gst_value_deserialize_string):
6016           use deprecated g_value_set_string_take_ownership to keep compatible
6017           with glib 2.2
6018
6019 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6020
6021         * gst/gstvalue.c: (gst_value_deserialize_string):
6022           revert last patch, only dom a g_utf8_validate now before accepting
6023           the string - caps parsing strips " from strings so we can't rely on
6024           them
6025         * testsuite/caps/value_serialize.c: (test_string_deserialization):
6026           disable a test that tested the above and comment it
6027
6028 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
6029
6030         Patch reviewed by David Schleef  <ds@schleef.org>
6031
6032         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
6033         bug #153882)
6034         * win32/gstenumtypes.h: same
6035
6036 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6037
6038         * gst/gstpad.c: (gst_pad_query):
6039           Do query on realized pad, similar to how convert/send_event handle
6040           this. Also makes sense, since this pad belongs to the function to
6041           which this query will be sent. Fixes #158163.
6042
6043 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
6044
6045         * docs/manual/appendix-programs.xml: fix pipeline to actually work
6046
6047 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
6048
6049         * docs/faq/general.xml: fix pipeline to actually work
6050
6051 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6052
6053         * gst/gstvalue.c: (gst_value_deserialize_string):
6054           check that a simple string that gets deserialized does not contain
6055           invalid characters
6056         * testsuite/caps/value_serialize.c: (test_string_deserialization):
6057           remove a test that tested a wring behaviour
6058
6059 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
6060
6061         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6062
6063         * docs/manual/intro-motivation.xml:
6064           Fix typos.
6065
6066 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
6067
6068         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6069
6070         * docs/gst/tmpl/gstprobe.sgml:
6071           Fix documentation of probe callback - it is supposed to return
6072           FALSE, not TRUE, to remove data from the stream (#159087).
6073
6074 2004-12-16  Daniel Gazard  <dany42@free.fr>
6075
6076         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6077
6078         * gst/gstelementfactory.c: (gst_element_factory_create):
6079           Fix compile failure if compiling without libxml2 support (#149936).
6080
6081 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6082
6083         * docs/manual/advanced-autoplugging.xml:
6084         * docs/manual/highlevel-components.xml:
6085           Move spider from autoplugging to components. Autoplugging is for
6086           internals, not for solutions. ;-).
6087
6088 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6089
6090         * docs/random/ds/0.9-suggested-changes:
6091           Make note on device/location/uri property names.
6092
6093 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6094
6095         * docs/manual/advanced-autoplugging.xml:
6096         * docs/manual/advanced-clocks.xml:
6097         * docs/manual/advanced-interfaces.xml:
6098         * docs/manual/advanced-metadata.xml:
6099         * docs/manual/advanced-position.xml:
6100         * docs/manual/advanced-schedulers.xml:
6101         * docs/manual/advanced-threads.xml:
6102         * docs/manual/appendix-gnome.xml:
6103         * docs/manual/appendix-programs.xml:
6104         * docs/manual/appendix-quotes.xml:
6105         * docs/manual/autoplugging.xml:
6106         * docs/manual/basics-bins.xml:
6107         * docs/manual/basics-data.xml:
6108         * docs/manual/basics-elements.xml:
6109         * docs/manual/basics-helloworld.xml:
6110         * docs/manual/basics-init.xml:
6111         * docs/manual/basics-pads.xml:
6112         * docs/manual/basics-plugins.xml:
6113         * docs/manual/bins-api.xml:
6114         * docs/manual/bins.xml:
6115         * docs/manual/buffers-api.xml:
6116         * docs/manual/buffers.xml:
6117         * docs/manual/clocks.xml:
6118         * docs/manual/components.xml:
6119         * docs/manual/cothreads.xml:
6120         * docs/manual/debugging.xml:
6121         * docs/manual/dparams-app.xml:
6122         * docs/manual/dynamic.xml:
6123         * docs/manual/elements-api.xml:
6124         * docs/manual/elements.xml:
6125         * docs/manual/factories.xml:
6126         * docs/manual/gnome.xml:
6127         * docs/manual/goals.xml:
6128         * docs/manual/helloworld.xml:
6129         * docs/manual/helloworld2.xml:
6130         * docs/manual/highlevel-components.xml:
6131         * docs/manual/highlevel-xml.xml:
6132         * docs/manual/init-api.xml:
6133         * docs/manual/intro-basics.xml:
6134         * docs/manual/intro-motivation.xml:
6135         * docs/manual/intro-preface.xml:
6136         * docs/manual/intro.xml:
6137         * docs/manual/links-api.xml:
6138         * docs/manual/links.xml:
6139         * docs/manual/manual.xml:
6140         * docs/manual/motivation.xml:
6141         * docs/manual/pads-api.xml:
6142         * docs/manual/pads.xml:
6143         * docs/manual/plugins-api.xml:
6144         * docs/manual/plugins.xml:
6145         * docs/manual/programs.xml:
6146         * docs/manual/queues.xml:
6147         * docs/manual/quotes.xml:
6148         * docs/manual/schedulers.xml:
6149         * docs/manual/states-api.xml:
6150         * docs/manual/states.xml:
6151         * docs/manual/threads.xml:
6152         * docs/manual/typedetection.xml:
6153         * docs/manual/win32.xml:
6154         * docs/manual/xml.xml:
6155           Try 2. This time, include a short preface as a "general
6156           introduction", also add code blocks around all code samples
6157           so they get compiled. We still need a way to tell readers
6158           the filename of the code sample. In some cases, don't show
6159           all code in the documentation, but do include it in the generated
6160           code. This allows for focussing on specific bits in the docs,
6161           while still having a full test application available.
6162         * examples/manual/Makefile.am:
6163           Fix up examples for new ADM. Add several of the new examples that
6164           were either added or were missing from the build system.
6165         * examples/manual/extract.pl:
6166           Allow nameless blocks.
6167
6168 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6169
6170         * docs/manual/elements-api.xml:
6171         * docs/manual/helloworld.xml:
6172         * examples/manual/extract.pl:
6173           fix last example.  Add example of adding code blocks that are not
6174           shown in docbook output.
6175
6176 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6177
6178         * docs/manual/dynamic.xml:
6179         * docs/manual/elements-api.xml:
6180         * docs/manual/gnome.xml:
6181         * docs/manual/helloworld2.xml:
6182         * docs/manual/init-api.xml:
6183         * docs/manual/queues.xml:
6184         * docs/manual/threads.xml:
6185         * docs/manual/xml.xml:
6186         * examples/manual/extract.pl:
6187           Make it possible to extract example code from separate blocks.
6188           Should make Ronald happy.
6189
6190 2004-12-15  Wim Taymans  <wim@fluendo.com>
6191
6192         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6193         (remove_from_group), (group_elements_set_visited),
6194         (normalize_group), (gst_opt_scheduler_iterate):
6195         Fix bug where a flag was not updated on a decoupled entry point 
6196         because we were just checking the group element list and decoupled
6197         elements are not in that list..
6198
6199 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6200
6201         * docs/manual/advanced-autoplugging.xml:
6202         * docs/manual/advanced-clocks.xml:
6203         * docs/manual/advanced-dparams.xml:
6204         * docs/manual/advanced-interfaces.xml:
6205         * docs/manual/advanced-metadata.xml:
6206         * docs/manual/advanced-position.xml:
6207         * docs/manual/advanced-schedulers.xml:
6208         * docs/manual/advanced-threads.xml:
6209         * docs/manual/appendix-debugging.xml:
6210         * docs/manual/appendix-gnome.xml:
6211         * docs/manual/appendix-programs.xml:
6212         * docs/manual/appendix-quotes.xml:
6213         * docs/manual/appendix-win32.xml:
6214         * docs/manual/autoplugging.xml:
6215         * docs/manual/basics-bins.xml:
6216         * docs/manual/basics-data.xml:
6217         * docs/manual/basics-elements.xml:
6218         * docs/manual/basics-helloworld.xml:
6219         * docs/manual/basics-init.xml:
6220         * docs/manual/basics-pads.xml:
6221         * docs/manual/basics-plugins.xml:
6222         * docs/manual/bins-api.xml:
6223         * docs/manual/bins.xml:
6224         * docs/manual/buffers-api.xml:
6225         * docs/manual/buffers.xml:
6226         * docs/manual/clocks.xml:
6227         * docs/manual/components.xml:
6228         * docs/manual/cothreads.xml:
6229         * docs/manual/debugging.xml:
6230         * docs/manual/dparams-app.xml:
6231         * docs/manual/dynamic.xml:
6232         * docs/manual/elements-api.xml:
6233         * docs/manual/elements.xml:
6234         * docs/manual/factories.xml:
6235         * docs/manual/gnome.xml:
6236         * docs/manual/goals.xml:
6237         * docs/manual/helloworld.xml:
6238         * docs/manual/helloworld2.xml:
6239         * docs/manual/highlevel-components.xml:
6240         * docs/manual/highlevel-xml.xml:
6241         * docs/manual/init-api.xml:
6242         * docs/manual/intro-motivation.xml:
6243         * docs/manual/intro-preface.xml:
6244         * docs/manual/intro.xml:
6245         * docs/manual/links-api.xml:
6246         * docs/manual/links.xml:
6247         * docs/manual/manual.xml:
6248         * docs/manual/motivation.xml:
6249         * docs/manual/pads-api.xml:
6250         * docs/manual/pads.xml:
6251         * docs/manual/plugins-api.xml:
6252         * docs/manual/plugins.xml:
6253         * docs/manual/programs.xml:
6254         * docs/manual/queues.xml:
6255         * docs/manual/quotes.xml:
6256         * docs/manual/schedulers.xml:
6257         * docs/manual/states-api.xml:
6258         * docs/manual/states.xml:
6259         * docs/manual/threads.xml:
6260         * docs/manual/typedetection.xml:
6261         * docs/manual/win32.xml:
6262         * docs/manual/xml.xml:
6263           First try at rewriting the ADM. Needs lotsamore work, but some
6264           parts might already be somewhat useful.
6265         * docs/pwg/advanced-interfaces.xml:
6266           Remove properties interface, it never actually existed (except for
6267           on my HD...).
6268
6269 2004-12-13  David Schleef  <ds@schleef.org>
6270
6271         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
6272         be NULL (bug #160220).
6273
6274 2004-12-13  David Schleef  <ds@schleef.org>
6275
6276         * configure.ac: remove all mmx stuff, because it's not used.
6277         * docs/random/ds/0.9-suggested-changes: additional notes
6278         * include/Makefile.am: we don't use these anymore
6279         * include/mmx.h: remove
6280         * include/sse.h: remove
6281
6282 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6283
6284         * docs/random/mimetypes:
6285           Add FOURCC code for h264 codec (VSSH)
6286           Add alternate FOURCC codes for h263 related codecs
6287
6288 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
6289
6290         * docs/manual/programs.xml:
6291           Added more gst-launch examples.
6292
6293 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6294
6295         * gst/gstqueue.c: (gst_queue_handle_src_query):
6296           Check for availability again.
6297
6298 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6299
6300         * gst/gstcaps.c: (gst_caps_compare_structures):
6301           Simple caps go first. This has the nice side-effect of fixing an
6302           obscure warning.
6303
6304 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6305
6306         * gst/gstversion.h.in:
6307           Protect header.
6308
6309 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6310
6311         * gst/schedulers/gstoptimalscheduler.c:
6312         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
6313         (gst_opt_scheduler_get_wrapper):
6314           When we're recursing into a chain run, only run the directly
6315           related group, not all queued ones. This will fix a possible
6316           deadlock in chains with more than two groups.
6317
6318 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6319
6320         * autogen.sh:
6321           remove patch if autopoint fails
6322
6323 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6324
6325         * docs/gst/gstreamer-sections.txt:
6326           Document Thomas' addition, fix build, make Luis the sheriff happy.
6327
6328 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
6329
6330         * gst/gstplugin.c:
6331         * gst/gstplugin.h:
6332           add accessor for version field
6333
6334 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6335
6336         submitted by: Luca Ferretti <elle.uca@infinito.it>
6337
6338         * po/LINGUAS:
6339         * po/it.po:
6340           New tranlation added: Italian
6341
6342 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6343
6344         * gst/gstpad.c: (gst_pad_is_negotiated),
6345         (gst_pad_get_negotiated_caps):
6346           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
6347           it doesn't actually check the contents), so be sure to hand it
6348           a RealPad else we'll crash.
6349
6350 2004-12-03  Wim Taymans  <wim@fluendo.com>
6351
6352         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
6353         (gst_queue_link), (gst_queue_handle_src_query):
6354         Reverted to 1.110 until this makes the testsuite and various
6355         apps work.
6356
6357 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
6358
6359         * docs/upload.mak: fix included CVS conflict strings
6360
6361 2004-12-01  William Jon McCann  <mccann@jhu.edu>
6362
6363         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6364
6365         * gst/gstelement.c: (gst_element_error_full):
6366           Use g_error_new_literal because error text may have
6367           percentage signs in it. Fixes #160019.
6368
6369 2004-12-01  Benjamin Otte  <otte@gnome.org>
6370
6371         * gst/elements/gstbufferstore.c:
6372         (gst_buffer_store_add_buffer_func):
6373           don't try to make subbuffers bigger than they can be. (fixes
6374           #159970)
6375
6376 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6377
6378         * docs/gst/gstreamer-sections.txt:
6379         * docs/gst/tmpl/gstvalue.sgml:
6380           Add new function to docs to fix build.
6381
6382 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6383
6384         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
6385         * gst/gstpad.c: (_gst_pad_default_fixate_value),
6386         (_gst_pad_default_fixate_foreach):
6387         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
6388         * gst/gstvalue.h:
6389           Deprecate _type_is_fixed, use _value_is_fixed instead, since
6390           in some cases (arrays), the fixedness depends on the content.
6391         * gst/gstqueue.c: (gst_queue_handle_src_query):
6392           Check for availability before doing something.
6393
6394 2004-11-29  Wim Taymans  <wim@fluendo.com>
6395
6396         * testsuite/threads/Makefile.am:
6397         * testsuite/threads/signals.c: (gst_test_get_type),
6398         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
6399         (gst_test_set_property), (gst_test_get_property),
6400         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
6401         (gst_test_do_prop), (run_thread), (main):
6402         Added a bunch of testcases that show threadsafety bugs in glib.
6403
6404 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
6405
6406         * docs/manual/programs.xml:
6407           Added a first batch of gst-launch examples, as provided by Ronald
6408           and others from the devel-mlist
6409
6410 2004-11-28  Benjamin Otte  <otte@gnome.org>
6411
6412         * gst/gstelement.c: (gst_element_negotiate_pads):
6413           simplify
6414         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
6415         (gst_value_serialize_string), (gst_value_deserialize_string):
6416           add unwrapping of previously wrapped strings. Fix bug in wrapping
6417           while at it.
6418         * testsuite/caps/value_serialize.c: (test1),
6419         (test_string_serialization), (test_string_deserialization), (main):
6420           add tests for string (de)serialization
6421
6422 2004-11-26  Wim Taymans  <wim@fluendo.com>
6423
6424         * testsuite/threads/159566.c: (object_deep_notify), (main):
6425         * testsuite/threads/Makefile.am:
6426         Added testsuite to show bug #159566
6427
6428 2004-11-25  Wim Taymans  <wim@fluendo.com>
6429
6430         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
6431         (gst_thread_child_state_change), (gst_thread_main_loop):
6432         Ref the thread object in the GThread mainloop. Break out of the
6433         thread mainloop if it holds the last ref. This properly exits
6434         the threads when disposing the thread from its own context. It
6435         also avoids possible deadlocks in the dispose function.
6436
6437 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
6438
6439         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
6440         it is necessary to wait.
6441
6442 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6443
6444         * docs/pwg/building-boiler.xml:
6445           Make description somewhat clearer.
6446
6447 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6448
6449         * docs/upload.mak:
6450           Apparently docs changed location on FDO's server.
6451
6452 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6453
6454         * docs/pwg/appendix-checklist.xml:
6455           Add some random notes on things to check when writing an element.
6456           This list can be extended as people see fit.
6457
6458 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
6459
6460         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
6461         (gst_queue_link_src): Allow for renegotiating the caps of the sink
6462         pad. The queue will now wait until it is empty and forward the new
6463         caps to the source.
6464         * gst/gstbin.c (gst_bin_set_element_sched)
6465         (gst_bin_unset_element_sched): Make sure that all elements and
6466         links are registered and unregistered with the scheduler exactly
6467         once. This elaborates on a fix by Benjamin Otte, but
6468         guarantees that decoupled elements are also registered.
6469
6470 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
6471
6472         * docs/manual/quotes.xml:
6473           add a quote
6474         * configure.ac:
6475         * gst/gst.c:
6476         * gst/gstinfo.c:
6477           add LIBDIR and move init message higher up so it's at the start
6478
6479 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
6480
6481         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
6482         * gstreamer.spec.in: add fair
6483
6484 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6485
6486         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6487         * gst/elements/gstidentity.c: (gst_identity_class_init):
6488           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
6489           <teuf@gnome.org> (#157263).
6490         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
6491         (gst_type_find_handle_src_query):
6492           Subtract size of internally stored data from position queries.
6493
6494 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
6495
6496         * gst/schedulers/fairscheduler.c:
6497         * gst/schedulers/faircothreads.c:
6498         * gst/schedulers/faircothreads.h:
6499         New cothread based scheduler: Fair scheduler.
6500         * gst/schedulers/gthread-cothreads.h: 
6501         Add the standard #if around the whole file.
6502         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
6503         compilation of the functions defined in this file. This is
6504         necessary to be able to use this file as a normal header.
6505         * gst/schedulers/Makefile.am: Add compiling support for fair
6506         scheduler.
6507         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
6508         scheduler cothreads layer from documentation generation.
6509
6510 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6511
6512         * gst/autoplug/gstspideridentity.c:
6513         (gst_spider_identity_sink_loop_type_finding):
6514           Don't crash if that function is not implemented.
6515
6516 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6517
6518         * docs/pwg/advanced-types.xml:
6519           Another typo.
6520
6521 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6522
6523         * docs/pwg/intro-preface.xml:
6524           Hm, ok, so the brackets weren't really useful...
6525         * docs/pwg/other-ntoone.xml:
6526           Fix embarassing typo.
6527
6528 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6529
6530         * docs/pwg/intro-preface.xml:
6531           Rewrite preface.
6532
6533 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6534
6535         * docs/pwg/advanced-scheduling.xml:
6536         * docs/pwg/advanced-tagging.xml:
6537         * docs/pwg/advanced-types.xml:
6538         * docs/pwg/building-boiler.xml:
6539         * docs/pwg/building-chainfn.xml:
6540         * docs/pwg/building-signals.xml:
6541         * docs/pwg/building-state.xml:
6542         * docs/pwg/building-testapp.xml:
6543         * docs/pwg/intro-basics.xml:
6544         * docs/pwg/other-manager.xml:
6545         * docs/pwg/other-source.xml:
6546           Typo fixes.
6547         * docs/pwg/other-manager.xml:
6548           Add some first content. No example code yet.
6549         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
6550           Remove double newlines.
6551
6552 2004-11-04  Wim Taymans  <wim@fluendo.com>
6553
6554         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6555         (remove_from_group), (normalize_group), (group_migrate_connected),
6556         (gst_opt_scheduler_iterate):
6557         * testsuite/schedulers/.cvsignore:
6558         * testsuite/schedulers/Makefile.am:
6559         * testsuite/schedulers/queue_link.c: (main):
6560         Added testcase for scheduler segfault.
6561         Fix scheduler segfault when removing a decoupled
6562         entry point as the last element from a group.
6563
6564 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6565
6566         * gst/gstmarshal.list: add missing marshaller, fixes build
6567
6568 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6569
6570         * docs/random/signal: added notes about using BOXED for GstBuffer
6571         signal marshallers, not POINTER
6572
6573 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6574
6575         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6576         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
6577         POINTER=>BOXED changes to marshal GstBuffers
6578
6579 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6580
6581         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
6582         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
6583
6584 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
6585
6586         * docs/gst/gstreamer-sections.txt:
6587         * docs/gst/tmpl/gstcaps.sgml:
6588         * docs/gst/tmpl/gsterror.sgml:
6589         * docs/gst/tmpl/gstinfo.sgml:
6590         * docs/gst/tmpl/gstmacros.sgml:
6591         * docs/gst/tmpl/gstutils.sgml:
6592         * docs/random/ensonic/interfaces.txt:
6593         * gst/gstinfo.h:
6594           added some more docs, removed two obsolete defines
6595
6596 2004-11-02  Kjartan Maraas <as at gnome.org>
6597
6598         reviewed by: Wim Taymans, Ronald Bultje.
6599
6600         * gst/cothreads.c: (cothread_create):
6601         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
6602         (gst_bin_child_state_change_func):
6603         * gst/gstbuffer.c: (gst_buffer_span):
6604         * gst/gstelement.c: (gst_element_get_index),
6605         (gst_element_get_event_masks), (gst_element_get_query_types),
6606         (gst_element_get_formats):
6607         * gst/gsterror.c: (_gst_core_errors_init),
6608         (_gst_library_errors_init), (_gst_resource_errors_init),
6609         (_gst_stream_errors_init):
6610         * gst/gstobject.c: (gst_object_default_deep_notify):
6611         * gst/gstpad.c: (gst_pad_get_event_masks),
6612         (gst_pad_get_internal_links_default):
6613         * gst/gstplugin.c: (gst_plugin_register_func),
6614         (gst_plugin_get_module):
6615         * gst/gststructure.c: (gst_structure_get_string),
6616         (gst_structure_get_abbrs), (gst_structure_from_abbr),
6617         (gst_structure_to_abbr):
6618         * gst/gstutils.c: (gst_print_element_args):
6619         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6620         (setup_group_scheduler), (gst_opt_scheduler_iterate):
6621         Aplied part of patch #157127: Cleanup of issues reported by 
6622         sparse.
6623         Also do not try to use cothreads when there is no cothread
6624         context yet.
6625
6626 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
6627
6628         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6629         (gst_opt_scheduler_iterate):
6630         Applied patch #154061. Running a pipeline in which an element 
6631         calls GST_ELEMENT_ERROR in the chain function, the opt 
6632         scheduler doesn't unref the chain so it never gets freed.
6633
6634 2004-11-02  Wim Taymans  <wim@fluendo.com>
6635
6636         * gst/gststructure.c: (gst_structure_get_abbrs),
6637         (gst_structure_from_abbr), (gst_structure_to_abbr):
6638         Remove that ugly if-then thing in the code that converts
6639         between strings and types.
6640
6641 2004-11-02  Wim Taymans  <wim@fluendo.com>
6642
6643         * gst/gstscheduler.c: (gst_scheduler_add_element),
6644         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
6645         Aplied clock distribution patch, this should fix bug
6646         #148787.
6647
6648 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
6649
6650         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
6651
6652         * po/LINGUAS:
6653         * po/nb.po:
6654           Added Norwegian Bokmaal translation
6655
6656 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6657
6658         * tools/gst-inspect.c: (print_signal_info):
6659           print signal arguments as pointers if they are
6660
6661 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
6662
6663         * docs/pwg/building-boiler.xml:
6664           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
6665
6666 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6667
6668         * gst/parse/parse.l:
6669         * testsuite/parse/parse1.c: (main):
6670         Since parse can do 'element name=a:b' make 'a:b.' work as
6671         well. 
6672         Added testcase to verify fix.
6673
6674 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6675
6676         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
6677         Use the realpad when printing the direction.
6678         Add extra \n when printing extensions of typefind factories.
6679
6680 2004-10-13  David Schleef  <ds@schleef.org>
6681
6682         * examples/manual/Makefile.am: $< isn't portable in Makefile
6683         rules.
6684
6685 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
6686
6687         * docs/gst/tmpl/gstobject.sgml:
6688         * docs/gst/tmpl/gstplugin.sgml:
6689         * docs/gst/tmpl/gstpluginfeature.sgml:
6690         * docs/gst/tmpl/gstregistry.sgml:
6691         * docs/gst/tmpl/gstversion.sgml:
6692         * gst/gstbin.c:
6693           more api documentation
6694         * gst/gstplugin.c: (gst_plugin_register_func),
6695         (gst_plugin_check_file), (gst_plugin_load_file):
6696           better error signaling and logging
6697
6698 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6699
6700         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
6701           Subtract current queue contents from position queries.
6702
6703 2004-10-11  Johan Dahlin  <johan@gnome.org>
6704
6705         * gst/gsturi.c (gst_uri_get_location): unescape string
6706         (gst_uri_construct): escape string.
6707
6708 2004-10-11  Benjamin Otte  <otte@gnome.org>
6709
6710         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
6711         (gst_pad_try_set_caps_nonfixed):
6712           allow renegotiation of unconnected pads (as inside spider). Simply
6713           return OK if unconnected - mimic try_set_caps there.
6714
6715 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6716
6717         * gst/gstbin.c: (gst_bin_sync_children_state):
6718           Add missing break.
6719
6720 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6721
6722         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
6723         Set element to EOS before sending EOS event
6724
6725 2004-10-08  Wim Taymans  <wim at fluendo dot com>
6726
6727         * gst/elements/gsttypefindelement.c:
6728         (gst_type_find_element_handle_event):
6729         Handle EOS events when doing the transition from
6730         typefind to data passing. This should fix the
6731         infinite loops in short files.
6732
6733 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6734
6735         * gst/gstthread.c: (gst_thread_change_state),
6736         (gst_thread_child_state_change):
6737         Make sure no iteration happens while performing
6738         the state change as it could mess up the internal
6739         consistency of the thread state.
6740
6741 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6742
6743         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
6744         (gst_thread_change_state), (gst_thread_child_state_change):
6745         Do not try to grab the iterate lock in the state change method
6746         when we are in the same thread as the iterate or else we
6747         could deadlock. Some other cleanups.
6748
6749 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6750
6751         * configure.ac:
6752           bump nano to cvs
6753
6754 === release 0.8.7 ===
6755
6756 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6757
6758         * configure.ac:
6759         * NEWS:
6760         * RELEASE:
6761         * configure.ac:
6762           releasing 0.8.7, "A Cruise"
6763
6764 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6765
6766         * docs/random/mimetypes:
6767         Add an entry for Sony ATRAC3 audio format with mime-type
6768         used by rmdemux et riff-read
6769
6770 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6771
6772         * gst/elements/gsttypefindelement.c: (stop_typefinding):
6773         Push the buffer store instead of clearing it in case that
6774         the stream is not seekable.
6775
6776 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6777
6778         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
6779         (gst_thread_main_loop):
6780         Lock the iteration and the state change so that automatic
6781         negotiation and fixation does not happen at the same time
6782         as the in stream negotiation.
6783
6784 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6785
6786         * configure.ac:
6787           bump nano to cvs
6788
6789 === release 0.8.6 ===
6790
6791 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6792
6793         * configure.ac:
6794         * NEWS:
6795         * RELEASE:
6796         * configure.ac:
6797           releasing 0.8.6, "Narc"
6798
6799 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6800
6801         * configure.ac:
6802           prerel bump
6803
6804 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6805
6806         patch by: Steve Lhomme
6807
6808         * gst/elements/gstfakesrc.c:
6809         * gst/elements/gstidentity.c:
6810         * gst/gstthread.c:
6811           Fix for #153881
6812
6813 2004-10-01  Wim Taymans  <wim at fluendo dot com>
6814
6815         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
6816         Fix threadsafety of the crc checking function.
6817
6818 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6819
6820         patch by: Ronald Bultje
6821
6822         * gst/elements/gsttypefindelement.c: (stop_typefinding),
6823         (gst_type_find_element_handle_event),
6824         (gst_type_find_element_chain):
6825         * gst/elements/gsttypefindelement.h:
6826          #153657.
6827          Filter out discont event from seekable sources when typefind
6828          asks them to seek.  Fixes typefind with demuxers for
6829          avi, asf and matroska.
6830
6831 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6832
6833         * docs/gst/gstreamer-sections.txt:
6834         * gst/gstcaps.c:
6835         * gst/gstcaps.h:
6836         * gst/gstpad.c:
6837           Revert preferred caps: (#147789)
6838
6839 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
6840
6841         * win32/dirent.c:
6842           fix a memory leak
6843
6844 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6845
6846         * configure.ac:
6847           bump for prerelease
6848
6849 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6850
6851         * docs/Makefile.am:
6852         * docs/manual/elements-api.xml:
6853           restructure so that common stuff is shown first
6854         * docs/manual/init-api.xml:
6855           convert to examples
6856         * docs/manual/manual.xml:
6857         * docs/manuals.mak:
6858         * docs/url.entities:
6859           link to API on the website, possibly override later in build
6860         * examples/manual/.cvsignore:
6861           ignore more
6862         * examples/manual/Makefile.am:
6863           add more examples
6864         * examples/manual/extract.pl:
6865           error out on failure
6866
6867 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6868
6869         * docs/gst/tmpl/gstthread.sgml:
6870         * docs/manual/init-api.xml:
6871         * examples/manual/Makefile.am:
6872           convert two code bits to examples
6873
6874 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6875
6876         * gst/gstelement.c: (gst_element_change_state):
6877           Well, actually, I was about to remove this insane assert when
6878           I noticed Wim already did that. A warning is nice so we can
6879           fix actual ugs (using --g-fatal-warnings and backtraces), so
6880           I added that instead.
6881
6882 2004-09-06  Wim Taymans  <wim@fluendo.com>
6883
6884         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
6885         (gst_element_threadsafe_properties_post_run),
6886         (gst_element_set_state), (gst_element_change_state):
6887         Added extra refcounting around various places. 
6888
6889 2004-09-06  Wim Taymans  <wim@fluendo.com>
6890
6891         * gst/gstpad.c: (gst_pad_link_call_link_functions):
6892         Fix debug info.
6893
6894 2004-09-06  Wim Taymans  <wim@fluendo.com>
6895
6896         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6897         (remove_from_group):
6898         Some more debug info.
6899
6900 2004-09-03  Wim Taymans  <wim@fluendo.com>
6901
6902         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
6903         (gst_fakesrc_init), (gst_fakesrc_set_clock),
6904         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
6905         (gst_fakesrc_get), (gst_fakesrc_change_state):
6906         * gst/elements/gstfakesrc.h:
6907         * gst/elements/gstidentity.c: (gst_identity_class_init),
6908         (gst_identity_init), (gst_identity_chain),
6909         (gst_identity_set_property), (gst_identity_get_property),
6910         (gst_identity_change_state):
6911         * gst/elements/gstidentity.h:
6912         Added datarate properties to limit the datarate.
6913
6914 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6915
6916         * gst/autoplug/gstspider.c: (plugin_init):
6917           don't set a rank. We don't want to autoplug by inserting spiders.
6918
6919 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6920
6921         * gst/autoplug/gstspider.c: (gst_spider_class_init),
6922         (gst_spider_identity_plug):
6923           add a template for spider's sink
6924         * gst/gst.c: (gst_register_core_elements):
6925           queue's rank should be NULL, we don't want spider to add it.
6926
6927 2004-08-18  David Schleef  <ds@schleef.org>
6928
6929         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
6930         * docs/libs/Makefile.am: same
6931         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
6932         * docs/random/ds/0.9-planning: random additions
6933         * docs/random/ds/0.9-suggested-changes: same
6934         * gst/gstxml.h: remove vestigal GstXMLNs definition
6935
6936         Preferred caps: (#147789)
6937         * docs/gst/gstreamer-sections.txt: Add symbols
6938         * docs/gst/tmpl/gstcaps.sgml: Add symbols
6939         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
6940         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
6941         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
6942         (gst_caps_get_preferred), (gst_caps_set_preferred),
6943         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
6944         (gst_caps_use_preferred): Handle caps preferences
6945         * gst/gstcaps.h: Add caps preferences
6946         * gst/gstpad.c: (gst_pad_link_get_preferred),
6947         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
6948         (gst_pad_renegotiate), (gst_pad_guess_preferred),
6949         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
6950         negotiation.
6951
6952 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6953
6954         * gst/autoplug/gstspideridentity.c:
6955         (gst_spider_identity_request_new_pad):
6956         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
6957         (gst_aggregator_init):
6958         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
6959         (gst_fakesink_init):
6960         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
6961         (gst_fakesrc_init):
6962         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
6963         (gst_fdsink_init):
6964         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
6965         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
6966         (gst_filesink_init):
6967         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
6968         (gst_filesrc_init):
6969         * gst/elements/gstidentity.c: (gst_identity_base_init),
6970         (gst_identity_init):
6971         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
6972         (gst_multifilesrc_init):
6973         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
6974         (gst_pipefilter_init):
6975         * gst/elements/gststatistics.c: (gst_statistics_base_init),
6976         (gst_statistics_init):
6977         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
6978         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
6979           s/gst_pad_new/&_from_template/
6980           register pad templates in the base_init function
6981           add static pad template definitions
6982
6983 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6984
6985         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
6986         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
6987         * testsuite/refcounting/pad.c: (main):
6988         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
6989           s/gst_pad_new/&_from_template/
6990           prepare deprecation of gst_pad_new
6991
6992 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
6993
6994         patch by: Luca Ognibene <skaboy81@virgilio.it>
6995
6996         * gst/gstcaps.c:
6997         * gst/gstelement.c:
6998         * gst/gstpad.c:
6999         * gst/gstxml.c:
7000           fix memleaks.  Fixes #150001
7001
7002 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7003
7004         * docs/random/ds/0.9-suggested-changes:
7005           add notes - mostly about pad templates
7006
7007 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
7008
7009         * win32/GStreamer.vcproj:
7010           temporary locale files are .gmo not .mo
7011
7012 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7013
7014         * configure.ac: bump nano to cvs
7015
7016 === release 0.8.5 ===
7017
7018 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7019
7020         * configure.ac:
7021           releasing 0.8.5, "Stuttgart"
7022         * NEWS:
7023         * RELEASE:
7024         * configure.ac:
7025         * docs/random/release:
7026           updates for release
7027
7028 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7029
7030         patch by: Wim Taymans (wim@fluendo.com)
7031
7032         * gst/gstbuffer.c:
7033         * gst/gstindex.h:
7034         * libs/gst/dataprotocol/dataprotocol.c:
7035           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
7036
7037 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7038
7039         * Makefile.am:
7040         * win32/MANIFEST:
7041           add win32 dir to the build.  Fixes #149981.
7042
7043 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7044
7045         * configure.ac:
7046           bump libtool versioning
7047         * gst/gststructure.c:
7048           mark function as static
7049         * po/af.po:
7050         * po/az.po:
7051         * po/ca.po:
7052         * po/cs.po:
7053         * po/en_GB.po:
7054         * po/fr.po:
7055         * po/nl.po:
7056         * po/sq.po:
7057         * po/sr.po:
7058         * po/sv.po:
7059         * po/tr.po:
7060         * po/uk.po:
7061           translations update
7062         * win32/README.txt:
7063           trademark protection
7064
7065 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7066
7067         * configure.ac:
7068           fix GST_ORIGIN
7069           set GST_PACKAGE to source, and distinguish between release and other
7070         * tools/gst-inspect.c:
7071           print out plugin an element factory is part of so we see this info
7072
7073 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7074
7075         * docs/gst/gstreamer-sections.txt:
7076         * docs/gst/tmpl/gstbuffer.sgml:
7077         * docs/gst/tmpl/gstschedulerfactory.sgml:
7078           reorder docs a little, make GstBuffer's more sensible.
7079         * gst/gstbuffer.h:
7080           API: added GST_BUFFER_FLAG_DELTA_UNIT
7081         * gst/gstscheduler.c:
7082           comment API addition
7083
7084 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7085
7086         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
7087           work with non-regular files that can be mmapped (like /dev/zero)
7088         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
7089           get rid of typefinds that require a seek when we can't seek instead
7090           of trying them over and over again
7091         * tools/gst-launch.c: (idle_func), (error_cb), (main):
7092           return non-zero failure value when the pipeline was interrupted or
7093           an error occurred
7094
7095 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
7096
7097         * win32/config.h:
7098         * win32/GStreamer.vcproj:
7099           compile and install the locales
7100
7101 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
7102
7103         * gst/gstvalue.c:
7104           fix a possible memory leak under Windows
7105
7106 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
7107
7108         * win32/GStreamer.vcproj:
7109           fix a memory leak that occured under Windows
7110         * win32/gstreamer.def:
7111           add gst_scheduler_register
7112
7113 2004-08-11  Benjamin Otte  <otte@gnome.org>
7114
7115         * docs/gst/gstreamer-sections.txt:
7116         * gst/gstscheduler.c: (gst_scheduler_register):
7117         * gst/gstscheduler.h:
7118           API:
7119           add gst_scheduler_register shortcut similar to gst_element_register
7120         * gst/schedulers/entryscheduler.c: (plugin_init):
7121         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
7122         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
7123           use it
7124
7125 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
7126
7127         * gst/gstvalue.h:
7128           fix a memory leak that occured under Windows
7129
7130 2004-08-10  Colin Walters  <walters@redhat.com>
7131
7132         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
7133         Don't use O_EXCL to open temporary registry.  It will prevent
7134         registry creation if a temporary one already exists, which
7135         is unnecessary.
7136
7137 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7138
7139         * docs/gst/gstreamer-sections.txt:
7140         * docs/gst/tmpl/gstvalue.sgml:
7141           remove some valuable stuff from the documentation due to the use of GST_EXPORT
7142
7143 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7144
7145         * win32/gstbytestream.vcproj:
7146         * win32/gstelements.vcproj:
7147         * win32/gstgetbits.vcproj:
7148         * win32/gst-inspect.vcproj:
7149         * win32/gst-launch.vcproj:
7150         * win32/gstoptimalscheduler.vcproj:
7151         * win32/GStreamer.vcproj:
7152         * win32/gst-register.vcproj:
7153         * win32/gstspider.vcproj:
7154           update the include and lib dirs to fit standard libraries as
7155           described in the Win32 manual
7156
7157 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7158
7159         * win32/config.h:
7160         * win32/gstversion.h:
7161           enable NLS again, push the version number for the coming 0.8.5 release
7162
7163 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7164
7165         * gst/gstvalue.h:
7166           export gst_type_XXX for windows DLLs
7167
7168 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7169
7170         * docs/faq/gst-uninstalled:
7171           fix PKG_CONFIG_PATH and PYTHONPATH
7172         * gst/schedulers/Makefile.am:
7173           cleanup
7174         * libs/gst/bytestream/bytestream.c:
7175           remove newline
7176         * po/LINGUAS:
7177         * po/sq.po:
7178           adding Albanian translation (Laurent Dhima)
7179         * po/cs.po:
7180           updated
7181
7182 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7183
7184         * po/ca.po:
7185         * po/sv.po:
7186           updated translations
7187
7188 2004-08-04  Benjamin Otte  <otte@gnome.org>
7189
7190         * tests/mass_elements.c: (main):
7191           allow specifying src and sink element explicitly, so I can test
7192           videotestsrc instead of fakesrc
7193
7194 2004-08-04  Benjamin Otte  <otte@gnome.org>
7195
7196         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
7197         (gst_structure_id_empty_new), (gst_structure_empty_new),
7198         (gst_structure_copy):
7199           add gst_structure_id_empty_new_with_size to allow preallocating
7200           value array sizes. Use this in gst_structure_copy to get rid of
7201           reallocs.
7202           don't do quark=>string=>quark when copying structures
7203
7204 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
7205
7206         * docs/manual/win32.xml:
7207         * win32/README.txt:
7208           update documentation with the clean version of dependencies
7209
7210 2004-08-03  Benjamin Otte  <otte@gnome.org>
7211
7212         * gst/schedulers/entryscheduler.c:
7213         (gst_entry_scheduler_remove_element):
7214           fix for GST_DISABLE_DEBUG
7215         * tools/gst-launch.c: (print_tag):
7216           fixes for G_DISABLE_ASSERT
7217
7218 2004-08-03  Benjamin Otte  <otte@gnome.org>
7219
7220         * gst/gst.c: (gst_register_core_elements):
7221           fix for G_DISABLE_ASSERT
7222         * gst/gstinfo.c: (__gst_in_valgrind):
7223           add for GST_DISABLE_DEBUG
7224
7225 2004-08-03  Benjamin Otte  <otte@gnome.org>
7226
7227         * gst/parse/parse.l:
7228           fix for G_DISABLE_ASSERT
7229
7230 2004-08-03  Wim Taymans  <wim@fluendo.com>
7231
7232         * gst/gstbin.c: (gst_bin_get_type),
7233         (gst_bin_child_state_change_func):
7234         * gst/gstthread.c: (gst_thread_change_state):
7235         Backported some debug logging from a reverted patch
7236         Don't try to destroy the thread twice. Added some more
7237         debugging in GstThread. Unlock and signal even if we
7238         are in the thread context.
7239
7240 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7241
7242         * po/uk.po:
7243           updated translation
7244
7245 2004-07-30  David Schleef  <ds@schleef.org>
7246
7247         * gst/gstatomic_impl.h: Enable atomic code for x86_64
7248
7249 2004-07-29  David Schleef  <ds@schleef.org>
7250
7251         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
7252         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
7253
7254 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
7255
7256         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7257         (gst_bin_add_func), (gst_bin_remove_func),
7258         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
7259         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
7260         (gst_bin_change_state_norecurse), (gst_bin_dispose),
7261         (gst_bin_sync_children_state):
7262         * gst/gstbin.h:
7263         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
7264         (gst_thread_change_state):
7265         * testsuite/states/Makefile.am:
7266           revert state change patches as agreed so we can rework them
7267           gradually
7268
7269 2004-07-29  Benjamin Otte  <otte@gnome.org>
7270
7271         * libs/gst/control/Makefile.am:
7272           link to libgstreamer (fixes Debian bug 262019, see
7273           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
7274
7275 2004-07-29  Wim Taymans  <wim@fluendo.com>
7276
7277         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
7278         (check_from_fraction_convert), (transform_test), (main):
7279         Make the test less pedantic about float roundoff errors.
7280
7281 2004-07-29  Benjamin Otte  <otte@gnome.org>
7282
7283         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
7284         (gst_filesrc_srcpad_event):
7285           make seek events to before start/after end of file not fail, but
7286           seek to start/end instead
7287         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
7288           add more output
7289
7290 2004-07-29  Benjamin Otte  <otte@gnome.org>
7291
7292         * gst/gstpad.c: (gst_pad_set_explicit_caps):
7293           check that caps are fixed
7294         * gst/gstpad.c: (gst_pad_template_new):
7295           don't try to simplify caps, costs too much time on gst_init
7296         * gst/gstplugin.c: (gst_plugin_add_feature):
7297           G_ERROR if features are added twice
7298         * gst/gsttypefind.c: (gst_type_find_register):
7299         * gst/gstelementfactory.c: (gst_element_register):
7300           don't add features twice
7301         * docs/random/ds/0.9-suggested-changes:
7302           add note about possible gst_init optimization
7303
7304 2004-07-28  David Schleef  <ds@schleef.org>
7305
7306         * testsuite/elements/Makefile.am:
7307         * testsuite/elements/struct_i386.h:
7308         * testsuite/elements/struct_size.c: (main):  A little test
7309         to keep distcheck from working if someone changes a structure
7310         size accidentally.
7311
7312 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7313
7314         * docs/libs/Makefile.am:
7315         * docs/libs/gstreamer-libs-docs.sgml:
7316         * docs/libs/gstreamer-libs-sections.txt:
7317         * docs/libs/tmpl/gstbytestream.sgml:
7318         * docs/libs/tmpl/gstcontrol.sgml:
7319         * docs/libs/tmpl/gstdataprotocol.sgml:
7320         * docs/libs/tmpl/gstgetbits.sgml:
7321         * libs/gst/bytestream/Makefile.am:
7322         * libs/gst/bytestream/bytestream.c:
7323         * libs/gst/bytestream/bytestream.h:
7324         * libs/gst/control/Makefile.am:
7325         * libs/gst/dataprotocol/Makefile.am:
7326         * libs/gst/getbits/Makefile.am:
7327         * libs/gst/getbits/getbits.h:
7328           various doc and style fixes, adding bytestream to libs docs.
7329
7330 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7331
7332         * docs/gst/gstreamer-docs.sgml:
7333         * docs/libs/Makefile.am:
7334         * docs/libs/gstreamer-libs-docs.sgml:
7335         * docs/libs/gstreamer-libs-sections.txt:
7336         * libs/gst/control/dparam.c:
7337           more doc fixes.  gst-libs docs now build the same way as gst.
7338
7339 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7340
7341         * configure.ac:
7342         * testsuite/Makefile.am:
7343         * testsuite/bins/Makefile.am:
7344         * testsuite/caps/Makefile.am:
7345         * testsuite/cleanup/Makefile.am:
7346         * testsuite/clock/Makefile.am:
7347         * testsuite/debug/Makefile.am:
7348         * testsuite/dlopen/Makefile.am:
7349         * testsuite/dynparams/Makefile.am:
7350         * testsuite/elements/.cvsignore:
7351         * testsuite/elements/Makefile.am:
7352         * testsuite/enumcaps/Makefile.am:
7353         * testsuite/enumcaps/enumcaps.c:
7354         * testsuite/ghostpads/Makefile.am:
7355         * testsuite/indexers/Makefile.am:
7356         * testsuite/negotiation/Makefile.am:
7357         * testsuite/parse/Makefile.am:
7358         * testsuite/plugin/Makefile.am:
7359         * testsuite/refcounting/Makefile.am:
7360         * testsuite/schedulers/.cvsignore:
7361         * testsuite/states/Makefile.am:
7362         * testsuite/tags/Makefile.am:
7363         * testsuite/threads/Makefile.am:
7364           fold enumcaps into caps dir
7365           clean up Makefile.am's for testsuite
7366
7367 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7368
7369         * docs/gst/Makefile.am:
7370         * docs/libs/Makefile.am:
7371           clean up docs build.  Fixes needless rebuilding of template files.
7372
7373 2004-07-28  Wim Taymans  <wim@fluendo.com>
7374
7375         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
7376         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
7377         Make sure that a bin state change tries to keep the children
7378         in sync. 
7379         Added debug logging to the thread.
7380
7381 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
7382
7383         * win32/GStreamer.vcproj:
7384         * win32/gstreamer.def:
7385           more exports for the plugins
7386
7387 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
7388
7389         * win32/gstgetbits.vcproj:
7390         * win32/gstgetbits.def:
7391         * win32/msvc71.sln:
7392           add support for the getbits plugin
7393
7394 2004-07-27  Wim Taymans  <wim@fluendo.com>
7395
7396         * gst/gstvalue.c: (gst_value_transform_double_fraction),
7397         (gst_value_transform_fraction_double), (_gst_value_initialize):
7398         * testsuite/caps/Makefile.am:
7399         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
7400         (check_from_fraction_convert), (transform_test), (main):
7401         Added transform functions between double and fraction.
7402         Added testcase to verify transforms
7403
7404 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7405
7406         * win32/GStreamer.vcproj:
7407           rename GStreamer-0.8.lib to libgstreamer.lib
7408
7409 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7410
7411         * win32/gstelements.vcproj:
7412         * win32/gstoptimalscheduler.vcproj:
7413           fixes for the Release build
7414
7415 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7416
7417         * win32/config.h:
7418           update the version number
7419
7420 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7421
7422         * win32/GStreamer.vcproj:
7423           add gstinterface to the build
7424
7425 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7426
7427         * win32/gstreamer.def:
7428           add many definitions needed by plugins,
7429           GST_CAT_DEFAULT only available in the Debug build ?
7430
7431 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7432
7433         * gst/gstelement.c: (gst_element_set_eos_recursive):
7434           various whitespace fixes.
7435           doc fix, fixes #148497
7436
7437 2004-07-25  Benjamin Otte  <otte@gnome.org>
7438
7439         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
7440           don't delay links on the sink elements, it causes unnegotiated
7441           links.
7442         * gst/elements/gsttypefindelement.c:
7443         (gst_type_find_element_base_init):
7444           add our padtemplates, we indeed do have some.
7445         * gst/elements/gsttypefindelement.c:
7446         (gst_type_find_element_handle_event),
7447         (gst_type_find_element_chain):
7448           don't push data when typefinding failed.
7449         * gst/gstpad.c: (gst_pad_link_fixate):
7450           check that no fixate function returns empty caps.
7451         * gst/gstpad.c: (gst_pad_push):
7452           check that the link is negotiated before data gets pushed.
7453         * tools/gst-register.c: (main):
7454           don't assert (fixes #148283)
7455
7456 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7457
7458         * docs/gst/gstreamer-sections.txt:
7459         * docs/gst/tmpl/gstconfig.sgml:
7460           add GST_PLUGIN_EXPORT definition
7461
7462 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7463
7464         * gst/gstplugin.h:
7465         * gst/gstconfig.h.in:
7466         * win32/gstconfig.h:
7467         * win32/gstelements.def:
7468         * win32/gstelements.vcproj:
7469         * win32/gstoptimalscheduler.def:
7470         * win32/gstoptimalscheduler.vcproj:
7471         * win32/gstspider.def:
7472         * win32/gstspider.vcproj:
7473           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
7474
7475 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7476
7477         * docs/gst/gstreamer-sections.txt:
7478           remove GST_CAT_DEFAULT because the type has changed
7479
7480 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7481
7482         * win32/gstbytestream.vcproj:
7483         * win32/gstelements.vcproj:
7484         * win32/gst-inspect.vcproj:
7485         * win32/gst-launch.vcproj:
7486         * win32/gstoptimalscheduler.vcproj:
7487         * win32/GStreamer.vcproj:
7488         * win32/gst-register.vcproj:
7489         * win32/gstspider.vcproj:
7490         * win32/msvc71.sln:
7491           Copy the files where needed after building, The testsuite will be
7492           built separately
7493
7494 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7495
7496         * win32/config.h:
7497         * win32/README.txt:
7498         * docs/manual/win32.xml:
7499         Fixed the plugin and GStreamer location
7500
7501 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7502
7503         * win32/gstreamer.def:
7504         More exports for the plugins
7505
7506 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7507
7508         * gst/gstinfo.h:
7509         Marc was right, we need to export literally GST_CAT_DEFAULT
7510
7511 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7512
7513         * win32/config.h:
7514         NLS crashes in gettext, disabled until this is solved
7515
7516 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7517
7518         * win32/gst-inspect.vcproj:
7519         * win32/gst-launch.vcproj:
7520         Should use NLS when available
7521
7522 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7523
7524         * gst/registries/gstxmlregistry.c:
7525         removing the file doesn't seem to be a good idea on Linux
7526
7527 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7528
7529         * gst/registries/gstxmlregistry.c:
7530         Remove the registry before renaming the tempfile (needed for Windows)
7531
7532 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7533
7534         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
7535         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
7536         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
7537         * gst/elements/gstmultifilesrc.h:
7538         Added newmedia property so it generates newmedia events between each
7539         file when property is set, as well as fixed eos handling
7540
7541 2004-07-22  David Schleef  <ds@schleef.org>
7542
7543         * gst/gststructure.c: (gst_structure_id_empty_new),
7544         (gst_structure_empty_new):  Set type field correctly.
7545         * gst/gststructure.h: Check type field correctly.
7546         * testsuite/caps/Makefile.am:
7547         * testsuite/caps/structure.c: (test1), (main): Add a very small
7548         test for structures.
7549
7550 2004-07-22  David Schleef  <ds@schleef.org>
7551
7552         * docs/random/ds/0.9-suggested-changes: more comments
7553         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
7554
7555 2004-07-22  Benjamin Otte  <otte@gnome.org>
7556
7557         * gst/gstelementfactory.c: (gst_element_register):
7558           set the factory in the class struct, so gst_element_get_factory
7559           actually works
7560         * gst/parse/grammar.y:
7561           set element to playing when it gets unlocked as we can't rely on the
7562           bin state - all elements in the bin state might still be locked in
7563           NULL)
7564
7565 2004-07-22  Benjamin Otte  <otte@gnome.org>
7566
7567         * gst/gstelement.c: (gst_element_set_state_func):
7568           make this a static function
7569
7570 2004-07-22  Wim Taymans  <wim@fluendo.com>
7571
7572         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
7573         (gst_opt_scheduler_pad_link):
7574         fix 147894-2 and the group_link problem.
7575
7576 2004-07-22  Wim Taymans  <wim@fluendo.com>
7577
7578         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7579         (handoff_identity), (main):
7580         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7581         (handoff_identity), (main):
7582         * testsuite/schedulers/Makefile.am:
7583         * testsuite/schedulers/group_link.c: (main):
7584         Show bug in scheduler when linking chain and loop based element 
7585         where the chain based element was not yet in a group.
7586
7587 2004-07-21  Benjamin Otte  <otte@gnome.org>
7588
7589         * gst/.cvsignore:
7590         * gst/autoplug/.cvsignore:
7591         * gst/elements/.cvsignore:
7592         * gst/indexers/.cvsignore:
7593         * libs/gst/bytestream/.cvsignore:
7594         * libs/gst/control/.cvsignore:
7595         * libs/gst/getbits/.cvsignore:
7596         * testsuite/states/.cvsignore:
7597         * testsuite/threads/.cvsignore:
7598           keep this up to date, since I seem to be the only one who cares
7599           about not missing files on commits (editor's note: no you don't,
7600           but feel free to change them at the time you add stuff instead
7601           of later on)
7602
7603 2004-07-21  Benjamin Otte  <otte@gnome.org>
7604
7605         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7606         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
7607         (gst_bin_child_state_change_func), (set_kid_state_func),
7608         (gst_bin_set_state), (gst_bin_change_state_norecurse):
7609           make state changes work correctly and reentrant (so removing
7610           elements from bins during state changes of bins doesn't cause
7611           segfaults or even wrong states)
7612           add debugging category and debugging output to print children states
7613         * gst/gstbin.c: (gst_bin_dispose): 
7614           add some assertion checks
7615         * gst/gstbin.h:
7616         * gst/gstbin.c: (gst_bin_sync_children_state):
7617           deprecate this function - it just does gst_bin_set_state (bin,
7618           GST_STATE (bin)) 
7619         * testsuite/threads/queue.c: (main):
7620           don't use gst_bin_sync_children_state anymore
7621         * testsuite/states/Makefile.am:
7622         * testsuite/states/bin.c:
7623           test that the state changes of bins work as expected
7624         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
7625           some adjustments to change states correctly, too
7626         * gst/gstthread.c: (gst_thread_change_state):
7627           don't enable/disable "threadsafe" properties, they're unused and
7628           cause random segfaults
7629         * testsuite/threads/Makefile.am:
7630           the queue check randomly passes now, ignore it
7631
7632 2004-07-21  Benjamin Otte  <otte@gnome.org>
7633
7634         * gst/gstpad.c:
7635           check if data is NULL before outputting debug info. (fixes #145100)
7636
7637 2004-07-21  Benjamin Otte  <otte@gnome.org>
7638
7639         * gst/schedulers/entryscheduler.c:
7640         (gst_entry_scheduler_loop_wrapper),
7641         (gst_entry_scheduler_chain_wrapper),
7642         (gst_entry_scheduler_get_wrapper):
7643           reset the state when the cothread starts, so we don't get assertion
7644           failures on restarting of cothreads
7645
7646 2004-07-20  Benjamin Otte  <otte@gnome.org>
7647
7648         * gst/gstelement.c: (gst_element_link_pads_filtered):
7649           use correct sinkpad, if only sinkpad is specified, but not srcpad
7650           (fixes #147889)
7651         * gst/gstelement.c: (gst_element_set_state_func),
7652         (gst_element_change_state): ref/unref the element, signal handlers
7653         could get rid of the element otherwise
7654
7655 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7656
7657         * docs/random/ds/0.9-suggested-changes:
7658           Make note about renaming fixed-list to array.
7659         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
7660         (_gst_value_initialize):
7661           Add array intersections.
7662         * testsuite/caps/intersect2.c: (main):
7663           Add test for array intersections.
7664
7665 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7666
7667         * configure.ac: back to cvs
7668
7669 === release 0.8.4 ===
7670
7671 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7672
7673         * configure.ac:
7674           releasing 0.8.4, "Paella"
7675           bump libtool versioning
7676
7677 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7678
7679         * po/LINGUAS:
7680         * po/ca.po:
7681           adding Catalan translation (Jordi Mallach)
7682
7683 2004-07-20  Wim Taymans  <wim@fluendo.com>
7684
7685         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7686         (handoff_identity), (main):
7687         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7688         (handoff_identity), (main):
7689         * testsuite/schedulers/Makefile.am:
7690         Added failing testcase for variant of #147894
7691
7692 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7693
7694         patch by: David Moore
7695
7696         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7697         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
7698         (group_migrate_connected):
7699         * testsuite/schedulers/Makefile.am:
7700           fix for #142813 (Deadlock in optimal scheduler)
7701
7702 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7703
7704         patch by: Wim Taymans
7705
7706         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7707         (gst_opt_scheduler_schedule_run_queue),
7708         (gst_opt_scheduler_get_wrapper), (get_group),
7709         (group_migrate_connected):
7710         * testsuite/schedulers/Makefile.am:
7711           fix for #147819 (Add some checks in the opt scheduler)
7712
7713 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7714
7715         patch by: Benjamin Otte
7716
7717         * gst/gstelementfactory.c: (__gst_element_details_set):
7718           fix for #147929: running gst-register in non-utf8 locale can cause
7719           invalid registry
7720
7721 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7722
7723         patch by: Wim Taymans
7724
7725         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
7726         (group_has_element), (element_get_reachables_func),
7727         (group_migrate_connected):
7728           fix for #147894 (opt scheduler decoupled elements mismanagement)
7729         * testsuite/schedulers/Makefile.am:
7730           testsuite app now passes
7731
7732 2004-07-19  Wim Taymans  <wim@fluendo.com>
7733
7734         * testsuite/schedulers/147819.c: (handoff_identity1),
7735         (handoff_identity2), (main):
7736         * testsuite/schedulers/Makefile.am:
7737         Added testcase for bug 147819
7738
7739 2004-07-19  Wim Taymans  <wim@fluendo.com>
7740
7741         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7742         (handoff_identity), (main):
7743         * testsuite/schedulers/Makefile.am:
7744         Added testcase for bug 147894
7745
7746 2004-07-16  Wim Taymans  <wim@fluendo.com>
7747
7748         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
7749         * testsuite/schedulers/142183.c: (handoff_identity), (main):
7750         * testsuite/schedulers/Makefile.am:
7751         Added testsuite for bug 142183 in its two incarnations. Refcount
7752         is not increased for scheduled elements and threadsafe properties
7753         mutexes are not properly unlocked.
7754
7755 2004-07-16  Wim Taymans  <wim@fluendo.com>
7756
7757         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
7758         (create_chain), (destroy_chain), (create_group), (destroy_group),
7759         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
7760         (group_dec_link), (gst_opt_scheduler_pad_link),
7761         (group_inc_links_for_element), (group_migrate_connected):
7762         Call group_inc_link with the proper src->sink ordering -- 
7763         break this, and we break sort_chain. patch from wingo for bug
7764         147713.
7765         Partially revert patch 1.89. When adding a loop based element to 
7766         the scheduler, the links to other groups are automatically followed
7767         and incremented. This should not happen because the bin will call
7768         pad_link explicitly for those connection, resulting in them counted 
7769         twice. Results in assertion failure on pipeline cleanup.
7770
7771 2004-07-16  Wim Taymans  <wim@fluendo.com>
7772
7773         * testsuite/schedulers/143777-2.c: (main):
7774         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
7775         (main):
7776         * testsuite/schedulers/Makefile.am:
7777         Added cleanup code to testcase 143777-2.
7778         Added testcase to show bug 147713, does not really show the
7779         deadlock as I can't figure out how to trigger it, but it does
7780         demonstrate bad ordering in the scheduler.
7781
7782 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7783
7784         * gst/gstvalue.c: (gst_value_deserialize_fraction):
7785           change strndup to g_strndup.  Fixes #147707
7786
7787 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7788
7789         * po/af.po:
7790         * po/az.po:
7791         * po/cs.po:
7792         * po/en_GB.po:
7793         * po/fr.po:
7794         * po/nl.po:
7795         * po/sr.po:
7796         * po/sv.po:
7797         * po/tr.po:
7798         * po/uk.po:
7799           updated translations
7800
7801 2004-07-16  Benjamin Otte  <otte@gnome.org>
7802
7803         * gst/gstvalue.c: (gst_greatest_common_divisor):
7804           use ints and return ints, fractions only use ints, too, so this
7805           avoids accidently casting multiplications to unsigned
7806         (gst_value_lcopy_fraction): it's ints, not uint32
7807         (gst_value_set_fraction): disallow minint, multiplying and negation
7808           are broken with it
7809         (gst_value_fraction_multiply): fix to make large numbers work and get
7810         rid of the assumption that the multiplication of two ints fits an
7811         int64 - dunno if that's true for all systems
7812         * testsuite/caps/Makefile.am:
7813         * testsuite/caps/fraction-multiply-and-zero.c:
7814         (check_multiplication), (check_equal), (zero_test), (main):
7815           add tests for all the stuff above
7816         * testsuite/caps/value_compare.c: (test1):
7817           fix comment
7818         * tests/.cvsignore:
7819         * testsuite/caps/.cvsignore:
7820         * testsuite/debug/.cvsignore:
7821         * testsuite/dlopen/.cvsignore:
7822         * testsuite/states/.cvsignore:
7823           get up to date
7824
7825 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7826
7827         * docs/manual/bins-api.xml:
7828         * docs/manual/factories.xml:
7829         * docs/manual/helloworld.xml:
7830         * docs/manual/links-api.xml: 
7831           fixes for out of date info, incorrect info and grammar
7832
7833 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7834
7835         * docs/manual/pads.xml:
7836         * docs/manual/pads-api.xml: grammar fix
7837
7838 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7839
7840         * docs/manual/pads-api.xml: typo + grammar fix
7841
7842 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7843
7844         * docs/gst/gstreamer-sections.txt:
7845           add new symbols
7846         * docs/gst/tmpl/gstelement.sgml:
7847         * docs/gst/tmpl/gstpad.sgml:
7848         * docs/gst/tmpl/gsttypes.sgml:
7849         * docs/gst/tmpl/gstvalue.sgml:
7850           update docs
7851         * gst/gststructure.c: (gst_structure_set_valist),
7852         (gst_structure_from_abbr), (gst_structure_to_abbr):
7853         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
7854         (gst_greatest_common_divisor), (gst_value_init_fraction),
7855         (gst_value_copy_fraction), (gst_value_collect_fraction),
7856         (gst_value_lcopy_fraction), (gst_value_set_fraction),
7857         (gst_value_get_fraction_numerator),
7858         (gst_value_get_fraction_denominator),
7859         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
7860         (gst_value_deserialize_fraction),
7861         (gst_value_transform_fraction_string),
7862         (gst_value_transform_string_fraction),
7863         (gst_value_compare_fraction), (_gst_value_initialize):
7864         * gst/gstvalue.h:
7865           adding GstFraction GValue type, get/set, and multiply
7866         * testsuite/caps/Makefile.am:
7867         * testsuite/caps/fraction.c: (test), (main):
7868         * testsuite/caps/string-conversions.c: (main):
7869         * testsuite/caps/value_compare.c: (test1), (main):
7870           add regression tests for GstFraction
7871
7872 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7873         
7874         * docs/manual/init-api.xml: Grammar fix
7875
7876 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7877
7878         * docs/manual/states.xml: Fix inconsistent information
7879
7880 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7881
7882         * gst/gstelement.c: (gst_element_set_state):
7883         * gst/gstpad.c: (gst_pad_try_set_caps):
7884         * gst/gststructure.c:
7885         * gst/gstthread.c: (gst_thread_child_state_change):
7886         * gst/gstvalue.c: (gst_value_compare_double):
7887         * gst/gstvalue.h:
7888         * testsuite/parse/parse1.c: (main):
7889           debugging additions and style cleanups
7890
7891 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7892
7893         * docs/manual/states.xml: Grammar fix
7894
7895 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7896
7897         * docs/manual/pads.xml: Grammar fix
7898
7899 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7900
7901         * docs/manual/elements.xml: Fixed image reference
7902
7903 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7904
7905         * docs/manual/goals.xml: Grammar fix
7906
7907 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7908
7909         * docs/manual/motivation.xml:
7910         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
7911
7912 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7913
7914         * docs/manual/motivation.xml: Fix spelling
7915
7916 2004-07-15  Benjamin Otte  <otte@gnome.org>
7917
7918         * gst/gstelement.h: 
7919           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
7920           strings.
7921         * gst/gstelement.c (gst_element_class_init):
7922           GError's are boxed, not objects
7923         * gst/gstmarshal.list:
7924           update list for the fixed error signal
7925
7926 2004-07-14  Andy Wingo  <wingo@pobox.com>
7927
7928         * gst/gsttag.c: Add a tag merge func for pointers. The header was
7929         there all along, but the function wasn't. (guile-gstreamer's build
7930         system uses the address of the function -- I wasn't actually
7931         trying to use this.)
7932
7933 2004-07-14  Andy Wingo  <wingo@pobox.com>
7934
7935         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
7936         as gst_pad_proxy_pad_link) just link to every other pad when they
7937         are called. In the case where the graph has cycles, this will mean
7938         that a call to try_set_caps will recurse. Allow this recursion
7939         and return OK, while we wait for the first try_set_caps to give a
7940         proper return value.
7941         (gst_pad_link_call_link_functions): Since this function is the
7942         only one to set the NEGOTIATING flag on a pad, if the flag is set
7943         it means that the link functions have indirectly recursed. If this
7944         happens, error out to avoid infinite recursion and an eventual
7945         SEGV.
7946         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
7947         (gst_pad_proxy_getcaps): Intersect the result with the template
7948         caps to ensure that the return value is valid.
7949
7950 2004-07-14  Andy Wingo  <wingo@pobox.com>
7951
7952         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
7953         one refcount, the calling function is the owner of the buffer.
7954
7955 2004-07-14  Wim Taymans  <wim@fluendo.com>
7956
7957         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7958         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7959         Fix stupid warning when an element is to be migrated but
7960         is already migrated.
7961
7962 2004-07-14  Wim Taymans  <wim@fluendo.com>
7963
7964         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7965         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7966         Make sure that a single non-loop-based element does not 
7967         end up in a group. This fixes the testsuite again.
7968
7969 2004-07-14  Wim Taymans  <wim@fluendo.com>
7970
7971         * gst/schedulers/gstoptimalscheduler.c: (create_group),
7972         (add_to_group), (merge_groups), (schedule_group),
7973         (gst_opt_scheduler_get_wrapper), (group_elements),
7974         (group_dec_link), (gst_opt_scheduler_pad_link),
7975         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
7976         (gst_opt_scheduler_iterate):
7977         move isolated groups to a new chain.
7978         Emit a warning instead of segfaulting in some error cases.
7979         Fix a bug where the link count between groups was not calculated 
7980         correctly. Fixes #144510.
7981
7982 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
7983         * gst/elements/gstfilesrc.c:
7984           Binary files support under Windows now OK
7985       
7986 2004-07-13  Benjamin Otte  <otte@gnome.org>
7987
7988           compatibility fixes for Solaris 8/gcc 2.95
7989         * configure.ac:
7990           include libintl libs in LDFLAGS
7991         * gstvalue.c (gst_value_deserialize_buffer):
7992           cast isxdigit stuff to int to silence compiler warning
7993
7994 2004-07-12  Benjamin Otte  <otte@gnome.org>
7995
7996         * gst/gsttypes.h:
7997           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
7998           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
7999           just causes support madness
8000         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
8001           make it work without this
8002         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
8003         (gst_file_index_commit):
8004           glib IO channels don't want binary mode
8005         * testsuite/bytestream/filepadsink.c: (main):
8006         * testsuite/bytestream/test1.c: (read_param_file):
8007           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
8008
8009 2004-07-12  Benjamin Otte  <otte@gnome.org>
8010
8011         * gst/gstelement.c: (gst_element_class_init),
8012         (gst_element_set_state), (gst_element_set_state_func):
8013           virutalize gst_element_set_state, use set_state member in class
8014           struct that was already added in 0.7 for this.
8015         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
8016         (gst_bin_change_state):
8017           make gst_bin_foreach works similar to other foreach functions, plug
8018           memleaks in it. Make functions using it work with the new approach.
8019           Document gst_bin_foreach, so it can be exported if we want to
8020         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
8021           use virtualized set_state to make set_state on bins set the state of
8022           all its children.
8023
8024 2004-07-12  Benjamin Otte  <otte@gnome.org>
8025
8026         * configure.ac:
8027           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
8028           http://bugs.gentoo.org/show_bug.cgi?id=53967)
8029         * gst/gstpad.c: (gst_pad_alloc_buffer):
8030           allow buffer_alloc functions to return NULL and allocate a normal
8031           buffer in that case
8032
8033 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
8034         * gst/elements/gstfilesink.c:
8035         * gst/elements/gstfilesrc.c:
8036         * gst/indexers/gstfileindex.c:
8037         * gst/gsttypes.h:
8038         * testsuite/bytestream/filepadsink.c:
8039         * testsuite/bytestream/test1.c:
8040           Handle binary files under Windows
8041
8042 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
8043         * docs/manual/win32.xml:
8044         * win32/config.h:
8045         * win32/gst-register.vcproj:
8046         * win32/gstreamer.def:
8047           Update to another gettext public build
8048
8049 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
8050         * gst/gstplugin.c:
8051           Fix an impossible C syntax
8052         * win32/config.h:
8053           Disable i18n under Windows for the moment
8054         * win32/gst-register.vcproj:
8055           Use this configuration
8056
8057 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
8058         * docs/manual/quotes.xml:
8059           Keep the quotes file alive
8060         * docs/random/ds/0.9-suggested-changes:
8061           Add the suggestion of including a 'rowstride' as part of video
8062           format caps
8063
8064 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8065
8066         * gst/gstelement.c: (gst_element_set_state),
8067         (gst_element_change_state):
8068           d'oh.  Set PENDING state correctly before forcing bin to change.
8069         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8070         (gst_structure_parse_fixed_list):
8071         * gst/schedulers/gstoptimalscheduler.c:
8072         (gst_opt_scheduler_state_transition):
8073         * testsuite/states/parent.c: (main):
8074           remove comment now that it's fixed.
8075
8076 2004-07-11  Benjamin Otte  <otte@gnome.org>
8077
8078         * gst/gstclock.h:
8079           GST_SECOND shouldn't cause a conversion to unsigned.
8080         * testsuite/clock/.cvsignore:
8081         * testsuite/clock/Makefile.am:
8082         * testsuite/clock/signedness.c: (main):
8083           make sure it never will again
8084
8085 2004-07-11  Andy Wingo  <wingo@pobox.com>
8086
8087         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
8088         whose state is higher than the bin state, raise the bin state to
8089         ensure that bin state := highest child state.
8090         
8091 2004-07-11  Andy Wingo  <wingo@pobox.com>
8092
8093         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
8094         procedure on the children of a bin. Assumes that the procedure can
8095         change the set of children.
8096         (set_kid_state_func): New static function.
8097         (gst_bin_change_state): Use gst_bin_foreach to call
8098         set_kid_state_func. Fixes a bug: if a child had a state-change
8099         handler that removes it from the bin, there would be a segfault.
8100         Hopefully it should also work in the case where the state-change
8101         handler on one child adds or removes other children. In any case,
8102         fixes should go to gst_bin_foreach.
8103
8104 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
8105
8106         * gst/gstelement.c: (gst_element_set_state):
8107           compatibility fix for latest plugins release.  Change loop back
8108           to while {}
8109
8110 2004-07-09  Wim Taymans  <wim@fluendo.com>
8111
8112         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
8113         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
8114         (gst_thread_main_loop):
8115         Since remove is virtual in GstBin we must not assume the 
8116         elements GList to have anothing useful.
8117         Add some more logging to GstThread and be a bit more paranoid
8118         when resetting the scheduler.
8119         Set the state of the bin to NULL before removing the children.
8120
8121 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8122
8123         * testsuite/threads/Makefile.am:
8124         * testsuite/threads/threadg.c:
8125           added test to check if problem when removing all elements from a
8126           GstThread before setting GstThread state to NULL
8127
8128 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8129
8130         * docs/gst/tmpl/gstelement.sgml:
8131         * docs/gst/tmpl/gsttypes.sgml:
8132         * gst/gstbin.c: (gst_bin_change_state):
8133         * gst/gstelement.c: (gst_element_set_state),
8134         (gst_element_change_state):
8135           rework so that for bins we try to set the state on all children
8136           as well even if the bin is in the correct state already.
8137           change while to do so at least one iteration is done.
8138           For regular elements, we fall back to the previous behaviour for
8139           now since we first need a new plugins release.
8140         * testsuite/states/parent.c: (main):
8141           test for this case
8142           Fixes #123774
8143
8144 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8145
8146         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
8147         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
8148         (gst_queue_release_locks), (gst_queue_change_state),
8149         (gst_queue_set_property):
8150           add proper lock debugging.  Change dispose to finalize, since
8151           we're freeing mutexes and other stuff which should happen only once.
8152
8153 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8154
8155         * docs/gst/tmpl/gstelement.sgml:
8156         * docs/gst/tmpl/gstplugin.sgml:
8157         * docs/gst/tmpl/gsttypes.sgml:
8158         * docs/pwg/building-state.xml:
8159         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
8160         * gst/gstelement.c: (gst_element_change_state):
8161         * gst/gstthread.c: (gst_thread_change_state):
8162           catch wrong state changes in element base class.
8163
8164 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8165
8166         * gst/gstinfo.h:
8167           clean up layout a little.
8168
8169 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8170
8171         * configure.ac:
8172         * testsuite/Makefile.am:
8173         * testsuite/states/Makefile.am:
8174         * testsuite/states/parent.c: (main):
8175           re-enable states testsuite dir.  Add test for state changes and
8176           parent behaviour
8177
8178 2004-07-09  Wim Taymans  <wim@fluendo.com>
8179
8180         * gst/schedulers/gstoptimalscheduler.c:
8181         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
8182         (element_get_reachables_func), (element_get_reachables),
8183         (debug_element), (rechain_group), (group_migrate_connected),
8184         (gst_opt_scheduler_pad_unlink):
8185         Do not try to migrate decoupled elements to a new group since
8186         they are not added to groups.
8187
8188 2004-07-08  Benjamin Otte  <otte@gnome.org>
8189
8190         * gst/gstelement.c: (gst_element_error_func):
8191           make reentrant (= allow removing elements in error handler)
8192
8193 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8194
8195         * gst/gstpad.c: (gst_pad_event_default_dispatch),
8196         (gst_pad_send_event), (gst_pad_call_chain_function):
8197           events sent to elements below PAUSED cannot be handled, so
8198           don't try to
8199
8200 2004-07-08  Wim Taymans  <wim@fluendo.com>
8201
8202         * gst/schedulers/gstoptimalscheduler.c:
8203         (chain_recursively_migrate_group), (create_group),
8204         (schedule_group), (gst_opt_scheduler_pad_link),
8205         (group_elements_set_visited), (element_get_reachables_func),
8206         (element_get_reachables), (group_can_reach_group), (debug_element),
8207         (rechain_group), (group_migrate_connected),
8208         (gst_opt_scheduler_pad_unlink):
8209         * testsuite/schedulers/Makefile.am:
8210         Implemented group splitting and rechaining.
8211         Fixes 143777 and 143777-2 in the testsuite.
8212
8213 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8214
8215         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
8216           extra debugging
8217         * gst/gstevent.h:
8218         * gst/gstinfo.c: (gst_debug_log_default):
8219           print time nicely.  add thread pointer until someone figures out
8220           a completely portable way of getting at thread id's.
8221         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
8222         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
8223         (gst_pad_call_chain_function):
8224           extra debugging
8225         * gst/schedulers/gstoptimalscheduler.c:
8226         (get_group_schedule_function), (loop_group_schedule_function),
8227         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
8228         (pad_clear_queued), (gst_opt_scheduler_iterate):
8229           rename BUFPEN and friends to DATAPEN since that's what they are.
8230
8231 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8232
8233         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
8234         * gst/gstbuffer.h:
8235         * gst/gstpad.c:
8236           cleanups and debugging
8237
8238 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8239
8240         * configure.ac:
8241         * gst/gstvalue.c: (gst_value_compare_enum),
8242         (gst_value_serialize_enum), (gst_value_deserialize_enum),
8243         (gst_value_can_compare), (gst_value_compare):
8244         * testsuite/Makefile.am:
8245         * testsuite/enumcaps/Makefile.am:
8246         * testsuite/enumcaps/enumcaps.c:
8247           Fix enum serialization, deserialization, comparison in caps, add
8248           a test to ensure that this continues working in the future.
8249
8250 2004-07-06  David Schleef  <ds@schleef.org>
8251
8252         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
8253         Fix memleak.
8254
8255 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8256
8257         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
8258         * gst/gstplugin.h:
8259         * gst/registries/gstxmlregistry.c:
8260         (plugin_times_older_than_recurse), (plugin_times_older_than),
8261         (gst_xml_registry_parse_padtemplate):
8262           only rebuild registry when actual plugins have a newer time than
8263           the registry.  Fixes #145520
8264
8265 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8266
8267         * docs/manual/manual.xml:
8268         * docs/manual/win32.xml:
8269           add chapter on win32 building.  fixes #142422
8270
8271 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8272
8273         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
8274
8275         * gst/autoplug/gstspider.c: (gst_spider_init),
8276         (gst_spider_dispose):
8277           fix spider memleaks.  fixes #137863
8278
8279 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8280
8281         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
8282
8283         * gst/schedulers/gstoptimalscheduler.c:
8284         (gst_opt_scheduler_pad_unlink):
8285           fix SIGBUS error, fixes #145338
8286
8287 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8288
8289         * gst/gstobject.c: (gst_object_replace):
8290         * gst/gstscheduler.c: (gst_scheduler_get_clock):
8291         * gst/gstsystemclock.c: (gst_system_clock_obtain):
8292           clean up clock lifecycle.  Fixes #109831
8293
8294 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8295
8296         * po/LINGUAS:
8297         * po/cs.po:
8298           added Czech translation (Miloslav Trmac)
8299
8300 2004-07-04  David Schleef  <ds@schleef.org>
8301
8302         * tools/Makefile.am:
8303         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
8304
8305 2004-07-04  David Schleef  <ds@schleef.org>
8306
8307         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
8308
8309 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8310
8311         * gst/gstbin.c: (gst_bin_restore_thyself):
8312           chain to parent restore so the bins get restored correctly
8313           in the editor
8314
8315 2004-07-03  David Schleef  <ds@schleef.org>
8316
8317         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
8318         Actually do something in these functions, like before the big
8319         caps change.  (bug #145137)
8320
8321 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8322
8323         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
8324         (gst_element_get_compatible_pad_filtered):
8325         * gst/gstthread.c: (gst_thread_main_loop):
8326           more debugging
8327
8328 2004-07-02  David Schleef  <ds@schleef.org>
8329
8330         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
8331         * gst/gstobject.h:
8332         * gst/gstparse.h:
8333         * gst/gsttrace.h:
8334         * gst/gstxml.h:
8335
8336 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8337
8338         * gst/gstpad.c: (gst_pad_check_schedulers),
8339         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
8340         (gst_pad_link_prepare):
8341           revert until testsuite is fixed
8342
8343 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8344
8345         * testsuite/Makefile.am:
8346         * testsuite/caps/filtercaps.c: (main):
8347         * testsuite/clock/clock1.c: (main):
8348         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
8349           fix some more tests
8350
8351 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8352
8353         * testsuite/cleanup/cleanup1.c: (create_pipeline):
8354         * testsuite/cleanup/cleanup2.c: (create_pipeline):
8355         * testsuite/cleanup/cleanup4.c: (main):
8356           fix testsuite
8357
8358 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8359
8360         * libs/gst/control/control.c:
8361         * libs/gst/control/dparam.c:
8362         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
8363         * libs/gst/control/dparammanager.c:
8364         * libs/gst/control/dparammanager.h:
8365         * testsuite/dynparams/Makefile.am:
8366         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
8367         (gst_dptest_change_state), (gst_dptest_chain), (main):
8368           fix testcase for dparams
8369           add debugging category
8370
8371 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8372
8373         * testsuite/Rules:
8374           change path
8375
8376 2004-07-02  Benjamin Otte  <otte@gnome.org>
8377
8378         * tests/.cvsignore:
8379         * tests/Makefile.am:
8380         * tests/mass_elements.c: (gst_get_current_time), (main):
8381           add simple benchmark to test various speeds of fakesrc ! identity !
8382           identity ! ... ! fakesink.
8383           Usage: mass_elements [num_identities] [num_buffers]
8384           If not specified they default to 1000.
8385
8386 2004-07-02  Benjamin Otte  <otte@gnome.org>
8387
8388         * gst/gstpad.c: (gst_pad_check_schedulers),
8389         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
8390         (gst_pad_link_prepare):
8391           check that pads that get linked belong to the same manager. The old
8392           code allowed linking elements before putting them into bins, so it
8393           worked to link them and then put them in different threads, which
8394           lead to weird behaviour.
8395           Since this effectively disallows linking elements before putting
8396           them in a bin, some applications might not work after this and error
8397           out. If these applications are too critical, we might need to revert
8398           that patch. Please test this before the next release...
8399
8400 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8401
8402         * gst/gstpad.c: (gst_pad_get_caps):
8403           throw an error if the getcaps function does not return a subset of
8404           the template caps.
8405         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
8406           make disconts without position info an error in debugging
8407         * tests/spidey_bench.c: (handoff), (main):
8408           don't count first try when averaging
8409
8410 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8411
8412         * gst/gstplugin.c: (gst_plugin_load_file):
8413           figure out problem with dynamic test
8414
8415 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8416
8417         * docs/gst/Makefile.am:
8418           fix docs build
8419
8420 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8421
8422         * po/POTFILES.in:
8423         * po/af.po:
8424         * po/az.po:
8425         * po/en_GB.po:
8426         * po/fr.po:
8427         * po/nl.po:
8428         * po/sr.po:
8429         * po/sv.po:
8430         * po/tr.po:
8431         * po/uk.po:
8432         * tools/gst-register.c: (plugin_added_func), (main):
8433           i18n-ize -register, fix plural
8434
8435 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8436
8437         * gst/elements/gstidentity.c: (gst_identity_class_init),
8438         (gst_identity_init), (gst_identity_chain),
8439         (gst_identity_set_property), (gst_identity_get_property):
8440         * gst/elements/gstidentity.h:
8441           check for perfect stream
8442
8443 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8444
8445         * gst/elements/gstidentity.c: (gst_identity_chain):
8446           print offset_end
8447
8448 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8449
8450         * docs/gst/Makefile.am:
8451         * docs/gst/gstreamer-docs.sgml:
8452           doc fixes
8453
8454 2004-06-24  David Schleef  <ds@schleef.org>
8455
8456         * autogen.sh:  Remove call to env, since the buildbot isn't
8457         broken anymore.
8458
8459 2004-06-24  Wim Taymans  <wim@fluendo.com>
8460
8461         * gst/elements/Makefile.am:
8462         * gst/elements/gstelements.c:
8463         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
8464         (gst_multifdsink_class_init), (gst_multifdsink_init),
8465         (gst_multifdsink_add), (gst_multifdsink_remove),
8466         (gst_multifdsink_clear), (gst_multifdsink_chain),
8467         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
8468         * gst/elements/gstmultifdsink.h:
8469         Added an element that writes to multiple filedescriptors at once.
8470
8471 2004-06-24  Benjamin Otte  <otte@gnome.org>
8472
8473         * gst/parse/grammar.y:
8474           don't try to link elements before they have been added to bins
8475
8476 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8477
8478         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
8479         (gst_file_pad_get_length):
8480         * libs/gst/bytestream/filepad.h:
8481           add 2 new functions
8482
8483 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8484
8485         * docs/gst/gstreamer-sections.txt:
8486         remove from docs, the define that Benjamin removed from gstelement.h
8487
8488 2004-06-22  Benjamin Otte  <otte@gnome.org>
8489
8490         * gst/gstelement.h:
8491           remove define that referenced a nonexisting GstElement struct member
8492
8493 2004-06-20  Benjamin Otte  <otte@gnome.org>
8494
8495         * gst/gstdata.c: (gst_data_is_writable):
8496           whoops, return values were wrong, so writable data was marked as
8497           non-writable and vice versa. (fixes #143953, spotted by Francis
8498           Labonte)
8499           Shows how rarely we need to copy data ;)
8500
8501 2004-06-20  Benjamin Otte  <otte@gnome.org>
8502
8503         * testsuite/schedulers/.cvsignore:
8504         * testsuite/schedulers/Makefile.am:
8505         * testsuite/schedulers/143777-2.c: (main):
8506           add test for opt breakage in bug #143777
8507
8508 2004-06-20  Benjamin Otte  <otte@gnome.org>
8509
8510         * gst/gstpad.c: (gst_pad_call_chain_function):
8511           check for if we were unlinked while inside the chainfunction (fixes
8512           entrygthread having issues with #143777)
8513         * testsuite/schedulers/143777.c: (main):
8514         * testsuite/schedulers/Makefile.am:
8515           add a test for that fix
8516
8517 2004-06-20  Benjamin Otte  <otte@gnome.org>
8518
8519         * gst/gstvalue.c: (gst_value_set_int_range):
8520           test that start is smaller then end
8521         * libs/gst/bytestream/Makefile.am:
8522         * libs/gst/bytestream/filepad.c: 
8523         * libs/gst/bytestream/filepad.h:
8524           add GstFilePad - a pad that behaves like a FILE*
8525         * testsuite/bytestream/.cvsignore:
8526         * testsuite/bytestream/Makefile.am:
8527         * testsuite/bytestream/filepadsink.c: 
8528           test for the GstFilePad
8529
8530 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8531
8532         * gst/elements/gstidentity.c: (gst_identity_class_init),
8533         (gst_identity_init), (gst_identity_set_clock),
8534         (gst_identity_chain), (gst_identity_set_property),
8535         (gst_identity_get_property):
8536         * gst/elements/gstidentity.h:
8537         * gst/gstclock.c: (gst_clock_id_wait):
8538           add a "sync" property to sync to the clock
8539
8540 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8541
8542         * gst/gstelementfactory.c: (gst_element_factory_create):
8543           make the freakin "elementfactory bla has no type" message more
8544           useful. So we actually can do something when someone shows up
8545           complaining about it.
8546
8547 2004-06-15  Johan Dahlin  <johan@gnome.org>
8548
8549         * tools/gst-inspect.c (main): Fallback to plugin if no element is
8550         found. This matches the old behavior better. Thanks to Thomas for
8551         pointing out.
8552
8553 2004-06-14  David Schleef  <ds@schleef.org>
8554
8555         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
8556         -fomit-frame-pointer.  Appears to generate correct code in
8557         other cases as well.
8558
8559 2004-06-14  Johan Dahlin  <johan@gnome.org>
8560
8561         * tools/gst-inspect.c (main): Add two new command line options: -a
8562         to print all elements and -n to print the name on each line. Also
8563         fix some error reporting.
8564         (main): Simplify, remove -n and always print names if -a is specified
8565
8566 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
8567
8568         * win32/gstconfig.h:
8569         * win32/GSTreamer.vcproj:
8570         * win32/Makefile:
8571         * gst/gstconfig.h.in:
8572         * gst/gst.h:
8573         * gst/gstbin.h:
8574         * gst/gstelement.h:
8575         * gst/gstevent.h:
8576         * gst/gstobject.h:
8577         * gst/gstpad.h:
8578         * docs/gst/gstreamer-sections.txt:
8579         * docs/gst/tmpl/gstconfig.sgml:
8580           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
8581
8582 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8583         * docs/gst/gstreamer-sections.txt:
8584         * docs/gst/tmpl/gstconfig.sgml:
8585         Add the GSTREAMER_EXPORT macro to the docs
8586
8587 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8588
8589         * tools/gst-compprep.c: (handle_xmlerror), (main):
8590         Add a check for the version that introduced SetStructuredError to fix
8591         the build on FC1
8592
8593 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8594
8595         * win32/msvc71.sln:
8596         * win32/testsuite/:
8597           prepare to compile the testsuite with MSVC
8598
8599 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8600
8601         * docs/manual/win32.xml:
8602           attempt to transform the Win32 README into an XML doc
8603
8604 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8605
8606         * gst/gst.c:
8607         * gst/gstbin.*:
8608         * gst/config.h.in:
8609         * gst/gstelement.*:
8610         * gst/gstevent.h:
8611         * gst/gstobject.*:
8612         * gst/gstpad.h:
8613         * tools/gst-register.c:
8614         * win32/gstreamer.def:
8615           extern symbols are now exported for the Windows DLL
8616
8617 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8618
8619         * gst/gstinfo.h:
8620           fix a problem to enable/disable DEBUG under MSVC
8621
8622 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8623
8624         * win32/:
8625           enable more debug code in DEBUG build
8626
8627 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8628
8629         * win32/config.h:
8630         * gst/gst-i18n-app.h:
8631           enable NLS under Windows
8632
8633 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
8634         * tools/gst-compprep.c: (handle_xmlerror), (main):
8635           Make an error that baffled me a bit clearer
8636
8637 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8638
8639         * gst/gstqueue.c:
8640           don't use g_queue_get_length () because it's 2.4, use ->length
8641
8642 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
8643
8644         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
8645
8646         * tools/gst-inspect.c: (print_signal_info):
8647           don't free random data twice. (fixes #144185)
8648
8649 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
8650
8651         * gst/gstqueue.c:
8652         * gst/gstqueue.h:
8653           fix removing from the wrong queue on event timeout
8654           fix disposing of the event queue by casting correctly
8655           add mutexes for handling the event queue
8656           someone was sleeping when fixing queue last time around :)
8657
8658 2004-06-10  Johan Dahlin  <johan@gnome.org>
8659
8660         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
8661         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
8662
8663 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8664
8665         * docs/random/gdp:
8666         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
8667         * libs/gst/dataprotocol/dataprotocol.c:
8668         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8669         (gst_dp_buffer_from_header):
8670         * libs/gst/dataprotocol/dataprotocol.h:
8671         * libs/gst/dataprotocol/dp-private.h:
8672           rev version to 0.1, add buffer flags and copy them
8673
8674 2004-06-09  Johan Dahlin  <johan@gnome.org>
8675
8676         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
8677         the flags from the buffer we're copying.
8678
8679 2004-06-09  Wim Taymans  <wim@fluendo.com>
8680
8681         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
8682         * gst/elements/gstidentity.c: (gst_identity_init),
8683         (gst_identity_chain):
8684         Print more buffer info in fakesink.
8685         Make identity output similar to fakesink.
8686
8687 2004-06-07  Daniel Gazard  <dany42@free.fr>
8688
8689         reviewed by Benjamin Otte  <otte@gnome.org>
8690
8691         * configure.ac:
8692           fix cross compiling not working. (fixes #143741)
8693
8694 2004-06-07  Benjamin Otte  <otte@gnome.org>
8695
8696         * gst/gstelement.c: (gst_element_set_time_delay):
8697           add failure check
8698         * gst/gstinfo.h:
8699           put brackets around macro arguments of GST_TIME_ARGS, add note to
8700           move it to correct header in 0.9
8701
8702 2004-06-07  Benjamin Otte  <otte@gnome.org>
8703
8704         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
8705         (gst_file_index_load), (_file_index_id_save_entries),
8706         (gst_file_index_commit), (gst_file_index_add_association),
8707         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
8708         (gst_file_index_plugin_init):
8709           make debugging use a default category
8710
8711 2004-06-06  David Moore  <dcm@acm.org>
8712
8713         reviewed by Benjamin Otte  <otte@gnome.org>
8714
8715         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
8716         (gst_fdsrc_change_state):
8717           reset offset counter when going READY => PAUSED. (fixes #142903)
8718
8719 2004-06-06  ed@catmur.co.uk
8720
8721         reviewed by Benjamin Otte  <otte@gnome.org>
8722
8723         * gst/registries/gstxmlregistry.c:
8724         (gst_xml_registry_rebuild_recurse):
8725           don't rely on g_dir_open to figure out if a file is a directory, use
8726           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
8727           directories. (fixes #142850)
8728
8729 2004-06-06  Benjamin Otte  <otte@gnome.org>
8730
8731         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
8732           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
8733         * libs/gst/bytestream/adapter.c:
8734         * libs/gst/bytestream/adapter.h:
8735           fix copyright in header and typo in debugging category name
8736
8737 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8738
8739         * configure.ac:
8740           bump nano to cvs
8741
8742 === release 0.8.3 ===
8743
8744 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8745
8746         * configure.ac:
8747           update libtool versioning
8748           do a new release
8749         * docs/gst/tmpl/gstelement.sgml:
8750         * docs/gst/tmpl/gsttypes.sgml:
8751         * gst/gstinfo.c: (_gst_debug_init):
8752           put back GST_CAT_DATAFLOW to fix API breakage
8753
8754 2004-06-04  David Schleef  <ds@schleef.org>
8755
8756         * autogen.sh: Add a temporary 'env' to test buildbot problems.
8757
8758 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8759
8760         * configure.ac:
8761           bump nano to cvs
8762
8763 === release 0.8.2 ===
8764
8765 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8766
8767         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
8768           check GST_DEBUG environment variable which is parsed the same way
8769           as --gst-debug=
8770
8771 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8772
8773         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
8774                             gstmd5sink.c gstshaper.c gsttee.c
8775                             gsttypefindelement.c
8776         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
8777
8778           - removing trailing commas at end of enums
8779             it is correct C99 code but C90 compilers would complain
8780             (AIX, Forte, ...)
8781             ('should' fix #143290, at least partially)
8782
8783 2004-05-27  Wim Taymans  <wim@fluendo.com>
8784
8785         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
8786         (chain_group_set_enabled), (create_group), (add_to_group),
8787         (merge_groups), (setup_group_scheduler), (group_elements),
8788         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
8789         Don't try to follow the pad connections with other groups
8790         when a loop based element is added to the scheduler because
8791         the bin will inform the scheduler about the pad links a little
8792         later.
8793
8794 2004-05-27  Wim Taymans  <wim@fluendo.com>
8795
8796         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8797         (remove_from_chain), (chain_group_set_enabled),
8798         (setup_group_scheduler), (group_element_set_enabled),
8799         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
8800         (gst_opt_scheduler_show):
8801         Elements without a group can do a state change as well, just wait
8802         with the setup of the scheduling function when it is added to a
8803         chain.
8804
8805 2004-05-27  Wim Taymans  <wim@fluendo.com>
8806
8807         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8808         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
8809         (merge_groups), (setup_group_scheduler),
8810         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
8811         (gst_opt_scheduler_show):
8812         Fixes to maintain internal consistency of the scheduler data
8813         structures. 
8814          - adding an enabled group to a chain should increment the
8815            number of enabled elements in that chain.
8816          - removing an enabled group from a chain could disable the
8817            chain.
8818          - removing a disabled group from a chain could enable the
8819            chain.
8820          - add g_assert when internal inconsistency is detected.
8821          - adding an element to a group could increase the number of
8822            links this group has with other groups.
8823          - merging two groups also merges the chains.
8824          - also show group links in the _show method.
8825            
8826
8827 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8828
8829         * gst/gstcaps.c: (gst_caps_structure_simplify):
8830           don't print error messages when there is no error
8831         * gst/gstvalue.c: (gst_value_compare_int_range):
8832           compare the second value, too
8833         * testsuite/caps/Makefile.am:
8834         * testsuite/caps/random.c: (assert_on_error), (main):
8835           add tests to make sure the two things above are checked for
8836
8837 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8838
8839         * configure.ac:
8840         * libs/gst/dataprotocol/Makefile.am:
8841         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
8842         * libs/gst/dataprotocol/dataprotocol.h:
8843           wrap header in GST_ENABLE_NEW.  make code use it
8844
8845 2004-05-23  Johan Dahlin  <johan@gnome.org>
8846
8847         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
8848         so verbose and print GstElement signal names all the time.
8849
8850 2004-05-22  David Schleef  <ds@schleef.org>
8851
8852         * gst/registries/gstxmlregistry.c:
8853         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
8854         (bug #142957)
8855
8856 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
8857
8858         * configure.ac:
8859           scrub cflags for glib2 so gcc doesn't complain when glib is in
8860           /usr/local
8861
8862 2004-05-21  Johan Dahlin  <johan@gnome.org>
8863
8864         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
8865         __GNUC__, patch from Brian Cameron, fixes bug #142804
8866
8867 2004-05-20  David Schleef  <ds@schleef.org>
8868
8869         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
8870         comparison code.  (bug #142819)
8871
8872 2004-05-20  Wim Taymans  <wim@fluendo.com>
8873
8874         * gst/gstbuffer.c: (gst_buffer_default_copy):
8875         * gst/gstbuffer.h:
8876         Added Comment to a flag.
8877         copy relevant flags in _buffer_copy.
8878
8879 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8880
8881         reviewed by: Wim Taymans <wim at fluendo dot com>
8882
8883         * gst/gstbuffer.h:
8884           add GST_BUFFER_IN_CAPS buffer flag
8885         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8886         (gst_structure_parse_any_list), (gst_structure_parse_list),
8887         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
8888         * gst/gstvalue.c: (gst_value_serialize_any_list),
8889         (gst_value_transform_any_list_string),
8890         (gst_value_list_prepend_value), (gst_value_list_append_value),
8891         (gst_value_list_get_size), (gst_value_list_get_value),
8892         (gst_value_transform_list_string),
8893         (gst_value_transform_fixed_list_string),
8894         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
8895         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
8896         (_gst_value_initialize):
8897         * gst/gstvalue.h:
8898           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
8899           < , > as a format.
8900         * testsuite/caps/string-conversions.c: (main):
8901           add regression tests for < >
8902
8903 2004-05-20  Johan Dahlin  <johan@gnome.org>
8904
8905         * docs/gst/Makefile.am (all-local): Re-add
8906
8907 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8908
8909         * docs/gst/Makefile.am:
8910         * docs/gst/gstreamer-docs.sgml:
8911         * docs/libs/Makefile.am:
8912         * docs/libs/gstreamer-libs-docs.sgml:
8913           fix distcheck issues
8914
8915 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8916
8917         * libs/gst/dataprotocol/Makefile.am:
8918           add to autotest
8919
8920 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8921
8922         * libs/gst/dataprotocol/Makefile.am:
8923         * libs/gst/dataprotocol/dataprotocol.c:
8924         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8925         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
8926         * libs/gst/dataprotocol/dp-private.h:
8927           use GST macros to read/write fixed length ints
8928           add some more asserts
8929
8930 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8931
8932         * docs/libs/gstreamer-libs-docs.sgml:
8933         * docs/libs/gstreamer-libs-sections.txt:
8934           remove idct and putbits
8935         * configure.ac:
8936         * docs/libs/tmpl/gstdataprotocol.sgml:
8937         * libs/gst/Makefile.am:
8938         * libs/gst/dataprotocol/Makefile.am:
8939         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
8940         (buffer_test), (caps_test), (event_test), (main):
8941         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
8942         (gst_dp_dump_byte_array), (gst_dp_init),
8943         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
8944         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8945         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
8946         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
8947         (gst_dp_validate_header), (gst_dp_validate_payload),
8948         (gst_dp_validate_packet), (plugin_init):
8949         * libs/gst/dataprotocol/dataprotocol.h:
8950         * libs/gst/dataprotocol/dp-private.h:
8951           add dataprotocol
8952
8953 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8954
8955         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
8956           fix int variable deserialization and add a helper so we can actually
8957           debug this.
8958
8959 2004-05-18  David Schleef  <ds@schleef.org>
8960
8961         * testsuite/debug/commandline.c: (main): Call ./commandline, not
8962           argv[0].  Calling yourself is probably not the best way to
8963           construct a test like this, btw.
8964
8965 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8966
8967         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
8968           don't claim to be more intelligent than a scheduler when the
8969           scheduler claims the pipeline is stopped
8970         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
8971         (safe_cothread_destroy),
8972         (gst_entry_scheduler_remove_all_cothreads),
8973         (gst_entry_scheduler_reset), (_remove_cothread),
8974         (gst_entry_scheduler_state_transition):
8975           hold off cothread destruction if we're not in main cothread
8976         * configure.ac:
8977         * testsuite/Makefile.am:
8978           add new test dir
8979         * testsuite/schedulers/.cvsignore:
8980         * testsuite/schedulers/Makefile.am:
8981           add tests
8982         * testsuite/schedulers/relink.c: (cb_handoff), (main):
8983           check relinking and adding/removing elements from a running pipeline
8984         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
8985           check unlinking in a running pipeline
8986         * testsuite/schedulers/unref.c: (cb_handoff), (main):
8987           check unreffing a running pipeline
8988         * testsuite/schedulers/useless_iteration.c: (main):
8989           check iterating a pipeline that contains running threads works
8990
8991 2004-05-18  David Schleef  <ds@schleef.org>
8992
8993         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
8994           is false.
8995
8996 2004-05-18  Wim Taymans  <wim@fluendo.com>
8997
8998         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8999         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
9000         Fixed an error introduced with patch for 1.63. When setting
9001         a get based element as the entry point in a group, make sure
9002         to mark the group as GET based.
9003
9004 2004-05-18  Wim Taymans  <wim@fluendo.com>
9005
9006         * gst/schedulers/gstoptimalscheduler.c: (create_group),
9007         (setup_group_scheduler), (loop_group_schedule_function),
9008         (gst_opt_scheduler_pad_link):
9009         Added some more debug info and fixed a bug where the group
9010         type was set to LOOP but it was in fact unknown.
9011
9012 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9013
9014         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
9015           make resetting scheduler work twice in a row
9016
9017 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9018
9019         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
9020         (CREATE_USERIALIZATION), (_gst_value_initialize),
9021         (gst_value_compare_float), (gst_value_serialize_float),
9022         (gst_value_deserialize_float), (gst_value_compare_enum),
9023         (gst_value_serialize_enum), (gst_value_deserialize_enum):
9024           add serialization and comparison functions for long, int64, enum and
9025           float values
9026         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
9027           use best serialization function in type hierarchy instead of only a
9028           matching one. This is required for enums to work.
9029         * gst/parse/grammar.y:
9030           use gst_caps_deserialize
9031         * testsuite/parse/Makefile.am:
9032           parse1 now works
9033         * testsuite/parse/parse1.c: (main):
9034           remove aggregator check, aggregator is broken, this test works now
9035           but fails because of bug #138012
9036         * testsuite/parse/parse2.c: (main):
9037           s/xvideosink/xvimagesink - this test looks a lot like we should
9038           disable it
9039
9040 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9041
9042         * gst/gstelement.c: (gst_element_class_init):
9043           whoops, store the signal id correctly
9044         * gst/schedulers/gstbasicscheduler.c:
9045         (gst_basic_scheduler_chain_wrapper):
9046           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
9047           chain function isn't linked
9048
9049 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
9050         * configure.ac:
9051         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
9052         support until we decide where the flags should be used
9053         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
9054         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
9055         * gst/gstpad.c: (gst_pad_link_call_link_functions):
9056         Output refused caps in the debug info
9057
9058 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9059
9060         * gst/elements/gstidentity.c: (gst_identity_chain):
9061           add duration debug
9062         * gst/gstinfo.c: (gst_debug_log_default):
9063           add timestamp
9064
9065 2004-05-13  Benjamin Otte  <otte@gnome.org>
9066
9067         * gst/gstpipeline.c: (gst_pipeline_dispose),
9068         (gst_pipeline_change_state):
9069           call gst_scheduler_reset on dispose (fixes #141416)
9070
9071 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9072
9073         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
9074           compute mapsize correctly
9075         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
9076           use correct datatypes when calling a varargs function
9077         * gst/elements/gsttypefindelement.c: (stop_typefinding):
9078           push a DISCONT event as first thing
9079         * gst/gst_private.h:
9080         * gst/gstinfo.c: (_gst_debug_init):
9081           remove GST_DATAFLOW debugging category
9082         * gst/gstbin.c: (gst_bin_iterate):
9083           use GST_SCHEDULING category
9084         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
9085         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
9086         (gst_pad_call_get_function):
9087           add GST_DATAFLOW to easily track flow of buffers or events.
9088         * gst/gstqueue.c: (gst_queue_get_type),
9089         (gst_queue_handle_pending_events), (gst_queue_chain),
9090         (gst_queue_get), (gst_queue_handle_src_event):
9091           use own static debugging category GST_DATAFLOW for dataflow,
9092           use DEBUG category for showing which path events go, use LOG
9093           category for buffers.
9094
9095 2004-05-10  David Schleef  <ds@schleef.org>
9096
9097         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
9098
9099 2004-05-10  David Schleef  <ds@schleef.org>
9100
9101         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
9102         symbols, because otherwise we don't know what they are.  Thanks,
9103         the GStreamer team.
9104         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
9105
9106 2004-05-10  David Schleef  <ds@schleef.org>
9107
9108         (from Steve Lhomme)
9109         * win32/Makefile: When using make clean the MS Visual Studio makefiles
9110         are deleted.  Fix.
9111         * win32/Makefile.inspect:
9112         * win32/Makefile.launch:
9113         * win32/Makefile.register:
9114
9115 2004-05-10  David Schleef  <ds@schleef.org>
9116
9117         * gst/gstinfo.h: Add missing inline function.
9118         * gst/gsttrace.c: add include
9119         * gst/parse/grammar.y: remove unused code
9120         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
9121         more portable.
9122         * tools/gst-register.c: wrap unistd.h
9123         
9124         More additions/fixes from Steve for the MSVC build.
9125         * win32/GStreamer.vcproj:
9126         * win32/Makefile:
9127         * win32/Makefile.inspect:
9128         * win32/Makefile.launch:
9129         * win32/Makefile.register:
9130         * win32/README.txt:
9131         * win32/gst-inspect.vcproj:
9132         * win32/gst-launch.vcproj:
9133         * win32/gst-register.vcproj:
9134         * win32/gstbytestream.def:
9135         * win32/gstbytestream.vcproj:
9136         * win32/gstconfig.h:
9137         * win32/gstelements.def:
9138         * win32/gstelements.vcproj:
9139         * win32/gstenumtypes.c:
9140         * win32/gstenumtypes.h:
9141         * win32/gstoptimalscheduler.def:
9142         * win32/gstoptimalscheduler.vcproj:
9143         * win32/gstreamer.def:
9144         * win32/gstspider.def:
9145         * win32/gstspider.vcproj:
9146         * win32/gstversion.h:
9147         * win32/msvc71.sln:
9148
9149 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9150
9151         * gst/gstelement.c: (gst_element_class_init),
9152         (gst_element_no_more_pads):
9153         * gst/gstelement.h:
9154           add gst_element_no_more_pads and the "no-more-pads" signal
9155
9156 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9157
9158         * gst/gstregistry.c: (gst_registry_add_plugin):
9159           refuse to add plugins when a plugin with same name is already
9160           registered. Fixes a bunch of "How to remove plugins?" issues.
9161           May lead to other problems though, let's test
9162
9163 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9164
9165         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
9166         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
9167         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
9168
9169 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9170
9171         * tests/Makefile.am: fix am16 issue
9172
9173 2004-05-09  Benjamin Otte  <otte@gnome.org>
9174
9175         * libs/gst/bytestream/Makefile.am:
9176           we should indeed add .c files to makefiles or they won't be built
9177           (d'oh)
9178
9179 2004-05-08  Benjamin Otte  <otte@gnome.org>
9180
9181         * gst/gstpad.c: (gst_pad_proxy_fixate):
9182           really reduce the set of caps
9183
9184 2004-05-08  Benjamin Otte  <otte@gnome.org>
9185
9186         * tests/Makefile.am:
9187         * tests/spidey_bench.c: (handoff), (main):
9188           add benchmark to test how long spider needs to create a pipeline
9189
9190 2004-05-08  Benjamin Otte  <otte@gnome.org>
9191
9192         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
9193           mark links as unengaged when unnegotiating instead of deactivating.
9194           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
9195
9196 2004-05-08  Benjamin Otte  <otte@gnome.org>
9197
9198         * docs/manual/helloworld.xml:
9199           s/audiosink/osssink (patch by Patrick Guimond)
9200
9201 2004-05-07  David Schleef  <ds@schleef.org>
9202
9203         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
9204         since it contains important stuff.
9205
9206 2004-05-07  David Schleef  <ds@schleef.org>
9207
9208         * testsuite/caps/caps.c: (test3), (main): A check for appending
9209         ANY caps.
9210
9211 2004-05-07  David Schleef  <ds@schleef.org>
9212
9213         * common/m4/as-compiler-flag.m4: Properly quote arguments,
9214         which may contain commas.  Fixes detection of -Wa,-mregnames
9215
9216 2004-05-06  David Schleef  <ds@schleef.org>
9217
9218         Changes to handle compilers that don't have variadic macro
9219         support.  In particular, glib headers define some inlines
9220         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
9221         builds.
9222         * gst/Makefile.am:
9223         * gst/cothreads.c:
9224         * gst/elements/gstfdsink.c:
9225         * gst/elements/gstfdsrc.c:
9226         * gst/elements/gstfilesink.c:
9227         * gst/elements/gstfilesrc.c:
9228         * gst/gst_private.h:
9229         * gst/gstatomic.c:
9230         * gst/gstcaps.c: (gst_caps_append):
9231         * gst/gstcpu.c: (gst_cpuid_i386):
9232         * gst/gstelement.c:
9233         * gst/gsterror.c:
9234         * gst/gstfilter.c:
9235         * gst/gstinfo.h:
9236         * gst/gstprobe.c:
9237         * gst/gstquery.c:
9238         * gst/gstregistry.c:
9239         * gst/gststructure.c:
9240         * gst/gsttaginterface.c:
9241         * gst/gsttrace.c: (gst_trace_new):
9242         * gst/gsttrashstack.c:
9243         * gst/gsturi.c:
9244         * gst/gstvalue.c:
9245         * gst/parse/grammar.y:
9246         * gst/parse/parse.l:
9247         * tools/gst-inspect.c: (main):
9248         * tools/gst-launch.c: (main):
9249         * tools/gst-xmlinspect.c: (PUT_STRING):
9250
9251 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9252
9253         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9254         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9255         * gst/elements/gstfilesrc.h:
9256           send NEW_MEDIA events correctly
9257         * gst/elements/gsttypefindelement.c: (start_typefinding),
9258         (gst_type_find_element_handle_event):
9259           restart typefinding when we get a NEW_MEDIA event
9260         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
9261         (gst_bin_dispose):
9262           don't die when someone removes elements in callbacks
9263         * gst/gstelement.c: (gst_element_change_state):
9264           improve debugging
9265         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
9266           we need a NEW_MEDIA event to engage a link
9267         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
9268           don't g_print debugging stuff
9269         * testsuite/caps/simplify.c: (check_caps):
9270
9271 2004-05-04  Benjamin Otte  <otte@gnome.org>
9272
9273         * gst/parse/grammar.y:
9274           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
9275
9276 2004-05-04  Benjamin Otte  <otte@gnome.org>
9277
9278         * testsuite/caps/renegotiate.c: (main):
9279           improve output in error case
9280
9281 2004-05-04  Benjamin Otte  <otte@gnome.org>
9282
9283         * gst/parse/grammar.y:
9284           fix assert to not trigger when there's no error argument
9285         * gst/parse/parse.l:
9286           fix definition of caps to allow more than two structures
9287         * testsuite/caps/Makefile.am:
9288         * testsuite/caps/renegotiate.c: (main):
9289           it's sinesrc and works in that case
9290
9291 2004-05-04  Wim Taymans  <wim@fluendo.com>
9292
9293         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
9294         (group_dec_link), (gst_opt_scheduler_pad_unlink):
9295         when removing an element from a group, we always need to
9296         decrement the link count that this group had with other 
9297         groups through the element.
9298         added an extra assert to catch inconsistencies when decrementing
9299         the link count.
9300
9301 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9302
9303         * configure.ac:
9304         * docs/gst/Makefile.am:
9305         * docs/gst/gstreamer-sections.txt:
9306         * docs/gst/tmpl/gstcompat.sgml:
9307         * examples/appreader/Makefile.am:
9308         * examples/cutter/Makefile.am:
9309         * examples/events/Makefile.am:
9310         * examples/helloworld/Makefile.am:
9311         * examples/helloworld2/Makefile.am:
9312         * examples/launch/Makefile.am:
9313         * examples/manual/Makefile.am:
9314         * examples/mixer/Makefile.am:
9315         * examples/pingpong/Makefile.am:
9316         * examples/plugins/Makefile.am:
9317         * examples/queue/Makefile.am:
9318         * examples/queue2/Makefile.am:
9319         * examples/queue3/Makefile.am:
9320         * examples/queue4/Makefile.am:
9321         * examples/retag/Makefile.am:
9322         * examples/thread/Makefile.am:
9323         * examples/typefind/Makefile.am:
9324         * examples/xml/Makefile.am:
9325         * gst/Makefile.am:
9326         * gst/autoplug/Makefile.am:
9327         * gst/elements/Makefile.am:
9328         * gst/gstcompat.h:
9329         * gst/indexers/Makefile.am:
9330         * gst/parse/Makefile.am:
9331         * gst/registries/Makefile.am:
9332         * gst/schedulers/Makefile.am:
9333         * libs/gst/bytestream/Makefile.am:
9334         * libs/gst/control/Makefile.am:
9335         * libs/gst/getbits/Makefile.am:
9336         * po/af.po:
9337         * po/az.po:
9338         * po/en_GB.po:
9339         * po/fr.po:
9340         * po/nl.po:
9341         * po/sr.po:
9342         * po/sv.po:
9343         * po/tr.po:
9344         * po/uk.po:
9345         * tests/Makefile.am:
9346         * tests/bufspeed/Makefile.am:
9347         * tests/instantiate/Makefile.am:
9348         * tests/memchunk/Makefile.am:
9349         * tests/muxing/Makefile.am:
9350         * tests/negotiation/Makefile.am:
9351         * tests/probes/Makefile.am:
9352         * tests/sched/Makefile.am:
9353         * tests/seeking/Makefile.am:
9354         * tests/threadstate/Makefile.am:
9355         * testsuite/caps/Makefile.am:
9356         * testsuite/cleanup/Makefile.am:
9357         * testsuite/dlopen/Makefile.am:
9358         * testsuite/dynparams/Makefile.am:
9359         * testsuite/plugin/Makefile.am:
9360         * testsuite/states/Makefile.am:
9361         * tools/Makefile.am:
9362           reorganize compile/link flags to be consistent
9363           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
9364
9365 2004-05-04  David Schleef  <ds@schleef.org>
9366
9367         The "once more, with feeling" check-in.
9368         * testsuite/caps/Makefile.am: dist caps_strings
9369         * testsuite/caps/renegotiate.c: (main): This test triggers a
9370           segfault in the core.  Marking as failing.
9371
9372 2004-05-03  David Schleef  <ds@schleef.org>
9373
9374         * testsuite/caps/deserialize.c: (main): Fix problems noticed
9375           by the build bots.
9376         * testsuite/caps/renegotiate.c: (main): Same.
9377
9378 2004-05-03  David Schleef  <ds@schleef.org>
9379
9380         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
9381
9382 2004-05-03  David Schleef  <ds@schleef.org>
9383
9384         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
9385           variable to find our source file.
9386
9387 2004-05-03  David Schleef  <ds@schleef.org>
9388
9389         * configure.ac:  Link plugins with libgstreamer and dependent
9390           libraries
9391         * testsuite/caps/Makefile.am:
9392         * testsuite/caps/caps_strings:
9393         * testsuite/caps/deserialize.c: (main): Add a little test to slog
9394           through a file of caps strings and test each one
9395
9396 2004-05-04  Benjamin Otte  <otte@gnome.org>
9397
9398         * libs/gst/bytestream/Makefile.am:
9399         * libs/gst/bytestream/adapter.c: 
9400         * libs/gst/bytestream/adapter.h:
9401           add GstAdapter, similar to bytestream, but doesn't require ugly event
9402           handling or uglier loopbased elements
9403
9404 2004-05-03  David Schleef  <ds@schleef.org>
9405
9406         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
9407         * testsuite/caps/erathostenes.c:
9408         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
9409
9410 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9411
9412         * docs/pwg/pwg.xml:
9413           remove hardcoded stylesheet path (duh)
9414         * docs/random/release:
9415         * docs/gst/gstreamer-sections.txt:
9416         * gst/Makefile.am:
9417         * gst/gst.h:
9418         * gst/gst_private.h:
9419         * gst/gstcaps.c:
9420         * gst/gstevent.c:
9421         * gst/gstformat.c:
9422         * gst/gstinfo.c:
9423         * gst/gstinfo.h:
9424         * gst/gstinterface.c:
9425         * gst/gstmemchunk.c:
9426         * gst/gstprobe.c:
9427         * gst/gstquery.c:
9428         * gst/gstregistry.c:
9429         * gst/gstregistrypool.c:
9430         * gst/gststructure.c:
9431         * gst/gsttaginterface.c:
9432         * gst/gstthread.c:
9433         * gst/gsttrace.c:
9434         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
9435         * gst/gsturi.c:
9436         * gst/gstvalue.c:
9437           deprecate gst_info; remove gstlog.h
9438    
9439
9440 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9441
9442         * Makefile.am:
9443         * po/en_GB.po:
9444         * po/sv.po:
9445         * po/uk.po:
9446           updated translations
9447
9448 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9449
9450         * gst/gstbin.c: (gst_bin_dispose):
9451           better debugging
9452
9453 2004-05-03  Johan Dahlin  <johan@gnome.org>
9454
9455         * gst/schedulers/gstoptimalscheduler.c
9456         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
9457         really is a GstElement. Avoids critical when running gst-launch -v
9458         and a oggdemux/decoding pipeline.
9459
9460 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9461
9462         * docs/gst/tmpl/gstpipeline.sgml :
9463         * docs/manual/elements-api.xml :
9464                 doc fix by Patrick Guimond (Protector) from devel ML
9465                 reviewed by ronald
9466
9467 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9468
9469         * docs/gst/Makefile.am :
9470         * docs/libs/Makefile.am :
9471                 apply a patch from Arwed v. Merkatz so that gtk-doc
9472                 generated docs install (same for .devhelp file)
9473                 (fixes part 1 of #138836)
9474
9475 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9476
9477         * docs/faq/dependencies.xml: typo
9478         * docs/faq/getting.xml :
9479             - fix download URL for new gstreamer site
9480             - hide sf.net download page as latest version aren't there
9481             - fix apt URLs
9482             - fill "get via CVS" paragraph (link to dev page on the site)
9483         * docs/faq/general.xml:
9484             hide status tables as they no more exists
9485             change case on plugins license file to reflect reality
9486         * docs/faq/troubleshooting.xml:
9487             remove the wiki question/answer as there is no more wiki
9488
9489 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9490
9491         * gst/gsterror.h:
9492           include the headers needed for declarations used in this header
9493
9494 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9495
9496         * docs/random/uraeus/gstreamer_and_midi.txt :
9497           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
9498           (fixes #132288)
9499
9500 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
9501
9502         reviewed by Benjamin Otte  <otte@gnome.org>
9503
9504         * gst/schedulers/gthread-cothreads.h:
9505           free allocated data for main cothread, too when destroying context
9506           (fixes #141417)
9507
9508 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9509
9510         * docs/manual/goals.xml : remove duplicated paragraph at end 
9511         of doc page (fixes #141448)
9512
9513 2004-04-29  David Schleef  <ds@schleef.org>
9514
9515         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
9516         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
9517
9518 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9519
9520         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
9521           fix property
9522         * gst/gstcaps.c:
9523           fix doc string
9524         * po/POTFILES.in:
9525           rename typefind source file
9526
9527 2004-04-28  David Schleef  <ds@schleef.org>
9528
9529         Several new files from Steve Lhomme's MSVC patch (bug #141317):
9530         * win32/GStreamer.vcproj:
9531         * win32/Makefile:
9532         * win32/config.h:
9533         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
9534         (_trewinddir), (_ttelldir), (_tseekdir):
9535         * win32/dirent.h:
9536         * win32/gst-inspect.vcproj:
9537         * win32/gst-launch.vcproj:
9538         * win32/gst-register.vcproj:
9539         * win32/gstbytestream.vcproj:
9540         * win32/gstelements.vcproj:
9541         * win32/gstoptimalscheduler.vcproj:
9542         * win32/gstspider.vcproj:
9543         * win32/gtchar.h:
9544         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
9545         * win32/mman.h:
9546         * win32/mman.inl:
9547         * win32/msvc71.sln:
9548
9549 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9550
9551         * gst/gst.c: (init_post):
9552         * gst/gstinfo.c:
9553           remove useless _gst_progname stuff
9554         * tools/gst-inspect.c: (print_field), (print_caps):
9555           improve caps output
9556
9557 2004-04-28  David Schleef  <ds@schleef.org>
9558
9559         Disable parsing of a lot of files that aren't part of the
9560         exported API.  Move corresponding template files to old/,
9561         waiting for removal when they don't contain anything
9562         interesting.
9563         * docs/gst/Makefile.am:
9564         * docs/gst/gstreamer-sections.txt:
9565         * docs/gst/tmpl/cothreads.sgml:
9566         * docs/gst/tmpl/cothreads_compat.sgml:
9567         * docs/gst/tmpl/gettext.sgml:
9568         * docs/gst/tmpl/gobject2gtk.sgml:
9569         * docs/gst/tmpl/grammar.tab.sgml:
9570         * docs/gst/tmpl/gst-i18n-app.sgml:
9571         * docs/gst/tmpl/gst-i18n-lib.sgml:
9572         * docs/gst/tmpl/gst_private.sgml:
9573         * docs/gst/tmpl/gstaggregator.sgml:
9574         * docs/gst/tmpl/gstarch.sgml:
9575         * docs/gst/tmpl/gstatomic_impl.sgml:
9576         * docs/gst/tmpl/gstbufferstore.sgml:
9577         * docs/gst/tmpl/gstdata_private.sgml:
9578         * docs/gst/tmpl/gstdisksink.sgml:
9579         * docs/gst/tmpl/gstdisksrc.sgml:
9580         * docs/gst/tmpl/gstelementfactory.sgml:
9581         * docs/gst/tmpl/gstextratypes.sgml:
9582         * docs/gst/tmpl/gstfakesink.sgml:
9583         * docs/gst/tmpl/gstfakesrc.sgml:
9584         * docs/gst/tmpl/gstfdsink.sgml:
9585         * docs/gst/tmpl/gstfdsrc.sgml:
9586         * docs/gst/tmpl/gstfilesink.sgml:
9587         * docs/gst/tmpl/gstfilesrc.sgml:
9588         * docs/gst/tmpl/gsthttpsrc.sgml:
9589         * docs/gst/tmpl/gstidentity.sgml:
9590         * docs/gst/tmpl/gstindexfactory.sgml:
9591         * docs/gst/tmpl/gstmarshal.sgml:
9592         * docs/gst/tmpl/gstmd5sink.sgml:
9593         * docs/gst/tmpl/gstmultidisksrc.sgml:
9594         * docs/gst/tmpl/gstmultifilesrc.sgml:
9595         * docs/gst/tmpl/gstpadtemplate.sgml:
9596         * docs/gst/tmpl/gstpipefilter.sgml:
9597         * docs/gst/tmpl/gstschedulerfactory.sgml:
9598         * docs/gst/tmpl/gstsearchfuncs.sgml:
9599         * docs/gst/tmpl/gstshaper.sgml:
9600         * docs/gst/tmpl/gstspider.sgml:
9601         * docs/gst/tmpl/gstspideridentity.sgml:
9602         * docs/gst/tmpl/gststatistics.sgml:
9603         * docs/gst/tmpl/gsttee.sgml:
9604         * docs/gst/tmpl/gsttimecache.sgml:
9605         * docs/gst/tmpl/gsttypefind.sgml:
9606         * docs/gst/tmpl/gsttypefindfactory.sgml:
9607         * docs/gst/tmpl/gstxmlregistry.sgml:
9608         * docs/gst/tmpl/gthread-cothreads.sgml:
9609         * docs/gst/tmpl/old/cothreads.sgml:
9610         * docs/gst/tmpl/old/cothreads_compat.sgml:
9611         * docs/gst/tmpl/old/gettext.sgml:
9612         * docs/gst/tmpl/old/gobject2gtk.sgml:
9613         * docs/gst/tmpl/old/grammar.tab.sgml:
9614         * docs/gst/tmpl/old/gst-i18n-app.sgml:
9615         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
9616         * docs/gst/tmpl/old/gst_private.sgml:
9617         * docs/gst/tmpl/old/gstaggregator.sgml:
9618         * docs/gst/tmpl/old/gstarch.sgml:
9619         * docs/gst/tmpl/old/gstatomic_impl.sgml:
9620         * docs/gst/tmpl/old/gstbufferstore.sgml:
9621         * docs/gst/tmpl/old/gstdata_private.sgml:
9622         * docs/gst/tmpl/old/gstdisksink.sgml:
9623         * docs/gst/tmpl/old/gstdisksrc.sgml:
9624         * docs/gst/tmpl/old/gstelementfactory.sgml:
9625         * docs/gst/tmpl/old/gstextratypes.sgml:
9626         * docs/gst/tmpl/old/gstfakesink.sgml:
9627         * docs/gst/tmpl/old/gstfakesrc.sgml:
9628         * docs/gst/tmpl/old/gstfdsink.sgml:
9629         * docs/gst/tmpl/old/gstfdsrc.sgml:
9630         * docs/gst/tmpl/old/gstfilesink.sgml:
9631         * docs/gst/tmpl/old/gstfilesrc.sgml:
9632         * docs/gst/tmpl/old/gsthttpsrc.sgml:
9633         * docs/gst/tmpl/old/gstidentity.sgml:
9634         * docs/gst/tmpl/old/gstindexfactory.sgml:
9635         * docs/gst/tmpl/old/gstmarshal.sgml:
9636         * docs/gst/tmpl/old/gstmd5sink.sgml:
9637         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
9638         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
9639         * docs/gst/tmpl/old/gstpadtemplate.sgml:
9640         * docs/gst/tmpl/old/gstpipefilter.sgml:
9641         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
9642         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
9643         * docs/gst/tmpl/old/gstshaper.sgml:
9644         * docs/gst/tmpl/old/gstspider.sgml:
9645         * docs/gst/tmpl/old/gstspideridentity.sgml:
9646         * docs/gst/tmpl/old/gststatistics.sgml:
9647         * docs/gst/tmpl/old/gsttee.sgml:
9648         * docs/gst/tmpl/old/gsttimecache.sgml:
9649         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
9650         * docs/gst/tmpl/old/gstxmlregistry.sgml:
9651         * docs/gst/tmpl/old/gthread-cothreads.sgml:
9652         * docs/gst/tmpl/old/types.sgml:
9653         * docs/gst/tmpl/types.sgml:
9654
9655         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
9656         gtkdoc-scan doesn't like files with the same name in different
9657         directories.
9658         * gst/elements/Makefile.am:
9659         * gst/elements/gstelements.c:
9660         * gst/elements/gsttypefind.c: 
9661         * gst/elements/gsttypefind.h:
9662         * gst/elements/gsttypefindelement.c:
9663         * gst/elements/gsttypefindelement.h:
9664
9665 2004-04-28  David Schleef  <ds@schleef.org>
9666
9667         A bunch of portability fixes, derived from Steve Lhomme's MSVC
9668         patch (bug #141317):
9669         * gst/gst-i18n-lib.h: Allow disabling gettext.
9670         * gst/gstatomic_impl.h: disable warning when it's dumb.
9671         * gst/gstclock.c: fix include
9672         * gst/gstcompat.h: fix variadic macro
9673         * gst/gstinfo.c: fix include
9674         * gst/gstmacros.h: add defines for inlines on MSVC
9675         * gst/gstplugin.c: fix includes
9676         * gst/gstregistry.c: fix includes
9677         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
9678         * gst/gstsystemclock.c: fix include
9679         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
9680         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
9681         * gst/registries/gstxmlregistry.c:
9682         (gst_xml_registry_parse_element_factory): fix use of non-portable
9683         functions
9684         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
9685         * libs/gst/control/dparammanager.h: same
9686
9687 2004-04-28  David Schleef  <ds@schleef.org>
9688
9689         Move a bunch of unused files to old/ with names that are
9690         not case-insensitive-unique.  These files still contain some
9691         useful information that needs to be merged into gstbin.sgml,
9692         etc., so they shouldn't be deleted yet.
9693         * docs/gst/tmpl/GstBin.sgml:
9694         * docs/gst/tmpl/GstBuffer.sgml:
9695         * docs/gst/tmpl/GstCaps.sgml:
9696         * docs/gst/tmpl/GstClock.sgml:
9697         * docs/gst/tmpl/GstCompat.sgml:
9698         * docs/gst/tmpl/GstData.sgml:
9699         * docs/gst/tmpl/GstElement.sgml:
9700         * docs/gst/tmpl/GstEvent.sgml:
9701         * docs/gst/tmpl/GstIndex.sgml:
9702         * docs/gst/tmpl/GstStructure.sgml:
9703         * docs/gst/tmpl/GstTag.sgml:
9704         * docs/gst/tmpl/old/GstBin.sgml:
9705         * docs/gst/tmpl/old/GstBuffer.sgml:
9706         * docs/gst/tmpl/old/GstCaps.sgml:
9707         * docs/gst/tmpl/old/GstClock.sgml:
9708         * docs/gst/tmpl/old/GstCompat.sgml:
9709         * docs/gst/tmpl/old/GstData.sgml:
9710         * docs/gst/tmpl/old/GstElement.sgml:
9711         * docs/gst/tmpl/old/GstEvent.sgml:
9712         * docs/gst/tmpl/old/GstIndex.sgml:
9713         * docs/gst/tmpl/old/GstStructure.sgml:
9714         * docs/gst/tmpl/old/GstTag.sgml:
9715
9716 2004-04-28  David Schleef  <ds@schleef.org>
9717
9718         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
9719         (gst_caps_append), (gst_caps_append_structure),
9720         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
9721         (gst_caps_set_simple), (gst_caps_set_simple_valist),
9722         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
9723         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
9724         (gst_caps_intersect), (gst_caps_normalize),
9725         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
9726         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
9727         * gst/gstcaps.h: use GST_IS_CAPS().
9728
9729 2004-04-26  David Schleef  <ds@schleef.org>
9730
9731         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
9732         assembly.  gcc doesn't handle it correctly. (bug #141083)
9733         * gst/gsttrashstack.h: same
9734
9735 2004-04-25  Benjamin Otte  <otte@gnome.org>
9736
9737         * gst/gstelement.c: (gst_element_change_state):
9738           fix assertion to do an int comparison
9739
9740 2004-04-25  Benjamin Otte  <otte@gnome.org>
9741
9742         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9743           better debugging output on error
9744
9745 2004-04-25  Benjamin Otte  <otte@gnome.org>
9746
9747         * gst/gstcaps.c: (gst_caps_subtract):
9748           fix memleak
9749
9750 2004-04-23  Benjamin Otte  <otte@gnome.org>
9751
9752         * gst/gstvalue.c: (gst_value_compare_buffer),
9753         (_gst_value_initialize):
9754           add comparison function for buffers
9755
9756 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9757
9758         * docs/pwg/pwg.xml:
9759           Just found out that this so-called "ima-wav" format is really
9760           just "dvi adpcm" (according to the MS WAV documentation). So
9761           renaming it. We didn't use it yet anyway.
9762
9763 2004-04-23  Benjamin Otte  <otte@gnome.org>
9764
9765         * gst/gstcaps.c: (gst_caps_is_always_compatible):
9766           call gst_caps_is_subset
9767
9768 2004-04-23  Benjamin Otte  <otte@gnome.org>
9769
9770         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
9771         (gst_caps_is_subset):
9772           add documentation
9773
9774 2004-04-23  Benjamin Otte  <otte@gnome.org>
9775           
9776         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
9777         (gst_caps_structure_subtract), (gst_caps_subtract),
9778         (gst_caps_structure_figure_out_union),
9779         (gst_caps_structure_simplify), (gst_caps_do_simplify):
9780           fix simplifying and subtracting not working correctly with optional
9781           properties
9782           solve assorted problems that make it now simplify ebven more
9783         * docs/gst/tmpl/gstcaps.sgml:
9784         * gst/gstcaps.h:
9785           make gst_caps_do_simplify return a bool to indicate if it simplified
9786         * testsuite/caps/simplify.c: (main):
9787           add more checks. The tests is quite a bit useless right now because
9788           the core is heavily simplifying itself.
9789         * testsuite/caps/caps.h:
9790           fix caps to contain all optional properties
9791
9792 2004-04-22  Benjamin Otte  <otte@gnome.org>
9793
9794         * docs/gst/tmpl/gstcaps.sgml:
9795         * docs/gst/tmpl/gstfilesrc.sgml:
9796         * docs/gst/tmpl/gststructure.sgml:
9797         * docs/gst/tmpl/gstvalue.sgml:
9798           update for recent API changes
9799         * gst/gstcaps.c: (gst_caps_do_simplify):
9800           fix to stop trying with a freed structure
9801         * gst/gstpad.c: (gst_pad_link_fixate):
9802           simplify caps
9803         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
9804           remove C++ comment
9805         * gst/gstpad.h:
9806           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
9807         * gst/gststructure.c: (gst_structure_value_get_generic_type),
9808         (gst_structure_to_string):
9809           keep the correct type when using lists of ranges
9810         * gst/gstvalue.c: (gst_value_list_prepend_value),
9811         (gst_value_list_append_value):
9812           copy the value before adding to the list (d'oh)
9813         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
9814         (gst_value_subtract_int_range_int_range):
9815           handle overflows correctly
9816         * gst/gstvalue.c: (gst_value_subtract_from_list):
9817           fix memleak
9818         * testsuite/caps/caps.h:
9819           add a caps that caused segfaults
9820
9821 2004-04-22  Benjamin Otte  <otte@gnome.org>
9822
9823         * testsuite/refcounting/pad.c: (main):
9824           fix test
9825
9826 2004-04-22  Benjamin Otte  <otte@gnome.org>
9827
9828         * gst/gstcaps.c: (gst_caps_subtract):
9829           allow subtracting ANY and EMPTY from ANY caps
9830
9831 2004-04-22  Benjamin Otte  <otte@gnome.org>
9832
9833         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
9834         (gst_caps_union):
9835           only simplify in functions that create new caps. Simplifying in
9836           gst_caps_append breaks tests.
9837
9838 2004-04-22  Benjamin Otte  <otte@gnome.org>
9839
9840         * gst/gstcaps.c: (gst_caps_structure_simplify):
9841           unset GValue after use
9842         * gst/gstcaps.c: (gst_caps_append), 
9843         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
9844           use gst_caps_simplify (reduces registry size by 30%)
9845         * gst/gstpad.c: (gst_pad_template_new):
9846           don't allow NULL caps
9847
9848 2004-04-22  Benjamin Otte  <otte@gnome.org>
9849
9850         * docs/gst/gstreamer-sections.txt:
9851           add gst_caps_do_simplify
9852         * gst/gstcaps.c:
9853           add documentation for gst_caps_do_simplify
9854         * gst/gstvalue.h:
9855           fix typo in gst_value_register_subtract_func declaration for gst-doc
9856
9857 2004-04-22  Benjamin Otte  <otte@gnome.org>
9858
9859         * gst/gstcaps.c: (gst_caps_from_string_inplace):
9860           fix bug when converting from empty string.
9861         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
9862         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
9863           use gst_caps_new_empty to allocate a new caps. Only that function
9864           allocates memory for caps now.
9865         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
9866         (gst_caps_remove_structure):
9867           add ability to remove one structure (but not to header yet)
9868         * gst/gstcaps.c: (gst_caps_compare_structures),
9869         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
9870         (gst_caps_structure_simplify), (gst_caps_do_simplify),
9871         * gst/gstcaps.h:
9872           add gst_caps_do_simplify that tries to simplify a caps in place.
9873           Deprecate old gst_caps_simplify function.
9874         * testsuite/caps/caps.h:
9875           add caps.h containing a common set of caps to test against.
9876         * testsuite/caps/sets.c: (check_caps), (main):
9877           use it.
9878         * testsuite/caps/.cvsignore:
9879         * testsuite/caps/Makefile.am:
9880         * testsuite/caps/simplify.c: (check_caps), (main):
9881           add test to check correctness and efficency of caps simplification.
9882
9883 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
9884
9885         reviewed by Benjamin Otte  <otte@gnome.org>
9886
9887         * gst/gstparse.c: (_gst_parse_escape):
9888           Free the GString used in _gst_parse_escape()
9889
9890 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9891
9892         * gst/gstpad.c: (gst_pad_link_negotiate):
9893           refuse to link if the link is not possible
9894         * configure.ac:
9895         * testsuite/Makefile.am:
9896         * testsuite/negotiation/.cvsignore:
9897         * testsuite/negotiation/Makefile.am:
9898         * testsuite/negotiation/pad_link.c: (main):
9899           add test that checks the above behaviour
9900
9901 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9902
9903         * docs/gst/gstreamer-sections.txt:
9904           add newly added API
9905
9906 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9907
9908         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9909         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
9910         (gst_filesrc_open_file), (gst_filesrc_close_file),
9911         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
9912         * gst/elements/gstfilesrc.h:
9913           add support for non-regular files (#140734)
9914
9915 2004-04-21  Benjamin Otte  <otte@gnome.org>
9916
9917         * gst/gstpad.c: (gst_pad_link_fixate):
9918           add sophisticated error checking code to see if fixation functions
9919           did their fixation right
9920
9921 2004-04-21  Benjamin Otte  <otte@gnome.org>
9922
9923         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
9924           check for ANY caps before appending/unioning
9925         * gst/gstcaps.c: (gst_caps_is_subset),
9926         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
9927         (gst_caps_structure_subtract), (gst_caps_subtract):
9928         * gst/gstcaps.h:
9929           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
9930           the API. deprecate gst_caps_is_equal_fixed
9931         * gst/gstpad.c: (gst_pad_try_set_caps):
9932         * gst/gstqueue.c: (gst_queue_link):
9933           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
9934         * gst/gststructure.c: (gst_structure_get_name_id):
9935         * gst/gststructure.h:
9936           add function gst_structure_get_name_id
9937         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
9938         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
9939         (gst_value_subtract_int_range_int_range),
9940         (gst_value_subtract_double_double_range),
9941         (gst_value_subtract_double_range_double),
9942         (gst_value_subtract_double_range_double_range),
9943         (gst_value_subtract_from_list), (gst_value_subtract_list),
9944         (gst_value_can_intersect), (gst_value_subtract),
9945         (gst_value_can_subtract), (gst_value_register_subtract_func),
9946         (_gst_value_initialize):
9947         * gst/gstvalue.h:
9948           add support for subtracting values from each other. Note that
9949           subtracting means subtracting as in set theory. Required for caps
9950           stuff above.
9951         * testsuite/caps/.cvsignore:
9952         * testsuite/caps/Makefile.am:
9953         * testsuite/caps/erathostenes.c: (erathostenes), (main):
9954         * testsuite/caps/sets.c: (check_caps), (main):
9955         * testsuite/caps/subtract.c: (check_caps), (main):
9956           add tests for subtraction and equality code.
9957
9958 2004-04-20  David Schleef  <ds@schleef.org>
9959
9960         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
9961         * gst/indexers/Makefile.am:
9962         * gst/schedulers/Makefile.am:
9963         * libs/gst/bytestream/Makefile.am:
9964         * libs/gst/control/Makefile.am:
9965         * libs/gst/getbits/Makefile.am:
9966
9967 2004-04-20  David Schleef  <ds@schleef.org>
9968
9969         * common/as-libtool.mak: Fine-tune DLL building.
9970         * configure.ac: Link plugins against libgstreamer.  Define plugindir
9971         (like gst-plugins)
9972         * examples/plugins/Makefile.am: remove plugindir
9973         * gst/autoplug/Makefile.am: DLL building fixes
9974         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
9975         Windows.
9976         * gst/elements/gstelements.c: Conditionally disable pipefilter.
9977         * gst/indexers/Makefile.am: DLL building fixes
9978         * gst/schedulers/Makefile.am: DLL building fixes.
9979         * libs/gst/bytestream/Makefile.am: DLL building fixes.
9980         * libs/gst/control/Makefile.am: same
9981         * libs/gst/getbits/Makefile.am: same
9982         * testsuite/Makefile.am: New dlopen directory
9983         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
9984         when dlopened.
9985         * testsuite/dlopen/dlopen_gst.c: (main): same
9986         * testsuite/dlopen/loadgst.c: (do_test): same
9987
9988 2004-04-20  David Schleef  <ds@schleef.org>
9989
9990         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
9991         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
9992
9993 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9994
9995         * gst/gstelement.c: (gst_element_wait),
9996         (gst_element_set_time_delay), (gst_element_change_state):
9997           Use GST_TIME_*
9998
9999 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10000
10001         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
10002         (gst_spider_identity_plug):
10003           improve debugging messages
10004         * gst/gstbin.c: (gst_bin_remove_func):
10005           make sure the state_change function is only called with simple state
10006           transitions
10007
10008 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10009
10010         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
10011         (gst_fakesink_set_property), (gst_fakesink_chain):
10012         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
10013         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
10014         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
10015         * gst/elements/gstidentity.c: (gst_identity_chain),
10016         (gst_identity_set_property):
10017         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
10018         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
10019           add warnings to _set_property for unknown arguments
10020           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
10021
10022 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10023
10024         * Makefile.am:
10025         * docs/manuals.mak:
10026           add .po file download snippet
10027           fix a bug in the doc makefile
10028
10029 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10030
10031         * Makefile.am:
10032         * po/LINGUAS:
10033         * po/en_GB.po:
10034           Added en_GB translation (Gareth Owen)
10035
10036 2004-04-20  Johan Dahlin  <johan@gnome.org>
10037
10038         * gst/gstpad.c (_invent_event): Clean up
10039
10040 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10041
10042         * testsuite/caps/filtercaps.c: (main):
10043           fix test to test things correctly (caps are complicated)
10044
10045 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10046
10047         * testsuite/caps/Makefile.am:
10048         * testsuite/caps/filtercaps.c: (main):
10049           add test (that doesn't work right now, but should)
10050
10051 2004-04-19  David Schleef  <ds@schleef.org>
10052
10053         * configure.ac: Add test for allowing unaligned access.  Add define
10054         to put in gstconfig.h.
10055         * docs/gst/gstreamer-sections.txt: New symbols
10056         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
10057         * docs/gst/tmpl/gstfilesrc.sgml:
10058         * docs/gst/tmpl/gstparse.sgml:
10059         * docs/gst/tmpl/gsttypes.sgml:
10060         * docs/gst/tmpl/gstutils.sgml:
10061         * docs/gst/tmpl/gstvalue.sgml:
10062         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
10063         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
10064         on most !i386/!powerpc architectures.  From Daniel Gazard
10065         <daniel.gazard@free.fr>.  (bug #140156)
10066         * po/af.po: Check in changes made by gettext.
10067         * po/az.po:
10068         * po/fr.po:
10069         * po/nl.po:
10070         * po/sr.po:
10071         * po/sv.po:
10072
10073 2004-04-20  Benjamin Otte  <otte@gnome.org>
10074
10075         * gst/schedulers/entryscheduler.c: 
10076         (gst_entry_scheduler_yield):
10077           refuse to yield when decoupled elements insist on doing that.
10078           At least it's better than crashing
10079
10080 2004-04-19  David Schleef  <ds@schleef.org>
10081
10082         * docs/libs/Makefile.am: Change sinclude to include
10083         * docs/gst/Makefile.am: same
10084         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
10085
10086 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10087
10088         * po/LINGUAS:
10089         * po/uk.po:
10090           Added Ukrainian translation (Maxim V. Dziumanenko)
10091
10092 2004-04-19  Johan Dahlin  <johan@gnome.org>
10093
10094         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
10095         checking here, do it before calling the function.
10096         Clean up, use for loops instead of while loops while iterating
10097         over lists.
10098
10099         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
10100         in debug message.
10101         (gst_spider_create_and_plug): Improve debug message.
10102         General: Replace while loops which iterates over GLists with for
10103         loops. Which are much cleaner, improves readability, especially
10104         for gst_spider_identity_plug
10105
10106         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
10107         fixes bug 140477
10108
10109 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10110
10111         * po/LINGUAS:
10112         * po/tr.po:
10113           Added Turkish translation (Baris Cicek)
10114
10115 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10116
10117         * docs/faq/troubleshooting.xml:
10118           Mention gst-register in the FAQ (fixes 139045).
10119
10120 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10121
10122         * docs/gst/gstreamer-sections.txt:
10123
10124 2004-04-17  Benjamin Otte  <otte@gnome.org>
10125
10126         * gst/gstelement.c: (gst_element_dispose):
10127           simplify
10128         * gst/gstpad.c: (gst_pad_call_chain_function):
10129           don't create loads of events due to bad macro usage
10130
10131 2004-04-16  David Schleef  <ds@schleef.org>
10132
10133         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
10134         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
10135         * gst/gstvalue.c: (gst_value_serialize_buffer),
10136         (gst_value_deserialize_buffer), (gst_type_is_fixed),
10137         (_gst_value_initialize): Create a new function gst_type_is_fixed()
10138         to indicate types that are fixed wrt caps or not.  Switching to
10139         this function fixes (bug #140298).
10140         * gst/gstvalue.h:
10141
10142 2004-04-16  David Schleef  <ds@schleef.org>
10143
10144         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
10145         for GST_UNALIGNED_ACESS, since we essentially know which archs
10146         are ok.
10147
10148 2004-04-17  Benjamin Otte  <otte@gnome.org>
10149
10150         * docs/gst/Makefile.am:
10151           ignore gst/parse directory when building docs (fixes #140205)
10152
10153 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10154
10155         * testsuite/refcounting/mem.c: (vmsize):
10156           do error checking
10157
10158 2004-04-16  Johan Dahlin  <johan@gnome.org>
10159
10160         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
10161         and gst_pad_call_get_function.
10162
10163 2004-04-15  David Schleef  <ds@schleef.org>
10164
10165         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
10166         checks if we can access unaligned memory.
10167         * configure.ac: Use it.
10168
10169 2004-04-16  Benjamin Otte  <otte@gnome.org>
10170
10171         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
10172         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
10173         * gst/elements/gstfilesrc.h:
10174           s/seek_happened/need_discont/ and require discont before sending any
10175           data
10176
10177 2004-04-15  David Schleef  <ds@schleef.org>
10178
10179         * gst/gstvalue.c: (gst_value_serialize_buffer),
10180         (gst_value_deserialize_buffer), (_gst_value_initialize):
10181         Register these types as fundamental types. (bug #140015)
10182
10183 2004-04-16  Benjamin Otte  <otte@gnome.org>
10184
10185         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
10186         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
10187         (gst_pad_pull):
10188           implement enforcing discont events before buffers are passed. This
10189           allows state changes of only some elements and later correctly going
10190           on where they left off (or in short: you can now set audio sinks to
10191           NULL to release the device when the pipeline is paused)
10192         * gst/gstpad.c: (gst_pad_call_chain_function),
10193         (gst_pad_call_get_function):
10194         * gst/gstpad.h:
10195           add gst_pad_call_chain_function and gst_pad_call_get_function for
10196           scheduler interaction. They are required because of the changes
10197           above.
10198         * gst/schedulers/entryscheduler.c: (get_buffer),
10199         (gst_entry_scheduler_chain_wrapper),
10200         (gst_entry_scheduler_get_wrapper),
10201         (gst_entry_scheduler_state_transition),
10202         (gst_entry_scheduler_pad_link):
10203         * gst/schedulers/gstbasicscheduler.c:
10204         (gst_basic_scheduler_chain_wrapper),
10205         (gst_basic_scheduler_src_wrapper),
10206         (gst_basic_scheduler_chainhandler_proxy),
10207         (gst_basic_scheduler_gethandler_proxy),
10208         (gst_basic_scheduler_cothreaded_chain),
10209         (gst_basic_scheduler_chain_elements):
10210         * gst/schedulers/gstoptimalscheduler.c:
10211         (get_group_schedule_function), (pad_clear_queued),
10212         (gst_opt_scheduler_pad_link):
10213           use the new functions instead of calling get/chain-functions
10214           directly.
10215
10216 2004-04-15  David Schleef  <ds@schleef.org>
10217
10218         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
10219         * docs/gst/tmpl/gstinfo.sgml: same
10220         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
10221         gtk-doc put here.
10222         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
10223         * examples/queue/queue.c: (main):  We iterate pipelines, not
10224         bins.  (bug #139996)
10225
10226 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10227
10228         * docs/pwg/advanced-types.xml:
10229           Add MS RLE support. Also document Qt RLE although I have no sample
10230           files for that yet. And document an extra property for ADPCM.
10231
10232 2004-04-15  David Schleef  <ds@schleef.org>
10233
10234         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
10235         (_gst_plugin_fault_handler_setup):  Disable more stuff on
10236         Windows.
10237
10238 2004-04-15  David Schleef  <ds@schleef.org>
10239
10240         * gst/gstinfo.c: (_gst_debug_init): Change some internal
10241         symbol names to not conflict with new gstinfo.h symbols.
10242         * gst/gstinfo.h: Add inline functions for all those crazy
10243         compilers that don't know how to handle variadic macros (MSVC).
10244
10245 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10246
10247         * configure.ac: bump nano to 1
10248
10249 === release 0.8.1 ===
10250
10251 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10252
10253         * NEWS:
10254         * RELEASE:
10255         * configure.ac:
10256           releasing 0.8.1, "Snow Brigade"
10257
10258 2004-04-14  David Schleef  <ds@schleef.org>
10259
10260         * testsuite/Makefile.am: define tests_ignore
10261         * testsuite/Rules: Added new tests_ignore, which get compiled,
10262         but not run (generally because they're inconsistent or have
10263         heisenbugs).  Now we can ensure all the .c files compile in
10264         testsuite/.
10265         * testsuite/bins/Makefile.am: define tests_ignore
10266         * testsuite/bytestream/Makefile.am:
10267         * testsuite/caps/Makefile.am:
10268         * testsuite/clock/Makefile.am:
10269         * testsuite/debug/Makefile.am:
10270         * testsuite/debug/global.c: (gst_debug_log_one),
10271         (gst_debug_log_two): Fix compilation problem.
10272         * testsuite/dynparams/Makefile.am:
10273         * testsuite/elements/Makefile.am:
10274         * testsuite/ghostpads/Makefile.am:
10275         * testsuite/indexers/Makefile.am:
10276         * testsuite/parse/Makefile.am:
10277         * testsuite/plugin/Makefile.am:
10278         * testsuite/refcounting/Makefile.am:
10279         * testsuite/refcounting/element_pad.c: (main): Don't return leak
10280         results, because it's not calculated correctly.
10281         * testsuite/refcounting/pad.c: (main): same
10282         * testsuite/states/Makefile.am:
10283         * testsuite/tags/Makefile.am:
10284         * testsuite/threads/Makefile.am:
10285
10286 2004-04-14  David Schleef  <ds@schleef.org>
10287
10288         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
10289         generating bad code around the cpu detection asm code.
10290
10291 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10292
10293         * tools/gst-inspect.c: (print_element_info):
10294           print numeric version of rank as well, since we added some - 1
10295           rank values to elements
10296
10297 2004-04-13  David Schleef  <ds@schleef.org>
10298
10299         * configure.ac:  Disable various code when compiling for MinGW.
10300         * gst/elements/Makefile.am:
10301         * gst/elements/gstelements.c:
10302         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10303         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
10304         * gst/registries/gstxmlregistry.c: (make_dir):
10305
10306 2004-04-13  David Schleef  <ds@schleef.org>
10307
10308         * gst/Makefile.am:
10309         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
10310         assembly.
10311         * gst/gstcpuid_i386.s: remove
10312
10313 2004-04-13  David Schleef  <ds@schleef.org>
10314
10315         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
10316         seems to think it needs to be done.
10317         * docs/gst/tmpl/gstfakesink.sgml:
10318         * docs/gst/tmpl/gstfakesrc.sgml:
10319         * docs/gst/tmpl/gstfdsink.sgml:
10320         * docs/gst/tmpl/gstfdsrc.sgml:
10321         * docs/gst/tmpl/gstfilesink.sgml:
10322         * docs/gst/tmpl/gstfilesrc.sgml:
10323         * docs/gst/tmpl/gstidentity.sgml:
10324         * docs/gst/tmpl/gstmd5sink.sgml:
10325         * docs/gst/tmpl/gstmultifilesrc.sgml:
10326         * docs/gst/tmpl/gstpipefilter.sgml:
10327         * docs/gst/tmpl/gstshaper.sgml:
10328         * docs/gst/tmpl/gstspider.sgml:
10329         * docs/gst/tmpl/gstspideridentity.sgml:
10330         * docs/gst/tmpl/gststatistics.sgml:
10331         * docs/gst/tmpl/gsttee.sgml:
10332         * docs/gst/tmpl/gsttypefind.sgml:
10333         * docs/gst/tmpl/gstutils.sgml:
10334
10335 2004-04-13  David Schleef  <ds@schleef.org>
10336
10337         * configure.ac: Changes to remove POSIXisms (mmap in this case)
10338         and to build DLLs on Windows.
10339         * gst/Makefile.am:
10340         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
10341         (gst_filesrc_open_file):
10342         * gst/schedulers/Makefile.am:
10343
10344 2004-04-13  David Schleef  <ds@schleef.org>
10345
10346         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
10347         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
10348         fixating lists.
10349
10350 2004-04-12  David Schleef  <ds@schleef.org>
10351
10352         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
10353         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
10354         to using it.
10355         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
10356         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
10357         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
10358         * gst/gststructure.c: (gst_structure_set_valist),
10359         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
10360         support for buffers.
10361         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
10362         intended to be const.
10363         * gst/gsttag.h: same
10364         * gst/gstvalue.c: (gst_value_serialize_buffer),
10365         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
10366         to (de)serialize buffers.
10367         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
10368         * testsuite/caps/string-conversions.c: (main):
10369         * testsuite/caps/value_serialize.c: add new test
10370
10371 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10372
10373         * docs/pwg/advanced-types.xml:
10374           Document MS video 1 (video/x-msvideocodec) mimetype/format.
10375
10376 2004-04-11  Benjamin Otte  <otte@gnome.org>
10377
10378         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
10379           rename categories to basic_*
10380         * gst/schedulers/gstbasicscheduler.c: 
10381         (gst_basic_scheduler_chain_wrapper),
10382         (gst_basic_scheduler_chainhandler_proxy),
10383         (gst_basic_scheduler_gethandler_proxy),
10384         (gst_basic_scheduler_eventhandler_proxy):
10385           debugging category fixes - put common stuff in log category
10386         * gst/schedulers/gstbasicscheduler.c: 
10387         (gst_basic_scheduler_chain_elements):
10388           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
10389           active and linking two active chains
10390
10391 2004-04-10  Benjamin Otte  <otte@gnome.org>
10392
10393         * docs/pwg/intro-preface.xml:
10394           fix dead links and remove reference to Wiki
10395
10396 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10397
10398         * gst/schedulers/gstbasicscheduler.c:
10399           make sure we can switch back to the main function if we're still in
10400           the main function (supposed to fix #139617)
10401         * gst/schedulers/gthread-cothreads.h:
10402           don't throw an error when switching to the same cothread
10403
10404 2004-04-09  Benjamin Otte  <otte@gnome.org>
10405
10406         * gst/gstbin.c: (gst_bin_get_type):
10407         * gst/gstclock.c: (gst_clock_get_type):
10408         * gst/gstindex.c: (gst_index_get_type):
10409         * gst/gstobject.c: (gst_object_get_type),
10410         (gst_signal_object_get_type):
10411         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
10412         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
10413         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
10414         * gst/gstqueue.c: (gst_queue_get_type):
10415         * gst/gstregistry.c: (gst_registry_get_type):
10416         * gst/gstsystemclock.c: (gst_system_clock_get_type):
10417         * gst/gstthread.c: (gst_thread_get_type):
10418           don't use memchunks for these objects, use malloc instead
10419
10420 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10421
10422         * docs/gst/.cvsignore:
10423         * docs/gst/Makefile.am:
10424         * docs/gst/gstreamer-sections.txt:
10425         * docs/gst/tmpl/gstaggregator.sgml:
10426         * docs/gst/tmpl/gstbuffer.sgml:
10427         * docs/gst/tmpl/gstclock.sgml:
10428         * docs/gst/tmpl/gstelement.sgml:
10429         * docs/gst/tmpl/gstfakesink.sgml:
10430         * docs/gst/tmpl/gstfakesrc.sgml:
10431         * docs/gst/tmpl/gstfdsink.sgml:
10432         * docs/gst/tmpl/gstfdsrc.sgml:
10433         * docs/gst/tmpl/gstfilesink.sgml:
10434         * docs/gst/tmpl/gstfilesrc.sgml:
10435         * docs/gst/tmpl/gstidentity.sgml:
10436         * docs/gst/tmpl/gstindex.sgml:
10437         * docs/gst/tmpl/gstinfo.sgml:
10438         * docs/gst/tmpl/gstmd5sink.sgml:
10439         * docs/gst/tmpl/gstmultifilesrc.sgml:
10440         * docs/gst/tmpl/gstpad.sgml:
10441         * docs/gst/tmpl/gstpipefilter.sgml:
10442         * docs/gst/tmpl/gstpipeline.sgml:
10443         * docs/gst/tmpl/gstpluginfeature.sgml:
10444         * docs/gst/tmpl/gstqueue.sgml:
10445         * docs/gst/tmpl/gstregistry.sgml:
10446         * docs/gst/tmpl/gstscheduler.sgml:
10447         * docs/gst/tmpl/gstshaper.sgml:
10448         * docs/gst/tmpl/gstspider.sgml:
10449         * docs/gst/tmpl/gstspideridentity.sgml:
10450         * docs/gst/tmpl/gststatistics.sgml:
10451         * docs/gst/tmpl/gstsystemclock.sgml:
10452         * docs/gst/tmpl/gsttee.sgml:
10453         * docs/gst/tmpl/gstthread.sgml:
10454         * docs/gst/tmpl/gsttypefind.sgml:
10455         * docs/gst/tmpl/gstutils.sgml:
10456           further doc build fixes
10457
10458 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10459
10460         * docs/gst/Makefile.am:
10461           make docs exit on scanning problems
10462           fix nonsrcdir build issues
10463         * docs/gst/gstreamer-sections.txt:
10464           adding stuff from -unused
10465         * gst/gstqueue.h:
10466           create GstQueueSize
10467         * gst/schedulers/cothreads_compat.h:
10468           fix cothread warnings
10469
10470 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10471
10472         * docs/gst/gstreamer-sections.txt:
10473           remove defines deprecated by Benjamin
10474
10475 2004-04-07  Benjamin Otte  <otte@gnome.org>
10476
10477         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10478           when the buffer is complete, don't check if other buffers are needed
10479         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
10480           check that the offset is >0 so we don't try to read before the
10481           beginning of the file
10482         * gst/gstpad.c: (gst_pad_set_pad_template):
10483           sink the template, so we don't end up with 130k pad templates
10484
10485 2004-04-06  Benjamin Otte  <otte@gnome.org>
10486
10487         * gst/autoplug/gstspider.c: (gst_spider_link_add):
10488           don't ref the element, adding already reffed it. And we didn't unref
10489           it later anyway... (huge memleak when you used many spider elements)
10490         * gst/gstelement.c: (gst_element_base_class_finalize):
10491         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
10492         (gst_element_register):
10493         * gst/gsturi.c: (gst_element_make_from_uri):
10494           use gst_object_(un)ref instead of g_object(un)ref
10495
10496 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10497
10498         * gst/gstbuffer.h:
10499           remove macro that wouldn't work anymore because struct member has
10500           been removed.
10501         * gst/schedulers/entryscheduler.c: (schedule_forward):
10502           fix segfault for unconnected pads
10503         
10504 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10505
10506         reviewed by David Schleef <ds@schleef.org>
10507
10508         * gst/gstinfo.h:
10509           *_FORMAT modifiers should require putting a % in front of them for
10510           consistency reasons.
10511
10512 2004-04-05  Colin Walters  <walters@redhat.com>
10513
10514         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
10515         space.
10516
10517 2004-04-05  Benjamin Otte  <otte@gnome.org>
10518
10519         * configure.ac:
10520         * gst/Makefile.am:
10521         * gst/gst_private.h:
10522         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
10523           add support for detecting if GStreamer runs inside valgrind.
10524           requires valgrind (d'oh) and --enable-debug for correct cdetection.
10525           print a big message in valgrind that GStreamer has detected it's
10526           running inside and might now use different code.
10527         * gst/gstmemchunk.c: (populate), (free_area),
10528         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
10529         (gst_mem_chunk_free):
10530           flag memchunks for valgrind, so it can detect leaking of chunks.
10531           This allows detecting leaks of GstBuffer and GstEvent correctly
10532           inside valgrind.
10533
10534 2004-04-05  David Schleef  <ds@schleef.org>
10535
10536         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
10537           jensgr@gmx.net (Jens Granseuer)
10538
10539 2004-04-05  David Schleef  <ds@schleef.org>
10540
10541         * gst/gstbuffer.c: (_gst_buffer_sub_free),
10542         (gst_buffer_default_free), (gst_buffer_default_copy),
10543         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
10544         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
10545         structures in one place.
10546
10547 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10548
10549         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
10550           (GST_TIME_FORMAT, GST_TIME_ARGS)
10551
10552 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10553
10554         * testsuite/elements/Makefile.am:
10555           disable test until it stops breaking make distcheck
10556
10557 2004-04-05  Johan Dahlin  <johan@gnome.org>
10558
10559         * po/sv.po: Updated translation
10560
10561 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10562
10563         * gst/gstplugin.c: (gst_plugin_load_file):
10564           fix segfault for when original plugin was loaded statically
10565
10566 2004-04-05  Benjamin Otte  <otte@gnome.org>
10567
10568         * testsuite/debug/category.c: (main):
10569         * testsuite/debug/commandline.c: (main):
10570         * testsuite/debug/output.c: (main):
10571           fix tests to work again with debugging enabled
10572
10573 2004-04-05  Benjamin Otte  <otte@gnome.org>
10574
10575         * gst/schedulers/gstbasicscheduler.c:
10576         (gst_basic_scheduler_pad_link):
10577           fix to work with recent scheduling changes
10578
10579 2004-04-05  Benjamin Otte  <otte@gnome.org>
10580
10581         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
10582         prepareChangeLog doesn't work when cvs indents):
10583           don't throw an error when no element can be scheduled, there's too
10584           many weird reasons why it doesn't work. Return STOPPED instead.
10585           decoupled elemts' schedulability doesn't depend on bufpens.
10586
10587 2004-04-04  Benjamin Otte  <otte@gnome.org>
10588
10589         * gst/schedulers/gstbasicscheduler.c:
10590         (gst_basic_scheduler_pad_select):
10591           fix uninitialized variable warnings
10592
10593 2004-04-04  Benjamin Otte  <otte@gnome.org>
10594
10595         * gst/gstpad.c: (gst_pad_collect_valist):
10596           fix uninitialized variable warning
10597         * gst/schedulers/entryscheduler.c: (schedule_forward):
10598           fix shadowed variable
10599
10600 2004-04-04  Benjamin Otte  <otte@gnome.org>
10601
10602         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
10603         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
10604         (gst_pad_select):
10605         * gst/gstpad.h:
10606         * gst/gstscheduler.c: (gst_scheduler_pad_select),
10607         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
10608         * gst/gstscheduler.h:
10609           implement gst_pad_collect as replacement for gst_pad_select.
10610           deprecate gst_pad_select and gst_scheduler_(un)lock_element
10611           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
10612           new pad_select, lock and unlock calls.
10613         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
10614         * gst/cothreads.h:
10615         * gst/schedulers/cothreads_compat.h:
10616         * gst/schedulers/gthread-cothreads.h:
10617           remove unused cothread_lock and cothread_unlock calls
10618         * gst/schedulers/entryscheduler.c:
10619         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
10620         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
10621         (gst_entry_scheduler_pad_select):
10622           update to new API
10623         * gst/schedulers/gstbasicscheduler.c:
10624         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
10625         (gst_basic_scheduler_pad_select):
10626           remove useless lock and unlock calls, update pad_select to new API
10627           (untested)
10628         * gst/schedulers/gstoptimalscheduler.c:
10629         (gst_opt_scheduler_class_init):
10630           remove useless select, lock and unlock function calls
10631         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
10632           use gst_pad_collect instead of gst_pad_select
10633
10634 2004-04-04  Benjamin Otte  <otte@gnome.org>
10635
10636         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
10637         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
10638         (schedule_next_element), (print_entry):
10639           add can_schedule_pad to handle element states.
10640           add schedule_forward to select the correct entry to schedule next
10641
10642 2004-04-03  Benjamin Otte  <otte@gnome.org>
10643
10644         * gst/schedulers/entryscheduler.c: 
10645           remove unused variable, fix error inside Rb, fix compile warning in
10646           unreachable code
10647
10648 2004-04-03  Benjamin Otte  <otte@gnome.org>
10649
10650         * gst/schedulers/entryscheduler.c:
10651           completely revamp the inner workings, so it's a lot easier to
10652           understand and extend
10653
10654 2004-04-03  Andy Wingo  <wingo@pobox.com>
10655
10656         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
10657         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
10658         This allows better introspection of pipeline topology.
10659         (add_to_chain): Don't do trickery to put loop elements first;
10660         rather, queue a chain sort by marking the chain as dirty.
10661         (remove_from_chain): Mark the chain dirty.
10662         (sort_chain): New function. Sorts the group list so that terminal
10663         sinks are first. This means elements on the sink side will be
10664         preferentially sscheduled before elements on the src side of the
10665         pipeline.
10666         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
10667         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
10668         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
10669         (group_inc_link): Change argument and variable names to match the
10670         new link structure member names (src and sink).
10671         (group_dec_link): Add some description
10672
10673 2004-04-03  Benjamin Otte  <otte@gnome.org>
10674
10675         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
10676         * gst/gstinfo.h:
10677         * testsuite/debug/category.c: (main):
10678         * testsuite/debug/commandline.c: (main):
10679         * testsuite/debug/output.c: (main):
10680         * testsuite/debug/printf_extension.c: (main):
10681           fix to successfully build and test with --disable-gst-debug
10682           configure switch (fixes #138705)
10683
10684 2004-04-03  Benjamin Otte  <otte@gnome.org>
10685
10686         * docs/pwg/building-boiler.xml:
10687           add cvs login line and s/anonymous/anoncvs/
10688
10689 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
10690
10691         reviewed by Benjamin Otte  <otte@gnome.org>
10692
10693         * gst/gststructure.c: (gst_structure_free):
10694           memleak fix: free fields array (partial fix for #134839)
10695
10696 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10697
10698         * docs/random/ds/0.9-suggested-changes:
10699           Add a note to change handoff use in fakesrc to be usable in
10700           a more generic way (fakesrc should be renamed to appsrc or so).
10701         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
10702           Change signal type to scope, so we can fill the buffer in the
10703           handoff handler (that's the whole use of this signal...).
10704
10705 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10706
10707         * docs/pwg/other-ntoone.xml:
10708           Document muxers and n-to-1 elements.
10709
10710 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
10711
10712         * gst/registries/gstxmlregistry.c
10713         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
10714         determine if a file is a G_MODULE. The old one discards paths
10715         containing "so" somewhere in the middle. My home directory is
10716         called "soto". Go figure...
10717
10718 2004-03-31  David Schleef  <ds@schleef.org>
10719
10720         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
10721         to eventually deprecate gst_buffer_merge().  (bug: #136408)
10722         * gst/gstbuffer.h:
10723
10724 2004-03-31  David Schleef  <ds@schleef.org>
10725
10726         * gst/gstvalue.c: (gst_value_union_int_int_range),
10727         (gst_value_union_int_range_int_range), (gst_value_can_union),
10728         (gst_value_union), (_gst_value_initialize):  Add some union
10729         implementations.  We didn't have any previously.
10730         * testsuite/caps/Makefile.am:
10731         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
10732         (gst_audioscale_getcaps), (test_caps), (main): A little test
10733         that is the same as the caps manipulation in audioscale.
10734
10735 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10736
10737         * docs/faq/general.xml:
10738           add entry about "does gst support format X?"
10739
10740 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10741
10742         * gst/gstthread.c:
10743           fix docs
10744         * gst/gstutils.h:
10745           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
10746
10747 2004-03-30  Benjamin Otte  <otte@gnome.org>
10748
10749         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10750           set the offset of the buffer to the requested offset
10751         * gst/elements/gsttypefind.c: (stop_typefinding):
10752           revert patch 1.18 (which I unfortunately don't know the reason for).
10753           This is needed to allow downstream elements to seek. Otherwise
10754           typefind might overwrite a previous seek by downstream elements.
10755           This lead to errors with id3tag and typefind on some mp3s.
10756         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10757         (gst_entry_scheduler_iterate):
10758           be more verbose when debugging
10759
10760 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10761
10762         * gst/gstcaps.c: (gst_caps_from_string_inplace):
10763           make sure we don't get NULL strings
10764
10765 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10766
10767         * gst/gstcaps.c:
10768         * gst/gstelement.c:
10769         * gst/gstelementfactory.c: (gst_element_factory_get_type):
10770         * gst/gstindex.c: (gst_index_resolver_get_type),
10771         (gst_index_get_type), (gst_index_factory_get_type):
10772         * gst/gstinfo.c:
10773         * gst/gstpad.c:
10774         * gst/gstplugin.c:
10775         * gst/gsturi.c: (gst_uri_handler_get_type):
10776         * gst/gstvalue.c:
10777           first batch of documentation fixes
10778
10779 2004-03-29  David Schleef  <ds@schleef.org>
10780
10781         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
10782         * docs/gst/gstreamer-docs.sgml:  More hacking
10783         * docs/gst/gstreamer-sections.txt:
10784         * docs/gst/tmpl/cothreads_compat.sgml:
10785         * docs/gst/tmpl/gstcaps.sgml:
10786         * docs/gst/tmpl/gstclock.sgml:
10787         * docs/gst/tmpl/gstelement.sgml:
10788         * docs/gst/tmpl/gstevent.sgml:
10789         * docs/gst/tmpl/gstpad.sgml:
10790         * docs/gst/tmpl/gstutils.sgml:
10791         * docs/gst/tmpl/gstxml.sgml:
10792         * docs/gst/tmpl/gthread-cothreads.sgml:
10793         * docs/random/ds/0.9-suggested-changes:
10794         * gst/elements/gstfakesink.h: doc fixes
10795         * gst/elements/gstfakesrc.h: doc fixes
10796         * gst/gstcaps.c: doc fixes
10797         * gst/gstcaps.h: doc fixes
10798         * gst/gstelement.c: doc fixes
10799         * gst/gstelement.h: doc fixes
10800         * gst/gstindex.c: doc fixes
10801         * gst/gstinfo.c: doc fixes
10802         * gst/gstpad.c: doc fixes
10803         * gst/gstpad.h: doc fixes
10804         * gst/gstplugin.c: doc fixes
10805         * gst/gsttypefind.h: doc fixes
10806         * gst/gsturi.c: doc fixes
10807         * gst/gstvalue.c: doc fixes
10808
10809 2004-03-29  Colin Walters  <walters@redhat.com>
10810
10811         * gst/registries/gstxmlregistry.c (get_time)
10812         (plugin_times_older_than_recurse):
10813         Use the result of stat to determine whether a path is a file,
10814         so we don't attempt to opendir() files.
10815
10816 2004-03-29  Benjamin Otte  <otte@gnome.org>
10817
10818         * gst/gstpad.c: (gst_pad_set_explicit_caps):
10819           print caps in debugging output when setting caps failed
10820         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10821         (schedule_next_element), (get_buffer), (run_chainhandler),
10822         (element_may_start), (gst_entry_scheduler_chain_handler),
10823         (gst_entry_scheduler_get_handler),
10824         (gst_entry_scheduler_state_transition),
10825         (gst_entry_scheduler_pad_link):
10826           make this scheduler a testcase for mandatory
10827           discont-before-first-buffer which is needed if we want to allow apps
10828           to release the sound device.
10829           add SCHED_ASSERT macro to print scheduler state before an assertion
10830           triggers.
10831
10832 2004-03-29  Benjamin Otte  <otte@gnome.org>
10833
10834         * COPYING:
10835           replace by LGPL (former COPYING.LIB). The core is completely
10836           licensed LGPL.
10837         * COPYING.LIB:
10838           remove
10839
10840 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10841
10842         * po/af.po:
10843         * po/sv.po:
10844           updated Afrikaans and Swedish
10845
10846 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10847
10848         * po/LINGUAS:
10849         * po/az.po:
10850           adding Azerbaijani (Mətin Əmirov)
10851
10852 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
10853
10854         * gst/gstelement.h: 
10855         * gst/gstelement.c (gst_element_set_time_delay): New function for
10856         setting element time taking into account a hardware buffering
10857         delay.
10858         (gst_element_set_time): Now just an invocation of
10859         gst_element_set_time_delay.
10860         * gst/gstclock.h: 
10861         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
10862         allowing to set event times in the future.
10863         (gst_clock_get_event_time): Now just an invocation of
10864         gst_clock_get_event_time_delay.
10865
10866 2004-03-28  Benjamin Otte  <otte@gnome.org>
10867
10868         * gst/gstbin.c: (gst_bin_set_element_sched),
10869         (gst_bin_unset_element_sched):
10870           don't add decoupled elements to schedulers - otherwise it's
10871           impossible to control if a link to a decoupled element was already
10872           removed from a scheduler or not.
10873         * gst/schedulers/cothreads_compat.h:
10874         * gst/schedulers/gthread-cothreads.h:
10875           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
10876           is no "unused" warning.
10877         * gst/schedulers/Makefile.am:
10878         * gst/schedulers/entryscheduler.c:
10879           add new scheduler, based on ideas from talking to David and Martin.
10880           It's supposed to be small and correct. Currently it's also slow (but
10881           it's not noticable)
10882         * examples/retag/retag.c: (main):
10883         * testsuite/bytestream/test1.c: (main):
10884           fix missing NULLs at end of variadic functions
10885         * testsuite/elements/.cvsignore:
10886           update
10887
10888 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
10889
10890         * gst/gstevent.h:
10891         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
10892
10893 2004-03-25  David Schleef  <ds@schleef.org>
10894
10895         * docs/gst/gstreamer-sections.txt:  More doc hacking.
10896         * docs/gst/tmpl/gstaggregator.sgml:
10897         * docs/gst/tmpl/gstautoplugfactory.sgml:
10898         * docs/gst/tmpl/gstbin.sgml:
10899         * docs/gst/tmpl/gstbuffer.sgml:
10900         * docs/gst/tmpl/gstbufferstore.sgml:
10901         * docs/gst/tmpl/gstfakesink.sgml:
10902         * docs/gst/tmpl/gstfakesrc.sgml:
10903         * docs/gst/tmpl/gstmd5sink.sgml:
10904         * docs/gst/tmpl/gstreamer-unused.sgml:
10905         * docs/gst/tmpl/gstsearchfuncs.sgml:
10906         * docs/gst/tmpl/gstshaper.sgml:
10907         * docs/gst/tmpl/gstspider.sgml:
10908         * docs/gst/tmpl/gsttee.sgml:
10909         * docs/gst/tmpl/gstutils.sgml:
10910         * docs/gst/tmpl/gstvalue.sgml:
10911         * docs/gst/tmpl/gstxml.sgml:
10912         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
10913         and we don't support it.
10914         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
10915         (gst_use_threads), (gst_has_threads): same
10916         * gst/gstthreaddummy.c: same
10917         * gst/autoplug/gstspider.c: Make gst_spider_details static.
10918         * gst/autoplug/gstspider.h: same
10919         * gst/elements/gstaggregator.h: Remove bogus function from header
10920         * gst/elements/gstfakesink.h: same
10921         * gst/elements/gstfakesrc.h: same
10922         * gst/elements/gstmd5sink.h: same
10923         * gst/elements/gstshaper.h: same
10924         * gst/elements/gsttee.h: same
10925         * gst/gstbin.c: doc fixes
10926         * gst/gstbin.h: Remove unused definition.
10927         * gst/gstbuffer.c: doc fixes
10928         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
10929         * gst/gstfilter.c: doc fixes
10930         * gst/gsttag.c: doc fixes
10931         * gst/gstvalue.c: doc fixes
10932
10933 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10934
10935         * docs/pwg/advanced-types.xml:
10936           Document typefinding.
10937         * docs/pwg/other-oneton.xml:
10938           Document one-to-n elements, demuxers and parsers.
10939
10940 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
10941
10942         reviewed by: David Schleef  <ds@schleef.org>
10943
10944         * configure.ac: Check bison version (bug #127838)
10945
10946 2004-03-25  David Schleef  <ds@schleef.org>
10947
10948         * docs/gst/gstreamer-docs.sgml: More fine tuning.
10949         * docs/gst/gstreamer-sections.txt:
10950         * docs/gst/tmpl/gstautoplug.sgml:
10951         * docs/gst/tmpl/gststaticautoplug.sgml:
10952         * docs/gst/tmpl/gststaticautoplugrender.sgml:
10953         * docs/gst/tmpl/gstutils.sgml:
10954         * docs/gst/tmpl/gstxml.sgml:
10955
10956 2004-03-24  David Schleef  <ds@schleef.org>
10957
10958         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
10959         manual being such complete crap, that I decided to do major
10960         hacking of it.  This checkin replaces any fine tuning that
10961         may have been done previously, with the benefit of actually
10962         being complete for much of the API that was changed since
10963         0.6.  Further fine tuning will occur shortly.  (bug #134721)
10964         * docs/gst/gstreamer-sections.txt:
10965         * docs/gst/tmpl/GstBin.sgml:
10966         * docs/gst/tmpl/GstBuffer.sgml:
10967         * docs/gst/tmpl/GstCaps.sgml:
10968         * docs/gst/tmpl/GstClock.sgml:
10969         * docs/gst/tmpl/GstCompat.sgml:
10970         * docs/gst/tmpl/GstData.sgml:
10971         * docs/gst/tmpl/GstElement.sgml:
10972         * docs/gst/tmpl/GstEvent.sgml:
10973         * docs/gst/tmpl/GstIndex.sgml:
10974         * docs/gst/tmpl/GstStructure.sgml:
10975         * docs/gst/tmpl/GstTag.sgml:
10976         * docs/gst/tmpl/cothreads.sgml:
10977         * docs/gst/tmpl/cothreads_compat.sgml:
10978         * docs/gst/tmpl/gettext.sgml:
10979         * docs/gst/tmpl/grammar.tab.sgml:
10980         * docs/gst/tmpl/gst-i18n-app.sgml:
10981         * docs/gst/tmpl/gst-i18n-lib.sgml:
10982         * docs/gst/tmpl/gst.sgml:
10983         * docs/gst/tmpl/gst_private.sgml:
10984         * docs/gst/tmpl/gstaggregator.sgml:
10985         * docs/gst/tmpl/gstarch.sgml:
10986         * docs/gst/tmpl/gstatomic.sgml:
10987         * docs/gst/tmpl/gstatomic_impl.sgml:
10988         * docs/gst/tmpl/gstbin.sgml:
10989         * docs/gst/tmpl/gstbuffer.sgml:
10990         * docs/gst/tmpl/gstbufferstore.sgml:
10991         * docs/gst/tmpl/gstcaps.sgml:
10992         * docs/gst/tmpl/gstclock.sgml:
10993         * docs/gst/tmpl/gstcompat.sgml:
10994         * docs/gst/tmpl/gstconfig.sgml:
10995         * docs/gst/tmpl/gstcpu.sgml:
10996         * docs/gst/tmpl/gstdata.sgml:
10997         * docs/gst/tmpl/gstdata_private.sgml:
10998         * docs/gst/tmpl/gstelement.sgml:
10999         * docs/gst/tmpl/gstenumtypes.sgml:
11000         * docs/gst/tmpl/gsterror.sgml:
11001         * docs/gst/tmpl/gstevent.sgml:
11002         * docs/gst/tmpl/gstfakesink.sgml:
11003         * docs/gst/tmpl/gstfakesrc.sgml:
11004         * docs/gst/tmpl/gstfilesink.sgml:
11005         * docs/gst/tmpl/gstfilter.sgml:
11006         * docs/gst/tmpl/gstindex.sgml:
11007         * docs/gst/tmpl/gstinfo.sgml:
11008         * docs/gst/tmpl/gstinterface.sgml:
11009         * docs/gst/tmpl/gstlog.sgml:
11010         * docs/gst/tmpl/gstmacros.sgml:
11011         * docs/gst/tmpl/gstmarshal.sgml:
11012         * docs/gst/tmpl/gstmd5sink.sgml:
11013         * docs/gst/tmpl/gstmultifilesrc.sgml:
11014         * docs/gst/tmpl/gstobject.sgml:
11015         * docs/gst/tmpl/gstpad.sgml:
11016         * docs/gst/tmpl/gstparse.sgml:
11017         * docs/gst/tmpl/gstpipeline.sgml:
11018         * docs/gst/tmpl/gstplugin.sgml:
11019         * docs/gst/tmpl/gstpluginfeature.sgml:
11020         * docs/gst/tmpl/gstqueue.sgml:
11021         * docs/gst/tmpl/gstreamer-unused.sgml:
11022         * docs/gst/tmpl/gstregistry.sgml:
11023         * docs/gst/tmpl/gstregistrypool.sgml:
11024         * docs/gst/tmpl/gstscheduler.sgml:
11025         * docs/gst/tmpl/gstsearchfuncs.sgml:
11026         * docs/gst/tmpl/gstshaper.sgml:
11027         * docs/gst/tmpl/gstspider.sgml:
11028         * docs/gst/tmpl/gstspideridentity.sgml:
11029         * docs/gst/tmpl/gststructure.sgml:
11030         * docs/gst/tmpl/gstsystemclock.sgml:
11031         * docs/gst/tmpl/gsttag.sgml:
11032         * docs/gst/tmpl/gsttaginterface.sgml:
11033         * docs/gst/tmpl/gsttee.sgml:
11034         * docs/gst/tmpl/gstthread.sgml:
11035         * docs/gst/tmpl/gsttrace.sgml:
11036         * docs/gst/tmpl/gsttrashstack.sgml:
11037         * docs/gst/tmpl/gsttypefind.sgml:
11038         * docs/gst/tmpl/gsttypes.sgml:
11039         * docs/gst/tmpl/gsturi.sgml:
11040         * docs/gst/tmpl/gsturitype.sgml:
11041         * docs/gst/tmpl/gstutils.sgml:
11042         * docs/gst/tmpl/gstvalue.sgml:
11043         * docs/gst/tmpl/gstversion.sgml:
11044         * docs/gst/tmpl/gstxml.sgml:
11045         * docs/gst/tmpl/gstxmlregistry.sgml:
11046         * docs/gst/tmpl/gthread-cothreads.sgml:
11047         * docs/gst/tmpl/types.sgml:
11048
11049 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11050
11051         * docs/pwg/other-sink.xml:
11052         * docs/pwg/other-source.xml:
11053           Documentation on how to write source and sink elements. Other
11054           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
11055           manager, autoplugger) are all still pending.
11056
11057 2004-03-25  Benjamin Otte  <otte@gnome.org>
11058
11059         * testsuite/elements/Makefile.am:
11060         * testsuite/elements/gst-compprep-check:
11061           add check to make sure gst-compprep works
11062         * testsuite/elements/gst-inspect-check.in:
11063           improve initialization output
11064         * testsuite/Makefile.am:
11065         * testsuite/gst-inspect-check:
11066           remove old file
11067
11068 2004-03-24  David Schleef  <ds@schleef.org>
11069
11070         * testsuite/elements/Makefile.am:
11071         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
11072         to the testsuite.
11073
11074 2004-03-24  Benjamin Otte  <otte@gnome.org>
11075
11076         * libs/gst/control/dparam.c: (gst_dparam_attach),
11077         (gst_dparam_detach):
11078         * libs/gst/control/dparammanager.c: (gst_dpman_init):
11079           fix lvalue casts for real
11080
11081 2004-03-24  Benjamin Otte  <otte@gnome.org>
11082
11083         * gst/schedulers/gstbasicscheduler.c:
11084         (gst_basic_scheduler_src_wrapper):
11085         * gst/schedulers/gstoptimalscheduler.c:
11086         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
11087         (pad_clear_queued), (gst_opt_scheduler_add_element),
11088         (gst_opt_scheduler_remove_element):
11089           fix GStreamer to not have issues with lvalue casts anymore (fixes
11090           #136841)
11091
11092 2004-03-24  Benjamin Otte  <otte@gnome.org>
11093
11094         * gst/gstelement.c:
11095           add documentation about a gobject quirk where the object hasn't the
11096           correct class pointer set on initialization
11097         * gst/schedulers/gstbasicscheduler.c:
11098         (gst_basic_scheduler_src_wrapper):
11099           make sure to not run into an infinite loop
11100
11101 2004-03-22  Benjamin Otte  <otte@gnome.org>
11102
11103         * gst/gstutils.c: (gst_util_dump_mem):
11104         * gst/gstutils.h:
11105           first argument of gst_util_dump_mem should be const
11106
11107 2004-03-22  Johan Dahlin  <johan@gnome.org>
11108
11109         * gst/gstvalue.h: Clean up a little bit.
11110
11111 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
11112
11113         reviewed by Benjamin Otte  <otte@gnome.org>
11114
11115         * gst/autoplug/gstspider.c: (gst_spider_dispose):
11116         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
11117         (gst_aggregator_class_init), (gst_aggregator_init):
11118         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
11119         (gst_filesrc_dispose), (gst_filesrc_set_location):
11120         * gst/elements/gstidentity.c: (gst_identity_finalize),
11121         (gst_identity_class_init), (gst_identity_chain):
11122         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11123         * gst/elements/gststatistics.c: (gst_statistics_finalize),
11124         (gst_statistics_class_init):
11125         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
11126         (gst_tee_get_property):
11127           clean up used memory in this elements correctly on teardown (closes
11128           #137279)
11129
11130 2004-03-20  Colin Walters  <walters@redhat.com>
11131
11132         * gst/registries/gstxmlregistry.c:
11133         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
11134         registry saving atomic.
11135
11136 2004-03-20  Colin Walters  <walters@redhat.com>
11137
11138         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
11139         Just use
11140         access() instead of actually creating and deleting files.
11141
11142 2004-03-18  David Schleef  <ds@schleef.org>
11143
11144         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
11145         (bug #137625)
11146
11147 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11148
11149         * po/sv.po: updated translation (Christian Rose)
11150
11151 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11152
11153         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
11154         (gst_filesink_get_query_types), (_do_init),
11155         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
11156           return FALSE silently
11157         * po/af.po: updated translation (Petri Jooste)
11158
11159 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11160
11161         * Makefile.am:
11162         * configure.ac:
11163           dist common properly
11164         * po/af.po:
11165         * po/fr.po:
11166         * po/nl.po:
11167         * po/sr.po:
11168         * po/sv.po:
11169           refreshing translations
11170
11171 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11172
11173         * po/LINGUAS:
11174         * po/sv.po:
11175         * po/af.po:
11176           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
11177
11178 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11179
11180         * Makefile.am: use common/release.mak
11181
11182 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11183
11184         * docs/faq/gst-uninstalled:
11185           adding gst-monkeysaudio to the list of possible plugin dirs
11186
11187 2004-03-16  David Schleef  <ds@schleef.org>
11188
11189         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
11190         (gst_init_check_with_popt_table):  Fix some gettext strings to
11191         make them easier to translate.  Required making the strings
11192         non-const.
11193
11194 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11195
11196         * configure.ac: bump nano to 1
11197
11198 === release 0.8.0 ===
11199
11200 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11201
11202         * configure.ac: release 0.8.0, "Executive Slacks"
11203
11204 2004-03-16  Johan Dahlin  <johan@gnome.org>
11205
11206         * gst/schedulers/gstoptimalscheduler.c
11207         (gst_opt_scheduler_pad_unlink): Remove double ;,
11208         spotted by Scott Wheeler
11209
11210 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11211
11212         * configure.ac: bump libtool version
11213
11214 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11215
11216         * gst/gstcaps.h:
11217         * gst/gststructure.h:
11218           add reserved padding
11219
11220 2004-03-15  Benjamin Otte  <otte@gnome.org>
11221
11222         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
11223           set the first parameter for select call correctly.
11224           (fixes #137230)
11225
11226 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11227
11228         * *.c,*.h: don't mix tabs and spaces
11229
11230 2004-03-15  Johan Dahlin  <johan@gnome.org>
11231
11232         * gst/schedulers/gstoptimalscheduler.c
11233         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
11234         crash on MPEG playback. My boolean arithmetic is a bit rusty.
11235
11236         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
11237         
11238 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11239
11240         * testsuite/Rules:
11241           fix gst-register rules
11242
11243 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11244
11245         * testsuite/Rules:
11246           use versioned gst-register
11247
11248 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11249
11250         * docs/libs/gstreamer-libs-sections.txt:
11251           remove </SUBSECTION>
11252         * gst/gstplugin.c:
11253         * gst/gstregistry.c: (gst_registry_add_plugin):
11254         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
11255         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
11256           add debugging and fix some comment blocks
11257
11258 2004-03-15  Johan Dahlin  <johan@gnome.org>
11259
11260         * *.h: Revert indent changes.
11261         
11262 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
11263
11264         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
11265           g_error_free the g_error
11266         * tools/gst-feedback-m.m:
11267           check for other versions of gstreamer
11268         * tools/gst-indent:
11269           use sh, not bash
11270
11271 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
11272
11273         * tools/gst-register.c: do not spill paths when registries are not
11274           writable, until we fix the "user running gst-register" case.
11275
11276 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11277
11278         * *.c, *.h: commit of gst-indent run on core
11279
11280 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11281
11282         * tools/gst-indent:
11283         * tools/Makefile.am:
11284           add our indentation style as a script
11285
11286 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11287
11288         * po/sr.po:
11289         * po/LINGUAS:
11290           added Serbian translation
11291
11292 2004-03-13  Benjamin Otte  <otte@gnome.org>
11293
11294         * gst/gstelement.c:
11295           add documentation note about gst_element_found_tags_for_pad not
11296           being usable in getfunctions. (see #137042)
11297
11298 2004-03-12  David Schleef  <ds@schleef.org>
11299
11300         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
11301         change API right now!  Readd gst_caps_is_simple() macro.
11302         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
11303         uninitialized variable.  I'd bet this caused crashes.
11304         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
11305
11306 2004-03-12  Johan Dahlin  <johan@gnome.org>
11307
11308         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
11309         * gst/gstcaps.h: Clean up
11310
11311         * gst/gst.c (init_post): call gst_caps_get_type() instead of
11312         _gst_caps_initalize()
11313
11314         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
11315         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
11316
11317         * gst/gststructure.c (gst_structure_get_type): Ditto
11318
11319         * gst/gststructure.h: Ditto
11320         
11321 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11322
11323         * gst/gstqueue.c: (gst_queue_init):
11324           Reset default max. values in queues. Reason is simply to avoid
11325           braindead use. If you want wider values, use the properties. The
11326           default is supposed to always work. Wider values would make this
11327           beast a memory hog by default (250 full-PAL RGB32 video frames?
11328           That's 440 MB! No thank you).
11329
11330 2004-03-10  David Schleef  <ds@schleef.org>
11331
11332         * tools/gst-run.c: (main):  Fix crash when no relevant tools
11333         were found.  (bug #136793)
11334
11335 2004-03-10  Johan Dahlin  <johan@gnome.org>
11336
11337         * gst/schedulers/gstoptimalscheduler.c
11338         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
11339         links to elements within the same group, so we can finally remove
11340         that annoying warning. Refactor the code a little bit
11341         (group_dec_links_for_element): Split out
11342
11343 2004-03-09  David Schleef  <ds@schleef.org>
11344
11345         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
11346         (bug #134863)
11347
11348 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11349
11350         * configure.ac: first bug fix due to major/minor bump
11351
11352 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11353
11354         * configure.ac: bump nano to 1
11355
11356 === release 0.7.6 ===
11357
11358 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11359
11360         * NEWS:
11361         * RELEASE:
11362         * configure.ac:
11363           releasing 0.7.6, "Almost"
11364         * po/fr.po:
11365         * po/nl.po:
11366         * tools/Makefile.am:
11367         * tools/gst-feedback-m.m:
11368           unversioned source
11369
11370 2004-03-09  Johan Dahlin  <johan@gnome.org>
11371
11372         Reviewed by: Thomas Vander Stichele
11373
11374         * gst/gstelement.c (gst_element_class_init): register second
11375         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
11376         language bindings can (de)marshall correctly.
11377
11378         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
11379
11380         * gst/gsterror.c (gst_g_error_get_type): New function
11381
11382         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
11383         with VOID:OBJECT,OBJECT,STRING 
11384
11385 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
11386
11387         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
11388         Free a leaked g_timer on early returns.
11389
11390 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11391
11392         * docs/pwg/advanced-types.xml:
11393           Add cinepak description.
11394
11395 2004-03-07  David Schleef  <ds@schleef.org>
11396
11397         * docs/random/mimetypes:  Added cinepak description
11398
11399 2004-03-07  Andy Wingo  <wingo@pobox.com>
11400
11401         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
11402
11403         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
11404         there are no links to other groups when a group is destroyed.
11405         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
11406         removed from a group, make sure the link count to elements linked
11407         to other pads is appropriately decremented. This really fixes
11408         #135672.
11409
11410         The 1.60->1.61 patch has been reapplied in light of this fix.
11411
11412         * gst/gstelement.c (gst_element_dispose): Really protect against
11413         multiple invocations this time.
11414
11415 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11416
11417         * docs/gst/gstreamer-sections.txt:
11418         * docs/gst/tmpl/gsttag.sgml:
11419           remove some deprecated functions, document some existing ones
11420         * gst/gsttag.c: (gst_tag_get_flag):
11421         * gst/gsttag.h:
11422           add accessor function
11423
11424 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11425
11426         * docs/gst/gstreamer-sections.txt:
11427         * docs/gst/tmpl/gsttag.sgml:
11428         * docs/gst/tmpl/gstxml.sgml:
11429         * gst/gsttag.c: (gst_tag_get_flag):
11430         * gst/gsttag.h:
11431
11432 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
11433
11434         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
11435         leak
11436
11437 2004-03-05  David Schleef  <ds@schleef.org>
11438
11439         * REQUIREMENTS: Add bison and flex.
11440         * configure.ac: Fix comment about bison.
11441         * docs/random/ds/0.9-suggested-changes: yer ma
11442         * tools/gst-inspect.c: (print_element_info):  Fix warning.
11443
11444 2004-03-05  Benjamin Otte  <otte@gnome.org>
11445
11446         * gst/gstelement.c: (gst_element_error_full):
11447           revert recent recursive state changing commit - messing with other
11448           elements' states is evil and should be done by apps only.
11449
11450 2004-03-05  Benjamin Otte  <otte@gnome.org>
11451
11452         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
11453           check for empty intersection instead of NULL caps
11454         (gst_element_get_compatible_pad_filtered):
11455           remove old workaround that is only a bug nowadays
11456
11457 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11458
11459         * gst/gstelement.c: (gst_element_error_full):
11460           make elements try to recursively change state to PAUSED on all
11461           parents after an error to suppress ensuing warnings
11462         * gst/parse/grammar.y:
11463           make it check if it was able to sync the state, and throw an error
11464           if not, so stuff like
11465           oggdemux ! vorbisdec ! osssink gets caught
11466
11467 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11468
11469         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
11470           it contains lib64; use AS_AC_EXPAND to handle it properly
11471
11472 2004-03-05  David Schleef  <ds@schleef.org>
11473
11474         * gst/gstcpuid_i386.s:  Remove unused code
11475         * libs/gst/getbits/getbits.c: (gst_getbits_init),
11476         (gst_getbits_newbuf): Remove MMX code
11477         * libs/gst/getbits/getbits.h: Remove MMX code
11478
11479 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
11480
11481         * debian/.cvsignore:
11482         * debian/README.Debian:
11483         * debian/changelog:
11484         * debian/control:
11485         * debian/control.in:
11486         * debian/copyright:
11487         * debian/gstreamer-core-libs-dev.files:
11488         * debian/gstreamer-core-libs.files:
11489         * debian/gstreamer-core.files:
11490         * debian/gstreamer-core.postinst:
11491         * debian/gstreamer-core.postrm:
11492         * debian/gstreamer-doc.files:
11493         * debian/gstreamer-doc.links:
11494         * debian/gstreamer-doc.lintian:
11495         * debian/gstreamer-runtime.files:
11496         * debian/gstreamer-runtime.manpages:
11497         * debian/gstreamer-runtime.postinst:
11498         * debian/gstreamer-runtime.postrm:
11499         * debian/gstreamer-tools.files:
11500         * debian/gstreamer-tools.manpages:
11501         * debian/libgstreamer-dev.files:
11502         * debian/libgstreamer0.4.1.files:
11503         * debian/libgstreamerVERSION.files:
11504         * debian/rules:
11505         Debian package info not maintained here.
11506
11507 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11508
11509         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11510         * gst/gstbin.c: (gst_bin_class_init):
11511         * gst/gstelement.c: (gst_element_class_init):
11512         * gst/gstindex.c: (gst_index_class_init):
11513         * gst/gstobject.c: (gst_object_class_init),
11514         (gst_signal_object_class_init):
11515         * gst/gstpad.c: (gst_pad_template_class_init):
11516         * gst/gstregistry.c: (gst_registry_class_init):
11517         * gst/gsturi.c: (gst_uri_handler_base_init):
11518         * gst/gstxml.c: (gst_xml_class_init):
11519         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11520         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
11521           make all signal names use dashes instead of underscore
11522
11523 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11524
11525         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
11526
11527 2004-03-03  Benjamin Otte  <otte@gnome.org>
11528
11529         * gst/schedulers/gstoptimalscheduler.c:
11530           revert last commit by Andy Wingo. It causes segfaults on unreffing
11531           in Rhythmbox. (see bug #135672)
11532
11533 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11534
11535         * po/fr.po: fix typo
11536
11537 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11538
11539         * tools/gst-inspect.c: (main): 
11540         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
11541
11542 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11543
11544         * configure.ac:
11545           get GLIB_ONLY and POPT flags for the nonversioned binaries
11546         * tools/Makefile.am:
11547           use them
11548
11549 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11550
11551         * gst/gst.c: (init_post):
11552           change so that GST_REGISTRY now is where the global registry gets
11553           saved, since that is where plugins now get attached to first, and
11554           spilled over to the user registry.  Note that in the case of using
11555           GST_REGISTRY env var, we don't want to affect any real registries
11556           beyond the one given by this var, and thus we don't set a user
11557           registry to spill to.  So make sure GST_REGISTRY is writable.
11558
11559 2004-03-01  David Schleef  <ds@schleef.org>
11560
11561         * AUTHORS:  Added some names.  Add yourself if you're missing.
11562
11563 2004-03-01  David Schleef  <ds@schleef.org>
11564
11565         * MAINTAINERS: Add
11566
11567 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
11568
11569         * configure.ac:
11570           remove whitespace
11571         * docs/gst/tmpl/gstbuffer.sgml:
11572         * docs/gst/tmpl/gstdata.sgml:
11573         * docs/gst/tmpl/gstreamer-unused.sgml:
11574         * docs/gst/tmpl/gstxml.sgml:
11575           doc update
11576         * docs/manuals.mak:
11577           add a FIXME
11578         * docs/pwg/intro-preface.xml:
11579         * docs/pwg/pwg.xml:
11580           remove GNOME
11581         * gst/gst.c: (init_post):
11582           try GST_PLUGIN_PATH paths for the _global_registry first
11583         * gst/gstelement.h:
11584           add the error message as well, otherwise (null) debug info doesn't
11585           make much sense
11586         * tools/gst-register.c: (main):
11587           spill paths to next registry if this registry is not writable
11588         * po/fr.po:
11589         * po/nl.po:
11590           translation updates
11591
11592 2004-03-01  Johan Dahlin  <johan@gnome.org>
11593
11594         * gst/gstbuffer.c (_gst_buffer_initialize): 
11595         * gst/gstdata.c (gst_data_get_type): 
11596         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
11597         instead of ref, since some applications that uses GBoxed
11598         routines depends on a function that actually returns a copy.
11599
11600 2004-02-27  Benjamin Otte  <otte@gnome.org>
11601
11602         * gst/gstbuffer.h:
11603           remove gst_buffer_free, use gst_data_unref
11604         * gst/gstdata.c: (gst_data_get_type):
11605           use refcounting in GstData GBoxed registration
11606         * gst/gstdata.h:
11607           remove gst_data_free, use gst_data_unref
11608
11609 2004-02-27  Johan Dahlin  <johan@gnome.org>
11610
11611         * gst/gstdata.c (gst_data_get_type): New function, register
11612         GstData as a GBoxed type.
11613
11614         * gst/gstdata.h (GST_TYPE_DATA): New macro
11615
11616 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
11617
11618         * Makefile.am:
11619         * gstreamer.spec.in:
11620           put back RELEASE
11621         * gst/Makefile.am:
11622           clean up non-disting of built files
11623         * testsuite/debug/commandline.c:
11624           test fix for option rename
11625
11626 2004-02-26  David Schleef  <ds@schleef.org>
11627
11628         * configure.ac:  We don't really need glib-2.3.  Also remove
11629         some unneeded checks for library functions.
11630         * gst/Makefile.am:  Instead, we need to not dist files created
11631         by glib-genmarshal.
11632
11633 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11634
11635         * configure.ac:
11636           bump glib required version to 2.3.0 for g_value_takes_boxed
11637
11638  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
11639
11640         * common/m4/gst-docs.m4
11641         change flavour text from enable to disable as enable is our default
11642         closes bug Bug 135304
11643
11644 === release 0.7.5 ===
11645  
11646  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11647  
11648         * NEWS:
11649           instate NEWS file
11650         * Makefile.am:
11651         * gstreamer.spec.in:
11652         * RELEASE:
11653           put back release
11654         * configure.ac:
11655         * docs/random/release:
11656           more updates
11657
11658 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11659
11660         * gst/gsttag.c: (_gst_tag_initialize):
11661         * po/fr.po:
11662         * po/nl.po:
11663           remove hyphen from codec tags
11664
11665 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11666
11667         * gst/parse/Makefile.am:
11668           fix dependency so that a make from a clean build works the first
11669           time
11670
11671 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11672
11673         * docs/random/release:
11674           update release strategy
11675         * po/fr.po:
11676           auto-update po file
11677         * po/nl.po:
11678           update dutch translation
11679
11680 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11681
11682         * docs/manual/debugging.xml:
11683         fix manual for new debugging system
11684
11685 2004-02-25  Andy Wingo  <wingo@pobox.com>
11686
11687         * gst/gstpad.c (gst_pad_link_prepare): Re-add
11688         gst_pad_link_prepare. Please email the list with specific reasons
11689         for reverting.
11690
11691 2004-02-24  Andy Wingo  <wingo@pobox.com>
11692
11693         * gst/gstelement.c (gst_element_dispose): Protect against multiple
11694         invocations.
11695
11696         * gst/schedulers/gstoptimalscheduler.c:
11697         I added a mess of prototypes at the top of the file by way of
11698         documentation. Some of the operations on chains and groups were
11699         re-organized.
11700
11701         (create_group): Added a type argument so if the group is enabled,
11702         the setup_group_scheduler knows what to do.
11703         (group_elements): Added a type argument here, too, to be passed on
11704         to create_group.
11705         (group_element_set_enabled): If an unlinked PLAYING element is
11706         added to a bin, we have to create a new group to hold the element,
11707         and this function will be called before the group is added to the
11708         chain. Thus we have a valid case for group->chain==NULL. Instead
11709         of calling chain_group_set_enabled, just set the flag on the group
11710         (the chain's status will be set when the group is added to it).
11711         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
11712         Setup the group scheduler when the group is enabled, not
11713         specifically when an element goes PAUSED->PLAYING. This means
11714         PLAYING elements can be added, linked, and scheduled into a
11715         PLAYING pipeline, as was intended.
11716         (add_to_group): Don't ref the group twice. I don't know when this
11717         double-ref got in here. Removing it has the potential to cause
11718         segfaults if other parts of the scheduler are buggy. If you find
11719         that the scheduler is segfaulting for you, put in an extra ref
11720         here and see if that hacks over the underlying issue. Of course,
11721         then find out what code is unreffing a group it doesn't own...
11722         (create_group): Make the extra refcount floating, and remove it
11723         after adding the element. This means that...
11724         (unref_group): Destroy when the refcount reaches 0, not 1, like
11725         every other refcounted object in the known universe.
11726         (remove_from_group): When a group becomes empty, set it to be not
11727         active, and remove it from its chain. Don't unref it again,
11728         there's no floating reference any more.
11729         (destroy_group): We have to remove the group from the chain in
11730         remove_from_group (rather than here) to break refcounting cycles
11731         (the chain always has a ref on the group). So assert that
11732         group->chain==NULL.
11733         (ref_group_by_count): Removed, it was commented out anyway.
11734         (merge_chains): Use the remove_from_chain and add_to_chain
11735         primitives to do the reparenting, instead of rolling our own
11736         implementation.
11737         (add_to_chain): The first non-disabled group in the chain's group
11738         list will be the entry point for the chain. Because buffers can
11739         accumulate in loop elements' peer bufpens, we preferentially
11740         schedule loop groups before get groups to avoid unnecessary
11741         execution of get-based groups when the bufpens are already full.
11742         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
11743         (get_group_schedule_function): Ditto.
11744         (loop_group_schedule_function): Ditto.
11745         (gst_opt_scheduler_loop_wrapper): Ditto.
11746         (gst_opt_scheduler_iterate): Ditto.
11747
11748         I understand the opt scheduler now, yippee!
11749
11750         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
11751         (gst_pad_get_name, gst_pad_set_chain_function) 
11752         (gst_pad_set_get_function, gst_pad_set_event_function) 
11753         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
11754         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
11755         (gst_pad_set_query_function, gst_pad_get_query_types) 
11756         (gst_pad_get_query_types_default) 
11757         (gst_pad_set_internal_link_function) 
11758         (gst_pad_set_formats_function, gst_pad_set_link_function) 
11759         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
11760         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
11761         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
11762         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
11763         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
11764         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
11765         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
11766         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
11767         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
11768         (gst_pad_event_default_dispatch, gst_pad_event_default) 
11769         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
11770         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
11771         (gst_pad_get_formats_default, gst_pad_get_formats): Better
11772         argument checks, and some doc fixes.
11773
11774         (gst_pad_custom_new_from_template): Um, does anyone
11775         use these functions? Actually make a custom pad instead of a
11776         normal one.
11777         (gst_pad_try_set_caps): Transpose some checks.
11778         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
11779         the pad is in negotiation.
11780         (gst_pad_try_relink_filtered): Use pad_link_prepare.
11781         
11782         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
11783
11784         * gst/gstelement.h: 
11785         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
11786         on the list.
11787
11788 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11789
11790         * gst/gstbin.c: (gst_bin_add):
11791           add error for not being able to add elements
11792
11793 2004-02-22  Julien MOUTTE <julien@moutte.net>
11794
11795         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
11796         audio-codec and video-codec.
11797
11798 2004-02-22  Benjamin Otte  <otte@gnome.org>
11799
11800         reported by: Padraig O'Briain <padraig.obriain@sun.com>
11801
11802         * autogen.sh:
11803           replace test -e with test -x for mkinstalldirs to be more portable.
11804           (fixes #134816)
11805
11806 2004-02-22  Benjamin Otte  <otte@gnome.org>
11807
11808         * gst/gstpad.c:
11809           revert last patch from Andy, it makes gst_pad_can_link_filtered much
11810           too noisy
11811         * gst/gsttag.c: (_gst_tag_initialize):
11812         * gst/gsttag.h:
11813           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
11814         * libs/gst/control/dparam.c: (gst_dparam_attach):
11815         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
11816           check that types for attached dparams match
11817
11818 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11819
11820         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
11821         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11822         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11823           fix errors
11824
11825 2004-02-20  Andy Wingo  <wingo@pobox.com>
11826
11827         * gst/gstbin.c:
11828         * gst/gstbuffer.c:
11829         * gst/gstplugin.c:
11830         * gst/registries/gstxmlregistry.c: 
11831         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
11832
11833         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
11834         (gst_element_add_pad): DEBUG->INFO, some fixes.
11835         (gst_element_get_compatible_pad_template): Just see if the
11836         templates' caps intersect, not if one is a strict subset of the
11837         other. This conforms more to what gst_pad_link_intersect() does.
11838         (gst_element_class_add_pad_template): Don't memcpy the pad
11839         template, just ref it.
11840         (gst_element_get_compatible_pad_filtered): Clean up debug messages
11841
11842         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
11843         (gst_pad_link_filtered): Debug changes.
11844         (gst_pad_link_prepare): New function, consolidated from
11845         can_link_filtered and link_filtered.
11846
11847         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
11848         look more like that of the functions in gstelement.c
11849
11850         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
11851         object, and return the empty string if object is NULL.
11852
11853         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
11854         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
11855         LOG, not DEBUG. We still get flex info on debug.
11856
11857         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
11858         debug string more verbose.
11859         (plugin_times_older_than): DEBUG->LOG.
11860
11861 2004-02-20  Julien MOUTTE <julien@moutte.net>
11862
11863         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
11864         will emit found_tag for each stream they demux with the codec.
11865
11866 2004-02-20  Benjamin Otte  <otte@gnome.org>
11867
11868         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
11869           copy navigation event correctly. Check freeing tag lists. 
11870         * gst/gstthread.c: (gst_thread_change_state):
11871           don't abort() on state changing mess - it might happen because of
11872           bugs.
11873         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
11874           use boxed functions
11875         * gst/gstvalue.h:
11876           fix GST_VALUE_HOLDS_CAPS
11877
11878 2004-02-19  David Schleef  <ds@schleef.org>
11879
11880         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
11881         and use it for GST_FUNCTION.  (bug #134750)
11882
11883 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11884
11885         * po/fr.po:
11886         * po/nl.po:
11887           updating translations
11888
11889 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11890
11891         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
11892
11893 2004-02-18  kost@imn.htwk-leipzig.de
11894
11895         reviewed by: David Schleef  <ds@schleef.org>
11896
11897         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
11898         for libgstcontrol.
11899
11900 2004-02-18  David Schleef  <ds@schleef.org>
11901
11902         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11903         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11904         (gst_dpsmooth_new): Additional fixes to get double dparams working.
11905         * tools/gst-inspect.c: (print_element_info): Support dumping of
11906         double dparam information.
11907
11908 2004-02-17  David Schleef  <ds@schleef.org>
11909
11910         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11911         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
11912         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
11913         Use GST_TYPE_CAPS in signal prototype.
11914         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
11915         Convert GST_TYPE_CAPS to boxed.
11916         * gst/gstelement.c: (gst_element_class_init):
11917         Use GST_TYPE_TAG_LIST in signal prototype.
11918         * gst/gstindex.c: (gst_index_class_init):
11919         * gst/gstindex.h:
11920         Add GST_TYPE_INDEX_ENTRY type.
11921         * gst/gstmarshal.list:
11922         Add necessary marshal types.
11923         * gst/gstpad.c: (gst_real_pad_class_init),
11924         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
11925         (gst_pad_recover_caps_error):
11926         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
11927         * gst/gststructure.c: (_gst_structure_initialize),
11928         (gst_structure_copy), (_gst_structure_copy_conditional):
11929         * gst/gststructure.h:
11930         Convert GST_TYPE_STRUCTURE to boxed.
11931         * gst/gsttag.c: (gst_tag_list_get_type):
11932         * gst/gsttag.h:
11933         Add GST_TYPE_TAG_LIST type.
11934
11935 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11936
11937         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
11938         to what we agreed with david.
11939         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
11940
11941 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11942
11943         * po/nl.po: update translation
11944
11945 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11946
11947         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
11948           throw an error if spider is trying to play a mime type there is
11949           no decoder for
11950         * po/POTFILES.in:
11951           add gst/autoplug/gstspider.c for translation
11952
11953 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11954
11955         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
11956         silently when the pad is negotiating.
11957
11958 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11959
11960         * docs/faq/Makefile.am:
11961           add script to run gstreamer uninstalled 
11962         * docs/faq/faq.xml:
11963         * docs/faq/developing.xml:
11964         * docs/faq/gst-uninstalled:
11965           extract script to run gstreamer uninstalled
11966         * docs/manuals.mak:
11967           add EXTRA_SOURCES variable for Makefile.am's to set to
11968           use additional SOURCE files for the doc build
11969
11970 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11971
11972         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
11973
11974 2004-02-15  Julien MOUTTE  <julien@moutte.net>
11975
11976         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
11977         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
11978         an error was thrown by osssink. Basically a state change failure for
11979         an element in a different scheduling group was considered as
11980         successful, which means that caps nego was going on and weird stuff
11981         happened. Like I wrote in the comment there, if someone wants to
11982         revert that please drop me a mail explaining why because I really see
11983         no point in keeping that broken behaviour there.
11984         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
11985         be empty, we then return NULL which will trigger a nice error when 
11986         pulling from the pad.
11987
11988 2004-02-13  David Schleef  <ds@schleef.org>
11989
11990         * libs/gst/control/dparam.c: (gst_dparam_class_init),
11991         (gst_dparam_get_property), (gst_dparam_set_property),
11992         (gst_dparam_do_update_default):
11993         * libs/gst/control/dparam.h:
11994         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11995         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
11996         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
11997         (gst_dpsmooth_do_update_double):
11998         * libs/gst/control/dparam_smooth.h:
11999         * libs/gst/control/dparammanager.c:
12000         (gst_dpman_inline_direct_update):
12001         Add support for double dparams.
12002
12003 2004-02-13  David Schleef  <ds@schleef.org>
12004
12005         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
12006         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
12007
12008 2004-02-13  Mattias Wadman  <mattias@sudac.org>
12009
12010         reviewed by: David Schleef  <ds@schleef.org>
12011
12012         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
12013         (gst_fdsrc_init), (gst_fdsrc_set_property),
12014         (gst_fdsrc_get_property), (gst_fdsrc_get):
12015         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
12016         and sends an EOS event if file descriptor reading times out.
12017
12018 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12019
12020         * configure.ac:
12021           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
12022
12023 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12024
12025         * configure.ac: pass required libxml version as argument
12026         (bug reported by Christophe Fergeau)
12027
12028 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12029   
12030         * docs/gst/gstreamer-docs.sgml:
12031         * docs/gst/tmpl/gstxml.sgml:
12032         * docs/libs/gstreamer-libs-docs.sgml:
12033           version API docs
12034
12035 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12036
12037         * gst/gstinfo.c:
12038         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
12039         (gst_registry_pool_feature_filter):
12040         * gst/gstthread.c: (gst_thread_class_init):
12041         * gst/gstvalue.c:
12042           add includes exposed by building without libxml
12043         * gst/indexers/Makefile.am:
12044           do not build fileindex when LOADSAVE disabled; we should have
12045           a better libxml check later since fileindex depends on xml, not
12046           LOADSAVE or REGISTRY
12047         * libs/gst/control/Makefile.am:
12048           link with m
12049         * tools/Makefile.am:
12050           fix wrong source code for gst-xmlinspect
12051
12052 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12053
12054         * configure.ac:
12055           fix gcov help output
12056           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
12057         * docs/random/release:
12058           some updated releasing notes
12059         * gstreamer.spec.in:
12060           more updates
12061
12062 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12063
12064         * docs/faq/faq.xml:
12065         * docs/manual/manual.xml:
12066         * docs/pwg/pwg.xml:
12067         * docs/pwg/titlepage.xml:
12068           put version in documentation
12069
12070 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12071
12072         * tools/Makefile.am: fix man page installation
12073
12074 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12075
12076         * configure.ac:
12077           don't check for libxml when load/save and registry disabled (#105844)
12078         * gstreamer.spec.in:
12079           sync with fedora candidate spec
12080
12081 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12082
12083         * po/fr.po:
12084         * po/nl.po:
12085           replace multidisksrc with multifilesrc
12086
12087 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12088
12089         * po/POTFILES.in:
12090           update to multidisksrc => multifilesrc file renaming (#134145)
12091
12092 2004-02-11  David Schleef  <ds@schleef.org>
12093
12094         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
12095         * docs/gst/tmpl/gstpadtemplate.sgml: same
12096         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
12097         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
12098         fixing dance.
12099         * gst/gstutils.c: Remove disabled code that uses GstProps.
12100         * gst/registries/gstxmlregistry.h: same
12101         * docs/random/ds/0.9-suggested-changes: random notes
12102
12103 2004-02-11  kost@imn.htwk-leipzig.de
12104
12105         reviewed by: David Schleef  <ds@schleef.org>
12106
12107         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
12108         initialisation of clock (bug #134128)
12109
12110 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12111
12112         * configure.ac:
12113         * gst/elements/Makefile.am:
12114         * gst/elements/gstelements.c:
12115         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
12116         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
12117         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
12118         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
12119         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
12120         * gst/elements/gstmultifilesrc.h:
12121           rename multidisksrc to multifilesrc (part of #122200)
12122
12123 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12124
12125         * docs/manuals.mak:
12126           fix automake complaints
12127         * gst-element-check.m4:
12128           fix unquotedness
12129
12130 2004-02-11  David Schleef  <ds@schleef.org>
12131
12132         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
12133         * gst/gstatomic_impl.h: Disable sparc implementation.
12134
12135 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12136
12137         * gst-element-check.m4:
12138           fix underquoted macros as reported by automake 1.8.x (#133800)
12139         * configure.ac:
12140           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
12141           by autopoint (fixes #132996)
12142
12143 2004-02-10  Andy Wingo  <wingo@pobox.com>
12144
12145         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
12146         way to do inheritance.
12147         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
12148         (gst_pad_get_query_types, gst_pad_get_query_types_default):
12149         Routine docs.
12150         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
12151         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
12152         doc.
12153         (gst_pad_unlink, gst_pad_is_linked): Docs.
12154         (gst_pad_renegotiate): A brief description of capsnego.
12155         (gst_pad_try_set_caps): Document.
12156         (gst_pad_try_set_caps_nonfixed): Document.
12157         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
12158         (gst_pad_set_parent): Deprecated (although not out of the API).
12159         (gst_pad_get_parent): Deprecated, although many plugins use this.
12160         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
12161         are private and will go away in 0.9.
12162         (gst_pad_perform_negotiate): Doc.
12163         (gst_pad_link_unnegotiate): I think this is meant to be static.
12164         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
12165         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
12166         (gst_pad_get_peer): Doc updates.
12167         (gst_pad_caps_change_notify): Doc.
12168         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
12169         (gst_ghost_pad_new): Doc fixes.
12170
12171         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
12172         (gst_object_check_uniqueness): 
12173
12174         * gst/gstelement.c (gst_element_add_pad) 
12175         (gst_element_add_ghost_pad, gst_element_remove_pad) 
12176         (gst_element_remove_ghost_pad, gst_element_get_pad) 
12177         (gst_element_get_static_pad, gst_element_get_pad_list) 
12178         (gst_element_class_get_pad_template_list) 
12179         (gst_element_class_get_pad_template): Work on the docs.
12180         (gst_element_get_pad_template_list): Uses the class method.
12181         (gst_element_get_compatible_pad_template): Docs, and consolidate
12182         some test conditions. 
12183         (gst_element_get_pad_from_template): New static function.
12184         (gst_element_request_compatible_pad): Docs, and work with
12185         non-request compatible templates. 
12186         (gst_element_get_compatible_pad_filtered): Docs and remove
12187         redundant checks.
12188         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
12189         (gst_element_link_filtered, gst_element_link_many) 
12190         (gst_element_link, gst_element_link_pads) 
12191         (gst_element_unlink_many): Docs.
12192
12193 2004-02-05  Andy Wingo  <wingo@pobox.com>
12194
12195         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
12196         s/pointer/boxed/.
12197
12198         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
12199
12200         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
12201         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
12202         with the type=GST_TYPE_CAPS. This allows language bindings to know
12203         what kind of data they're dealing with.
12204
12205         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
12206         to NULL when g_value_init is called. GstCaps, which rolls its own
12207         type implementation, now does the same instead of allocating empty
12208         caps.
12209         (_gst_caps_initialize, _gst_caps_collect_value,
12210         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
12211         table methods. This allows G_VALUE_COLLECT to work.
12212
12213 2004-02-05  Andy Wingo  <wingo@pobox.com>
12214
12215         * configure.ac:
12216         * testsuite/Makefile.am (SUBDIRS): 
12217         * testsuite/ghostpads/Makefile.am: 
12218         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
12219
12220         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
12221         These two routines are the only ones that set
12222         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
12223         pad template. They should be made static, depending on ABI needs.
12224         (gst_real_pad_dispose): Handle the case of ghost pads without a
12225         parent. Assert after dealing with ghost pads that the ghost pad
12226         list is empty.
12227         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
12228         set after creation.
12229         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
12230         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
12231         functions. set_property will call add_ghost_pad/remove_ghost_pad
12232         as appropriate.
12233         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
12234
12235         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
12236         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
12237         (gst_element_remove_pad): Handle ghost pads as well.
12238         (gst_element_remove_ghost_pad): Deprecated (could be removed,
12239         depending on API-stability needs).
12240
12241 2004-02-05  Andy Wingo  <wingo@pobox.com>
12242
12243         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
12244         of course they're const
12245
12246 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12247
12248         * tools/Makefile.am:
12249         * tools/gst-feedback:
12250         * tools/gst-feedback-0.7:
12251           make gst-feedback versioned too for consistency
12252
12253 2004-02-11  David Schleef  <ds@schleef.org>
12254
12255         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12256         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
12257
12258 2004-02-10  Julien MOUTTE <julien@moutte.net>
12259
12260         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
12261         the structure does not contain a valid tag list. Adding a safety check
12262         to remove a noisy warning in that case.
12263
12264 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
12265
12266         * gst/gst.c: fix name to be in line with others
12267
12268 2004-02-09  Julien MOUTTE <julien@moutte.net>
12269
12270         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
12271         not shout that loud when len is 0. Just return 0 silently.
12272
12273 2004-02-09  Julien MOUTTE  <julien@moutte.net>
12274
12275         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
12276         because data_unref has one and I prefer the debug to be symetric.
12277         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
12278         were refed when added to the queue and unrefed only once when the queue
12279         was flushed. Now the flush handler unref the buffers two times : first
12280         unref for the ref added when pushing in the queue's tail and second
12281         unref to destroy the flushed buffer.
12282
12283 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
12284
12285         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
12286
12287 2004-02-06  David Schleef  <ds@schleef.org>
12288
12289         * docs/random/ds/0.9-suggested-changes: Random ramblings
12290         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
12291         to int before printing.
12292         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
12293         * gst/parse/parse.l: same.  See bug #129600
12294
12295 2004-02-06  David Schleef  <ds@schleef.org>
12296
12297         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
12298         (gst_index_add_entry), (gst_index_add_associationv),
12299         (gst_index_add_association): Add gst_index_add_associationv()
12300         and clean up gst_index_add_association(). #127133
12301
12302 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12303
12304         * autogen.sh: check out common with right tag if CVS/Tag exists
12305
12306 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12307
12308         * testsuite/ghostpads/ghostpads.c: (main):
12309           fix testsuite from segfaulting
12310
12311 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12312
12313         * Makefile.am: add release target
12314         * configure.ac: bump nano to 1
12315         * docs/random/release:
12316
12317 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12318
12319         * gst/gstcaps.h:
12320         * gst/gstelement.c: (gst_element_base_class_init),
12321         (gst_element_class_set_details), (gst_element_clear_pad_caps):
12322         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12323         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
12324         (gst_real_pad_dispose):
12325         * gst/gststructure.c: (gst_structure_free),
12326         (gst_structure_from_string):
12327           put reverted patch back in
12328         * gst/gstelement.c: (gst_element_remove_pad):
12329           free explicit caps if they're set
12330         * gst/gstpad.c: (_gst_pad_default_fixate_func):
12331           copy the structure when fixating
12332
12333 2004-02-05  David Schleef  <ds@schleef.org>
12334
12335         * gst/gstmarshal.list:
12336         * gst/gstpad.c: (gst_real_pad_class_init),
12337         (_gst_real_pad_fixate_accumulator):
12338         Revert POINTER->BOXED change in signal marshaller.
12339
12340 === release 0.7.4 ===
12341                                                                                 
12342 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12343                                                                                 
12344         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
12345         * configure.ac: changed for release
12346
12347 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
12348
12349         * gstreamer.spec.in:
12350           bump required version of gtk-doc
12351
12352 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
12353
12354         * gst/gstcaps.h:
12355         * gst/gstelement.c: (gst_element_base_class_init),
12356         (gst_element_class_set_details), (gst_element_clear_pad_caps):
12357         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12358         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
12359         (gst_real_pad_dispose):
12360         * gst/gststructure.c: (gst_structure_free),
12361         (gst_structure_from_string):
12362           revert patch that breaks applications, reapply after release
12363           to get this fixed properly
12364
12365 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12366
12367         * gst/gsttag.c: (_gst_tag_initialize):
12368         * gst/gsttag.h:
12369           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
12370
12371 2004-02-04  David Schleef  <ds@schleef.org>
12372
12373         Fix some memleaks:
12374         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
12375         (gst_spider_plug_from_srcpad):
12376         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
12377
12378 2004-02-04  David Schleef  <ds@schleef.org>
12379
12380         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
12381         a GstRealPad before accessing its structure members.
12382
12383 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12384
12385         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
12386         (gst_clock_get_speed):
12387         * gst/gstclock.h:
12388           reset padding, remove unused fields
12389
12390 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12391
12392         * gst/autoplug/gstspideridentity.c:
12393         (gst_spider_identity_sink_loop_type_finding):
12394           use get_allowed_caps, not get_caps (fixes #132519)
12395         * gst/elements/gsttypefind.c: (stop_typefinding):
12396           use correct order when sending buffers and seeking
12397
12398 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12399
12400         * configure.ac:
12401         * gst/gstelement.h:
12402         * gst/gstpad.h:
12403         * gst/gstqueue.h:
12404           upgrade libtool CURRENT, reset padding
12405
12406 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12407
12408         * configure.ac:
12409           bump to prerelease
12410           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
12411
12412 2004-02-04  David Schleef  <ds@schleef.org>
12413
12414         * docs/random/ds/0.9-suggested-changes: random notes
12415         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
12416         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
12417         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
12418         expansion.
12419         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
12420         (gst_filesink_get_query_types): same
12421         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
12422         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
12423         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
12424         to use new GST_PTR_FORMAT.
12425         * gst/gstelement.h: deprecate function factory macros
12426         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
12427         These are our last variadic macros that can't be replaced with
12428         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
12429         attempting to deprecate gst_element_clock_wait().
12430         * gst/gstevent.h: same
12431         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12432         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
12433         * gst/gstpad.h: deprecate function factory macros similar to above.
12434
12435 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12436
12437         * configure.ac:
12438         * tools/Makefile.am:
12439         * tools/gst-run.c: (popt_callback), (hash_print_key),
12440         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
12441         (get_candidates), (main):
12442           add new source file to generate non-versioned wrapper binaries
12443           for our tools.
12444
12445 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12446
12447         * gst/gstevent.c: (_gst_event_free):
12448           actually break; inside the switch statement
12449         * gst/parse/grammar.y:
12450           fix memleak where GValues weren't unset
12451
12452 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12453
12454         * gst/gststructure.c: (gst_structure_from_string):
12455           fix huge memleak
12456         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12457         (new_entry), (gst_type_find_element_chain):
12458         * gst/gstelement.c: (gst_element_base_class_init),
12459         (gst_element_class_set_details):
12460         * gst/gstpad.c: (gst_pad_can_link_filtered):
12461           fix smaller memleaks
12462         * gst/gstpad.c: (gst_real_pad_dispose):
12463           check that explicit caps are gone
12464         * gst/gststructure.c: (gst_structure_free):
12465           actually free the structure
12466         * gst/gstelement.c: (gst_element_clear_pad_caps):
12467           unset explicit caps
12468
12469 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12470
12471         * tools/Makefile.am:
12472           use AM_CFLAGS since all the CFLAGS are the same
12473           use AM_LDFAGS
12474
12475 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12476
12477         * docs/manual/gnome.xml:
12478           expand example a little
12479         * gst/gst.c: (gst_init_with_popt_table),
12480         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
12481           make sure popt option displays are done with right textdomain
12482           use GstPoptOption type
12483         * gst/gst.h:
12484           create GstPoptOption type
12485
12486 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12487
12488         * gst/gsterror.c: (_gst_stream_errors_init):
12489         * gst/gsterror.h:
12490           adding error type for no codec
12491         * po/POTFILES.in:
12492           add gst-inspect
12493         * po/nl.po:
12494           update dutch translation
12495         * tools/gst-inspect.c: (print_element_list), (main):
12496           do proper internationalization
12497         * tools/gst-launch.c: (idle_func):
12498           remove commented out function call
12499
12500 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12501
12502         * docs/README:
12503           add some error fixing notes
12504         * docs/gst/gstreamer-sections.txt:
12505           remove double entries
12506         * docs/gst/tmpl/gstbin.sgml:
12507         * docs/gst/tmpl/gstclock.sgml:
12508           remove override
12509         * docs/gst/tmpl/gstelement.sgml:
12510         * docs/gst/tmpl/gstindex.sgml:
12511         * docs/gst/tmpl/gstobject.sgml:
12512         * docs/gst/tmpl/gstpadtemplate.sgml:
12513         * docs/gst/tmpl/gstreamer-unused.sgml:
12514         * docs/gst/tmpl/gsttag.sgml:
12515         * docs/gst/tmpl/gstthread.sgml:
12516         * docs/gst/tmpl/gstxml.sgml:
12517         * gst/gsttag.h:
12518           sync header prototypes with c decls
12519         * gst/gsttaginterface.c:
12520           fix doc headers
12521
12522 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12523
12524         * gst/parse/Makefile.am:
12525         * gst/gstobject.h:
12526           get rid of gstmarshal.h dependency. It's not needed.
12527         * gst/gst.h:
12528         * gst/elements/gstfakesink.c:
12529         * gst/elements/gstfakesrc.c:
12530         * gst/elements/gstidentity.c:
12531         * gst/gstbin.c:
12532         * gst/gstelement.c:
12533         * gst/gstindex.c:
12534         * gst/gstobject.c:
12535         * gst/gstpad.c:
12536         * gst/gstthread.c:
12537         * gst/gstxml.c:
12538         * libs/gst/control/dparam.c:
12539         * libs/gst/control/dparammanager.c:
12540           include gstmarshal.h.
12541         Fixes #132045
12542
12543 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12544
12545         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
12546         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
12547         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
12548         * gst/elements/gstfilesrc.h:
12549           don't ref the filesrc when creating mmaped buffers. Don't keep a
12550           list of not-yet-destroyed buffers.
12551         * gst/gstbuffer.h:
12552           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
12553
12554 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12555
12556         * gst/gst.c: (init_pre):
12557           remove textdomain
12558
12559 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12560
12561         * docs/pwg/advanced-events.xml:
12562         * docs/pwg/advanced-scheduling.xml:
12563         * docs/pwg/intro-basics.xml:
12564         * docs/pwg/other-manager.xml:
12565         * docs/pwg/other-nton.xml:
12566         * docs/pwg/other-ntoone.xml:
12567         * docs/pwg/other-oneton.xml:
12568         * docs/pwg/pwg.xml:
12569           All sort of documentation... Forgot what. Point is that I want this
12570           in before I leave. The 'other-*' will be the last section and will
12571           explain issues specific to these type of elements.
12572
12573 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12574
12575         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12576         (gst_filesrc_get_read):
12577           set all the values on buffers that we can
12578
12579 2004-02-02  David Schleef  <ds@schleef.org>
12580
12581         Change usage of isblah() to g_ascii_isblah() to be more locale
12582         independent.  (#133076)
12583         * gst/gsturi.c: (gst_uri_protocol_check_internal):
12584         * gst/gstutils.c:
12585         * gst/parse/parse.l:
12586
12587 2004-02-02  Jon Trowbridge  <trow@gnu.org>
12588
12589         reviewed by: David Schleef  <ds@schleef.org>
12590
12591         Fix memory leaks:
12592         * gst/gstcaps.c: (gst_caps_to_string):
12593         * gst/registries/gstxmlregistry.c:
12594         (gst_xml_registry_add_path_list_func),
12595         (gst_xml_registry_parse_padtemplate):
12596
12597 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12598
12599         * gst/gstelement.c: (gst_element_default_error):
12600           suffix error messages with period
12601
12602 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12603
12604         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12605         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12606         * gst/gsterror.c: (gst_error_get_message):
12607           Suffix with dots
12608         * po/fr.po:
12609         * po/nl.po:
12610           Update translation files
12611
12612 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12613
12614         * gst/autoplug/gstspideridentity.c:
12615         (gst_spider_identity_sink_loop_type_finding):
12616         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12617         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12618         (gst_filesink_close_file), (gst_filesink_handle_event),
12619         (gst_filesink_chain):
12620         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12621         (gst_filesrc_get_read), (gst_filesrc_open_file):
12622         * gst/elements/gstidentity.c: (gst_identity_chain):
12623         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12624         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12625         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12626         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12627         * gst/gsterror.c: (_gst_core_errors_init),
12628         (_gst_library_errors_init), (_gst_resource_errors_init),
12629         (_gst_stream_errors_init), (gst_error_get_message):
12630         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12631         (gst_pad_recover_caps_error), (gst_pad_pull):
12632         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12633         * gst/schedulers/gstbasicscheduler.c:
12634         (gst_basic_scheduler_chainhandler_proxy),
12635         (gst_basic_scheduler_gethandler_proxy),
12636         (gst_basic_scheduler_cothreaded_chain):
12637           Suffix error messages with period.
12638           Use (NULL) instead of NULL
12639
12640 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12641
12642         * docs/gst/tmpl/gstelement.sgml:
12643         * docs/gst/tmpl/gstxml.sgml:
12644         * gst/gstelement.c: (gst_element_error_full):
12645           add element path to error
12646
12647 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12648
12649         * docs/random/mimetypes:
12650           update raw int/float info
12651         * gst/gsttag.c: (_gst_tag_initialize):
12652         * gst/gsttag.h:
12653           add GST_TAG_ENCODER
12654
12655 2004-01-30  David Schleef  <ds@schleef.org>
12656
12657         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
12658           missing (#132991)
12659
12660 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
12661
12662         reviewed by Benjamin Otte 
12663           parts of the patch submitted in bug #113913
12664
12665         * configure.ac:
12666           use AC_C_INLINE. Use = instead of == with test
12667         * examples/plugins/example.c:
12668         * gst/autoplug/gstspideridentity.c:
12669         * gst/elements/gstfdsrc.c:
12670         * gst/elements/gstfilesrc.c:
12671         * gst/elements/gstidentity.c:
12672         * gst/elements/gstmultidisksrc.c:
12673         * gst/elements/gststatistics.c:
12674         * gst/gstelement.c:
12675         * gst/gstobject.c:
12676         * gst/gstpad.c:
12677         * gst/gstpipeline.c:
12678         * gst/gstthread.c:
12679           don't end enums with a comma
12680         * gst/gstindex.c: (gst_index_compare_func):
12681           do explicit casting to gint
12682         * gst/gsttrace.c: (gst_trace_text_flush):
12683           #define strsize as a macro
12684
12685 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
12686
12687         * docs/README:
12688         * docs/gst/gstreamer-docs.sgml:
12689         * docs/gst/gstreamer-sections.txt:
12690         * docs/gst/tmpl/gstelement.sgml:
12691         * docs/gst/tmpl/gsterror.sgml:
12692         * docs/gst/tmpl/gstinterface.sgml:
12693         * docs/gst/tmpl/gstreamer-unused.sgml:
12694         * docs/gst/tmpl/gststructure.sgml:
12695         * docs/gst/tmpl/gsttag.sgml:
12696         * docs/gst/tmpl/gsttaginterface.sgml:
12697         * docs/gst/tmpl/gstvalue.sgml:
12698         make sure all API ends up in the built docs
12699         * gst/gstinterface.c:
12700         * gst/gststructure.c: (gst_structure_id_set_value),
12701         (gst_structure_set_value), (gst_structure_id_get_value):
12702         * gst/gststructure.h:
12703         * gst/gstvalue.h:
12704         sync .h with .c declarations
12705
12706 2004-01-30  Julien Moutte  <julien@moutte.net>
12707
12708         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
12709         Ronald will fix riffread.
12710
12711 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12712
12713         * docs/pwg/advanced-interfaces.xml:
12714           Added tuner interface docs.
12715
12716 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12717
12718         * docs/random/mimetypes:
12719           correct Theora information
12720         * gst/gstelement.h:
12721           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
12722
12723 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12724
12725         * gst/gstelement.c: (gst_element_error_full):
12726         * gst/gstelement.h:
12727           GST_ELEMENT_ERROR in enum -> _IN_ERROR
12728
12729 2004-01-29  Julien MOUTTE  <julien@moutte.net>
12730
12731         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
12732         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
12733         again and even before DISCONT.
12734         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
12735         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
12736         bytestream so that it's not stopping to fill the bytestream if events
12737         different than EOS or DISCONT are received. Instead it process them so
12738         that they go downstream.
12739
12740 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12741
12742         * docs/gst/tmpl/gstelement.sgml:
12743         * docs/gst/tmpl/gstreamer-unused.sgml:
12744         * docs/gst/tmpl/gstxml.sgml:
12745         * gst/autoplug/gstspideridentity.c:
12746         (gst_spider_identity_sink_loop_type_finding):
12747         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12748         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12749         (gst_filesink_close_file), (gst_filesink_handle_event),
12750         (gst_filesink_chain):
12751         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12752         (gst_filesrc_get_read), (gst_filesrc_open_file):
12753         * gst/elements/gstidentity.c: (gst_identity_chain):
12754         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12755         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12756         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12757         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12758         * gst/gstelement.h:
12759         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12760         (gst_pad_recover_caps_error), (gst_pad_pull):
12761         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12762         * gst/schedulers/gstbasicscheduler.c:
12763         (gst_basic_scheduler_chainhandler_proxy),
12764         (gst_basic_scheduler_gethandler_proxy),
12765         (gst_basic_scheduler_cothreaded_chain):
12766           gst_element_error -> GST_ELEMENT_ERROR
12767
12768 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12769
12770         * docs/Makefile.am:
12771         * docs/gst/tmpl/gstelement.sgml:
12772         * docs/gst/tmpl/gstxml.sgml:
12773         * docs/manuals.mak:
12774         * docs/pwg/advanced-request.xml:
12775         * docs/pwg/advanced-scheduling.xml:
12776         * docs/pwg/advanced-tagging.xml:
12777           fix non-validating docbook using CDATA
12778           make sure make check-local gets run first to check if it validates
12779
12780 2004-01-29  Julien MOUTTE <julien@moutte.net>
12781
12782         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
12783         handling (up and downstream).
12784         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
12785         my_filter thing.
12786
12787 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12788
12789         * docs/pwg/advanced-tagging.xml:
12790           Add docs about tag writing.
12791
12792 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12793
12794         * docs/pwg/advanced-tagging.xml:
12795           Add a part about tag reading and application signalling... Tag
12796           writing still needs to be documented.
12797         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12798           We can set file locations in READY, too.
12799
12800 2004-01-29  Julien MOUTTE <julien@moutte.net>
12801
12802         * docs/random/ds/element-checklist: Adding some notes about src
12803         events.
12804
12805 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12806
12807         * docs/random/mimetypes:
12808           Update docs to point to correct elements for various mimetypes, and
12809           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
12810           <stephane.loeuillet@tiscali.fr>.
12811
12812 2004-01-28  David Schleef  <ds@schleef.org>
12813
12814         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
12815
12816 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12817
12818         * docs/random/mimetypes:
12819           update docs for audio/x-raw-float. Add "buffer-frames=0 means
12820           undefined"
12821         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12822           make it only work in NULL.
12823         * gst/gstcaps.c:
12824           don't posion NULL caps
12825         * gst/gstelement.c: (gst_element_set_time):
12826           add debugging statement
12827         * gst/gstelement.c: (gst_element_emit_found_tag),
12828         (gst_element_found_tag_func), (gst_element_found_tags):
12829         * gst/gstelement.h:
12830           These functions take const taglists
12831         * gst/gstpad.c: (gst_pad_proxy_getcaps):
12832           fix memleak
12833         * gst/gstpad.c: (gst_pad_event_default):
12834           make more effort on handling discont and clocks, g_warn if everything
12835           fails
12836         * gst/gststructure.c: (gst_structure_remove_fields),
12837         (gst_structure_remove_fields_valist):
12838         * gst/gststructure.h:
12839           add gst_structure_remove_fields(_valist)
12840         * gst/gsttag.c:
12841           fix doc glitch
12842
12843 2004-01-28  David Schleef  <ds@schleef.org>
12844
12845         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
12846         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
12847         Fix memory leakage of gst_caps_to_string().
12848
12849         Use GST_PTR_FORMAT instead of gst_caps_to_string():
12850         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
12851         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
12852         (gst_spider_identity_sink_loop_type_finding):
12853         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12854         (find_suggest):
12855         * gst/gstpad.c: (gst_pad_try_relink_filtered),
12856         (gst_pad_set_explicit_caps):
12857         * gst/parse/grammar.y:
12858
12859 2004-01-28  David Schleef  <ds@schleef.org>
12860
12861         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
12862         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
12863         * docs/random/ds/0.9-suggested-changes: Notes from Company.
12864         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
12865         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
12866         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
12867         (gst_debug_log_default), (_gst_info_printf_extension),
12868         (_gst_info_printf_extension_arginfo):  Add printf extension.
12869         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
12870         * gst/gststructure.c: (gst_structure_to_string),
12871         (_gst_structure_parse_value): Use gst_value_deserialize() and
12872         remove old code.
12873         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
12874         (gst_value_deserialize_boolean), (gst_strtoi),
12875         (gst_value_deserialize_int), (gst_value_deserialize_double),
12876         (gst_value_deserialize_string), (gst_value_deserialize): Implement
12877         a bunch of deserialize functions and gst_value_deserialize.
12878         * gst/gstvalue.h: er, _de_serialize, not unserialize
12879         * testsuite/caps/string-conversions.c: (main): We don't currently
12880         handle (float) in caps, so convert these to (double).
12881         * testsuite/debug/Makefile.am: Add new test for the printf extension
12882         * testsuite/debug/printf_extension.c: (main): same
12883
12884 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12885
12886         * docs/random/company/time:
12887           Add some docs about clocking and time
12888
12889 2004-01-28  Julien MOUTTE <julien@moutte.net>
12890
12891         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
12892
12893 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12894
12895         * docs/pwg/advanced-clock.xml:
12896         * docs/pwg/advanced-dparams.xml:
12897         * docs/pwg/advanced-events.xml:
12898         * docs/pwg/advanced-interfaces.xml:
12899         * docs/pwg/advanced-midi.xml:
12900         * docs/pwg/advanced-request.xml:
12901         * docs/pwg/advanced-scheduling.xml:
12902         * docs/pwg/advanced-tagging.xml:
12903         * docs/pwg/advanced-types.xml:
12904         * docs/pwg/appendix-checklist.xml:
12905         * docs/pwg/building-boiler.xml:
12906         * docs/pwg/building-chainfn.xml:
12907         * docs/pwg/building-filterfactory.xml:
12908         * docs/pwg/building-pads.xml:
12909         * docs/pwg/building-props.xml:
12910         * docs/pwg/building-signals.xml:
12911         * docs/pwg/building-state.xml:
12912         * docs/pwg/building-testapp.xml:
12913         * docs/pwg/intro-basics.xml:
12914         * docs/pwg/intro-preface.xml:
12915         * docs/pwg/other-autoplugger.xml:
12916         * docs/pwg/other-sink.xml:
12917         * docs/pwg/other-source.xml:
12918         * docs/pwg/titlepage.xml:
12919           fix up id's
12920
12921 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12922
12923         * docs/95NonPath:
12924         * docs/HACKING:
12925         * docs/README:
12926         * docs/building-the-docs-on-debian:
12927           collect relevant bits of doc info
12928
12929 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12930
12931         * docs/pwg/advanced_tagging.xml:
12932           Half-assed commit so Thomas can re-arrange document IDs here to be
12933           consistent, too.
12934
12935 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12936
12937         * docs/manual/autoplugging.xml:
12938         * docs/manual/bins-api.xml:
12939         * docs/manual/bins.xml:
12940         * docs/manual/buffers-api.xml:
12941         * docs/manual/buffers.xml:
12942         * docs/manual/clocks.xml:
12943         * docs/manual/components.xml:
12944         * docs/manual/cothreads.xml:
12945         * docs/manual/debugging.xml:
12946         * docs/manual/dparams-app.xml:
12947         * docs/manual/dynamic.xml:
12948         * docs/manual/elements-api.xml:
12949         * docs/manual/elements.xml:
12950         * docs/manual/factories.xml:
12951         * docs/manual/gnome.xml:
12952         * docs/manual/goals.xml:
12953         * docs/manual/helloworld.xml:
12954         * docs/manual/helloworld2.xml:
12955         * docs/manual/init-api.xml:
12956         * docs/manual/intro.xml:
12957         * docs/manual/links-api.xml:
12958         * docs/manual/links.xml:
12959         * docs/manual/manual.xml:
12960         * docs/manual/motivation.xml:
12961         * docs/manual/pads-api.xml:
12962         * docs/manual/pads.xml:
12963         * docs/manual/plugins-api.xml:
12964         * docs/manual/plugins.xml:
12965         * docs/manual/programs.xml:
12966         * docs/manual/queues.xml:
12967         * docs/manual/quotes.xml:
12968         * docs/manual/schedulers.xml:
12969         * docs/manual/states-api.xml:
12970         * docs/manual/states.xml:
12971         * docs/manual/threads.xml:
12972         * docs/manual/typedetection.xml:
12973         * docs/manual/xml.xml:
12974           use chapter, part, section or misc as id starts for all bits
12975
12976 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12977
12978         * docs/gst/gstreamer-sections.txt:
12979           Fix up TITLE of the sections
12980
12981 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12982
12983         * docs/pwg/advanced_interfaces.xml:
12984           Add documentation on propertyprobing.
12985         * docs/pwg/advanced_events.xml:
12986         * docs/pwg/advanced_tagging.xml:
12987         * docs/pwg/building_boiler.xml:
12988         * docs/pwg/building_filterfactory.xml:
12989         * docs/pwg/pwg.xml:
12990           Move filterfactory and tagging into their own chapter, add a chapter
12991           on events. all these are empty placeholders that will be filled in
12992           some day.
12993
12994 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12995
12996         * docs/pwg/advanced_interfaces.xml:
12997           Docs for mixer interface. Also a check for website uploading.
12998
12999 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13000
13001         * docs/HACKING:
13002         * docs/Makefile.am:
13003         * docs/faq/Makefile.am:
13004         * docs/gst/Makefile.am:
13005         * docs/gst/tmpl/gstelement.sgml:
13006         * docs/gst/tmpl/gstplugin.sgml:
13007         * docs/gst/tmpl/gstreamer-unused.sgml:
13008         * docs/libs/Makefile.am:
13009         * docs/manual/Makefile.am:
13010         * docs/manuals.mak:
13011         * docs/pwg/Makefile.am:
13012         * docs/upload.mak:
13013           Separate out upload target and make it similar for
13014           both docbook and gtk-doc docs
13015
13016 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13017
13018         * docs/manuals.mak:
13019           Fix upload target to work with freedesktop
13020
13021 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13022
13023         * docs/pwg/advanced_types.xml:
13024           Add notes on creating your own types.
13025         * docs/pwg/building_boiler.xml:
13026         * docs/pwg/building_pads.xml:
13027         * docs/pwg/building_state.xml:
13028           Add some stuff about how to retrieve values from structures, how
13029           that relates to types and change layout slightly again to be almost
13030           perfect.
13031
13032 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13033
13034         * docs/pwg/advanced_dparams.xml:
13035         * docs/pwg/advanced_scheduling.xml:
13036           Change index layout slightly.
13037
13038 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13039
13040         * docs/pwg/advanced_clock.xml:
13041         * docs/pwg/advanced_interfaces.xml:
13042         * docs/pwg/advanced_midi.xml:
13043           General placeholders for now.
13044         * docs/pwg/advanced_request.xml:
13045           Explanation about sometimes and request pads.
13046         * docs/pwg/advanced_scheduling.xml:
13047           Concept of bytestream, loopfunctions and schedulers.
13048         * docs/pwg/building_boiler.xml:
13049           Add something about plugin-init.
13050
13051 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13052
13053         * docs/pwg/building_pads.xml:
13054           Fix broken docbook
13055
13056 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13057
13058         * docs/pwg/advanced_interfaces.xml:
13059         * docs/pwg/pwg.xml:
13060           Add as a placeholder for future filling-in.
13061         * docs/pwg/basics_autoplugging.xml:
13062         * docs/pwg/basics_buffers.xml:
13063         * docs/pwg/basics_elements.xml:
13064         * docs/pwg/basics_events.xml:
13065         * docs/pwg/basics_plugins.xml:
13066         * docs/pwg/basics_types.xml:
13067           Remove, because unused (this is all in intro_basics.xml).
13068         * docs/pwg/building_signals.xml:
13069           Short intro to signals + reference to GObject docs - we really
13070           shouldn't go into these sort of things to deply because we don't
13071           use them that extensively anyway.
13072         * docs/pwg/building_state.xml:
13073           Explanation of states. Benjamin, please check.
13074         * docs/pwg/building_testapp.xml:
13075           Put everything in one page - putting only a few lines of content
13076           per page doesn't really make sense.
13077
13078           Time to get into the advanced topics. ;).
13079
13080 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13081
13082         * docs/pwg/advanced_types.xml:
13083           Finish documenting the current state of mimetypes.
13084         * docs/pwg/building_boiler.xml:
13085         * docs/pwg/building_chainfn.xml:
13086         * docs/pwg/building_pads.xml:
13087         * docs/pwg/building_props.xml:
13088         * docs/pwg/building_testapp.xml:
13089           Start documenting the "how to build a simple audio filter" part
13090           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
13091           states and (maybe?) a short introduction to capsnego in the chapter
13092           on pads (building_pads.xml). Capsnego should probably be explained
13093           fully in advanced_capsnego.xml or so.
13094
13095 2004-01-26  David Schleef  <ds@schleef.org>
13096
13097         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
13098         * gst/gstpad.h: Add new function to allow element to (somewhat)
13099         specify non-fixed caps on a pad.
13100         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
13101         that I added a few weeks ago.
13102
13103 2004-01-26  David Schleef  <ds@schleef.org>
13104
13105         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
13106           making try_set_caps() work with non-fixed caps.
13107
13108 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13109
13110         * docs/pwg/advanced_types.xml:
13111         * docs/pwg/intro_basics.xml:
13112         * docs/pwg/intro_preface.xml:
13113         * docs/pwg/pwg.xml:
13114         * docs/pwg/titlepage.xml:
13115           First try to resurrect the PWG. I'm halfway integrating the mimetypes
13116           in here (docs/random/mimetypes), and will from there on work on both
13117           updating outdated parts and adding missing parts.
13118           That doesn't mean I'll fix it completely, but I'll try at least. ;).
13119
13120 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
13121
13122         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
13123           policy is set
13124
13125 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13126
13127         * gst/gstelement.h:
13128           remove gst_element_factory_get_version. It doesn't exist anymore.
13129         * gst/gstplugin.c:
13130         * gst/gstplugin.h:
13131           remove gst_plugin_set_name and change gst_plugin_get_longname to
13132           gst_plugin_get_description to match code.
13133         * gst/gsterror.h:
13134           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
13135         * gst/gstpad.c: (gst_pad_try_set_caps):
13136           make it work with nonfixed caps.
13137           Note that even in the nonfixed case the link function of the pad
13138           that tries to set caps isn't called.
13139
13140 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13141
13142         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
13143           fix bug where buffer was not assembled correctly
13144         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
13145           silence by default
13146         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
13147           only seek if there's no more buffers that could work without seeking
13148
13149 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13150
13151         * gst/gsttag.c: (_gst_tag_initialize):
13152         * gst/gsttag.h:
13153           Add application tag (for encoding/muxing app).
13154
13155 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13156
13157         * autogen.sh:
13158           make autopoint force, and libtoolize not copy
13159         * common/m4/as-docbook.m4:
13160           added docbook xml catalog setup check
13161         * common/m4/gst-doc.m4:
13162           use docbook check
13163
13164 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
13165
13166         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
13167         * gst/gsttag.h:
13168           add GstTagFlag
13169
13170 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13171
13172         * docs/gst/gstreamer-sections.txt:
13173         * docs/gst/tmpl/gst.sgml:
13174         * docs/gst/tmpl/gstbuffer.sgml:
13175         * docs/gst/tmpl/gstclock.sgml:
13176         * docs/gst/tmpl/gstelement.sgml:
13177         * docs/gst/tmpl/gstreamer-unused.sgml:
13178         * docs/gst/tmpl/gstxml.sgml:
13179           sync latest API changes to docs
13180
13181 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13182
13183         * gst/gstpluginfeature.c:
13184           fix doc snippet
13185         * tools/gst-inspect.c: (print_element_list):
13186           fix output of typefind
13187           add GPL header
13188         * tools/gst-launch.c:
13189           add GPL header
13190
13191 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13192
13193         * gst/elements/Makefile.am:
13194         * gst/elements/gstelements.c:
13195         * gst/elements/gsttypefindelement.c:
13196         * gst/elements/gsttypefindelement.h:
13197         * po/POTFILES.in:
13198         * po/fr.po:
13199         * po/nl.po:
13200           renamed gsttypefindelement to gsttypefind, conserving CVS history
13201
13202 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13203
13204         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
13205         * gst/gsttag.h:
13206           add some tags used in ogg as well
13207           fix _ in replaygain tags
13208
13209 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13210
13211         * gst/gsterror.h:
13212           fix wrong GST_LIBRARY_ERROR_ENCODE addition
13213
13214 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13215
13216         * gst/gstelement.c: (gst_element_error_full):
13217         * gst/gstelement.h:
13218           change _extended to _full
13219
13220 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13221
13222         reviewed by: <delete if not using a buddy>
13223
13224         * docs/gst/tmpl/gst.sgml:
13225         * docs/gst/tmpl/gstbuffer.sgml:
13226         * docs/gst/tmpl/gstclock.sgml:
13227         * docs/gst/tmpl/gstelement.sgml:
13228         * docs/gst/tmpl/gstreamer-unused.sgml:
13229         * docs/gst/tmpl/gstxml.sgml:
13230         * gst/gstelement.c: (gst_element_error_full):
13231         * gst/gstelement.h:
13232
13233 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13234
13235         * gst/gstelement.h: fix _gst_element_error_printf prototype
13236
13237 2004-01-20  David Schleef  <ds@schleef.org>
13238
13239         * gst/gststructure.c: (gst_structure_to_string):
13240         Convert function to use gst_value_serialize().
13241         * gst/gstvalue.c: (gst_value_serialize_list),
13242         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
13243         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
13244         (gst_value_serialize_int), (gst_value_serialize_double),
13245         (gst_string_wrap), (gst_value_serialize_string),
13246         (gst_value_serialize), (gst_value_deserialize):
13247         * gst/gstvalue.h:
13248         Add implementations for serialize.
13249
13250 2004-01-20  Julien MOUTTE  <julien@moutte.net>
13251
13252         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
13253         we want to keep that one in the future or change xvidenc.c to use 
13254         another error.
13255
13256 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13257
13258         * gst/gstelement.c: (_gst_element_error_printf):
13259         * gst/gstelement.h:
13260           privatise function
13261
13262 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13263
13264         * docs/random/error:
13265           doc explaining error system
13266         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
13267           cleanup
13268
13269 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13270
13271         * gst/gst-i18n-app.h:
13272         * gst/gst-i18n-lib.h:
13273           remove inclusion of config.h
13274         * po/POTFILES.in:
13275         * po/nl.po:
13276           add gst/gstelement.c
13277
13278 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13279
13280         * po/nl.po: updated Dutch translation
13281
13282 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13283
13284         * gst/gsterror.c: (_gst_core_errors_init),
13285         (_gst_library_errors_init), (_gst_resource_errors_init),
13286         (_gst_stream_errors_init):
13287         remove ending punctuation dots
13288
13289 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13290
13291         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
13292         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
13293         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13294         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13295         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13296         use GST_ERROR_SYSTEM
13297
13298 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13299
13300         * gst/gstelement.c: (gst_element_error_printf),
13301         (gst_element_error_extended):
13302         * gst/gstelement.h:
13303           add a helper printf function so we can have NULL values passed.
13304
13305 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13306
13307         * gst/gstelement.h:
13308           add G_STMT macros to gst_element_error, which isn't strictly
13309           necessary but people tell me to anyway.
13310
13311 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
13312
13313         * gst/Makefile.am:
13314         * gst/autoplug/gstspideridentity.c:
13315         (gst_spider_identity_sink_loop_type_finding):
13316         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
13317         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
13318         (gst_filesink_close_file), (gst_filesink_handle_event),
13319         (gst_filesink_chain):
13320         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
13321         (gst_filesrc_map_region), (gst_filesrc_get_read),
13322         (gst_filesrc_open_file):
13323         * gst/elements/gstidentity.c: (gst_identity_chain):
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         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
13328         * gst/gst.h:
13329         * gst/gst_private.h:
13330         * gst/gstelement.c: (gst_element_class_init),
13331         (gst_element_default_error), (gst_element_error_func),
13332         (gst_element_error_extended):
13333         * gst/gstelement.h:
13334         * gst/gsterror.c: (_gst_core_errors_init),
13335         (_gst_library_errors_init), (_gst_resource_errors_init),
13336         (_gst_stream_errors_init), (gst_error_get_message):
13337         * gst/gsterror.h:
13338         * gst/gstinfo.c: (_gst_debug_init):
13339         * gst/gstmarshal.list:
13340         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13341         (gst_pad_recover_caps_error), (gst_pad_pull):
13342         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
13343         * gst/schedulers/gstbasicscheduler.c:
13344         (gst_basic_scheduler_chainhandler_proxy),
13345         (gst_basic_scheduler_gethandler_proxy),
13346         (gst_basic_scheduler_cothreaded_chain):
13347         * po/POTFILES.in:
13348         * po/fr.po:
13349         * po/nl.po:
13350           change error signal
13351           add error categories
13352
13353 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
13354
13355         * gst/gsttag.c: (_gst_tag_initialize):
13356         * gst/gsttag.h:
13357         Add replaygain tag
13358
13359 2004-01-18  Colin Walters  <walters@verbum.org>
13360
13361         * examples/retag/retag.c: Call gst_init before processing
13362         program args.  Add g_assert to _link_many call.
13363
13364 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13365
13366         * gst/gstpad.c: (gst_pad_alloc_buffer):
13367           Return a newly allocated buffer when the pad has no peer.
13368
13369 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13370
13371         * gst/gstclock.c: (gst_clock_get_time):
13372           make it compile with gcc 2.95 again.
13373           Patch by Scott Wheeler
13374
13375 2004-01-15  David Schleef  <ds@schleef.org>
13376
13377         * gst/gstcaps.h:
13378         Added gst_caps_is_simple() macro.
13379         * testsuite/caps/caps.c: (test1):
13380         * testsuite/caps/intersect2.c: (main):
13381         * testsuite/caps/intersection.c: (main):
13382         Fixes to make 'make check' work again after removing
13383         gst_caps_is_chained().
13384
13385 2004-01-15  Leif Johnson <leif@ambient.2y.net>
13386
13387         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
13388         and additions to the MIDI document.
13389
13390 2004-01-15  David Schleef  <ds@schleef.org>
13391
13392         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
13393         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
13394         of GST_RPAD_, since we don't know if it's a real or ghost pad.
13395
13396 2004-01-15  David Schleef  <ds@schleef.org>
13397
13398         * gst/gstqueue.c:
13399         * gst/gstqueue.h:
13400         Fix the spelling of "treshold" and make min_threshold actually
13401         affect the queue.
13402
13403 2004-01-15  David Schleef  <ds@schleef.org>
13404
13405         * gst/gstcaps.c:
13406         Add lots of documentation.
13407         * gst/gstcaps.h:
13408         Deprecate a few functions.
13409         * gst/gstpad.c:
13410         Removed use of deprecated functions.
13411
13412 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13413
13414         * gst/gstpad.c: (gst_pad_is_linked):
13415         * gst/gstpad.h:
13416           implement gst_pad_is_linked
13417         * gst/gstelement.h:
13418           reserve space for initiate_state_change
13419
13420 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13421
13422         * gst/autoplug/gstspideridentity.c:
13423         (gst_spider_identity_sink_loop_type_finding):
13424           break infinite loop by just returning instead of looping
13425         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
13426           set event time difference correctly. Set it to 1 second instead
13427           of 100ms to be more tolerant
13428         * gst/gstelement.c: (gst_element_set_time):
13429           add debugging output
13430
13431 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13432
13433         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
13434           query if buffers are inside the pool, ignore events
13435
13436 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13437
13438         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
13439         (gst_clock_set_speed), (gst_clock_set_active),
13440         (gst_clock_is_active), (gst_clock_reset),
13441         (gst_clock_handle_discont):
13442         * gst/gstclock.h:
13443           deprecate old interface and disable functions that aren't in use
13444           anymore.
13445         * gst/gstelement.h:
13446         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
13447         (gst_element_set_time), (gst_element_adjust_time):
13448           add concept of "element time" and functions to get/set this time.
13449         * gst/gstelement.c: (gst_element_change_state):
13450           update element time correctly.
13451         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13452           This is a debug message, not a g_critical.
13453         * gst/gstpad.c: (gst_pad_event_default):
13454           handle discontinuous events right with element time.
13455         * gst/gstscheduler.c: (gst_scheduler_state_transition):
13456           update to clocking fixes.
13457           set clocks on elements in READY=>PAUSED. The old behaviour caused
13458           a wrong element time on the first element that started playing.
13459         * gst/schedulers/gstbasicscheduler.c:
13460         (gst_basic_scheduler_class_init):
13461         * gst/schedulers/gstoptimalscheduler.c:
13462         (gst_opt_scheduler_class_init):
13463           remove code that just implements the default behaviour.
13464         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
13465           update to use new clocking functions
13466         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
13467         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
13468           update to test new element time.
13469         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
13470           use _get_allowed_caps instead of _get_caps. This catches filtered
13471           caps correctly.
13472         * testsuite/debug/commandline.c:
13473           update for new GST_DEBUG syntax.
13474         * testsuite/threads/Makefile.am:
13475           disable a test that only works sometimes.
13476
13477 2004-01-13  Julien MOUTTE <julien@moutte.net>
13478
13479         * po/LINGUAS: Adding fr.
13480         * po/fr.po: Adding french translation.
13481
13482 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13483
13484         * gst/parse/grammar.y:
13485         * po/POTFILES.in:
13486         * po/nl.po:
13487         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
13488           translate parsing error messages
13489
13490 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13491
13492         * po/POTFILES.in: adding gst-launch
13493         * po/nl.po: updated translation, all 99 strings translated
13494         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
13495         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
13496           fix strings for translation
13497
13498 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13499
13500         * gst/gst.c:
13501           - capitalize beginnings of popt options
13502           - fix strings for translation
13503           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
13504
13505 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13506
13507         * po/README: add some notes on how to update translations
13508
13509 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13510
13511         * ABOUT-NLS: removed, is autogenerated from autopoint
13512         * autogen.sh: add autopoint stuff
13513         * configure.ac: fix up gettext stuff
13514         * gst/Makefile.am: add i18n headers to noinst_HEADERS
13515         * gst/elements/gsttypefindelement.c: add header include
13516         * gst/gettext.h: add header, copy from system-installed header
13517         * gst/gst-i18n-app.h: to be included by each app having translations
13518         * gst/gst-i18n-lib.h: to be included by each lib having translations
13519         * gst/gst.c: (init_pre): fix up gettext calls
13520         * gst/gst_private.h: remove i18n stuff, moving to separate headers
13521         * po/LINGUAS: the new way to specify translations present
13522         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
13523         * po/Makevars: the variables filled in for GStreamer
13524         * po/POTFILES.in: added new files with translations
13525         * po/de.po: has new strings
13526         * po/nl.po: readded, has new strings
13527
13528 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13529
13530         * gst/gsttag.c: fix some strings marked for translation
13531
13532 2004-01-13  Iain <iain@prettypeople.org>
13533
13534         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
13535         group when we add an element to it, cos we unref it when we remove one
13536
13537 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
13538
13539         * testsuite/debug/commandline.c: (debug_not_reached):
13540         * testsuite/debug/output.c: (check_message):
13541           fix testsuite
13542
13543 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13544
13545         * examples/cutter/.cvsignore:
13546         * examples/helloworld/.cvsignore:
13547         * examples/launch/.cvsignore:
13548         * examples/manual/.cvsignore:
13549         * examples/mixer/.cvsignore:
13550         * examples/pingpong/.cvsignore:
13551         * examples/plugins/.cvsignore:
13552         * examples/queue/.cvsignore:
13553         * examples/queue2/.cvsignore:
13554         * examples/queue3/.cvsignore:
13555         * examples/queue4/.cvsignore:
13556         * examples/retag/.cvsignore:
13557         * examples/thread/.cvsignore:
13558         * examples/typefind/.cvsignore:
13559         * examples/xml/.cvsignore:
13560         * gst/.cvsignore:
13561         * gst/autoplug/.cvsignore:
13562         * gst/elements/.cvsignore:
13563         * gst/indexers/.cvsignore:
13564         * gst/parse/.cvsignore:
13565         * gst/registries/.cvsignore:
13566         * gst/schedulers/.cvsignore:
13567         * libs/gst/bytestream/.cvsignore:
13568         * libs/gst/control/.cvsignore:
13569         * libs/gst/getbits/.cvsignore:
13570         * tests/.cvsignore:
13571         * tests/bufspeed/.cvsignore:
13572         * tests/instantiate/.cvsignore:
13573         * tests/memchunk/.cvsignore:
13574         * tests/muxing/.cvsignore:
13575         * tests/sched/.cvsignore:
13576         * tests/seeking/.cvsignore:
13577         * tests/threadstate/.cvsignore:
13578         * testsuite/.cvsignore:
13579         * testsuite/caps/.cvsignore:
13580         * testsuite/cleanup/.cvsignore:
13581         * testsuite/dynparams/.cvsignore:
13582         * testsuite/plugin/.cvsignore:
13583         * tools/.cvsignore:
13584           update - this is huge, because it includes *.bb, *.bbg and *.da files
13585           which are generated for gcov.
13586
13587 2004-01-11  David Schleef  <ds@schleef.org>
13588
13589         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
13590         a function to parse integers in ways that strto[u]l() does not.
13591
13592 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13593
13594         * tools/gst-inspect.c: (print_caps):
13595           improve output of caps a bit
13596
13597 2004-01-11  David Schleef  <ds@schleef.org>
13598
13599         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
13600         inherit correct flags (READONLY and DONTKEEP).
13601
13602 2004-01-11  David Schleef  <ds@schleef.org>
13603
13604         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
13605         (gst_filesrc_map_region):
13606         * gst/gstbuffer.c: (_gst_buffer_initialize),
13607         (_gst_buffer_sub_free), (gst_buffer_default_copy),
13608         (gst_buffer_new), (gst_buffer_create_sub),
13609         (gst_buffer_is_span_fast), (gst_buffer_span):
13610         * gst/gstbuffer.h:
13611         Change GstBuffer private structure element names. (all files)
13612         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
13613         (gst_queue_link):
13614         * gst/gstqueue.h:
13615         Implement getcaps/pad_link functions that handle the case where
13616         there are data in the queue.
13617
13618 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13619
13620         * gst/elements/gstbufferstore.c:
13621           initialize debugging structure correctly
13622         * gst/elements/gsttee.c: (gst_tee_set_property):
13623           g_object_notify when property was changed
13624         * gst/elements/gsttypefindelement.c:
13625         (gst_type_find_element_change_state):
13626           clear caps correctly
13627
13628 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13629
13630         * gst/gstqueue.c: (gst_queue_init):
13631           Use better defaults for when a queue should block. This
13632           gets rid of jerky playback for quite a few files.
13633           It takes more memory.
13634
13635 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
13636
13637         (gst_xml_registry_parse_padtemplate):
13638           make critical message slightly more useful
13639
13640 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13641
13642         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
13643         (gst_debug_message_get), (gst_debug_log_default):
13644         * gst/gstinfo.h:
13645           Change gst_debug_log(_valist) to take a const format string.
13646           Change prototype of log function and functions using those to 
13647           take a GstDebugMessage instead of a string that requires using
13648           gst_debug_message_get.
13649
13650 2004-01-08  David Schleef  <ds@schleef.org>
13651
13652         * Makefile.am:
13653         * configure.ac:
13654         Add option --enable-gcov to build GStreamer with -fprofile-arcs
13655         and -ftest-coverage, which allows gcov to show information about
13656         testsuite coverage.
13657
13658 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13659
13660         * gst/gstutils.h:
13661           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
13662           GST_PARENT_CALL_WITH_DEFAULT
13663         * gst/elements/gstaggregator.c: 
13664         * gst/elements/gstbufferstore.c: 
13665         * gst/elements/gstfakesink.c: 
13666         * gst/elements/gstfakesrc.c: 
13667         * gst/elements/gstfdsink.c: 
13668         * gst/elements/gstfdsrc.c: 
13669         * gst/elements/gstfilesink.c: 
13670         * gst/elements/gstfilesrc.c: 
13671         * gst/elements/gstidentity.c: 
13672         * gst/elements/gstmd5sink.c: 
13673         * gst/elements/gstmultidisksrc.c:
13674         * gst/elements/gstpipefilter.c: 
13675         * gst/elements/gstshaper.c:
13676         * gst/elements/gststatistics.c:
13677         * gst/elements/gsttee.c:
13678         * gst/elements/gsttypefindelement.c:
13679           use them.
13680
13681 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
13682
13683         * docs/gst/gstreamer-docs.sgml: remove props
13684         * docs/gst/gstreamer-sections.txt: remove props
13685         * docs/gst/tmpl/gst.sgml:
13686         * docs/gst/tmpl/gstbin.sgml:
13687         * docs/gst/tmpl/gstbuffer.sgml:
13688         * docs/gst/tmpl/gstcaps.sgml:
13689         * docs/gst/tmpl/gstclock.sgml:
13690         * docs/gst/tmpl/gstelement.sgml:
13691         * docs/gst/tmpl/gstindex.sgml:
13692         * docs/gst/tmpl/gstobject.sgml:
13693         * docs/gst/tmpl/gstpad.sgml:
13694         * docs/gst/tmpl/gstpadtemplate.sgml:
13695         * docs/gst/tmpl/gstreamer-unused.sgml:
13696         * docs/gst/tmpl/gstthread.sgml:
13697         * docs/gst/tmpl/gstxml.sgml:
13698           sync with code reorganization
13699
13700 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
13701
13702         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13703         Make the 'Could not find compatible pad' message more informative.
13704
13705 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13706                                                                                 
13707         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
13708           Fix for if we pass NULL as property to location.
13709         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
13710         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
13711           Fix for instantiate-test (see below).
13712         * gst/gststructure.c: (_gst_structure_parse_value):
13713           Fix compile error on gcc-2.96.
13714         * configure.ac:
13715         * tests/Makefile.am:
13716         * tests/instantiate/Makefile.am:
13717         * tests/instantiate/create.c: (create_all_elements), (main):
13718           Add a test that instantiates all elements. This makes it easy to
13719           track dead code for old API/design (like setting event functions
13720           on sink pads and so on).
13721
13722 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
13723
13724         * gst/gstcaps.c: (gst_caps_append_structure):
13725           Move the poisoning to allow a NULL structure
13726         * gst/gstevent.c: (_gst_event_free):
13727           When freeing a navigation event, free the structure
13728           also
13729
13730 2004-01-04  David Schleef  <ds@schleef.org>
13731
13732         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13733         Remove usage of gst_pad_proxy_fixate.
13734         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
13735         (gst_caps_split_one), (gst_caps_replace):
13736         Add poisoning code.
13737         * gst/gstmarshal.list:
13738         Add pointer__pointer for fixate signal
13739         * gst/gstpad.c: (gst_real_pad_class_init),
13740         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
13741         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
13742         (gst_pad_set_explicit_caps), (gst_pad_template_new):
13743         Add poisoning code. Add fixate signal on RealPad. Change
13744         set_explicit_caps() to take const GstCaps, like try_set_caps().
13745         * gst/gstpad.h:
13746         * testsuite/caps/Makefile.am:
13747         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
13748
13749 2004-01-03  David Schleef  <ds@schleef.org>
13750
13751         * gst/elements/gsttypefindelement.c:
13752         (gst_type_find_element_have_type), (gst_type_find_element_init):
13753         Use gst_pad_use_explicit_caps for src pad.
13754         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
13755         before using it.
13756
13757 2004-01-03  David Schleef  <ds@schleef.org>
13758
13759         * gst/gstelement.c: (gst_element_link_pads_filtered),
13760         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
13761         that linking was successful.
13762         * gst/gstpad.c: (gst_pad_link_free),
13763         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
13764         (gst_pad_link_try), (gst_pad_link_unnegotiate),
13765         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
13766         GstPadLinkReturn correctly between functions, and don't fail
13767         when DELAYED is used (DELAYED is very important).  Better
13768         cleanup on unlinking and unnegotiation.  Should fix some spider
13769         bugs.
13770
13771 2004-01-02  David Schleef  <ds@schleef.org>
13772
13773         * gst/gstelement.c: (gst_element_class_init),
13774         (gst_element_base_class_init): ->padtemplates should be cleared
13775         in base_init, since we need to have a fresh list for every
13776         class.  (Alternately, we chould copy the list and share the
13777         actual pad templates (not the list), but that would require
13778         changing every plugin to move pad template registration from
13779         base_init to class_init.)
13780
13781 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13782
13783         * gst/gstelement.c: (gst_element_class_add_pad_template):
13784           Refuse registering a pad template if another pad template
13785           with the same name already exists (#114715).
13786
13787 2004-01-02  David Schleef  <ds@schleef.org>
13788
13789         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
13790         (gst_caps_is_equal_fixed): Add new function.
13791         * gst/gstcaps.h: ditto.
13792         * gst/gstpad.c: (gst_real_pad_class_init),
13793         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
13794         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
13795         check new caps against existing caps -- if they're the same, return
13796         OK without renegotiating.  caps-nego-failed signal fixed so that
13797         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
13798         to save an extra caps copy.  Don't complete negotiation if a pad
13799         link function returns DELAYED.
13800
13801 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13802
13803         * gst/gstpad.c: (gst_pad_try_relink_filtered):
13804           Fix wrong g_return_if_fail
13805
13806 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
13807
13808         * gst/gstbin.c: (gst_bin_class_init):
13809         Change the marshalling of element_added/element_removed
13810         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
13811         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
13812
13813 2004-01-01  David Schleef  <ds@schleef.org>
13814
13815         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13816         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
13817         (gst_pad_use_explicit_caps):
13818         * gst/gstpad.h:
13819         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
13820         to use an internal getcaps and link fuction so that negotiation
13821         always results in the explicitly set caps.
13822         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
13823         are particularly useful for decoders.
13824
13825 2003-12-31  David Schleef  <ds@schleef.org>
13826
13827         * gst/elements/gstidentity.c: (gst_identity_class_init),
13828         (gst_identity_init), (gst_identity_chain),
13829         (gst_identity_set_property), (gst_identity_get_property):
13830         * gst/elements/gstidentity.h:
13831         * gst/gstqueue.c: (gst_queue_init):
13832           Negotiation fixes.
13833
13834 2003-12-31  David Schleef  <ds@schleef.org>
13835
13836         * gst/gstcaps.c: (gst_caps_intersect),
13837         (_gst_caps_normalize_foreach), (gst_caps_normalize):
13838           Implement gst_caps_normalize().
13839         * testsuite/caps/normalisation.c: (main):
13840           Add an additional test
13841
13842 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13843
13844         * gst/gstqueue.c: (gst_queue_init):
13845           use gst_pad_proxy_getcaps()
13846
13847 2003-12-31  David Schleef  <ds@schleef.org>
13848
13849         * gst/elements/gstshaper.c: (gst_shaper_link):
13850         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13851         * gst/gstqueue.c: (gst_queue_link):
13852           Negotiation fixes.
13853
13854 2003-12-31  David Schleef  <ds@schleef.org>
13855
13856         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
13857         * gst/gstpad.h: Add functions that are useful as default pad
13858         link and fixate functions for elements.
13859
13860 2003-12-30  David Schleef  <ds@schleef.org>
13861
13862         * gst/gstpad.c: (gst_pad_link_try):
13863           Fix segfault when attempting to return to old caps
13864
13865 2003-12-29  David Schleef  <ds@schleef.org>
13866
13867         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
13868         (gst_caps_structure_simplify), (gst_caps_simplify):
13869         * gst/gstcaps.h:
13870           Add simplify function
13871         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
13872         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
13873         * gst/gstpad.h:
13874           Copy over srcnotify, sinknotify when calling old pad_link
13875           functions.  Add new is_negotiated() function.
13876         * gst/gststructure.c: (gst_structure_copy):
13877           Fix an incredibly stupid bug that should have been noticed
13878           weeks ago.  _copy() returned the argument, not the new copy.
13879
13880 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13881
13882         * gst/gstcaps.c: (gst_caps_append):
13883           add sanity checks
13884         * gst/gstcaps.h: (gst_caps_debug):
13885           remove, it doesn't exist anymore.
13886         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
13887         (gst_element_threadsafe_properties_post_run):
13888           make debugging messages not clutter up THREAD debug category
13889         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
13890         (gst_element_change_state):
13891           update to new caps API
13892         * gst/gstinterface.c: (gst_implements_interface_cast):
13893           don't put vital code in g_return_if_fail
13894         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
13895         (gst_pad_link_filtered):
13896           add pst_pad_try_link and use it.
13897         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
13898           implement correctly, deprecate first one.
13899         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
13900           add and implement.
13901         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
13902           implement.
13903         (gst_pad_get_negotiated_caps):
13904           add and implement. Make GST_PAD_CAPS call this function.
13905         (gst_pad_get_caps):
13906           remove unneeded check..
13907         (gst_pad_recover_caps_error):
13908           disable, always return FALSE.
13909         (gst_real_pad_dispose):
13910           don't free caps and appfilter anymore, they're unused.
13911         * gst/gstpad.h:
13912           Reflect changes mentioned above.
13913         * gst/gstsystemclock.c: (gst_system_clock_wait):
13914           Make 'clock is way behind' a debugging message.
13915         * gst/gstthread.c: (gst_thread_change_state):
13916           Fix debugging message
13917
13918 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
13919
13920         * gst/gstinfo.h:
13921           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
13922         * docs/gst/tmpl/gstreamer-unused.sgml:
13923           removed all traces of cvs conflicts
13924
13925 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13926
13927         * configure.ac:
13928         * gst/schedulers/cothreads_compat.h:
13929         * libs/Makefile.am:
13930           remove last instances of wingo cothread usage
13931
13932 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13933
13934         * gst/gstplugin.c:
13935         * gst/gstversion.h.in:
13936         * gst/parse/grammar.y:
13937           change comment block from /** to /* when not gtk-doc comments
13938
13939 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13940
13941         * gst/gst.c: whitespace and doc style fixes
13942
13943 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13944
13945         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
13946
13947 2003-12-24  Colin Walters  <walters@verbum.org>
13948
13949         * gst/elements/gsttypefindelement.c:
13950           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
13951           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
13952           Don't double-free caps.
13953
13954 2003-12-23  David Schleef  <ds@schleef.org>
13955
13956         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
13957           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
13958           Many little fixes and additions of debug statements to
13959           get rhythmbox working.
13960
13961 2003-12-23  Colin Walters  <walters@verbum.org>
13962
13963         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
13964         Use GST_PAD_LINK_SUCCESSFUL.
13965
13966 2003-12-23  David Schleef  <ds@schleef.org>
13967
13968         * gst/elements/gstaggregator.c:
13969         * gst/elements/gsttee.c:
13970           Use gst_pad_proxy_getcaps().
13971         * gst/gstpad.c:
13972         * gst/gstpad.h:
13973           Add gst_pad_proxy_getcaps(), which filter elements can use
13974           as a generic getcaps implementation.
13975           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
13976           was advertised.
13977
13978 2003-12-23  David Schleef  <ds@schleef.org>
13979
13980         * gst/gstpad.c:
13981           Rearrange/rewrite much of the pad negotiation code, since it
13982           resembled pasta.  This actually changes the way some
13983           negotiation works, since the previous code was inconsistent
13984           depending on how it was invoked.  Add (internal) structure
13985           GstPadLink, which is used to hold some information (more in
13986           the future) about the link between two pads.  Fixes a number
13987           of bugs, including random lossage of filter caps when the
13988           initial negotiation is delayed.  A few functions are still
13989           unimplemented.
13990         * gst/gstpad.h:
13991           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
13992           these when testing GstPadLinkReturn values instead of comparing
13993           directly.
13994
13995 2003-12-23  David Schleef  <ds@schleef.org>
13996
13997         * gst/gstvalue.c: 
13998         * gst/gstvalue.h:
13999           Rearrange lots of code.  Change registration of compare function
14000           into registration of compare/serialize/deserialize functions.
14001           Doesn't include implementation of gst_value_[de]serialize(),
14002           but that should be easy.
14003
14004 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
14005
14006         * docs/gst/gstreamer-sections.txt:
14007         * docs/gst/tmpl/gstprops.sgml: removed
14008         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
14009           David removed props and caps code, so let's remove their docs as well.
14010           Removed all no longer existing symbols from gstreamer-sections.txt
14011           
14012 2003-12-22  Colin Walters  <walters@verbum.org>
14013
14014         * gst/gsttaginterface.c, gst/gsttaginterface.h,
14015           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
14016           of tags directly.
14017
14018 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14019
14020         * gst/elements/gstelements.c:
14021           Set ranks of elements to NONE, so the autoplugger doesn't use them.
14022         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
14023           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
14024           gst_caps (peer).
14025
14026 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14027
14028         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
14029         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
14030         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
14031         (gst_spider_identity_sink_loop_type_finding):
14032         * gst/autoplug/gstspideridentity.h:
14033           Fix autoplugging in spider element, so it works with new caps.
14034           This was mainly caused by identifying empty caps incorrectly.
14035
14036 2003-12-22  David Schleef  <ds@schleef.org>
14037
14038         * gststructure.c, gstvalue.c, gstvalue.h: Add
14039           gst_value_init_and_copy() and use it, to avoid silly mistakes in
14040           using g_value_copy()
14041
14042 2003-12-21  David Schleef  <ds@schleef.org>
14043
14044         * many, many files: Merge CAPS branch.  This includes:
14045           - implemention of GstValue and several GstValue types
14046           - implemention of GstStructure
14047           - entire rewrite of GstCaps
14048           - removal of GstProps
14049           - many changes to GstPad to compensate for new caps paradigm
14050           - removal of GstBufferpool
14051         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
14052         gstvalue.h, gst/gstcaps[2]*.[ch]:
14053           - rename gstcaps2.[ch] to gstcaps.[ch]
14054
14055 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
14056
14057         * gst/gstqueue.c: (gst_queue_handle_pending_events),
14058         (gst_queue_chain), (gst_queue_handle_src_event):
14059           implement timeout for sending events. Workaround for if the
14060           pipeline on this queue is not passing any data.
14061
14062 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
14063                                                                                 
14064         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
14065         * moved CVS to freedesktop.org