check/: I wrote a test!
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
2
3         * check/Makefile.am:
4         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
5         (test_event), (timediff), (gstevents_suite), (main):
6           I wrote a test!
7
8         * docs/design/part-seeking.txt:
9           Spelling correction
10
11         * docs/gst/tmpl/gstevent.sgml:
12         * docs/gst/tmpl/gstfakesrc.sgml:
13           Docs updates.
14
15         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
16           Treat a buffer-without-newsegment the same as a receiving 
17           a newsegment not in time format, and disable syncing to the clock
18           with a warning.
19
20         * gst/gstbus.c: (gst_bus_set_sync_handler):
21           Assert if anyone tries to replace the existing sync_handler for bus, 
22           as only the owner should be setting it.
23
24         * gst/gstevent.h:
25           Have a fixed set of custom event enums with events identified by
26           their structure name (as in 0.8), rather than a free-for-all
27           allowing collisions between enum values from different plugins.
28
29         * gst/gstpad.c: (gst_pad_class_init):
30           Docs change.
31           
32         * gst/gstqueue.c: (gst_queue_handle_sink_event):
33           Handle out-of-band downstream events from the sending thread.
34
35 2005-08-17  Andy Wingo  <wingo@pobox.com>
36
37         * gst/gstpipeline.c (gst_pipeline_change_state): Interpret
38         play-timeout==0 to mean no timeout at all. In that case, don't
39         bother with a get_state or a warning, just return directly, even
40         if it's ASYNC.
41
42         * gst/base/gstbasetransform.c: Debug changes.
43
44         * gst/gstutils.h:
45         * gst/gstutils.c (gst_bin_watch_for_state_change): Add function to
46         ensure bins post state change messages. A bit of a hack but I can't
47         think of a way to avoid it.
48
49         * check/gst/gstbin.c (test_watch_for_state_change): Added test.
50
51 2005-08-16  Andy Wingo  <wingo@pobox.com>
52
53         * gst/base/gstadapter.h:
54         * gst/base/gstadapter.c (gst_adapter_take): New function, like
55         peek() but you own the data. Not terribly efficient atm.
56
57 2005-08-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
58
59         * gst/gstutils.c: (gst_element_found_tags_for_pad), (push_and_ref),
60         (gst_element_found_tags):
61         * gst/gstutils.h:
62           Add two utility functions for tag handling.
63
64 2005-08-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
65
66         * docs/manual/advanced-dataaccess.xml:
67         * docs/manual/basics-helloworld.xml:
68           Fix docs to use _bin_add() before _link(), which fixes the examples
69           with recent core versions (reported by Madhan Raj M
70           <raj_madan@rediffmail.com>, #313199).
71
72 2005-08-16  Wim Taymans  <wim@fluendo.com>
73
74         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
75         Added subtract checks.
76
77         * docs/design/part-events.txt:
78         Some more docs about newsegment
79
80         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
81         Fix FIXME
82
83         * gst/gstcaps.c: (gst_caps_to_string):
84         Add comments, cleanups.
85         
86         * gst/gstelement.c: (gst_element_save_thyself):
87         cleanups
88         
89         * gst/gstvalue.c: (gst_value_collect_int_range),
90         (gst_string_unwrap), (gst_value_union_int_int_range),
91         (gst_value_union_int_range_int_range),
92         (gst_value_intersect_int_int_range),
93         (gst_value_intersect_int_range_int_range),
94         (gst_value_intersect_double_double_range),
95         (gst_value_intersect_double_range_double_range),
96         (gst_value_intersect_list), (gst_value_subtract_int_int_range),
97         (gst_value_subtract_int_range_int),
98         (gst_value_subtract_double_range_double),
99         (gst_value_subtract_double_range_double_range),
100         (gst_value_subtract_from_list), (gst_value_subtract_list),
101         (gst_value_can_compare), (gst_value_compare_fraction):
102         Cleanups, add comments, remove unneeded asserts.
103
104 2005-08-15  Thomas Vander Stichele  <thomas at apestaart dot org>
105
106         * tools/gst-launch.c: (event_loop):
107           don't convert NULL structures to strings
108
109 2005-08-15  Stefan Kost  <ensonic@users.sf.net>
110
111         * docs/gst/gstreamer-sections.txt:
112           made some defines private
113         * docs/gst/tmpl/gstconfig.sgml:
114         * docs/gst/tmpl/gstqueue.sgml:
115         * docs/gst/tmpl/gsttaglist.sgml:
116         * docs/gst/tmpl/gsttypes.sgml:
117         * docs/gst/tmpl/gstutils.sgml:
118         * docs/pwg/appendix-porting.xml:
119         * gst/base/gstbasesink.h:
120         * gst/base/gstbasesrc.c:
121         * gst/base/gstbasesrc.h:
122         * gst/elements/gstfakesink.c: (gst_fake_sink_class_init):
123         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init):
124         * gst/gstelement.c: (gst_element_class_init):
125         * gst/gstpad.c: (gst_pad_class_init):
126         * gst/gstqueue.c: (gst_queue_class_init):
127         * gst/gstxml.c: (gst_xml_class_init):
128           documented all undocumented signal inline
129         * libs/gst/controller/gst-controller.h:
130           added padding
131
132 2005-08-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
133
134         * docs/pwg/appendix-porting.xml:
135           Document _set_link_function -> _set_setcaps_function.
136
137 2005-08-15  Thomas Vander Stichele  <thomas at apestaart dot org>
138
139         * check/Makefile.am:
140           add a .check target for running the check
141         * check/gst-libs/controller.c: (GST_START_TEST):
142           cosmetic fixups
143         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
144           complete checks for gstbuffer; would be nice if I could get the
145           gcov stuff to work so I can see if I actually completed gstbuffer.c
146         * check/gstcheck.h:
147           add ASSERT_BUFFER_REFCOUNT
148
149 2005-08-13  Tim-Philipp Müller  <tim at centricular dot net>
150
151         * docs/gst/gstreamer-sections.txt:
152         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
153         * gst/gsttag.h:
154           Add GST_TAG_LANGUAGE_CODE as we have in 0.8, and don't
155           spew out a warning if a tag that is already registered
156           is re-registered, unless it is re-registered with a 
157           different type (#308438).
158
159 2005-08-12  Tim-Philipp Müller  <tim at centricular dot net>
160
161         * docs/pwg/appendix-porting.xml:
162         * docs/pwg/building-state.xml:
163           Add some paragraphs about state changes in 0.9 to the PWG
164           and the porting guide, in particular about the new meaning
165           of GST_STATE_PAUSED and how to write state change functions
166           with concurrent access by multiple threads in mind.
167
168 2005-08-11  Stefan Kost  <ensonic@users.sf.net>
169
170         * docs/gst/gstreamer-docs.sgml:
171         * docs/libs/gstreamer-libs-docs.sgml:
172           added deprecation and since indexes
173         * libs/gst/controller/gst-controller.c:
174         * libs/gst/controller/gst-helper.c:
175           added since tags
176
177
178 2005-08-11  Wim Taymans  <wim@fluendo.com>
179
180         * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked),
181         (gst_proxy_pad_set_target), (gst_proxy_pad_get_target),
182         (gst_proxy_pad_dispose), (gst_ghost_pad_do_activate_push),
183         (gst_ghost_pad_do_link), (gst_ghost_pad_set_internal),
184         (gst_ghost_pad_new_notarget), (gst_ghost_pad_get_target),
185         (gst_ghost_pad_set_target):
186         Actually implement (re)setting the target on a ghostpad
187         as described in the docs.
188
189 2005-08-10  Tim-Philipp Müller  <tim at centricular dot net>
190
191         * gst/gst.c: (gst_init_check_with_popt_table), (init_pre):
192           Check whether GST_DEBUG_NO_COLOR environment variable is
193           set and disable coloured debug output if that is the case.
194
195 2005-08-10  Tim-Philipp Müller  <tim at centricular dot net>
196
197         * gst/base/gsttypefindhelper.c: (helper_find_peek),
198         (gst_type_find_helper):
199           The memory returned by gst_type_find_peek() needs to
200           stay valid until the end of a typefind function, and
201           typefind functions may keep results from different 
202           offsets around, so we can't just unref the buffer from
203           the previous _peek(), but have to save all buffers 
204           returned by _peek() until typefinding is done and only
205           free them then.
206
207 2005-08-09  Tim-Philipp Müller  <tim at centricular dot net>
208
209         * docs/gst/gstreamer-sections.txt:
210         * gst/gstutils.h:
211           New macros: GST_ROUND_UP_2() through GST_ROUND_UP_64().
212
213 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
214
215         * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
216           Fix a pretty good memleak.
217
218 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
219
220         * gst/gstiterator.h:
221           Fix wrong include and 'make distcheck'.
222
223 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
224
225         * gst/gstbin.c: (bin_bus_handler):
226           Use gst_element_post_message() instead.
227
228 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
229
230         * gst/base/gstadapter.h:
231         * gst/base/gstbasesink.h:
232         * gst/base/gstbasesrc.h:
233         * gst/base/gstbasetransform.h:
234         * gst/base/gstcollectpads.h:
235         * gst/base/gstpushsrc.h:
236         * gst/gstiterator.h:
237           Add padding to our base elements' class and instance structs and
238           to GstIterator (you will need to rebuild all plugins and apps!)
239
240 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
241
242         * gst/gstbin.c: (bin_bus_handler):
243           Make default message forwarding from child->bus to bin->bus
244           threadsafe and make it not emit warnings if the parent has no bus.
245
246 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
247
248         * gst/gstelement.c: (activate_pads):
249           On paused->ready, set pad->caps to NULL, as is the documented
250           behaviour in this state change. Fixes playback of series of
251           media files when visualization is enabled in Totem.
252
253 2005-08-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
254
255         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
256           Allow NULL as filter-caps (which means "any").
257
258 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
259
260         * docs/libs/gstreamer-libs-sections.txt:
261         * libs/gst/controller/gst-controller.c:
262         * libs/gst/controller/gst-controller.h:
263         * libs/gst/controller/gst-helper.c:
264           adding more entries to the docs and fix small doc-bugs
265
266 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
267
268         * docs/gst/gstreamer-docs.sgml:
269         * docs/gst/gstreamer-sections.txt:
270         * docs/gst/gstreamer.types:
271         * docs/gst/tmpl/gstbasesink.sgml:
272         * docs/gst/tmpl/gstbasesrc.sgml:
273         * docs/gst/tmpl/gstbasetransform.sgml:
274         * docs/gst/tmpl/gstfakesrc.sgml:
275         * gst/base/gstcollectpads.c:
276         * gst/base/gstcollectpads.h:
277         * libs/gst/controller/gst-controller.c:
278         * libs/gst/controller/gst-controller.h:
279         * libs/gst/controller/gst-helper.c:
280         * libs/gst/controller/gst-interpolation.c:
281         * libs/gst/controller/lib.c:
282           added long/short desc for controller docs
283           added collectpads base class docs
284           added correct includes to base-class docs
285
286 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
287
288         * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
289         (gst_test_mono_source_set_property),
290         (gst_test_mono_source_class_init), (GST_START_TEST),
291         (gst_controller_suite):
292         * docs/gst/gstreamer-docs.sgml:
293         * docs/gst/gstreamer-sections.txt:
294         * docs/gst/gstreamer.types:
295         * docs/libs/gstreamer-libs-docs.sgml:
296         * docs/libs/gstreamer-libs-sections.txt:
297         * gst/base/gstadapter.c:
298         * libs/gst/controller/gst-controller.c:
299         (gst_controlled_property_new), (gst_controlled_property_free),
300         (gst_controller_new_valist),
301         (gst_controller_remove_properties_valist),
302         (gst_controller_sink_values), (_gst_controller_finalize):
303         * libs/gst/controller/gst-controller.h:
304         * libs/gst/controller/gst-helper.c:
305         (gst_object_control_properties), (gst_object_uncontrol_properties),
306         (gst_object_get_controller), (gst_object_set_controller),
307         (gst_object_sink_values), (gst_object_get_value_arrays),
308         (gst_object_get_value_array):
309           more tests (and fixes) for the controller
310           more docs for the controller
311           integrated companies docs for the adapter 
312
313 2005-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
314
315         * check/elements/gstfakesrc.c: (setup_fakesrc), (cleanup_fakesrc),
316         (GST_START_TEST), (fakesrc_suite):
317           add tests for sizetype
318
319 2005-08-04  Andy Wingo  <wingo@pobox.com>
320
321         * gst/elements/gstcapsfilter.c: Reimplement using basetransform,
322         fixes buffer_alloc proxying among other things.
323
324         * gst/base/gstbasetransform.c:
325         * gst/base/gstbasetransform.h:
326         Revert patch to gstbasetransform from 7-28 removing
327         delay_configure.
328
329         * gst/base/gstbasetransform.h (GstBaseTransformClass.get_size):
330         * gst/base/gstbasetransform.c (gst_base_transform_get_size):
331         Semantics changed, should return not the size of the output buffer
332         but the byte size of a buffer with a given caps.
333
334         * gst/base/gstbasetransform.c (gst_base_transform_getcaps): Better
335         debug object.
336         (gst_base_transform_configure_caps): Don't set out_size here: (in,
337         out) are not the pad caps until setcaps finishes.
338         (gst_base_transform_buffer_alloc): Proxy the buffer_alloc for the
339         not-in-place case as well. Deal with changing from in-place to
340         not-in-place within calling pad_alloc_buffer. Still a bit
341         concerned about the overhead here...
342
343 2005-08-03  Andy Wingo  <wingo@pobox.com>
344
345         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): Not
346         fixating is an error.
347
348 2005-08-04  Edward Hervey  <edward@fluendo.com>
349
350         * gst/base/gstadapter.h: 
351         Added gst_adapter_get_type() to the header
352
353 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
354
355         * check/Makefile.am:
356         * check/gst-libs/controller.c:
357         * libs/gst/controller/gst-controller.c:
358         (gst_controller_new_valist):
359           added check test suite for the controller
360         * gst/base/gstpushsrc.c:
361           fixed a doc typo
362
363 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
364
365         * docs/gst/Makefile.am:
366         * docs/gst/gstreamer-docs.sgml:
367         * docs/gst/gstreamer-sections.txt:
368         * docs/gst/gstreamer.types:
369         * docs/gst/tmpl/gstfakesrc.sgml:
370         * gst/base/README:
371         * gst/base/gstbasesink.c:
372         * gst/base/gstbasesink.h:
373         * gst/base/gstbasesrc.c:
374         * gst/base/gstbasesrc.h:
375         * gst/base/gstbasetransform.c:
376         * gst/base/gstpushsrc.c:
377         * gst/base/gstpushsrc.h:
378           add short/long description docs to base classes
379           add pushsrc to the docs
380           remove consolidated doc fragments
381
382 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
383
384         * configure.ac:
385         * docs/libs/Makefile.am:
386         * docs/libs/gstreamer-libs-docs.sgml:
387         * docs/libs/gstreamer-libs-sections.txt:
388         * docs/libs/gstreamer-libs.types:
389         * examples/Makefile.am:
390         * examples/controller/.cvsignore:
391         * examples/controller/Makefile.am:
392         * examples/controller/audio-example.c: (main):
393         * libs/gst/Makefile.am:
394         * libs/gst/controller/.cvsignore:
395         * libs/gst/controller/Makefile.am:
396         * libs/gst/controller/gst-controller.c:
397         (on_object_controlled_property_changed), (gst_timed_value_compare),
398         (gst_timed_value_find),
399         (gst_controlled_property_set_interpolation_mode),
400         (gst_controlled_property_new), (gst_controlled_property_free),
401         (gst_controller_find_controlled_property),
402         (gst_controller_new_valist), (gst_controller_new),
403         (gst_controller_remove_properties_valist),
404         (gst_controller_remove_properties), (gst_controller_set),
405         (gst_controller_set_from_list), (gst_controller_unset),
406         (gst_controller_get), (gst_controller_get_all),
407         (gst_controller_sink_values), (gst_controller_get_value_arrays),
408         (gst_controller_get_value_array),
409         (gst_controller_set_interpolation_mode),
410         (_gst_controller_finalize), (_gst_controller_init),
411         (_gst_controller_class_init), (gst_controller_get_type):
412         * libs/gst/controller/gst-controller.h:
413         * libs/gst/controller/gst-helper.c: (g_object_control_properties),
414         (g_object_uncontrol_properties), (g_object_get_controller),
415         (g_object_set_controller), (g_object_sink_values),
416         (g_object_get_value_arrays), (g_object_get_value_array):
417         * libs/gst/controller/gst-interpolation.c:
418         (gst_controlled_property_find_timed_value_node),
419         (interpolate_none_get), (interpolate_trigger_get),
420         (interpolate_trigger_get_value_array):
421         * libs/gst/controller/lib.c: (gst_controller_init):
422         * pkgconfig/Makefile.am:
423         * pkgconfig/gstreamer-control-uninstalled.pc.in:
424         * pkgconfig/gstreamer-control.pc.in:
425         * testsuite/Makefile.am:
426         * testsuite/controller/.cvsignore:
427         * testsuite/controller/Makefile.am:
428         * testsuite/controller/interpolator.c: (main):
429           added controller code
430           removed dparam pc files
431
432 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
433         * gst/base/gstcollectpads.c: (gst_collectpads_finalize),
434         (gst_collectpads_stop):
435           Broadcast the condition when shutting down, to make sure we wake all
436           threads up. Shut down pads on finalize, for safety.
437
438 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
439         * gst/base/gstbasetransform.c: (gst_base_transform_init),
440         (gst_base_transform_handle_buffer),
441         (gst_base_transform_change_state):
442           Handle PAUSED->READY->PAUSED transition after negotiation
443           occurred already.
444         * gst/gstmessage.c: (gst_message_init):
445           Extra piece of debug for new messages.
446
447 2005-08-01  Stefan Kost  <ensonic@users.sf.net>
448
449         * configure.ac:
450         * docs/gst/tmpl/gstbasesrc.sgml:
451         * docs/gst/tmpl/gstelement.sgml:
452         * docs/gst/tmpl/gstevent.sgml:
453         * docs/gst/tmpl/gstfakesrc.sgml:
454         * docs/gst/tmpl/gstformat.sgml:
455         * docs/gst/tmpl/gstghostpad.sgml:
456         * docs/gst/tmpl/gstpad.sgml:
457         * docs/gst/tmpl/gstquery.sgml:
458         * docs/gst/tmpl/gststructure.sgml:
459         * docs/gst/tmpl/gsttaglist.sgml:
460         * docs/gst/tmpl/gstvalue.sgml:
461         * docs/libs/gstreamer-libs-docs.sgml:
462         * docs/libs/gstreamer-libs-sections.txt:
463         * docs/libs/gstreamer-libs.types:
464         * libs/gst/Makefile.am:
465         * libs/gst/control/.cvsignore:
466         * libs/gst/control/Makefile.am:
467         * libs/gst/control/control.c:
468         * libs/gst/control/control.h:
469         * libs/gst/control/dparam.c:
470         * libs/gst/control/dparam.h:
471         * libs/gst/control/dparam_smooth.c:
472         * libs/gst/control/dparam_smooth.h:
473         * libs/gst/control/dparamcommon.h:
474         * libs/gst/control/dparammanager.c:
475         * libs/gst/control/dparammanager.h:
476         * libs/gst/control/dplinearinterp.c:
477         * libs/gst/control/dplinearinterp.h:
478         * libs/gst/control/unitconvert.c:
479         * libs/gst/control/unitconvert.h:
480         * testsuite/Makefile.am:
481         * testsuite/dynparams/.cvsignore:
482         * testsuite/dynparams/Makefile.am:
483         * testsuite/dynparams/dparamstest.c:
484         * tools/Makefile.am:
485         * tools/gst-inspect.c: (print_element_info), (main):
486         * tools/gst-xmlinspect.c: (print_element_info), (main):
487           deactivate and remove dparams (libgstcontrol)
488
489 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
490
491         * gst/elements/gsttypefindelement.c:
492         (gst_type_find_element_have_type), (gst_type_find_element_init),
493         (stop_typefinding), (gst_type_find_element_handle_event),
494         (gst_type_find_element_chain), (gst_type_find_element_getrange):
495         * gst/elements/gsttypefindelement.h:
496           Set caps on all outgoing buffers, not just the first one.
497
498 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
499
500         * gst/elements/gsttypefindelement.c:
501         (gst_type_find_element_have_type),
502         (gst_type_find_element_check_set_buffer_caps),
503         (gst_type_find_element_init), (stop_typefinding),
504         (gst_type_find_element_handle_event),
505         (gst_type_find_element_chain), (gst_type_find_element_getrange):
506         * gst/elements/gsttypefindelement.h:
507           Set caps on first outgoing buffer when we've found the type.
508
509 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
510
511         * docs/gst/gstreamer-docs.sgml:
512         * docs/gst/gstreamer-sections.txt:
513         * docs/gst/tmpl/gstscheduler.sgml:
514         * docs/gst/tmpl/gstschedulerfactory.sgml:
515           Remove some old cruft from docs.
516
517 2005-07-31  Tim-Philipp Müller  <tim at centricular dot net>
518
519         * gst/gstpad.h:
520           Fix inline docs for GstPadLinkReturn.
521           
522         * gst/gststructure.c: (gst_structure_has_name):
523         * gst/gststructure.h:
524         * docs/gst/gstreamer-sections.txt:
525           New API: gst_structure_has_name().
526
527 2005-07-30  Tim-Philipp Müller  <tim at centricular dot net>
528
529         * configure.ac:
530           Use AC_SYS_LARGEFILE, which will set _FILE_OFFSET_BITS=64
531           and _LARGEFILE_SOURCE in config.h as required. Do not 
532           export those flags in our .pc files any longer (#142209).
533
534           Remove unused GST_DISABLE_OMEGA_COTHREADS stuff.
535
536         * gst/elements/gstfilesink.c: (gst_file_sink_class_init),
537         (gst_file_sink_do_seek), (gst_file_sink_event),
538         (gst_file_sink_get_current_offset), (gst_file_sink_render):
539           Redo seek/tell calls with large file support in mind; add some
540           debugging messages; add log message that tells us when large
541           file support is unavailable or not enabled for some reason.
542
543         * gst/elements/gstfilesrc.c: (gst_file_src_class_init):
544           Add log message that tells us when large file support 
545           is unavailable or not enabled for some reason.
546
547 2005-07-29  Wim Taymans  <wim@fluendo.com>
548
549         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
550         Added test for removing an element with ghostpad from a bin.
551         Fixed test as current implementation does the right thing.
552
553         * gst/gstghostpad.c: (gst_proxy_pad_class_init),
554         (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
555         (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
556         (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
557         (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
558         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
559         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
560         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
561         (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
562         (gst_proxy_pad_get_target), (gst_proxy_pad_init),
563         (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
564         (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
565         (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
566         (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
567         (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
568         (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
569         * gst/gstghostpad.h:
570         Clean up ghostpads, remove properties for internal stuff.
571         Make threadsafe.
572         Fix refcounting.
573         Prepare for switching targets, not all use cases work yet.
574
575 2005-07-29  Wim Taymans  <wim@fluendo.com>
576
577         * docs/design/part-gstghostpad.txt:
578         Small update.
579
580         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
581         (gst_bin_remove_func):
582         Unlinking pads while holding the bin LOCK is not a good
583         idea.
584
585         * gst/gstpad.c: (gst_pad_class_init),
586         (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
587         (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
588         No prob setting template after creating the pad.
589
590 2005-07-29  Jan Schmidt  <thaytan@mad.scientist.com>
591
592         * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
593         (gst_bus_peek), (gst_bus_source_dispatch),
594         (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
595         (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
596           gst_bus_poll may be called from other threads. Handle
597           this nicely by not making poll_data disappear off the
598           stack once gst_bus_poll returns.
599           gst_bus_peek now increments the refcount on the returned
600           message.
601
602 2005-07-29  Wim Taymans  <wim@fluendo.com>
603
604         * docs/design/part-gstghostpad.txt:
605         Overview of current GhostPad datastructures and use
606         cases for changing the target.
607
608 2005-07-28  Wim Taymans  <wim@fluendo.com>
609
610         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
611         Added checks for hierarchy consistency whan adding linked
612         elements to bins.
613
614         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
615         Added check to test element scheduling without bin/pipeline.
616
617         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
618         First add elements to bin, then link.
619         
620         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
621         (gst_bin_remove_func):
622         Unlink pads from elements added/removed from bin to maintain
623         hierarchy consistency.
624
625 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
626
627         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
628         (gst_base_transform_handle_buffer):
629         * gst/base/gstbasetransform.h:
630           Remove broken delay_configure (fixes renegotiation of software
631           scaling pipelines); remove some leftover printf()s.
632
633 2005-07-28  Wim Taymans  <wim@fluendo.com>
634
635         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
636         Added some more tests for wrong hierarchy
637
638         * docs/design/part-overview.txt:
639         Some updates.
640
641         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
642         Cleanups.
643
644         * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
645         (gst_element_dispose):
646         Some more cleanups.
647
648         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
649         (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
650         (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
651         (gst_pad_set_caps), (gst_pad_send_event):
652         Check for correct hierarchy when linking pads. Moving to
653         strict requirement for ghostpads when linking elements in
654         different bins.
655
656         * gst/gstpad.h:
657         Clean ups. Added WRONG_HIERARCHY return value.
658
659 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
660
661         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
662           Better debug if no transform is possible.
663
664 2005-07-27  Wim Taymans  <wim@fluendo.com>
665
666         * docs/random/wtay/network-transp:
667         Some old doc I had.
668
669 2005-07-27  Wim Taymans  <wim@fluendo.com>
670
671         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
672         (gst_dp_event_from_packet):
673         Fix serialization of seek events.
674
675 2005-07-27  Wim Taymans  <wim@fluendo.com>
676
677         * check/gst-libs/gdp.c: (GST_START_TEST):
678         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
679         Fix compilation and fix event serialization.
680
681 2005-07-27  Wim Taymans  <wim@fluendo.com>
682
683         * CHANGES-0.9:
684         * docs/design/part-TODO.txt:
685         * docs/design/part-events.txt:
686         Some docs updates
687
688         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
689         (gst_base_sink_event), (gst_base_sink_do_sync),
690         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
691         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
692         (gst_base_src_do_seek), (gst_base_src_event_handler),
693         (gst_base_src_loop):
694         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
695         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
696         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
697         (gst_base_transform_event), (gst_base_transform_handle_buffer),
698         (gst_base_transform_set_passthrough),
699         (gst_base_transform_is_passthrough):
700         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
701         * gst/elements/gstfilesink.c: (gst_file_sink_event):
702         Event updates.
703
704         * gst/gstbuffer.h:
705         Use faster casts.
706
707         * gst/gstelement.c: (gst_element_seek):
708         * gst/gstelement.h:
709         Update gst_element_seek.
710
711         * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
712         (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
713         (gst_event_new_flush_start), (gst_event_new_flush_stop),
714         (gst_event_new_eos), (gst_event_new_newsegment),
715         (gst_event_parse_newsegment), (gst_event_new_tag),
716         (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
717         (gst_event_parse_qos), (gst_event_new_seek),
718         (gst_event_parse_seek), (gst_event_new_navigation):
719         * gst/gstevent.h:
720         Make GstEvent use GstStructure. Add parsing code, make sure the
721         API is sufficiently generic.
722         Mark possible directions of events and serialization.
723
724         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
725         (_gst_message_copy), (gst_message_new_segment_start),
726         (gst_message_new_segment_done), (gst_message_new_custom),
727         (gst_message_parse_segment_start),
728         (gst_message_parse_segment_done):
729         Small cleanups.
730
731         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
732         (gst_pad_set_caps), (gst_pad_send_event):
733         Update for new events. 
734         Catch events sent in wrong directions.
735
736         * gst/gstqueue.c: (gst_queue_link_src),
737         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
738         (gst_queue_handle_src_query):
739         Event updates.
740
741         * gst/gsttag.c:
742         * gst/gsttag.h:
743         Remove event code from this file.
744
745         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
746         (gst_dp_event_from_packet):
747         Event updates.
748
749 2005-07-27  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
750
751         * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
752         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
753         (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
754           Make debugging actually useful.
755
756 2005-07-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
757
758         * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
759         (gst_pad_fixate_caps):
760           Implement default fixation once again, so that gst_pad_fixate()
761           actually does anything at all. This probably needs to be some
762           sort of a last resort, and use profile-based fixation first, but
763           since that doesn't exist yet, this is the best we have. Fixes
764           visualization in Totem.
765
766 2005-07-22  Wim Taymans  <wim@fluendo.com>
767
768         * docs/design/part-events.txt:
769         Small update.
770
771         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
772         (gst_base_sink_do_sync), (gst_base_sink_activate_push),
773         (gst_base_sink_activate_pull):
774         Some more comments.
775
776         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
777         (gst_fake_src_create):
778         Fix handoff marshall.
779
780         * gst/elements/gstidentity.c: (gst_identity_class_init),
781         (gst_identity_transform_ip):
782         We're a real inplace element.
783
784         * gst/gstbus.c: (gst_bus_post):
785         Added some comments.
786
787         * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
788         * tests/muxing/case1.c: (main):
789         * tests/sched/dynamic-pipeline.c: (main):
790         * tests/sched/interrupt1.c: (main):
791         * tests/sched/interrupt2.c: (main):
792         * tests/sched/interrupt3.c: (main):
793         * tests/sched/runxml.c: (main):
794         * tests/sched/sched-stress.c: (main):
795         * tests/seeking/seeking1.c: (event_received), (main):
796         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
797         (main):
798         * tests/threadstate/threadstate3.c: (main):
799         * tests/threadstate/threadstate4.c: (main):
800         * tests/threadstate/threadstate5.c: (main):
801         Fix the tests.
802
803 2005-07-21  Wim Taymans  <wim@fluendo.com>
804
805         * docs/design/part-seeking.txt:
806         Some small additions.
807
808         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
809         (gst_base_sink_get_times), (gst_base_sink_do_sync),
810         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
811         * gst/base/gstbasesink.h:
812         discont values are gint64, handle the math correctly.
813
814         * gst/base/gstbasesrc.c: (gst_base_src_loop):
815         Make the basesrc report error if the source pad is not linked.
816
817         * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
818         (gst_queue_loop), (gst_queue_handle_src_query),
819         (gst_queue_src_activate_push):
820         Make queue collect data even if the srcpad is not linked.
821         Start pushing out data as soon as it is linked.
822
823         * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
824         * gst/gstutils.h:
825         Added gst_flow_get_name() to ease error reporting.
826
827 2005-07-20  Wim Taymans  <wim@fluendo.com>
828
829         * gst/gstmessage.c: (gst_message_new_segment_start),
830         (gst_message_new_segment_done), (gst_message_parse_segment_start),
831         (gst_message_parse_segment_done):
832         * gst/gstmessage.h:
833         Added a bunch of messages for advanced seeking.
834
835         * gst/parse/grammar.y:
836         * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
837         (gst_dpman_state_changed):
838         Fix some new-pad -> pad-added signals
839
840 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
841
842         * docs/manual/appendix-porting.xml:
843         * docs/pwg/appendix-porting.xml:
844           Document new-pad/state-change signal renames and the FixedList
845           type rename.
846
847 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
848
849         * docs/manual/advanced-autoplugging.xml:
850         * docs/manual/basics-helloworld.xml:
851         * docs/manual/basics-pads.xml:
852         * docs/random/ds/0.9-suggested-changes:
853         * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
854         * gst/gstelement.h:
855         * gst/gstevent.h:
856         * gst/gstformat.h:
857         * gst/gstquery.h:
858         * gst/gststructure.c: (gst_structure_value_get_generic_type),
859         (gst_structure_parse_array), (gst_structure_parse_value):
860         * gst/gstvalue.c: (gst_type_is_fixed),
861         (gst_value_list_prepend_value), (gst_value_list_append_value),
862         (gst_value_list_get_size), (gst_value_list_get_value),
863         (gst_value_transform_array_string), (gst_value_serialize_array),
864         (gst_value_deserialize_array), (gst_value_intersect_array),
865         (gst_value_is_fixed), (_gst_value_initialize):
866         * gst/gstvalue.h:
867           GstElement::new-pad -> pad-added, GstElement::state-change ->
868           state-changed, GstValueFixedList -> GstValueArray, add format and
869           flags as their own arguments in gst_element_seek() (should improve
870           "bindeability"), remove function generators since they don't work
871           under a whole bunch of compilers (they were deprecated already
872           anyway).
873
874 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
875
876         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
877         (_gst_debug_register_funcptr):
878         * gst/gstinfo.h:
879           Fix illegal cast on some platforms (#309253).
880
881 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
882
883         * gst/gstmessage.c: (gst_message_new_custom):
884         * gst/gstmessage.h:
885           Add _new_custom, make _new_application a macro to _new_custom.
886
887 2005-07-20  Wim Taymans  <wim@fluendo.com>
888
889         * gst/base/gstbasesrc.c: (gst_base_src_init),
890         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
891         * gst/base/gstbasesrc.h:
892         Add a gboolean to decide when to push out a discont.
893
894         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
895         (gst_queue_loop), (gst_queue_handle_src_query),
896         (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
897         (gst_queue_set_property), (gst_queue_get_property):
898         Some cleanups.
899
900         * tests/threadstate/threadstate1.c: (main):
901         Make a thread test compile and run... very silly..
902
903
904 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
905
906         * docs/manual/appendix-porting.xml:
907           Mention removal of libgstgconf-0.9.la and existence of gconf
908           elements.
909
910 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
911
912         * docs/pwg/advanced-clock.xml:
913         * docs/pwg/appendix-porting.xml:
914         * docs/pwg/intro-preface.xml:
915         * docs/pwg/other-base.xml:
916         * docs/pwg/other-manager.xml:
917         * docs/pwg/other-nton.xml:
918         * docs/pwg/other-ntoone.xml:
919         * docs/pwg/other-oneton.xml:
920         * docs/pwg/pwg.xml:
921           Document base classes, update sections of n-to-1 and 1-to-n (muxer,
922           demuxer), remove n-to-n (was never written), fix some code examples
923           and links and update the porting section to include all this.
924
925 2005-07-19  Wim Taymans  <wim@fluendo.com>
926
927         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
928         (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
929         (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
930         (gst_queue_src_activate_push), (gst_queue_change_state),
931         (gst_queue_get_property):
932         * gst/gstqueue.h:
933         Propagate GstFlowReturn more intelligently upstream and output
934         an ERROR/EOS when streaming stopped due to fatal error.
935
936 2005-07-19  Wim Taymans  <wim@fluendo.com>
937
938         * tools/gst-launch.c: (check_intr), (event_loop), (main):
939         Don't block forever for the state change to complete, the
940         pipeline already did with a sensible timeout.
941
942 2005-07-19  Wim Taymans  <wim@fluendo.com>
943
944         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
945         Make sure we never call the create function is we
946         got deactivated.
947
948 2005-07-19  Andy Wingo  <wingo@pobox.com>
949
950         * gst/parse/parse.l: Attempt to solve bug #172815.
951
952 2005-07-19  Wim Taymans  <wim@fluendo.com>
953
954         * docs/design/part-clocks.txt:
955         * docs/design/part-events.txt:
956         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
957         Small docs updates.
958         Only update the seeking values when we are not
959         busy streaming.
960
961 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
962
963         * gst/base/gstbasesrc.c: (gst_base_src_loop):
964           Oops, ignore the result of gst_pad_push_event here.
965
966 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
967
968         * gst/base/gstbasesrc.c: (gst_base_src_loop),
969         (gst_base_src_activate_push):
970           Send discont event from the loop function, as pads
971           aren't activated yet in the activate_push handler.
972
973         * gst/gstbin.c: (bin_bus_handler):
974           Don't leak element name.
975
976 2005-07-18  Andy Wingo  <wingo@pobox.com>
977
978         * configure.ac: Use AS_LIBTOOL_TAGS.
979
980 2005-07-18  Wim Taymans  <wim@fluendo.com>
981
982         * docs/gst/gstreamer.types:
983         Remove deleted types.
984
985 2005-07-18  Wim Taymans  <wim@fluendo.com>
986
987         * check/elements/gstfakesrc.c: (GST_START_TEST):
988         * configure.ac:
989         * gst/Makefile.am:
990         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
991         (init_popt_callback):
992         * gst/gst.h:
993         * gst/gst_private.h:
994         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
995         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
996         * gst/gstbin.h:
997         * gst/gstbus.h:
998         * gst/gstconfig.h.in:
999         * gst/gstelement.c: (gst_element_class_init),
1000         (gst_element_set_base_time), (gst_element_get_base_time),
1001         (iterator_fold_with_resync), (gst_element_change_state),
1002         (gst_element_dispose), (gst_element_get_bus):
1003         * gst/gstelement.h:
1004         * gst/gstelementfactory.h:
1005         * gst/gsterror.c: (_gst_core_errors_init):
1006         * gst/gsterror.h:
1007         * gst/gstevent.h:
1008         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
1009         * gst/gstindex.c:
1010         * gst/gstinfo.c: (_gst_debug_init):
1011         * gst/gstmessage.c: (_gst_message_copy):
1012         * gst/gstmessage.h:
1013         * gst/gstminiobject.h:
1014         * gst/gstobject.c:
1015         * gst/gstobject.h:
1016         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
1017         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
1018         * gst/gstpad.h:
1019         * gst/gstparse.h:
1020         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
1021         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
1022         (gst_pipeline_get_last_stream_time):
1023         * gst/gstpipeline.h:
1024         * gst/gstpluginfeature.h:
1025         * gst/gstquery.h:
1026         * gst/gstscheduler.c:
1027         * gst/gstscheduler.h:
1028         * gst/gststructure.h:
1029         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
1030         (gst_task_finalize), (gst_task_func), (gst_task_create),
1031         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
1032         (gst_task_stop), (gst_task_pause):
1033         * gst/gsttask.h:
1034         * gst/gsttypefind.h:
1035         * gst/gsttypes.h:
1036         * gst/registries/gstlibxmlregistry.c: (load_feature),
1037         (gst_xml_registry_load), (gst_xml_registry_save_feature):
1038         * gst/registries/gstxmlregistry.c:
1039         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
1040         * gst/schedulers/threadscheduler.c:
1041         * libs/gst/control/dparammanager.h:
1042         * tools/gst-inspect.c: (print_element_list),
1043         (print_plugin_features), (print_element_features):
1044         * tools/gst-xmlinspect.c: (print_element_list),
1045         (print_plugin_info), (main):
1046         Removed plugable schedulers.
1047         Removed Scheduler/Manager from elements.
1048         Removed gsttypes.h, rearranged includes.
1049         Removed dependency pad<->element, element<>pipeline, and
1050         various others,  fix includes.
1051         implement gst_pad_get_parent() with gst_object_get_parent()
1052         Make GstTask sefcontained.
1053         Fix _get_state() on GstBin, it did not return ASYNC with a 0
1054         timeout.
1055         Fix endless loop in iterator_fold_with_resync.
1056
1057
1058 2005-07-18  Wim Taymans  <wim@fluendo.com>
1059
1060         * gst/Makefile.am:
1061         * gst/gstarch.h:
1062         Remove old file.
1063
1064 2005-07-18  Wim Taymans  <wim@fluendo.com>
1065
1066         * gst/Makefile.am:
1067         No more cothreads.h
1068
1069 2005-07-18  Wim Taymans  <wim@fluendo.com>
1070
1071         * gst/cothreads.c:
1072         * gst/cothreads.h:
1073         Let's remove these.
1074
1075 2005-07-18  Wim Taymans  <wim@fluendo.com>
1076
1077         * docs/design/part-dynamic.txt:
1078         * docs/design/part-events.txt:
1079         * docs/design/part-seeking.txt:
1080         Some more docs in the works.
1081
1082         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
1083         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
1084         (gst_base_transform_setcaps), (gst_base_transform_get_size),
1085         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
1086         (gst_base_transform_handle_buffer),
1087         (gst_base_transform_sink_activate_push),
1088         (gst_base_transform_src_activate_pull),
1089         (gst_base_transform_set_passthrough),
1090         (gst_base_transform_is_passthrough):
1091         Refcounting fixes.
1092
1093         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
1094         Cleanups.
1095
1096         * gst/gstevent.c: (gst_event_finalize):
1097         Set SRC to NULL.
1098
1099         * gst/gstutils.c: (gst_element_unlink),
1100         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
1101         (gst_pad_proxy_setcaps):
1102         * gst/gstutils.h:
1103         Add _get_parent_element() to get a pads parent as an element.
1104
1105 2005-07-18  Wim Taymans  <wim@fluendo.com>
1106
1107         * check/gst/gstbin.c: (GST_START_TEST):
1108         Remove bogus test.
1109
1110 2005-07-18  Wim Taymans  <wim@fluendo.com>
1111
1112         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
1113         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
1114         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
1115         (gst_base_sink_event), (gst_base_sink_do_sync),
1116         (gst_base_sink_chain), (gst_base_sink_loop),
1117         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
1118         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
1119         Refcounting fixes.
1120         Fix logic for returning ASYNC when not prerolled.
1121
1122 2005-07-18  Wim Taymans  <wim@fluendo.com>
1123
1124         * gst/gstqueue.c: (gst_queue_handle_sink_event):
1125         Fix nasty refcount bug.
1126
1127 2005-07-16 Philippe Khalaf <burger@speedy.org>
1128         * gst/elements/gstfdsrc.c:
1129         * gst/elements/gstfdsrc.h:
1130         * gst/elements/gstelements.c:
1131         * gst/elements/Makefile.am:
1132         Ported fdsrc to 0.9.
1133
1134 2005-07-16  Wim Taymans  <wim@fluendo.com>
1135
1136         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1137         (gst_base_sink_do_sync):
1138         Fix compile error.
1139
1140 2005-07-16  Wim Taymans  <wim@fluendo.com>
1141
1142         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1143         (gst_base_sink_event), (gst_base_sink_get_times),
1144         (gst_base_sink_do_sync), (gst_base_sink_change_state):
1145         * gst/base/gstbasesink.h:
1146         Store and use discont values when syncing buffers as described
1147         in design docs.
1148         
1149         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
1150         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
1151         (gst_base_src_activate_push):
1152         Push discont event when starting.
1153
1154         * gst/elements/gstidentity.c: (gst_identity_transform):
1155         Small cleanups.
1156
1157         * gst/gstbin.c: (gst_bin_change_state):
1158         Small cleanups in base_time  distribution.
1159
1160         * gst/gstelement.c: (gst_element_set_base_time),
1161         (gst_element_get_base_time), (gst_element_change_state):
1162         * gst/gstelement.h:
1163         Added methods for the base_time of the element.
1164         Some MT fixes.
1165
1166         * gst/gstpipeline.c: (gst_pipeline_send_event),
1167         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
1168         (gst_pipeline_get_last_stream_time):
1169         * gst/gstpipeline.h:
1170         MT fixes.
1171         Handle seeking as described in design doc, remove stream_time
1172         hack.
1173         Cleanups clock and stream_time selection code. Added accessors
1174         for the stream_time.
1175         
1176
1177 2005-07-16  Andy Wingo  <wingo@pobox.com>
1178
1179         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
1180         (#305291).
1181
1182 2005-07-16  Wim Taymans  <wim@fluendo.com>
1183
1184         * check/gst/gstbin.c: (GST_START_TEST):
1185         Make elements silent as the deep_notify refs the
1186         parent, which might make the test fail.
1187
1188         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
1189         Don't hold the lock for too long.
1190
1191 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
1192
1193         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
1194           Don't unref the caps we passed to gst_caps_make_writable() after
1195           passing them. gst_caps_make_writable() will do that for us.
1196
1197 2005-07-15  Andy Wingo  <wingo@pobox.com>
1198
1199         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
1200         (#157311).
1201
1202         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
1203         own marshalling function for the handoff signal. Properly type the
1204         buffer as a buffer. Fixes some warnings. Should do a more general
1205         solution.
1206         (gst_identity_class_init): Plug into the right marshaller.
1207
1208 2005-07-15  Wim Taymans  <wim@fluendo.com>
1209
1210         * docs/design/part-TODO.txt:
1211         * docs/design/part-clocks.txt:
1212         * docs/design/part-element-sink.txt:
1213         * docs/design/part-events.txt:
1214         * docs/design/part-gstpipeline.txt:
1215         Updated docs, mostly DISCONT related.
1216
1217 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
1218
1219         * docs/pwg/building-pads.xml:
1220           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
1221
1222 2005-07-15  Andy Wingo  <wingo@pobox.com>
1223
1224         * tools/gst-typefind.c: Update, add copyright block.
1225
1226         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
1227         Normalize and truncate caps before fixation.
1228
1229         * gst/gstcaps.h:
1230         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
1231         discards all but the first structure from its argument.
1232
1233 2005-07-15  Wim Taymans  <wim@fluendo.com>
1234
1235         * gst/base/gstbasetransform.c: (gst_base_transform_init),
1236         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
1237         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
1238         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
1239         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
1240         (gst_base_transform_chain), (gst_base_transform_change_state),
1241         (gst_base_transform_set_passthrough),
1242         (gst_base_transform_is_passthrough):
1243         * gst/base/gstbasetransform.h:
1244         Make passthrough work using the bufferpools.
1245         Changed API a bit, subclasses have to write into a buffer
1246         provided by the base class.
1247         More debug info in nego functions.
1248         
1249         * gst/elements/gstidentity.c: (gst_identity_init),
1250         (gst_identity_transform):
1251         Port to new base class.
1252
1253 2005-07-15  Wim Taymans  <wim@fluendo.com>
1254
1255         * gst/gstmessage.c: (gst_message_new_state_changed):
1256         * tools/gst-launch.c: (event_loop), (main):
1257         Totally dump messages in -launch with the -m option.
1258         Fix message name for State messages,
1259
1260 2005-07-14  Wim Taymans  <wim@fluendo.com>
1261
1262         * gst/base/gstbasesrc.c: (gst_base_src_loop):
1263         Post error messages on errors.
1264
1265 2005-07-14  Wim Taymans  <wim@fluendo.com>
1266
1267         * gst/gstcaps.c: (gst_caps_do_simplify):
1268         Remove debug info.
1269
1270         * gst/gsterror.h:
1271         Define error for stream stopped.
1272
1273         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1274         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
1275         Do proper return values.
1276
1277         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
1278         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
1279         (gst_pad_get_range):
1280         Better return values.
1281
1282         * gst/gstpad.h:
1283         Reorganise return values, add macro to check for fatal errors.
1284
1285         * gst/gstqueue.c: (gst_queue_chain):
1286         Return proper GstFlowReturn values,
1287
1288 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
1289
1290         * docs/gst/gstreamer-sections.txt:
1291         * docs/gst/gstreamer.types:
1292         * docs/gst/tmpl/gst.sgml:
1293         * docs/gst/tmpl/gstbasesink.sgml:
1294         * docs/gst/tmpl/gstbasesrc.sgml:
1295         * docs/gst/tmpl/gstbasetransform.sgml:
1296         * docs/gst/tmpl/gstbin.sgml:
1297         * docs/gst/tmpl/gstbuffer.sgml:
1298         * docs/gst/tmpl/gstcaps.sgml:
1299         * docs/gst/tmpl/gstclock.sgml:
1300         * docs/gst/tmpl/gstcompat.sgml:
1301         * docs/gst/tmpl/gstconfig.sgml:
1302         * docs/gst/tmpl/gstelement.sgml:
1303         * docs/gst/tmpl/gstelementdetails.sgml:
1304         * docs/gst/tmpl/gstelementfactory.sgml:
1305         * docs/gst/tmpl/gstenumtypes.sgml:
1306         * docs/gst/tmpl/gsterror.sgml:
1307         * docs/gst/tmpl/gstevent.sgml:
1308         * docs/gst/tmpl/gstfakesink.sgml:
1309         * docs/gst/tmpl/gstfakesrc.sgml:
1310         * docs/gst/tmpl/gstfilesink.sgml:
1311         * docs/gst/tmpl/gstfilesrc.sgml:
1312         * docs/gst/tmpl/gstfilter.sgml:
1313         * docs/gst/tmpl/gstformat.sgml:
1314         * docs/gst/tmpl/gstghostpad.sgml:
1315         * docs/gst/tmpl/gstimplementsinterface.sgml:
1316         * docs/gst/tmpl/gstindex.sgml:
1317         * docs/gst/tmpl/gstindexfactory.sgml:
1318         * docs/gst/tmpl/gstinfo.sgml:
1319         * docs/gst/tmpl/gstiterator.sgml:
1320         * docs/gst/tmpl/gstmacros.sgml:
1321         * docs/gst/tmpl/gstmemchunk.sgml:
1322         * docs/gst/tmpl/gstminiobject.sgml:
1323         * docs/gst/tmpl/gstobject.sgml:
1324         * docs/gst/tmpl/gstpad.sgml:
1325         * docs/gst/tmpl/gstpadtemplate.sgml:
1326         * docs/gst/tmpl/gstparse.sgml:
1327         * docs/gst/tmpl/gstpipeline.sgml:
1328         * docs/gst/tmpl/gstplugin.sgml:
1329         * docs/gst/tmpl/gstpluginfeature.sgml:
1330         * docs/gst/tmpl/gstquery.sgml:
1331         * docs/gst/tmpl/gstqueue.sgml:
1332         * docs/gst/tmpl/gstregistry.sgml:
1333         * docs/gst/tmpl/gstregistrypool.sgml:
1334         * docs/gst/tmpl/gstscheduler.sgml:
1335         * docs/gst/tmpl/gstschedulerfactory.sgml:
1336         * docs/gst/tmpl/gststructure.sgml:
1337         * docs/gst/tmpl/gstsystemclock.sgml:
1338         * docs/gst/tmpl/gsttaglist.sgml:
1339         * docs/gst/tmpl/gsttagsetter.sgml:
1340         * docs/gst/tmpl/gsttrace.sgml:
1341         * docs/gst/tmpl/gsttrashstack.sgml:
1342         * docs/gst/tmpl/gsttypefind.sgml:
1343         * docs/gst/tmpl/gsttypefindfactory.sgml:
1344         * docs/gst/tmpl/gsttypes.sgml:
1345         * docs/gst/tmpl/gsturihandler.sgml:
1346         * docs/gst/tmpl/gsturitype.sgml:
1347         * docs/gst/tmpl/gstutils.sgml:
1348         * docs/gst/tmpl/gstvalue.sgml:
1349         * docs/gst/tmpl/gstversion.sgml:
1350         * docs/gst/tmpl/gstxml.sgml:
1351         * docs/libs/tmpl/gstcontrol.sgml:
1352         * docs/libs/tmpl/gstdataprotocol.sgml:
1353         * docs/libs/tmpl/gstdparam.sgml:
1354         * docs/libs/tmpl/gstdplinint.sgml:
1355         * docs/libs/tmpl/gstdpman.sgml:
1356         * docs/libs/tmpl/gstdpsmooth.sgml:
1357         * docs/libs/tmpl/gstgetbits.sgml:
1358         * docs/libs/tmpl/gstunitconvert.sgml:
1359         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
1360         (gst_push_src_base_init), (gst_push_src_class_init),
1361         (gst_push_src_init), (gst_push_src_create):
1362         * gst/base/gstpushsrc.h:
1363         * gst/elements/gstelements.c:
1364         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
1365         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
1366         (gst_fake_sink_init), (gst_fake_sink_set_property),
1367         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
1368         (gst_fake_sink_event), (gst_fake_sink_preroll),
1369         (gst_fake_sink_render), (gst_fake_sink_change_state):
1370         * gst/elements/gstfakesink.h:
1371         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
1372         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
1373         (gst_fake_src_base_init), (gst_fake_src_class_init),
1374         (gst_fake_src_init), (gst_fake_src_event_handler),
1375         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
1376         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
1377         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
1378         (gst_fake_src_create_buffer), (gst_fake_src_create),
1379         (gst_fake_src_start), (gst_fake_src_stop):
1380         * gst/elements/gstfakesrc.h:
1381         * gst/elements/gstfilesink.c: (_do_init),
1382         (gst_file_sink_base_init), (gst_file_sink_class_init),
1383         (gst_file_sink_init), (gst_file_sink_dispose),
1384         (gst_file_sink_set_location), (gst_file_sink_set_property),
1385         (gst_file_sink_get_property), (gst_file_sink_open_file),
1386         (gst_file_sink_close_file), (gst_file_sink_query),
1387         (gst_file_sink_event), (gst_file_sink_render),
1388         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
1389         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
1390         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
1391         * gst/elements/gstfilesink.h:
1392         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
1393         (gst_file_src_class_init), (gst_file_src_init),
1394         (gst_file_src_finalize), (gst_file_src_set_location),
1395         (gst_file_src_set_property), (gst_file_src_get_property),
1396         (gst_file_src_map_region), (gst_file_src_map_small_region),
1397         (gst_file_src_create_mmap), (gst_file_src_create_read),
1398         (gst_file_src_create), (gst_file_src_is_seekable),
1399         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
1400         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
1401         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
1402         (gst_file_src_uri_handler_init):
1403         * gst/elements/gstfilesrc.h:
1404           more autistic cleanliness in functions/names/defines
1405
1406 2005-07-13  Andy Wingo  <wingo@pobox.com>
1407
1408         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
1409         source couldn't negotiate.
1410
1411         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
1412         connections again.
1413
1414         * gst/gstutils.h:
1415         * gst/gstutils.c (gst_element_link_pads_filtered): New old
1416         function. I am channeling Hades. Put your boots on suckers!!!
1417
1418 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
1419
1420         * testsuite/caps/Makefile.am:
1421         * testsuite/caps/value_compare.c:
1422         * testsuite/caps/value_intersect.c:
1423         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
1424           move two testsuite apps over to the check dir
1425
1426 2005-07-12  Wim Taymans  <wim@fluendo.com>
1427
1428         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
1429         Added more debug info in the negotiate process.
1430
1431         * gst/gstmessage.h:
1432         Prepare for segment playback.
1433
1434         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
1435         Better debugging.
1436
1437         * gst/gstutils.c:
1438         Some more docs.
1439
1440         * tools/gst-launch.c: (main):
1441         NULL pipeline on errors.
1442
1443 2005-07-12  Andy Wingo  <wingo@pobox.com>
1444
1445         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
1446         not it comes from a malloc region. Make sure our copy gets freed.
1447
1448 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1449
1450         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
1451         * check/gst/gstmessage.c: (GST_START_TEST):
1452         * check/gst/gststructure.c: (GST_START_TEST),
1453         (gst_structure_suite), (main):
1454           more testing
1455         * gst/gstelement.c: (gst_element_message_full):
1456           clean up GError and debug string now that they get copied
1457         * gst/gstmessage.c: (gst_message_new_error),
1458         (gst_message_new_warning), (gst_message_parse_error),
1459         (gst_message_parse_warning):
1460           use GST_TYPE_G_ERROR for structure_new, and take copies of
1461           arguments, so that we don't mess up refcounting
1462
1463 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1464
1465         * check/Makefile.am:
1466           add per-test valgrind targets
1467         * check/gst-libs/gdp.c: (GST_START_TEST),
1468         (gst_data_protocol_suite), (main):
1469           clean up
1470
1471 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1472
1473         * check/Makefile.am:
1474           instate more valgrindable tests
1475         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1476         (GST_START_TEST), (fakesrc_suite):
1477         * check/gst/gstpad.c: (GST_START_TEST):
1478         * check/gst/gststructure.c: (GST_START_TEST):
1479           fix test leaks
1480         * docs/gst/tmpl/gstminiobject.sgml:
1481         * gst/gstpad.c: (gst_pad_finalize):
1482           fix the static mutex leak
1483
1484 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1485
1486         * check/Makefile.am:
1487           add two more tests for valgrinding
1488         * check/gst/gstvalue.c: (GST_START_TEST):
1489           test refcount of deserialized buffer, found a leak
1490         * docs/gst/gstreamer-docs.sgml:
1491         * docs/gst/gstreamer-sections.txt:
1492         * docs/gst/gstreamer.types:
1493         * docs/gst/tmpl/gstminiobject.sgml:
1494           add miniobject to docs
1495         * gst/gstminiobject.c:
1496           add some docs
1497         * gst/gstvalue.c: (gst_value_deserialize_buffer),
1498         (gst_string_unwrap):
1499           fix a hard-to-find invalid write for one of the tests
1500           fix a leak for deserialized buffers
1501
1502 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1503
1504         * docs/pwg/advanced-events.xml:
1505         * docs/pwg/advanced-request.xml:
1506         * docs/pwg/advanced-scheduling.xml:
1507         * docs/pwg/appendix-porting.xml:
1508         * docs/pwg/building-boiler.xml:
1509         * docs/pwg/intro-preface.xml:
1510         * docs/pwg/other-ntoone.xml:
1511           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
1512           of example code and explanation for pad activation, loop() and
1513           getrange() functions and a bit more. Remove old comments pointing
1514           to loop-functions.
1515         * examples/pwg/Makefile.am:
1516           Add loop/getrange examples.
1517
1518 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1519
1520         * configure.ac:
1521           check for valgrind binary + some fixes
1522         * check/gst.supp:
1523           valgrind suppressions for the tests
1524         * check/Makefile.am:
1525           add a valgrind: target that valgrinds the unit tests
1526         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
1527         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
1528         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1529         * check/gst/gstghostpad.c:
1530           added some cleanup
1531         * check/gst/gstdata.c:
1532           removed
1533         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
1534         (thread_unref), (gst_mini_object_suite), (main):
1535           added
1536         * gst/gst.c: (gst_deinit):
1537         * gst/gst.h:
1538           add a method to clean up.
1539         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1540         (gst_system_clock_obtain):
1541           allow for disposing the system clock.
1542         * tools/gst-launch.c: (main):
1543           deinit
1544
1545 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1546
1547         * docs/gst/tmpl/gstbasesrc.sgml:
1548         * docs/gst/tmpl/gstfakesrc.sgml:
1549         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1550         (gst_base_src_init), (gst_base_src_set_property),
1551         (gst_base_src_get_property), (gst_base_src_get_range),
1552         (gst_base_src_start):
1553         * gst/base/gstbasesrc.h:
1554           add num-buffers property
1555         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1556         (gst_fakesrc_init), (gst_fakesrc_set_property),
1557         (gst_fakesrc_get_property), (gst_fakesrc_create),
1558         (gst_fakesrc_start):
1559           remove num-buffers property
1560
1561 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1562
1563         * docs/gst/gstreamer-sections.txt:
1564         * docs/gst/tmpl/gstbasesink.sgml:
1565         * docs/gst/tmpl/gstbasesrc.sgml:
1566         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
1567         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
1568         (gst_base_sink_finalize), (gst_base_sink_set_clock),
1569         (gst_base_sink_set_property), (gst_base_sink_get_property),
1570         (gst_base_sink_handle_object), (gst_base_sink_event),
1571         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
1572         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
1573         (gst_base_sink_loop), (gst_base_sink_deactivate),
1574         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
1575         (gst_base_sink_change_state):
1576         * gst/base/gstbasesink.h:
1577         * gst/base/gstbasesrc.h:
1578         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
1579         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
1580         (gst_filesink_init):
1581           more macro splitting
1582
1583 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1584
1585         * gst/gstelement.c: (gst_element_get_bus):
1586           add debug
1587         * tools/gst-launch.c: (check_intr), (event_loop):
1588           fix bus leaks
1589
1590 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1591
1592         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
1593           fix a caps leak
1594
1595 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1596
1597         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1598         (gst_base_src_finalize):
1599           add finalize method and clean up properly
1600         * gst/gstpipeline.c: (gst_pipeline_dispose):
1601           add debug
1602
1603 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1604
1605         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
1606         (gst_bin_suite):
1607           add more things to check
1608         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
1609         * gst/gstelement.c:
1610           more debug
1611
1612 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1613
1614         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1615         (GST_START_TEST), (fakesrc_suite):
1616         * check/gst-libs/gdp.c: (GST_START_TEST):
1617         * check/gst/gst.c: (GST_START_TEST):
1618         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
1619         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1620         * check/gst/gstbus.c: (GST_START_TEST):
1621         * check/gst/gstcaps.c: (GST_START_TEST):
1622         * check/gst/gstdata.c: (GST_START_TEST):
1623         * check/gst/gstelement.c: (GST_START_TEST):
1624         * check/gst/gstghostpad.c: (GST_START_TEST):
1625         * check/gst/gstiterator.c: (GST_START_TEST):
1626         * check/gst/gstmessage.c: (GST_START_TEST):
1627         * check/gst/gstobject.c: (GST_START_TEST):
1628         * check/gst/gstpad.c: (GST_START_TEST):
1629         * check/gst/gststructure.c: (GST_START_TEST):
1630         * check/gst/gstsystemclock.c: (GST_START_TEST),
1631         (gst_systemclock_suite):
1632         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
1633         * check/gst/gstvalue.c: (GST_START_TEST):
1634         * check/pipelines/cleanup.c: (GST_START_TEST):
1635         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
1636         * check/states/sinks.c: (GST_START_TEST):
1637         * check/gstcheck.c: (gst_check_init):
1638         * check/gstcheck.h:
1639           add debugging category
1640           use GST_START_TEST now, so we add a debug line
1641
1642 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1643
1644         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
1645           add test for state change message on a bin
1646         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
1647           add another test
1648         * gst/gstbin.c: (gst_bin_init):
1649         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
1650         * gst/gstelement.c: (gst_element_post_message),
1651         (gst_element_set_state):
1652         * gst/gstelementfactory.c: (gst_element_factory_create):
1653         * gst/gstmessage.c: (gst_message_new):
1654         * gst/gstscheduler.c:
1655           various debugging additions and cleanups
1656
1657 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1658
1659         * check/Makefile.am:
1660         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
1661         (main):
1662           adding tests for elements
1663         * gst/gstelement.c: (gst_element_dispose):
1664
1665 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1666
1667         * gst/registries/gstlibxmlregistry.c: (load_feature):
1668           plug more leaks.  A simple gst_init() now is leakfree, yay.
1669
1670 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1671
1672         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
1673         (gst_xml_registry_load):
1674           plug another memleak
1675
1676 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1677
1678         * configure.ac:
1679           use GST_SET_ERROR_CFLAGS
1680         * docs/faq/cvs.xml:
1681           change to ERROR_CFLAGS
1682
1683 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1684
1685         * configure.ac:
1686           make GST_ERROR_CFLAGS overridable and re-enable Werror
1687         * docs/faq/cvs.xml:
1688           add a note about error CFLAGS
1689         * docs/gst/tmpl/gstfakesrc.sgml:
1690         * gst/elements/gstfakesrc.c:
1691           comment out some unused code
1692         * gst/gst.c: (split_and_iterate):
1693         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
1694         (load_feature):
1695           plug some memleaks
1696
1697 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1698
1699         * common/Makefile.am:
1700         * common/gtk-doc.mak:
1701         * docs/gst/Makefile.am:
1702           factor out gtk-doc.mak
1703
1704 2005-07-07  Wim Taymans  <wim@fluendo.com>
1705
1706         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
1707         (gst_thread_scheduler_dispose):
1708         Unlock the STREAM_LOCK completely.
1709
1710 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1711
1712         * check/Makefile.am:
1713         * check/elements/.cvsignore:
1714         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1715         (START_TEST), (fakesrc_suite), (main):
1716         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1717         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
1718         (gst_fakesrc_create), (gst_fakesrc_start):
1719         * gst/elements/gstfakesrc.h:
1720           adding a first element test
1721
1722 2005-07-07  Andy Wingo  <wingo@pobox.com>
1723
1724         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
1725         debug message.
1726
1727 2005-07-07  Wim Taymans  <wim@fluendo.com>
1728
1729         * gst/gstquery.c:
1730         * gst/gstquery.h:
1731         Remove old types
1732
1733 2005-07-07  Wim Taymans  <wim@fluendo.com>
1734
1735         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
1736         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
1737         Allow subclasses to implement their own negotiation.
1738
1739 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1740
1741         * docs/design/part-gstbin.txt:
1742         * docs/design/part-gstpipeline.txt:
1743           Update design notes to reflect the movement of
1744           responsibility for bus handling from GstPipeline to
1745           GstBin
1746
1747 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1748
1749         * configure.ac:
1750           Remove unnecessary queue2/3/4 examples.
1751
1752 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1753
1754         * examples/Makefile.am:
1755         * examples/helloworld/helloworld.c: (event_loop), (main):
1756         * examples/queue/queue.c: (event_loop), (main):
1757         * examples/queue2/queue2.c: (main):
1758           Update a couple of the examples to work again.
1759
1760         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1761         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
1762          Spelling corrections and extra debug.
1763         
1764         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
1765         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
1766         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
1767         * gst/gstbin.h:
1768         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
1769         (gst_pipeline_change_state):
1770         * gst/gstpipeline.h:
1771           Move the bus handler for children to the GstBin, and create a
1772           separate bus for receiving messages from children to the one the
1773           bus sends 'upwards' on.
1774
1775 2005-07-06  Wim Taymans  <wim@fluendo.com>
1776
1777         * gst/base/README:
1778         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1779         (gst_base_sink_handle_object), (gst_base_sink_loop),
1780         (gst_base_sink_change_state):
1781         * gst/base/gstbasesink.h:
1782         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1783         (gst_base_src_init), (gst_base_src_setcaps),
1784         (gst_base_src_getcaps), (gst_base_src_loop),
1785         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
1786         (gst_base_src_start), (gst_base_src_change_state):
1787         * gst/base/gstbasesrc.h:
1788         Make basesrc negotiate.
1789         Handle the case where preroll fails in basesink.
1790         Update README.
1791
1792 2005-07-06  Wim Taymans  <wim@fluendo.com>
1793
1794         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
1795         Implement the fixate function.
1796         Clean up acceptcaps.
1797
1798 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1799
1800         * docs/pwg/building-filterfactory.xml:
1801         * docs/pwg/pwg.xml:
1802           Remove never-written filter-factory chapter; I'll add the various
1803           base classes to part 4 ("other element types") later on.
1804
1805 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1806
1807         * docs/pwg/advanced-negotiation.xml:
1808         * docs/pwg/building-boiler.xml:
1809         * docs/pwg/building-pads.xml:
1810         * docs/pwg/pwg.xml:
1811         * examples/pwg/Makefile.am:
1812           Add a chapter on caps negotiation, simplify the original code
1813           samples a bit w.r.t. caps negotiation, add link to the advanced
1814           section. Add a bunch of examples showing different use cases of
1815           different types of caps negotiation. Upstream renegotiation isn't
1816           fully documented yet since nobody knows how that works.
1817
1818 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
1819
1820         * check/gst/gstpad.c:
1821         * check/gstcheck.c:
1822         * gst/gstpad.c: (gst_pad_get_internal_links_default):
1823           if pad has no parent, return NULL as list of internal links
1824
1825 2005-07-05  Andy Wingo  <wingo@pobox.com>
1826
1827         * gst/elements/gstfilesrc.c:
1828         * gst/elements/gstfakesrc.c: 
1829         * gst/base/gstpushsrc.c:
1830         * gst/base/gstbasesrc.h: 
1831         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
1832         
1833 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
1834
1835         * Makefile.am:
1836           better report generation target (lcov needs a patch)
1837
1838 2005-07-05  Andy Wingo  <wingo@pobox.com>
1839
1840         * gst/elements, testsuite: Null if we got it...
1841
1842 2005-07-05  Wim Taymans  <wim@fluendo.com>
1843
1844         * configure.ac:
1845         * libs/gst/dataprotocol/Makefile.am:
1846         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
1847         * libs/gst/dataprotocol/dataprotocol.h:
1848         * pkgconfig/Makefile.am:
1849         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
1850         * pkgconfig/gstreamer-dataprotocol.pc.in:
1851         Ported dataprotol to 0.9. 
1852         Added pkgconfig files.
1853
1854 2005-07-05  Andy Wingo  <wingo@pobox.com>
1855
1856         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
1857         Default to returning TRUE for the case when tranform_caps returns
1858         a fixed caps, like for identity or volume.
1859
1860         * check/gst/gstbus.c (pound_bus_with_messages): 
1861         * check/gst/gstmessage.c (START_TEST): 
1862         * check/pipelines/simple_launch_lines.c (got_handoff): Application
1863         message API change.
1864
1865         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
1866         logic weaks here: always run transform_caps, trying passthrough
1867         operation only if the original caps intersects with the transform.
1868
1869         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
1870         source and sink caps.
1871
1872         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
1873         Intersect the peer caps with the pad template before going into
1874         transform_caps.
1875         (gst_base_transform_transform_caps): More debugging.
1876
1877         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
1878         src argument.
1879
1880 2005-07-04  Edward Hervey  <edward@fluendo.com>
1881
1882         * gst/gstutils.c:
1883         * gst/gstutils.h:
1884         (gst_pad_add_*_probe): now returns the signal id for better wrapping
1885         in bindings.
1886
1887 2005-07-04  Andy Wingo  <wingo@pobox.com>
1888
1889         * check/gst/gstpad.c: Only set explicit caps on pads.
1890
1891 2005-07-01  Andy Wingo  <wingo@pobox.com>
1892
1893         * tests/network-clock.scm: Commentary update.
1894
1895         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
1896         Didn't really make sense, not implementable with basetransform,
1897         etc.
1898         (gst_identity_transform): Unref inbuf via make_writable. Feeble
1899         attempt at implementing the sync property, needs an unlock method.
1900
1901         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
1902         New func, by default returns the same caps (the identity
1903         transformation).
1904         (gst_base_transform_getcaps): Uses transform_caps to return
1905         something sensible.
1906         (gst_base_transform_setcaps): Complicated logic to get caps on
1907         both pads, even if they are different, and to call set_caps once
1908         for every time both pads get their caps set.
1909         (gst_base_transform_handle_buffer): Give the ref to the transform
1910         function. Allows in-place modification of the buffer.
1911
1912         * gst/base/gstbasetransform.h (transform_caps): New class method.
1913         Given caps on one side, what can I do on the other.
1914         (set_caps): Take two caps, one for each side of the element.
1915
1916         * gst/gstpad.h:
1917         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
1918         caps in place. This is safe because we can check the mutability of
1919         the caps, and a good idea because fixate functions are just called
1920         as a matter of last resort. (Not actually implemented.)
1921         (gst_pad_set_caps): If the caps we're setting is actually the same
1922         as the existing pad caps, just update the pointer without calling
1923         setcaps. Assert that caps is either NULL or fixed, as per the
1924         docs.
1925
1926         * gst/gstghostpad.c: Update for fixate changes.
1927
1928 2005-07-02  Andy Wingo  <wingo@pobox.com>
1929
1930         * gst/gstcaps.c:
1931         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
1932         two refcounts makes it immutable, which is enough. Doc more.
1933
1934 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
1935
1936         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
1937           Put the mini_object into GValue as a mini_object,
1938           not a gpointer, since that's how we declared
1939           the signal.
1940
1941 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1942
1943         * examples/pwg/Makefile.am:
1944           Fix buildbot again.
1945
1946 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1947
1948         * docs/pwg/building-testapp.xml:
1949           Add extra check.
1950         * examples/pwg/Makefile.am:
1951           Fix buildbot.
1952
1953 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1954
1955         * configure.ac:
1956         * examples/Makefile.am:
1957         * examples/pwg/Makefile.am:
1958         * examples/pwg/extract.pl:
1959           Enable building the PWG examples.
1960         * docs/pwg/advanced-interfaces.xml:
1961           Add URI interface stub.
1962         * docs/pwg/advanced-types.xml:
1963         * docs/pwg/other-autoplugger.xml:
1964         * docs/pwg/appendix-porting.xml:
1965         * docs/pwg/pwg.xml:
1966           Add porting guide (mostly stubs), remove autoplugging (see ADM).
1967         * docs/pwg/building-boiler.xml:
1968         * docs/pwg/building-chainfn.xml:
1969         * docs/pwg/building-pads.xml:
1970         * docs/pwg/building-props.xml:
1971         * docs/pwg/building-state.xml:
1972         * docs/pwg/building-testapp.xml:
1973           Update the building-*.xml parts for 0.9 changes. All examples
1974           code blocks compile in examples/pwg/*.
1975
1976 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1977
1978         * docs/manual/advanced-autoplugging.xml:
1979         * docs/manual/appendix-checklist.xml:
1980         * docs/manual/appendix-integration.xml:
1981         * docs/manual/highlevel-components.xml:
1982           Fix playbin/decodebin examples, update docs a bit, mention bus
1983           instead of signals in various places, mention kmplayer and
1984           kaffeine since they have a working GStreamer backend in the KDE
1985           section.
1986
1987 2005-06-30  Wim Taymans  <wim@fluendo.com>
1988
1989         * CHANGES-0.9:
1990         * docs/design/draft-ghostpads.txt:
1991         * docs/design/draft-push-pull.txt:
1992         * docs/design/draft-query.txt:
1993         * docs/design/part-TODO.txt:
1994         * docs/design/part-query.txt:
1995         Added CHANGES-0.9 doc, updated status of other docs.
1996         
1997         * gst/gstquery.h:
1998         Remove "hmm" macro
1999
2000 2005-06-30  Wim Taymans  <wim@fluendo.com>
2001
2002         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
2003         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
2004         (gst_base_sink_change_state):
2005         * gst/base/gstbasesink.h:
2006         Some tweaks, only EOS and a buffer complete a preroll.
2007
2008 2005-06-30  Andy Wingo  <wingo@pobox.com>
2009
2010         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
2011         activate_push down to the internal pad as well.
2012
2013 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
2014
2015         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2016
2017         * gst/gsttaginterface.c:
2018           Some documentation fixes (#307394 and #307397).
2019
2020 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
2021
2022         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2023
2024         * gst/gstvalue.c: (gst_value_intersect_list):
2025           Fix memleak (#309125).
2026
2027 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2028
2029         * docs/manual/advanced-dataaccess.xml:
2030           Fix fakesrc example to compile; doesn't work, bug somewhere...?
2031         * docs/manual/basics-pads.xml:
2032           Add reference for filtered caps to above chapter.
2033
2034 2005-06-30  Wim Taymans  <wim@fluendo.com>
2035
2036         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
2037         (gst_bin_change_state):
2038         Probes are gone.
2039         Lame attempt at making the state change function a bit
2040         more readable.
2041
2042 2005-06-30  Wim Taymans  <wim@fluendo.com>
2043
2044         * docs/design/part-clocks.txt:
2045         * docs/design/part-element-sink.txt:
2046         * docs/design/part-events.txt:
2047         * docs/design/part-preroll.txt:
2048         * docs/design/part-states.txt:
2049         Some more tweeks and additions to the docs.
2050
2051 2005-06-30  Wim Taymans  <wim@fluendo.com>
2052
2053         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
2054         (default_have_data), (gst_pad_class_init), (gst_pad_init),
2055         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
2056         (gst_pad_check_pull_range), (gst_pad_get_range),
2057         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
2058         * gst/gstpad.h:
2059         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
2060         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
2061         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
2062         (gst_pad_remove_buffer_probe):
2063         Removed atomic operations, use existing LOCK.
2064         Move exception handling out of main code path.
2065
2066 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2067
2068         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
2069         (silly_return_true_function), (gst_pad_class_init),
2070         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
2071         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
2072         (gst_pad_send_event):
2073           Fix accumulator, add default value by using _emitv() instead
2074           of _emit() for signal emission.
2075
2076 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2077
2078         * docs/manual/advanced-dataaccess.xml:
2079         * examples/manual/Makefile.am:
2080           Add probe example.
2081         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
2082           Make work (??).
2083
2084 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
2085
2086         * gst/elements/gstfilesink.c: (gst_filesink_render):
2087           Simplify code so that we don't have to handle short
2088           writes and return GST_FLOW_ERROR if an error occured.
2089
2090 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2091
2092         * docs/gst/gstreamer-docs.sgml:
2093           Remove probes more.
2094
2095 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2096
2097         * docs/gst/gstreamer-sections.txt:
2098         * docs/gst/tmpl/gstpad.sgml:
2099         * docs/gst/tmpl/gstprobe.sgml:
2100         * gst/Makefile.am:
2101         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
2102         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
2103         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
2104         (gst_pad_push_event), (gst_pad_send_event):
2105         * gst/gstpad.h:
2106         * gst/gstutils.c: (gst_pad_add_data_probe),
2107         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
2108         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
2109         (gst_pad_remove_buffer_probe):
2110         * gst/gstutils.h:
2111           Remove old probes, add new g-signal-based probes and some utility
2112           functions.
2113
2114 2005-06-29  Edward Hervey  <edward@fluendo.com>
2115
2116         * gst/gstelementfactory.c:
2117         * gst/gstutils.h:
2118         * gst/gstutils.c:
2119         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
2120         the definition to the header file.
2121
2122 2005-06-29  Andy Wingo  <wingo@pobox.com>
2123
2124         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
2125         plugins from the source directory.
2126
2127 2005-06-29  Wim Taymans  <wim@fluendo.com>
2128
2129         * docs/gst/tmpl/gstbuffer.sgml:
2130         * docs/gst/tmpl/gstclock.sgml:
2131         Some fixings for blantently wrong text.
2132
2133 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
2134
2135         * check/Makefile.am:
2136         * gst/gst.c: (add_path_func), (init_pre):
2137         * gst/gstregistry.c: (gst_registry_add_path):
2138           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
2139           only scan the GST_PLUGIN_PATH locations, and not add
2140           system locations
2141
2142 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
2143
2144         * docs/gst/gstreamer-sections.txt:
2145         * docs/gst/tmpl/gstbasesrc.sgml:
2146         * gst/gstelement.c:
2147         * gst/gstelement.h:
2148         * gst/gstevent.c:
2149         * gst/gstutils.c:
2150           doc fixes
2151
2152 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2153
2154         * docs/manual/advanced-autoplugging.xml:
2155           Fix autoplugging example.
2156
2157 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2158
2159         * docs/manual/advanced-autoplugging.xml:
2160         * docs/manual/mime-world.fig:
2161           Try to get autoplugging working, fix type detection. Fix text
2162           in hello-world image.
2163
2164 2005-06-29  Wim Taymans  <wim@fluendo.com>
2165
2166         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
2167         (gst_base_sink_change_state):
2168         Small debug line.
2169
2170         * gst/gstclock.h:
2171         map SIGNAL and BROADCAST to the right function.
2172
2173         * gst/gstobject.h:
2174         Remove redundant braces.
2175
2176         * gst/gstpad.c: (gst_pad_set_caps):
2177         Don't call setcaps function when reseting caps to NULL.
2178
2179         * gst/gstsystemclock.c: (gst_system_clock_dispose),
2180         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
2181         (gst_system_clock_id_unschedule):
2182         Use BROADCAST as this is what we do.
2183
2184 2005-06-29  Wim Taymans  <wim@fluendo.com>
2185
2186         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
2187         We are actually prerolling before commiting the state
2188         change. 
2189
2190 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2191
2192         * docs/manual/advanced-clocks.xml:
2193         * docs/manual/advanced-interfaces.xml:
2194         * docs/manual/advanced-metadata.xml:
2195         * docs/manual/advanced-position.xml:
2196         * docs/manual/advanced-schedulers.xml:
2197         * docs/manual/advanced-threads.xml:
2198         * docs/manual/appendix-porting.xml:
2199         * docs/manual/basics-bins.xml:
2200         * docs/manual/basics-bus.xml:
2201         * docs/manual/basics-elements.xml:
2202         * docs/manual/basics-helloworld.xml:
2203         * docs/manual/basics-pads.xml:
2204         * docs/manual/highlevel-components.xml:
2205         * docs/manual/manual.xml:
2206         * docs/manual/thread.fig:
2207           Update (until threads/scheduling) Application Development Manual;
2208           remove GstThread, add GstBus, add simple porting checklist, add
2209           documentation for tag writing, clocks, make all examples until this
2210           part compile and run.
2211         * examples/manual/Makefile.am:
2212           Update from changes to Application Development Manual; add bus
2213           example, remove thread example.
2214
2215 2005-06-28  Wim Taymans  <wim@fluendo.com>
2216
2217         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
2218         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
2219         (gst_bus_source_dispatch):
2220         Add debugging messages.
2221         Make internal methods static.
2222         Handle the case where the bus is flushed in the handler.
2223         
2224         * gst/gstelement.c: (gst_element_get_bus):
2225         Fix refcount in _get_bus();
2226
2227         * gst/gstpipeline.c: (gst_pipeline_change_state),
2228         (gst_pipeline_get_clock_func):
2229         Clock refcounting fixes.
2230         Handle the case where preroll timed out more gracefully.
2231         
2232         * gst/gstsystemclock.c: (gst_system_clock_dispose):
2233         Clean up the internal thread in dispose. This is needed
2234         for subclasses that actually get disposed.
2235         
2236         * gst/schedulers/threadscheduler.c:
2237         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
2238         (gst_thread_scheduler_dispose):
2239         Free thread pool in dispose.
2240
2241 2005-06-28  Andy Wingo  <wingo@pobox.com>
2242
2243         * tests/network-clock-utils.scm (debug, print-event): New utils.
2244
2245         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
2246         (*packet-loss*): Unified loss probability.
2247         (network-time): Report out-of-band events.
2248
2249         * tests/plot-data: Add support for out-of-band events. Hack it
2250         into this script instead of passing it down the pipe; should fix
2251         this later.
2252
2253 2005-06-28  Wim Taymans  <wim@fluendo.com>
2254
2255         * docs/gst/gstreamer.types:
2256         * docs/gst/tmpl/gstbasesrc.sgml:
2257         * docs/gst/tmpl/gstpad.sgml:
2258         Docs fixes.
2259
2260 2005-06-28  Wim Taymans  <wim@fluendo.com>
2261
2262         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2263         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
2264         (gst_proxy_pad_do_fixatecaps):
2265         Correctly proxy the check_pull_range function.
2266
2267 2005-06-28  Andy Wingo  <wingo@pobox.com>
2268
2269         * tests/network-clock.scm: Removed need for slib.
2270         
2271 2005-06-28  Wim Taymans  <wim@fluendo.com>
2272
2273         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
2274         (gst_basesink_preroll_queue_flush):
2275         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
2276         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
2277         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2278         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
2279         (gst_proxy_pad_set_property):
2280         * gst/gstpad.c:
2281         * gst/gstpad.h:
2282         * gst/gstqueue.c: (gst_queue_init):
2283         The deprecated pad loop function is removed now.
2284
2285 2005-06-28  Andy Wingo  <wingo@pobox.com>
2286
2287         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
2288         New parameters, simulate network packet loss.
2289
2290         * tests/network-clock-utils.scm: Initialize the RNG.
2291
2292 2005-06-28  Wim Taymans  <wim@fluendo.com>
2293
2294         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
2295         (gst_basesink_event), (gst_basesink_deactivate):
2296         Flushing the preroll queue always needs to unlock the waiters.
2297
2298 2005-06-28  Edward Hervey  <edward@fluendo.com>
2299
2300         * gst/gstpipeline.c: (gst_pipeline_send_event): 
2301         Wheen a seek was successful on a pipeline, set the stream_time to the
2302         seek offset in order to have a synchronized stream_time.
2303
2304 2005-06-28  Wim Taymans  <wim@fluendo.com>
2305
2306         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2307         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
2308         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
2309         (gst_proxy_pad_do_fixatecaps):
2310         Call wrapper function instead of just calling the function
2311         pointers. This takes care of any locking and whatmore.
2312
2313 2005-06-28  Wim Taymans  <wim@fluendo.com>
2314
2315         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
2316         (gst_pad_pull_range):
2317         * gst/gstpad.h:
2318         CONNECTED -> LINKED.
2319
2320 2005-06-28  Andy Wingo  <wingo@pobox.com>
2321
2322         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
2323         source-munging commit!!!
2324
2325         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
2326         (gst_object_sink): Take gpointer arguments, not GstObject --
2327         avoids casts. Like GLib.
2328
2329         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
2330         activate.
2331
2332 2005-06-27  Andy Wingo  <wingo@pobox.com>
2333
2334         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
2335         remaining buffer.
2336
2337         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
2338         returns a sorted copy of the trace list.
2339         (gst_alloc_trace_print_live): New API, only prints traces with
2340         live objects. Sort the list.
2341         (gst_alloc_trace_print_all): Sort the list.
2342         (gst_alloc_trace_print): Align columns.
2343
2344         * gst/elements/gstttypefindelement.c:
2345         * gst/elements/gsttee.c:
2346         * gst/base/gstbasesrc.c:
2347         * gst/base/gstbasesink.c:
2348         * gst/base/gstbasetransform.c:
2349         * gst/gstqueue.c: Adapt for pad activation changes.
2350
2351         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
2352         sched.
2353         (gst_pipeline_dispose): Drop ref on sched.
2354
2355         * gst/gstpad.c (gst_pad_init): Set the default activate func.
2356         (gst_pad_activate_default): Push mode by default.
2357         (pre_activate_switch, post_activate_switch): New stubs, things to
2358         do before and after switching activation modes on pads.
2359         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
2360         the pad's activate function to choose which mode to activate.
2361         Shortcut on deactivation and call the right function directly.
2362         (gst_pad_activate_pull): New API, (de)activates a pad in pull
2363         mode.
2364         (gst_pad_activate_push): New API, same for push mode.
2365         (gst_pad_set_activate_function) 
2366         (gst_pad_set_activatepull_function) 
2367         (gst_pad_set_activatepush_function): Setters for new API.
2368
2369         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
2370         Trace all miniobjects.
2371         (gst_mini_object_make_writable): Unref the arg if we copy, like
2372         gst_caps_make_writable.
2373
2374         * gst/gstmessage.c (_gst_message_initialize): No trace init.
2375
2376         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
2377         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
2378         Adapt for new pad API.
2379
2380         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
2381
2382         * gst/gstelement.h:
2383         * gst/gstelement.c (gst_element_iterate_src_pads) 
2384         (gst_element_iterate_sink_pads): New API functions.
2385         
2386         * gst/gstelement.c (iterator_fold_with_resync): New utility,
2387         should fold into gstiterator.c in some form.
2388         (gst_element_pads_activate): Simplified via use of fold and
2389         delegation of decisions to gstpad->activate.
2390
2391         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
2392         help in debugging.
2393
2394         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
2395         class once in init, like gstmessage. Didn't run into this issue
2396         but it seems correct. Don't initialize a trace, gstminiobject does
2397         that.
2398
2399         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
2400         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
2401         to the bus.
2402         (assert_live_count): New util function, uses alloc traces to check
2403         cleanup.
2404
2405         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
2406         To be modified when unlink drops the internal pad.
2407
2408 2005-06-27  Wim Taymans  <wim@fluendo.com>
2409
2410         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
2411         (gst_bin_change_state):
2412         Cleanup the get_state() function a little, make sure it
2413         iterates the same set of elements.
2414         Added stub iterate_state_order().
2415
2416 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
2417
2418         * docs/gst/gstreamer-docs.sgml:
2419         * docs/gst/gstreamer-sections.txt:
2420         * docs/gst/gstreamer.types:
2421         * docs/gst/tmpl/gstbasesink.sgml:
2422         * docs/gst/tmpl/gstbasesrc.sgml:
2423         * docs/gst/tmpl/gstbasetransform.sgml:
2424         * docs/gst/tmpl/gstelement.sgml:
2425         * docs/gst/tmpl/gstiterator.sgml:
2426         * gst/base/gstbasesrc.c:
2427         * gst/base/gstbasesrc.h:
2428         * gst/base/gstbasetransform.h:
2429         * gst/gstelement.c:
2430         * gst/gstiterator.h:
2431           adding basetransform and iterator docs
2432
2433 2005-06-27  Andy Wingo  <wingo@pobox.com>
2434
2435         * docs/design/part-activation.txt: Notes on how activation should
2436         work -- not quite implemented yet.
2437
2438 2005-06-25  Wim Taymans  <wim@fluendo.com>
2439
2440         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
2441         At least get the chain function correct, needs more
2442         fixing.
2443
2444 2005-06-25  Wim Taymans  <wim@fluendo.com>
2445
2446         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2447         (gst_basesink_handle_object), (gst_basesink_event),
2448         (gst_basesink_do_sync), (gst_basesink_handle_event),
2449         (gst_basesink_change_state):
2450         * gst/gsttask.h:
2451         Right, two problems here: ghostpads don't take locks and
2452         glib _rec_mutex_lock_full() with depth==0 still locks.
2453         Catch illegal locking and g_warn them.
2454
2455 2005-06-25  Wim Taymans  <wim@fluendo.com>
2456
2457         * check/states/sinks.c: (START_TEST), (gst_object_suite):
2458         Have to check for completion now...
2459
2460 2005-06-25  Wim Taymans  <wim@fluendo.com>
2461
2462         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2463         (gst_basesink_handle_object), (gst_basesink_event),
2464         (gst_basesink_do_sync), (gst_basesink_handle_event),
2465         (gst_basesink_change_state):
2466         * gst/gstpad.h:
2467         Unlock STREAM_LOCK whatever the recursion was.
2468
2469 2005-06-25  Wim Taymans  <wim@fluendo.com>
2470
2471         * gst/base/gstbasesink.c: (gst_basesink_set_property),
2472         (gst_basesink_preroll_queue_empty),
2473         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
2474         (gst_basesink_event), (gst_basesink_do_sync),
2475         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
2476         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
2477         (gst_basesink_change_state):
2478         Reworked the base sink, handle event and buffer serialisation
2479         correctly and removed possible deadlock.
2480         Handle EOS correctly.
2481
2482 2005-06-25  Wim Taymans  <wim@fluendo.com>
2483
2484         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
2485         (gst_pipeline_change_state):
2486         * tools/gst-launch.c: (check_intr), (event_loop), (main):
2487         Allow elements to post EOS in the state change function.
2488         Fix up -launch, make it exit the poll loop when the
2489         pipeline actually changed state.
2490         Fix up warning parsing in -launch.
2491
2492 2005-06-25  Wim Taymans  <wim@fluendo.com>
2493
2494         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
2495         (gst_tee_sink_activate):
2496         Core takes STREAM_LOCK for us now.
2497
2498 2005-06-25  Wim Taymans  <wim@fluendo.com>
2499
2500         * gst/gstelement.c: (gst_element_get_state_func),
2501         (gst_element_set_state):
2502         * gst/gstelement.h:
2503         * gst/gstmessage.c: (gst_message_parse_error),
2504         (gst_message_parse_warning):
2505         Keep track of current target state while performing a state
2506         change so that subclasses can do something interesting.
2507         Fix parsing of warning/error messages when GError is NULL.
2508
2509 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
2510
2511         * docs/gst/Makefile.am:
2512         * docs/gst/gstreamer-docs.sgml:
2513         * docs/gst/gstreamer-sections.txt:
2514         * docs/gst/gstreamer.types:
2515         * docs/gst/tmpl/gstbasesink.sgml:
2516         * docs/gst/tmpl/gstbasesrc.sgml:
2517         * docs/gst/tmpl/gstbin.sgml:
2518         * docs/gst/tmpl/gstcompat.sgml:
2519         * docs/gst/tmpl/gstfakesink.sgml:
2520         * docs/gst/tmpl/gstfakesrc.sgml:
2521         * docs/gst/tmpl/gstfilesink.sgml:
2522         * docs/gst/tmpl/gstfilesrc.sgml:
2523         * docs/gst/tmpl/gstindex.sgml:
2524         * docs/manual/appendix-quotes.xml:
2525         * gst/base/gstbasesrc.h:
2526         * gst/elements/gstfakesrc.h:
2527         * gst/gstmessage.h:
2528           start pulling in base classes and elements in our docs
2529
2530 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
2531
2532         * docs/gst/Makefile.am:
2533         * docs/libs/Makefile.am:
2534           fixed make distcheck with gtk-doc 1.3
2535
2536 2005-06-23  Wim Taymans  <wim@fluendo.com>
2537
2538         * gst/gstelement.c: (gst_element_get_state_func),
2539         (gst_element_set_state), (gst_element_change_state):
2540         When the state did not change, also report NO_PREROLL
2541         when it matters.
2542
2543 2005-06-23  Wim Taymans  <wim@fluendo.com>
2544
2545         * gst/gstpad.c: (gst_pad_event_default):
2546         * gst/gstqueue.c: (gst_queue_loop):
2547         No unsafe task pausing please.
2548
2549 2005-06-23  Wim Taymans  <wim@fluendo.com>
2550
2551         * gst/schedulers/threadscheduler.c:
2552         (gst_thread_scheduler_task_start),
2553         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
2554         Ref the task before pushing it on the threadpool. This
2555         makes sure that we have a ref when the threadfunction is
2556         actually called.
2557
2558 2005-06-23  Andy Wingo  <wingo@pobox.com>
2559
2560         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
2561         offset is greater than the file's size.
2562
2563         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
2564         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
2565         * gst/gstobject.c (gst_object_class_init): Make the class lock
2566         recursive. Wim won't let me drop deep_notify. Decodebin works
2567         again, whoopdy doo.
2568
2569         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
2570         internal pad, and hacks accordingly. Doesn't do it on the target
2571         pad because we change its caps. Probably catches all cases of
2572         interest tho.
2573         (gst_ghost_pad_set_property): Connect to notify::caps as
2574         appropritate.
2575
2576         * tests/network-clock.scm (plot-simulation): Pipe data to the
2577         elite python skript.
2578
2579         * tests/network-clock-utils.scm (define-parameter): New macro,
2580         defines a parameter that can be set via the command line.
2581         (set-parameter!, parse-parameter-arguments): Command line args
2582         parser.
2583
2584         * tests/plot-data: Simple matplotlib-based plotter, takes input on
2585         stdin.
2586
2587 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
2588
2589         * gst/elements/gsttypefindelement.c:
2590         (gst_type_find_element_handle_event):
2591           Don't restart typefinding on a discont.
2592         * gst/gstelement.c: (gst_element_set_state):
2593           Debug spelling fix.
2594         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
2595           Allow changing mode of an active pad.
2596           Debug output fixes.
2597         * gst/registries/gstlibxmlregistry.c: (load_feature):
2598           Don't cast a static pad template to a normal pad template.
2599
2600 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
2601
2602         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2603         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2604           remove gst_strtoll completely, since it didn't actually do
2605           anything more than what g_ascii_strtoull already does.
2606           check for range errors when deserializing
2607           do a cast for the unsigned cases; but further fixing needs
2608           a decision on what the interpretation of "(int)" and
2609           deserialization should be for values that fall outside the
2610           type's boundaries (ie, refuse, or interpret as casting)
2611
2612 2005-06-23  Wim Taymans  <wim@fluendo.com>
2613
2614         * check/Makefile.am:
2615         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
2616         * docs/design/part-live-source.txt:
2617         * docs/design/part-states.txt:
2618         * gst/base/gstbasesrc.c: (gst_basesrc_init),
2619         (gst_basesrc_set_live), (gst_basesrc_is_live),
2620         (gst_basesrc_get_range), (gst_basesrc_activate),
2621         (gst_basesrc_change_state):
2622         * gst/base/gstbasesrc.h:
2623         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2624         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
2625         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
2626         * gst/gstelement.c: (gst_element_get_state_func),
2627         (gst_element_set_state):
2628         * gst/gstelement.h:
2629         * gst/gsttypes.h:
2630         * tools/gst-launch.c: (event_loop), (main):
2631         Added support for live sources and other elements that
2632         cannot do preroll.
2633         Updated design docs, added live-source design doc.
2634         Implemented live source functionality in basesrc
2635         Fix error condition in _bin_get_state()
2636         Implement live source handling in -launch.
2637         Added check for live sources.
2638         Fixed case in GstBin where elements were changed state
2639         multiple times.
2640
2641
2642 2005-06-23  Andy Wingo  <wingo@pobox.com>
2643
2644         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
2645         borken refcounting.
2646
2647         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
2648         gst_caps_replace takes care of this for us.
2649
2650         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
2651         gst_pad_set_caps on the target, not just its setcaps() function.
2652
2653         * tests/network-clock.scm: 
2654         * tests/network-clock-utils.scm: A network clock simulator.
2655         Something of an algorithmic testbed before doing something in C.
2656
2657 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2658
2659         * check/Makefile.am:
2660         * check/gst/capslist.h:
2661           copy over from 0.8, and add two with bitmasks specified with
2662           (int) 0xFF...
2663         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2664           add test to parse everything from capslist.h
2665         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
2666         (main):
2667           add test for structure deserialization
2668         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2669           add tests for deserialization of strings to int types
2670         * gst/gststructure.c: (gst_structure_nth_field_name):
2671         * gst/gststructure.h:
2672           add a way to get the name of a field referenced by index
2673         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2674           instead of checking if the resulting long long lies between
2675           min and max, we check if the long long would fit into
2676           a number of bytes for the final type.
2677           This fixes cases where a string represents 2^32 - 1, which
2678           when cast to int would be the (valid) -1, but is bigger than
2679           G_MAXINT
2680
2681 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2682
2683         * gst/parse/grammar.y:
2684           add a log line for type deserialization
2685
2686 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2687
2688         * check/gst/gstvalue.c: (START_TEST):
2689         * gst/gstvalue.c: (gst_value_deserialize):
2690           return long long, not int, so gint64 deserialization actually
2691           works.  Is there any flag that makes the compiler check this ?
2692           Fixes #308559
2693
2694 2005-06-22  Wim Taymans  <wim@fluendo.com>
2695
2696         * gst/gstbuffer.h:
2697         Added convenience macros for setting buffers in GValue.
2698
2699 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2700
2701         * check/gst/.cvsignore:
2702         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2703           add a test deserializing int64, and comment part out because
2704           it fails, yay !
2705
2706 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2707
2708         * check/Makefile.am:
2709         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
2710         * testsuite/Makefile.am:
2711         * testsuite/caps/Makefile.am:
2712         * testsuite/caps/value_serialize.c:
2713         * testsuite/test_gst_init.c:
2714           move a value_serialize test over
2715
2716 2005-06-20  Wim Taymans  <wim@fluendo.com>
2717
2718         * gst/gstpad.c:
2719         Small doc updates.
2720         
2721         * gst/gstvalue.c: (gst_value_compare_buffer),
2722         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
2723         (gst_value_compare_flags), (gst_value_serialize_flags),
2724         (gst_value_deserialize_flags), (_gst_value_initialize):
2725         Fix serialisation of buffers, they are not boxed types anymore
2726
2727 2005-06-20  Wim Taymans  <wim@fluendo.com>
2728
2729         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2730         Testcase to show error in buffer-on-caps serialisation.
2731
2732 2005-06-20  Andy Wingo  <wingo@pobox.com>
2733
2734         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
2735         will be adding to later.
2736
2737         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
2738         if its socks fill with rocks.
2739         (gst_system_clock_obtain): Set the name on object construction.
2740         Avoid double-checked locking.
2741
2742 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
2743
2744         * gst/gsturi.c: (gst_element_make_from_uri):
2745           Fix potential endless loop.
2746
2747 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2748
2749         * check/Makefile.am:
2750           add gsttag
2751         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
2752         (main):
2753           move over from testsuite dir and clean up
2754         * configure.ac:
2755         * gst/gsttag.c:
2756         * testsuite/Makefile.am:
2757         * testsuite/tags/.cvsignore:
2758         * testsuite/tags/Makefile.am:
2759         * testsuite/tags/merge.c:
2760           remove testsuite/tags
2761
2762 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2763
2764         * docs/gst/gstreamer-sections.txt:
2765         * docs/gst/tmpl/gstenumtypes.sgml:
2766         * win32/gstenumtypes.c:
2767           clean up documentation build a little
2768
2769 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2770
2771         * check/gstcheck.h:
2772           add macros for checking refcounts on objects and caps
2773         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
2774           add some more unit tests
2775         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
2776         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
2777           fix leaked refcounts (I hope :)) so unittest works
2778         * gst/gstpad.h:
2779           whitespace removal
2780
2781 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2782
2783         * configure.ac: back to HEAD
2784
2785 === release 0.9.1 ===
2786
2787 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2788
2789         * NEWS:
2790         * RELEASE:
2791           updated
2792
2793 2005-06-17  Andy Wingo  <wingo@pobox.com>
2794
2795         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
2796         assert; it's always possible that the pad gets deactivated in
2797         between the checks in gstpad.c and the implementation. Rely on
2798         finish_preroll() to return a FLUSHING or similar instead of on the
2799         assert.
2800         
2801         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
2802         clock and post an EOS message if we come out of finish_preroll in
2803         the playing state.
2804
2805 2005-06-16  David Schleef  <ds@schleef.org>
2806
2807         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
2808         (gst_capsfilter_set_property): Allow NULL as possible value
2809         for filter_caps property, indicating GST_CAPS_ANY.
2810
2811 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2812
2813         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
2814           fix debug output
2815         * gst/schedulers/Makefile.am:
2816           use libgst prefix
2817         * gstreamer.spec.in:
2818           fix spec for it
2819
2820 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2821
2822         * gstreamer.spec.in:
2823           clean up
2824
2825 2005-06-08  Andy Wingo  <wingo@pobox.com>
2826
2827         * gst/gstutils.c: RPAD fixes all around.
2828         (gst_element_link_pads): Refcounting fixes.
2829
2830         * tools/gst-inspect.c:
2831         * tools/gst-xmlinspect.c:
2832         * parse/grammar.y:
2833         * gst/base/gsttypefindhelper.c:
2834         * gst/base/gstbasesink.c:
2835         * gst/gstqueue.c: RPAD fixes.
2836
2837         * gst/gstghostpad.h:
2838         * gst/gstghostpad.c: New ghost pad implementation as full proxy
2839         pads. The tricky thing is they provide both source and sink
2840         interfaces, since they proxy the internal pad for the external
2841         pad, and vice versa. Implement with lower-level ProxyPad objects,
2842         with the interior proxy pad as a child of the exterior ghost pad.
2843         Should write a doc on this.
2844         
2845         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
2846         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
2847         gst_object API.
2848         
2849         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
2850         pads are real pads. No ghost pads in this file. Not documenting
2851         the myriad s/RPAD/PAD/ and REALIZE fixes.
2852         (gst_pad_class_init): Add properties for "direction" and
2853         "template". Both are construct-only, so they can't change during
2854         the life of the pad. Fixes properly deriving from GstPad.
2855         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
2856         derived objects, just set properties when creating the objects via
2857         g_object_new.
2858         (gst_pad_get_parent): Implement as a function, return NULL if the
2859         parent is not an element.
2860         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
2861         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
2862         
2863         * gst/gstobject.c (gst_object_class_init): Make name a construct
2864         property. Don't set it in the object init.
2865
2866         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
2867         with UNKNOWN direction.
2868         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
2869         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
2870         (gst_element_remove_pad): Remove ghost-pad special cases.
2871         (gst_element_pads_activate): Remove rpad cruft.
2872
2873         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
2874         catch the pad's-parent-not-an-element case.
2875
2876         * gst/gst.h: Include gstghostpad.h.
2877
2878         * gst/gst.c (init_post): No more real, ghost pads.
2879
2880         * gst/Makefile.am: Add gstghostpad.[ch].
2881
2882         * check/Makefile.am:
2883         * check/gst/gstbin.c:
2884         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
2885         into a bin creates ghost pads, and that the refcounts are right.
2886         Partly moved from gstbin.c.
2887
2888 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2889
2890         * check/gst-libs/.cvsignore:
2891         * check/gst/.cvsignore:
2892         * check/pipelines/.cvsignore:
2893           ignore more
2894         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
2895         (START_TEST), (cleanup_suite), (main):
2896           add some tests related to cleanup after running pipelines
2897
2898 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2899
2900         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
2901           add a testsuite for GstBuffer
2902
2903 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2904
2905         * gst/gstminiobject.h:
2906           add defines for accessing the refcount
2907
2908 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
2909
2910         * Makefile.am: added support for html unit test coverage reports
2911
2912 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
2913
2914         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
2915           Free existing caps if the capsfilter changes. Add a FIXME about
2916           setting those caps on the pads.
2917
2918         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
2919           Before adding a ghost pad to a parent bin, check that there isn't
2920           already one for the element on the bin. Prevents infinite recursion
2921           when using decodebin in parse pipelines. Andy says he'll rewrite the
2922           way this works anyway, so ignore the hack.
2923
2924 2005-06-02  Andy Wingo  <wingo@pobox.com>
2925
2926         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
2927         file size, pass it on to the type find helper.
2928
2929         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
2930         segment_start and segment_end properly according to the seek
2931         method. Segment_end is still a bit flaky because offset can be
2932         negative for CUR and END cases, but it takes -1 as an "unset"
2933         value.
2934
2935 2005-06-02  Wim Taymans  <wim@fluendo.com>
2936
2937         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
2938         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
2939         (gst_basesink_activate):
2940         * gst/base/gstbasesink.h:
2941         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2942         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2943         (gst_pad_query), (gst_pad_start_task):
2944         * gst/gstpad.h:
2945         * gst/gstqueue.c: (gst_queue_bufferalloc),
2946         (gst_queue_handle_sink_event), (gst_queue_chain):
2947         Bufferalloc: return GstFlowReturn to more accuratly report
2948         why allocation failed.
2949
2950 2005-06-02  Wim Taymans  <wim@fluendo.com>
2951
2952         * gst/gstpipeline.c: (gst_pipeline_send_event):
2953         Take snapshot of state without blocking.
2954
2955 2005-06-02  Wim Taymans  <wim@fluendo.com>
2956
2957         * docs/design/part-TODO.txt:
2958         * docs/design/part-caps.txt:
2959         * docs/design/part-clocks.txt:
2960         * docs/design/part-negotiation.txt:
2961         * docs/design/part-preroll.txt:
2962         Small doc updates 
2963
2964 2005-05-30  Wim Taymans  <wim@fluendo.com>
2965
2966         * gst/elements/gstidentity.c: (gst_identity_event),
2967         (gst_identity_transform), (gst_identity_get_property):
2968         Protect last_message property as it is accessed from
2969         multiple threads.
2970
2971 2005-05-30  Wim Taymans  <wim@fluendo.com>
2972
2973         * gst/gstelement.c: (gst_element_init),
2974         (gst_element_pads_activate), (gst_element_change_state):
2975         Slicker pad activation code.
2976
2977 2005-05-30  Wim Taymans  <wim@fluendo.com>
2978
2979         * gst/Makefile.am:
2980         * gst/gstelement.h:
2981         * gst/gstelementfactory.h:
2982         * gst/gsttypes.h:
2983         Move elementfactory methods to separate .h file.
2984
2985 2005-05-30  Wim Taymans  <wim@fluendo.com>
2986
2987         * docs/design/part-overview.txt:
2988         * gst/gstsystemclock.h:
2989         Small typo fixes, doc updates.
2990
2991 2005-05-30  Wim Taymans  <wim@fluendo.com>
2992
2993         * gst/gst.c: (gst_init_get_popt_table), (init_post),
2994         (init_popt_callback):
2995         Remove cpu-opt flag.
2996
2997 2005-05-30  Wim Taymans  <wim@fluendo.com>
2998
2999         * gst/gstbuffer.c: (gst_subbuffer_finalize),
3000         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
3001         * gst/gstbuffer.h:
3002         Avoid typechecking in places where not needed.
3003         Added accessor for malloc_data.
3004
3005 2005-05-30  Wim Taymans  <wim@fluendo.com>
3006
3007         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
3008         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
3009         (gst_pad_configure_sink), (gst_pad_configure_src),
3010         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
3011         (gst_pad_start_task):
3012         Propagate errors from _set_caps() in configure_src/sink
3013         functions instead of returning TRUE.
3014         FLUSH events can travel up and downstream
3015
3016
3017 2005-05-30  Wim Taymans  <wim@fluendo.com>
3018
3019         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
3020         (gst_basesink_activate):
3021         Handle EOS in preroll.
3022
3023 2005-05-30  Wim Taymans  <wim@fluendo.com>
3024
3025         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
3026         (gst_queue_loop), (gst_queue_handle_src_event):
3027         Remove old pieces of code
3028         Flushing the queue in an upstream event is a very bad idea.
3029
3030 2005-05-26  Andy Wingo  <wingo@pobox.com>
3031
3032         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
3033         gst_value_set_mini_object so as to add a ref on the object (which
3034         will be removed when the value is unset).
3035
3036         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
3037         arg type in ::handoff.
3038
3039         * gst/gstelement.c (gst_element_change_state): Also deactivate
3040         pads in READY->NULL, just in case the element didn't make it to
3041         PAUSED. Wingo tested, Wim approved.
3042
3043 2005-05-26  Wim Taymans  <wim@fluendo.com>
3044
3045         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3046         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
3047         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
3048         A flushing pad cannot be used to alloc_buffer from.
3049
3050 2005-05-26  Wim Taymans  <wim@fluendo.com>
3051
3052         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
3053         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
3054         (gst_bus_source_dispatch), (gst_bus_source_finalize),
3055         (gst_bus_create_watch), (gst_bus_add_watch_full):
3056         * gst/gstbus.h:
3057         Implement a real GSource and use g_main_context_wakeup() to
3058         signal new messages instead of the socketpair.
3059
3060 2005-05-25  Wim Taymans  <wim@fluendo.com>
3061
3062         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
3063         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
3064         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3065         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
3066         (gst_pad_send_event), (gst_pad_start_task):
3067         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
3068         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
3069         (gst_queue_sink_activate), (gst_queue_src_activate),
3070         (gst_queue_change_state):
3071         * gst/gstqueue.h:
3072         Fix state changes for non sinks. We now change sinks, then elements
3073         with unconnected srcpads, then the rest.
3074         More efficient queue unlocking in flush and state changes.
3075         Set the pad activate mode even if it does not have an activate
3076         function.
3077
3078 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3079
3080         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
3081           Don't go in pull mode for non-seekable sources.
3082         * gst/elements/gsttypefindelement.h:
3083         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3084         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
3085         (free_entry), (stop_typefinding),
3086         (gst_type_find_element_handle_event), (find_peek),
3087         (gst_type_find_element_chain), (do_pull_typefind),
3088         (gst_type_find_element_change_state):
3089           Allow typefinding (w/o seeking) in push-mode, simplified version
3090           of what was in 0.8.
3091         * gst/gstutils.c: (gst_buffer_join):
3092         * gst/gstutils.h:
3093           gst_buffer_join() from 0.8.
3094
3095 2005-05-25  Wim Taymans  <wim@fluendo.com>
3096
3097         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3098         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
3099         (gst_pad_send_event), (gst_pad_start_task):
3100         Disable attempt at mode switching until it is figured out.
3101
3102 2005-05-25  Wim Taymans  <wim@fluendo.com>
3103
3104         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
3105         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
3106         (gst_basesink_finish_preroll), (gst_basesink_chain),
3107         (gst_basesink_loop), (gst_basesink_activate),
3108         (gst_basesink_change_state):
3109         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
3110         (gst_basesrc_get_range), (gst_basesrc_loop),
3111         (gst_basesrc_activate):
3112         * gst/elements/gsttee.c: (gst_tee_sink_activate):
3113         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
3114         (gst_real_pad_init), (gst_real_pad_set_property),
3115         (gst_real_pad_get_property), (gst_pad_set_active),
3116         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
3117         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
3118         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
3119         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
3120         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3121         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
3122         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
3123         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
3124         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
3125         (gst_pad_stop_task):
3126         * gst/gstpad.h:
3127         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
3128         (gst_queue_loop), (gst_queue_src_activate):
3129         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
3130         (gst_task_get_state):
3131         * gst/gsttask.h:
3132         * gst/schedulers/threadscheduler.c:
3133         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
3134         Implement gst_pad_pause/start/stop_task(), take STREAM lock
3135         in task function.
3136         Remove ACTIVE pad flag, use FLUSHING everywhere
3137         Added _pad_chain(), _pad_get_range() to call chain/getrange 
3138         functions.
3139         Add locks around IS_FLUSHING when reading.
3140         Take STREAM lock in chain(), get_range() functions so plugins
3141         don't need to take it anymore.
3142         
3143
3144
3145 2005-05-25  Wim Taymans  <wim@fluendo.com>
3146
3147         * tools/gst-launch.c: (event_loop):
3148         Unref message after using its contents instead of
3149         before.
3150
3151 2005-05-24  Wim Taymans  <wim@fluendo.com>
3152
3153         * docs/design/draft-ghostpads.txt:
3154         * docs/design/draft-push-pull.txt:
3155         * docs/design/draft-query.txt:
3156         * docs/design/part-overview.txt:
3157         Docs updates, added general overview doc.
3158
3159 2005-05-21  David Schleef  <ds@schleef.org>
3160
3161         * docs/gst/tmpl/old/GstBin.sgml:
3162         * docs/gst/tmpl/old/GstBuffer.sgml:
3163         * docs/gst/tmpl/old/GstCaps.sgml:
3164         * docs/gst/tmpl/old/GstClock.sgml:
3165         * docs/gst/tmpl/old/GstCompat.sgml:
3166         * docs/gst/tmpl/old/GstData.sgml:
3167         * docs/gst/tmpl/old/GstElement.sgml:
3168         * docs/gst/tmpl/old/GstEvent.sgml:
3169         * docs/gst/tmpl/old/GstIndex.sgml:
3170         * docs/gst/tmpl/old/GstStructure.sgml:
3171         * docs/gst/tmpl/old/GstTag.sgml:
3172         * docs/gst/tmpl/old/cothreads.sgml:
3173         * docs/gst/tmpl/old/cothreads_compat.sgml:
3174         * docs/gst/tmpl/old/gettext.sgml:
3175         * docs/gst/tmpl/old/gobject2gtk.sgml:
3176         * docs/gst/tmpl/old/grammar.tab.sgml:
3177         * docs/gst/tmpl/old/gst-i18n-app.sgml:
3178         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
3179         * docs/gst/tmpl/old/gst_private.sgml:
3180         * docs/gst/tmpl/old/gstaggregator.sgml:
3181         * docs/gst/tmpl/old/gstarch.sgml:
3182         * docs/gst/tmpl/old/gstatomic_impl.sgml:
3183         * docs/gst/tmpl/old/gstbufferstore.sgml:
3184         * docs/gst/tmpl/old/gstdata_private.sgml:
3185         * docs/gst/tmpl/old/gstdisksink.sgml:
3186         * docs/gst/tmpl/old/gstdisksrc.sgml:
3187         * docs/gst/tmpl/old/gstelementfactory.sgml:
3188         * docs/gst/tmpl/old/gstextratypes.sgml:
3189         * docs/gst/tmpl/old/gstfakesink.sgml:
3190         * docs/gst/tmpl/old/gstfakesrc.sgml:
3191         * docs/gst/tmpl/old/gstfdsink.sgml:
3192         * docs/gst/tmpl/old/gstfdsrc.sgml:
3193         * docs/gst/tmpl/old/gstfilesink.sgml:
3194         * docs/gst/tmpl/old/gstfilesrc.sgml:
3195         * docs/gst/tmpl/old/gsthttpsrc.sgml:
3196         * docs/gst/tmpl/old/gstidentity.sgml:
3197         * docs/gst/tmpl/old/gstindexfactory.sgml:
3198         * docs/gst/tmpl/old/gstmarshal.sgml:
3199         * docs/gst/tmpl/old/gstmd5sink.sgml:
3200         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
3201         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
3202         * docs/gst/tmpl/old/gstpadtemplate.sgml:
3203         * docs/gst/tmpl/old/gstpipefilter.sgml:
3204         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
3205         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
3206         * docs/gst/tmpl/old/gstshaper.sgml:
3207         * docs/gst/tmpl/old/gstspider.sgml:
3208         * docs/gst/tmpl/old/gstspideridentity.sgml:
3209         * docs/gst/tmpl/old/gststatistics.sgml:
3210         * docs/gst/tmpl/old/gsttee.sgml:
3211         * docs/gst/tmpl/old/gsttimecache.sgml:
3212         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
3213         * docs/gst/tmpl/old/gstxmlregistry.sgml:
3214         * docs/gst/tmpl/old/gthread-cothreads.sgml:
3215         * docs/gst/tmpl/old/types.sgml:
3216           I didn't intend to add these or check them in.
3217
3218 2005-05-19  David Schleef  <ds@schleef.org>
3219
3220         * configure.ac: Use -no-common everywhere.  In a sane world, it
3221           would be the default in libtool, because without it, you can't
3222           build DLLs on Windows.
3223         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
3224         * docs/gst/gstreamer-sections.txt:
3225         * docs/gst/tmpl/gstcpu.sgml:
3226         * docs/gst/tmpl/gstdata.sgml:
3227         * docs/gst/tmpl/gstthread.sgml:
3228
3229 2005-05-19  David Schleef  <ds@schleef.org>
3230
3231         * gst/gstminiobject.c: (gst_value_set_mini_object),
3232         (gst_value_take_mini_object), (gst_value_get_mini_object):
3233         * gst/gstminiobject.h: Add GValue set/get functions.
3234
3235 2005-05-19  Wim Taymans  <wim@fluendo.com>
3236
3237         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
3238         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
3239         (gst_subbuffer_init), (gst_buffer_is_span_fast):
3240         * gst/gstbuffer.h:
3241         * gst/gstbus.c: (gst_bus_post):
3242         * gst/gstelement.c: (gst_element_get_random_pad):
3243         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
3244         Make subbufer unref the parent in finalize.
3245         some more debugging info.
3246
3247
3248 2005-05-19  Wim Taymans  <wim@fluendo.com>
3249
3250         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3251         (gst_basesink_init), (gst_basesink_finalize),
3252         (gst_basesink_activate), (gst_basesink_change_state):
3253         Don't free preroll queue too early.
3254
3255 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3256
3257         * gst/Makefile.am:
3258         * gst/ROADMAP:
3259           Hi, I'm outdated. Please shoot me.
3260
3261 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3262
3263         * gst/gstpipeline.c: (gst_pipeline_send_event):
3264           Do not access variables after they have been deleted.
3265
3266 2005-05-19  Wim Taymans  <wim@fluendo.com>
3267
3268         * tools/gst-inspect.c: (print_plugin_features):
3269         A plugin feature does unfortunatly not use the
3270         object name yet...
3271
3272 2005-05-18  Wim Taymans  <wim@fluendo.com>
3273
3274         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
3275         Port _span() functions to new subbuffers.
3276
3277 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3278
3279         * gst/gstbin.c: (gst_bin_add_func):
3280           Fix clock settery in bins when adding kids after the clock has
3281           been selected.
3282
3283 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3284
3285         * gst/elements/gstidentity.c: (gst_identity_class_init):
3286           Workaround until signals support GstMiniObject.
3287
3288 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
3289
3290         * gst/gstbuffer.c:
3291         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
3292
3293 2005-05-18  Wim Taymans  <wim@fluendo.com>
3294
3295         * gst/base/Makefile.am:
3296         * gst/base/gstadapter.c: (gst_adapter_base_init),
3297         (gst_adapter_class_init), (gst_adapter_init),
3298         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
3299         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
3300         (gst_adapter_flush), (gst_adapter_available),
3301         (gst_adapter_available_fast):
3302         * gst/base/gstadapter.h:
3303         Ported and added adapter to the base classes.
3304
3305 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3306
3307         * gst/gst.c:
3308         * gst/gstmessage.c:
3309           Make sure the class is reffed/unreffed once before threads can be
3310           used.  Fixes #304551.
3311
3312 2005-05-17  Wim Taymans  <wim@fluendo.com>
3313
3314         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
3315         (gst_basesink_chain_unlocked), (gst_basesink_activate):
3316         * gst/gstminiobject.c: (gst_mini_object_get_type),
3317         (gst_mini_object_free):
3318         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
3319         (gst_pad_push), (gst_pad_push_event):
3320         * gst/gstqueue.c: (gst_queue_change_state):
3321         Don't queue buffers in basesink when we are flushing.
3322         Unref buffer when flushing in basesink.
3323         Flush queue when going to READY
3324         Unref buffer when _push() returns an error.
3325         Don't free MiniObject instance when refcount is incremented
3326         in _finalize() so that we can recover objects.
3327
3328 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
3329
3330         * docs/manual/advanced-schedulers.xml:
3331         * docs/manual/appendix-checklist.xml:
3332         * docs/pwg/advanced-clock.xml:
3333         * docs/pwg/advanced-interfaces.xml:
3334         * docs/pwg/advanced-request.xml:
3335         * docs/pwg/advanced-types.xml:
3336         * docs/pwg/intro-preface.xml:
3337         * examples/plugins/example.c: (gst_example_get_type),
3338         (gst_example_class_init), (gst_example_chain),
3339         (gst_example_set_property), (gst_example_get_property),
3340         (gst_example_change_state), (plugin_init):
3341         * examples/plugins/example.h:
3342           small doc fixes
3343
3344 2005-05-17  Wim Taymans  <wim@fluendo.com>
3345
3346         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
3347         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
3348         * gst/gstqueue.c: (gst_queue_change_state):
3349         Clear queue when going to READY.
3350         Remove IN_SETCAPS flag too.
3351
3352 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
3353
3354         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
3355           Remove implicit cast from gboolean to GstElementStateReturn;
3356           make sure we still return failure in paused => ready case if
3357           the parent class fails to change state and our own stop 
3358           vfunc succeeds.
3359
3360 2005-05-17  Wim Taymans  <wim@fluendo.com>
3361
3362         * tools/gst-launch.c: (event_loop):
3363         Message was unreffed too soon.
3364
3365 2005-05-16  Andy Wingo  <wingo@pobox.com>
3366
3367         * gst/gstbin.c (sink_iterator_filter): Err... um...
3368
3369         * check/gst/gstbin.c (test_ghost_pads): New test for the
3370         ghosting-if-elements-not-in-same-bin behavior.
3371
3372 2005-05-16  David Schleef  <ds@schleef.org>
3373
3374         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
3375         accessing refcount directly.
3376
3377 2005-05-15  David Schleef  <ds@schleef.org>
3378
3379         * check/Makefile.am: remove GstData checks
3380         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
3381         * gst/Makefile.am: add miniobject, remove data
3382         * gst/gst.h: add miniobject, remove data
3383         * gst/gstdata.c: remove
3384         * gst/gstdata.h: remove
3385         * gst/gstdata_private.h: remove
3386         * gst/gsttypes.h: remove GstEvent and GstMessage
3387         * gst/gstelement.c: (gst_element_post_message): fix for API changes
3388         * gst/gstmarshal.list: change BOXED -> OBJECT
3389
3390         Implement GstMiniObject.
3391         * gst/gstminiobject.c:
3392         * gst/gstminiobject.h:
3393
3394         Modify to be subclasses of GstMiniObject.
3395         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
3396         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
3397         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
3398         (gst_subbuffer_get_type), (gst_subbuffer_init),
3399         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
3400         (gst_buffer_span):
3401         * gst/gstbuffer.h:
3402         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
3403         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
3404         (_gst_event_copy), (gst_event_new):
3405         * gst/gstevent.h:
3406         * gst/gstmessage.c: (_gst_message_initialize),
3407         (gst_message_get_type), (gst_message_class_init),
3408         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
3409         (gst_message_new), (gst_message_new_error),
3410         (gst_message_new_warning), (gst_message_new_tag),
3411         (gst_message_new_state_changed), (gst_message_new_application):
3412         * gst/gstmessage.h:
3413         * gst/gstprobe.c: (gst_probe_perform),
3414         (gst_probe_dispatcher_dispatch):
3415         * gst/gstprobe.h:
3416         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
3417         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
3418         (_gst_query_copy), (gst_query_new):
3419
3420         Update elements for GstData -> GstMiniObject changes
3421         * gst/gstquery.h:
3422         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
3423         (gst_queue_chain), (gst_queue_loop):
3424         * gst/elements/gstbufferstore.c:
3425         (gst_buffer_store_add_buffer_func),
3426         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
3427         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3428         (gst_fakesink_render):
3429         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
3430         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
3431         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
3432         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
3433         (gst_filesrc_create_read):
3434         * gst/elements/gstidentity.c: (gst_identity_class_init):
3435         * gst/elements/gsttypefindelement.c:
3436         (gst_type_find_element_src_event), (free_entry_buffers),
3437         (gst_type_find_element_handle_event):
3438         * libs/gst/dataprotocol/dataprotocol.c:
3439         (gst_dp_header_from_buffer):
3440         * libs/gst/dataprotocol/dataprotocol.h:
3441         * libs/gst/dataprotocol/dp-private.h:
3442
3443 2005-05-15  David Schleef  <ds@schleef.org>
3444
3445         * gst/elements/gstelements.c: Don't include headers that were
3446         just removed.
3447
3448 2005-05-15  David Schleef  <ds@schleef.org>
3449
3450         * gst/elements/Makefile.am: Remove some elements that don't
3451         need to be in the core (or even exist at all).
3452         * gst/elements/gstaggregator.c:
3453         * gst/elements/gstaggregator.h:
3454         * gst/elements/gstmd5sink.c:
3455         * gst/elements/gstmd5sink.h:
3456         * gst/elements/gstmultifilesrc.c:
3457         * gst/elements/gstmultifilesrc.h:
3458         * gst/elements/gstpipefilter.c:
3459         * gst/elements/gstpipefilter.h:
3460         * gst/elements/gstshaper.c:
3461         * gst/elements/gstshaper.h:
3462         * gst/elements/gststatistics.c:
3463         * gst/elements/gststatistics.h:
3464         * po/POTFILES.in: Remove above files.
3465
3466 2005-05-14  Andy Wingo  <wingo@pobox.com>
3467
3468         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
3469         so as to get the refs right.
3470         (sink_iterator_filter): New function, wraps bin_element_is_sink,
3471         unreffing objects that don't pass the filter.
3472
3473         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
3474         gst_element_set_bus.
3475         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
3476         normal cases, this will destroy the bus.
3477
3478         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
3479         object.
3480
3481         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
3482         has no sinks.
3483
3484 2005-05-13  Andy Wingo  <wingo@pobox.com>
3485
3486         * gst/gstutils.c (gst_element_link_pads): Instead of calling
3487         gst_pad_link, call pad_link_maybe_ghosting,
3488         (pad_link_maybe_ghosting): Links pads, making sure that the
3489         elements being linked are in the same bin.
3490         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
3491         Helpers for pad_link_maybe_ghosting.
3492
3493 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3494
3495         * configure.ac:
3496           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
3497
3498 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3499
3500         * docs/design/part-element-source.txt:
3501           Mention GstPushSrc
3502
3503 2005-05-12  Wim Taymans  <wim@fluendo.com>
3504
3505         * gst/base/gstbasesink.c: (gst_basesink_init),
3506         (gst_basesink_activate):
3507         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
3508         (gst_basesrc_is_seekable):
3509         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
3510         (bin_element_is_sink), (gst_bin_change_state):
3511         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3512         * gst/gstelement.h:
3513         Identify sinks by their flag to avoid overly complicated
3514         checks (fow now).
3515         Do state changes even for elements not reachable from the
3516         sinks.
3517         BaseSink is a sink now :)
3518         Some more debugging info in the basesrc.
3519
3520
3521 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3522
3523         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
3524           Implement _query on a bin, similar to _send_event.
3525
3526 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
3527
3528         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
3529           Discont event offset format should be GST_FORMAT_BYTES,
3530           not GST_FORMAT_TIME.
3531
3532 2005-05-12  Wim Taymans  <wim@fluendo.com>
3533
3534         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
3535         Same fix as Ronald's but without the signal. 
3536
3537 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3538
3539         * gst/gstutils.c: (gst_element_query_position):
3540           No, an element is not a pad.
3541
3542 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3543
3544         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
3545         (gst_bin_get_state):
3546           If a child is removed from a bin while we remove the child from
3547           the bin and while we're retrieving its state, signal this to the
3548           get_state function so we abort the wait (instead of waiting for
3549           a timeout) and can immediately re-iterate over all other elements.
3550
3551 2005-05-12  Wim Taymans  <wim@fluendo.com>
3552
3553         * gst/base/Makefile.am:
3554         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
3555         (gst_basesrc_start):
3556         * gst/base/gstbasesrc.h:
3557         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
3558         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
3559         (gst_pushsrc_init), (gst_pushsrc_create):
3560         * gst/base/gstpushsrc.h:
3561         Added is_seekable to BaseSrc
3562         Added simple PushSrc.
3563
3564 2005-05-11  Wim Taymans  <wim@fluendo.com>
3565
3566         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3567         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3568         (gst_element_link_pads), (gst_element_query_position),
3569         (gst_element_query_convert), (intersect_caps_func),
3570         (gst_pad_query_position), (gst_pad_query_convert):
3571         Fix refcounting in utils function.
3572         No point in trying to activate a pad when it's added, it could
3573         be added from the state change function and then we deadlock, the
3574         element has to decide what to do.
3575
3576 2005-05-10  Andy Wingo  <wingo@pobox.com>
3577
3578         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
3579         *all* the arguments.
3580
3581         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
3582         stream lock if it's a FLUSH_DONE; normal flushes don't get the
3583         lock (according to the docs -- if this is wrong change the docs).
3584
3585         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
3586         flush messages in the NULL state.
3587
3588         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
3589         message immediately and return.
3590         (gst_bus_set_flushing): New function. If a bus is flushing, it
3591         flushes out any queued messages and immediately unrefs new
3592         messages. This is so when an element goes to NULL, all of the
3593         unhandled messages coming from it can be freed, and their
3594         references to the element dropped. In other words: message source
3595         ref considered harmful :P
3596
3597         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
3598         we're finished with it.
3599
3600         * gst/gstmessage.c (gst_message_new_state_changed): 
3601
3602 2005-05-10  Wim Taymans  <wim@fluendo.com>
3603
3604         * gst/gstvalue.c: (gst_value_compare_flags),
3605         (gst_value_serialize_flags), (gst_value_deserialize_flags),
3606         (_gst_value_initialize):
3607         Added flags serialize/deserialize/compare code.
3608
3609 2005-05-09  Andy Wingo  <wingo@pobox.com>
3610
3611         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
3612         Intersect the peer's caps with our caps.
3613
3614 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3615
3616         * gst/base/gsttypefindhelper.c: (helper_find_peek):
3617         * gst/elements/gsttypefindelement.c: (find_peek):
3618           Handle negative offsets better. Fixes decodebin.
3619
3620 2005-05-09  Wim Taymans  <wim@fluendo.com>
3621
3622         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
3623         (gst_base_transform_event):
3624         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
3625         Implement accept_caps.
3626         Fix silly lock/unlock mismatch in base class.
3627
3628 2005-05-09  Wim Taymans  <wim@fluendo.com>
3629
3630         * docs/design/draft-push-pull.txt:
3631         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
3632         * gst/elements/gstfilesink.c: (gst_filesink_init),
3633         (gst_filesink_query):
3634         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3635         (gst_type_find_handle_src_query), (find_element_get_length):
3636         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
3637         * gst/gstelement.h:
3638         * gst/gstmessage.c:
3639         * gst/gstmessage.h:
3640         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
3641         (gst_real_pad_get_caps_unlocked),
3642         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
3643         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3644         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
3645         (gst_real_pad_dispose), (gst_real_pad_finalize),
3646         (gst_pad_load_and_link), (gst_pad_save_thyself),
3647         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
3648         (gst_pad_check_pull_range), (gst_pad_pull_range),
3649         (gst_pad_template_get_type), (gst_pad_template_class_init),
3650         (gst_pad_template_init), (gst_pad_template_dispose),
3651         (name_is_valid), (gst_static_pad_template_get),
3652         (gst_pad_template_new), (gst_static_pad_template_get_caps),
3653         (gst_pad_template_get_caps), (gst_pad_set_element_private),
3654         (gst_pad_get_element_private), (gst_pad_start_task),
3655         (gst_pad_pause_task), (gst_pad_stop_task),
3656         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
3657         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
3658         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
3659         (gst_ghost_pad_new):
3660         * gst/gstpad.h:
3661         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
3662         (gst_query_new_position), (gst_query_set_position),
3663         (gst_query_parse_position), (gst_query_new_convert),
3664         (gst_query_set_convert), (gst_query_parse_convert):
3665         * gst/gstquery.h:
3666         * gst/gstqueryutils.c:
3667         * gst/gstqueryutils.h:
3668         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3669         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3670         (gst_queue_handle_src_query):
3671         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3672         (gst_element_query_position), (gst_element_query_convert),
3673         (intersect_caps_func), (gst_pad_query_position),
3674         (gst_pad_query_convert):
3675         * gst/gstutils.h:
3676         * tools/gst-inspect.c: (print_pad_info):
3677         * tools/gst-xmlinspect.c: (print_element_info):
3678         Remove old query functions. Ported old code.
3679         Added position/convert helper functions to gstutils.
3680         Reordered gstpad.c code, grouping relevant things.
3681         Remove gst_message_new(), always need to speficy a specific
3682         message.
3683
3684
3685 2005-05-09  Andy Wingo  <wingo@pobox.com>
3686
3687         * gst/gstiterator.h: Add some includes.
3688
3689         * gst/gstqueryutils.h: Include more headers.
3690
3691         * gst/gstpad.h:
3692         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
3693         some uses of gst_pad_query.
3694
3695         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
3696         NULL out parameters.
3697         (gst_query_new_position): New proc, allocates a new position
3698         query.
3699
3700         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
3701         gstqueryutils.c to the build.
3702
3703         * gst/gststructure.c (gst_structure_set_valist): Implement with
3704         the generic G_VALUE_COLLECT.
3705         
3706 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
3707
3708         * gst/Makefile.am: (gst_headers):
3709         Added gstqueryutils.h to the list of headers to install, that was
3710         a 'nachty' move wingo :)
3711
3712 2005-05-06  Andy Wingo  <wingo@pobox.com>
3713
3714         * gst/gstquery.h
3715         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
3716         GstData, init a memchunk.
3717         (standard_definitions): Add a few query types, deprecate a few.
3718         (gst_query_get_type): New proc.
3719         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
3720         implementation.
3721         (gst_query_new_application, gst_query_get_structure): New public
3722         procs.
3723
3724         * docs/design/draft-query.txt: Removed LINKS from the query types,
3725         because all the rest can be dispatched to other pads -- seemed
3726         ugly to have a query that couldn't be dispatched. internal_links
3727         is fine as a pad method.
3728
3729         * gst/gstpad.h: Add query2 as a pad method, add the new functions
3730         in gstpad.c, but maintain binary compatibility for the moment.
3731         Will fix before 0.9 is out.
3732
3733         * gst/gstqueryutils.c: 
3734         * gst/gstqueryutils.h: New files, implement 3 methods for each
3735         query type: parse_query, parse_response, and set. Probably need an
3736         allocator as well.
3737
3738         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
3739
3740         * gst/elements/gstfilesink.c (gst_filesink_query2):
3741         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
3742         query_types, and formats methods.
3743
3744         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
3745         (gst_pad_set_query2_function): New functions.
3746         (gst_real_pad_init): Set query2_default as the default query2
3747         function. Basically just dispatches to internally linked pads.
3748
3749         Needs review!
3750         
3751         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
3752         without using the atomic operations. Only one thread can possibly
3753         be accessing the data at this point. Changed so as to avoid
3754         gst_atomic operations.
3755
3756 2005-05-06  Wim Taymans  <wim@fluendo.com>
3757
3758         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
3759         Also set caps if we use the fallback buffer alloc.
3760
3761 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
3762
3763         * docs/gst/Makefile.am:
3764         * docs/gst/gstreamer-docs.sgml:
3765         * docs/gst/gstreamer-sections.txt:
3766         * docs/gst/tmpl/gstatomic.sgml:
3767         * docs/gst/tmpl/gstmemchunk.sgml:
3768         * testsuite/elements/struct_i386.h:
3769         * win32/GStreamer.vcproj:
3770         * win32/Makefile:
3771           Purge GstAtomic stuff from docs and win32 makefiles as well
3772
3773 2005-05-06  Wim Taymans  <wim@fluendo.com>
3774
3775         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
3776         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
3777         * gst/gstpad.c: (gst_pad_peer_get_caps):
3778         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3779         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3780         (gst_queue_src_activate), (gst_queue_change_state):
3781         * gst/gstqueue.h:
3782         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3783         (intersect_caps_func):
3784         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
3785         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
3786         Some fixes for the peer_get_caps() change.
3787
3788 2005-05-06  Wim Taymans  <wim@fluendo.com>
3789
3790         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
3791         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
3792         (gst_basesink_activate):
3793         Actually do something with error codes returned from the push
3794         functions.
3795
3796 2005-05-06  Wim Taymans  <wim@fluendo.com>
3797
3798         * docs/design/part-element-sink.txt:
3799         * docs/design/part-element-source.txt:
3800         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3801         (gst_basesink_event), (gst_basesink_activate):
3802         * gst/base/gstbasesink.h:
3803         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
3804         (gst_basesrc_activate):
3805         * gst/base/gstbasesrc.h:
3806         * gst/gstelement.c: (gst_element_pads_activate):
3807         Some more documentation.
3808         Fixed scheduling decision in _pads_activate().
3809
3810 2005-05-05  Andy Wingo  <wingo@pobox.com>
3811
3812         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
3813         the test suite.
3814
3815 2005-05-05  Wim Taymans  <wim@fluendo.com>
3816
3817         * gst/base/Makefile.am:
3818         * gst/base/gstbasesink.h:
3819         * gst/base/gstbasesrc.c: (gst_basesrc_init),
3820         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
3821         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
3822         (gst_collectpads_class_init), (gst_collectpads_init),
3823         (gst_collectpads_finalize), (gst_collectpads_new),
3824         (gst_collectpads_set_function), (gst_collectpads_add_pad),
3825         (find_pad), (gst_collectpads_remove_pad),
3826         (gst_collectpads_is_active), (gst_collectpads_collect),
3827         (gst_collectpads_collect_range), (gst_collectpads_start),
3828         (gst_collectpads_stop), (gst_collectpads_peek),
3829         (gst_collectpads_pop), (gst_collectpads_available),
3830         (gst_collectpads_read), (gst_collectpads_flush),
3831         (gst_collectpads_chain):
3832         * gst/base/gstcollectpads.h:
3833         * gst/elements/Makefile.am:
3834         * gst/elements/gstelements.c:
3835         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3836         (gst_fakesink_get_times), (gst_fakesink_event),
3837         (gst_fakesink_preroll), (gst_fakesink_render):
3838         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
3839         (gst_filesink_init), (gst_filesink_set_location),
3840         (gst_filesink_open_file), (gst_filesink_close_file),
3841         (gst_filesink_pad_query), (gst_filesink_event),
3842         (gst_filesink_render), (gst_filesink_change_state):
3843         * gst/elements/gstfilesink.h:
3844         Added object to help in making collect pad based elements.
3845         Ported filesink.
3846         Make event function in sink baseclass return gboolean.
3847
3848 2005-05-05  Wim Taymans  <wim@fluendo.com>
3849
3850         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
3851         (gst_bin_get_by_name):
3852         * gst/gstbuffer.h:
3853         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
3854         (gst_clock_finalize):
3855         * gst/gstdata.c: (gst_data_replace):
3856         * gst/gstdata.h:
3857         * gst/gstelement.c: (gst_element_request_pad),
3858         (gst_element_pads_activate):
3859         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
3860         (gst_object_unref):
3861         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3862         (gst_pad_set_checkgetrange_function),
3863         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
3864         (gst_pad_check_pull_range), (gst_pad_pull_range),
3865         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3866         (gst_pad_pause_task), (gst_pad_stop_task):
3867         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3868         (gst_element_request_pad), (gst_pad_proxy_getcaps):
3869         Fix name lookup in GstBin.
3870         Added _data_replace() function and _buffer_replace()
3871         Use finalize method to clean up clock.
3872         Fix refcounting on request pads.
3873         Fix pad schedule mode error.
3874         Some more object refcounting debug info,
3875
3876
3877 2005-05-04  Andy Wingo <wingo@pobox.com>
3878
3879         * check/Makefile.am:
3880         * docs/gst/tmpl/gstatomic.sgml:
3881         * docs/gst/tmpl/gstplugin.sgml:
3882         * gst/base/gstbasesink.c: (gst_basesink_activate):
3883         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
3884         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
3885         (gst_basesrc_query), (gst_basesrc_set_property),
3886         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
3887         (gst_basesrc_activate):
3888         * gst/base/gstbasesrc.h:
3889         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
3890         (gst_base_transform_src_activate):
3891         * gst/elements/gstelements.c:
3892         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3893         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
3894         * gst/elements/gsttee.c: (gst_tee_sink_activate):
3895         * gst/elements/gsttypefindelement.c: (find_element_get_length),
3896         (gst_type_find_element_checkgetrange),
3897         (gst_type_find_element_activate):
3898         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
3899         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
3900         (gst_caps_load_thyself):
3901         * gst/gstelement.c: (gst_element_pads_activate),
3902         (gst_element_save_thyself), (gst_element_restore_thyself):
3903         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
3904         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
3905         * gst/gstpad.h:
3906         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
3907         (gst_xml_parse_file), (gst_xml_parse_memory),
3908         (gst_xml_get_element), (gst_xml_make_element):
3909         * gst/indexers/gstfileindex.c: (gst_file_index_load),
3910         (_file_index_id_save_xml), (gst_file_index_commit):
3911         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
3912         (read_enum), (load_pad_template), (load_feature), (load_plugin),
3913         (load_paths):
3914         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
3915         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
3916         * tools/gst-complete.c: (main):
3917         * tools/gst-compprep.c: (main):
3918         * tools/gst-inspect.c: (print_element_properties_info):
3919         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
3920         * tools/gst-xmlinspect.c: (print_element_properties):
3921         GCC 4 fixen.
3922         
3923 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
3924
3925         * gst/gstplugin.c: (gst_plugin_check_module),
3926         (gst_plugin_check_file), (gst_plugin_load_file):
3927             apply patch from #172526 to make register work on MacOSX
3928
3929 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3930
3931         * docs/gst/tmpl/gstconfig.sgml:
3932         * gst/gstconfig.h.in:
3933           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
3934         * testsuite/debug/printf_extension.c: (main):
3935           Do not use GST_PTR_FORMAT on pointers to types with
3936           sizeof < sizeof(gpointer).  Fixes test on 64-bit
3937         * testsuite/elements/property.h:
3938           use correct printf format
3939
3940 2005-05-02  Wim Taymans  <wim@fluendo.com>
3941
3942         * docs/design/draft-push-pull.txt:
3943         * docs/design/draft-query.txt:
3944         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
3945         (gst_basesrc_start):
3946         Added draft for new query API.
3947         Added draft for better selecting scheduling methods.
3948         Make basesrc ignore length if the subclass does not support
3949         it.
3950
3951 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3952
3953         * gst/Makefile.am:
3954           possible fixes for automake-1.5 - _LIBADD is reserved
3955
3956 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3957
3958         * docs/faq/Makefile.am:
3959         * docs/manual/Makefile.am:
3960         * docs/manuals.mak:
3961         * docs/pwg/Makefile.am:
3962         * gst/Makefile.am:
3963           possible fixes for automake-1.5
3964
3965 2005-04-28  Wim Taymans  <wim@fluendo.com>
3966
3967         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3968         (gst_basesink_pad_getcaps), (gst_basesink_init),
3969         (gst_basesink_do_sync):
3970         * gst/gstclock.c: (gst_clock_entry_new):
3971         * gst/gstevent.c: (gst_event_discont_get_value):
3972         * gst/gstpipeline.c: (pipeline_bus_handler),
3973         (gst_pipeline_change_state):
3974         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
3975         Better debugging of clocking info.
3976         Allow NULL values when getting discont values.
3977
3978 2005-04-27  Wim Taymans  <wim@fluendo.com>
3979
3980         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
3981         * check/gst/gstpad.c: (gst_pad_suite):
3982         Increase timeout for checks.
3983
3984 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3985
3986         * check/Makefile.am:
3987           fix the broken rule for cleanup.  Apparently this rule is
3988           only needed on FC2, so maybe this warrants further autotool
3989           inspection.
3990
3991 2005-04-26  Wim Taymans  <wim@fluendo.com>
3992
3993         * gst/gsttrashstack.h:
3994         Ooohh. a nasty one! After having a failed pop() from the stack,
3995         it's possible that the stack is empty. In that case, don't
3996         follow the NULL pointer.
3997
3998 2005-04-25  Wim Taymans  <wim@fluendo.com>
3999
4000         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4001         (gst_pad_set_checkgetrange_function),
4002         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
4003         (gst_pad_check_pull_range), (gst_pad_pull_range),
4004         (gst_static_pad_template_get_caps), (gst_pad_start_task),
4005         (gst_pad_pause_task), (gst_pad_stop_task):
4006         * gst/gstplugin.c: (gst_plugin_load):
4007         * gst/gstplugin.h:
4008         Remove gst_library_load as it does more harm than good with
4009         the new g_module flags.
4010         Revert bogus caps template check in pad linking, pad caps
4011         are important when linking not the template, which is more
4012         general than the current caps.
4013
4014 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4015
4016         * gst/autoplug/.cvsignore:
4017         * gst/autoplug/Makefile.am:
4018         * gst/autoplug/gstsearchfuncs.c:
4019         * gst/autoplug/gstsearchfuncs.h:
4020         * gst/autoplug/gstspider.c:
4021         * gst/autoplug/gstspider.h:
4022         * gst/autoplug/gstspideridentity.c:
4023         * gst/autoplug/gstspideridentity.h:
4024         * gst/autoplug/spidertest.c:
4025           Die, spider, die.
4026
4027 2005-04-25  Wim Taymans  <wim@fluendo.com>
4028
4029         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4030         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
4031         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
4032         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
4033         * gst/gstpad.h:
4034         Added stubs for unimplemented functions. 
4035
4036 2005-04-24  David Schleef  <ds@schleef.org>
4037
4038         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
4039         please fix.
4040
4041 2005-04-24  David Schleef  <ds@schleef.org>
4042
4043         Convert everything from GstAtomicInt to g_atomic_int_*, and
4044         remove gstatomic.
4045         * gst/Makefile.am:
4046         * gst/gstatomic.c:
4047         * gst/gstatomic.h:
4048         * gst/gstatomic_impl.h:
4049         * gst/gstbuffer.c:
4050         * gst/gstcaps.c:
4051         * gst/gstcaps.h:
4052         * gst/gstclock.c:
4053         * gst/gstclock.h:
4054         * gst/gstdata.c:
4055         * gst/gstdata.h:
4056         * gst/gstdata_private.h:
4057         * gst/gstevent.c:
4058         * gst/gstinfo.c:
4059         * gst/gstinfo.h:
4060         * gst/gstmessage.c:
4061         * gst/gstobject.c:
4062         * gst/gstobject.h:
4063         * gst/gststructure.c:
4064         * gst/gststructure.h:
4065         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
4066         * gst/gstutils.h:
4067
4068 2005-04-24  David Schleef  <ds@schleef.org>
4069
4070         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
4071         make the regressions tests work.  Remove some code that is no
4072         longer true.
4073         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
4074         Disable warning for pads without templates.
4075
4076 2005-04-24  David Schleef  <ds@schleef.org>
4077
4078         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
4079         functions that handle filtered links.
4080         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
4081         removed functions.
4082         * gst/gstutils.c: Fix/remove utility functions that handle
4083         filtered caps.
4084         * gst/gstutils.h:
4085         * gst/gstvalue.c: Add serialization/deserialization of caps
4086         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
4087         requires fixing so that the filter caps notation creates
4088         a capsfilter element and sets the filter_caps property.  I
4089         think everyone probably wants to keep the shorthand notation.
4090         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
4091         * docs/gst/tmpl/gstpad.sgml:
4092
4093         * gst/elements/gstelements.c: Register capsfilter element.
4094         * gst/Makefile.am: fix spacing
4095         * docs/random/ds/0.9-suggested-changes: random
4096
4097 2005-04-23  David Schleef  <ds@schleef.org>
4098
4099         * gst/elements/Makefile.am:
4100         * gst/elements/gstcapsfilter.c: New element that acts like an
4101         identity, but filters caps.  Will eventually replace filtered
4102         caps in pad linking.
4103         * gst/gstutils.c: (gst_element_create_all_pads): New function
4104         to create all the ALWAYS pads that are registered with an
4105         element class.  This functionality should eventually be
4106         merged in with GstElement initialization.
4107         * gst/gstutils.h:
4108         * testsuite/trigger/README: part of trigger test code that should
4109         have been checked in a long time ago.
4110
4111 2005-04-23  David Schleef  <ds@schleef.org>
4112
4113         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
4114         needed with new versions of libtool (nobody will confirm this),
4115         and hard to carry around.
4116         * gst/autoplug/Makefile.am:
4117         * gst/base/Makefile.am:
4118         * gst/elements/Makefile.am:
4119         * gst/indexers/Makefile.am:
4120         * gst/schedulers/Makefile.am:
4121         * libs/gst/bytestream/Makefile.am:
4122         * libs/gst/control/Makefile.am:
4123         * libs/gst/dataprotocol/Makefile.am:
4124         * libs/gst/getbits/Makefile.am:
4125
4126 2005-04-21  Wim Taymans  <wim@fluendo.com>
4127
4128         * docs/design/draft-push-pull.txt:
4129         * docs/design/part-MT-refcounting.txt:
4130         * docs/design/part-TODO.txt:
4131         * docs/design/part-caps.txt:
4132         * docs/design/part-events.txt:
4133         * docs/design/part-gstbus.txt:
4134         * docs/design/part-gstpipeline.txt:
4135         * docs/design/part-messages.txt:
4136         * docs/design/part-push-pull.txt:
4137         * docs/design/part-query.txt:
4138         Some more docs.
4139
4140 2005-04-21  Wim Taymans  <wim@fluendo.com>
4141
4142         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
4143         (gst_message_new), (gst_message_new_error),
4144         (gst_message_new_warning), (gst_message_new_tag),
4145         (gst_message_new_state_changed), (gst_message_new_application),
4146         (gst_message_get_structure):
4147         * gst/gstmessage.h:
4148         * gst/gststructure.c: (gst_structure_set_parent_refcount),
4149         (gst_structure_copy_conditional):
4150         Use parent refcount in GstMessage to ensure GstStructure
4151         consistency.
4152         Cleaned up headers a bit.
4153         
4154
4155 2005-04-20  Wim Taymans  <wim@fluendo.com>
4156
4157         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4158         (gst_basesink_pad_getcaps), (gst_basesink_init),
4159         (gst_basesink_chain_unlocked):
4160         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
4161         (gst_type_find_helper):
4162         * gst/elements/gsttypefindelement.c:
4163         (gst_type_find_element_have_type), (gst_type_find_element_init),
4164         (stop_typefinding), (gst_type_find_element_handle_event),
4165         (find_suggest), (gst_type_find_element_chain),
4166         (gst_type_find_element_checkgetrange),
4167         (gst_type_find_element_getrange), (do_typefind),
4168         (gst_type_find_element_activate):
4169         * gst/gstbuffer.c: (_gst_buffer_sub_free),
4170         (gst_buffer_default_free), (gst_buffer_default_copy),
4171         (gst_buffer_set_caps):
4172         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
4173         (gst_caps_replace):
4174         * gst/gstmessage.c: (gst_message_new),
4175         (gst_message_new_state_changed):
4176         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4177         (gst_pad_set_checkgetrange_function),
4178         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
4179         (gst_pad_set_caps), (gst_pad_check_pull_range),
4180         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
4181         * gst/gstpad.h:
4182         * gst/gsttypefind.c: (gst_type_find_register):
4183         Make gst_caps_replace() work like other _replace() functions.
4184         Use _caps_replace() where possible.
4185         Make sure _message_new() initialises its field.
4186         Add gst_static_pad_template_get_caps()
4187
4188
4189 2005-04-18  Andy Wingo  <wingo@pobox.com>
4190
4191         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
4192         on the peer, not the pad. I think that was a typo. Pass an extra
4193         arg to see if random access is possible. Activate the pads as
4194         PULL_RANGE if possible.
4195
4196         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
4197
4198         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
4199         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
4200         to PROP_....
4201
4202 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4203
4204         * docs/faq/using.xml:
4205           Add note on gstreamer-properties (#154996).
4206
4207 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4208
4209         * docs/random/bbb/optional-properties:
4210           Some analysis on optional properties.
4211
4212 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4213
4214         * docs/gst/tmpl/gstelementfactory.sgml:
4215         * gst/gstelement.h:
4216         * gst/gstelementfactory.c: (gst_element_factory_init),
4217         (gst_element_factory_cleanup), (gst_element_register),
4218         (__gst_element_factory_add_static_pad_template),
4219         (gst_element_factory_get_static_pad_templates),
4220         (gst_element_factory_can_src_caps),
4221         (gst_element_factory_can_sink_caps):
4222         * gst/registries/Makefile.am:
4223         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
4224         (gst_xml_registry_class_init), (gst_xml_registry_init),
4225         (gst_xml_registry_new), (gst_xml_registry_set_property),
4226         (gst_xml_registry_get_property), (get_time), (make_dir),
4227         (gst_xml_registry_get_perms_func),
4228         (plugin_times_older_than_recurse), (plugin_times_older_than),
4229         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
4230         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
4231         (add_to_char_array), (read_string), (read_uint), (read_enum),
4232         (load_pad_template), (load_feature), (load_plugin), (load_paths),
4233         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
4234         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
4235         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
4236         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
4237         (gst_xml_registry_rebuild):
4238         * gst/registries/gstlibxmlregistry.h:
4239         * tools/gst-compprep.c: (main):
4240         * tools/gst-inspect.c: (print_pad_templates_info):
4241         * tools/gst-xmlinspect.c: (print_element_info):
4242           Use libxml2 for registry parsing, use staticpadtemplates in
4243           elementfactories. Makes gst_init() +/- 10x faster.
4244
4245 2005-04-12  Wim Taymans  <wim@fluendo.com>
4246
4247         * gst/base/Makefile.am:
4248         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4249         (gst_basesink_pad_getcaps), (gst_basesink_init),
4250         (gst_basesink_event), (gst_basesink_change_state):
4251         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4252         (gst_basesrc_init), (gst_basesrc_query),
4253         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
4254         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
4255         (gst_basesrc_check_get_range), (gst_basesrc_loop),
4256         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
4257         (gst_basesrc_stop), (gst_basesrc_activate),
4258         (gst_basesrc_change_state):
4259         * gst/base/gsttypefindhelper.c: (helper_find_peek),
4260         (helper_find_suggest), (gst_type_find_helper):
4261         * gst/base/gsttypefindhelper.h:
4262         * gst/elements/Makefile.am:
4263         * gst/elements/gstelements.c:
4264         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
4265         (gst_fakesink_get_times), (gst_fakesink_event),
4266         (gst_fakesink_preroll), (gst_fakesink_render):
4267         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4268         (gst_fakesrc_init), (gst_fakesrc_event_handler),
4269         (gst_fakesrc_get_property), (gst_fakesrc_create),
4270         (gst_fakesrc_start), (gst_fakesrc_stop):
4271         * gst/elements/gstfakesrc.h:
4272         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
4273         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
4274         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
4275         (gst_filesrc_create_read), (gst_filesrc_create),
4276         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
4277         (gst_filesrc_start):
4278         * gst/elements/gsttypefindelement.c:
4279         (gst_type_find_element_have_type), (gst_type_find_element_init),
4280         (start_typefinding), (stop_typefinding), (push_buffer_store),
4281         (gst_type_find_element_handle_event),
4282         (gst_type_find_element_chain),
4283         (gst_type_find_element_checkgetrange),
4284         (gst_type_find_element_getrange), (do_typefind),
4285         (gst_type_find_element_activate),
4286         (gst_type_find_element_change_state):
4287         * gst/elements/gsttypefindelement.h:
4288         * gst/gstpipeline.c: (pipeline_bus_handler):
4289         Added typefind helper.
4290         Small preroll fix in the base sink.
4291         Disable typefind code in basesrc.
4292         Crude port of typefindelement.
4293         Fakesrc cleanups.
4294
4295
4296 2005-04-11  Wim Taymans  <wim@fluendo.com>
4297
4298         * check/gst/gstbus.c: (gstbus_suite):
4299         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
4300         * check/gstcheck.h:
4301           Fix up the timeout so that the test does not fail.
4302
4303 2005-04-06  Wim Taymans  <wim@fluendo.com>
4304
4305         * gst/base/README:
4306         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4307         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
4308         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
4309         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
4310         (gst_basesrc_check_get_range), (gst_basesrc_loop),
4311         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
4312         (gst_basesrc_stop), (gst_basesrc_activate),
4313         (gst_basesrc_change_state), (basesrc_find_peek),
4314         (basesrc_find_suggest), (gst_basesrc_type_find):
4315         * gst/base/gstbasesrc.h:
4316         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
4317         (gst_filesrc_class_init), (gst_filesrc_init),
4318         (gst_filesrc_finalize), (gst_filesrc_set_location),
4319         (gst_filesrc_set_property), (gst_filesrc_get_property),
4320         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
4321         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
4322         (gst_filesrc_create_read), (gst_filesrc_create),
4323         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
4324         * gst/elements/gstfilesrc.h:
4325         * gst/gstelement.c: (gst_element_get_state_func),
4326         (gst_element_lost_state), (gst_element_pads_activate):
4327         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4328         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
4329         (gst_pad_pull_range):
4330         * gst/gstpad.h:
4331         More work on the generic source base class, implement seeking,
4332         query.
4333         Make filesrc extend the base source class.
4334         Added gst_pad_set_checkgetrange_function to GstPad.
4335
4336 2005-04-06  Andy Wingo  <wingo@pobox.com>
4337
4338         * pkgconfig/gstreamer-base.pc.in:
4339         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
4340
4341         * pkgconfig/Makefile.am:
4342         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
4343
4344 2005-04-04  Wim Taymans  <wim@fluendo.com>
4345
4346         * gst/base/Makefile.am:
4347         * gst/base/README:
4348         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4349         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4350         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4351         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
4352         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4353         (gst_basesrc_base_init), (gst_basesrc_class_init),
4354         (gst_basesrc_init), (gst_basesrc_get_formats),
4355         (gst_basesrc_get_query_types), (gst_basesrc_query),
4356         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
4357         (gst_basesrc_set_property), (gst_basesrc_get_property),
4358         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
4359         (gst_basesrc_loop), (gst_basesrc_activate),
4360         (gst_basesrc_change_state):
4361         * gst/base/gstbasesrc.h:
4362         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
4363         (gst_fakesrc_class_init), (gst_fakesrc_init),
4364         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
4365         (gst_fakesrc_get_property), (gst_fakesrc_create):
4366         * gst/elements/gstfakesrc.h:
4367         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
4368         (gst_filesrc_open_file), (gst_filesrc_loop),
4369         (gst_filesrc_activate), (filesrc_find_peek),
4370         (gst_filesrc_type_find):
4371         Made base source class, make fakesrc extend it.
4372         Add comments to basesink class.
4373         Some filesrc cleanup.
4374
4375 2005-03-31  David Schleef  <ds@schleef.org>
4376
4377         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
4378         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
4379         expected to link against libgstreamer.
4380         * gst/base/Makefile.am: link against libgstreamer
4381         * gst/elements/Makefile.am: same
4382
4383 2005-03-31  Andy Wingo  <wingo@pobox.com>
4384
4385         * tests/instantiate/Makefile.am:
4386         * tests/instantiate/caps.c: Add test to test speed of caps copy
4387         and free.
4388
4389         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
4390         GMemChunk to be fair.
4391
4392         * gst/gsttrashstack.h: Remove warning about using the fallback
4393         trash stack implementation, it's still faster than malloc.
4394
4395 2005-03-30  Andy Wingo  <wingo@pobox.com>
4396
4397         * tests/complexity.c: Add a copyright.
4398
4399 2005-03-31  Wim Taymans  <wim@fluendo.com>
4400
4401         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
4402         (gst_base_transform_class_init), (gst_base_transform_init),
4403         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
4404         (gst_base_transform_get_property),
4405         (gst_base_transform_sink_activate),
4406         (gst_base_transform_src_activate),
4407         (gst_base_transform_change_state):
4408         * gst/base/gstbasetransform.h:
4409         * gst/elements/gstidentity.c: (gst_identity_class_init),
4410         (gst_identity_event), (gst_identity_check_perfect),
4411         (gst_identity_transform), (gst_identity_start),
4412         (gst_identity_stop):
4413         Added start/stop methods to transform base class so subclasses 
4414         don't need to deal with state changes even.
4415
4416 2005-03-31  Wim Taymans  <wim@fluendo.com>
4417
4418         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
4419         (gst_event_new_discontinuous), (gst_event_discont_get_value):
4420         * gst/gstevent.h:
4421         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4422         (gst_pad_pull_range):
4423         Added rate to the discont event to prepare for variable speed
4424         and reverse playback.
4425
4426 2005-03-29  David Schleef  <ds@schleef.org>
4427
4428         * configure.ac:
4429         * testsuite/trigger/Makefile.am:
4430         * testsuite/trigger/trigger.c: A little example program to show
4431         how trigger-based elements can work.
4432
4433 2005-03-29  Wim Taymans  <wim@fluendo.com>
4434
4435         * gst/base/Makefile.am:
4436         * gst/base/README:
4437         * gst/base/gstbasesink.c: (gst_basesink_get_type),
4438         (gst_basesink_base_init), (gst_basesink_class_init),
4439         (gst_basesink_pad_getcaps), (gst_basesink_init),
4440         (gst_basesink_activate), (gst_basesink_change_state):
4441         * gst/base/gstbasesink.h:
4442         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
4443         (gst_base_transform_base_init), (gst_base_transform_finalize),
4444         (gst_base_transform_class_init), (gst_base_transform_init),
4445         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
4446         (gst_base_transform_event), (gst_base_transform_getrange),
4447         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
4448         (gst_base_transform_set_property),
4449         (gst_base_transform_get_property),
4450         (gst_base_transform_sink_activate),
4451         (gst_base_transform_src_activate),
4452         (gst_base_transform_change_state):
4453         * gst/base/gstbasetransform.h:
4454         * gst/elements/gstidentity.c: (gst_identity_finalize),
4455         (gst_identity_class_init), (gst_identity_init),
4456         (gst_identity_event), (gst_identity_check_perfect),
4457         (gst_identity_transform), (gst_identity_set_property),
4458         (gst_identity_get_property), (gst_identity_change_state):
4459         * gst/elements/gstidentity.h:
4460         * gst/gstelement.c: (gst_element_get_state_func),
4461         (gst_element_lost_state), (gst_element_pads_activate):
4462         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4463         (gst_pad_check_pull_range), (gst_pad_pull_range):
4464         * gst/gstpad.h:
4465         Simplify pad activation.
4466         Added function to check if pull_range can be performed.
4467         Error out when pulling inactive or flushing pads.
4468         Removed const from refcounted types as it does not make sense.
4469         Simplify pad templates in basesink
4470         Added base class for simple 1-to-1 transforms.
4471         Make identity subclass the base transform.
4472
4473 2005-03-29  Andy Wingo  <wingo@pobox.com>
4474
4475         * docs/libs/gstreamer-libs-overrides.txt: 
4476         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
4477         really don't understand what's going on, but like whatever. I want
4478         green buildbot!
4479
4480         * docs/gst/Makefile.am:
4481         * docs/libs/Makefile.am: Dist the overrides files.
4482
4483         * check/Makefile.am (clean-local): Remove .libs directories.
4484
4485         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
4486         elements to EXTRA_DIST, so po/ files are happy.
4487
4488         * po/POTFILES.in: Er, remove it here.
4489
4490         * po/POTFILES: Remove gstspider.c.
4491
4492         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
4493
4494         * docs/libs/gstreamer-libs-docs.sgml: 
4495         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
4496         bytestream.
4497
4498         * tests/complexity.c (main): Set the length of the preroll queue
4499         on the sinks to prevent a lockup.
4500
4501         * libs/gst/dataprotocol/Makefile.am: 
4502         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
4503         the same as the one in check/gst-libs/gdp.c.
4504
4505         * po/, docs/gst/: Commit automatic changes to docs and po files.
4506
4507         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
4508         the versioned libgstbase.
4509
4510         * check/Makefile.am: Depend on an unversioned gst-register, seems
4511         to make autoconf happier.
4512
4513         * gst/base/Makefile.am: Make libgstbase a versioned lib.
4514
4515 2005-03-28  Wim Taymans  <wim@fluendo.com>
4516
4517         * configure.ac:
4518         * docs/design/part-gstelement.txt:
4519         * docs/design/part-negotiation.txt:
4520         * docs/design/part-preroll.txt:
4521         * docs/design/part-scheduling.txt:
4522         * docs/design/part-states.txt:
4523         * gst/Makefile.am:
4524         * gst/base/Makefile.am:
4525         * gst/base/README:
4526         * gst/base/gstbasesink.c: (gst_basesink_get_template),
4527         (gst_basesink_base_init), (gst_basesink_class_init),
4528         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4529         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4530         (gst_basesink_set_pad_functions),
4531         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
4532         (gst_basesink_set_property), (gst_basesink_get_property),
4533         (gst_base_sink_get_template), (gst_base_sink_get_caps),
4534         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
4535         (gst_basesink_preroll_queue_push),
4536         (gst_basesink_preroll_queue_empty),
4537         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
4538         (gst_basesink_event), (gst_basesink_get_times),
4539         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
4540         (gst_basesink_chain_unlocked), (gst_basesink_chain),
4541         (gst_basesink_loop), (gst_basesink_activate),
4542         (gst_basesink_change_state):
4543         * gst/base/gstbasesink.h:
4544         * gst/elements/Makefile.am:
4545         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
4546         (gst_fakesink_class_init), (gst_fakesink_init),
4547         (gst_fakesink_set_property), (gst_fakesink_get_property),
4548         (gst_fakesink_get_times), (gst_fakesink_event),
4549         (gst_fakesink_preroll), (gst_fakesink_render),
4550         (gst_fakesink_change_state):
4551         * gst/elements/gstfakesink.h:
4552         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4553         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
4554         * gst/gstelement.c: (gst_element_add_pad),
4555         (gst_element_get_state_func), (gst_element_abort_state),
4556         (gst_element_commit_state), (gst_element_lost_state),
4557         (gst_element_set_state), (gst_element_pads_activate):
4558         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
4559         * gst/gstpipeline.c: (gst_pipeline_send_event),
4560         (gst_pipeline_change_state):
4561         Added state change code.
4562         Added/updated docs.
4563         Added sink base class, make fakesink extend the base class.
4564         Small cleanups in GstPipeline.
4565
4566 2005-03-26  David Schleef  <ds@schleef.org>
4567
4568         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
4569         is broken and should be implemented in a different library.
4570         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
4571         * gst/gst.h: remove gstcpu.h
4572         * gst/gstcpu.c: remove
4573         * gst/gstcpu.h: remove
4574         * gst/Makefile.am.future: Remove this file.  It's ancient.
4575
4576 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4577
4578         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4579         (gst_bin_send_event):
4580           Add default event/set_manager handlers. The set_manager handler
4581           takes care that the manager is distributed over kids that were
4582           already in the bin before the manager was set. The event handler
4583           is a utility virtual function that sends the event over all sinks,
4584           so that gst_element_send_event (bin, event); has the expected
4585           behaviour.
4586         * gst/gstpad.c: (gst_pad_event_default):
4587           Re-install default event handling for discontinuities, so that
4588           seeking works without requiring hacks in applications or extra
4589           code in sinks.
4590         * gst/gstpipeline.c: (gst_pipeline_class_init),
4591         (gst_pipeline_send_event):
4592           Half hack, half utility: set a pipeline to PAUSED for seek events,
4593           since that is the only way we can guarantee a/v sync. Means that
4594           you can do gst_element_seek (pipeline, method, pos); on a pipeline
4595           and it "just works".
4596
4597 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4598
4599         * gst/gstpipeline.c: (gst_pipeline_use_clock):
4600           Lock/unlock mismatch.
4601
4602 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
4603
4604         * docs/faq/gst-uninstalled:
4605           add gst-plugins-base
4606         * docs/gst/Makefile.am:
4607           don't error out until docs are fixed
4608         * docs/gst/gstreamer.types:
4609           remove thread
4610
4611 2005-03-22  Wim Taymans  <wim@fluendo.com>
4612
4613         * check/Makefile.am:
4614         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
4615         * gst/gststructure.c: (gst_structure_set_valist),
4616         (gst_structure_copy_conditional):
4617         Activated more tests.
4618         Added message test.
4619         Added G_TYPE_POINTER to GstStructure.
4620         
4621
4622 2005-03-22  Wim Taymans  <wim@fluendo.com>
4623
4624         * docs/design/part-TODO.txt:
4625         * docs/design/part-events.txt:
4626         * docs/design/part-gstbin.txt:
4627         * docs/design/part-gstbus.txt:
4628         * docs/design/part-gstpipeline.txt:
4629         * docs/design/part-messages.txt:
4630         * gst/gstbus.c:
4631         * gst/gstmessage.c:
4632         Docs updates
4633
4634 2005-03-21  Wim Taymans  <wim@fluendo.com>
4635
4636         * gst/gstbus.c: (gst_bus_post):
4637         Fix copy-and-paste error.
4638
4639 2005-03-21  Wim Taymans  <wim@fluendo.com>
4640
4641         * check/Makefile.am:
4642         * gst/Makefile.am:
4643         * gst/elements/Makefile.am:
4644         * gst/elements/gstelements.c:
4645         * gst/elements/gstfakesink.c: (gst_fakesink_init),
4646         (gst_fakesink_event), (gst_fakesink_chain):
4647         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4648         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
4649         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
4650         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
4651         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
4652         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
4653         (gst_fakesrc_loop), (gst_fakesrc_activate),
4654         (gst_fakesrc_change_state):
4655         * gst/elements/gstfakesrc.h:
4656         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
4657         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
4658         (gst_filesrc_open_file), (gst_filesrc_loop),
4659         (gst_filesrc_activate), (gst_filesrc_change_state),
4660         (filesrc_find_peek), (filesrc_find_suggest),
4661         (gst_filesrc_type_find):
4662         * gst/elements/gstidentity.c: (gst_identity_finalize),
4663         (gst_identity_class_init), (gst_identity_init),
4664         (gst_identity_proxy_getcaps), (identity_queue_push),
4665         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
4666         (gst_identity_getrange), (gst_identity_chain),
4667         (gst_identity_sink_loop), (gst_identity_src_loop),
4668         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
4669         (gst_identity_set_property), (gst_identity_get_property),
4670         (gst_identity_change_state):
4671         * gst/elements/gstidentity.h:
4672         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
4673         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
4674         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
4675         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
4676         (gst_tee_sink_activate):
4677         * gst/elements/gsttee.h:
4678         * gst/gst.c: (gst_register_core_elements), (init_post):
4679         * gst/gst.h:
4680         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
4681         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
4682         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
4683         (gst_bin_change_state):
4684         * gst/gstbin.h:
4685         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
4686         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
4687         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
4688         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
4689         (gst_bus_set_sync_handler), (gst_bus_create_watch),
4690         (bus_watch_callback), (bus_watch_destroy),
4691         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
4692         (poll_timeout), (gst_bus_poll):
4693         * gst/gstbus.h:
4694         * gst/gstcaps.h:
4695         * gst/gstdata.h:
4696         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4697         (gst_element_post_message), (gst_element_message_full),
4698         (gst_element_get_state_func), (gst_element_get_state),
4699         (gst_element_abort_state), (gst_element_commit_state),
4700         (gst_element_lost_state), (gst_element_set_state),
4701         (gst_element_pads_activate), (gst_element_change_state),
4702         (gst_element_dispose), (gst_element_set_manager_func),
4703         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
4704         (gst_element_set_manager), (gst_element_get_manager),
4705         (gst_element_set_bus), (gst_element_get_bus),
4706         (gst_element_set_scheduler), (gst_element_get_scheduler):
4707         * gst/gstelement.h:
4708         * gst/gstevent.c: (gst_event_new_segment_seek),
4709         (gst_event_new_flush):
4710         * gst/gstevent.h:
4711         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
4712         (_gst_message_free), (gst_message_get_type), (gst_message_new),
4713         (gst_message_new_eos), (gst_message_new_error),
4714         (gst_message_new_warning), (gst_message_new_tag),
4715         (gst_message_new_state_changed), (gst_message_new_application),
4716         (gst_message_get_structure), (gst_message_parse_tag),
4717         (gst_message_parse_state_changed), (gst_message_parse_error),
4718         (gst_message_parse_warning):
4719         * gst/gstmessage.h:
4720         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
4721         (gst_real_pad_set_property), (gst_pad_set_active),
4722         (gst_pad_is_active), (gst_pad_set_blocked_async),
4723         (gst_pad_set_blocked), (gst_pad_is_blocked),
4724         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
4725         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
4726         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
4727         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
4728         (gst_pad_link_filtered), (gst_pad_relink_filtered),
4729         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
4730         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
4731         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
4732         (gst_pad_set_caps), (gst_pad_configure_sink),
4733         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
4734         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
4735         (gst_real_pad_dispose), (gst_real_pad_finalize),
4736         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
4737         (gst_pad_event_default_dispatch), (gst_pad_event_default),
4738         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
4739         * gst/gstpad.h:
4740         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
4741         (pipeline_bus_handler), (gst_pipeline_change_state),
4742         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
4743         * gst/gstpipeline.h:
4744         * gst/gstprobe.h:
4745         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
4746         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
4747         (gst_queue_link_src), (gst_queue_bufferalloc),
4748         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
4749         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
4750         (gst_queue_loop), (gst_queue_handle_src_event),
4751         (gst_queue_handle_src_query), (gst_queue_src_activate),
4752         (gst_queue_change_state):
4753         * gst/gstqueue.h:
4754         * gst/gstscheduler.c: (gst_scheduler_init),
4755         (gst_scheduler_dispose), (gst_scheduler_create_task),
4756         (gst_scheduler_factory_create):
4757         * gst/gstscheduler.h:
4758         * gst/gststructure.c: (gst_structure_get_type),
4759         (gst_structure_copy_conditional):
4760         * gst/gststructure.h:
4761         * gst/gsttaginterface.h:
4762         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
4763         (gst_task_init), (gst_task_dispose), (gst_task_create),
4764         (gst_task_get_state), (gst_task_start), (gst_task_stop),
4765         (gst_task_pause):
4766         * gst/gsttask.h:
4767         * gst/gstthread.c:
4768         * gst/gstthread.h:
4769         * gst/gsttypes.h:
4770         * gst/schedulers/Makefile.am:
4771         * gst/schedulers/cothreads_compat.h:
4772         * gst/schedulers/entryscheduler.c:
4773         * gst/schedulers/faircothreads.c:
4774         * gst/schedulers/faircothreads.h:
4775         * gst/schedulers/fairscheduler.c:
4776         * gst/schedulers/gstbasicscheduler.c:
4777         * gst/schedulers/gstoptimalscheduler.c:
4778         * gst/schedulers/gthread-cothreads.h:
4779         * gst/schedulers/threadscheduler.c:
4780         (gst_thread_scheduler_task_get_type),
4781         (gst_thread_scheduler_task_class_init),
4782         (gst_thread_scheduler_task_init),
4783         (gst_thread_scheduler_task_start),
4784         (gst_thread_scheduler_task_stop),
4785         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
4786         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
4787         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
4788         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
4789         (plugin_init):
4790         * libs/gst/Makefile.am:
4791         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
4792         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
4793         (gst_file_pad_parent_set):
4794         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
4795         (gst_dp_event_from_packet):
4796         * tests/complexity.c: (main):
4797         * tests/mass_elements.c: (main):
4798         * testsuite/states/locked.c: (message_received), (main):
4799         * testsuite/states/parent.c: (main):
4800         * tools/gst-inspect.c: (print_element_flag_info),
4801         (print_implementation_info), (print_pad_info):
4802         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
4803         (main):
4804         * tools/gst-md5sum.c: (event_loop), (main):
4805         * tools/gst-typefind.c: (main):
4806         * tools/gst-xmlinspect.c: (print_element_info):
4807         Next big merge.
4808         Added GstBus for mainloop integration.
4809         Added GstMessage for sending notifications on the bus.
4810         Added GstTask as an abstraction for pipeline entry points.
4811         Removed GstThread.
4812         Removed Schedulers.
4813         Simplified GstQueue for multithreaded core.
4814         Made _link threadsafe, removed old capsnego.
4815         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
4816         Added pad blocking functions.
4817         Reworked scheduling functions in GstPad to prepare for
4818         scheduling updates soon.
4819         Moved events out of data stream.
4820         Simplified GstEvent types.
4821         Added return values to push/pull.
4822         Removed clocking from GstElement.
4823         Added prototypes for state change function for next merge.
4824         Removed iterate from bins and state change management.
4825         Fixed some elements, disabled others for now.
4826         Fixed -inspect and -launch.
4827         Added check for GstBus.
4828
4829 2005-03-10  Wim Taymans  <wim@fluendo.com>
4830
4831         * docs/design/part-MT-refcounting.txt:
4832         * docs/design/part-clocks.txt:
4833         * docs/design/part-gstelement.txt:
4834         * docs/design/part-gstobject.txt:
4835         * docs/design/part-standards.txt:
4836         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4837         (gst_bin_remove_func), (gst_bin_remove):
4838         * gst/gstbin.h:
4839         * gst/gstbuffer.c:
4840         * gst/gstcaps.h:
4841         * testsuite/clock/clock1.c: (main):
4842         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
4843         (main):
4844         * testsuite/dlopen/loadgst.c: (do_test):
4845         * testsuite/refcounting/bin.c: (add_remove_test1),
4846         (add_remove_test2), (main):
4847         * testsuite/refcounting/element.c: (main):
4848         * testsuite/refcounting/element_pad.c: (main):
4849         * testsuite/refcounting/pad.c: (main):
4850         * tools/gst-launch.c: (sigint_handler_sighandler):
4851         * tools/gst-typefind.c: (main):
4852         Doc updates.
4853         Added doc about clock.
4854         removed gst_bin_iterate_recurse_up(), marked methods
4855         for removal.
4856         Fix more testsuites.
4857
4858 2005-03-09  Wim Taymans  <wim@fluendo.com>
4859
4860         * gst/gstpad.c: (gst_pad_get_direction),
4861         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
4862         (gst_pad_collect_valist):
4863         * testsuite/bins/interface.c: (main):
4864         * testsuite/caps/audioscale.c: (test_caps):
4865         * testsuite/caps/caps.c: (test1), (test2), (test3):
4866         * testsuite/caps/deserialize.c: (main):
4867         * testsuite/caps/enumcaps.c: (main):
4868         * testsuite/caps/filtercaps.c: (main):
4869         * testsuite/caps/intersect2.c: (main):
4870         * testsuite/caps/random.c: (main):
4871         * testsuite/caps/renegotiate.c: (my_fixate), (main):
4872         * testsuite/caps/sets.c: (check_caps):
4873         * testsuite/caps/simplify.c: (check_caps), (main):
4874         * testsuite/caps/subtract.c: (check_caps):
4875         Fix _pad_get_direction wrt ghostpads.
4876         Fix caps testsuite.
4877
4878 2005-03-09  Wim Taymans  <wim@fluendo.com>
4879
4880         * check/Makefile.am:
4881         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
4882         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
4883         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
4884         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
4885         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
4886         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
4887         (gst_bin_remove), (gst_bin_iterate_recurse_up),
4888         (bin_element_is_sink), (gst_bin_iterate_sinks),
4889         (gst_bin_iterate_all_by_interface):
4890         * gst/gstbin.h:
4891         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
4892         (gst_element_change_state), (gst_element_dispose),
4893         (gst_element_finalize), (gst_element_set_loop_function):
4894         * gst/gstelement.h:
4895         * gst/gstiterator.c: (find_custom_fold_func):
4896         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4897         (gst_pad_collectv), (gst_pad_collect_valist),
4898         (gst_pad_template_new):
4899         * gst/gstpipeline.c: (gst_pipeline_class_init),
4900         (gst_pipeline_dispose), (gst_pipeline_set_property),
4901         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
4902         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
4903         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
4904         * gst/gstutils.h:
4905         * gst/schedulers/entryscheduler.c:
4906         * gst/schedulers/gstbasicscheduler.c:
4907         (gst_basic_scheduler_cothreaded_chain),
4908         (gst_basic_scheduler_chain_add_element):
4909         * testsuite/bins/interface.c: (main):
4910         Added GstBin test.
4911         Added GstSystemClock test.
4912         Implemented clock distribution code in GstBin.
4913         Implemented iterate sinks method for future use.
4914         Rearranged gstelement.h
4915         Fix GstIterator comparison bug.
4916         Moved some code to GstPipeline, mostly clocking related.
4917
4918 2005-03-09  Wim Taymans  <wim@fluendo.com>
4919
4920         * configure.ac:
4921         * gst/gst_private.h:
4922         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4923         (gst_bin_remove_func), (gst_bin_remove),
4924         (gst_bin_get_by_name_recurse_up):
4925         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
4926         (gst_clock_id_compare_func), (gst_clock_id_wait),
4927         (gst_clock_id_wait_async), (gst_clock_init),
4928         (gst_clock_adjust_unlocked), (gst_clock_get_time):
4929         * gst/gstelement.h:
4930         * gst/gstinfo.c: (_gst_debug_init):
4931         * gst/gstobject.h:
4932         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4933         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
4934         * gst/gstpad.h:
4935         Bump version number, we're now 0.9.0
4936         Add future debugging category.
4937         Fix NULL _unref() in _get_by_name_recurse_up
4938         Rearrange gstpad.h.
4939         Update some docs.
4940
4941 2005-03-08  Wim Taymans  <wim@fluendo.com>
4942
4943         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
4944         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4945         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
4946         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
4947         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
4948         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
4949         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
4950         * gst/elements/gstidentity.c: (gst_identity_class_init):
4951         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
4952         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
4953         * gst/elements/gstshaper.c: (gst_shaper_class_init):
4954         * gst/elements/gststatistics.c: (gst_statistics_class_init):
4955         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
4956         (gst_tee_link):
4957         * gst/gstelement.c: (gst_element_class_init),
4958         (gst_element_base_class_init), (gst_element_init),
4959         (gst_element_get_random_pad), (gst_element_wait_state_change),
4960         (gst_element_change_state), (gst_element_dispose),
4961         (gst_element_finalize), (gst_element_set_loop_function):
4962         * gst/gstelement.h:
4963         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
4964         * gst/gstthread.c: (gst_thread_class_init),
4965         (gst_thread_release_children_locks), (gst_thread_change_state):
4966         * gst/schedulers/gstbasicscheduler.c:
4967         (gst_basic_scheduler_loopfunc_wrapper),
4968         (gst_basic_scheduler_chain_wrapper),
4969         (gst_basic_scheduler_src_wrapper),
4970         (gst_basic_scheduler_remove_element):
4971         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4972         Remove threadsafe properties. Fix elements because GObject
4973         complains when installing a property before declaring a
4974         set/get_property handler.
4975         Rearrange gstelement.h file, use STATE macros for state locks.
4976         Free mutexes in the finalize method instead of dispose.
4977
4978 2005-03-08  Wim Taymans  <wim@fluendo.com>
4979
4980         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
4981         * gst/gstthread.c: (gst_thread_release_children_locks):
4982         Added parentage check.
4983         Fix build og GstThread again.
4984
4985 2005-03-08  Wim Taymans  <wim@fluendo.com>
4986
4987         * docs/design/part-MT-refcounting.txt:
4988         * docs/design/part-conventions.txt:
4989         * docs/design/part-gstobject.txt:
4990         * docs/design/part-relations.txt:
4991         * docs/design/part-standards.txt:
4992         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4993         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
4994         (gst_bin_get_by_name), (gst_bin_get_by_interface),
4995         (gst_bin_iterate_all_by_interface):
4996         * gst/gstbuffer.h:
4997         * gst/gstclock.h:
4998         * gst/gstelement.c: (gst_element_class_init),
4999         (gst_element_change_state), (gst_element_set_loop_function):
5000         * gst/gstelement.h:
5001         * gst/gstiterator.c:
5002         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
5003         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
5004         (gst_object_dispatch_properties_changed), (gst_object_set_name),
5005         (gst_object_set_parent), (gst_object_unparent),
5006         (gst_object_check_uniqueness):
5007         * gst/gstobject.h:
5008         Docs updates, clean up some headers.
5009
5010 2005-03-07  Wim Taymans  <wim@fluendo.com>
5011
5012         * check/.cvsignore:
5013         * check/Makefile.am:
5014         * check/gst-libs/.cvsignore:
5015         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
5016         * check/gst/.cvsignore:
5017         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
5018         (START_TEST), (gstbus_suite), (main):
5019         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
5020         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
5021         (gst_data_suite), (main):
5022         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
5023         (add_fold_func), (gstiterator_suite), (main):
5024         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
5025         (thread_name_object), (thread_name_object_default),
5026         (gst_object_name_compare), (gst_object_suite), (main):
5027         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
5028         (gst_pad_suite), (main):
5029         * check/gstcheck.c: (gst_check_log_message_func),
5030         (gst_check_log_critical_func), (gst_check_init):
5031         * check/gstcheck.h:
5032         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
5033         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
5034         Added checks.
5035
5036 2005-03-07  Wim Taymans  <wim@fluendo.com>
5037
5038         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
5039         (gst_list_iterator_next), (gst_list_iterator_resync),
5040         (gst_list_iterator_free), (gst_iterator_new_list),
5041         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
5042         (gst_iterator_free), (gst_iterator_push), (filter_next),
5043         (filter_resync), (filter_uninit), (filter_free),
5044         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
5045         (gst_iterator_foreach), (find_custom_fold_func),
5046         (gst_iterator_find_custom):
5047         * gst/gstiterator.h:
5048         Added missing files.
5049
5050 2005-03-07  Wim Taymans  <wim@fluendo.com>
5051
5052         * Makefile.am:
5053         * configure.ac:
5054         * docs/design/part-MT-refcounting.txt:
5055         * docs/design/part-conventions.txt:
5056         * docs/design/part-gstobject.txt:
5057         * docs/design/part-relations.txt:
5058         * examples/mixer/mixer.c: (main):
5059         * examples/thread/thread.c: (eos), (main):
5060         * gst/Makefile.am:
5061         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
5062         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
5063         (gst_spider_plug_from_srcpad):
5064         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
5065         (gst_spider_identity_change_state),
5066         (gst_spider_identity_sink_loop_type_finding):
5067         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
5068         * gst/elements/gstidentity.c: (gst_identity_init):
5069         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
5070         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
5071         * gst/elements/gsttypefindelement.c: (free_entry):
5072         * gst/gst.c:
5073         * gst/gst.h:
5074         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
5075         (gst_bin_set_clock_func), (gst_bin_auto_clock),
5076         (gst_bin_set_index), (gst_bin_set_element_sched),
5077         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
5078         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
5079         (gst_bin_iterate_elements), (iterate_child_recurse),
5080         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
5081         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
5082         (compare_interface), (gst_bin_get_by_interface),
5083         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
5084         * gst/gstbin.h:
5085         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
5086         (gst_buffer_default_free), (gst_buffer_default_copy),
5087         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
5088         (gst_buffer_create_sub):
5089         * gst/gstbuffer.h:
5090         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
5091         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
5092         (gst_caps_unref), (gst_static_caps_get),
5093         (gst_caps_remove_and_get_structure), (gst_caps_append),
5094         (gst_caps_append_structure), (gst_caps_remove_structure),
5095         (gst_caps_copy_nth), (gst_caps_set_simple),
5096         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
5097         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
5098         (gst_caps_structure_intersect_field), (gst_caps_intersect),
5099         (gst_caps_structure_subtract_field), (gst_caps_subtract),
5100         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
5101         (gst_caps_structure_figure_out_union),
5102         (gst_caps_switch_structures), (gst_caps_do_simplify),
5103         (gst_caps_replace), (gst_caps_from_string),
5104         (gst_caps_copy_conditional):
5105         * gst/gstcaps.h:
5106         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
5107         (_gst_clock_id_free), (gst_clock_id_unref),
5108         (gst_clock_id_compare_func), (gst_clock_id_wait),
5109         (gst_clock_id_wait_async), (gst_clock_class_init),
5110         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
5111         (gst_clock_get_time), (gst_clock_set_time_adjust),
5112         (gst_clock_set_property), (gst_clock_get_property):
5113         * gst/gstclock.h:
5114         * gst/gstcompat.h:
5115         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
5116         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
5117         * gst/gstdata.h:
5118         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
5119         (gst_element_requires_clock), (gst_element_provides_clock),
5120         (gst_element_set_clock), (gst_element_clock_wait),
5121         (gst_element_wait), (gst_element_set_time_delay),
5122         (gst_element_is_indexable), (gst_element_add_pad),
5123         (gst_element_add_ghost_pad), (gst_element_remove_pad),
5124         (pad_compare_name), (gst_element_get_static_pad),
5125         (gst_element_request_pad), (gst_element_get_request_pad),
5126         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
5127         (gst_element_class_get_pad_template_list),
5128         (gst_element_class_get_pad_template), (gst_element_error_func),
5129         (gst_element_get_random_pad), (gst_element_get_event_masks),
5130         (gst_element_send_event), (gst_element_seek),
5131         (gst_element_get_query_types), (gst_element_query),
5132         (gst_element_get_formats), (gst_element_convert),
5133         (gst_element_is_locked_state), (gst_element_set_locked_state),
5134         (gst_element_sync_state_with_parent), (gst_element_change_state),
5135         (gst_element_finalize), (gst_element_yield),
5136         (gst_element_interrupt), (gst_element_set_scheduler),
5137         (gst_element_get_scheduler), (gst_element_set_loop_function):
5138         * gst/gstelement.h:
5139         * gst/gstevent.h:
5140         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
5141         (gst_format_get_by_nick), (gst_format_get_details),
5142         (gst_format_iterate_definitions):
5143         * gst/gstformat.h:
5144         * gst/gstindex.c: (gst_index_gtype_resolver):
5145         * gst/gstinfo.c:
5146         * gst/gstinfo.h:
5147         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
5148         (gst_mem_chunk_free):
5149         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
5150         (gst_object_ref), (gst_object_unref), (gst_object_sink),
5151         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
5152         (gst_object_dispatch_properties_changed),
5153         (gst_object_set_name_default), (gst_object_set_name),
5154         (gst_object_get_name), (gst_object_set_name_prefix),
5155         (gst_object_get_name_prefix), (gst_object_set_parent),
5156         (gst_object_get_parent), (gst_object_unparent),
5157         (gst_object_check_uniqueness), (gst_object_save_thyself),
5158         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
5159         (gst_object_set_property), (gst_object_get_property),
5160         (gst_object_get_path_string):
5161         * gst/gstobject.h:
5162         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
5163         (gst_real_pad_init), (gst_real_pad_get_property),
5164         (gst_pad_custom_new), (gst_pad_get_direction),
5165         (gst_pad_set_active), (gst_pad_is_active),
5166         (gst_pad_set_event_function), (gst_pad_is_linked),
5167         (gst_pad_link_free), (gst_pad_link_intersect),
5168         (gst_pad_link_fixate), (gst_pad_set_caps),
5169         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
5170         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
5171         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
5172         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
5173         (gst_pad_get_caps), (gst_pad_peer_get_caps),
5174         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
5175         (gst_pad_realize), (gst_pad_get_allowed_caps),
5176         (gst_real_pad_dispose), (gst_real_pad_finalize),
5177         (gst_pad_collectv), (gst_pad_collect_valist),
5178         (gst_pad_template_dispose), (gst_pad_template_new),
5179         (gst_pad_get_internal_links):
5180         * gst/gstpad.h:
5181         * gst/gstpipeline.c: (gst_pipeline_dispose),
5182         (gst_pipeline_change_state):
5183         * gst/gstpipeline.h:
5184         * gst/gstplugin.c:
5185         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
5186         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
5187         * gst/gstpluginfeature.h:
5188         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5189         * gst/gstquery.c: (_gst_query_type_initialize),
5190         (gst_query_type_register), (gst_query_type_get_by_nick),
5191         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
5192         * gst/gstquery.h:
5193         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
5194         * gst/gstscheduler.c: (gst_scheduler_add_element),
5195         (gst_scheduler_factory_create):
5196         * gst/gststructure.c: (gst_structure_set_parent_refcount),
5197         (gst_structure_free), (gst_structure_set_name),
5198         (gst_structure_id_set_value), (gst_structure_set_value),
5199         (gst_structure_set_valist), (gst_structure_remove_field),
5200         (gst_structure_remove_fields),
5201         (gst_structure_remove_fields_valist),
5202         (gst_structure_remove_all_fields), (gst_structure_foreach),
5203         (gst_structure_map_in_place),
5204         (gst_caps_structure_fixate_field_nearest_int),
5205         (gst_caps_structure_fixate_field_nearest_double):
5206         * gst/gststructure.h:
5207         * gst/gstsystemclock.c: (gst_system_clock_class_init),
5208         (gst_system_clock_init), (gst_system_clock_dispose),
5209         (gst_system_clock_async_thread),
5210         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
5211         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
5212         * gst/gstsystemclock.h:
5213         * gst/gsttag.c: (gst_tag_list_add_value_internal),
5214         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
5215         * gst/gsttaginterface.c:
5216         * gst/gstthread.c: (gst_thread_dispose),
5217         (gst_thread_release_children_locks), (gst_thread_change_state),
5218         (gst_thread_main_loop):
5219         * gst/gsttrashstack.h:
5220         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
5221         * gst/gsttypes.h:
5222         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
5223         (gst_element_request_pad), (gst_element_get_pad_from_template),
5224         (gst_element_request_compatible_pad),
5225         (gst_element_get_compatible_pad_filtered),
5226         (gst_element_get_compatible_pad), (gst_element_state_get_name),
5227         (gst_element_link_pads_filtered), (gst_element_link_filtered),
5228         (gst_element_link_many), (gst_element_link),
5229         (gst_element_link_pads), (gst_element_unlink_pads),
5230         (gst_element_unlink_many), (gst_element_unlink),
5231         (gst_pad_can_link_filtered), (gst_pad_can_link),
5232         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
5233         (gst_object_default_error), (gst_bin_add_many),
5234         (gst_bin_remove_many), (gst_element_populate_std_props),
5235         (gst_element_class_install_std_props), (gst_buffer_merge),
5236         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
5237         (link_fold_func), (gst_pad_proxy_setcaps):
5238         * gst/gstutils.h:
5239         * gst/gstvalue.c: (gst_value_deserialize_string):
5240         * gst/parse/grammar.y:
5241         * gst/schedulers/gstbasicscheduler.c:
5242         (gst_basic_scheduler_cothreaded_chain),
5243         (gst_basic_scheduler_chain_recursive_add),
5244         (gst_basic_scheduler_pad_link):
5245         * gst/schedulers/gstoptimalscheduler.c:
5246         (get_group_schedule_function),
5247         (gst_opt_scheduler_state_transition),
5248         (gst_opt_scheduler_add_element), (element_get_reachables_func):
5249         * libs/gst/bytestream/bytestream.c:
5250         * libs/gst/dataprotocol/dataprotocol.c:
5251         (gst_dp_header_from_buffer):
5252         * po/nb.po:
5253         * po/ru.po:
5254         * tests/threadstate/threadstate2.c: (eos):
5255         * tools/gst-compprep.c: (main):
5256         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
5257         (print_pad_info), (print_children_info):
5258         * tools/gst-launch.c: (idle_func), (main):
5259         * tools/gst-md5sum.c: (idle_func), (main):
5260         * tools/gst-xmlinspect.c: (print_element_info):
5261         First THREADED backport attempt, focusing on adding locks and
5262         making sure the API is threadsafe. Needs more work. More docs
5263         follow this week.
5264
5265 2005-02-24  Andy Wingo  <wingo@pobox.com>
5266
5267         * tests/bench-complexity.scm:
5268         * tests/complexity.gnuplot: New files, good for running complexity
5269         benchmarks.
5270
5271         * tests/Makefile.am:
5272         * tests/complexity.c: New test, sets up N elements, at each level
5273         teeing into M streams per element. Eeeenteresting.
5274
5275         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
5276         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
5277         running bench-mass_elements.scm.
5278
5279         * tests/bench-mass_elements.scm: New script, runs mass_elements
5280         for various numbers of identities, outputting the results to a
5281         file. Requires guile 1.6. Just for testing.
5282
5283 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5284
5285         * gst/schedulers/fairscheduler.c:
5286           compile with debug disabled
5287
5288 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
5289
5290         * configure.ac:
5291           hunting season on 0.9 is now OPEN
5292
5293 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
5294
5295         * docs/libs/tmpl/gstcontrol.sgml:
5296         * docs/libs/tmpl/gstdparam.sgml:
5297         * docs/libs/tmpl/gstdplinint.sgml:
5298         * docs/libs/tmpl/gstdpman.sgml:
5299         * docs/libs/tmpl/gstdpsmooth.sgml:
5300         * docs/libs/tmpl/gstunitconvert.sgml:
5301           more docs for the state of dparams
5302
5303 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5304
5305         * gst/gstelementfactory.c: (gst_element_factory_create):
5306         * gst/gstobject.c: (gst_object_init),
5307         (gst_object_set_name_default), (gst_object_set_name):
5308           name objects by default, not in gst_element_factory_create. Allows
5309           using elements created with g_object_new. (fixes #167283)
5310
5311 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5312
5313         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
5314           make the time that debugging functions print relative to when
5315           gst_init was called
5316
5317 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
5318
5319         * gst/gsttaginterface.c:
5320           Fix inline docs: tag setter vararg functions are NULL-terminated,
5321           GST_TAG_INVALID doesn't exist any more.
5322
5323 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5324
5325         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
5326         Allocate the 1 byte more memory that was forgotten!!!!!
5327         fixes memory corruption on 64bit platforms
5328
5329 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
5330
5331         * docs/pwg/building-pads.xml:
5332         * docs/pwg/intro-basics.xml:
5333           fixed a few typos, relabeled introductionary list of types
5334         * docs/random/ensonic/dparams.txt:
5335           more notes abut dparam changes
5336         * libs/gst/control/dparam.c: (gst_dparam_attach):
5337         * libs/gst/control/dparammanager.c:
5338         * libs/gst/control/dparammanager.h:
5339           - many comments and notes on dparam implementation
5340           - new dparams are were not initialized to the default value
5341             from param spec
5342
5343 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
5344
5345         submitted by: Peter Astakhov
5346
5347         * po/LINGUAS:
5348         * po/ru.po:
5349           adding Russian translation
5350
5351 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5352
5353         * configure.ac:
5354         * docs/gst/Makefile.am:
5355         * docs/libs/Makefile.am:
5356           make sure popt is added to gtk-doc flags.  Fixes #147782.
5357
5358 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
5359
5360         * docs/faq/using.xml:
5361           Fix typo in FAQ (artssink => artsdsink)
5362
5363 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5364
5365         * tools/gst-launch.1.in:
5366           Fix typo (#166699).
5367
5368 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
5369
5370         * docs/faq/using.xml:
5371           Add -v argument to fakesrc/fakesink gst-launch line,
5372           so that the promised output will actually show up.
5373
5374 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5375
5376         * gst/gstthread.c: (gst_thread_change_state):
5377           Implement state-change error handling (#166073).
5378
5379 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5380
5381         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
5382           Release interrupt after handling (#166250).
5383
5384 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5385
5386         * configure.ac:
5387           back to HEAD
5388
5389 === release 0.8.9 ===
5390
5391 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5392
5393         * NEWS:
5394         * RELEASE:
5395         * configure.ac:
5396           releasing 0.8.9, "Like Eating Glass"
5397
5398 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5399
5400         submitted by: Clytie Siddall
5401
5402         * po/vi.po: Added Vietnamese translation
5403
5404 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5405
5406         patch by: Tim Philipp-Müller
5407
5408         * configure.ac:
5409         * gst/gstpad.c:
5410           unref data when probe function returns FALSE.  Fixes #166362
5411
5412 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5413
5414         * gst/gst.c: (gst_init_get_popt_table):
5415           Fix typo (#166269).
5416
5417 2005-02-04  Andy Wingo  <wingo@pobox.com>
5418
5419         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
5420         the debugging on whether the caps are compatible.
5421
5422 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5423
5424         * docs/manual/basics-elements.xml:
5425           Fix two typos.
5426
5427 2005-02-02  Wim Taymans  <wim@fluendo.com>
5428
5429         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
5430         (schedule_chain), (get_invalid_call), (chain_invalid_call),
5431         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
5432         Remove some FIXMEs after analysing and commenting why they
5433         are not issues.
5434
5435 2005-02-02  Wim Taymans  <wim@fluendo.com>
5436
5437         * gst/schedulers/gstoptimalscheduler.c:
5438         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
5439         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
5440         (get_invalid_call), (chain_invalid_call),
5441         (get_group_schedule_function), (loop_group_schedule_function),
5442         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
5443         (gst_opt_scheduler_state_transition),
5444         (gst_opt_scheduler_add_element),
5445         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
5446         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
5447         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
5448         (gst_opt_scheduler_show):
5449         Added lock to protect scheduler data structures.
5450
5451 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5452
5453         * testsuite/threads/threadi.c: (cb_data):
5454           Fix buglet in test.
5455
5456 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5457
5458         * testsuite/threads/Makefile.am:
5459         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
5460           On Wim's request, split the test in three separately-compiled
5461           tests that each test a very specific bug. Two of them still fail,
5462           will create bugs for those. threadi.c indicates why they fail.
5463
5464 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5465
5466         * gst/schedulers/gstoptimalscheduler.c:
5467         (get_group_schedule_function):
5468           Try to work with the threading mess that queue_link is.
5469
5470 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5471
5472         * gst/gstbin.c: (gst_bin_remove_func):
5473           Explicitely make an element release locks in a group when being
5474           remove from a bin.
5475         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
5476           If there's no scheduler, always return immediately (similar to
5477           gst_element_interrupt).
5478
5479 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5480
5481         * gst/gstbin.c: (gst_bin_child_state_change_func):
5482           Remove a piece of code that could never be reached.
5483         * docs/gst/gstreamer-sections.txt:
5484         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
5485         (gst_pad_call_get_function):
5486         * gst/gstpad.h:
5487         * testsuite/pad/Makefile.am:
5488           Fix #150546, enable tests.
5489
5490 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5491
5492         * docs/pwg/advanced-types.xml:
5493           Fix description for buffer-frames=0.
5494         * docs/gst/tmpl/gstbin.sgml:
5495         * gst/gstbin.c: (gst_bin_child_state_change_func),
5496         (gst_bin_change_state), (gst_bin_change_state_norecurse):
5497         * gst/gstbin.h:
5498         * testsuite/threads/Makefile.am:
5499         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
5500         (cb_state), (cb_play), (main):
5501           Fix non-recursive state changes to *really* change the state
5502           of the object, and not just call parent_class->state_change.
5503           Fix a lot of lockups caused by this. Fixes #132775. Add test
5504           for the problem. Also enable test to show #142588 (fixed).
5505         * gst/gstthread.c: (gst_thread_change_state),
5506         (gst_thread_child_state_change):
5507           Don't exit the thread if we go to NULL and are inside thread
5508           context. Instead, return control to the main thread context
5509           and exit from there.
5510         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
5511           Don't unset virtual functions, since those may still be used.
5512           That's not necessarily correct, but suffices for now.
5513         * configure.ac:
5514         * testsuite/Makefile.am:
5515         * testsuite/pad/Makefile.am:
5516         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
5517         (gst_test_sink_base_init), (gst_test_sink_chain),
5518         (gst_test_sink_init), (main):
5519         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
5520         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
5521         (main):
5522         * testsuite/pad/link.c: (gst_test_element_class_init),
5523         (gst_test_element_base_init), (gst_test_src_get),
5524         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
5525         (gst_test_filter_loop), (gst_test_filter_init),
5526         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
5527         (cb_error), (main):
5528           Add tests to show #150546. Pass, but should fail (currently
5529           disabled from the testsuite).
5530         * gst/gstscheduler.c: (gst_scheduler_dispose):
5531           Dereference child schedulers on dispose (#94464).
5532         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
5533           Fix typo.
5534         * testsuite/threads/thread.c: (main):
5535           Add more debug.
5536
5537 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5538
5539         * gst/gstpad.c: (gst_pad_push):
5540           Oops, revert previous commit, broke testsuite...
5541
5542 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5543
5544         * gst/gstpad.c: (gst_pad_push):
5545           Add check that the pad on which the push is performed is not a
5546           get-based pad (#150546).
5547
5548 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5549
5550         * gst/elements/gsttypefindelement.c:
5551         (gst_type_find_element_handle_event):
5552           Fix buffer pushing if stream EOSes during typefinding.
5553
5554 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
5555
5556         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5557
5558         * gst/gstvalue.c: (gst_string_wrap):
5559           Allow NULL-strings as argument (#165365).
5560
5561 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
5562
5563         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5564
5565         * gst/schedulers/faircothreads.c:
5566         (gst_fair_scheduler_cothread_queue_show):
5567           Fix build without debug enabled.
5568
5569 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
5570
5571         * docs/gst/gstreamer-sections.txt:
5572         * docs/libs/gstreamer-libs-docs.sgml:
5573         * docs/libs/gstreamer-libs-sections.txt:
5574         * docs/libs/tmpl/gstcontrol.sgml:
5575         * docs/libs/tmpl/gstdparam.sgml:
5576         * docs/libs/tmpl/gstdplinint.sgml:
5577         * docs/libs/tmpl/gstdpman.sgml:
5578         * docs/libs/tmpl/gstdpsmooth.sgml:
5579         * docs/libs/tmpl/gstputbits.sgml:
5580         * docs/libs/tmpl/gstunitconvert.sgml:
5581         * libs/gst/control/dparam.c:
5582         * libs/gst/control/dparam.h:
5583         * libs/gst/control/dparammanager.c:
5584         (gst_dpman_add_required_dparam_callback),
5585         (gst_dpman_add_required_dparam_direct),
5586         (gst_dpman_add_required_dparam_array),
5587         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
5588         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
5589         (gst_dpman_get_manager)
5590           restructured DParam docs
5591
5592 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
5593
5594         * gst-element-check.m4:
5595           Only check for gst-inspect if we haven't already
5596           found it in previous element check runs
5597
5598 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
5599
5600         * docs/gst/Makefile.am:
5601         * docs/libs/Makefile.am:
5602           fixed install rules to treat style.css as optional
5603
5604 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
5605
5606         * docs/gst/Makefile.am:
5607         * docs/libs/Makefile.am:
5608           install style.css along with docs
5609         * docs/gst/tmpl/gstbin.sgml:
5610         * docs/gst/tmpl/gstclock.sgml:
5611         * docs/gst/tmpl/gstdata.sgml:
5612         * docs/gst/tmpl/gstelement.sgml:
5613         * gst/gstbin.h:
5614         * gst/gstelement.c: (gst_element_class_init):
5615         * gst/gstelement.h:
5616           fixing incomplete docs
5617
5618 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
5619
5620         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5621           Don't unref seek event twice when fflush() fails
5622           
5623 2005-01-22  David Schleef  <ds@schleef.org>
5624
5625         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
5626
5627 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
5628
5629         * docs/gst/Makefile.am:
5630         * docs/libs/Makefile.am:
5631           added params for deprecation guards
5632         * gst/gst.c:
5633         * gst/gst.h:
5634         * gst/gsterror.c: (_gst_resource_errors_init),
5635         (_gst_stream_errors_init):
5636         * gst/gsterror.h:
5637           documented some more enums
5638
5639 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
5640         * gst/autoplug/gstspideridentity.c:
5641         Cosmetic fix - spider_find_peek should be static
5642         * gst/parse/parse.l:
5643         Applying fix for #164261
5644
5645 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
5646
5647         * docs/gst/gstreamer-sections.txt:
5648         * docs/gst/tmpl/gstplugin.sgml:
5649         * docs/libs/gstreamer-libs-sections.txt:
5650         * docs/libs/tmpl/gstcontrol.sgml:
5651         * gst/gstbuffer.h:
5652         * gst/gsttag.h:
5653         * gst/gstvalue.c:
5654           added docs for the TAG defines
5655
5656 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5657
5658         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
5659           Only unref entry if there is an entry.
5660
5661 2005-01-17  Wim Taymans  <wim@fluendo.com>
5662
5663         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5664         (remove_from_group), (schedule_group), (normalize_group),
5665         (gst_opt_scheduler_iterate):
5666         Also ref/unref decoupled elements before iterating the
5667         group since they are not added to the list of elements.
5668
5669 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5670
5671         * docs/manual/highlevel-components.xml:
5672           Add subtitle/streamselection as new features to playbin.
5673
5674 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5675
5676         * docs/manual/manual.xml:
5677           Re-enable dataaccess docs (oops).
5678
5679 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5680
5681         * docs/pwg/advanced-types.xml:
5682         * docs/random/mimetypes:
5683           Add documentation on libsndfile types (#163309), by Steve Baker
5684           <steve@stevebaker.org>.
5685         * gst/gstelement.c: (gst_element_release_request_pad):
5686           If an element has no explicit function, just remove the pad.
5687
5688 2005-01-17  Luca Ognibene  <luogni@tin.it>
5689
5690         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5691
5692         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
5693           Fix memleak (#163801).
5694
5695 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5696
5697         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
5698           I think this is actually more correct...
5699
5700 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5701
5702         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5703           Another workaround for memory access while destroyed in callback.
5704           Please, someone with refcount knowledge, have a look at this.
5705
5706 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5707
5708         * docs/faq/faq.xml:
5709         * docs/faq/legal.xml:
5710           move the legal Q&A here
5711
5712 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5713
5714         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
5715         (gst_tee_request_new_pad):
5716           Fix negotiation.
5717
5718 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5719
5720         * docs/random/omega/caps2:
5721         * testsuite/caps/caps_strings:
5722           replace framerate aproximations by their real value
5723           (24000/1001, 30000/1001, 60000/1001)
5724           Partially fixes bug #164049
5725
5726 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5727
5728         * docs/gst/Makefile.am:
5729           don't fail on the stupid GstPoptOption
5730
5731 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5732
5733         * gst/gstpad.h:
5734         * gst/gstprobe.c:
5735           allow probes to work on ghost pads by realizing the pad
5736           probe debugging
5737
5738 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5739
5740         * docs/gst/gstreamer-sections.txt:
5741         * docs/gst/tmpl/gstpad.sgml:
5742         * gst/gstpad.c: (gst_pad_set_active_recursive):
5743         * gst/gstpad.h:
5744           Add gst_pad_set_active_recursive().
5745
5746 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5747
5748         * docs/random/release:
5749           updates
5750         * gst/gst_private.h:
5751         * gst/gstinfo.c:
5752         * gst/gstobject.c:
5753           move deep_notify logging to a new category
5754         * gst/gstprobe.c:
5755         * gst/gstprobe.h:
5756           add stuff so bindings can wrap probes
5757
5758 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5759
5760         * gst/gstplugin.c: (gst_plugin_load):
5761           Fix plugin loading if plugin/lib was already loaded. Fixes
5762           #163383
5763
5764 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
5765
5766         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5767
5768         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
5769           Protect plugin loading by a mutex so it's threadsafe. Fixes
5770           #163234.
5771
5772 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5773
5774         * gst/gstevent.c: (_gst_event_copy):
5775           Reference source object when copying events, since it'll be
5776           dereferenced on event dereferencing as well.
5777
5778 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5779
5780         * docs/gst/gstreamer-sections.txt:
5781         * docs/gst/tmpl/gstevent.sgml:
5782         * gst/gstevent.c: (gst_event_new_filler_stamped),
5783         (gst_event_filler_get_duration):
5784         * gst/gstevent.h:
5785           Add two new functions for filler events (which are used to
5786           synchronize streams if one of them is not having any data
5787           for a while) without interrupting the actual data-stream.
5788           Basically a no-op.
5789         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5790         (gst_queue_link_sink), (gst_queue_link_src),
5791         (gst_queue_change_state):
5792           Allow for renegotiation while filled. Required for stream
5793           switching while playing.
5794
5795 2005-01-08  Benjamin Otte  <otte@gnome.org>
5796
5797         * gst/gstelement.c: (gst_element_link_many):
5798           fix up g_return_if_fail's
5799         * po/LINGUAS:
5800         * po/de.po:
5801           add German translation, that was somehow not included
5802
5803 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5804
5805         * docs/random/mimetypes:
5806           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
5807           do not add them to riff-lib as they are not common
5808
5809 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5810
5811         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5812           Check for existence of probe after performing the probe before
5813           re-accessing it to prevent segfaults caused by removal of the
5814           probe in the callback.
5815
5816 2005-01-05  David Schleef  <ds@schleef.org>
5817
5818         * testsuite/registry/Makefile.am:
5819         * testsuite/registry/gst-print-formats.c:
5820         (print_pad_templates_info), (print_element_list),
5821         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
5822         (g_list_uniqify), (get_pad_templates_info),
5823         (get_element_mime_list), (print_mime_list), (main): A little
5824         program that looks through the registry to find elements of
5825         a given type.  Not particularly interesting as a test, except
5826         that there's no other test covering the same area.
5827
5828 2005-01-05  David Schleef  <ds@schleef.org>
5829
5830         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
5831         (fault_handler_sigaction), (fault_spin),
5832         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
5833         in signal.h-type signal handlers by not calling forbidden functions,
5834         including gst_element_set_state().
5835
5836 2005-01-05  David Schleef  <ds@schleef.org>
5837
5838         * gst/gstvalue.h: Mark _gst_reserved[] as private
5839
5840 2005-01-05  David Schleef  <ds@schleef.org>
5841
5842         * gst/gstvalue.c: Fix doc build problem.
5843
5844 2005-01-05  David Schleef  <ds@schleef.org>
5845
5846         * gst/gstvalue.c: Add some documentation
5847
5848 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
5849
5850         * docs/README:
5851           another shell oneliner for empty return value docs
5852         * gst/gstcaps.c:
5853         * gst/gstvalue.c:
5854         * libs/gst/control/dparam.c:
5855           more doc fixes (parameters and return values)
5856
5857 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
5858
5859         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5860
5861         * gst/gstregistry.h:
5862         * gst/registries/gstxmlregistry.c:
5863           Fix macro's for Mingw (fixes #162276).
5864
5865 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
5866
5867         * docs/README:
5868           quick shell oneliner to find undocumented members
5869         * docs/gst/tmpl/gstplugin.sgml:
5870         * docs/gst/tmpl/gstscheduler.sgml:
5871         * docs/gst/tmpl/gstthread.sgml:
5872           more enumtypes cleanup
5873         * gst/gsterror.h:
5874           activated documentation comments, now someone needs to document
5875           the enums :(
5876
5877 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5878
5879         * docs/manual/manual.xml:
5880           Add dataaccess part (doh!).
5881
5882 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5883
5884         * docs/manual/advanced-autoplugging.xml:
5885           Fix typo (intiate -> initiate).
5886
5887 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5888
5889         * docs/random/bbb/streamselection:
5890           Add some notes on how to handle multi-subtitle/-audio streams.
5891
5892 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
5893
5894         * docs/gst/gstreamer-docs.sgml:
5895         * docs/gst/gstreamer-sections.txt:
5896         * docs/gst/tmpl/gstenumtypes.sgml:
5897         * docs/gst/tmpl/gsterror.sgml:
5898         * docs/gst/tmpl/gstevent.sgml:
5899         * docs/gst/tmpl/gstpad.sgml:
5900         * docs/gst/tmpl/gstpadtemplate.sgml:
5901         * docs/gst/tmpl/gstthread.sgml:
5902           removed gstenumtypes section from docs and put all the enums into
5903           their sections
5904
5905 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5906
5907         * gst/gstplugin.c:
5908           document gst_library_load a bit more (riff special case + return
5909           value if already loaded)
5910         * testsuite/bytestream/filepadsink.c:
5911           plugin name is 'gstbytestream', not 'bytestream'
5912
5913 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5914
5915         * docs/random/bbb/subtitles:
5916           Add some first mind rumblings on proper subtitle support.
5917
5918 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
5919
5920         * po/ca.po:
5921         * po/sv.po:
5922           updated translations
5923
5924 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5925
5926         * docs/manual/advanced-dataaccess.xml:
5927           Add section on how to use fakesrc/fakesink/identity in your
5928           application, plus section on how to embed plugins. Also mention
5929           probes.
5930         * docs/manual/appendix-checklist.xml:
5931         * docs/manual/appendix-debugging.xml:
5932         * docs/manual/appendix-gnome.xml:
5933         * docs/manual/appendix-integration.xml:
5934           Debug -> checklist, GNOME -> integration, add sections on Linux,
5935           KDE integration and add other things useful for application
5936           development.
5937         * docs/manual/manual.xml:
5938           Remove some fixmes, update some file pointers.
5939         * docs/pwg/appendix-checklist.xml:
5940           Fix typo.
5941         * docs/pwg/building-boiler.xml:
5942           Remove ugly header and add commented fixme.
5943         * docs/pwg/pwg.xml:
5944           Add fixme.
5945         * examples/manual/Makefile.am:
5946           Add example for added docs.
5947
5948 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5949
5950         * configure.ac:
5951           back to HEAD
5952
5953 === release 0.8.8 ===
5954
5955 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5956
5957         * NEWS:
5958         * RELEASE:
5959         * configure.ac:
5960           Releasing 0.8.8, "I'll Take Care Of You"
5961
5962 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5963
5964         * configure.ac:
5965           second prerelease
5966
5967 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5968
5969         patch by: Wim Taymans
5970
5971         * gst/gstbin.c:
5972           Fix for #159852 - make iterate emission threadsafe
5973
5974 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5975
5976         * docs/faq/cvs.xml:
5977           notes about new fdo account request
5978
5979 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
5980
5981         * docs/gst/gstreamer-docs.sgml:
5982         * docs/gst/tmpl/gstenumtypes.sgml:
5983         * docs/gst/tmpl/gstplugin.sgml:
5984         * docs/libs/gstreamer-libs-docs.sgml:
5985           Added missing short docs. Added ids for navigation.
5986
5987 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5988
5989         * docs/manual/advanced-autoplugging.xml:
5990         * docs/manual/advanced-schedulers.xml:
5991         * docs/manual/advanced-threads.xml:
5992           Rewrites. Remove cothreads, go a bit into opt specifically,
5993           document threads and their gotchas, and do some technical stuff
5994           on autoplugging plus add some working examples. Fixes #157395.
5995         * examples/manual/Makefile.am:
5996           Add typefind/autoplugger example (one that actually works).
5997           Remove queue example since it's a duplicate of the thread one.
5998
5999 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6000
6001         * gst/gstvalue.c: (gst_value_deserialize_string):
6002           use deprecated g_value_set_string_take_ownership to keep compatible
6003           with glib 2.2
6004
6005 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6006
6007         * gst/gstvalue.c: (gst_value_deserialize_string):
6008           revert last patch, only dom a g_utf8_validate now before accepting
6009           the string - caps parsing strips " from strings so we can't rely on
6010           them
6011         * testsuite/caps/value_serialize.c: (test_string_deserialization):
6012           disable a test that tested the above and comment it
6013
6014 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
6015
6016         Patch reviewed by David Schleef  <ds@schleef.org>
6017
6018         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
6019         bug #153882)
6020         * win32/gstenumtypes.h: same
6021
6022 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6023
6024         * gst/gstpad.c: (gst_pad_query):
6025           Do query on realized pad, similar to how convert/send_event handle
6026           this. Also makes sense, since this pad belongs to the function to
6027           which this query will be sent. Fixes #158163.
6028
6029 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
6030
6031         * docs/manual/appendix-programs.xml: fix pipeline to actually work
6032
6033 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
6034
6035         * docs/faq/general.xml: fix pipeline to actually work
6036
6037 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6038
6039         * gst/gstvalue.c: (gst_value_deserialize_string):
6040           check that a simple string that gets deserialized does not contain
6041           invalid characters
6042         * testsuite/caps/value_serialize.c: (test_string_deserialization):
6043           remove a test that tested a wring behaviour
6044
6045 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
6046
6047         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6048
6049         * docs/manual/intro-motivation.xml:
6050           Fix typos.
6051
6052 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
6053
6054         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6055
6056         * docs/gst/tmpl/gstprobe.sgml:
6057           Fix documentation of probe callback - it is supposed to return
6058           FALSE, not TRUE, to remove data from the stream (#159087).
6059
6060 2004-12-16  Daniel Gazard  <dany42@free.fr>
6061
6062         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6063
6064         * gst/gstelementfactory.c: (gst_element_factory_create):
6065           Fix compile failure if compiling without libxml2 support (#149936).
6066
6067 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6068
6069         * docs/manual/advanced-autoplugging.xml:
6070         * docs/manual/highlevel-components.xml:
6071           Move spider from autoplugging to components. Autoplugging is for
6072           internals, not for solutions. ;-).
6073
6074 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6075
6076         * docs/random/ds/0.9-suggested-changes:
6077           Make note on device/location/uri property names.
6078
6079 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6080
6081         * docs/manual/advanced-autoplugging.xml:
6082         * docs/manual/advanced-clocks.xml:
6083         * docs/manual/advanced-interfaces.xml:
6084         * docs/manual/advanced-metadata.xml:
6085         * docs/manual/advanced-position.xml:
6086         * docs/manual/advanced-schedulers.xml:
6087         * docs/manual/advanced-threads.xml:
6088         * docs/manual/appendix-gnome.xml:
6089         * docs/manual/appendix-programs.xml:
6090         * docs/manual/appendix-quotes.xml:
6091         * docs/manual/autoplugging.xml:
6092         * docs/manual/basics-bins.xml:
6093         * docs/manual/basics-data.xml:
6094         * docs/manual/basics-elements.xml:
6095         * docs/manual/basics-helloworld.xml:
6096         * docs/manual/basics-init.xml:
6097         * docs/manual/basics-pads.xml:
6098         * docs/manual/basics-plugins.xml:
6099         * docs/manual/bins-api.xml:
6100         * docs/manual/bins.xml:
6101         * docs/manual/buffers-api.xml:
6102         * docs/manual/buffers.xml:
6103         * docs/manual/clocks.xml:
6104         * docs/manual/components.xml:
6105         * docs/manual/cothreads.xml:
6106         * docs/manual/debugging.xml:
6107         * docs/manual/dparams-app.xml:
6108         * docs/manual/dynamic.xml:
6109         * docs/manual/elements-api.xml:
6110         * docs/manual/elements.xml:
6111         * docs/manual/factories.xml:
6112         * docs/manual/gnome.xml:
6113         * docs/manual/goals.xml:
6114         * docs/manual/helloworld.xml:
6115         * docs/manual/helloworld2.xml:
6116         * docs/manual/highlevel-components.xml:
6117         * docs/manual/highlevel-xml.xml:
6118         * docs/manual/init-api.xml:
6119         * docs/manual/intro-basics.xml:
6120         * docs/manual/intro-motivation.xml:
6121         * docs/manual/intro-preface.xml:
6122         * docs/manual/intro.xml:
6123         * docs/manual/links-api.xml:
6124         * docs/manual/links.xml:
6125         * docs/manual/manual.xml:
6126         * docs/manual/motivation.xml:
6127         * docs/manual/pads-api.xml:
6128         * docs/manual/pads.xml:
6129         * docs/manual/plugins-api.xml:
6130         * docs/manual/plugins.xml:
6131         * docs/manual/programs.xml:
6132         * docs/manual/queues.xml:
6133         * docs/manual/quotes.xml:
6134         * docs/manual/schedulers.xml:
6135         * docs/manual/states-api.xml:
6136         * docs/manual/states.xml:
6137         * docs/manual/threads.xml:
6138         * docs/manual/typedetection.xml:
6139         * docs/manual/win32.xml:
6140         * docs/manual/xml.xml:
6141           Try 2. This time, include a short preface as a "general
6142           introduction", also add code blocks around all code samples
6143           so they get compiled. We still need a way to tell readers
6144           the filename of the code sample. In some cases, don't show
6145           all code in the documentation, but do include it in the generated
6146           code. This allows for focussing on specific bits in the docs,
6147           while still having a full test application available.
6148         * examples/manual/Makefile.am:
6149           Fix up examples for new ADM. Add several of the new examples that
6150           were either added or were missing from the build system.
6151         * examples/manual/extract.pl:
6152           Allow nameless blocks.
6153
6154 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6155
6156         * docs/manual/elements-api.xml:
6157         * docs/manual/helloworld.xml:
6158         * examples/manual/extract.pl:
6159           fix last example.  Add example of adding code blocks that are not
6160           shown in docbook output.
6161
6162 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6163
6164         * docs/manual/dynamic.xml:
6165         * docs/manual/elements-api.xml:
6166         * docs/manual/gnome.xml:
6167         * docs/manual/helloworld2.xml:
6168         * docs/manual/init-api.xml:
6169         * docs/manual/queues.xml:
6170         * docs/manual/threads.xml:
6171         * docs/manual/xml.xml:
6172         * examples/manual/extract.pl:
6173           Make it possible to extract example code from separate blocks.
6174           Should make Ronald happy.
6175
6176 2004-12-15  Wim Taymans  <wim@fluendo.com>
6177
6178         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6179         (remove_from_group), (group_elements_set_visited),
6180         (normalize_group), (gst_opt_scheduler_iterate):
6181         Fix bug where a flag was not updated on a decoupled entry point 
6182         because we were just checking the group element list and decoupled
6183         elements are not in that list..
6184
6185 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6186
6187         * docs/manual/advanced-autoplugging.xml:
6188         * docs/manual/advanced-clocks.xml:
6189         * docs/manual/advanced-dparams.xml:
6190         * docs/manual/advanced-interfaces.xml:
6191         * docs/manual/advanced-metadata.xml:
6192         * docs/manual/advanced-position.xml:
6193         * docs/manual/advanced-schedulers.xml:
6194         * docs/manual/advanced-threads.xml:
6195         * docs/manual/appendix-debugging.xml:
6196         * docs/manual/appendix-gnome.xml:
6197         * docs/manual/appendix-programs.xml:
6198         * docs/manual/appendix-quotes.xml:
6199         * docs/manual/appendix-win32.xml:
6200         * docs/manual/autoplugging.xml:
6201         * docs/manual/basics-bins.xml:
6202         * docs/manual/basics-data.xml:
6203         * docs/manual/basics-elements.xml:
6204         * docs/manual/basics-helloworld.xml:
6205         * docs/manual/basics-init.xml:
6206         * docs/manual/basics-pads.xml:
6207         * docs/manual/basics-plugins.xml:
6208         * docs/manual/bins-api.xml:
6209         * docs/manual/bins.xml:
6210         * docs/manual/buffers-api.xml:
6211         * docs/manual/buffers.xml:
6212         * docs/manual/clocks.xml:
6213         * docs/manual/components.xml:
6214         * docs/manual/cothreads.xml:
6215         * docs/manual/debugging.xml:
6216         * docs/manual/dparams-app.xml:
6217         * docs/manual/dynamic.xml:
6218         * docs/manual/elements-api.xml:
6219         * docs/manual/elements.xml:
6220         * docs/manual/factories.xml:
6221         * docs/manual/gnome.xml:
6222         * docs/manual/goals.xml:
6223         * docs/manual/helloworld.xml:
6224         * docs/manual/helloworld2.xml:
6225         * docs/manual/highlevel-components.xml:
6226         * docs/manual/highlevel-xml.xml:
6227         * docs/manual/init-api.xml:
6228         * docs/manual/intro-motivation.xml:
6229         * docs/manual/intro-preface.xml:
6230         * docs/manual/intro.xml:
6231         * docs/manual/links-api.xml:
6232         * docs/manual/links.xml:
6233         * docs/manual/manual.xml:
6234         * docs/manual/motivation.xml:
6235         * docs/manual/pads-api.xml:
6236         * docs/manual/pads.xml:
6237         * docs/manual/plugins-api.xml:
6238         * docs/manual/plugins.xml:
6239         * docs/manual/programs.xml:
6240         * docs/manual/queues.xml:
6241         * docs/manual/quotes.xml:
6242         * docs/manual/schedulers.xml:
6243         * docs/manual/states-api.xml:
6244         * docs/manual/states.xml:
6245         * docs/manual/threads.xml:
6246         * docs/manual/typedetection.xml:
6247         * docs/manual/win32.xml:
6248         * docs/manual/xml.xml:
6249           First try at rewriting the ADM. Needs lotsamore work, but some
6250           parts might already be somewhat useful.
6251         * docs/pwg/advanced-interfaces.xml:
6252           Remove properties interface, it never actually existed (except for
6253           on my HD...).
6254
6255 2004-12-13  David Schleef  <ds@schleef.org>
6256
6257         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
6258         be NULL (bug #160220).
6259
6260 2004-12-13  David Schleef  <ds@schleef.org>
6261
6262         * configure.ac: remove all mmx stuff, because it's not used.
6263         * docs/random/ds/0.9-suggested-changes: additional notes
6264         * include/Makefile.am: we don't use these anymore
6265         * include/mmx.h: remove
6266         * include/sse.h: remove
6267
6268 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6269
6270         * docs/random/mimetypes:
6271           Add FOURCC code for h264 codec (VSSH)
6272           Add alternate FOURCC codes for h263 related codecs
6273
6274 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
6275
6276         * docs/manual/programs.xml:
6277           Added more gst-launch examples.
6278
6279 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6280
6281         * gst/gstqueue.c: (gst_queue_handle_src_query):
6282           Check for availability again.
6283
6284 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6285
6286         * gst/gstcaps.c: (gst_caps_compare_structures):
6287           Simple caps go first. This has the nice side-effect of fixing an
6288           obscure warning.
6289
6290 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6291
6292         * gst/gstversion.h.in:
6293           Protect header.
6294
6295 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6296
6297         * gst/schedulers/gstoptimalscheduler.c:
6298         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
6299         (gst_opt_scheduler_get_wrapper):
6300           When we're recursing into a chain run, only run the directly
6301           related group, not all queued ones. This will fix a possible
6302           deadlock in chains with more than two groups.
6303
6304 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6305
6306         * autogen.sh:
6307           remove patch if autopoint fails
6308
6309 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6310
6311         * docs/gst/gstreamer-sections.txt:
6312           Document Thomas' addition, fix build, make Luis the sheriff happy.
6313
6314 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
6315
6316         * gst/gstplugin.c:
6317         * gst/gstplugin.h:
6318           add accessor for version field
6319
6320 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6321
6322         submitted by: Luca Ferretti <elle.uca@infinito.it>
6323
6324         * po/LINGUAS:
6325         * po/it.po:
6326           New tranlation added: Italian
6327
6328 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6329
6330         * gst/gstpad.c: (gst_pad_is_negotiated),
6331         (gst_pad_get_negotiated_caps):
6332           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
6333           it doesn't actually check the contents), so be sure to hand it
6334           a RealPad else we'll crash.
6335
6336 2004-12-03  Wim Taymans  <wim@fluendo.com>
6337
6338         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
6339         (gst_queue_link), (gst_queue_handle_src_query):
6340         Reverted to 1.110 until this makes the testsuite and various
6341         apps work.
6342
6343 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
6344
6345         * docs/upload.mak: fix included CVS conflict strings
6346
6347 2004-12-01  William Jon McCann  <mccann@jhu.edu>
6348
6349         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6350
6351         * gst/gstelement.c: (gst_element_error_full):
6352           Use g_error_new_literal because error text may have
6353           percentage signs in it. Fixes #160019.
6354
6355 2004-12-01  Benjamin Otte  <otte@gnome.org>
6356
6357         * gst/elements/gstbufferstore.c:
6358         (gst_buffer_store_add_buffer_func):
6359           don't try to make subbuffers bigger than they can be. (fixes
6360           #159970)
6361
6362 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6363
6364         * docs/gst/gstreamer-sections.txt:
6365         * docs/gst/tmpl/gstvalue.sgml:
6366           Add new function to docs to fix build.
6367
6368 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6369
6370         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
6371         * gst/gstpad.c: (_gst_pad_default_fixate_value),
6372         (_gst_pad_default_fixate_foreach):
6373         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
6374         * gst/gstvalue.h:
6375           Deprecate _type_is_fixed, use _value_is_fixed instead, since
6376           in some cases (arrays), the fixedness depends on the content.
6377         * gst/gstqueue.c: (gst_queue_handle_src_query):
6378           Check for availability before doing something.
6379
6380 2004-11-29  Wim Taymans  <wim@fluendo.com>
6381
6382         * testsuite/threads/Makefile.am:
6383         * testsuite/threads/signals.c: (gst_test_get_type),
6384         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
6385         (gst_test_set_property), (gst_test_get_property),
6386         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
6387         (gst_test_do_prop), (run_thread), (main):
6388         Added a bunch of testcases that show threadsafety bugs in glib.
6389
6390 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
6391
6392         * docs/manual/programs.xml:
6393           Added a first batch of gst-launch examples, as provided by Ronald
6394           and others from the devel-mlist
6395
6396 2004-11-28  Benjamin Otte  <otte@gnome.org>
6397
6398         * gst/gstelement.c: (gst_element_negotiate_pads):
6399           simplify
6400         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
6401         (gst_value_serialize_string), (gst_value_deserialize_string):
6402           add unwrapping of previously wrapped strings. Fix bug in wrapping
6403           while at it.
6404         * testsuite/caps/value_serialize.c: (test1),
6405         (test_string_serialization), (test_string_deserialization), (main):
6406           add tests for string (de)serialization
6407
6408 2004-11-26  Wim Taymans  <wim@fluendo.com>
6409
6410         * testsuite/threads/159566.c: (object_deep_notify), (main):
6411         * testsuite/threads/Makefile.am:
6412         Added testsuite to show bug #159566
6413
6414 2004-11-25  Wim Taymans  <wim@fluendo.com>
6415
6416         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
6417         (gst_thread_child_state_change), (gst_thread_main_loop):
6418         Ref the thread object in the GThread mainloop. Break out of the
6419         thread mainloop if it holds the last ref. This properly exits
6420         the threads when disposing the thread from its own context. It
6421         also avoids possible deadlocks in the dispose function.
6422
6423 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
6424
6425         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
6426         it is necessary to wait.
6427
6428 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6429
6430         * docs/pwg/building-boiler.xml:
6431           Make description somewhat clearer.
6432
6433 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6434
6435         * docs/upload.mak:
6436           Apparently docs changed location on FDO's server.
6437
6438 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6439
6440         * docs/pwg/appendix-checklist.xml:
6441           Add some random notes on things to check when writing an element.
6442           This list can be extended as people see fit.
6443
6444 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
6445
6446         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
6447         (gst_queue_link_src): Allow for renegotiating the caps of the sink
6448         pad. The queue will now wait until it is empty and forward the new
6449         caps to the source.
6450         * gst/gstbin.c (gst_bin_set_element_sched)
6451         (gst_bin_unset_element_sched): Make sure that all elements and
6452         links are registered and unregistered with the scheduler exactly
6453         once. This elaborates on a fix by Benjamin Otte, but
6454         guarantees that decoupled elements are also registered.
6455
6456 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
6457
6458         * docs/manual/quotes.xml:
6459           add a quote
6460         * configure.ac:
6461         * gst/gst.c:
6462         * gst/gstinfo.c:
6463           add LIBDIR and move init message higher up so it's at the start
6464
6465 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
6466
6467         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
6468         * gstreamer.spec.in: add fair
6469
6470 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6471
6472         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6473         * gst/elements/gstidentity.c: (gst_identity_class_init):
6474           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
6475           <teuf@gnome.org> (#157263).
6476         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
6477         (gst_type_find_handle_src_query):
6478           Subtract size of internally stored data from position queries.
6479
6480 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
6481
6482         * gst/schedulers/fairscheduler.c:
6483         * gst/schedulers/faircothreads.c:
6484         * gst/schedulers/faircothreads.h:
6485         New cothread based scheduler: Fair scheduler.
6486         * gst/schedulers/gthread-cothreads.h: 
6487         Add the standard #if around the whole file.
6488         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
6489         compilation of the functions defined in this file. This is
6490         necessary to be able to use this file as a normal header.
6491         * gst/schedulers/Makefile.am: Add compiling support for fair
6492         scheduler.
6493         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
6494         scheduler cothreads layer from documentation generation.
6495
6496 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6497
6498         * gst/autoplug/gstspideridentity.c:
6499         (gst_spider_identity_sink_loop_type_finding):
6500           Don't crash if that function is not implemented.
6501
6502 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6503
6504         * docs/pwg/advanced-types.xml:
6505           Another typo.
6506
6507 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6508
6509         * docs/pwg/intro-preface.xml:
6510           Hm, ok, so the brackets weren't really useful...
6511         * docs/pwg/other-ntoone.xml:
6512           Fix embarassing typo.
6513
6514 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6515
6516         * docs/pwg/intro-preface.xml:
6517           Rewrite preface.
6518
6519 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6520
6521         * docs/pwg/advanced-scheduling.xml:
6522         * docs/pwg/advanced-tagging.xml:
6523         * docs/pwg/advanced-types.xml:
6524         * docs/pwg/building-boiler.xml:
6525         * docs/pwg/building-chainfn.xml:
6526         * docs/pwg/building-signals.xml:
6527         * docs/pwg/building-state.xml:
6528         * docs/pwg/building-testapp.xml:
6529         * docs/pwg/intro-basics.xml:
6530         * docs/pwg/other-manager.xml:
6531         * docs/pwg/other-source.xml:
6532           Typo fixes.
6533         * docs/pwg/other-manager.xml:
6534           Add some first content. No example code yet.
6535         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
6536           Remove double newlines.
6537
6538 2004-11-04  Wim Taymans  <wim@fluendo.com>
6539
6540         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6541         (remove_from_group), (normalize_group), (group_migrate_connected),
6542         (gst_opt_scheduler_iterate):
6543         * testsuite/schedulers/.cvsignore:
6544         * testsuite/schedulers/Makefile.am:
6545         * testsuite/schedulers/queue_link.c: (main):
6546         Added testcase for scheduler segfault.
6547         Fix scheduler segfault when removing a decoupled
6548         entry point as the last element from a group.
6549
6550 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6551
6552         * gst/gstmarshal.list: add missing marshaller, fixes build
6553
6554 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6555
6556         * docs/random/signal: added notes about using BOXED for GstBuffer
6557         signal marshallers, not POINTER
6558
6559 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6560
6561         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6562         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
6563         POINTER=>BOXED changes to marshal GstBuffers
6564
6565 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6566
6567         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
6568         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
6569
6570 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
6571
6572         * docs/gst/gstreamer-sections.txt:
6573         * docs/gst/tmpl/gstcaps.sgml:
6574         * docs/gst/tmpl/gsterror.sgml:
6575         * docs/gst/tmpl/gstinfo.sgml:
6576         * docs/gst/tmpl/gstmacros.sgml:
6577         * docs/gst/tmpl/gstutils.sgml:
6578         * docs/random/ensonic/interfaces.txt:
6579         * gst/gstinfo.h:
6580           added some more docs, removed two obsolete defines
6581
6582 2004-11-02  Kjartan Maraas <as at gnome.org>
6583
6584         reviewed by: Wim Taymans, Ronald Bultje.
6585
6586         * gst/cothreads.c: (cothread_create):
6587         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
6588         (gst_bin_child_state_change_func):
6589         * gst/gstbuffer.c: (gst_buffer_span):
6590         * gst/gstelement.c: (gst_element_get_index),
6591         (gst_element_get_event_masks), (gst_element_get_query_types),
6592         (gst_element_get_formats):
6593         * gst/gsterror.c: (_gst_core_errors_init),
6594         (_gst_library_errors_init), (_gst_resource_errors_init),
6595         (_gst_stream_errors_init):
6596         * gst/gstobject.c: (gst_object_default_deep_notify):
6597         * gst/gstpad.c: (gst_pad_get_event_masks),
6598         (gst_pad_get_internal_links_default):
6599         * gst/gstplugin.c: (gst_plugin_register_func),
6600         (gst_plugin_get_module):
6601         * gst/gststructure.c: (gst_structure_get_string),
6602         (gst_structure_get_abbrs), (gst_structure_from_abbr),
6603         (gst_structure_to_abbr):
6604         * gst/gstutils.c: (gst_print_element_args):
6605         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6606         (setup_group_scheduler), (gst_opt_scheduler_iterate):
6607         Aplied part of patch #157127: Cleanup of issues reported by 
6608         sparse.
6609         Also do not try to use cothreads when there is no cothread
6610         context yet.
6611
6612 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
6613
6614         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6615         (gst_opt_scheduler_iterate):
6616         Applied patch #154061. Running a pipeline in which an element 
6617         calls GST_ELEMENT_ERROR in the chain function, the opt 
6618         scheduler doesn't unref the chain so it never gets freed.
6619
6620 2004-11-02  Wim Taymans  <wim@fluendo.com>
6621
6622         * gst/gststructure.c: (gst_structure_get_abbrs),
6623         (gst_structure_from_abbr), (gst_structure_to_abbr):
6624         Remove that ugly if-then thing in the code that converts
6625         between strings and types.
6626
6627 2004-11-02  Wim Taymans  <wim@fluendo.com>
6628
6629         * gst/gstscheduler.c: (gst_scheduler_add_element),
6630         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
6631         Aplied clock distribution patch, this should fix bug
6632         #148787.
6633
6634 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
6635
6636         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
6637
6638         * po/LINGUAS:
6639         * po/nb.po:
6640           Added Norwegian Bokmaal translation
6641
6642 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6643
6644         * tools/gst-inspect.c: (print_signal_info):
6645           print signal arguments as pointers if they are
6646
6647 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
6648
6649         * docs/pwg/building-boiler.xml:
6650           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
6651
6652 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6653
6654         * gst/parse/parse.l:
6655         * testsuite/parse/parse1.c: (main):
6656         Since parse can do 'element name=a:b' make 'a:b.' work as
6657         well. 
6658         Added testcase to verify fix.
6659
6660 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6661
6662         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
6663         Use the realpad when printing the direction.
6664         Add extra \n when printing extensions of typefind factories.
6665
6666 2004-10-13  David Schleef  <ds@schleef.org>
6667
6668         * examples/manual/Makefile.am: $< isn't portable in Makefile
6669         rules.
6670
6671 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
6672
6673         * docs/gst/tmpl/gstobject.sgml:
6674         * docs/gst/tmpl/gstplugin.sgml:
6675         * docs/gst/tmpl/gstpluginfeature.sgml:
6676         * docs/gst/tmpl/gstregistry.sgml:
6677         * docs/gst/tmpl/gstversion.sgml:
6678         * gst/gstbin.c:
6679           more api documentation
6680         * gst/gstplugin.c: (gst_plugin_register_func),
6681         (gst_plugin_check_file), (gst_plugin_load_file):
6682           better error signaling and logging
6683
6684 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6685
6686         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
6687           Subtract current queue contents from position queries.
6688
6689 2004-10-11  Johan Dahlin  <johan@gnome.org>
6690
6691         * gst/gsturi.c (gst_uri_get_location): unescape string
6692         (gst_uri_construct): escape string.
6693
6694 2004-10-11  Benjamin Otte  <otte@gnome.org>
6695
6696         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
6697         (gst_pad_try_set_caps_nonfixed):
6698           allow renegotiation of unconnected pads (as inside spider). Simply
6699           return OK if unconnected - mimic try_set_caps there.
6700
6701 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6702
6703         * gst/gstbin.c: (gst_bin_sync_children_state):
6704           Add missing break.
6705
6706 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6707
6708         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
6709         Set element to EOS before sending EOS event
6710
6711 2004-10-08  Wim Taymans  <wim at fluendo dot com>
6712
6713         * gst/elements/gsttypefindelement.c:
6714         (gst_type_find_element_handle_event):
6715         Handle EOS events when doing the transition from
6716         typefind to data passing. This should fix the
6717         infinite loops in short files.
6718
6719 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6720
6721         * gst/gstthread.c: (gst_thread_change_state),
6722         (gst_thread_child_state_change):
6723         Make sure no iteration happens while performing
6724         the state change as it could mess up the internal
6725         consistency of the thread state.
6726
6727 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6728
6729         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
6730         (gst_thread_change_state), (gst_thread_child_state_change):
6731         Do not try to grab the iterate lock in the state change method
6732         when we are in the same thread as the iterate or else we
6733         could deadlock. Some other cleanups.
6734
6735 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6736
6737         * configure.ac:
6738           bump nano to cvs
6739
6740 === release 0.8.7 ===
6741
6742 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6743
6744         * configure.ac:
6745         * NEWS:
6746         * RELEASE:
6747         * configure.ac:
6748           releasing 0.8.7, "A Cruise"
6749
6750 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6751
6752         * docs/random/mimetypes:
6753         Add an entry for Sony ATRAC3 audio format with mime-type
6754         used by rmdemux et riff-read
6755
6756 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6757
6758         * gst/elements/gsttypefindelement.c: (stop_typefinding):
6759         Push the buffer store instead of clearing it in case that
6760         the stream is not seekable.
6761
6762 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6763
6764         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
6765         (gst_thread_main_loop):
6766         Lock the iteration and the state change so that automatic
6767         negotiation and fixation does not happen at the same time
6768         as the in stream negotiation.
6769
6770 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6771
6772         * configure.ac:
6773           bump nano to cvs
6774
6775 === release 0.8.6 ===
6776
6777 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6778
6779         * configure.ac:
6780         * NEWS:
6781         * RELEASE:
6782         * configure.ac:
6783           releasing 0.8.6, "Narc"
6784
6785 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6786
6787         * configure.ac:
6788           prerel bump
6789
6790 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6791
6792         patch by: Steve Lhomme
6793
6794         * gst/elements/gstfakesrc.c:
6795         * gst/elements/gstidentity.c:
6796         * gst/gstthread.c:
6797           Fix for #153881
6798
6799 2004-10-01  Wim Taymans  <wim at fluendo dot com>
6800
6801         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
6802         Fix threadsafety of the crc checking function.
6803
6804 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6805
6806         patch by: Ronald Bultje
6807
6808         * gst/elements/gsttypefindelement.c: (stop_typefinding),
6809         (gst_type_find_element_handle_event),
6810         (gst_type_find_element_chain):
6811         * gst/elements/gsttypefindelement.h:
6812          #153657.
6813          Filter out discont event from seekable sources when typefind
6814          asks them to seek.  Fixes typefind with demuxers for
6815          avi, asf and matroska.
6816
6817 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6818
6819         * docs/gst/gstreamer-sections.txt:
6820         * gst/gstcaps.c:
6821         * gst/gstcaps.h:
6822         * gst/gstpad.c:
6823           Revert preferred caps: (#147789)
6824
6825 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
6826
6827         * win32/dirent.c:
6828           fix a memory leak
6829
6830 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6831
6832         * configure.ac:
6833           bump for prerelease
6834
6835 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6836
6837         * docs/Makefile.am:
6838         * docs/manual/elements-api.xml:
6839           restructure so that common stuff is shown first
6840         * docs/manual/init-api.xml:
6841           convert to examples
6842         * docs/manual/manual.xml:
6843         * docs/manuals.mak:
6844         * docs/url.entities:
6845           link to API on the website, possibly override later in build
6846         * examples/manual/.cvsignore:
6847           ignore more
6848         * examples/manual/Makefile.am:
6849           add more examples
6850         * examples/manual/extract.pl:
6851           error out on failure
6852
6853 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6854
6855         * docs/gst/tmpl/gstthread.sgml:
6856         * docs/manual/init-api.xml:
6857         * examples/manual/Makefile.am:
6858           convert two code bits to examples
6859
6860 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6861
6862         * gst/gstelement.c: (gst_element_change_state):
6863           Well, actually, I was about to remove this insane assert when
6864           I noticed Wim already did that. A warning is nice so we can
6865           fix actual ugs (using --g-fatal-warnings and backtraces), so
6866           I added that instead.
6867
6868 2004-09-06  Wim Taymans  <wim@fluendo.com>
6869
6870         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
6871         (gst_element_threadsafe_properties_post_run),
6872         (gst_element_set_state), (gst_element_change_state):
6873         Added extra refcounting around various places. 
6874
6875 2004-09-06  Wim Taymans  <wim@fluendo.com>
6876
6877         * gst/gstpad.c: (gst_pad_link_call_link_functions):
6878         Fix debug info.
6879
6880 2004-09-06  Wim Taymans  <wim@fluendo.com>
6881
6882         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6883         (remove_from_group):
6884         Some more debug info.
6885
6886 2004-09-03  Wim Taymans  <wim@fluendo.com>
6887
6888         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
6889         (gst_fakesrc_init), (gst_fakesrc_set_clock),
6890         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
6891         (gst_fakesrc_get), (gst_fakesrc_change_state):
6892         * gst/elements/gstfakesrc.h:
6893         * gst/elements/gstidentity.c: (gst_identity_class_init),
6894         (gst_identity_init), (gst_identity_chain),
6895         (gst_identity_set_property), (gst_identity_get_property),
6896         (gst_identity_change_state):
6897         * gst/elements/gstidentity.h:
6898         Added datarate properties to limit the datarate.
6899
6900 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6901
6902         * gst/autoplug/gstspider.c: (plugin_init):
6903           don't set a rank. We don't want to autoplug by inserting spiders.
6904
6905 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6906
6907         * gst/autoplug/gstspider.c: (gst_spider_class_init),
6908         (gst_spider_identity_plug):
6909           add a template for spider's sink
6910         * gst/gst.c: (gst_register_core_elements):
6911           queue's rank should be NULL, we don't want spider to add it.
6912
6913 2004-08-18  David Schleef  <ds@schleef.org>
6914
6915         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
6916         * docs/libs/Makefile.am: same
6917         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
6918         * docs/random/ds/0.9-planning: random additions
6919         * docs/random/ds/0.9-suggested-changes: same
6920         * gst/gstxml.h: remove vestigal GstXMLNs definition
6921
6922         Preferred caps: (#147789)
6923         * docs/gst/gstreamer-sections.txt: Add symbols
6924         * docs/gst/tmpl/gstcaps.sgml: Add symbols
6925         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
6926         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
6927         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
6928         (gst_caps_get_preferred), (gst_caps_set_preferred),
6929         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
6930         (gst_caps_use_preferred): Handle caps preferences
6931         * gst/gstcaps.h: Add caps preferences
6932         * gst/gstpad.c: (gst_pad_link_get_preferred),
6933         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
6934         (gst_pad_renegotiate), (gst_pad_guess_preferred),
6935         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
6936         negotiation.
6937
6938 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6939
6940         * gst/autoplug/gstspideridentity.c:
6941         (gst_spider_identity_request_new_pad):
6942         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
6943         (gst_aggregator_init):
6944         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
6945         (gst_fakesink_init):
6946         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
6947         (gst_fakesrc_init):
6948         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
6949         (gst_fdsink_init):
6950         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
6951         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
6952         (gst_filesink_init):
6953         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
6954         (gst_filesrc_init):
6955         * gst/elements/gstidentity.c: (gst_identity_base_init),
6956         (gst_identity_init):
6957         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
6958         (gst_multifilesrc_init):
6959         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
6960         (gst_pipefilter_init):
6961         * gst/elements/gststatistics.c: (gst_statistics_base_init),
6962         (gst_statistics_init):
6963         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
6964         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
6965           s/gst_pad_new/&_from_template/
6966           register pad templates in the base_init function
6967           add static pad template definitions
6968
6969 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6970
6971         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
6972         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
6973         * testsuite/refcounting/pad.c: (main):
6974         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
6975           s/gst_pad_new/&_from_template/
6976           prepare deprecation of gst_pad_new
6977
6978 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
6979
6980         patch by: Luca Ognibene <skaboy81@virgilio.it>
6981
6982         * gst/gstcaps.c:
6983         * gst/gstelement.c:
6984         * gst/gstpad.c:
6985         * gst/gstxml.c:
6986           fix memleaks.  Fixes #150001
6987
6988 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6989
6990         * docs/random/ds/0.9-suggested-changes:
6991           add notes - mostly about pad templates
6992
6993 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
6994
6995         * win32/GStreamer.vcproj:
6996           temporary locale files are .gmo not .mo
6997
6998 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6999
7000         * configure.ac: bump nano to cvs
7001
7002 === release 0.8.5 ===
7003
7004 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7005
7006         * configure.ac:
7007           releasing 0.8.5, "Stuttgart"
7008         * NEWS:
7009         * RELEASE:
7010         * configure.ac:
7011         * docs/random/release:
7012           updates for release
7013
7014 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7015
7016         patch by: Wim Taymans (wim@fluendo.com)
7017
7018         * gst/gstbuffer.c:
7019         * gst/gstindex.h:
7020         * libs/gst/dataprotocol/dataprotocol.c:
7021           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
7022
7023 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7024
7025         * Makefile.am:
7026         * win32/MANIFEST:
7027           add win32 dir to the build.  Fixes #149981.
7028
7029 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7030
7031         * configure.ac:
7032           bump libtool versioning
7033         * gst/gststructure.c:
7034           mark function as static
7035         * po/af.po:
7036         * po/az.po:
7037         * po/ca.po:
7038         * po/cs.po:
7039         * po/en_GB.po:
7040         * po/fr.po:
7041         * po/nl.po:
7042         * po/sq.po:
7043         * po/sr.po:
7044         * po/sv.po:
7045         * po/tr.po:
7046         * po/uk.po:
7047           translations update
7048         * win32/README.txt:
7049           trademark protection
7050
7051 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7052
7053         * configure.ac:
7054           fix GST_ORIGIN
7055           set GST_PACKAGE to source, and distinguish between release and other
7056         * tools/gst-inspect.c:
7057           print out plugin an element factory is part of so we see this info
7058
7059 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7060
7061         * docs/gst/gstreamer-sections.txt:
7062         * docs/gst/tmpl/gstbuffer.sgml:
7063         * docs/gst/tmpl/gstschedulerfactory.sgml:
7064           reorder docs a little, make GstBuffer's more sensible.
7065         * gst/gstbuffer.h:
7066           API: added GST_BUFFER_FLAG_DELTA_UNIT
7067         * gst/gstscheduler.c:
7068           comment API addition
7069
7070 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7071
7072         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
7073           work with non-regular files that can be mmapped (like /dev/zero)
7074         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
7075           get rid of typefinds that require a seek when we can't seek instead
7076           of trying them over and over again
7077         * tools/gst-launch.c: (idle_func), (error_cb), (main):
7078           return non-zero failure value when the pipeline was interrupted or
7079           an error occurred
7080
7081 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
7082
7083         * win32/config.h:
7084         * win32/GStreamer.vcproj:
7085           compile and install the locales
7086
7087 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
7088
7089         * gst/gstvalue.c:
7090           fix a possible memory leak under Windows
7091
7092 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
7093
7094         * win32/GStreamer.vcproj:
7095           fix a memory leak that occured under Windows
7096         * win32/gstreamer.def:
7097           add gst_scheduler_register
7098
7099 2004-08-11  Benjamin Otte  <otte@gnome.org>
7100
7101         * docs/gst/gstreamer-sections.txt:
7102         * gst/gstscheduler.c: (gst_scheduler_register):
7103         * gst/gstscheduler.h:
7104           API:
7105           add gst_scheduler_register shortcut similar to gst_element_register
7106         * gst/schedulers/entryscheduler.c: (plugin_init):
7107         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
7108         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
7109           use it
7110
7111 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
7112
7113         * gst/gstvalue.h:
7114           fix a memory leak that occured under Windows
7115
7116 2004-08-10  Colin Walters  <walters@redhat.com>
7117
7118         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
7119         Don't use O_EXCL to open temporary registry.  It will prevent
7120         registry creation if a temporary one already exists, which
7121         is unnecessary.
7122
7123 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7124
7125         * docs/gst/gstreamer-sections.txt:
7126         * docs/gst/tmpl/gstvalue.sgml:
7127           remove some valuable stuff from the documentation due to the use of GST_EXPORT
7128
7129 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7130
7131         * win32/gstbytestream.vcproj:
7132         * win32/gstelements.vcproj:
7133         * win32/gstgetbits.vcproj:
7134         * win32/gst-inspect.vcproj:
7135         * win32/gst-launch.vcproj:
7136         * win32/gstoptimalscheduler.vcproj:
7137         * win32/GStreamer.vcproj:
7138         * win32/gst-register.vcproj:
7139         * win32/gstspider.vcproj:
7140           update the include and lib dirs to fit standard libraries as
7141           described in the Win32 manual
7142
7143 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7144
7145         * win32/config.h:
7146         * win32/gstversion.h:
7147           enable NLS again, push the version number for the coming 0.8.5 release
7148
7149 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7150
7151         * gst/gstvalue.h:
7152           export gst_type_XXX for windows DLLs
7153
7154 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7155
7156         * docs/faq/gst-uninstalled:
7157           fix PKG_CONFIG_PATH and PYTHONPATH
7158         * gst/schedulers/Makefile.am:
7159           cleanup
7160         * libs/gst/bytestream/bytestream.c:
7161           remove newline
7162         * po/LINGUAS:
7163         * po/sq.po:
7164           adding Albanian translation (Laurent Dhima)
7165         * po/cs.po:
7166           updated
7167
7168 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7169
7170         * po/ca.po:
7171         * po/sv.po:
7172           updated translations
7173
7174 2004-08-04  Benjamin Otte  <otte@gnome.org>
7175
7176         * tests/mass_elements.c: (main):
7177           allow specifying src and sink element explicitly, so I can test
7178           videotestsrc instead of fakesrc
7179
7180 2004-08-04  Benjamin Otte  <otte@gnome.org>
7181
7182         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
7183         (gst_structure_id_empty_new), (gst_structure_empty_new),
7184         (gst_structure_copy):
7185           add gst_structure_id_empty_new_with_size to allow preallocating
7186           value array sizes. Use this in gst_structure_copy to get rid of
7187           reallocs.
7188           don't do quark=>string=>quark when copying structures
7189
7190 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
7191
7192         * docs/manual/win32.xml:
7193         * win32/README.txt:
7194           update documentation with the clean version of dependencies
7195
7196 2004-08-03  Benjamin Otte  <otte@gnome.org>
7197
7198         * gst/schedulers/entryscheduler.c:
7199         (gst_entry_scheduler_remove_element):
7200           fix for GST_DISABLE_DEBUG
7201         * tools/gst-launch.c: (print_tag):
7202           fixes for G_DISABLE_ASSERT
7203
7204 2004-08-03  Benjamin Otte  <otte@gnome.org>
7205
7206         * gst/gst.c: (gst_register_core_elements):
7207           fix for G_DISABLE_ASSERT
7208         * gst/gstinfo.c: (__gst_in_valgrind):
7209           add for GST_DISABLE_DEBUG
7210
7211 2004-08-03  Benjamin Otte  <otte@gnome.org>
7212
7213         * gst/parse/parse.l:
7214           fix for G_DISABLE_ASSERT
7215
7216 2004-08-03  Wim Taymans  <wim@fluendo.com>
7217
7218         * gst/gstbin.c: (gst_bin_get_type),
7219         (gst_bin_child_state_change_func):
7220         * gst/gstthread.c: (gst_thread_change_state):
7221         Backported some debug logging from a reverted patch
7222         Don't try to destroy the thread twice. Added some more
7223         debugging in GstThread. Unlock and signal even if we
7224         are in the thread context.
7225
7226 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7227
7228         * po/uk.po:
7229           updated translation
7230
7231 2004-07-30  David Schleef  <ds@schleef.org>
7232
7233         * gst/gstatomic_impl.h: Enable atomic code for x86_64
7234
7235 2004-07-29  David Schleef  <ds@schleef.org>
7236
7237         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
7238         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
7239
7240 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
7241
7242         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7243         (gst_bin_add_func), (gst_bin_remove_func),
7244         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
7245         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
7246         (gst_bin_change_state_norecurse), (gst_bin_dispose),
7247         (gst_bin_sync_children_state):
7248         * gst/gstbin.h:
7249         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
7250         (gst_thread_change_state):
7251         * testsuite/states/Makefile.am:
7252           revert state change patches as agreed so we can rework them
7253           gradually
7254
7255 2004-07-29  Benjamin Otte  <otte@gnome.org>
7256
7257         * libs/gst/control/Makefile.am:
7258           link to libgstreamer (fixes Debian bug 262019, see
7259           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
7260
7261 2004-07-29  Wim Taymans  <wim@fluendo.com>
7262
7263         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
7264         (check_from_fraction_convert), (transform_test), (main):
7265         Make the test less pedantic about float roundoff errors.
7266
7267 2004-07-29  Benjamin Otte  <otte@gnome.org>
7268
7269         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
7270         (gst_filesrc_srcpad_event):
7271           make seek events to before start/after end of file not fail, but
7272           seek to start/end instead
7273         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
7274           add more output
7275
7276 2004-07-29  Benjamin Otte  <otte@gnome.org>
7277
7278         * gst/gstpad.c: (gst_pad_set_explicit_caps):
7279           check that caps are fixed
7280         * gst/gstpad.c: (gst_pad_template_new):
7281           don't try to simplify caps, costs too much time on gst_init
7282         * gst/gstplugin.c: (gst_plugin_add_feature):
7283           G_ERROR if features are added twice
7284         * gst/gsttypefind.c: (gst_type_find_register):
7285         * gst/gstelementfactory.c: (gst_element_register):
7286           don't add features twice
7287         * docs/random/ds/0.9-suggested-changes:
7288           add note about possible gst_init optimization
7289
7290 2004-07-28  David Schleef  <ds@schleef.org>
7291
7292         * testsuite/elements/Makefile.am:
7293         * testsuite/elements/struct_i386.h:
7294         * testsuite/elements/struct_size.c: (main):  A little test
7295         to keep distcheck from working if someone changes a structure
7296         size accidentally.
7297
7298 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7299
7300         * docs/libs/Makefile.am:
7301         * docs/libs/gstreamer-libs-docs.sgml:
7302         * docs/libs/gstreamer-libs-sections.txt:
7303         * docs/libs/tmpl/gstbytestream.sgml:
7304         * docs/libs/tmpl/gstcontrol.sgml:
7305         * docs/libs/tmpl/gstdataprotocol.sgml:
7306         * docs/libs/tmpl/gstgetbits.sgml:
7307         * libs/gst/bytestream/Makefile.am:
7308         * libs/gst/bytestream/bytestream.c:
7309         * libs/gst/bytestream/bytestream.h:
7310         * libs/gst/control/Makefile.am:
7311         * libs/gst/dataprotocol/Makefile.am:
7312         * libs/gst/getbits/Makefile.am:
7313         * libs/gst/getbits/getbits.h:
7314           various doc and style fixes, adding bytestream to libs docs.
7315
7316 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7317
7318         * docs/gst/gstreamer-docs.sgml:
7319         * docs/libs/Makefile.am:
7320         * docs/libs/gstreamer-libs-docs.sgml:
7321         * docs/libs/gstreamer-libs-sections.txt:
7322         * libs/gst/control/dparam.c:
7323           more doc fixes.  gst-libs docs now build the same way as gst.
7324
7325 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7326
7327         * configure.ac:
7328         * testsuite/Makefile.am:
7329         * testsuite/bins/Makefile.am:
7330         * testsuite/caps/Makefile.am:
7331         * testsuite/cleanup/Makefile.am:
7332         * testsuite/clock/Makefile.am:
7333         * testsuite/debug/Makefile.am:
7334         * testsuite/dlopen/Makefile.am:
7335         * testsuite/dynparams/Makefile.am:
7336         * testsuite/elements/.cvsignore:
7337         * testsuite/elements/Makefile.am:
7338         * testsuite/enumcaps/Makefile.am:
7339         * testsuite/enumcaps/enumcaps.c:
7340         * testsuite/ghostpads/Makefile.am:
7341         * testsuite/indexers/Makefile.am:
7342         * testsuite/negotiation/Makefile.am:
7343         * testsuite/parse/Makefile.am:
7344         * testsuite/plugin/Makefile.am:
7345         * testsuite/refcounting/Makefile.am:
7346         * testsuite/schedulers/.cvsignore:
7347         * testsuite/states/Makefile.am:
7348         * testsuite/tags/Makefile.am:
7349         * testsuite/threads/Makefile.am:
7350           fold enumcaps into caps dir
7351           clean up Makefile.am's for testsuite
7352
7353 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7354
7355         * docs/gst/Makefile.am:
7356         * docs/libs/Makefile.am:
7357           clean up docs build.  Fixes needless rebuilding of template files.
7358
7359 2004-07-28  Wim Taymans  <wim@fluendo.com>
7360
7361         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
7362         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
7363         Make sure that a bin state change tries to keep the children
7364         in sync. 
7365         Added debug logging to the thread.
7366
7367 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
7368
7369         * win32/GStreamer.vcproj:
7370         * win32/gstreamer.def:
7371           more exports for the plugins
7372
7373 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
7374
7375         * win32/gstgetbits.vcproj:
7376         * win32/gstgetbits.def:
7377         * win32/msvc71.sln:
7378           add support for the getbits plugin
7379
7380 2004-07-27  Wim Taymans  <wim@fluendo.com>
7381
7382         * gst/gstvalue.c: (gst_value_transform_double_fraction),
7383         (gst_value_transform_fraction_double), (_gst_value_initialize):
7384         * testsuite/caps/Makefile.am:
7385         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
7386         (check_from_fraction_convert), (transform_test), (main):
7387         Added transform functions between double and fraction.
7388         Added testcase to verify transforms
7389
7390 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7391
7392         * win32/GStreamer.vcproj:
7393           rename GStreamer-0.8.lib to libgstreamer.lib
7394
7395 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7396
7397         * win32/gstelements.vcproj:
7398         * win32/gstoptimalscheduler.vcproj:
7399           fixes for the Release build
7400
7401 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7402
7403         * win32/config.h:
7404           update the version number
7405
7406 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7407
7408         * win32/GStreamer.vcproj:
7409           add gstinterface to the build
7410
7411 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7412
7413         * win32/gstreamer.def:
7414           add many definitions needed by plugins,
7415           GST_CAT_DEFAULT only available in the Debug build ?
7416
7417 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7418
7419         * gst/gstelement.c: (gst_element_set_eos_recursive):
7420           various whitespace fixes.
7421           doc fix, fixes #148497
7422
7423 2004-07-25  Benjamin Otte  <otte@gnome.org>
7424
7425         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
7426           don't delay links on the sink elements, it causes unnegotiated
7427           links.
7428         * gst/elements/gsttypefindelement.c:
7429         (gst_type_find_element_base_init):
7430           add our padtemplates, we indeed do have some.
7431         * gst/elements/gsttypefindelement.c:
7432         (gst_type_find_element_handle_event),
7433         (gst_type_find_element_chain):
7434           don't push data when typefinding failed.
7435         * gst/gstpad.c: (gst_pad_link_fixate):
7436           check that no fixate function returns empty caps.
7437         * gst/gstpad.c: (gst_pad_push):
7438           check that the link is negotiated before data gets pushed.
7439         * tools/gst-register.c: (main):
7440           don't assert (fixes #148283)
7441
7442 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7443
7444         * docs/gst/gstreamer-sections.txt:
7445         * docs/gst/tmpl/gstconfig.sgml:
7446           add GST_PLUGIN_EXPORT definition
7447
7448 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7449
7450         * gst/gstplugin.h:
7451         * gst/gstconfig.h.in:
7452         * win32/gstconfig.h:
7453         * win32/gstelements.def:
7454         * win32/gstelements.vcproj:
7455         * win32/gstoptimalscheduler.def:
7456         * win32/gstoptimalscheduler.vcproj:
7457         * win32/gstspider.def:
7458         * win32/gstspider.vcproj:
7459           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
7460
7461 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7462
7463         * docs/gst/gstreamer-sections.txt:
7464           remove GST_CAT_DEFAULT because the type has changed
7465
7466 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7467
7468         * win32/gstbytestream.vcproj:
7469         * win32/gstelements.vcproj:
7470         * win32/gst-inspect.vcproj:
7471         * win32/gst-launch.vcproj:
7472         * win32/gstoptimalscheduler.vcproj:
7473         * win32/GStreamer.vcproj:
7474         * win32/gst-register.vcproj:
7475         * win32/gstspider.vcproj:
7476         * win32/msvc71.sln:
7477           Copy the files where needed after building, The testsuite will be
7478           built separately
7479
7480 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7481
7482         * win32/config.h:
7483         * win32/README.txt:
7484         * docs/manual/win32.xml:
7485         Fixed the plugin and GStreamer location
7486
7487 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7488
7489         * win32/gstreamer.def:
7490         More exports for the plugins
7491
7492 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7493
7494         * gst/gstinfo.h:
7495         Marc was right, we need to export literally GST_CAT_DEFAULT
7496
7497 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7498
7499         * win32/config.h:
7500         NLS crashes in gettext, disabled until this is solved
7501
7502 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7503
7504         * win32/gst-inspect.vcproj:
7505         * win32/gst-launch.vcproj:
7506         Should use NLS when available
7507
7508 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7509
7510         * gst/registries/gstxmlregistry.c:
7511         removing the file doesn't seem to be a good idea on Linux
7512
7513 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7514
7515         * gst/registries/gstxmlregistry.c:
7516         Remove the registry before renaming the tempfile (needed for Windows)
7517
7518 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7519
7520         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
7521         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
7522         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
7523         * gst/elements/gstmultifilesrc.h:
7524         Added newmedia property so it generates newmedia events between each
7525         file when property is set, as well as fixed eos handling
7526
7527 2004-07-22  David Schleef  <ds@schleef.org>
7528
7529         * gst/gststructure.c: (gst_structure_id_empty_new),
7530         (gst_structure_empty_new):  Set type field correctly.
7531         * gst/gststructure.h: Check type field correctly.
7532         * testsuite/caps/Makefile.am:
7533         * testsuite/caps/structure.c: (test1), (main): Add a very small
7534         test for structures.
7535
7536 2004-07-22  David Schleef  <ds@schleef.org>
7537
7538         * docs/random/ds/0.9-suggested-changes: more comments
7539         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
7540
7541 2004-07-22  Benjamin Otte  <otte@gnome.org>
7542
7543         * gst/gstelementfactory.c: (gst_element_register):
7544           set the factory in the class struct, so gst_element_get_factory
7545           actually works
7546         * gst/parse/grammar.y:
7547           set element to playing when it gets unlocked as we can't rely on the
7548           bin state - all elements in the bin state might still be locked in
7549           NULL)
7550
7551 2004-07-22  Benjamin Otte  <otte@gnome.org>
7552
7553         * gst/gstelement.c: (gst_element_set_state_func):
7554           make this a static function
7555
7556 2004-07-22  Wim Taymans  <wim@fluendo.com>
7557
7558         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
7559         (gst_opt_scheduler_pad_link):
7560         fix 147894-2 and the group_link problem.
7561
7562 2004-07-22  Wim Taymans  <wim@fluendo.com>
7563
7564         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7565         (handoff_identity), (main):
7566         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7567         (handoff_identity), (main):
7568         * testsuite/schedulers/Makefile.am:
7569         * testsuite/schedulers/group_link.c: (main):
7570         Show bug in scheduler when linking chain and loop based element 
7571         where the chain based element was not yet in a group.
7572
7573 2004-07-21  Benjamin Otte  <otte@gnome.org>
7574
7575         * gst/.cvsignore:
7576         * gst/autoplug/.cvsignore:
7577         * gst/elements/.cvsignore:
7578         * gst/indexers/.cvsignore:
7579         * libs/gst/bytestream/.cvsignore:
7580         * libs/gst/control/.cvsignore:
7581         * libs/gst/getbits/.cvsignore:
7582         * testsuite/states/.cvsignore:
7583         * testsuite/threads/.cvsignore:
7584           keep this up to date, since I seem to be the only one who cares
7585           about not missing files on commits (editor's note: no you don't,
7586           but feel free to change them at the time you add stuff instead
7587           of later on)
7588
7589 2004-07-21  Benjamin Otte  <otte@gnome.org>
7590
7591         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7592         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
7593         (gst_bin_child_state_change_func), (set_kid_state_func),
7594         (gst_bin_set_state), (gst_bin_change_state_norecurse):
7595           make state changes work correctly and reentrant (so removing
7596           elements from bins during state changes of bins doesn't cause
7597           segfaults or even wrong states)
7598           add debugging category and debugging output to print children states
7599         * gst/gstbin.c: (gst_bin_dispose): 
7600           add some assertion checks
7601         * gst/gstbin.h:
7602         * gst/gstbin.c: (gst_bin_sync_children_state):
7603           deprecate this function - it just does gst_bin_set_state (bin,
7604           GST_STATE (bin)) 
7605         * testsuite/threads/queue.c: (main):
7606           don't use gst_bin_sync_children_state anymore
7607         * testsuite/states/Makefile.am:
7608         * testsuite/states/bin.c:
7609           test that the state changes of bins work as expected
7610         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
7611           some adjustments to change states correctly, too
7612         * gst/gstthread.c: (gst_thread_change_state):
7613           don't enable/disable "threadsafe" properties, they're unused and
7614           cause random segfaults
7615         * testsuite/threads/Makefile.am:
7616           the queue check randomly passes now, ignore it
7617
7618 2004-07-21  Benjamin Otte  <otte@gnome.org>
7619
7620         * gst/gstpad.c:
7621           check if data is NULL before outputting debug info. (fixes #145100)
7622
7623 2004-07-21  Benjamin Otte  <otte@gnome.org>
7624
7625         * gst/schedulers/entryscheduler.c:
7626         (gst_entry_scheduler_loop_wrapper),
7627         (gst_entry_scheduler_chain_wrapper),
7628         (gst_entry_scheduler_get_wrapper):
7629           reset the state when the cothread starts, so we don't get assertion
7630           failures on restarting of cothreads
7631
7632 2004-07-20  Benjamin Otte  <otte@gnome.org>
7633
7634         * gst/gstelement.c: (gst_element_link_pads_filtered):
7635           use correct sinkpad, if only sinkpad is specified, but not srcpad
7636           (fixes #147889)
7637         * gst/gstelement.c: (gst_element_set_state_func),
7638         (gst_element_change_state): ref/unref the element, signal handlers
7639         could get rid of the element otherwise
7640
7641 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7642
7643         * docs/random/ds/0.9-suggested-changes:
7644           Make note about renaming fixed-list to array.
7645         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
7646         (_gst_value_initialize):
7647           Add array intersections.
7648         * testsuite/caps/intersect2.c: (main):
7649           Add test for array intersections.
7650
7651 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7652
7653         * configure.ac: back to cvs
7654
7655 === release 0.8.4 ===
7656
7657 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7658
7659         * configure.ac:
7660           releasing 0.8.4, "Paella"
7661           bump libtool versioning
7662
7663 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7664
7665         * po/LINGUAS:
7666         * po/ca.po:
7667           adding Catalan translation (Jordi Mallach)
7668
7669 2004-07-20  Wim Taymans  <wim@fluendo.com>
7670
7671         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7672         (handoff_identity), (main):
7673         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7674         (handoff_identity), (main):
7675         * testsuite/schedulers/Makefile.am:
7676         Added failing testcase for variant of #147894
7677
7678 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7679
7680         patch by: David Moore
7681
7682         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7683         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
7684         (group_migrate_connected):
7685         * testsuite/schedulers/Makefile.am:
7686           fix for #142813 (Deadlock in optimal scheduler)
7687
7688 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7689
7690         patch by: Wim Taymans
7691
7692         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7693         (gst_opt_scheduler_schedule_run_queue),
7694         (gst_opt_scheduler_get_wrapper), (get_group),
7695         (group_migrate_connected):
7696         * testsuite/schedulers/Makefile.am:
7697           fix for #147819 (Add some checks in the opt scheduler)
7698
7699 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7700
7701         patch by: Benjamin Otte
7702
7703         * gst/gstelementfactory.c: (__gst_element_details_set):
7704           fix for #147929: running gst-register in non-utf8 locale can cause
7705           invalid registry
7706
7707 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7708
7709         patch by: Wim Taymans
7710
7711         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
7712         (group_has_element), (element_get_reachables_func),
7713         (group_migrate_connected):
7714           fix for #147894 (opt scheduler decoupled elements mismanagement)
7715         * testsuite/schedulers/Makefile.am:
7716           testsuite app now passes
7717
7718 2004-07-19  Wim Taymans  <wim@fluendo.com>
7719
7720         * testsuite/schedulers/147819.c: (handoff_identity1),
7721         (handoff_identity2), (main):
7722         * testsuite/schedulers/Makefile.am:
7723         Added testcase for bug 147819
7724
7725 2004-07-19  Wim Taymans  <wim@fluendo.com>
7726
7727         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7728         (handoff_identity), (main):
7729         * testsuite/schedulers/Makefile.am:
7730         Added testcase for bug 147894
7731
7732 2004-07-16  Wim Taymans  <wim@fluendo.com>
7733
7734         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
7735         * testsuite/schedulers/142183.c: (handoff_identity), (main):
7736         * testsuite/schedulers/Makefile.am:
7737         Added testsuite for bug 142183 in its two incarnations. Refcount
7738         is not increased for scheduled elements and threadsafe properties
7739         mutexes are not properly unlocked.
7740
7741 2004-07-16  Wim Taymans  <wim@fluendo.com>
7742
7743         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
7744         (create_chain), (destroy_chain), (create_group), (destroy_group),
7745         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
7746         (group_dec_link), (gst_opt_scheduler_pad_link),
7747         (group_inc_links_for_element), (group_migrate_connected):
7748         Call group_inc_link with the proper src->sink ordering -- 
7749         break this, and we break sort_chain. patch from wingo for bug
7750         147713.
7751         Partially revert patch 1.89. When adding a loop based element to 
7752         the scheduler, the links to other groups are automatically followed
7753         and incremented. This should not happen because the bin will call
7754         pad_link explicitly for those connection, resulting in them counted 
7755         twice. Results in assertion failure on pipeline cleanup.
7756
7757 2004-07-16  Wim Taymans  <wim@fluendo.com>
7758
7759         * testsuite/schedulers/143777-2.c: (main):
7760         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
7761         (main):
7762         * testsuite/schedulers/Makefile.am:
7763         Added cleanup code to testcase 143777-2.
7764         Added testcase to show bug 147713, does not really show the
7765         deadlock as I can't figure out how to trigger it, but it does
7766         demonstrate bad ordering in the scheduler.
7767
7768 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7769
7770         * gst/gstvalue.c: (gst_value_deserialize_fraction):
7771           change strndup to g_strndup.  Fixes #147707
7772
7773 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7774
7775         * po/af.po:
7776         * po/az.po:
7777         * po/cs.po:
7778         * po/en_GB.po:
7779         * po/fr.po:
7780         * po/nl.po:
7781         * po/sr.po:
7782         * po/sv.po:
7783         * po/tr.po:
7784         * po/uk.po:
7785           updated translations
7786
7787 2004-07-16  Benjamin Otte  <otte@gnome.org>
7788
7789         * gst/gstvalue.c: (gst_greatest_common_divisor):
7790           use ints and return ints, fractions only use ints, too, so this
7791           avoids accidently casting multiplications to unsigned
7792         (gst_value_lcopy_fraction): it's ints, not uint32
7793         (gst_value_set_fraction): disallow minint, multiplying and negation
7794           are broken with it
7795         (gst_value_fraction_multiply): fix to make large numbers work and get
7796         rid of the assumption that the multiplication of two ints fits an
7797         int64 - dunno if that's true for all systems
7798         * testsuite/caps/Makefile.am:
7799         * testsuite/caps/fraction-multiply-and-zero.c:
7800         (check_multiplication), (check_equal), (zero_test), (main):
7801           add tests for all the stuff above
7802         * testsuite/caps/value_compare.c: (test1):
7803           fix comment
7804         * tests/.cvsignore:
7805         * testsuite/caps/.cvsignore:
7806         * testsuite/debug/.cvsignore:
7807         * testsuite/dlopen/.cvsignore:
7808         * testsuite/states/.cvsignore:
7809           get up to date
7810
7811 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7812
7813         * docs/manual/bins-api.xml:
7814         * docs/manual/factories.xml:
7815         * docs/manual/helloworld.xml:
7816         * docs/manual/links-api.xml: 
7817           fixes for out of date info, incorrect info and grammar
7818
7819 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7820
7821         * docs/manual/pads.xml:
7822         * docs/manual/pads-api.xml: grammar fix
7823
7824 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7825
7826         * docs/manual/pads-api.xml: typo + grammar fix
7827
7828 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7829
7830         * docs/gst/gstreamer-sections.txt:
7831           add new symbols
7832         * docs/gst/tmpl/gstelement.sgml:
7833         * docs/gst/tmpl/gstpad.sgml:
7834         * docs/gst/tmpl/gsttypes.sgml:
7835         * docs/gst/tmpl/gstvalue.sgml:
7836           update docs
7837         * gst/gststructure.c: (gst_structure_set_valist),
7838         (gst_structure_from_abbr), (gst_structure_to_abbr):
7839         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
7840         (gst_greatest_common_divisor), (gst_value_init_fraction),
7841         (gst_value_copy_fraction), (gst_value_collect_fraction),
7842         (gst_value_lcopy_fraction), (gst_value_set_fraction),
7843         (gst_value_get_fraction_numerator),
7844         (gst_value_get_fraction_denominator),
7845         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
7846         (gst_value_deserialize_fraction),
7847         (gst_value_transform_fraction_string),
7848         (gst_value_transform_string_fraction),
7849         (gst_value_compare_fraction), (_gst_value_initialize):
7850         * gst/gstvalue.h:
7851           adding GstFraction GValue type, get/set, and multiply
7852         * testsuite/caps/Makefile.am:
7853         * testsuite/caps/fraction.c: (test), (main):
7854         * testsuite/caps/string-conversions.c: (main):
7855         * testsuite/caps/value_compare.c: (test1), (main):
7856           add regression tests for GstFraction
7857
7858 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7859         
7860         * docs/manual/init-api.xml: Grammar fix
7861
7862 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7863
7864         * docs/manual/states.xml: Fix inconsistent information
7865
7866 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7867
7868         * gst/gstelement.c: (gst_element_set_state):
7869         * gst/gstpad.c: (gst_pad_try_set_caps):
7870         * gst/gststructure.c:
7871         * gst/gstthread.c: (gst_thread_child_state_change):
7872         * gst/gstvalue.c: (gst_value_compare_double):
7873         * gst/gstvalue.h:
7874         * testsuite/parse/parse1.c: (main):
7875           debugging additions and style cleanups
7876
7877 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7878
7879         * docs/manual/states.xml: Grammar fix
7880
7881 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7882
7883         * docs/manual/pads.xml: Grammar fix
7884
7885 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7886
7887         * docs/manual/elements.xml: Fixed image reference
7888
7889 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7890
7891         * docs/manual/goals.xml: Grammar fix
7892
7893 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7894
7895         * docs/manual/motivation.xml:
7896         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
7897
7898 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7899
7900         * docs/manual/motivation.xml: Fix spelling
7901
7902 2004-07-15  Benjamin Otte  <otte@gnome.org>
7903
7904         * gst/gstelement.h: 
7905           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
7906           strings.
7907         * gst/gstelement.c (gst_element_class_init):
7908           GError's are boxed, not objects
7909         * gst/gstmarshal.list:
7910           update list for the fixed error signal
7911
7912 2004-07-14  Andy Wingo  <wingo@pobox.com>
7913
7914         * gst/gsttag.c: Add a tag merge func for pointers. The header was
7915         there all along, but the function wasn't. (guile-gstreamer's build
7916         system uses the address of the function -- I wasn't actually
7917         trying to use this.)
7918
7919 2004-07-14  Andy Wingo  <wingo@pobox.com>
7920
7921         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
7922         as gst_pad_proxy_pad_link) just link to every other pad when they
7923         are called. In the case where the graph has cycles, this will mean
7924         that a call to try_set_caps will recurse. Allow this recursion
7925         and return OK, while we wait for the first try_set_caps to give a
7926         proper return value.
7927         (gst_pad_link_call_link_functions): Since this function is the
7928         only one to set the NEGOTIATING flag on a pad, if the flag is set
7929         it means that the link functions have indirectly recursed. If this
7930         happens, error out to avoid infinite recursion and an eventual
7931         SEGV.
7932         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
7933         (gst_pad_proxy_getcaps): Intersect the result with the template
7934         caps to ensure that the return value is valid.
7935
7936 2004-07-14  Andy Wingo  <wingo@pobox.com>
7937
7938         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
7939         one refcount, the calling function is the owner of the buffer.
7940
7941 2004-07-14  Wim Taymans  <wim@fluendo.com>
7942
7943         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7944         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7945         Fix stupid warning when an element is to be migrated but
7946         is already migrated.
7947
7948 2004-07-14  Wim Taymans  <wim@fluendo.com>
7949
7950         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7951         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7952         Make sure that a single non-loop-based element does not 
7953         end up in a group. This fixes the testsuite again.
7954
7955 2004-07-14  Wim Taymans  <wim@fluendo.com>
7956
7957         * gst/schedulers/gstoptimalscheduler.c: (create_group),
7958         (add_to_group), (merge_groups), (schedule_group),
7959         (gst_opt_scheduler_get_wrapper), (group_elements),
7960         (group_dec_link), (gst_opt_scheduler_pad_link),
7961         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
7962         (gst_opt_scheduler_iterate):
7963         move isolated groups to a new chain.
7964         Emit a warning instead of segfaulting in some error cases.
7965         Fix a bug where the link count between groups was not calculated 
7966         correctly. Fixes #144510.
7967
7968 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
7969         * gst/elements/gstfilesrc.c:
7970           Binary files support under Windows now OK
7971       
7972 2004-07-13  Benjamin Otte  <otte@gnome.org>
7973
7974           compatibility fixes for Solaris 8/gcc 2.95
7975         * configure.ac:
7976           include libintl libs in LDFLAGS
7977         * gstvalue.c (gst_value_deserialize_buffer):
7978           cast isxdigit stuff to int to silence compiler warning
7979
7980 2004-07-12  Benjamin Otte  <otte@gnome.org>
7981
7982         * gst/gsttypes.h:
7983           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
7984           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
7985           just causes support madness
7986         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7987           make it work without this
7988         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
7989         (gst_file_index_commit):
7990           glib IO channels don't want binary mode
7991         * testsuite/bytestream/filepadsink.c: (main):
7992         * testsuite/bytestream/test1.c: (read_param_file):
7993           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
7994
7995 2004-07-12  Benjamin Otte  <otte@gnome.org>
7996
7997         * gst/gstelement.c: (gst_element_class_init),
7998         (gst_element_set_state), (gst_element_set_state_func):
7999           virutalize gst_element_set_state, use set_state member in class
8000           struct that was already added in 0.7 for this.
8001         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
8002         (gst_bin_change_state):
8003           make gst_bin_foreach works similar to other foreach functions, plug
8004           memleaks in it. Make functions using it work with the new approach.
8005           Document gst_bin_foreach, so it can be exported if we want to
8006         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
8007           use virtualized set_state to make set_state on bins set the state of
8008           all its children.
8009
8010 2004-07-12  Benjamin Otte  <otte@gnome.org>
8011
8012         * configure.ac:
8013           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
8014           http://bugs.gentoo.org/show_bug.cgi?id=53967)
8015         * gst/gstpad.c: (gst_pad_alloc_buffer):
8016           allow buffer_alloc functions to return NULL and allocate a normal
8017           buffer in that case
8018
8019 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
8020         * gst/elements/gstfilesink.c:
8021         * gst/elements/gstfilesrc.c:
8022         * gst/indexers/gstfileindex.c:
8023         * gst/gsttypes.h:
8024         * testsuite/bytestream/filepadsink.c:
8025         * testsuite/bytestream/test1.c:
8026           Handle binary files under Windows
8027
8028 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
8029         * docs/manual/win32.xml:
8030         * win32/config.h:
8031         * win32/gst-register.vcproj:
8032         * win32/gstreamer.def:
8033           Update to another gettext public build
8034
8035 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
8036         * gst/gstplugin.c:
8037           Fix an impossible C syntax
8038         * win32/config.h:
8039           Disable i18n under Windows for the moment
8040         * win32/gst-register.vcproj:
8041           Use this configuration
8042
8043 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
8044         * docs/manual/quotes.xml:
8045           Keep the quotes file alive
8046         * docs/random/ds/0.9-suggested-changes:
8047           Add the suggestion of including a 'rowstride' as part of video
8048           format caps
8049
8050 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8051
8052         * gst/gstelement.c: (gst_element_set_state),
8053         (gst_element_change_state):
8054           d'oh.  Set PENDING state correctly before forcing bin to change.
8055         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8056         (gst_structure_parse_fixed_list):
8057         * gst/schedulers/gstoptimalscheduler.c:
8058         (gst_opt_scheduler_state_transition):
8059         * testsuite/states/parent.c: (main):
8060           remove comment now that it's fixed.
8061
8062 2004-07-11  Benjamin Otte  <otte@gnome.org>
8063
8064         * gst/gstclock.h:
8065           GST_SECOND shouldn't cause a conversion to unsigned.
8066         * testsuite/clock/.cvsignore:
8067         * testsuite/clock/Makefile.am:
8068         * testsuite/clock/signedness.c: (main):
8069           make sure it never will again
8070
8071 2004-07-11  Andy Wingo  <wingo@pobox.com>
8072
8073         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
8074         whose state is higher than the bin state, raise the bin state to
8075         ensure that bin state := highest child state.
8076         
8077 2004-07-11  Andy Wingo  <wingo@pobox.com>
8078
8079         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
8080         procedure on the children of a bin. Assumes that the procedure can
8081         change the set of children.
8082         (set_kid_state_func): New static function.
8083         (gst_bin_change_state): Use gst_bin_foreach to call
8084         set_kid_state_func. Fixes a bug: if a child had a state-change
8085         handler that removes it from the bin, there would be a segfault.
8086         Hopefully it should also work in the case where the state-change
8087         handler on one child adds or removes other children. In any case,
8088         fixes should go to gst_bin_foreach.
8089
8090 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
8091
8092         * gst/gstelement.c: (gst_element_set_state):
8093           compatibility fix for latest plugins release.  Change loop back
8094           to while {}
8095
8096 2004-07-09  Wim Taymans  <wim@fluendo.com>
8097
8098         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
8099         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
8100         (gst_thread_main_loop):
8101         Since remove is virtual in GstBin we must not assume the 
8102         elements GList to have anothing useful.
8103         Add some more logging to GstThread and be a bit more paranoid
8104         when resetting the scheduler.
8105         Set the state of the bin to NULL before removing the children.
8106
8107 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8108
8109         * testsuite/threads/Makefile.am:
8110         * testsuite/threads/threadg.c:
8111           added test to check if problem when removing all elements from a
8112           GstThread before setting GstThread state to NULL
8113
8114 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8115
8116         * docs/gst/tmpl/gstelement.sgml:
8117         * docs/gst/tmpl/gsttypes.sgml:
8118         * gst/gstbin.c: (gst_bin_change_state):
8119         * gst/gstelement.c: (gst_element_set_state),
8120         (gst_element_change_state):
8121           rework so that for bins we try to set the state on all children
8122           as well even if the bin is in the correct state already.
8123           change while to do so at least one iteration is done.
8124           For regular elements, we fall back to the previous behaviour for
8125           now since we first need a new plugins release.
8126         * testsuite/states/parent.c: (main):
8127           test for this case
8128           Fixes #123774
8129
8130 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8131
8132         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
8133         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
8134         (gst_queue_release_locks), (gst_queue_change_state),
8135         (gst_queue_set_property):
8136           add proper lock debugging.  Change dispose to finalize, since
8137           we're freeing mutexes and other stuff which should happen only once.
8138
8139 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8140
8141         * docs/gst/tmpl/gstelement.sgml:
8142         * docs/gst/tmpl/gstplugin.sgml:
8143         * docs/gst/tmpl/gsttypes.sgml:
8144         * docs/pwg/building-state.xml:
8145         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
8146         * gst/gstelement.c: (gst_element_change_state):
8147         * gst/gstthread.c: (gst_thread_change_state):
8148           catch wrong state changes in element base class.
8149
8150 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8151
8152         * gst/gstinfo.h:
8153           clean up layout a little.
8154
8155 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8156
8157         * configure.ac:
8158         * testsuite/Makefile.am:
8159         * testsuite/states/Makefile.am:
8160         * testsuite/states/parent.c: (main):
8161           re-enable states testsuite dir.  Add test for state changes and
8162           parent behaviour
8163
8164 2004-07-09  Wim Taymans  <wim@fluendo.com>
8165
8166         * gst/schedulers/gstoptimalscheduler.c:
8167         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
8168         (element_get_reachables_func), (element_get_reachables),
8169         (debug_element), (rechain_group), (group_migrate_connected),
8170         (gst_opt_scheduler_pad_unlink):
8171         Do not try to migrate decoupled elements to a new group since
8172         they are not added to groups.
8173
8174 2004-07-08  Benjamin Otte  <otte@gnome.org>
8175
8176         * gst/gstelement.c: (gst_element_error_func):
8177           make reentrant (= allow removing elements in error handler)
8178
8179 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8180
8181         * gst/gstpad.c: (gst_pad_event_default_dispatch),
8182         (gst_pad_send_event), (gst_pad_call_chain_function):
8183           events sent to elements below PAUSED cannot be handled, so
8184           don't try to
8185
8186 2004-07-08  Wim Taymans  <wim@fluendo.com>
8187
8188         * gst/schedulers/gstoptimalscheduler.c:
8189         (chain_recursively_migrate_group), (create_group),
8190         (schedule_group), (gst_opt_scheduler_pad_link),
8191         (group_elements_set_visited), (element_get_reachables_func),
8192         (element_get_reachables), (group_can_reach_group), (debug_element),
8193         (rechain_group), (group_migrate_connected),
8194         (gst_opt_scheduler_pad_unlink):
8195         * testsuite/schedulers/Makefile.am:
8196         Implemented group splitting and rechaining.
8197         Fixes 143777 and 143777-2 in the testsuite.
8198
8199 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8200
8201         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
8202           extra debugging
8203         * gst/gstevent.h:
8204         * gst/gstinfo.c: (gst_debug_log_default):
8205           print time nicely.  add thread pointer until someone figures out
8206           a completely portable way of getting at thread id's.
8207         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
8208         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
8209         (gst_pad_call_chain_function):
8210           extra debugging
8211         * gst/schedulers/gstoptimalscheduler.c:
8212         (get_group_schedule_function), (loop_group_schedule_function),
8213         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
8214         (pad_clear_queued), (gst_opt_scheduler_iterate):
8215           rename BUFPEN and friends to DATAPEN since that's what they are.
8216
8217 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8218
8219         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
8220         * gst/gstbuffer.h:
8221         * gst/gstpad.c:
8222           cleanups and debugging
8223
8224 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8225
8226         * configure.ac:
8227         * gst/gstvalue.c: (gst_value_compare_enum),
8228         (gst_value_serialize_enum), (gst_value_deserialize_enum),
8229         (gst_value_can_compare), (gst_value_compare):
8230         * testsuite/Makefile.am:
8231         * testsuite/enumcaps/Makefile.am:
8232         * testsuite/enumcaps/enumcaps.c:
8233           Fix enum serialization, deserialization, comparison in caps, add
8234           a test to ensure that this continues working in the future.
8235
8236 2004-07-06  David Schleef  <ds@schleef.org>
8237
8238         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
8239         Fix memleak.
8240
8241 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8242
8243         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
8244         * gst/gstplugin.h:
8245         * gst/registries/gstxmlregistry.c:
8246         (plugin_times_older_than_recurse), (plugin_times_older_than),
8247         (gst_xml_registry_parse_padtemplate):
8248           only rebuild registry when actual plugins have a newer time than
8249           the registry.  Fixes #145520
8250
8251 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8252
8253         * docs/manual/manual.xml:
8254         * docs/manual/win32.xml:
8255           add chapter on win32 building.  fixes #142422
8256
8257 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8258
8259         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
8260
8261         * gst/autoplug/gstspider.c: (gst_spider_init),
8262         (gst_spider_dispose):
8263           fix spider memleaks.  fixes #137863
8264
8265 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8266
8267         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
8268
8269         * gst/schedulers/gstoptimalscheduler.c:
8270         (gst_opt_scheduler_pad_unlink):
8271           fix SIGBUS error, fixes #145338
8272
8273 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8274
8275         * gst/gstobject.c: (gst_object_replace):
8276         * gst/gstscheduler.c: (gst_scheduler_get_clock):
8277         * gst/gstsystemclock.c: (gst_system_clock_obtain):
8278           clean up clock lifecycle.  Fixes #109831
8279
8280 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8281
8282         * po/LINGUAS:
8283         * po/cs.po:
8284           added Czech translation (Miloslav Trmac)
8285
8286 2004-07-04  David Schleef  <ds@schleef.org>
8287
8288         * tools/Makefile.am:
8289         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
8290
8291 2004-07-04  David Schleef  <ds@schleef.org>
8292
8293         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
8294
8295 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8296
8297         * gst/gstbin.c: (gst_bin_restore_thyself):
8298           chain to parent restore so the bins get restored correctly
8299           in the editor
8300
8301 2004-07-03  David Schleef  <ds@schleef.org>
8302
8303         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
8304         Actually do something in these functions, like before the big
8305         caps change.  (bug #145137)
8306
8307 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8308
8309         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
8310         (gst_element_get_compatible_pad_filtered):
8311         * gst/gstthread.c: (gst_thread_main_loop):
8312           more debugging
8313
8314 2004-07-02  David Schleef  <ds@schleef.org>
8315
8316         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
8317         * gst/gstobject.h:
8318         * gst/gstparse.h:
8319         * gst/gsttrace.h:
8320         * gst/gstxml.h:
8321
8322 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8323
8324         * gst/gstpad.c: (gst_pad_check_schedulers),
8325         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
8326         (gst_pad_link_prepare):
8327           revert until testsuite is fixed
8328
8329 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8330
8331         * testsuite/Makefile.am:
8332         * testsuite/caps/filtercaps.c: (main):
8333         * testsuite/clock/clock1.c: (main):
8334         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
8335           fix some more tests
8336
8337 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8338
8339         * testsuite/cleanup/cleanup1.c: (create_pipeline):
8340         * testsuite/cleanup/cleanup2.c: (create_pipeline):
8341         * testsuite/cleanup/cleanup4.c: (main):
8342           fix testsuite
8343
8344 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8345
8346         * libs/gst/control/control.c:
8347         * libs/gst/control/dparam.c:
8348         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
8349         * libs/gst/control/dparammanager.c:
8350         * libs/gst/control/dparammanager.h:
8351         * testsuite/dynparams/Makefile.am:
8352         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
8353         (gst_dptest_change_state), (gst_dptest_chain), (main):
8354           fix testcase for dparams
8355           add debugging category
8356
8357 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8358
8359         * testsuite/Rules:
8360           change path
8361
8362 2004-07-02  Benjamin Otte  <otte@gnome.org>
8363
8364         * tests/.cvsignore:
8365         * tests/Makefile.am:
8366         * tests/mass_elements.c: (gst_get_current_time), (main):
8367           add simple benchmark to test various speeds of fakesrc ! identity !
8368           identity ! ... ! fakesink.
8369           Usage: mass_elements [num_identities] [num_buffers]
8370           If not specified they default to 1000.
8371
8372 2004-07-02  Benjamin Otte  <otte@gnome.org>
8373
8374         * gst/gstpad.c: (gst_pad_check_schedulers),
8375         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
8376         (gst_pad_link_prepare):
8377           check that pads that get linked belong to the same manager. The old
8378           code allowed linking elements before putting them into bins, so it
8379           worked to link them and then put them in different threads, which
8380           lead to weird behaviour.
8381           Since this effectively disallows linking elements before putting
8382           them in a bin, some applications might not work after this and error
8383           out. If these applications are too critical, we might need to revert
8384           that patch. Please test this before the next release...
8385
8386 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8387
8388         * gst/gstpad.c: (gst_pad_get_caps):
8389           throw an error if the getcaps function does not return a subset of
8390           the template caps.
8391         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
8392           make disconts without position info an error in debugging
8393         * tests/spidey_bench.c: (handoff), (main):
8394           don't count first try when averaging
8395
8396 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8397
8398         * gst/gstplugin.c: (gst_plugin_load_file):
8399           figure out problem with dynamic test
8400
8401 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8402
8403         * docs/gst/Makefile.am:
8404           fix docs build
8405
8406 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8407
8408         * po/POTFILES.in:
8409         * po/af.po:
8410         * po/az.po:
8411         * po/en_GB.po:
8412         * po/fr.po:
8413         * po/nl.po:
8414         * po/sr.po:
8415         * po/sv.po:
8416         * po/tr.po:
8417         * po/uk.po:
8418         * tools/gst-register.c: (plugin_added_func), (main):
8419           i18n-ize -register, fix plural
8420
8421 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8422
8423         * gst/elements/gstidentity.c: (gst_identity_class_init),
8424         (gst_identity_init), (gst_identity_chain),
8425         (gst_identity_set_property), (gst_identity_get_property):
8426         * gst/elements/gstidentity.h:
8427           check for perfect stream
8428
8429 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8430
8431         * gst/elements/gstidentity.c: (gst_identity_chain):
8432           print offset_end
8433
8434 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8435
8436         * docs/gst/Makefile.am:
8437         * docs/gst/gstreamer-docs.sgml:
8438           doc fixes
8439
8440 2004-06-24  David Schleef  <ds@schleef.org>
8441
8442         * autogen.sh:  Remove call to env, since the buildbot isn't
8443         broken anymore.
8444
8445 2004-06-24  Wim Taymans  <wim@fluendo.com>
8446
8447         * gst/elements/Makefile.am:
8448         * gst/elements/gstelements.c:
8449         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
8450         (gst_multifdsink_class_init), (gst_multifdsink_init),
8451         (gst_multifdsink_add), (gst_multifdsink_remove),
8452         (gst_multifdsink_clear), (gst_multifdsink_chain),
8453         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
8454         * gst/elements/gstmultifdsink.h:
8455         Added an element that writes to multiple filedescriptors at once.
8456
8457 2004-06-24  Benjamin Otte  <otte@gnome.org>
8458
8459         * gst/parse/grammar.y:
8460           don't try to link elements before they have been added to bins
8461
8462 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8463
8464         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
8465         (gst_file_pad_get_length):
8466         * libs/gst/bytestream/filepad.h:
8467           add 2 new functions
8468
8469 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8470
8471         * docs/gst/gstreamer-sections.txt:
8472         remove from docs, the define that Benjamin removed from gstelement.h
8473
8474 2004-06-22  Benjamin Otte  <otte@gnome.org>
8475
8476         * gst/gstelement.h:
8477           remove define that referenced a nonexisting GstElement struct member
8478
8479 2004-06-20  Benjamin Otte  <otte@gnome.org>
8480
8481         * gst/gstdata.c: (gst_data_is_writable):
8482           whoops, return values were wrong, so writable data was marked as
8483           non-writable and vice versa. (fixes #143953, spotted by Francis
8484           Labonte)
8485           Shows how rarely we need to copy data ;)
8486
8487 2004-06-20  Benjamin Otte  <otte@gnome.org>
8488
8489         * testsuite/schedulers/.cvsignore:
8490         * testsuite/schedulers/Makefile.am:
8491         * testsuite/schedulers/143777-2.c: (main):
8492           add test for opt breakage in bug #143777
8493
8494 2004-06-20  Benjamin Otte  <otte@gnome.org>
8495
8496         * gst/gstpad.c: (gst_pad_call_chain_function):
8497           check for if we were unlinked while inside the chainfunction (fixes
8498           entrygthread having issues with #143777)
8499         * testsuite/schedulers/143777.c: (main):
8500         * testsuite/schedulers/Makefile.am:
8501           add a test for that fix
8502
8503 2004-06-20  Benjamin Otte  <otte@gnome.org>
8504
8505         * gst/gstvalue.c: (gst_value_set_int_range):
8506           test that start is smaller then end
8507         * libs/gst/bytestream/Makefile.am:
8508         * libs/gst/bytestream/filepad.c: 
8509         * libs/gst/bytestream/filepad.h:
8510           add GstFilePad - a pad that behaves like a FILE*
8511         * testsuite/bytestream/.cvsignore:
8512         * testsuite/bytestream/Makefile.am:
8513         * testsuite/bytestream/filepadsink.c: 
8514           test for the GstFilePad
8515
8516 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8517
8518         * gst/elements/gstidentity.c: (gst_identity_class_init),
8519         (gst_identity_init), (gst_identity_set_clock),
8520         (gst_identity_chain), (gst_identity_set_property),
8521         (gst_identity_get_property):
8522         * gst/elements/gstidentity.h:
8523         * gst/gstclock.c: (gst_clock_id_wait):
8524           add a "sync" property to sync to the clock
8525
8526 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8527
8528         * gst/gstelementfactory.c: (gst_element_factory_create):
8529           make the freakin "elementfactory bla has no type" message more
8530           useful. So we actually can do something when someone shows up
8531           complaining about it.
8532
8533 2004-06-15  Johan Dahlin  <johan@gnome.org>
8534
8535         * tools/gst-inspect.c (main): Fallback to plugin if no element is
8536         found. This matches the old behavior better. Thanks to Thomas for
8537         pointing out.
8538
8539 2004-06-14  David Schleef  <ds@schleef.org>
8540
8541         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
8542         -fomit-frame-pointer.  Appears to generate correct code in
8543         other cases as well.
8544
8545 2004-06-14  Johan Dahlin  <johan@gnome.org>
8546
8547         * tools/gst-inspect.c (main): Add two new command line options: -a
8548         to print all elements and -n to print the name on each line. Also
8549         fix some error reporting.
8550         (main): Simplify, remove -n and always print names if -a is specified
8551
8552 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
8553
8554         * win32/gstconfig.h:
8555         * win32/GSTreamer.vcproj:
8556         * win32/Makefile:
8557         * gst/gstconfig.h.in:
8558         * gst/gst.h:
8559         * gst/gstbin.h:
8560         * gst/gstelement.h:
8561         * gst/gstevent.h:
8562         * gst/gstobject.h:
8563         * gst/gstpad.h:
8564         * docs/gst/gstreamer-sections.txt:
8565         * docs/gst/tmpl/gstconfig.sgml:
8566           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
8567
8568 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8569         * docs/gst/gstreamer-sections.txt:
8570         * docs/gst/tmpl/gstconfig.sgml:
8571         Add the GSTREAMER_EXPORT macro to the docs
8572
8573 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8574
8575         * tools/gst-compprep.c: (handle_xmlerror), (main):
8576         Add a check for the version that introduced SetStructuredError to fix
8577         the build on FC1
8578
8579 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8580
8581         * win32/msvc71.sln:
8582         * win32/testsuite/:
8583           prepare to compile the testsuite with MSVC
8584
8585 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8586
8587         * docs/manual/win32.xml:
8588           attempt to transform the Win32 README into an XML doc
8589
8590 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8591
8592         * gst/gst.c:
8593         * gst/gstbin.*:
8594         * gst/config.h.in:
8595         * gst/gstelement.*:
8596         * gst/gstevent.h:
8597         * gst/gstobject.*:
8598         * gst/gstpad.h:
8599         * tools/gst-register.c:
8600         * win32/gstreamer.def:
8601           extern symbols are now exported for the Windows DLL
8602
8603 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8604
8605         * gst/gstinfo.h:
8606           fix a problem to enable/disable DEBUG under MSVC
8607
8608 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8609
8610         * win32/:
8611           enable more debug code in DEBUG build
8612
8613 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8614
8615         * win32/config.h:
8616         * gst/gst-i18n-app.h:
8617           enable NLS under Windows
8618
8619 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
8620         * tools/gst-compprep.c: (handle_xmlerror), (main):
8621           Make an error that baffled me a bit clearer
8622
8623 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8624
8625         * gst/gstqueue.c:
8626           don't use g_queue_get_length () because it's 2.4, use ->length
8627
8628 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
8629
8630         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
8631
8632         * tools/gst-inspect.c: (print_signal_info):
8633           don't free random data twice. (fixes #144185)
8634
8635 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
8636
8637         * gst/gstqueue.c:
8638         * gst/gstqueue.h:
8639           fix removing from the wrong queue on event timeout
8640           fix disposing of the event queue by casting correctly
8641           add mutexes for handling the event queue
8642           someone was sleeping when fixing queue last time around :)
8643
8644 2004-06-10  Johan Dahlin  <johan@gnome.org>
8645
8646         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
8647         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
8648
8649 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8650
8651         * docs/random/gdp:
8652         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
8653         * libs/gst/dataprotocol/dataprotocol.c:
8654         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8655         (gst_dp_buffer_from_header):
8656         * libs/gst/dataprotocol/dataprotocol.h:
8657         * libs/gst/dataprotocol/dp-private.h:
8658           rev version to 0.1, add buffer flags and copy them
8659
8660 2004-06-09  Johan Dahlin  <johan@gnome.org>
8661
8662         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
8663         the flags from the buffer we're copying.
8664
8665 2004-06-09  Wim Taymans  <wim@fluendo.com>
8666
8667         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
8668         * gst/elements/gstidentity.c: (gst_identity_init),
8669         (gst_identity_chain):
8670         Print more buffer info in fakesink.
8671         Make identity output similar to fakesink.
8672
8673 2004-06-07  Daniel Gazard  <dany42@free.fr>
8674
8675         reviewed by Benjamin Otte  <otte@gnome.org>
8676
8677         * configure.ac:
8678           fix cross compiling not working. (fixes #143741)
8679
8680 2004-06-07  Benjamin Otte  <otte@gnome.org>
8681
8682         * gst/gstelement.c: (gst_element_set_time_delay):
8683           add failure check
8684         * gst/gstinfo.h:
8685           put brackets around macro arguments of GST_TIME_ARGS, add note to
8686           move it to correct header in 0.9
8687
8688 2004-06-07  Benjamin Otte  <otte@gnome.org>
8689
8690         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
8691         (gst_file_index_load), (_file_index_id_save_entries),
8692         (gst_file_index_commit), (gst_file_index_add_association),
8693         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
8694         (gst_file_index_plugin_init):
8695           make debugging use a default category
8696
8697 2004-06-06  David Moore  <dcm@acm.org>
8698
8699         reviewed by Benjamin Otte  <otte@gnome.org>
8700
8701         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
8702         (gst_fdsrc_change_state):
8703           reset offset counter when going READY => PAUSED. (fixes #142903)
8704
8705 2004-06-06  ed@catmur.co.uk
8706
8707         reviewed by Benjamin Otte  <otte@gnome.org>
8708
8709         * gst/registries/gstxmlregistry.c:
8710         (gst_xml_registry_rebuild_recurse):
8711           don't rely on g_dir_open to figure out if a file is a directory, use
8712           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
8713           directories. (fixes #142850)
8714
8715 2004-06-06  Benjamin Otte  <otte@gnome.org>
8716
8717         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
8718           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
8719         * libs/gst/bytestream/adapter.c:
8720         * libs/gst/bytestream/adapter.h:
8721           fix copyright in header and typo in debugging category name
8722
8723 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8724
8725         * configure.ac:
8726           bump nano to cvs
8727
8728 === release 0.8.3 ===
8729
8730 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8731
8732         * configure.ac:
8733           update libtool versioning
8734           do a new release
8735         * docs/gst/tmpl/gstelement.sgml:
8736         * docs/gst/tmpl/gsttypes.sgml:
8737         * gst/gstinfo.c: (_gst_debug_init):
8738           put back GST_CAT_DATAFLOW to fix API breakage
8739
8740 2004-06-04  David Schleef  <ds@schleef.org>
8741
8742         * autogen.sh: Add a temporary 'env' to test buildbot problems.
8743
8744 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8745
8746         * configure.ac:
8747           bump nano to cvs
8748
8749 === release 0.8.2 ===
8750
8751 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8752
8753         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
8754           check GST_DEBUG environment variable which is parsed the same way
8755           as --gst-debug=
8756
8757 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8758
8759         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
8760                             gstmd5sink.c gstshaper.c gsttee.c
8761                             gsttypefindelement.c
8762         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
8763
8764           - removing trailing commas at end of enums
8765             it is correct C99 code but C90 compilers would complain
8766             (AIX, Forte, ...)
8767             ('should' fix #143290, at least partially)
8768
8769 2004-05-27  Wim Taymans  <wim@fluendo.com>
8770
8771         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
8772         (chain_group_set_enabled), (create_group), (add_to_group),
8773         (merge_groups), (setup_group_scheduler), (group_elements),
8774         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
8775         Don't try to follow the pad connections with other groups
8776         when a loop based element is added to the scheduler because
8777         the bin will inform the scheduler about the pad links a little
8778         later.
8779
8780 2004-05-27  Wim Taymans  <wim@fluendo.com>
8781
8782         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8783         (remove_from_chain), (chain_group_set_enabled),
8784         (setup_group_scheduler), (group_element_set_enabled),
8785         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
8786         (gst_opt_scheduler_show):
8787         Elements without a group can do a state change as well, just wait
8788         with the setup of the scheduling function when it is added to a
8789         chain.
8790
8791 2004-05-27  Wim Taymans  <wim@fluendo.com>
8792
8793         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8794         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
8795         (merge_groups), (setup_group_scheduler),
8796         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
8797         (gst_opt_scheduler_show):
8798         Fixes to maintain internal consistency of the scheduler data
8799         structures. 
8800          - adding an enabled group to a chain should increment the
8801            number of enabled elements in that chain.
8802          - removing an enabled group from a chain could disable the
8803            chain.
8804          - removing a disabled group from a chain could enable the
8805            chain.
8806          - add g_assert when internal inconsistency is detected.
8807          - adding an element to a group could increase the number of
8808            links this group has with other groups.
8809          - merging two groups also merges the chains.
8810          - also show group links in the _show method.
8811            
8812
8813 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8814
8815         * gst/gstcaps.c: (gst_caps_structure_simplify):
8816           don't print error messages when there is no error
8817         * gst/gstvalue.c: (gst_value_compare_int_range):
8818           compare the second value, too
8819         * testsuite/caps/Makefile.am:
8820         * testsuite/caps/random.c: (assert_on_error), (main):
8821           add tests to make sure the two things above are checked for
8822
8823 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8824
8825         * configure.ac:
8826         * libs/gst/dataprotocol/Makefile.am:
8827         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
8828         * libs/gst/dataprotocol/dataprotocol.h:
8829           wrap header in GST_ENABLE_NEW.  make code use it
8830
8831 2004-05-23  Johan Dahlin  <johan@gnome.org>
8832
8833         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
8834         so verbose and print GstElement signal names all the time.
8835
8836 2004-05-22  David Schleef  <ds@schleef.org>
8837
8838         * gst/registries/gstxmlregistry.c:
8839         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
8840         (bug #142957)
8841
8842 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
8843
8844         * configure.ac:
8845           scrub cflags for glib2 so gcc doesn't complain when glib is in
8846           /usr/local
8847
8848 2004-05-21  Johan Dahlin  <johan@gnome.org>
8849
8850         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
8851         __GNUC__, patch from Brian Cameron, fixes bug #142804
8852
8853 2004-05-20  David Schleef  <ds@schleef.org>
8854
8855         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
8856         comparison code.  (bug #142819)
8857
8858 2004-05-20  Wim Taymans  <wim@fluendo.com>
8859
8860         * gst/gstbuffer.c: (gst_buffer_default_copy):
8861         * gst/gstbuffer.h:
8862         Added Comment to a flag.
8863         copy relevant flags in _buffer_copy.
8864
8865 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8866
8867         reviewed by: Wim Taymans <wim at fluendo dot com>
8868
8869         * gst/gstbuffer.h:
8870           add GST_BUFFER_IN_CAPS buffer flag
8871         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8872         (gst_structure_parse_any_list), (gst_structure_parse_list),
8873         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
8874         * gst/gstvalue.c: (gst_value_serialize_any_list),
8875         (gst_value_transform_any_list_string),
8876         (gst_value_list_prepend_value), (gst_value_list_append_value),
8877         (gst_value_list_get_size), (gst_value_list_get_value),
8878         (gst_value_transform_list_string),
8879         (gst_value_transform_fixed_list_string),
8880         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
8881         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
8882         (_gst_value_initialize):
8883         * gst/gstvalue.h:
8884           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
8885           < , > as a format.
8886         * testsuite/caps/string-conversions.c: (main):
8887           add regression tests for < >
8888
8889 2004-05-20  Johan Dahlin  <johan@gnome.org>
8890
8891         * docs/gst/Makefile.am (all-local): Re-add
8892
8893 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8894
8895         * docs/gst/Makefile.am:
8896         * docs/gst/gstreamer-docs.sgml:
8897         * docs/libs/Makefile.am:
8898         * docs/libs/gstreamer-libs-docs.sgml:
8899           fix distcheck issues
8900
8901 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8902
8903         * libs/gst/dataprotocol/Makefile.am:
8904           add to autotest
8905
8906 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8907
8908         * libs/gst/dataprotocol/Makefile.am:
8909         * libs/gst/dataprotocol/dataprotocol.c:
8910         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8911         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
8912         * libs/gst/dataprotocol/dp-private.h:
8913           use GST macros to read/write fixed length ints
8914           add some more asserts
8915
8916 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8917
8918         * docs/libs/gstreamer-libs-docs.sgml:
8919         * docs/libs/gstreamer-libs-sections.txt:
8920           remove idct and putbits
8921         * configure.ac:
8922         * docs/libs/tmpl/gstdataprotocol.sgml:
8923         * libs/gst/Makefile.am:
8924         * libs/gst/dataprotocol/Makefile.am:
8925         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
8926         (buffer_test), (caps_test), (event_test), (main):
8927         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
8928         (gst_dp_dump_byte_array), (gst_dp_init),
8929         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
8930         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8931         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
8932         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
8933         (gst_dp_validate_header), (gst_dp_validate_payload),
8934         (gst_dp_validate_packet), (plugin_init):
8935         * libs/gst/dataprotocol/dataprotocol.h:
8936         * libs/gst/dataprotocol/dp-private.h:
8937           add dataprotocol
8938
8939 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8940
8941         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
8942           fix int variable deserialization and add a helper so we can actually
8943           debug this.
8944
8945 2004-05-18  David Schleef  <ds@schleef.org>
8946
8947         * testsuite/debug/commandline.c: (main): Call ./commandline, not
8948           argv[0].  Calling yourself is probably not the best way to
8949           construct a test like this, btw.
8950
8951 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8952
8953         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
8954           don't claim to be more intelligent than a scheduler when the
8955           scheduler claims the pipeline is stopped
8956         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
8957         (safe_cothread_destroy),
8958         (gst_entry_scheduler_remove_all_cothreads),
8959         (gst_entry_scheduler_reset), (_remove_cothread),
8960         (gst_entry_scheduler_state_transition):
8961           hold off cothread destruction if we're not in main cothread
8962         * configure.ac:
8963         * testsuite/Makefile.am:
8964           add new test dir
8965         * testsuite/schedulers/.cvsignore:
8966         * testsuite/schedulers/Makefile.am:
8967           add tests
8968         * testsuite/schedulers/relink.c: (cb_handoff), (main):
8969           check relinking and adding/removing elements from a running pipeline
8970         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
8971           check unlinking in a running pipeline
8972         * testsuite/schedulers/unref.c: (cb_handoff), (main):
8973           check unreffing a running pipeline
8974         * testsuite/schedulers/useless_iteration.c: (main):
8975           check iterating a pipeline that contains running threads works
8976
8977 2004-05-18  David Schleef  <ds@schleef.org>
8978
8979         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
8980           is false.
8981
8982 2004-05-18  Wim Taymans  <wim@fluendo.com>
8983
8984         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8985         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
8986         Fixed an error introduced with patch for 1.63. When setting
8987         a get based element as the entry point in a group, make sure
8988         to mark the group as GET based.
8989
8990 2004-05-18  Wim Taymans  <wim@fluendo.com>
8991
8992         * gst/schedulers/gstoptimalscheduler.c: (create_group),
8993         (setup_group_scheduler), (loop_group_schedule_function),
8994         (gst_opt_scheduler_pad_link):
8995         Added some more debug info and fixed a bug where the group
8996         type was set to LOOP but it was in fact unknown.
8997
8998 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8999
9000         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
9001           make resetting scheduler work twice in a row
9002
9003 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9004
9005         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
9006         (CREATE_USERIALIZATION), (_gst_value_initialize),
9007         (gst_value_compare_float), (gst_value_serialize_float),
9008         (gst_value_deserialize_float), (gst_value_compare_enum),
9009         (gst_value_serialize_enum), (gst_value_deserialize_enum):
9010           add serialization and comparison functions for long, int64, enum and
9011           float values
9012         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
9013           use best serialization function in type hierarchy instead of only a
9014           matching one. This is required for enums to work.
9015         * gst/parse/grammar.y:
9016           use gst_caps_deserialize
9017         * testsuite/parse/Makefile.am:
9018           parse1 now works
9019         * testsuite/parse/parse1.c: (main):
9020           remove aggregator check, aggregator is broken, this test works now
9021           but fails because of bug #138012
9022         * testsuite/parse/parse2.c: (main):
9023           s/xvideosink/xvimagesink - this test looks a lot like we should
9024           disable it
9025
9026 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9027
9028         * gst/gstelement.c: (gst_element_class_init):
9029           whoops, store the signal id correctly
9030         * gst/schedulers/gstbasicscheduler.c:
9031         (gst_basic_scheduler_chain_wrapper):
9032           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
9033           chain function isn't linked
9034
9035 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
9036         * configure.ac:
9037         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
9038         support until we decide where the flags should be used
9039         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
9040         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
9041         * gst/gstpad.c: (gst_pad_link_call_link_functions):
9042         Output refused caps in the debug info
9043
9044 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9045
9046         * gst/elements/gstidentity.c: (gst_identity_chain):
9047           add duration debug
9048         * gst/gstinfo.c: (gst_debug_log_default):
9049           add timestamp
9050
9051 2004-05-13  Benjamin Otte  <otte@gnome.org>
9052
9053         * gst/gstpipeline.c: (gst_pipeline_dispose),
9054         (gst_pipeline_change_state):
9055           call gst_scheduler_reset on dispose (fixes #141416)
9056
9057 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9058
9059         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
9060           compute mapsize correctly
9061         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
9062           use correct datatypes when calling a varargs function
9063         * gst/elements/gsttypefindelement.c: (stop_typefinding):
9064           push a DISCONT event as first thing
9065         * gst/gst_private.h:
9066         * gst/gstinfo.c: (_gst_debug_init):
9067           remove GST_DATAFLOW debugging category
9068         * gst/gstbin.c: (gst_bin_iterate):
9069           use GST_SCHEDULING category
9070         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
9071         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
9072         (gst_pad_call_get_function):
9073           add GST_DATAFLOW to easily track flow of buffers or events.
9074         * gst/gstqueue.c: (gst_queue_get_type),
9075         (gst_queue_handle_pending_events), (gst_queue_chain),
9076         (gst_queue_get), (gst_queue_handle_src_event):
9077           use own static debugging category GST_DATAFLOW for dataflow,
9078           use DEBUG category for showing which path events go, use LOG
9079           category for buffers.
9080
9081 2004-05-10  David Schleef  <ds@schleef.org>
9082
9083         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
9084
9085 2004-05-10  David Schleef  <ds@schleef.org>
9086
9087         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
9088         symbols, because otherwise we don't know what they are.  Thanks,
9089         the GStreamer team.
9090         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
9091
9092 2004-05-10  David Schleef  <ds@schleef.org>
9093
9094         (from Steve Lhomme)
9095         * win32/Makefile: When using make clean the MS Visual Studio makefiles
9096         are deleted.  Fix.
9097         * win32/Makefile.inspect:
9098         * win32/Makefile.launch:
9099         * win32/Makefile.register:
9100
9101 2004-05-10  David Schleef  <ds@schleef.org>
9102
9103         * gst/gstinfo.h: Add missing inline function.
9104         * gst/gsttrace.c: add include
9105         * gst/parse/grammar.y: remove unused code
9106         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
9107         more portable.
9108         * tools/gst-register.c: wrap unistd.h
9109         
9110         More additions/fixes from Steve for the MSVC build.
9111         * win32/GStreamer.vcproj:
9112         * win32/Makefile:
9113         * win32/Makefile.inspect:
9114         * win32/Makefile.launch:
9115         * win32/Makefile.register:
9116         * win32/README.txt:
9117         * win32/gst-inspect.vcproj:
9118         * win32/gst-launch.vcproj:
9119         * win32/gst-register.vcproj:
9120         * win32/gstbytestream.def:
9121         * win32/gstbytestream.vcproj:
9122         * win32/gstconfig.h:
9123         * win32/gstelements.def:
9124         * win32/gstelements.vcproj:
9125         * win32/gstenumtypes.c:
9126         * win32/gstenumtypes.h:
9127         * win32/gstoptimalscheduler.def:
9128         * win32/gstoptimalscheduler.vcproj:
9129         * win32/gstreamer.def:
9130         * win32/gstspider.def:
9131         * win32/gstspider.vcproj:
9132         * win32/gstversion.h:
9133         * win32/msvc71.sln:
9134
9135 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9136
9137         * gst/gstelement.c: (gst_element_class_init),
9138         (gst_element_no_more_pads):
9139         * gst/gstelement.h:
9140           add gst_element_no_more_pads and the "no-more-pads" signal
9141
9142 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9143
9144         * gst/gstregistry.c: (gst_registry_add_plugin):
9145           refuse to add plugins when a plugin with same name is already
9146           registered. Fixes a bunch of "How to remove plugins?" issues.
9147           May lead to other problems though, let's test
9148
9149 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9150
9151         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
9152         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
9153         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
9154
9155 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9156
9157         * tests/Makefile.am: fix am16 issue
9158
9159 2004-05-09  Benjamin Otte  <otte@gnome.org>
9160
9161         * libs/gst/bytestream/Makefile.am:
9162           we should indeed add .c files to makefiles or they won't be built
9163           (d'oh)
9164
9165 2004-05-08  Benjamin Otte  <otte@gnome.org>
9166
9167         * gst/gstpad.c: (gst_pad_proxy_fixate):
9168           really reduce the set of caps
9169
9170 2004-05-08  Benjamin Otte  <otte@gnome.org>
9171
9172         * tests/Makefile.am:
9173         * tests/spidey_bench.c: (handoff), (main):
9174           add benchmark to test how long spider needs to create a pipeline
9175
9176 2004-05-08  Benjamin Otte  <otte@gnome.org>
9177
9178         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
9179           mark links as unengaged when unnegotiating instead of deactivating.
9180           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
9181
9182 2004-05-08  Benjamin Otte  <otte@gnome.org>
9183
9184         * docs/manual/helloworld.xml:
9185           s/audiosink/osssink (patch by Patrick Guimond)
9186
9187 2004-05-07  David Schleef  <ds@schleef.org>
9188
9189         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
9190         since it contains important stuff.
9191
9192 2004-05-07  David Schleef  <ds@schleef.org>
9193
9194         * testsuite/caps/caps.c: (test3), (main): A check for appending
9195         ANY caps.
9196
9197 2004-05-07  David Schleef  <ds@schleef.org>
9198
9199         * common/m4/as-compiler-flag.m4: Properly quote arguments,
9200         which may contain commas.  Fixes detection of -Wa,-mregnames
9201
9202 2004-05-06  David Schleef  <ds@schleef.org>
9203
9204         Changes to handle compilers that don't have variadic macro
9205         support.  In particular, glib headers define some inlines
9206         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
9207         builds.
9208         * gst/Makefile.am:
9209         * gst/cothreads.c:
9210         * gst/elements/gstfdsink.c:
9211         * gst/elements/gstfdsrc.c:
9212         * gst/elements/gstfilesink.c:
9213         * gst/elements/gstfilesrc.c:
9214         * gst/gst_private.h:
9215         * gst/gstatomic.c:
9216         * gst/gstcaps.c: (gst_caps_append):
9217         * gst/gstcpu.c: (gst_cpuid_i386):
9218         * gst/gstelement.c:
9219         * gst/gsterror.c:
9220         * gst/gstfilter.c:
9221         * gst/gstinfo.h:
9222         * gst/gstprobe.c:
9223         * gst/gstquery.c:
9224         * gst/gstregistry.c:
9225         * gst/gststructure.c:
9226         * gst/gsttaginterface.c:
9227         * gst/gsttrace.c: (gst_trace_new):
9228         * gst/gsttrashstack.c:
9229         * gst/gsturi.c:
9230         * gst/gstvalue.c:
9231         * gst/parse/grammar.y:
9232         * gst/parse/parse.l:
9233         * tools/gst-inspect.c: (main):
9234         * tools/gst-launch.c: (main):
9235         * tools/gst-xmlinspect.c: (PUT_STRING):
9236
9237 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9238
9239         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9240         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9241         * gst/elements/gstfilesrc.h:
9242           send NEW_MEDIA events correctly
9243         * gst/elements/gsttypefindelement.c: (start_typefinding),
9244         (gst_type_find_element_handle_event):
9245           restart typefinding when we get a NEW_MEDIA event
9246         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
9247         (gst_bin_dispose):
9248           don't die when someone removes elements in callbacks
9249         * gst/gstelement.c: (gst_element_change_state):
9250           improve debugging
9251         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
9252           we need a NEW_MEDIA event to engage a link
9253         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
9254           don't g_print debugging stuff
9255         * testsuite/caps/simplify.c: (check_caps):
9256
9257 2004-05-04  Benjamin Otte  <otte@gnome.org>
9258
9259         * gst/parse/grammar.y:
9260           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
9261
9262 2004-05-04  Benjamin Otte  <otte@gnome.org>
9263
9264         * testsuite/caps/renegotiate.c: (main):
9265           improve output in error case
9266
9267 2004-05-04  Benjamin Otte  <otte@gnome.org>
9268
9269         * gst/parse/grammar.y:
9270           fix assert to not trigger when there's no error argument
9271         * gst/parse/parse.l:
9272           fix definition of caps to allow more than two structures
9273         * testsuite/caps/Makefile.am:
9274         * testsuite/caps/renegotiate.c: (main):
9275           it's sinesrc and works in that case
9276
9277 2004-05-04  Wim Taymans  <wim@fluendo.com>
9278
9279         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
9280         (group_dec_link), (gst_opt_scheduler_pad_unlink):
9281         when removing an element from a group, we always need to
9282         decrement the link count that this group had with other 
9283         groups through the element.
9284         added an extra assert to catch inconsistencies when decrementing
9285         the link count.
9286
9287 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9288
9289         * configure.ac:
9290         * docs/gst/Makefile.am:
9291         * docs/gst/gstreamer-sections.txt:
9292         * docs/gst/tmpl/gstcompat.sgml:
9293         * examples/appreader/Makefile.am:
9294         * examples/cutter/Makefile.am:
9295         * examples/events/Makefile.am:
9296         * examples/helloworld/Makefile.am:
9297         * examples/helloworld2/Makefile.am:
9298         * examples/launch/Makefile.am:
9299         * examples/manual/Makefile.am:
9300         * examples/mixer/Makefile.am:
9301         * examples/pingpong/Makefile.am:
9302         * examples/plugins/Makefile.am:
9303         * examples/queue/Makefile.am:
9304         * examples/queue2/Makefile.am:
9305         * examples/queue3/Makefile.am:
9306         * examples/queue4/Makefile.am:
9307         * examples/retag/Makefile.am:
9308         * examples/thread/Makefile.am:
9309         * examples/typefind/Makefile.am:
9310         * examples/xml/Makefile.am:
9311         * gst/Makefile.am:
9312         * gst/autoplug/Makefile.am:
9313         * gst/elements/Makefile.am:
9314         * gst/gstcompat.h:
9315         * gst/indexers/Makefile.am:
9316         * gst/parse/Makefile.am:
9317         * gst/registries/Makefile.am:
9318         * gst/schedulers/Makefile.am:
9319         * libs/gst/bytestream/Makefile.am:
9320         * libs/gst/control/Makefile.am:
9321         * libs/gst/getbits/Makefile.am:
9322         * po/af.po:
9323         * po/az.po:
9324         * po/en_GB.po:
9325         * po/fr.po:
9326         * po/nl.po:
9327         * po/sr.po:
9328         * po/sv.po:
9329         * po/tr.po:
9330         * po/uk.po:
9331         * tests/Makefile.am:
9332         * tests/bufspeed/Makefile.am:
9333         * tests/instantiate/Makefile.am:
9334         * tests/memchunk/Makefile.am:
9335         * tests/muxing/Makefile.am:
9336         * tests/negotiation/Makefile.am:
9337         * tests/probes/Makefile.am:
9338         * tests/sched/Makefile.am:
9339         * tests/seeking/Makefile.am:
9340         * tests/threadstate/Makefile.am:
9341         * testsuite/caps/Makefile.am:
9342         * testsuite/cleanup/Makefile.am:
9343         * testsuite/dlopen/Makefile.am:
9344         * testsuite/dynparams/Makefile.am:
9345         * testsuite/plugin/Makefile.am:
9346         * testsuite/states/Makefile.am:
9347         * tools/Makefile.am:
9348           reorganize compile/link flags to be consistent
9349           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
9350
9351 2004-05-04  David Schleef  <ds@schleef.org>
9352
9353         The "once more, with feeling" check-in.
9354         * testsuite/caps/Makefile.am: dist caps_strings
9355         * testsuite/caps/renegotiate.c: (main): This test triggers a
9356           segfault in the core.  Marking as failing.
9357
9358 2004-05-03  David Schleef  <ds@schleef.org>
9359
9360         * testsuite/caps/deserialize.c: (main): Fix problems noticed
9361           by the build bots.
9362         * testsuite/caps/renegotiate.c: (main): Same.
9363
9364 2004-05-03  David Schleef  <ds@schleef.org>
9365
9366         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
9367
9368 2004-05-03  David Schleef  <ds@schleef.org>
9369
9370         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
9371           variable to find our source file.
9372
9373 2004-05-03  David Schleef  <ds@schleef.org>
9374
9375         * configure.ac:  Link plugins with libgstreamer and dependent
9376           libraries
9377         * testsuite/caps/Makefile.am:
9378         * testsuite/caps/caps_strings:
9379         * testsuite/caps/deserialize.c: (main): Add a little test to slog
9380           through a file of caps strings and test each one
9381
9382 2004-05-04  Benjamin Otte  <otte@gnome.org>
9383
9384         * libs/gst/bytestream/Makefile.am:
9385         * libs/gst/bytestream/adapter.c: 
9386         * libs/gst/bytestream/adapter.h:
9387           add GstAdapter, similar to bytestream, but doesn't require ugly event
9388           handling or uglier loopbased elements
9389
9390 2004-05-03  David Schleef  <ds@schleef.org>
9391
9392         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
9393         * testsuite/caps/erathostenes.c:
9394         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
9395
9396 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9397
9398         * docs/pwg/pwg.xml:
9399           remove hardcoded stylesheet path (duh)
9400         * docs/random/release:
9401         * docs/gst/gstreamer-sections.txt:
9402         * gst/Makefile.am:
9403         * gst/gst.h:
9404         * gst/gst_private.h:
9405         * gst/gstcaps.c:
9406         * gst/gstevent.c:
9407         * gst/gstformat.c:
9408         * gst/gstinfo.c:
9409         * gst/gstinfo.h:
9410         * gst/gstinterface.c:
9411         * gst/gstmemchunk.c:
9412         * gst/gstprobe.c:
9413         * gst/gstquery.c:
9414         * gst/gstregistry.c:
9415         * gst/gstregistrypool.c:
9416         * gst/gststructure.c:
9417         * gst/gsttaginterface.c:
9418         * gst/gstthread.c:
9419         * gst/gsttrace.c:
9420         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
9421         * gst/gsturi.c:
9422         * gst/gstvalue.c:
9423           deprecate gst_info; remove gstlog.h
9424    
9425
9426 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9427
9428         * Makefile.am:
9429         * po/en_GB.po:
9430         * po/sv.po:
9431         * po/uk.po:
9432           updated translations
9433
9434 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9435
9436         * gst/gstbin.c: (gst_bin_dispose):
9437           better debugging
9438
9439 2004-05-03  Johan Dahlin  <johan@gnome.org>
9440
9441         * gst/schedulers/gstoptimalscheduler.c
9442         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
9443         really is a GstElement. Avoids critical when running gst-launch -v
9444         and a oggdemux/decoding pipeline.
9445
9446 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9447
9448         * docs/gst/tmpl/gstpipeline.sgml :
9449         * docs/manual/elements-api.xml :
9450                 doc fix by Patrick Guimond (Protector) from devel ML
9451                 reviewed by ronald
9452
9453 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9454
9455         * docs/gst/Makefile.am :
9456         * docs/libs/Makefile.am :
9457                 apply a patch from Arwed v. Merkatz so that gtk-doc
9458                 generated docs install (same for .devhelp file)
9459                 (fixes part 1 of #138836)
9460
9461 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9462
9463         * docs/faq/dependencies.xml: typo
9464         * docs/faq/getting.xml :
9465             - fix download URL for new gstreamer site
9466             - hide sf.net download page as latest version aren't there
9467             - fix apt URLs
9468             - fill "get via CVS" paragraph (link to dev page on the site)
9469         * docs/faq/general.xml:
9470             hide status tables as they no more exists
9471             change case on plugins license file to reflect reality
9472         * docs/faq/troubleshooting.xml:
9473             remove the wiki question/answer as there is no more wiki
9474
9475 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9476
9477         * gst/gsterror.h:
9478           include the headers needed for declarations used in this header
9479
9480 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9481
9482         * docs/random/uraeus/gstreamer_and_midi.txt :
9483           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
9484           (fixes #132288)
9485
9486 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
9487
9488         reviewed by Benjamin Otte  <otte@gnome.org>
9489
9490         * gst/schedulers/gthread-cothreads.h:
9491           free allocated data for main cothread, too when destroying context
9492           (fixes #141417)
9493
9494 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9495
9496         * docs/manual/goals.xml : remove duplicated paragraph at end 
9497         of doc page (fixes #141448)
9498
9499 2004-04-29  David Schleef  <ds@schleef.org>
9500
9501         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
9502         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
9503
9504 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9505
9506         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
9507           fix property
9508         * gst/gstcaps.c:
9509           fix doc string
9510         * po/POTFILES.in:
9511           rename typefind source file
9512
9513 2004-04-28  David Schleef  <ds@schleef.org>
9514
9515         Several new files from Steve Lhomme's MSVC patch (bug #141317):
9516         * win32/GStreamer.vcproj:
9517         * win32/Makefile:
9518         * win32/config.h:
9519         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
9520         (_trewinddir), (_ttelldir), (_tseekdir):
9521         * win32/dirent.h:
9522         * win32/gst-inspect.vcproj:
9523         * win32/gst-launch.vcproj:
9524         * win32/gst-register.vcproj:
9525         * win32/gstbytestream.vcproj:
9526         * win32/gstelements.vcproj:
9527         * win32/gstoptimalscheduler.vcproj:
9528         * win32/gstspider.vcproj:
9529         * win32/gtchar.h:
9530         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
9531         * win32/mman.h:
9532         * win32/mman.inl:
9533         * win32/msvc71.sln:
9534
9535 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9536
9537         * gst/gst.c: (init_post):
9538         * gst/gstinfo.c:
9539           remove useless _gst_progname stuff
9540         * tools/gst-inspect.c: (print_field), (print_caps):
9541           improve caps output
9542
9543 2004-04-28  David Schleef  <ds@schleef.org>
9544
9545         Disable parsing of a lot of files that aren't part of the
9546         exported API.  Move corresponding template files to old/,
9547         waiting for removal when they don't contain anything
9548         interesting.
9549         * docs/gst/Makefile.am:
9550         * docs/gst/gstreamer-sections.txt:
9551         * docs/gst/tmpl/cothreads.sgml:
9552         * docs/gst/tmpl/cothreads_compat.sgml:
9553         * docs/gst/tmpl/gettext.sgml:
9554         * docs/gst/tmpl/gobject2gtk.sgml:
9555         * docs/gst/tmpl/grammar.tab.sgml:
9556         * docs/gst/tmpl/gst-i18n-app.sgml:
9557         * docs/gst/tmpl/gst-i18n-lib.sgml:
9558         * docs/gst/tmpl/gst_private.sgml:
9559         * docs/gst/tmpl/gstaggregator.sgml:
9560         * docs/gst/tmpl/gstarch.sgml:
9561         * docs/gst/tmpl/gstatomic_impl.sgml:
9562         * docs/gst/tmpl/gstbufferstore.sgml:
9563         * docs/gst/tmpl/gstdata_private.sgml:
9564         * docs/gst/tmpl/gstdisksink.sgml:
9565         * docs/gst/tmpl/gstdisksrc.sgml:
9566         * docs/gst/tmpl/gstelementfactory.sgml:
9567         * docs/gst/tmpl/gstextratypes.sgml:
9568         * docs/gst/tmpl/gstfakesink.sgml:
9569         * docs/gst/tmpl/gstfakesrc.sgml:
9570         * docs/gst/tmpl/gstfdsink.sgml:
9571         * docs/gst/tmpl/gstfdsrc.sgml:
9572         * docs/gst/tmpl/gstfilesink.sgml:
9573         * docs/gst/tmpl/gstfilesrc.sgml:
9574         * docs/gst/tmpl/gsthttpsrc.sgml:
9575         * docs/gst/tmpl/gstidentity.sgml:
9576         * docs/gst/tmpl/gstindexfactory.sgml:
9577         * docs/gst/tmpl/gstmarshal.sgml:
9578         * docs/gst/tmpl/gstmd5sink.sgml:
9579         * docs/gst/tmpl/gstmultidisksrc.sgml:
9580         * docs/gst/tmpl/gstmultifilesrc.sgml:
9581         * docs/gst/tmpl/gstpadtemplate.sgml:
9582         * docs/gst/tmpl/gstpipefilter.sgml:
9583         * docs/gst/tmpl/gstschedulerfactory.sgml:
9584         * docs/gst/tmpl/gstsearchfuncs.sgml:
9585         * docs/gst/tmpl/gstshaper.sgml:
9586         * docs/gst/tmpl/gstspider.sgml:
9587         * docs/gst/tmpl/gstspideridentity.sgml:
9588         * docs/gst/tmpl/gststatistics.sgml:
9589         * docs/gst/tmpl/gsttee.sgml:
9590         * docs/gst/tmpl/gsttimecache.sgml:
9591         * docs/gst/tmpl/gsttypefind.sgml:
9592         * docs/gst/tmpl/gsttypefindfactory.sgml:
9593         * docs/gst/tmpl/gstxmlregistry.sgml:
9594         * docs/gst/tmpl/gthread-cothreads.sgml:
9595         * docs/gst/tmpl/old/cothreads.sgml:
9596         * docs/gst/tmpl/old/cothreads_compat.sgml:
9597         * docs/gst/tmpl/old/gettext.sgml:
9598         * docs/gst/tmpl/old/gobject2gtk.sgml:
9599         * docs/gst/tmpl/old/grammar.tab.sgml:
9600         * docs/gst/tmpl/old/gst-i18n-app.sgml:
9601         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
9602         * docs/gst/tmpl/old/gst_private.sgml:
9603         * docs/gst/tmpl/old/gstaggregator.sgml:
9604         * docs/gst/tmpl/old/gstarch.sgml:
9605         * docs/gst/tmpl/old/gstatomic_impl.sgml:
9606         * docs/gst/tmpl/old/gstbufferstore.sgml:
9607         * docs/gst/tmpl/old/gstdata_private.sgml:
9608         * docs/gst/tmpl/old/gstdisksink.sgml:
9609         * docs/gst/tmpl/old/gstdisksrc.sgml:
9610         * docs/gst/tmpl/old/gstelementfactory.sgml:
9611         * docs/gst/tmpl/old/gstextratypes.sgml:
9612         * docs/gst/tmpl/old/gstfakesink.sgml:
9613         * docs/gst/tmpl/old/gstfakesrc.sgml:
9614         * docs/gst/tmpl/old/gstfdsink.sgml:
9615         * docs/gst/tmpl/old/gstfdsrc.sgml:
9616         * docs/gst/tmpl/old/gstfilesink.sgml:
9617         * docs/gst/tmpl/old/gstfilesrc.sgml:
9618         * docs/gst/tmpl/old/gsthttpsrc.sgml:
9619         * docs/gst/tmpl/old/gstidentity.sgml:
9620         * docs/gst/tmpl/old/gstindexfactory.sgml:
9621         * docs/gst/tmpl/old/gstmarshal.sgml:
9622         * docs/gst/tmpl/old/gstmd5sink.sgml:
9623         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
9624         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
9625         * docs/gst/tmpl/old/gstpadtemplate.sgml:
9626         * docs/gst/tmpl/old/gstpipefilter.sgml:
9627         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
9628         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
9629         * docs/gst/tmpl/old/gstshaper.sgml:
9630         * docs/gst/tmpl/old/gstspider.sgml:
9631         * docs/gst/tmpl/old/gstspideridentity.sgml:
9632         * docs/gst/tmpl/old/gststatistics.sgml:
9633         * docs/gst/tmpl/old/gsttee.sgml:
9634         * docs/gst/tmpl/old/gsttimecache.sgml:
9635         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
9636         * docs/gst/tmpl/old/gstxmlregistry.sgml:
9637         * docs/gst/tmpl/old/gthread-cothreads.sgml:
9638         * docs/gst/tmpl/old/types.sgml:
9639         * docs/gst/tmpl/types.sgml:
9640
9641         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
9642         gtkdoc-scan doesn't like files with the same name in different
9643         directories.
9644         * gst/elements/Makefile.am:
9645         * gst/elements/gstelements.c:
9646         * gst/elements/gsttypefind.c: 
9647         * gst/elements/gsttypefind.h:
9648         * gst/elements/gsttypefindelement.c:
9649         * gst/elements/gsttypefindelement.h:
9650
9651 2004-04-28  David Schleef  <ds@schleef.org>
9652
9653         A bunch of portability fixes, derived from Steve Lhomme's MSVC
9654         patch (bug #141317):
9655         * gst/gst-i18n-lib.h: Allow disabling gettext.
9656         * gst/gstatomic_impl.h: disable warning when it's dumb.
9657         * gst/gstclock.c: fix include
9658         * gst/gstcompat.h: fix variadic macro
9659         * gst/gstinfo.c: fix include
9660         * gst/gstmacros.h: add defines for inlines on MSVC
9661         * gst/gstplugin.c: fix includes
9662         * gst/gstregistry.c: fix includes
9663         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
9664         * gst/gstsystemclock.c: fix include
9665         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
9666         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
9667         * gst/registries/gstxmlregistry.c:
9668         (gst_xml_registry_parse_element_factory): fix use of non-portable
9669         functions
9670         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
9671         * libs/gst/control/dparammanager.h: same
9672
9673 2004-04-28  David Schleef  <ds@schleef.org>
9674
9675         Move a bunch of unused files to old/ with names that are
9676         not case-insensitive-unique.  These files still contain some
9677         useful information that needs to be merged into gstbin.sgml,
9678         etc., so they shouldn't be deleted yet.
9679         * docs/gst/tmpl/GstBin.sgml:
9680         * docs/gst/tmpl/GstBuffer.sgml:
9681         * docs/gst/tmpl/GstCaps.sgml:
9682         * docs/gst/tmpl/GstClock.sgml:
9683         * docs/gst/tmpl/GstCompat.sgml:
9684         * docs/gst/tmpl/GstData.sgml:
9685         * docs/gst/tmpl/GstElement.sgml:
9686         * docs/gst/tmpl/GstEvent.sgml:
9687         * docs/gst/tmpl/GstIndex.sgml:
9688         * docs/gst/tmpl/GstStructure.sgml:
9689         * docs/gst/tmpl/GstTag.sgml:
9690         * docs/gst/tmpl/old/GstBin.sgml:
9691         * docs/gst/tmpl/old/GstBuffer.sgml:
9692         * docs/gst/tmpl/old/GstCaps.sgml:
9693         * docs/gst/tmpl/old/GstClock.sgml:
9694         * docs/gst/tmpl/old/GstCompat.sgml:
9695         * docs/gst/tmpl/old/GstData.sgml:
9696         * docs/gst/tmpl/old/GstElement.sgml:
9697         * docs/gst/tmpl/old/GstEvent.sgml:
9698         * docs/gst/tmpl/old/GstIndex.sgml:
9699         * docs/gst/tmpl/old/GstStructure.sgml:
9700         * docs/gst/tmpl/old/GstTag.sgml:
9701
9702 2004-04-28  David Schleef  <ds@schleef.org>
9703
9704         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
9705         (gst_caps_append), (gst_caps_append_structure),
9706         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
9707         (gst_caps_set_simple), (gst_caps_set_simple_valist),
9708         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
9709         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
9710         (gst_caps_intersect), (gst_caps_normalize),
9711         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
9712         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
9713         * gst/gstcaps.h: use GST_IS_CAPS().
9714
9715 2004-04-26  David Schleef  <ds@schleef.org>
9716
9717         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
9718         assembly.  gcc doesn't handle it correctly. (bug #141083)
9719         * gst/gsttrashstack.h: same
9720
9721 2004-04-25  Benjamin Otte  <otte@gnome.org>
9722
9723         * gst/gstelement.c: (gst_element_change_state):
9724           fix assertion to do an int comparison
9725
9726 2004-04-25  Benjamin Otte  <otte@gnome.org>
9727
9728         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9729           better debugging output on error
9730
9731 2004-04-25  Benjamin Otte  <otte@gnome.org>
9732
9733         * gst/gstcaps.c: (gst_caps_subtract):
9734           fix memleak
9735
9736 2004-04-23  Benjamin Otte  <otte@gnome.org>
9737
9738         * gst/gstvalue.c: (gst_value_compare_buffer),
9739         (_gst_value_initialize):
9740           add comparison function for buffers
9741
9742 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9743
9744         * docs/pwg/pwg.xml:
9745           Just found out that this so-called "ima-wav" format is really
9746           just "dvi adpcm" (according to the MS WAV documentation). So
9747           renaming it. We didn't use it yet anyway.
9748
9749 2004-04-23  Benjamin Otte  <otte@gnome.org>
9750
9751         * gst/gstcaps.c: (gst_caps_is_always_compatible):
9752           call gst_caps_is_subset
9753
9754 2004-04-23  Benjamin Otte  <otte@gnome.org>
9755
9756         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
9757         (gst_caps_is_subset):
9758           add documentation
9759
9760 2004-04-23  Benjamin Otte  <otte@gnome.org>
9761           
9762         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
9763         (gst_caps_structure_subtract), (gst_caps_subtract),
9764         (gst_caps_structure_figure_out_union),
9765         (gst_caps_structure_simplify), (gst_caps_do_simplify):
9766           fix simplifying and subtracting not working correctly with optional
9767           properties
9768           solve assorted problems that make it now simplify ebven more
9769         * docs/gst/tmpl/gstcaps.sgml:
9770         * gst/gstcaps.h:
9771           make gst_caps_do_simplify return a bool to indicate if it simplified
9772         * testsuite/caps/simplify.c: (main):
9773           add more checks. The tests is quite a bit useless right now because
9774           the core is heavily simplifying itself.
9775         * testsuite/caps/caps.h:
9776           fix caps to contain all optional properties
9777
9778 2004-04-22  Benjamin Otte  <otte@gnome.org>
9779
9780         * docs/gst/tmpl/gstcaps.sgml:
9781         * docs/gst/tmpl/gstfilesrc.sgml:
9782         * docs/gst/tmpl/gststructure.sgml:
9783         * docs/gst/tmpl/gstvalue.sgml:
9784           update for recent API changes
9785         * gst/gstcaps.c: (gst_caps_do_simplify):
9786           fix to stop trying with a freed structure
9787         * gst/gstpad.c: (gst_pad_link_fixate):
9788           simplify caps
9789         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
9790           remove C++ comment
9791         * gst/gstpad.h:
9792           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
9793         * gst/gststructure.c: (gst_structure_value_get_generic_type),
9794         (gst_structure_to_string):
9795           keep the correct type when using lists of ranges
9796         * gst/gstvalue.c: (gst_value_list_prepend_value),
9797         (gst_value_list_append_value):
9798           copy the value before adding to the list (d'oh)
9799         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
9800         (gst_value_subtract_int_range_int_range):
9801           handle overflows correctly
9802         * gst/gstvalue.c: (gst_value_subtract_from_list):
9803           fix memleak
9804         * testsuite/caps/caps.h:
9805           add a caps that caused segfaults
9806
9807 2004-04-22  Benjamin Otte  <otte@gnome.org>
9808
9809         * testsuite/refcounting/pad.c: (main):
9810           fix test
9811
9812 2004-04-22  Benjamin Otte  <otte@gnome.org>
9813
9814         * gst/gstcaps.c: (gst_caps_subtract):
9815           allow subtracting ANY and EMPTY from ANY caps
9816
9817 2004-04-22  Benjamin Otte  <otte@gnome.org>
9818
9819         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
9820         (gst_caps_union):
9821           only simplify in functions that create new caps. Simplifying in
9822           gst_caps_append breaks tests.
9823
9824 2004-04-22  Benjamin Otte  <otte@gnome.org>
9825
9826         * gst/gstcaps.c: (gst_caps_structure_simplify):
9827           unset GValue after use
9828         * gst/gstcaps.c: (gst_caps_append), 
9829         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
9830           use gst_caps_simplify (reduces registry size by 30%)
9831         * gst/gstpad.c: (gst_pad_template_new):
9832           don't allow NULL caps
9833
9834 2004-04-22  Benjamin Otte  <otte@gnome.org>
9835
9836         * docs/gst/gstreamer-sections.txt:
9837           add gst_caps_do_simplify
9838         * gst/gstcaps.c:
9839           add documentation for gst_caps_do_simplify
9840         * gst/gstvalue.h:
9841           fix typo in gst_value_register_subtract_func declaration for gst-doc
9842
9843 2004-04-22  Benjamin Otte  <otte@gnome.org>
9844
9845         * gst/gstcaps.c: (gst_caps_from_string_inplace):
9846           fix bug when converting from empty string.
9847         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
9848         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
9849           use gst_caps_new_empty to allocate a new caps. Only that function
9850           allocates memory for caps now.
9851         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
9852         (gst_caps_remove_structure):
9853           add ability to remove one structure (but not to header yet)
9854         * gst/gstcaps.c: (gst_caps_compare_structures),
9855         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
9856         (gst_caps_structure_simplify), (gst_caps_do_simplify),
9857         * gst/gstcaps.h:
9858           add gst_caps_do_simplify that tries to simplify a caps in place.
9859           Deprecate old gst_caps_simplify function.
9860         * testsuite/caps/caps.h:
9861           add caps.h containing a common set of caps to test against.
9862         * testsuite/caps/sets.c: (check_caps), (main):
9863           use it.
9864         * testsuite/caps/.cvsignore:
9865         * testsuite/caps/Makefile.am:
9866         * testsuite/caps/simplify.c: (check_caps), (main):
9867           add test to check correctness and efficency of caps simplification.
9868
9869 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
9870
9871         reviewed by Benjamin Otte  <otte@gnome.org>
9872
9873         * gst/gstparse.c: (_gst_parse_escape):
9874           Free the GString used in _gst_parse_escape()
9875
9876 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9877
9878         * gst/gstpad.c: (gst_pad_link_negotiate):
9879           refuse to link if the link is not possible
9880         * configure.ac:
9881         * testsuite/Makefile.am:
9882         * testsuite/negotiation/.cvsignore:
9883         * testsuite/negotiation/Makefile.am:
9884         * testsuite/negotiation/pad_link.c: (main):
9885           add test that checks the above behaviour
9886
9887 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9888
9889         * docs/gst/gstreamer-sections.txt:
9890           add newly added API
9891
9892 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9893
9894         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9895         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
9896         (gst_filesrc_open_file), (gst_filesrc_close_file),
9897         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
9898         * gst/elements/gstfilesrc.h:
9899           add support for non-regular files (#140734)
9900
9901 2004-04-21  Benjamin Otte  <otte@gnome.org>
9902
9903         * gst/gstpad.c: (gst_pad_link_fixate):
9904           add sophisticated error checking code to see if fixation functions
9905           did their fixation right
9906
9907 2004-04-21  Benjamin Otte  <otte@gnome.org>
9908
9909         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
9910           check for ANY caps before appending/unioning
9911         * gst/gstcaps.c: (gst_caps_is_subset),
9912         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
9913         (gst_caps_structure_subtract), (gst_caps_subtract):
9914         * gst/gstcaps.h:
9915           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
9916           the API. deprecate gst_caps_is_equal_fixed
9917         * gst/gstpad.c: (gst_pad_try_set_caps):
9918         * gst/gstqueue.c: (gst_queue_link):
9919           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
9920         * gst/gststructure.c: (gst_structure_get_name_id):
9921         * gst/gststructure.h:
9922           add function gst_structure_get_name_id
9923         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
9924         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
9925         (gst_value_subtract_int_range_int_range),
9926         (gst_value_subtract_double_double_range),
9927         (gst_value_subtract_double_range_double),
9928         (gst_value_subtract_double_range_double_range),
9929         (gst_value_subtract_from_list), (gst_value_subtract_list),
9930         (gst_value_can_intersect), (gst_value_subtract),
9931         (gst_value_can_subtract), (gst_value_register_subtract_func),
9932         (_gst_value_initialize):
9933         * gst/gstvalue.h:
9934           add support for subtracting values from each other. Note that
9935           subtracting means subtracting as in set theory. Required for caps
9936           stuff above.
9937         * testsuite/caps/.cvsignore:
9938         * testsuite/caps/Makefile.am:
9939         * testsuite/caps/erathostenes.c: (erathostenes), (main):
9940         * testsuite/caps/sets.c: (check_caps), (main):
9941         * testsuite/caps/subtract.c: (check_caps), (main):
9942           add tests for subtraction and equality code.
9943
9944 2004-04-20  David Schleef  <ds@schleef.org>
9945
9946         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
9947         * gst/indexers/Makefile.am:
9948         * gst/schedulers/Makefile.am:
9949         * libs/gst/bytestream/Makefile.am:
9950         * libs/gst/control/Makefile.am:
9951         * libs/gst/getbits/Makefile.am:
9952
9953 2004-04-20  David Schleef  <ds@schleef.org>
9954
9955         * common/as-libtool.mak: Fine-tune DLL building.
9956         * configure.ac: Link plugins against libgstreamer.  Define plugindir
9957         (like gst-plugins)
9958         * examples/plugins/Makefile.am: remove plugindir
9959         * gst/autoplug/Makefile.am: DLL building fixes
9960         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
9961         Windows.
9962         * gst/elements/gstelements.c: Conditionally disable pipefilter.
9963         * gst/indexers/Makefile.am: DLL building fixes
9964         * gst/schedulers/Makefile.am: DLL building fixes.
9965         * libs/gst/bytestream/Makefile.am: DLL building fixes.
9966         * libs/gst/control/Makefile.am: same
9967         * libs/gst/getbits/Makefile.am: same
9968         * testsuite/Makefile.am: New dlopen directory
9969         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
9970         when dlopened.
9971         * testsuite/dlopen/dlopen_gst.c: (main): same
9972         * testsuite/dlopen/loadgst.c: (do_test): same
9973
9974 2004-04-20  David Schleef  <ds@schleef.org>
9975
9976         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
9977         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
9978
9979 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9980
9981         * gst/gstelement.c: (gst_element_wait),
9982         (gst_element_set_time_delay), (gst_element_change_state):
9983           Use GST_TIME_*
9984
9985 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9986
9987         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
9988         (gst_spider_identity_plug):
9989           improve debugging messages
9990         * gst/gstbin.c: (gst_bin_remove_func):
9991           make sure the state_change function is only called with simple state
9992           transitions
9993
9994 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9995
9996         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
9997         (gst_fakesink_set_property), (gst_fakesink_chain):
9998         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
9999         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
10000         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
10001         * gst/elements/gstidentity.c: (gst_identity_chain),
10002         (gst_identity_set_property):
10003         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
10004         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
10005           add warnings to _set_property for unknown arguments
10006           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
10007
10008 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10009
10010         * Makefile.am:
10011         * docs/manuals.mak:
10012           add .po file download snippet
10013           fix a bug in the doc makefile
10014
10015 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10016
10017         * Makefile.am:
10018         * po/LINGUAS:
10019         * po/en_GB.po:
10020           Added en_GB translation (Gareth Owen)
10021
10022 2004-04-20  Johan Dahlin  <johan@gnome.org>
10023
10024         * gst/gstpad.c (_invent_event): Clean up
10025
10026 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10027
10028         * testsuite/caps/filtercaps.c: (main):
10029           fix test to test things correctly (caps are complicated)
10030
10031 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10032
10033         * testsuite/caps/Makefile.am:
10034         * testsuite/caps/filtercaps.c: (main):
10035           add test (that doesn't work right now, but should)
10036
10037 2004-04-19  David Schleef  <ds@schleef.org>
10038
10039         * configure.ac: Add test for allowing unaligned access.  Add define
10040         to put in gstconfig.h.
10041         * docs/gst/gstreamer-sections.txt: New symbols
10042         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
10043         * docs/gst/tmpl/gstfilesrc.sgml:
10044         * docs/gst/tmpl/gstparse.sgml:
10045         * docs/gst/tmpl/gsttypes.sgml:
10046         * docs/gst/tmpl/gstutils.sgml:
10047         * docs/gst/tmpl/gstvalue.sgml:
10048         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
10049         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
10050         on most !i386/!powerpc architectures.  From Daniel Gazard
10051         <daniel.gazard@free.fr>.  (bug #140156)
10052         * po/af.po: Check in changes made by gettext.
10053         * po/az.po:
10054         * po/fr.po:
10055         * po/nl.po:
10056         * po/sr.po:
10057         * po/sv.po:
10058
10059 2004-04-20  Benjamin Otte  <otte@gnome.org>
10060
10061         * gst/schedulers/entryscheduler.c: 
10062         (gst_entry_scheduler_yield):
10063           refuse to yield when decoupled elements insist on doing that.
10064           At least it's better than crashing
10065
10066 2004-04-19  David Schleef  <ds@schleef.org>
10067
10068         * docs/libs/Makefile.am: Change sinclude to include
10069         * docs/gst/Makefile.am: same
10070         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
10071
10072 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10073
10074         * po/LINGUAS:
10075         * po/uk.po:
10076           Added Ukrainian translation (Maxim V. Dziumanenko)
10077
10078 2004-04-19  Johan Dahlin  <johan@gnome.org>
10079
10080         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
10081         checking here, do it before calling the function.
10082         Clean up, use for loops instead of while loops while iterating
10083         over lists.
10084
10085         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
10086         in debug message.
10087         (gst_spider_create_and_plug): Improve debug message.
10088         General: Replace while loops which iterates over GLists with for
10089         loops. Which are much cleaner, improves readability, especially
10090         for gst_spider_identity_plug
10091
10092         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
10093         fixes bug 140477
10094
10095 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10096
10097         * po/LINGUAS:
10098         * po/tr.po:
10099           Added Turkish translation (Baris Cicek)
10100
10101 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10102
10103         * docs/faq/troubleshooting.xml:
10104           Mention gst-register in the FAQ (fixes 139045).
10105
10106 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10107
10108         * docs/gst/gstreamer-sections.txt:
10109
10110 2004-04-17  Benjamin Otte  <otte@gnome.org>
10111
10112         * gst/gstelement.c: (gst_element_dispose):
10113           simplify
10114         * gst/gstpad.c: (gst_pad_call_chain_function):
10115           don't create loads of events due to bad macro usage
10116
10117 2004-04-16  David Schleef  <ds@schleef.org>
10118
10119         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
10120         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
10121         * gst/gstvalue.c: (gst_value_serialize_buffer),
10122         (gst_value_deserialize_buffer), (gst_type_is_fixed),
10123         (_gst_value_initialize): Create a new function gst_type_is_fixed()
10124         to indicate types that are fixed wrt caps or not.  Switching to
10125         this function fixes (bug #140298).
10126         * gst/gstvalue.h:
10127
10128 2004-04-16  David Schleef  <ds@schleef.org>
10129
10130         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
10131         for GST_UNALIGNED_ACESS, since we essentially know which archs
10132         are ok.
10133
10134 2004-04-17  Benjamin Otte  <otte@gnome.org>
10135
10136         * docs/gst/Makefile.am:
10137           ignore gst/parse directory when building docs (fixes #140205)
10138
10139 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10140
10141         * testsuite/refcounting/mem.c: (vmsize):
10142           do error checking
10143
10144 2004-04-16  Johan Dahlin  <johan@gnome.org>
10145
10146         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
10147         and gst_pad_call_get_function.
10148
10149 2004-04-15  David Schleef  <ds@schleef.org>
10150
10151         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
10152         checks if we can access unaligned memory.
10153         * configure.ac: Use it.
10154
10155 2004-04-16  Benjamin Otte  <otte@gnome.org>
10156
10157         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
10158         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
10159         * gst/elements/gstfilesrc.h:
10160           s/seek_happened/need_discont/ and require discont before sending any
10161           data
10162
10163 2004-04-15  David Schleef  <ds@schleef.org>
10164
10165         * gst/gstvalue.c: (gst_value_serialize_buffer),
10166         (gst_value_deserialize_buffer), (_gst_value_initialize):
10167         Register these types as fundamental types. (bug #140015)
10168
10169 2004-04-16  Benjamin Otte  <otte@gnome.org>
10170
10171         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
10172         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
10173         (gst_pad_pull):
10174           implement enforcing discont events before buffers are passed. This
10175           allows state changes of only some elements and later correctly going
10176           on where they left off (or in short: you can now set audio sinks to
10177           NULL to release the device when the pipeline is paused)
10178         * gst/gstpad.c: (gst_pad_call_chain_function),
10179         (gst_pad_call_get_function):
10180         * gst/gstpad.h:
10181           add gst_pad_call_chain_function and gst_pad_call_get_function for
10182           scheduler interaction. They are required because of the changes
10183           above.
10184         * gst/schedulers/entryscheduler.c: (get_buffer),
10185         (gst_entry_scheduler_chain_wrapper),
10186         (gst_entry_scheduler_get_wrapper),
10187         (gst_entry_scheduler_state_transition),
10188         (gst_entry_scheduler_pad_link):
10189         * gst/schedulers/gstbasicscheduler.c:
10190         (gst_basic_scheduler_chain_wrapper),
10191         (gst_basic_scheduler_src_wrapper),
10192         (gst_basic_scheduler_chainhandler_proxy),
10193         (gst_basic_scheduler_gethandler_proxy),
10194         (gst_basic_scheduler_cothreaded_chain),
10195         (gst_basic_scheduler_chain_elements):
10196         * gst/schedulers/gstoptimalscheduler.c:
10197         (get_group_schedule_function), (pad_clear_queued),
10198         (gst_opt_scheduler_pad_link):
10199           use the new functions instead of calling get/chain-functions
10200           directly.
10201
10202 2004-04-15  David Schleef  <ds@schleef.org>
10203
10204         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
10205         * docs/gst/tmpl/gstinfo.sgml: same
10206         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
10207         gtk-doc put here.
10208         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
10209         * examples/queue/queue.c: (main):  We iterate pipelines, not
10210         bins.  (bug #139996)
10211
10212 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10213
10214         * docs/pwg/advanced-types.xml:
10215           Add MS RLE support. Also document Qt RLE although I have no sample
10216           files for that yet. And document an extra property for ADPCM.
10217
10218 2004-04-15  David Schleef  <ds@schleef.org>
10219
10220         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
10221         (_gst_plugin_fault_handler_setup):  Disable more stuff on
10222         Windows.
10223
10224 2004-04-15  David Schleef  <ds@schleef.org>
10225
10226         * gst/gstinfo.c: (_gst_debug_init): Change some internal
10227         symbol names to not conflict with new gstinfo.h symbols.
10228         * gst/gstinfo.h: Add inline functions for all those crazy
10229         compilers that don't know how to handle variadic macros (MSVC).
10230
10231 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10232
10233         * configure.ac: bump nano to 1
10234
10235 === release 0.8.1 ===
10236
10237 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10238
10239         * NEWS:
10240         * RELEASE:
10241         * configure.ac:
10242           releasing 0.8.1, "Snow Brigade"
10243
10244 2004-04-14  David Schleef  <ds@schleef.org>
10245
10246         * testsuite/Makefile.am: define tests_ignore
10247         * testsuite/Rules: Added new tests_ignore, which get compiled,
10248         but not run (generally because they're inconsistent or have
10249         heisenbugs).  Now we can ensure all the .c files compile in
10250         testsuite/.
10251         * testsuite/bins/Makefile.am: define tests_ignore
10252         * testsuite/bytestream/Makefile.am:
10253         * testsuite/caps/Makefile.am:
10254         * testsuite/clock/Makefile.am:
10255         * testsuite/debug/Makefile.am:
10256         * testsuite/debug/global.c: (gst_debug_log_one),
10257         (gst_debug_log_two): Fix compilation problem.
10258         * testsuite/dynparams/Makefile.am:
10259         * testsuite/elements/Makefile.am:
10260         * testsuite/ghostpads/Makefile.am:
10261         * testsuite/indexers/Makefile.am:
10262         * testsuite/parse/Makefile.am:
10263         * testsuite/plugin/Makefile.am:
10264         * testsuite/refcounting/Makefile.am:
10265         * testsuite/refcounting/element_pad.c: (main): Don't return leak
10266         results, because it's not calculated correctly.
10267         * testsuite/refcounting/pad.c: (main): same
10268         * testsuite/states/Makefile.am:
10269         * testsuite/tags/Makefile.am:
10270         * testsuite/threads/Makefile.am:
10271
10272 2004-04-14  David Schleef  <ds@schleef.org>
10273
10274         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
10275         generating bad code around the cpu detection asm code.
10276
10277 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10278
10279         * tools/gst-inspect.c: (print_element_info):
10280           print numeric version of rank as well, since we added some - 1
10281           rank values to elements
10282
10283 2004-04-13  David Schleef  <ds@schleef.org>
10284
10285         * configure.ac:  Disable various code when compiling for MinGW.
10286         * gst/elements/Makefile.am:
10287         * gst/elements/gstelements.c:
10288         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10289         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
10290         * gst/registries/gstxmlregistry.c: (make_dir):
10291
10292 2004-04-13  David Schleef  <ds@schleef.org>
10293
10294         * gst/Makefile.am:
10295         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
10296         assembly.
10297         * gst/gstcpuid_i386.s: remove
10298
10299 2004-04-13  David Schleef  <ds@schleef.org>
10300
10301         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
10302         seems to think it needs to be done.
10303         * docs/gst/tmpl/gstfakesink.sgml:
10304         * docs/gst/tmpl/gstfakesrc.sgml:
10305         * docs/gst/tmpl/gstfdsink.sgml:
10306         * docs/gst/tmpl/gstfdsrc.sgml:
10307         * docs/gst/tmpl/gstfilesink.sgml:
10308         * docs/gst/tmpl/gstfilesrc.sgml:
10309         * docs/gst/tmpl/gstidentity.sgml:
10310         * docs/gst/tmpl/gstmd5sink.sgml:
10311         * docs/gst/tmpl/gstmultifilesrc.sgml:
10312         * docs/gst/tmpl/gstpipefilter.sgml:
10313         * docs/gst/tmpl/gstshaper.sgml:
10314         * docs/gst/tmpl/gstspider.sgml:
10315         * docs/gst/tmpl/gstspideridentity.sgml:
10316         * docs/gst/tmpl/gststatistics.sgml:
10317         * docs/gst/tmpl/gsttee.sgml:
10318         * docs/gst/tmpl/gsttypefind.sgml:
10319         * docs/gst/tmpl/gstutils.sgml:
10320
10321 2004-04-13  David Schleef  <ds@schleef.org>
10322
10323         * configure.ac: Changes to remove POSIXisms (mmap in this case)
10324         and to build DLLs on Windows.
10325         * gst/Makefile.am:
10326         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
10327         (gst_filesrc_open_file):
10328         * gst/schedulers/Makefile.am:
10329
10330 2004-04-13  David Schleef  <ds@schleef.org>
10331
10332         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
10333         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
10334         fixating lists.
10335
10336 2004-04-12  David Schleef  <ds@schleef.org>
10337
10338         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
10339         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
10340         to using it.
10341         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
10342         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
10343         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
10344         * gst/gststructure.c: (gst_structure_set_valist),
10345         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
10346         support for buffers.
10347         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
10348         intended to be const.
10349         * gst/gsttag.h: same
10350         * gst/gstvalue.c: (gst_value_serialize_buffer),
10351         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
10352         to (de)serialize buffers.
10353         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
10354         * testsuite/caps/string-conversions.c: (main):
10355         * testsuite/caps/value_serialize.c: add new test
10356
10357 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10358
10359         * docs/pwg/advanced-types.xml:
10360           Document MS video 1 (video/x-msvideocodec) mimetype/format.
10361
10362 2004-04-11  Benjamin Otte  <otte@gnome.org>
10363
10364         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
10365           rename categories to basic_*
10366         * gst/schedulers/gstbasicscheduler.c: 
10367         (gst_basic_scheduler_chain_wrapper),
10368         (gst_basic_scheduler_chainhandler_proxy),
10369         (gst_basic_scheduler_gethandler_proxy),
10370         (gst_basic_scheduler_eventhandler_proxy):
10371           debugging category fixes - put common stuff in log category
10372         * gst/schedulers/gstbasicscheduler.c: 
10373         (gst_basic_scheduler_chain_elements):
10374           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
10375           active and linking two active chains
10376
10377 2004-04-10  Benjamin Otte  <otte@gnome.org>
10378
10379         * docs/pwg/intro-preface.xml:
10380           fix dead links and remove reference to Wiki
10381
10382 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10383
10384         * gst/schedulers/gstbasicscheduler.c:
10385           make sure we can switch back to the main function if we're still in
10386           the main function (supposed to fix #139617)
10387         * gst/schedulers/gthread-cothreads.h:
10388           don't throw an error when switching to the same cothread
10389
10390 2004-04-09  Benjamin Otte  <otte@gnome.org>
10391
10392         * gst/gstbin.c: (gst_bin_get_type):
10393         * gst/gstclock.c: (gst_clock_get_type):
10394         * gst/gstindex.c: (gst_index_get_type):
10395         * gst/gstobject.c: (gst_object_get_type),
10396         (gst_signal_object_get_type):
10397         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
10398         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
10399         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
10400         * gst/gstqueue.c: (gst_queue_get_type):
10401         * gst/gstregistry.c: (gst_registry_get_type):
10402         * gst/gstsystemclock.c: (gst_system_clock_get_type):
10403         * gst/gstthread.c: (gst_thread_get_type):
10404           don't use memchunks for these objects, use malloc instead
10405
10406 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10407
10408         * docs/gst/.cvsignore:
10409         * docs/gst/Makefile.am:
10410         * docs/gst/gstreamer-sections.txt:
10411         * docs/gst/tmpl/gstaggregator.sgml:
10412         * docs/gst/tmpl/gstbuffer.sgml:
10413         * docs/gst/tmpl/gstclock.sgml:
10414         * docs/gst/tmpl/gstelement.sgml:
10415         * docs/gst/tmpl/gstfakesink.sgml:
10416         * docs/gst/tmpl/gstfakesrc.sgml:
10417         * docs/gst/tmpl/gstfdsink.sgml:
10418         * docs/gst/tmpl/gstfdsrc.sgml:
10419         * docs/gst/tmpl/gstfilesink.sgml:
10420         * docs/gst/tmpl/gstfilesrc.sgml:
10421         * docs/gst/tmpl/gstidentity.sgml:
10422         * docs/gst/tmpl/gstindex.sgml:
10423         * docs/gst/tmpl/gstinfo.sgml:
10424         * docs/gst/tmpl/gstmd5sink.sgml:
10425         * docs/gst/tmpl/gstmultifilesrc.sgml:
10426         * docs/gst/tmpl/gstpad.sgml:
10427         * docs/gst/tmpl/gstpipefilter.sgml:
10428         * docs/gst/tmpl/gstpipeline.sgml:
10429         * docs/gst/tmpl/gstpluginfeature.sgml:
10430         * docs/gst/tmpl/gstqueue.sgml:
10431         * docs/gst/tmpl/gstregistry.sgml:
10432         * docs/gst/tmpl/gstscheduler.sgml:
10433         * docs/gst/tmpl/gstshaper.sgml:
10434         * docs/gst/tmpl/gstspider.sgml:
10435         * docs/gst/tmpl/gstspideridentity.sgml:
10436         * docs/gst/tmpl/gststatistics.sgml:
10437         * docs/gst/tmpl/gstsystemclock.sgml:
10438         * docs/gst/tmpl/gsttee.sgml:
10439         * docs/gst/tmpl/gstthread.sgml:
10440         * docs/gst/tmpl/gsttypefind.sgml:
10441         * docs/gst/tmpl/gstutils.sgml:
10442           further doc build fixes
10443
10444 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10445
10446         * docs/gst/Makefile.am:
10447           make docs exit on scanning problems
10448           fix nonsrcdir build issues
10449         * docs/gst/gstreamer-sections.txt:
10450           adding stuff from -unused
10451         * gst/gstqueue.h:
10452           create GstQueueSize
10453         * gst/schedulers/cothreads_compat.h:
10454           fix cothread warnings
10455
10456 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10457
10458         * docs/gst/gstreamer-sections.txt:
10459           remove defines deprecated by Benjamin
10460
10461 2004-04-07  Benjamin Otte  <otte@gnome.org>
10462
10463         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10464           when the buffer is complete, don't check if other buffers are needed
10465         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
10466           check that the offset is >0 so we don't try to read before the
10467           beginning of the file
10468         * gst/gstpad.c: (gst_pad_set_pad_template):
10469           sink the template, so we don't end up with 130k pad templates
10470
10471 2004-04-06  Benjamin Otte  <otte@gnome.org>
10472
10473         * gst/autoplug/gstspider.c: (gst_spider_link_add):
10474           don't ref the element, adding already reffed it. And we didn't unref
10475           it later anyway... (huge memleak when you used many spider elements)
10476         * gst/gstelement.c: (gst_element_base_class_finalize):
10477         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
10478         (gst_element_register):
10479         * gst/gsturi.c: (gst_element_make_from_uri):
10480           use gst_object_(un)ref instead of g_object(un)ref
10481
10482 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10483
10484         * gst/gstbuffer.h:
10485           remove macro that wouldn't work anymore because struct member has
10486           been removed.
10487         * gst/schedulers/entryscheduler.c: (schedule_forward):
10488           fix segfault for unconnected pads
10489         
10490 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10491
10492         reviewed by David Schleef <ds@schleef.org>
10493
10494         * gst/gstinfo.h:
10495           *_FORMAT modifiers should require putting a % in front of them for
10496           consistency reasons.
10497
10498 2004-04-05  Colin Walters  <walters@redhat.com>
10499
10500         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
10501         space.
10502
10503 2004-04-05  Benjamin Otte  <otte@gnome.org>
10504
10505         * configure.ac:
10506         * gst/Makefile.am:
10507         * gst/gst_private.h:
10508         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
10509           add support for detecting if GStreamer runs inside valgrind.
10510           requires valgrind (d'oh) and --enable-debug for correct cdetection.
10511           print a big message in valgrind that GStreamer has detected it's
10512           running inside and might now use different code.
10513         * gst/gstmemchunk.c: (populate), (free_area),
10514         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
10515         (gst_mem_chunk_free):
10516           flag memchunks for valgrind, so it can detect leaking of chunks.
10517           This allows detecting leaks of GstBuffer and GstEvent correctly
10518           inside valgrind.
10519
10520 2004-04-05  David Schleef  <ds@schleef.org>
10521
10522         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
10523           jensgr@gmx.net (Jens Granseuer)
10524
10525 2004-04-05  David Schleef  <ds@schleef.org>
10526
10527         * gst/gstbuffer.c: (_gst_buffer_sub_free),
10528         (gst_buffer_default_free), (gst_buffer_default_copy),
10529         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
10530         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
10531         structures in one place.
10532
10533 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10534
10535         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
10536           (GST_TIME_FORMAT, GST_TIME_ARGS)
10537
10538 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10539
10540         * testsuite/elements/Makefile.am:
10541           disable test until it stops breaking make distcheck
10542
10543 2004-04-05  Johan Dahlin  <johan@gnome.org>
10544
10545         * po/sv.po: Updated translation
10546
10547 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10548
10549         * gst/gstplugin.c: (gst_plugin_load_file):
10550           fix segfault for when original plugin was loaded statically
10551
10552 2004-04-05  Benjamin Otte  <otte@gnome.org>
10553
10554         * testsuite/debug/category.c: (main):
10555         * testsuite/debug/commandline.c: (main):
10556         * testsuite/debug/output.c: (main):
10557           fix tests to work again with debugging enabled
10558
10559 2004-04-05  Benjamin Otte  <otte@gnome.org>
10560
10561         * gst/schedulers/gstbasicscheduler.c:
10562         (gst_basic_scheduler_pad_link):
10563           fix to work with recent scheduling changes
10564
10565 2004-04-05  Benjamin Otte  <otte@gnome.org>
10566
10567         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
10568         prepareChangeLog doesn't work when cvs indents):
10569           don't throw an error when no element can be scheduled, there's too
10570           many weird reasons why it doesn't work. Return STOPPED instead.
10571           decoupled elemts' schedulability doesn't depend on bufpens.
10572
10573 2004-04-04  Benjamin Otte  <otte@gnome.org>
10574
10575         * gst/schedulers/gstbasicscheduler.c:
10576         (gst_basic_scheduler_pad_select):
10577           fix uninitialized variable warnings
10578
10579 2004-04-04  Benjamin Otte  <otte@gnome.org>
10580
10581         * gst/gstpad.c: (gst_pad_collect_valist):
10582           fix uninitialized variable warning
10583         * gst/schedulers/entryscheduler.c: (schedule_forward):
10584           fix shadowed variable
10585
10586 2004-04-04  Benjamin Otte  <otte@gnome.org>
10587
10588         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
10589         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
10590         (gst_pad_select):
10591         * gst/gstpad.h:
10592         * gst/gstscheduler.c: (gst_scheduler_pad_select),
10593         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
10594         * gst/gstscheduler.h:
10595           implement gst_pad_collect as replacement for gst_pad_select.
10596           deprecate gst_pad_select and gst_scheduler_(un)lock_element
10597           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
10598           new pad_select, lock and unlock calls.
10599         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
10600         * gst/cothreads.h:
10601         * gst/schedulers/cothreads_compat.h:
10602         * gst/schedulers/gthread-cothreads.h:
10603           remove unused cothread_lock and cothread_unlock calls
10604         * gst/schedulers/entryscheduler.c:
10605         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
10606         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
10607         (gst_entry_scheduler_pad_select):
10608           update to new API
10609         * gst/schedulers/gstbasicscheduler.c:
10610         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
10611         (gst_basic_scheduler_pad_select):
10612           remove useless lock and unlock calls, update pad_select to new API
10613           (untested)
10614         * gst/schedulers/gstoptimalscheduler.c:
10615         (gst_opt_scheduler_class_init):
10616           remove useless select, lock and unlock function calls
10617         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
10618           use gst_pad_collect instead of gst_pad_select
10619
10620 2004-04-04  Benjamin Otte  <otte@gnome.org>
10621
10622         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
10623         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
10624         (schedule_next_element), (print_entry):
10625           add can_schedule_pad to handle element states.
10626           add schedule_forward to select the correct entry to schedule next
10627
10628 2004-04-03  Benjamin Otte  <otte@gnome.org>
10629
10630         * gst/schedulers/entryscheduler.c: 
10631           remove unused variable, fix error inside Rb, fix compile warning in
10632           unreachable code
10633
10634 2004-04-03  Benjamin Otte  <otte@gnome.org>
10635
10636         * gst/schedulers/entryscheduler.c:
10637           completely revamp the inner workings, so it's a lot easier to
10638           understand and extend
10639
10640 2004-04-03  Andy Wingo  <wingo@pobox.com>
10641
10642         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
10643         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
10644         This allows better introspection of pipeline topology.
10645         (add_to_chain): Don't do trickery to put loop elements first;
10646         rather, queue a chain sort by marking the chain as dirty.
10647         (remove_from_chain): Mark the chain dirty.
10648         (sort_chain): New function. Sorts the group list so that terminal
10649         sinks are first. This means elements on the sink side will be
10650         preferentially sscheduled before elements on the src side of the
10651         pipeline.
10652         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
10653         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
10654         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
10655         (group_inc_link): Change argument and variable names to match the
10656         new link structure member names (src and sink).
10657         (group_dec_link): Add some description
10658
10659 2004-04-03  Benjamin Otte  <otte@gnome.org>
10660
10661         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
10662         * gst/gstinfo.h:
10663         * testsuite/debug/category.c: (main):
10664         * testsuite/debug/commandline.c: (main):
10665         * testsuite/debug/output.c: (main):
10666         * testsuite/debug/printf_extension.c: (main):
10667           fix to successfully build and test with --disable-gst-debug
10668           configure switch (fixes #138705)
10669
10670 2004-04-03  Benjamin Otte  <otte@gnome.org>
10671
10672         * docs/pwg/building-boiler.xml:
10673           add cvs login line and s/anonymous/anoncvs/
10674
10675 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
10676
10677         reviewed by Benjamin Otte  <otte@gnome.org>
10678
10679         * gst/gststructure.c: (gst_structure_free):
10680           memleak fix: free fields array (partial fix for #134839)
10681
10682 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10683
10684         * docs/random/ds/0.9-suggested-changes:
10685           Add a note to change handoff use in fakesrc to be usable in
10686           a more generic way (fakesrc should be renamed to appsrc or so).
10687         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
10688           Change signal type to scope, so we can fill the buffer in the
10689           handoff handler (that's the whole use of this signal...).
10690
10691 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10692
10693         * docs/pwg/other-ntoone.xml:
10694           Document muxers and n-to-1 elements.
10695
10696 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
10697
10698         * gst/registries/gstxmlregistry.c
10699         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
10700         determine if a file is a G_MODULE. The old one discards paths
10701         containing "so" somewhere in the middle. My home directory is
10702         called "soto". Go figure...
10703
10704 2004-03-31  David Schleef  <ds@schleef.org>
10705
10706         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
10707         to eventually deprecate gst_buffer_merge().  (bug: #136408)
10708         * gst/gstbuffer.h:
10709
10710 2004-03-31  David Schleef  <ds@schleef.org>
10711
10712         * gst/gstvalue.c: (gst_value_union_int_int_range),
10713         (gst_value_union_int_range_int_range), (gst_value_can_union),
10714         (gst_value_union), (_gst_value_initialize):  Add some union
10715         implementations.  We didn't have any previously.
10716         * testsuite/caps/Makefile.am:
10717         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
10718         (gst_audioscale_getcaps), (test_caps), (main): A little test
10719         that is the same as the caps manipulation in audioscale.
10720
10721 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10722
10723         * docs/faq/general.xml:
10724           add entry about "does gst support format X?"
10725
10726 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10727
10728         * gst/gstthread.c:
10729           fix docs
10730         * gst/gstutils.h:
10731           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
10732
10733 2004-03-30  Benjamin Otte  <otte@gnome.org>
10734
10735         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10736           set the offset of the buffer to the requested offset
10737         * gst/elements/gsttypefind.c: (stop_typefinding):
10738           revert patch 1.18 (which I unfortunately don't know the reason for).
10739           This is needed to allow downstream elements to seek. Otherwise
10740           typefind might overwrite a previous seek by downstream elements.
10741           This lead to errors with id3tag and typefind on some mp3s.
10742         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10743         (gst_entry_scheduler_iterate):
10744           be more verbose when debugging
10745
10746 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10747
10748         * gst/gstcaps.c: (gst_caps_from_string_inplace):
10749           make sure we don't get NULL strings
10750
10751 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10752
10753         * gst/gstcaps.c:
10754         * gst/gstelement.c:
10755         * gst/gstelementfactory.c: (gst_element_factory_get_type):
10756         * gst/gstindex.c: (gst_index_resolver_get_type),
10757         (gst_index_get_type), (gst_index_factory_get_type):
10758         * gst/gstinfo.c:
10759         * gst/gstpad.c:
10760         * gst/gstplugin.c:
10761         * gst/gsturi.c: (gst_uri_handler_get_type):
10762         * gst/gstvalue.c:
10763           first batch of documentation fixes
10764
10765 2004-03-29  David Schleef  <ds@schleef.org>
10766
10767         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
10768         * docs/gst/gstreamer-docs.sgml:  More hacking
10769         * docs/gst/gstreamer-sections.txt:
10770         * docs/gst/tmpl/cothreads_compat.sgml:
10771         * docs/gst/tmpl/gstcaps.sgml:
10772         * docs/gst/tmpl/gstclock.sgml:
10773         * docs/gst/tmpl/gstelement.sgml:
10774         * docs/gst/tmpl/gstevent.sgml:
10775         * docs/gst/tmpl/gstpad.sgml:
10776         * docs/gst/tmpl/gstutils.sgml:
10777         * docs/gst/tmpl/gstxml.sgml:
10778         * docs/gst/tmpl/gthread-cothreads.sgml:
10779         * docs/random/ds/0.9-suggested-changes:
10780         * gst/elements/gstfakesink.h: doc fixes
10781         * gst/elements/gstfakesrc.h: doc fixes
10782         * gst/gstcaps.c: doc fixes
10783         * gst/gstcaps.h: doc fixes
10784         * gst/gstelement.c: doc fixes
10785         * gst/gstelement.h: doc fixes
10786         * gst/gstindex.c: doc fixes
10787         * gst/gstinfo.c: doc fixes
10788         * gst/gstpad.c: doc fixes
10789         * gst/gstpad.h: doc fixes
10790         * gst/gstplugin.c: doc fixes
10791         * gst/gsttypefind.h: doc fixes
10792         * gst/gsturi.c: doc fixes
10793         * gst/gstvalue.c: doc fixes
10794
10795 2004-03-29  Colin Walters  <walters@redhat.com>
10796
10797         * gst/registries/gstxmlregistry.c (get_time)
10798         (plugin_times_older_than_recurse):
10799         Use the result of stat to determine whether a path is a file,
10800         so we don't attempt to opendir() files.
10801
10802 2004-03-29  Benjamin Otte  <otte@gnome.org>
10803
10804         * gst/gstpad.c: (gst_pad_set_explicit_caps):
10805           print caps in debugging output when setting caps failed
10806         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10807         (schedule_next_element), (get_buffer), (run_chainhandler),
10808         (element_may_start), (gst_entry_scheduler_chain_handler),
10809         (gst_entry_scheduler_get_handler),
10810         (gst_entry_scheduler_state_transition),
10811         (gst_entry_scheduler_pad_link):
10812           make this scheduler a testcase for mandatory
10813           discont-before-first-buffer which is needed if we want to allow apps
10814           to release the sound device.
10815           add SCHED_ASSERT macro to print scheduler state before an assertion
10816           triggers.
10817
10818 2004-03-29  Benjamin Otte  <otte@gnome.org>
10819
10820         * COPYING:
10821           replace by LGPL (former COPYING.LIB). The core is completely
10822           licensed LGPL.
10823         * COPYING.LIB:
10824           remove
10825
10826 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10827
10828         * po/af.po:
10829         * po/sv.po:
10830           updated Afrikaans and Swedish
10831
10832 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10833
10834         * po/LINGUAS:
10835         * po/az.po:
10836           adding Azerbaijani (Mətin Əmirov)
10837
10838 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
10839
10840         * gst/gstelement.h: 
10841         * gst/gstelement.c (gst_element_set_time_delay): New function for
10842         setting element time taking into account a hardware buffering
10843         delay.
10844         (gst_element_set_time): Now just an invocation of
10845         gst_element_set_time_delay.
10846         * gst/gstclock.h: 
10847         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
10848         allowing to set event times in the future.
10849         (gst_clock_get_event_time): Now just an invocation of
10850         gst_clock_get_event_time_delay.
10851
10852 2004-03-28  Benjamin Otte  <otte@gnome.org>
10853
10854         * gst/gstbin.c: (gst_bin_set_element_sched),
10855         (gst_bin_unset_element_sched):
10856           don't add decoupled elements to schedulers - otherwise it's
10857           impossible to control if a link to a decoupled element was already
10858           removed from a scheduler or not.
10859         * gst/schedulers/cothreads_compat.h:
10860         * gst/schedulers/gthread-cothreads.h:
10861           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
10862           is no "unused" warning.
10863         * gst/schedulers/Makefile.am:
10864         * gst/schedulers/entryscheduler.c:
10865           add new scheduler, based on ideas from talking to David and Martin.
10866           It's supposed to be small and correct. Currently it's also slow (but
10867           it's not noticable)
10868         * examples/retag/retag.c: (main):
10869         * testsuite/bytestream/test1.c: (main):
10870           fix missing NULLs at end of variadic functions
10871         * testsuite/elements/.cvsignore:
10872           update
10873
10874 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
10875
10876         * gst/gstevent.h:
10877         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
10878
10879 2004-03-25  David Schleef  <ds@schleef.org>
10880
10881         * docs/gst/gstreamer-sections.txt:  More doc hacking.
10882         * docs/gst/tmpl/gstaggregator.sgml:
10883         * docs/gst/tmpl/gstautoplugfactory.sgml:
10884         * docs/gst/tmpl/gstbin.sgml:
10885         * docs/gst/tmpl/gstbuffer.sgml:
10886         * docs/gst/tmpl/gstbufferstore.sgml:
10887         * docs/gst/tmpl/gstfakesink.sgml:
10888         * docs/gst/tmpl/gstfakesrc.sgml:
10889         * docs/gst/tmpl/gstmd5sink.sgml:
10890         * docs/gst/tmpl/gstreamer-unused.sgml:
10891         * docs/gst/tmpl/gstsearchfuncs.sgml:
10892         * docs/gst/tmpl/gstshaper.sgml:
10893         * docs/gst/tmpl/gstspider.sgml:
10894         * docs/gst/tmpl/gsttee.sgml:
10895         * docs/gst/tmpl/gstutils.sgml:
10896         * docs/gst/tmpl/gstvalue.sgml:
10897         * docs/gst/tmpl/gstxml.sgml:
10898         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
10899         and we don't support it.
10900         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
10901         (gst_use_threads), (gst_has_threads): same
10902         * gst/gstthreaddummy.c: same
10903         * gst/autoplug/gstspider.c: Make gst_spider_details static.
10904         * gst/autoplug/gstspider.h: same
10905         * gst/elements/gstaggregator.h: Remove bogus function from header
10906         * gst/elements/gstfakesink.h: same
10907         * gst/elements/gstfakesrc.h: same
10908         * gst/elements/gstmd5sink.h: same
10909         * gst/elements/gstshaper.h: same
10910         * gst/elements/gsttee.h: same
10911         * gst/gstbin.c: doc fixes
10912         * gst/gstbin.h: Remove unused definition.
10913         * gst/gstbuffer.c: doc fixes
10914         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
10915         * gst/gstfilter.c: doc fixes
10916         * gst/gsttag.c: doc fixes
10917         * gst/gstvalue.c: doc fixes
10918
10919 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10920
10921         * docs/pwg/advanced-types.xml:
10922           Document typefinding.
10923         * docs/pwg/other-oneton.xml:
10924           Document one-to-n elements, demuxers and parsers.
10925
10926 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
10927
10928         reviewed by: David Schleef  <ds@schleef.org>
10929
10930         * configure.ac: Check bison version (bug #127838)
10931
10932 2004-03-25  David Schleef  <ds@schleef.org>
10933
10934         * docs/gst/gstreamer-docs.sgml: More fine tuning.
10935         * docs/gst/gstreamer-sections.txt:
10936         * docs/gst/tmpl/gstautoplug.sgml:
10937         * docs/gst/tmpl/gststaticautoplug.sgml:
10938         * docs/gst/tmpl/gststaticautoplugrender.sgml:
10939         * docs/gst/tmpl/gstutils.sgml:
10940         * docs/gst/tmpl/gstxml.sgml:
10941
10942 2004-03-24  David Schleef  <ds@schleef.org>
10943
10944         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
10945         manual being such complete crap, that I decided to do major
10946         hacking of it.  This checkin replaces any fine tuning that
10947         may have been done previously, with the benefit of actually
10948         being complete for much of the API that was changed since
10949         0.6.  Further fine tuning will occur shortly.  (bug #134721)
10950         * docs/gst/gstreamer-sections.txt:
10951         * docs/gst/tmpl/GstBin.sgml:
10952         * docs/gst/tmpl/GstBuffer.sgml:
10953         * docs/gst/tmpl/GstCaps.sgml:
10954         * docs/gst/tmpl/GstClock.sgml:
10955         * docs/gst/tmpl/GstCompat.sgml:
10956         * docs/gst/tmpl/GstData.sgml:
10957         * docs/gst/tmpl/GstElement.sgml:
10958         * docs/gst/tmpl/GstEvent.sgml:
10959         * docs/gst/tmpl/GstIndex.sgml:
10960         * docs/gst/tmpl/GstStructure.sgml:
10961         * docs/gst/tmpl/GstTag.sgml:
10962         * docs/gst/tmpl/cothreads.sgml:
10963         * docs/gst/tmpl/cothreads_compat.sgml:
10964         * docs/gst/tmpl/gettext.sgml:
10965         * docs/gst/tmpl/grammar.tab.sgml:
10966         * docs/gst/tmpl/gst-i18n-app.sgml:
10967         * docs/gst/tmpl/gst-i18n-lib.sgml:
10968         * docs/gst/tmpl/gst.sgml:
10969         * docs/gst/tmpl/gst_private.sgml:
10970         * docs/gst/tmpl/gstaggregator.sgml:
10971         * docs/gst/tmpl/gstarch.sgml:
10972         * docs/gst/tmpl/gstatomic.sgml:
10973         * docs/gst/tmpl/gstatomic_impl.sgml:
10974         * docs/gst/tmpl/gstbin.sgml:
10975         * docs/gst/tmpl/gstbuffer.sgml:
10976         * docs/gst/tmpl/gstbufferstore.sgml:
10977         * docs/gst/tmpl/gstcaps.sgml:
10978         * docs/gst/tmpl/gstclock.sgml:
10979         * docs/gst/tmpl/gstcompat.sgml:
10980         * docs/gst/tmpl/gstconfig.sgml:
10981         * docs/gst/tmpl/gstcpu.sgml:
10982         * docs/gst/tmpl/gstdata.sgml:
10983         * docs/gst/tmpl/gstdata_private.sgml:
10984         * docs/gst/tmpl/gstelement.sgml:
10985         * docs/gst/tmpl/gstenumtypes.sgml:
10986         * docs/gst/tmpl/gsterror.sgml:
10987         * docs/gst/tmpl/gstevent.sgml:
10988         * docs/gst/tmpl/gstfakesink.sgml:
10989         * docs/gst/tmpl/gstfakesrc.sgml:
10990         * docs/gst/tmpl/gstfilesink.sgml:
10991         * docs/gst/tmpl/gstfilter.sgml:
10992         * docs/gst/tmpl/gstindex.sgml:
10993         * docs/gst/tmpl/gstinfo.sgml:
10994         * docs/gst/tmpl/gstinterface.sgml:
10995         * docs/gst/tmpl/gstlog.sgml:
10996         * docs/gst/tmpl/gstmacros.sgml:
10997         * docs/gst/tmpl/gstmarshal.sgml:
10998         * docs/gst/tmpl/gstmd5sink.sgml:
10999         * docs/gst/tmpl/gstmultifilesrc.sgml:
11000         * docs/gst/tmpl/gstobject.sgml:
11001         * docs/gst/tmpl/gstpad.sgml:
11002         * docs/gst/tmpl/gstparse.sgml:
11003         * docs/gst/tmpl/gstpipeline.sgml:
11004         * docs/gst/tmpl/gstplugin.sgml:
11005         * docs/gst/tmpl/gstpluginfeature.sgml:
11006         * docs/gst/tmpl/gstqueue.sgml:
11007         * docs/gst/tmpl/gstreamer-unused.sgml:
11008         * docs/gst/tmpl/gstregistry.sgml:
11009         * docs/gst/tmpl/gstregistrypool.sgml:
11010         * docs/gst/tmpl/gstscheduler.sgml:
11011         * docs/gst/tmpl/gstsearchfuncs.sgml:
11012         * docs/gst/tmpl/gstshaper.sgml:
11013         * docs/gst/tmpl/gstspider.sgml:
11014         * docs/gst/tmpl/gstspideridentity.sgml:
11015         * docs/gst/tmpl/gststructure.sgml:
11016         * docs/gst/tmpl/gstsystemclock.sgml:
11017         * docs/gst/tmpl/gsttag.sgml:
11018         * docs/gst/tmpl/gsttaginterface.sgml:
11019         * docs/gst/tmpl/gsttee.sgml:
11020         * docs/gst/tmpl/gstthread.sgml:
11021         * docs/gst/tmpl/gsttrace.sgml:
11022         * docs/gst/tmpl/gsttrashstack.sgml:
11023         * docs/gst/tmpl/gsttypefind.sgml:
11024         * docs/gst/tmpl/gsttypes.sgml:
11025         * docs/gst/tmpl/gsturi.sgml:
11026         * docs/gst/tmpl/gsturitype.sgml:
11027         * docs/gst/tmpl/gstutils.sgml:
11028         * docs/gst/tmpl/gstvalue.sgml:
11029         * docs/gst/tmpl/gstversion.sgml:
11030         * docs/gst/tmpl/gstxml.sgml:
11031         * docs/gst/tmpl/gstxmlregistry.sgml:
11032         * docs/gst/tmpl/gthread-cothreads.sgml:
11033         * docs/gst/tmpl/types.sgml:
11034
11035 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11036
11037         * docs/pwg/other-sink.xml:
11038         * docs/pwg/other-source.xml:
11039           Documentation on how to write source and sink elements. Other
11040           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
11041           manager, autoplugger) are all still pending.
11042
11043 2004-03-25  Benjamin Otte  <otte@gnome.org>
11044
11045         * testsuite/elements/Makefile.am:
11046         * testsuite/elements/gst-compprep-check:
11047           add check to make sure gst-compprep works
11048         * testsuite/elements/gst-inspect-check.in:
11049           improve initialization output
11050         * testsuite/Makefile.am:
11051         * testsuite/gst-inspect-check:
11052           remove old file
11053
11054 2004-03-24  David Schleef  <ds@schleef.org>
11055
11056         * testsuite/elements/Makefile.am:
11057         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
11058         to the testsuite.
11059
11060 2004-03-24  Benjamin Otte  <otte@gnome.org>
11061
11062         * libs/gst/control/dparam.c: (gst_dparam_attach),
11063         (gst_dparam_detach):
11064         * libs/gst/control/dparammanager.c: (gst_dpman_init):
11065           fix lvalue casts for real
11066
11067 2004-03-24  Benjamin Otte  <otte@gnome.org>
11068
11069         * gst/schedulers/gstbasicscheduler.c:
11070         (gst_basic_scheduler_src_wrapper):
11071         * gst/schedulers/gstoptimalscheduler.c:
11072         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
11073         (pad_clear_queued), (gst_opt_scheduler_add_element),
11074         (gst_opt_scheduler_remove_element):
11075           fix GStreamer to not have issues with lvalue casts anymore (fixes
11076           #136841)
11077
11078 2004-03-24  Benjamin Otte  <otte@gnome.org>
11079
11080         * gst/gstelement.c:
11081           add documentation about a gobject quirk where the object hasn't the
11082           correct class pointer set on initialization
11083         * gst/schedulers/gstbasicscheduler.c:
11084         (gst_basic_scheduler_src_wrapper):
11085           make sure to not run into an infinite loop
11086
11087 2004-03-22  Benjamin Otte  <otte@gnome.org>
11088
11089         * gst/gstutils.c: (gst_util_dump_mem):
11090         * gst/gstutils.h:
11091           first argument of gst_util_dump_mem should be const
11092
11093 2004-03-22  Johan Dahlin  <johan@gnome.org>
11094
11095         * gst/gstvalue.h: Clean up a little bit.
11096
11097 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
11098
11099         reviewed by Benjamin Otte  <otte@gnome.org>
11100
11101         * gst/autoplug/gstspider.c: (gst_spider_dispose):
11102         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
11103         (gst_aggregator_class_init), (gst_aggregator_init):
11104         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
11105         (gst_filesrc_dispose), (gst_filesrc_set_location):
11106         * gst/elements/gstidentity.c: (gst_identity_finalize),
11107         (gst_identity_class_init), (gst_identity_chain):
11108         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11109         * gst/elements/gststatistics.c: (gst_statistics_finalize),
11110         (gst_statistics_class_init):
11111         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
11112         (gst_tee_get_property):
11113           clean up used memory in this elements correctly on teardown (closes
11114           #137279)
11115
11116 2004-03-20  Colin Walters  <walters@redhat.com>
11117
11118         * gst/registries/gstxmlregistry.c:
11119         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
11120         registry saving atomic.
11121
11122 2004-03-20  Colin Walters  <walters@redhat.com>
11123
11124         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
11125         Just use
11126         access() instead of actually creating and deleting files.
11127
11128 2004-03-18  David Schleef  <ds@schleef.org>
11129
11130         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
11131         (bug #137625)
11132
11133 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11134
11135         * po/sv.po: updated translation (Christian Rose)
11136
11137 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11138
11139         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
11140         (gst_filesink_get_query_types), (_do_init),
11141         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
11142           return FALSE silently
11143         * po/af.po: updated translation (Petri Jooste)
11144
11145 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11146
11147         * Makefile.am:
11148         * configure.ac:
11149           dist common properly
11150         * po/af.po:
11151         * po/fr.po:
11152         * po/nl.po:
11153         * po/sr.po:
11154         * po/sv.po:
11155           refreshing translations
11156
11157 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11158
11159         * po/LINGUAS:
11160         * po/sv.po:
11161         * po/af.po:
11162           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
11163
11164 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11165
11166         * Makefile.am: use common/release.mak
11167
11168 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11169
11170         * docs/faq/gst-uninstalled:
11171           adding gst-monkeysaudio to the list of possible plugin dirs
11172
11173 2004-03-16  David Schleef  <ds@schleef.org>
11174
11175         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
11176         (gst_init_check_with_popt_table):  Fix some gettext strings to
11177         make them easier to translate.  Required making the strings
11178         non-const.
11179
11180 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11181
11182         * configure.ac: bump nano to 1
11183
11184 === release 0.8.0 ===
11185
11186 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11187
11188         * configure.ac: release 0.8.0, "Executive Slacks"
11189
11190 2004-03-16  Johan Dahlin  <johan@gnome.org>
11191
11192         * gst/schedulers/gstoptimalscheduler.c
11193         (gst_opt_scheduler_pad_unlink): Remove double ;,
11194         spotted by Scott Wheeler
11195
11196 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11197
11198         * configure.ac: bump libtool version
11199
11200 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11201
11202         * gst/gstcaps.h:
11203         * gst/gststructure.h:
11204           add reserved padding
11205
11206 2004-03-15  Benjamin Otte  <otte@gnome.org>
11207
11208         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
11209           set the first parameter for select call correctly.
11210           (fixes #137230)
11211
11212 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11213
11214         * *.c,*.h: don't mix tabs and spaces
11215
11216 2004-03-15  Johan Dahlin  <johan@gnome.org>
11217
11218         * gst/schedulers/gstoptimalscheduler.c
11219         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
11220         crash on MPEG playback. My boolean arithmetic is a bit rusty.
11221
11222         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
11223         
11224 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11225
11226         * testsuite/Rules:
11227           fix gst-register rules
11228
11229 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11230
11231         * testsuite/Rules:
11232           use versioned gst-register
11233
11234 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11235
11236         * docs/libs/gstreamer-libs-sections.txt:
11237           remove </SUBSECTION>
11238         * gst/gstplugin.c:
11239         * gst/gstregistry.c: (gst_registry_add_plugin):
11240         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
11241         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
11242           add debugging and fix some comment blocks
11243
11244 2004-03-15  Johan Dahlin  <johan@gnome.org>
11245
11246         * *.h: Revert indent changes.
11247         
11248 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
11249
11250         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
11251           g_error_free the g_error
11252         * tools/gst-feedback-m.m:
11253           check for other versions of gstreamer
11254         * tools/gst-indent:
11255           use sh, not bash
11256
11257 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
11258
11259         * tools/gst-register.c: do not spill paths when registries are not
11260           writable, until we fix the "user running gst-register" case.
11261
11262 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11263
11264         * *.c, *.h: commit of gst-indent run on core
11265
11266 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11267
11268         * tools/gst-indent:
11269         * tools/Makefile.am:
11270           add our indentation style as a script
11271
11272 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11273
11274         * po/sr.po:
11275         * po/LINGUAS:
11276           added Serbian translation
11277
11278 2004-03-13  Benjamin Otte  <otte@gnome.org>
11279
11280         * gst/gstelement.c:
11281           add documentation note about gst_element_found_tags_for_pad not
11282           being usable in getfunctions. (see #137042)
11283
11284 2004-03-12  David Schleef  <ds@schleef.org>
11285
11286         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
11287         change API right now!  Readd gst_caps_is_simple() macro.
11288         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
11289         uninitialized variable.  I'd bet this caused crashes.
11290         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
11291
11292 2004-03-12  Johan Dahlin  <johan@gnome.org>
11293
11294         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
11295         * gst/gstcaps.h: Clean up
11296
11297         * gst/gst.c (init_post): call gst_caps_get_type() instead of
11298         _gst_caps_initalize()
11299
11300         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
11301         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
11302
11303         * gst/gststructure.c (gst_structure_get_type): Ditto
11304
11305         * gst/gststructure.h: Ditto
11306         
11307 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11308
11309         * gst/gstqueue.c: (gst_queue_init):
11310           Reset default max. values in queues. Reason is simply to avoid
11311           braindead use. If you want wider values, use the properties. The
11312           default is supposed to always work. Wider values would make this
11313           beast a memory hog by default (250 full-PAL RGB32 video frames?
11314           That's 440 MB! No thank you).
11315
11316 2004-03-10  David Schleef  <ds@schleef.org>
11317
11318         * tools/gst-run.c: (main):  Fix crash when no relevant tools
11319         were found.  (bug #136793)
11320
11321 2004-03-10  Johan Dahlin  <johan@gnome.org>
11322
11323         * gst/schedulers/gstoptimalscheduler.c
11324         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
11325         links to elements within the same group, so we can finally remove
11326         that annoying warning. Refactor the code a little bit
11327         (group_dec_links_for_element): Split out
11328
11329 2004-03-09  David Schleef  <ds@schleef.org>
11330
11331         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
11332         (bug #134863)
11333
11334 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11335
11336         * configure.ac: first bug fix due to major/minor bump
11337
11338 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11339
11340         * configure.ac: bump nano to 1
11341
11342 === release 0.7.6 ===
11343
11344 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11345
11346         * NEWS:
11347         * RELEASE:
11348         * configure.ac:
11349           releasing 0.7.6, "Almost"
11350         * po/fr.po:
11351         * po/nl.po:
11352         * tools/Makefile.am:
11353         * tools/gst-feedback-m.m:
11354           unversioned source
11355
11356 2004-03-09  Johan Dahlin  <johan@gnome.org>
11357
11358         Reviewed by: Thomas Vander Stichele
11359
11360         * gst/gstelement.c (gst_element_class_init): register second
11361         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
11362         language bindings can (de)marshall correctly.
11363
11364         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
11365
11366         * gst/gsterror.c (gst_g_error_get_type): New function
11367
11368         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
11369         with VOID:OBJECT,OBJECT,STRING 
11370
11371 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
11372
11373         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
11374         Free a leaked g_timer on early returns.
11375
11376 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11377
11378         * docs/pwg/advanced-types.xml:
11379           Add cinepak description.
11380
11381 2004-03-07  David Schleef  <ds@schleef.org>
11382
11383         * docs/random/mimetypes:  Added cinepak description
11384
11385 2004-03-07  Andy Wingo  <wingo@pobox.com>
11386
11387         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
11388
11389         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
11390         there are no links to other groups when a group is destroyed.
11391         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
11392         removed from a group, make sure the link count to elements linked
11393         to other pads is appropriately decremented. This really fixes
11394         #135672.
11395
11396         The 1.60->1.61 patch has been reapplied in light of this fix.
11397
11398         * gst/gstelement.c (gst_element_dispose): Really protect against
11399         multiple invocations this time.
11400
11401 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11402
11403         * docs/gst/gstreamer-sections.txt:
11404         * docs/gst/tmpl/gsttag.sgml:
11405           remove some deprecated functions, document some existing ones
11406         * gst/gsttag.c: (gst_tag_get_flag):
11407         * gst/gsttag.h:
11408           add accessor function
11409
11410 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11411
11412         * docs/gst/gstreamer-sections.txt:
11413         * docs/gst/tmpl/gsttag.sgml:
11414         * docs/gst/tmpl/gstxml.sgml:
11415         * gst/gsttag.c: (gst_tag_get_flag):
11416         * gst/gsttag.h:
11417
11418 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
11419
11420         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
11421         leak
11422
11423 2004-03-05  David Schleef  <ds@schleef.org>
11424
11425         * REQUIREMENTS: Add bison and flex.
11426         * configure.ac: Fix comment about bison.
11427         * docs/random/ds/0.9-suggested-changes: yer ma
11428         * tools/gst-inspect.c: (print_element_info):  Fix warning.
11429
11430 2004-03-05  Benjamin Otte  <otte@gnome.org>
11431
11432         * gst/gstelement.c: (gst_element_error_full):
11433           revert recent recursive state changing commit - messing with other
11434           elements' states is evil and should be done by apps only.
11435
11436 2004-03-05  Benjamin Otte  <otte@gnome.org>
11437
11438         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
11439           check for empty intersection instead of NULL caps
11440         (gst_element_get_compatible_pad_filtered):
11441           remove old workaround that is only a bug nowadays
11442
11443 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11444
11445         * gst/gstelement.c: (gst_element_error_full):
11446           make elements try to recursively change state to PAUSED on all
11447           parents after an error to suppress ensuing warnings
11448         * gst/parse/grammar.y:
11449           make it check if it was able to sync the state, and throw an error
11450           if not, so stuff like
11451           oggdemux ! vorbisdec ! osssink gets caught
11452
11453 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11454
11455         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
11456           it contains lib64; use AS_AC_EXPAND to handle it properly
11457
11458 2004-03-05  David Schleef  <ds@schleef.org>
11459
11460         * gst/gstcpuid_i386.s:  Remove unused code
11461         * libs/gst/getbits/getbits.c: (gst_getbits_init),
11462         (gst_getbits_newbuf): Remove MMX code
11463         * libs/gst/getbits/getbits.h: Remove MMX code
11464
11465 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
11466
11467         * debian/.cvsignore:
11468         * debian/README.Debian:
11469         * debian/changelog:
11470         * debian/control:
11471         * debian/control.in:
11472         * debian/copyright:
11473         * debian/gstreamer-core-libs-dev.files:
11474         * debian/gstreamer-core-libs.files:
11475         * debian/gstreamer-core.files:
11476         * debian/gstreamer-core.postinst:
11477         * debian/gstreamer-core.postrm:
11478         * debian/gstreamer-doc.files:
11479         * debian/gstreamer-doc.links:
11480         * debian/gstreamer-doc.lintian:
11481         * debian/gstreamer-runtime.files:
11482         * debian/gstreamer-runtime.manpages:
11483         * debian/gstreamer-runtime.postinst:
11484         * debian/gstreamer-runtime.postrm:
11485         * debian/gstreamer-tools.files:
11486         * debian/gstreamer-tools.manpages:
11487         * debian/libgstreamer-dev.files:
11488         * debian/libgstreamer0.4.1.files:
11489         * debian/libgstreamerVERSION.files:
11490         * debian/rules:
11491         Debian package info not maintained here.
11492
11493 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11494
11495         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11496         * gst/gstbin.c: (gst_bin_class_init):
11497         * gst/gstelement.c: (gst_element_class_init):
11498         * gst/gstindex.c: (gst_index_class_init):
11499         * gst/gstobject.c: (gst_object_class_init),
11500         (gst_signal_object_class_init):
11501         * gst/gstpad.c: (gst_pad_template_class_init):
11502         * gst/gstregistry.c: (gst_registry_class_init):
11503         * gst/gsturi.c: (gst_uri_handler_base_init):
11504         * gst/gstxml.c: (gst_xml_class_init):
11505         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11506         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
11507           make all signal names use dashes instead of underscore
11508
11509 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11510
11511         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
11512
11513 2004-03-03  Benjamin Otte  <otte@gnome.org>
11514
11515         * gst/schedulers/gstoptimalscheduler.c:
11516           revert last commit by Andy Wingo. It causes segfaults on unreffing
11517           in Rhythmbox. (see bug #135672)
11518
11519 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11520
11521         * po/fr.po: fix typo
11522
11523 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11524
11525         * tools/gst-inspect.c: (main): 
11526         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
11527
11528 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11529
11530         * configure.ac:
11531           get GLIB_ONLY and POPT flags for the nonversioned binaries
11532         * tools/Makefile.am:
11533           use them
11534
11535 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11536
11537         * gst/gst.c: (init_post):
11538           change so that GST_REGISTRY now is where the global registry gets
11539           saved, since that is where plugins now get attached to first, and
11540           spilled over to the user registry.  Note that in the case of using
11541           GST_REGISTRY env var, we don't want to affect any real registries
11542           beyond the one given by this var, and thus we don't set a user
11543           registry to spill to.  So make sure GST_REGISTRY is writable.
11544
11545 2004-03-01  David Schleef  <ds@schleef.org>
11546
11547         * AUTHORS:  Added some names.  Add yourself if you're missing.
11548
11549 2004-03-01  David Schleef  <ds@schleef.org>
11550
11551         * MAINTAINERS: Add
11552
11553 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
11554
11555         * configure.ac:
11556           remove whitespace
11557         * docs/gst/tmpl/gstbuffer.sgml:
11558         * docs/gst/tmpl/gstdata.sgml:
11559         * docs/gst/tmpl/gstreamer-unused.sgml:
11560         * docs/gst/tmpl/gstxml.sgml:
11561           doc update
11562         * docs/manuals.mak:
11563           add a FIXME
11564         * docs/pwg/intro-preface.xml:
11565         * docs/pwg/pwg.xml:
11566           remove GNOME
11567         * gst/gst.c: (init_post):
11568           try GST_PLUGIN_PATH paths for the _global_registry first
11569         * gst/gstelement.h:
11570           add the error message as well, otherwise (null) debug info doesn't
11571           make much sense
11572         * tools/gst-register.c: (main):
11573           spill paths to next registry if this registry is not writable
11574         * po/fr.po:
11575         * po/nl.po:
11576           translation updates
11577
11578 2004-03-01  Johan Dahlin  <johan@gnome.org>
11579
11580         * gst/gstbuffer.c (_gst_buffer_initialize): 
11581         * gst/gstdata.c (gst_data_get_type): 
11582         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
11583         instead of ref, since some applications that uses GBoxed
11584         routines depends on a function that actually returns a copy.
11585
11586 2004-02-27  Benjamin Otte  <otte@gnome.org>
11587
11588         * gst/gstbuffer.h:
11589           remove gst_buffer_free, use gst_data_unref
11590         * gst/gstdata.c: (gst_data_get_type):
11591           use refcounting in GstData GBoxed registration
11592         * gst/gstdata.h:
11593           remove gst_data_free, use gst_data_unref
11594
11595 2004-02-27  Johan Dahlin  <johan@gnome.org>
11596
11597         * gst/gstdata.c (gst_data_get_type): New function, register
11598         GstData as a GBoxed type.
11599
11600         * gst/gstdata.h (GST_TYPE_DATA): New macro
11601
11602 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
11603
11604         * Makefile.am:
11605         * gstreamer.spec.in:
11606           put back RELEASE
11607         * gst/Makefile.am:
11608           clean up non-disting of built files
11609         * testsuite/debug/commandline.c:
11610           test fix for option rename
11611
11612 2004-02-26  David Schleef  <ds@schleef.org>
11613
11614         * configure.ac:  We don't really need glib-2.3.  Also remove
11615         some unneeded checks for library functions.
11616         * gst/Makefile.am:  Instead, we need to not dist files created
11617         by glib-genmarshal.
11618
11619 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11620
11621         * configure.ac:
11622           bump glib required version to 2.3.0 for g_value_takes_boxed
11623
11624  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
11625
11626         * common/m4/gst-docs.m4
11627         change flavour text from enable to disable as enable is our default
11628         closes bug Bug 135304
11629
11630 === release 0.7.5 ===
11631  
11632  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11633  
11634         * NEWS:
11635           instate NEWS file
11636         * Makefile.am:
11637         * gstreamer.spec.in:
11638         * RELEASE:
11639           put back release
11640         * configure.ac:
11641         * docs/random/release:
11642           more updates
11643
11644 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11645
11646         * gst/gsttag.c: (_gst_tag_initialize):
11647         * po/fr.po:
11648         * po/nl.po:
11649           remove hyphen from codec tags
11650
11651 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11652
11653         * gst/parse/Makefile.am:
11654           fix dependency so that a make from a clean build works the first
11655           time
11656
11657 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11658
11659         * docs/random/release:
11660           update release strategy
11661         * po/fr.po:
11662           auto-update po file
11663         * po/nl.po:
11664           update dutch translation
11665
11666 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11667
11668         * docs/manual/debugging.xml:
11669         fix manual for new debugging system
11670
11671 2004-02-25  Andy Wingo  <wingo@pobox.com>
11672
11673         * gst/gstpad.c (gst_pad_link_prepare): Re-add
11674         gst_pad_link_prepare. Please email the list with specific reasons
11675         for reverting.
11676
11677 2004-02-24  Andy Wingo  <wingo@pobox.com>
11678
11679         * gst/gstelement.c (gst_element_dispose): Protect against multiple
11680         invocations.
11681
11682         * gst/schedulers/gstoptimalscheduler.c:
11683         I added a mess of prototypes at the top of the file by way of
11684         documentation. Some of the operations on chains and groups were
11685         re-organized.
11686
11687         (create_group): Added a type argument so if the group is enabled,
11688         the setup_group_scheduler knows what to do.
11689         (group_elements): Added a type argument here, too, to be passed on
11690         to create_group.
11691         (group_element_set_enabled): If an unlinked PLAYING element is
11692         added to a bin, we have to create a new group to hold the element,
11693         and this function will be called before the group is added to the
11694         chain. Thus we have a valid case for group->chain==NULL. Instead
11695         of calling chain_group_set_enabled, just set the flag on the group
11696         (the chain's status will be set when the group is added to it).
11697         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
11698         Setup the group scheduler when the group is enabled, not
11699         specifically when an element goes PAUSED->PLAYING. This means
11700         PLAYING elements can be added, linked, and scheduled into a
11701         PLAYING pipeline, as was intended.
11702         (add_to_group): Don't ref the group twice. I don't know when this
11703         double-ref got in here. Removing it has the potential to cause
11704         segfaults if other parts of the scheduler are buggy. If you find
11705         that the scheduler is segfaulting for you, put in an extra ref
11706         here and see if that hacks over the underlying issue. Of course,
11707         then find out what code is unreffing a group it doesn't own...
11708         (create_group): Make the extra refcount floating, and remove it
11709         after adding the element. This means that...
11710         (unref_group): Destroy when the refcount reaches 0, not 1, like
11711         every other refcounted object in the known universe.
11712         (remove_from_group): When a group becomes empty, set it to be not
11713         active, and remove it from its chain. Don't unref it again,
11714         there's no floating reference any more.
11715         (destroy_group): We have to remove the group from the chain in
11716         remove_from_group (rather than here) to break refcounting cycles
11717         (the chain always has a ref on the group). So assert that
11718         group->chain==NULL.
11719         (ref_group_by_count): Removed, it was commented out anyway.
11720         (merge_chains): Use the remove_from_chain and add_to_chain
11721         primitives to do the reparenting, instead of rolling our own
11722         implementation.
11723         (add_to_chain): The first non-disabled group in the chain's group
11724         list will be the entry point for the chain. Because buffers can
11725         accumulate in loop elements' peer bufpens, we preferentially
11726         schedule loop groups before get groups to avoid unnecessary
11727         execution of get-based groups when the bufpens are already full.
11728         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
11729         (get_group_schedule_function): Ditto.
11730         (loop_group_schedule_function): Ditto.
11731         (gst_opt_scheduler_loop_wrapper): Ditto.
11732         (gst_opt_scheduler_iterate): Ditto.
11733
11734         I understand the opt scheduler now, yippee!
11735
11736         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
11737         (gst_pad_get_name, gst_pad_set_chain_function) 
11738         (gst_pad_set_get_function, gst_pad_set_event_function) 
11739         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
11740         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
11741         (gst_pad_set_query_function, gst_pad_get_query_types) 
11742         (gst_pad_get_query_types_default) 
11743         (gst_pad_set_internal_link_function) 
11744         (gst_pad_set_formats_function, gst_pad_set_link_function) 
11745         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
11746         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
11747         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
11748         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
11749         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
11750         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
11751         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
11752         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
11753         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
11754         (gst_pad_event_default_dispatch, gst_pad_event_default) 
11755         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
11756         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
11757         (gst_pad_get_formats_default, gst_pad_get_formats): Better
11758         argument checks, and some doc fixes.
11759
11760         (gst_pad_custom_new_from_template): Um, does anyone
11761         use these functions? Actually make a custom pad instead of a
11762         normal one.
11763         (gst_pad_try_set_caps): Transpose some checks.
11764         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
11765         the pad is in negotiation.
11766         (gst_pad_try_relink_filtered): Use pad_link_prepare.
11767         
11768         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
11769
11770         * gst/gstelement.h: 
11771         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
11772         on the list.
11773
11774 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11775
11776         * gst/gstbin.c: (gst_bin_add):
11777           add error for not being able to add elements
11778
11779 2004-02-22  Julien MOUTTE <julien@moutte.net>
11780
11781         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
11782         audio-codec and video-codec.
11783
11784 2004-02-22  Benjamin Otte  <otte@gnome.org>
11785
11786         reported by: Padraig O'Briain <padraig.obriain@sun.com>
11787
11788         * autogen.sh:
11789           replace test -e with test -x for mkinstalldirs to be more portable.
11790           (fixes #134816)
11791
11792 2004-02-22  Benjamin Otte  <otte@gnome.org>
11793
11794         * gst/gstpad.c:
11795           revert last patch from Andy, it makes gst_pad_can_link_filtered much
11796           too noisy
11797         * gst/gsttag.c: (_gst_tag_initialize):
11798         * gst/gsttag.h:
11799           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
11800         * libs/gst/control/dparam.c: (gst_dparam_attach):
11801         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
11802           check that types for attached dparams match
11803
11804 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11805
11806         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
11807         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11808         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11809           fix errors
11810
11811 2004-02-20  Andy Wingo  <wingo@pobox.com>
11812
11813         * gst/gstbin.c:
11814         * gst/gstbuffer.c:
11815         * gst/gstplugin.c:
11816         * gst/registries/gstxmlregistry.c: 
11817         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
11818
11819         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
11820         (gst_element_add_pad): DEBUG->INFO, some fixes.
11821         (gst_element_get_compatible_pad_template): Just see if the
11822         templates' caps intersect, not if one is a strict subset of the
11823         other. This conforms more to what gst_pad_link_intersect() does.
11824         (gst_element_class_add_pad_template): Don't memcpy the pad
11825         template, just ref it.
11826         (gst_element_get_compatible_pad_filtered): Clean up debug messages
11827
11828         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
11829         (gst_pad_link_filtered): Debug changes.
11830         (gst_pad_link_prepare): New function, consolidated from
11831         can_link_filtered and link_filtered.
11832
11833         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
11834         look more like that of the functions in gstelement.c
11835
11836         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
11837         object, and return the empty string if object is NULL.
11838
11839         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
11840         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
11841         LOG, not DEBUG. We still get flex info on debug.
11842
11843         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
11844         debug string more verbose.
11845         (plugin_times_older_than): DEBUG->LOG.
11846
11847 2004-02-20  Julien MOUTTE <julien@moutte.net>
11848
11849         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
11850         will emit found_tag for each stream they demux with the codec.
11851
11852 2004-02-20  Benjamin Otte  <otte@gnome.org>
11853
11854         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
11855           copy navigation event correctly. Check freeing tag lists. 
11856         * gst/gstthread.c: (gst_thread_change_state):
11857           don't abort() on state changing mess - it might happen because of
11858           bugs.
11859         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
11860           use boxed functions
11861         * gst/gstvalue.h:
11862           fix GST_VALUE_HOLDS_CAPS
11863
11864 2004-02-19  David Schleef  <ds@schleef.org>
11865
11866         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
11867         and use it for GST_FUNCTION.  (bug #134750)
11868
11869 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11870
11871         * po/fr.po:
11872         * po/nl.po:
11873           updating translations
11874
11875 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11876
11877         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
11878
11879 2004-02-18  kost@imn.htwk-leipzig.de
11880
11881         reviewed by: David Schleef  <ds@schleef.org>
11882
11883         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
11884         for libgstcontrol.
11885
11886 2004-02-18  David Schleef  <ds@schleef.org>
11887
11888         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11889         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11890         (gst_dpsmooth_new): Additional fixes to get double dparams working.
11891         * tools/gst-inspect.c: (print_element_info): Support dumping of
11892         double dparam information.
11893
11894 2004-02-17  David Schleef  <ds@schleef.org>
11895
11896         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11897         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
11898         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
11899         Use GST_TYPE_CAPS in signal prototype.
11900         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
11901         Convert GST_TYPE_CAPS to boxed.
11902         * gst/gstelement.c: (gst_element_class_init):
11903         Use GST_TYPE_TAG_LIST in signal prototype.
11904         * gst/gstindex.c: (gst_index_class_init):
11905         * gst/gstindex.h:
11906         Add GST_TYPE_INDEX_ENTRY type.
11907         * gst/gstmarshal.list:
11908         Add necessary marshal types.
11909         * gst/gstpad.c: (gst_real_pad_class_init),
11910         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
11911         (gst_pad_recover_caps_error):
11912         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
11913         * gst/gststructure.c: (_gst_structure_initialize),
11914         (gst_structure_copy), (_gst_structure_copy_conditional):
11915         * gst/gststructure.h:
11916         Convert GST_TYPE_STRUCTURE to boxed.
11917         * gst/gsttag.c: (gst_tag_list_get_type):
11918         * gst/gsttag.h:
11919         Add GST_TYPE_TAG_LIST type.
11920
11921 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11922
11923         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
11924         to what we agreed with david.
11925         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
11926
11927 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11928
11929         * po/nl.po: update translation
11930
11931 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11932
11933         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
11934           throw an error if spider is trying to play a mime type there is
11935           no decoder for
11936         * po/POTFILES.in:
11937           add gst/autoplug/gstspider.c for translation
11938
11939 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11940
11941         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
11942         silently when the pad is negotiating.
11943
11944 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11945
11946         * docs/faq/Makefile.am:
11947           add script to run gstreamer uninstalled 
11948         * docs/faq/faq.xml:
11949         * docs/faq/developing.xml:
11950         * docs/faq/gst-uninstalled:
11951           extract script to run gstreamer uninstalled
11952         * docs/manuals.mak:
11953           add EXTRA_SOURCES variable for Makefile.am's to set to
11954           use additional SOURCE files for the doc build
11955
11956 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11957
11958         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
11959
11960 2004-02-15  Julien MOUTTE  <julien@moutte.net>
11961
11962         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
11963         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
11964         an error was thrown by osssink. Basically a state change failure for
11965         an element in a different scheduling group was considered as
11966         successful, which means that caps nego was going on and weird stuff
11967         happened. Like I wrote in the comment there, if someone wants to
11968         revert that please drop me a mail explaining why because I really see
11969         no point in keeping that broken behaviour there.
11970         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
11971         be empty, we then return NULL which will trigger a nice error when 
11972         pulling from the pad.
11973
11974 2004-02-13  David Schleef  <ds@schleef.org>
11975
11976         * libs/gst/control/dparam.c: (gst_dparam_class_init),
11977         (gst_dparam_get_property), (gst_dparam_set_property),
11978         (gst_dparam_do_update_default):
11979         * libs/gst/control/dparam.h:
11980         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11981         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
11982         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
11983         (gst_dpsmooth_do_update_double):
11984         * libs/gst/control/dparam_smooth.h:
11985         * libs/gst/control/dparammanager.c:
11986         (gst_dpman_inline_direct_update):
11987         Add support for double dparams.
11988
11989 2004-02-13  David Schleef  <ds@schleef.org>
11990
11991         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
11992         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
11993
11994 2004-02-13  Mattias Wadman  <mattias@sudac.org>
11995
11996         reviewed by: David Schleef  <ds@schleef.org>
11997
11998         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
11999         (gst_fdsrc_init), (gst_fdsrc_set_property),
12000         (gst_fdsrc_get_property), (gst_fdsrc_get):
12001         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
12002         and sends an EOS event if file descriptor reading times out.
12003
12004 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12005
12006         * configure.ac:
12007           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
12008
12009 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12010
12011         * configure.ac: pass required libxml version as argument
12012         (bug reported by Christophe Fergeau)
12013
12014 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12015   
12016         * docs/gst/gstreamer-docs.sgml:
12017         * docs/gst/tmpl/gstxml.sgml:
12018         * docs/libs/gstreamer-libs-docs.sgml:
12019           version API docs
12020
12021 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12022
12023         * gst/gstinfo.c:
12024         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
12025         (gst_registry_pool_feature_filter):
12026         * gst/gstthread.c: (gst_thread_class_init):
12027         * gst/gstvalue.c:
12028           add includes exposed by building without libxml
12029         * gst/indexers/Makefile.am:
12030           do not build fileindex when LOADSAVE disabled; we should have
12031           a better libxml check later since fileindex depends on xml, not
12032           LOADSAVE or REGISTRY
12033         * libs/gst/control/Makefile.am:
12034           link with m
12035         * tools/Makefile.am:
12036           fix wrong source code for gst-xmlinspect
12037
12038 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12039
12040         * configure.ac:
12041           fix gcov help output
12042           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
12043         * docs/random/release:
12044           some updated releasing notes
12045         * gstreamer.spec.in:
12046           more updates
12047
12048 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12049
12050         * docs/faq/faq.xml:
12051         * docs/manual/manual.xml:
12052         * docs/pwg/pwg.xml:
12053         * docs/pwg/titlepage.xml:
12054           put version in documentation
12055
12056 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12057
12058         * tools/Makefile.am: fix man page installation
12059
12060 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12061
12062         * configure.ac:
12063           don't check for libxml when load/save and registry disabled (#105844)
12064         * gstreamer.spec.in:
12065           sync with fedora candidate spec
12066
12067 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12068
12069         * po/fr.po:
12070         * po/nl.po:
12071           replace multidisksrc with multifilesrc
12072
12073 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12074
12075         * po/POTFILES.in:
12076           update to multidisksrc => multifilesrc file renaming (#134145)
12077
12078 2004-02-11  David Schleef  <ds@schleef.org>
12079
12080         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
12081         * docs/gst/tmpl/gstpadtemplate.sgml: same
12082         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
12083         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
12084         fixing dance.
12085         * gst/gstutils.c: Remove disabled code that uses GstProps.
12086         * gst/registries/gstxmlregistry.h: same
12087         * docs/random/ds/0.9-suggested-changes: random notes
12088
12089 2004-02-11  kost@imn.htwk-leipzig.de
12090
12091         reviewed by: David Schleef  <ds@schleef.org>
12092
12093         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
12094         initialisation of clock (bug #134128)
12095
12096 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12097
12098         * configure.ac:
12099         * gst/elements/Makefile.am:
12100         * gst/elements/gstelements.c:
12101         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
12102         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
12103         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
12104         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
12105         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
12106         * gst/elements/gstmultifilesrc.h:
12107           rename multidisksrc to multifilesrc (part of #122200)
12108
12109 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12110
12111         * docs/manuals.mak:
12112           fix automake complaints
12113         * gst-element-check.m4:
12114           fix unquotedness
12115
12116 2004-02-11  David Schleef  <ds@schleef.org>
12117
12118         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
12119         * gst/gstatomic_impl.h: Disable sparc implementation.
12120
12121 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12122
12123         * gst-element-check.m4:
12124           fix underquoted macros as reported by automake 1.8.x (#133800)
12125         * configure.ac:
12126           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
12127           by autopoint (fixes #132996)
12128
12129 2004-02-10  Andy Wingo  <wingo@pobox.com>
12130
12131         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
12132         way to do inheritance.
12133         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
12134         (gst_pad_get_query_types, gst_pad_get_query_types_default):
12135         Routine docs.
12136         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
12137         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
12138         doc.
12139         (gst_pad_unlink, gst_pad_is_linked): Docs.
12140         (gst_pad_renegotiate): A brief description of capsnego.
12141         (gst_pad_try_set_caps): Document.
12142         (gst_pad_try_set_caps_nonfixed): Document.
12143         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
12144         (gst_pad_set_parent): Deprecated (although not out of the API).
12145         (gst_pad_get_parent): Deprecated, although many plugins use this.
12146         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
12147         are private and will go away in 0.9.
12148         (gst_pad_perform_negotiate): Doc.
12149         (gst_pad_link_unnegotiate): I think this is meant to be static.
12150         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
12151         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
12152         (gst_pad_get_peer): Doc updates.
12153         (gst_pad_caps_change_notify): Doc.
12154         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
12155         (gst_ghost_pad_new): Doc fixes.
12156
12157         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
12158         (gst_object_check_uniqueness): 
12159
12160         * gst/gstelement.c (gst_element_add_pad) 
12161         (gst_element_add_ghost_pad, gst_element_remove_pad) 
12162         (gst_element_remove_ghost_pad, gst_element_get_pad) 
12163         (gst_element_get_static_pad, gst_element_get_pad_list) 
12164         (gst_element_class_get_pad_template_list) 
12165         (gst_element_class_get_pad_template): Work on the docs.
12166         (gst_element_get_pad_template_list): Uses the class method.
12167         (gst_element_get_compatible_pad_template): Docs, and consolidate
12168         some test conditions. 
12169         (gst_element_get_pad_from_template): New static function.
12170         (gst_element_request_compatible_pad): Docs, and work with
12171         non-request compatible templates. 
12172         (gst_element_get_compatible_pad_filtered): Docs and remove
12173         redundant checks.
12174         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
12175         (gst_element_link_filtered, gst_element_link_many) 
12176         (gst_element_link, gst_element_link_pads) 
12177         (gst_element_unlink_many): Docs.
12178
12179 2004-02-05  Andy Wingo  <wingo@pobox.com>
12180
12181         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
12182         s/pointer/boxed/.
12183
12184         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
12185
12186         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
12187         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
12188         with the type=GST_TYPE_CAPS. This allows language bindings to know
12189         what kind of data they're dealing with.
12190
12191         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
12192         to NULL when g_value_init is called. GstCaps, which rolls its own
12193         type implementation, now does the same instead of allocating empty
12194         caps.
12195         (_gst_caps_initialize, _gst_caps_collect_value,
12196         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
12197         table methods. This allows G_VALUE_COLLECT to work.
12198
12199 2004-02-05  Andy Wingo  <wingo@pobox.com>
12200
12201         * configure.ac:
12202         * testsuite/Makefile.am (SUBDIRS): 
12203         * testsuite/ghostpads/Makefile.am: 
12204         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
12205
12206         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
12207         These two routines are the only ones that set
12208         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
12209         pad template. They should be made static, depending on ABI needs.
12210         (gst_real_pad_dispose): Handle the case of ghost pads without a
12211         parent. Assert after dealing with ghost pads that the ghost pad
12212         list is empty.
12213         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
12214         set after creation.
12215         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
12216         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
12217         functions. set_property will call add_ghost_pad/remove_ghost_pad
12218         as appropriate.
12219         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
12220
12221         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
12222         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
12223         (gst_element_remove_pad): Handle ghost pads as well.
12224         (gst_element_remove_ghost_pad): Deprecated (could be removed,
12225         depending on API-stability needs).
12226
12227 2004-02-05  Andy Wingo  <wingo@pobox.com>
12228
12229         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
12230         of course they're const
12231
12232 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12233
12234         * tools/Makefile.am:
12235         * tools/gst-feedback:
12236         * tools/gst-feedback-0.7:
12237           make gst-feedback versioned too for consistency
12238
12239 2004-02-11  David Schleef  <ds@schleef.org>
12240
12241         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12242         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
12243
12244 2004-02-10  Julien MOUTTE <julien@moutte.net>
12245
12246         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
12247         the structure does not contain a valid tag list. Adding a safety check
12248         to remove a noisy warning in that case.
12249
12250 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
12251
12252         * gst/gst.c: fix name to be in line with others
12253
12254 2004-02-09  Julien MOUTTE <julien@moutte.net>
12255
12256         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
12257         not shout that loud when len is 0. Just return 0 silently.
12258
12259 2004-02-09  Julien MOUTTE  <julien@moutte.net>
12260
12261         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
12262         because data_unref has one and I prefer the debug to be symetric.
12263         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
12264         were refed when added to the queue and unrefed only once when the queue
12265         was flushed. Now the flush handler unref the buffers two times : first
12266         unref for the ref added when pushing in the queue's tail and second
12267         unref to destroy the flushed buffer.
12268
12269 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
12270
12271         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
12272
12273 2004-02-06  David Schleef  <ds@schleef.org>
12274
12275         * docs/random/ds/0.9-suggested-changes: Random ramblings
12276         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
12277         to int before printing.
12278         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
12279         * gst/parse/parse.l: same.  See bug #129600
12280
12281 2004-02-06  David Schleef  <ds@schleef.org>
12282
12283         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
12284         (gst_index_add_entry), (gst_index_add_associationv),
12285         (gst_index_add_association): Add gst_index_add_associationv()
12286         and clean up gst_index_add_association(). #127133
12287
12288 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12289
12290         * autogen.sh: check out common with right tag if CVS/Tag exists
12291
12292 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12293
12294         * testsuite/ghostpads/ghostpads.c: (main):
12295           fix testsuite from segfaulting
12296
12297 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12298
12299         * Makefile.am: add release target
12300         * configure.ac: bump nano to 1
12301         * docs/random/release:
12302
12303 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12304
12305         * gst/gstcaps.h:
12306         * gst/gstelement.c: (gst_element_base_class_init),
12307         (gst_element_class_set_details), (gst_element_clear_pad_caps):
12308         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12309         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
12310         (gst_real_pad_dispose):
12311         * gst/gststructure.c: (gst_structure_free),
12312         (gst_structure_from_string):
12313           put reverted patch back in
12314         * gst/gstelement.c: (gst_element_remove_pad):
12315           free explicit caps if they're set
12316         * gst/gstpad.c: (_gst_pad_default_fixate_func):
12317           copy the structure when fixating
12318
12319 2004-02-05  David Schleef  <ds@schleef.org>
12320
12321         * gst/gstmarshal.list:
12322         * gst/gstpad.c: (gst_real_pad_class_init),
12323         (_gst_real_pad_fixate_accumulator):
12324         Revert POINTER->BOXED change in signal marshaller.
12325
12326 === release 0.7.4 ===
12327                                                                                 
12328 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12329                                                                                 
12330         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
12331         * configure.ac: changed for release
12332
12333 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
12334
12335         * gstreamer.spec.in:
12336           bump required version of gtk-doc
12337
12338 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
12339
12340         * gst/gstcaps.h:
12341         * gst/gstelement.c: (gst_element_base_class_init),
12342         (gst_element_class_set_details), (gst_element_clear_pad_caps):
12343         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12344         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
12345         (gst_real_pad_dispose):
12346         * gst/gststructure.c: (gst_structure_free),
12347         (gst_structure_from_string):
12348           revert patch that breaks applications, reapply after release
12349           to get this fixed properly
12350
12351 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12352
12353         * gst/gsttag.c: (_gst_tag_initialize):
12354         * gst/gsttag.h:
12355           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
12356
12357 2004-02-04  David Schleef  <ds@schleef.org>
12358
12359         Fix some memleaks:
12360         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
12361         (gst_spider_plug_from_srcpad):
12362         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
12363
12364 2004-02-04  David Schleef  <ds@schleef.org>
12365
12366         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
12367         a GstRealPad before accessing its structure members.
12368
12369 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12370
12371         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
12372         (gst_clock_get_speed):
12373         * gst/gstclock.h:
12374           reset padding, remove unused fields
12375
12376 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12377
12378         * gst/autoplug/gstspideridentity.c:
12379         (gst_spider_identity_sink_loop_type_finding):
12380           use get_allowed_caps, not get_caps (fixes #132519)
12381         * gst/elements/gsttypefind.c: (stop_typefinding):
12382           use correct order when sending buffers and seeking
12383
12384 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12385
12386         * configure.ac:
12387         * gst/gstelement.h:
12388         * gst/gstpad.h:
12389         * gst/gstqueue.h:
12390           upgrade libtool CURRENT, reset padding
12391
12392 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12393
12394         * configure.ac:
12395           bump to prerelease
12396           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
12397
12398 2004-02-04  David Schleef  <ds@schleef.org>
12399
12400         * docs/random/ds/0.9-suggested-changes: random notes
12401         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
12402         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
12403         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
12404         expansion.
12405         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
12406         (gst_filesink_get_query_types): same
12407         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
12408         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
12409         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
12410         to use new GST_PTR_FORMAT.
12411         * gst/gstelement.h: deprecate function factory macros
12412         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
12413         These are our last variadic macros that can't be replaced with
12414         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
12415         attempting to deprecate gst_element_clock_wait().
12416         * gst/gstevent.h: same
12417         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12418         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
12419         * gst/gstpad.h: deprecate function factory macros similar to above.
12420
12421 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12422
12423         * configure.ac:
12424         * tools/Makefile.am:
12425         * tools/gst-run.c: (popt_callback), (hash_print_key),
12426         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
12427         (get_candidates), (main):
12428           add new source file to generate non-versioned wrapper binaries
12429           for our tools.
12430
12431 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12432
12433         * gst/gstevent.c: (_gst_event_free):
12434           actually break; inside the switch statement
12435         * gst/parse/grammar.y:
12436           fix memleak where GValues weren't unset
12437
12438 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12439
12440         * gst/gststructure.c: (gst_structure_from_string):
12441           fix huge memleak
12442         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12443         (new_entry), (gst_type_find_element_chain):
12444         * gst/gstelement.c: (gst_element_base_class_init),
12445         (gst_element_class_set_details):
12446         * gst/gstpad.c: (gst_pad_can_link_filtered):
12447           fix smaller memleaks
12448         * gst/gstpad.c: (gst_real_pad_dispose):
12449           check that explicit caps are gone
12450         * gst/gststructure.c: (gst_structure_free):
12451           actually free the structure
12452         * gst/gstelement.c: (gst_element_clear_pad_caps):
12453           unset explicit caps
12454
12455 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12456
12457         * tools/Makefile.am:
12458           use AM_CFLAGS since all the CFLAGS are the same
12459           use AM_LDFAGS
12460
12461 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12462
12463         * docs/manual/gnome.xml:
12464           expand example a little
12465         * gst/gst.c: (gst_init_with_popt_table),
12466         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
12467           make sure popt option displays are done with right textdomain
12468           use GstPoptOption type
12469         * gst/gst.h:
12470           create GstPoptOption type
12471
12472 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12473
12474         * gst/gsterror.c: (_gst_stream_errors_init):
12475         * gst/gsterror.h:
12476           adding error type for no codec
12477         * po/POTFILES.in:
12478           add gst-inspect
12479         * po/nl.po:
12480           update dutch translation
12481         * tools/gst-inspect.c: (print_element_list), (main):
12482           do proper internationalization
12483         * tools/gst-launch.c: (idle_func):
12484           remove commented out function call
12485
12486 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12487
12488         * docs/README:
12489           add some error fixing notes
12490         * docs/gst/gstreamer-sections.txt:
12491           remove double entries
12492         * docs/gst/tmpl/gstbin.sgml:
12493         * docs/gst/tmpl/gstclock.sgml:
12494           remove override
12495         * docs/gst/tmpl/gstelement.sgml:
12496         * docs/gst/tmpl/gstindex.sgml:
12497         * docs/gst/tmpl/gstobject.sgml:
12498         * docs/gst/tmpl/gstpadtemplate.sgml:
12499         * docs/gst/tmpl/gstreamer-unused.sgml:
12500         * docs/gst/tmpl/gsttag.sgml:
12501         * docs/gst/tmpl/gstthread.sgml:
12502         * docs/gst/tmpl/gstxml.sgml:
12503         * gst/gsttag.h:
12504           sync header prototypes with c decls
12505         * gst/gsttaginterface.c:
12506           fix doc headers
12507
12508 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12509
12510         * gst/parse/Makefile.am:
12511         * gst/gstobject.h:
12512           get rid of gstmarshal.h dependency. It's not needed.
12513         * gst/gst.h:
12514         * gst/elements/gstfakesink.c:
12515         * gst/elements/gstfakesrc.c:
12516         * gst/elements/gstidentity.c:
12517         * gst/gstbin.c:
12518         * gst/gstelement.c:
12519         * gst/gstindex.c:
12520         * gst/gstobject.c:
12521         * gst/gstpad.c:
12522         * gst/gstthread.c:
12523         * gst/gstxml.c:
12524         * libs/gst/control/dparam.c:
12525         * libs/gst/control/dparammanager.c:
12526           include gstmarshal.h.
12527         Fixes #132045
12528
12529 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12530
12531         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
12532         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
12533         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
12534         * gst/elements/gstfilesrc.h:
12535           don't ref the filesrc when creating mmaped buffers. Don't keep a
12536           list of not-yet-destroyed buffers.
12537         * gst/gstbuffer.h:
12538           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
12539
12540 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12541
12542         * gst/gst.c: (init_pre):
12543           remove textdomain
12544
12545 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12546
12547         * docs/pwg/advanced-events.xml:
12548         * docs/pwg/advanced-scheduling.xml:
12549         * docs/pwg/intro-basics.xml:
12550         * docs/pwg/other-manager.xml:
12551         * docs/pwg/other-nton.xml:
12552         * docs/pwg/other-ntoone.xml:
12553         * docs/pwg/other-oneton.xml:
12554         * docs/pwg/pwg.xml:
12555           All sort of documentation... Forgot what. Point is that I want this
12556           in before I leave. The 'other-*' will be the last section and will
12557           explain issues specific to these type of elements.
12558
12559 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12560
12561         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12562         (gst_filesrc_get_read):
12563           set all the values on buffers that we can
12564
12565 2004-02-02  David Schleef  <ds@schleef.org>
12566
12567         Change usage of isblah() to g_ascii_isblah() to be more locale
12568         independent.  (#133076)
12569         * gst/gsturi.c: (gst_uri_protocol_check_internal):
12570         * gst/gstutils.c:
12571         * gst/parse/parse.l:
12572
12573 2004-02-02  Jon Trowbridge  <trow@gnu.org>
12574
12575         reviewed by: David Schleef  <ds@schleef.org>
12576
12577         Fix memory leaks:
12578         * gst/gstcaps.c: (gst_caps_to_string):
12579         * gst/registries/gstxmlregistry.c:
12580         (gst_xml_registry_add_path_list_func),
12581         (gst_xml_registry_parse_padtemplate):
12582
12583 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12584
12585         * gst/gstelement.c: (gst_element_default_error):
12586           suffix error messages with period
12587
12588 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12589
12590         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12591         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12592         * gst/gsterror.c: (gst_error_get_message):
12593           Suffix with dots
12594         * po/fr.po:
12595         * po/nl.po:
12596           Update translation files
12597
12598 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12599
12600         * gst/autoplug/gstspideridentity.c:
12601         (gst_spider_identity_sink_loop_type_finding):
12602         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12603         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12604         (gst_filesink_close_file), (gst_filesink_handle_event),
12605         (gst_filesink_chain):
12606         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12607         (gst_filesrc_get_read), (gst_filesrc_open_file):
12608         * gst/elements/gstidentity.c: (gst_identity_chain):
12609         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12610         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12611         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12612         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12613         * gst/gsterror.c: (_gst_core_errors_init),
12614         (_gst_library_errors_init), (_gst_resource_errors_init),
12615         (_gst_stream_errors_init), (gst_error_get_message):
12616         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12617         (gst_pad_recover_caps_error), (gst_pad_pull):
12618         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12619         * gst/schedulers/gstbasicscheduler.c:
12620         (gst_basic_scheduler_chainhandler_proxy),
12621         (gst_basic_scheduler_gethandler_proxy),
12622         (gst_basic_scheduler_cothreaded_chain):
12623           Suffix error messages with period.
12624           Use (NULL) instead of NULL
12625
12626 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12627
12628         * docs/gst/tmpl/gstelement.sgml:
12629         * docs/gst/tmpl/gstxml.sgml:
12630         * gst/gstelement.c: (gst_element_error_full):
12631           add element path to error
12632
12633 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12634
12635         * docs/random/mimetypes:
12636           update raw int/float info
12637         * gst/gsttag.c: (_gst_tag_initialize):
12638         * gst/gsttag.h:
12639           add GST_TAG_ENCODER
12640
12641 2004-01-30  David Schleef  <ds@schleef.org>
12642
12643         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
12644           missing (#132991)
12645
12646 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
12647
12648         reviewed by Benjamin Otte 
12649           parts of the patch submitted in bug #113913
12650
12651         * configure.ac:
12652           use AC_C_INLINE. Use = instead of == with test
12653         * examples/plugins/example.c:
12654         * gst/autoplug/gstspideridentity.c:
12655         * gst/elements/gstfdsrc.c:
12656         * gst/elements/gstfilesrc.c:
12657         * gst/elements/gstidentity.c:
12658         * gst/elements/gstmultidisksrc.c:
12659         * gst/elements/gststatistics.c:
12660         * gst/gstelement.c:
12661         * gst/gstobject.c:
12662         * gst/gstpad.c:
12663         * gst/gstpipeline.c:
12664         * gst/gstthread.c:
12665           don't end enums with a comma
12666         * gst/gstindex.c: (gst_index_compare_func):
12667           do explicit casting to gint
12668         * gst/gsttrace.c: (gst_trace_text_flush):
12669           #define strsize as a macro
12670
12671 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
12672
12673         * docs/README:
12674         * docs/gst/gstreamer-docs.sgml:
12675         * docs/gst/gstreamer-sections.txt:
12676         * docs/gst/tmpl/gstelement.sgml:
12677         * docs/gst/tmpl/gsterror.sgml:
12678         * docs/gst/tmpl/gstinterface.sgml:
12679         * docs/gst/tmpl/gstreamer-unused.sgml:
12680         * docs/gst/tmpl/gststructure.sgml:
12681         * docs/gst/tmpl/gsttag.sgml:
12682         * docs/gst/tmpl/gsttaginterface.sgml:
12683         * docs/gst/tmpl/gstvalue.sgml:
12684         make sure all API ends up in the built docs
12685         * gst/gstinterface.c:
12686         * gst/gststructure.c: (gst_structure_id_set_value),
12687         (gst_structure_set_value), (gst_structure_id_get_value):
12688         * gst/gststructure.h:
12689         * gst/gstvalue.h:
12690         sync .h with .c declarations
12691
12692 2004-01-30  Julien Moutte  <julien@moutte.net>
12693
12694         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
12695         Ronald will fix riffread.
12696
12697 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12698
12699         * docs/pwg/advanced-interfaces.xml:
12700           Added tuner interface docs.
12701
12702 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12703
12704         * docs/random/mimetypes:
12705           correct Theora information
12706         * gst/gstelement.h:
12707           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
12708
12709 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12710
12711         * gst/gstelement.c: (gst_element_error_full):
12712         * gst/gstelement.h:
12713           GST_ELEMENT_ERROR in enum -> _IN_ERROR
12714
12715 2004-01-29  Julien MOUTTE  <julien@moutte.net>
12716
12717         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
12718         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
12719         again and even before DISCONT.
12720         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
12721         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
12722         bytestream so that it's not stopping to fill the bytestream if events
12723         different than EOS or DISCONT are received. Instead it process them so
12724         that they go downstream.
12725
12726 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12727
12728         * docs/gst/tmpl/gstelement.sgml:
12729         * docs/gst/tmpl/gstreamer-unused.sgml:
12730         * docs/gst/tmpl/gstxml.sgml:
12731         * gst/autoplug/gstspideridentity.c:
12732         (gst_spider_identity_sink_loop_type_finding):
12733         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12734         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12735         (gst_filesink_close_file), (gst_filesink_handle_event),
12736         (gst_filesink_chain):
12737         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12738         (gst_filesrc_get_read), (gst_filesrc_open_file):
12739         * gst/elements/gstidentity.c: (gst_identity_chain):
12740         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12741         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12742         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12743         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12744         * gst/gstelement.h:
12745         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12746         (gst_pad_recover_caps_error), (gst_pad_pull):
12747         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12748         * gst/schedulers/gstbasicscheduler.c:
12749         (gst_basic_scheduler_chainhandler_proxy),
12750         (gst_basic_scheduler_gethandler_proxy),
12751         (gst_basic_scheduler_cothreaded_chain):
12752           gst_element_error -> GST_ELEMENT_ERROR
12753
12754 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12755
12756         * docs/Makefile.am:
12757         * docs/gst/tmpl/gstelement.sgml:
12758         * docs/gst/tmpl/gstxml.sgml:
12759         * docs/manuals.mak:
12760         * docs/pwg/advanced-request.xml:
12761         * docs/pwg/advanced-scheduling.xml:
12762         * docs/pwg/advanced-tagging.xml:
12763           fix non-validating docbook using CDATA
12764           make sure make check-local gets run first to check if it validates
12765
12766 2004-01-29  Julien MOUTTE <julien@moutte.net>
12767
12768         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
12769         handling (up and downstream).
12770         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
12771         my_filter thing.
12772
12773 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12774
12775         * docs/pwg/advanced-tagging.xml:
12776           Add docs about tag writing.
12777
12778 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12779
12780         * docs/pwg/advanced-tagging.xml:
12781           Add a part about tag reading and application signalling... Tag
12782           writing still needs to be documented.
12783         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12784           We can set file locations in READY, too.
12785
12786 2004-01-29  Julien MOUTTE <julien@moutte.net>
12787
12788         * docs/random/ds/element-checklist: Adding some notes about src
12789         events.
12790
12791 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12792
12793         * docs/random/mimetypes:
12794           Update docs to point to correct elements for various mimetypes, and
12795           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
12796           <stephane.loeuillet@tiscali.fr>.
12797
12798 2004-01-28  David Schleef  <ds@schleef.org>
12799
12800         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
12801
12802 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12803
12804         * docs/random/mimetypes:
12805           update docs for audio/x-raw-float. Add "buffer-frames=0 means
12806           undefined"
12807         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12808           make it only work in NULL.
12809         * gst/gstcaps.c:
12810           don't posion NULL caps
12811         * gst/gstelement.c: (gst_element_set_time):
12812           add debugging statement
12813         * gst/gstelement.c: (gst_element_emit_found_tag),
12814         (gst_element_found_tag_func), (gst_element_found_tags):
12815         * gst/gstelement.h:
12816           These functions take const taglists
12817         * gst/gstpad.c: (gst_pad_proxy_getcaps):
12818           fix memleak
12819         * gst/gstpad.c: (gst_pad_event_default):
12820           make more effort on handling discont and clocks, g_warn if everything
12821           fails
12822         * gst/gststructure.c: (gst_structure_remove_fields),
12823         (gst_structure_remove_fields_valist):
12824         * gst/gststructure.h:
12825           add gst_structure_remove_fields(_valist)
12826         * gst/gsttag.c:
12827           fix doc glitch
12828
12829 2004-01-28  David Schleef  <ds@schleef.org>
12830
12831         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
12832         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
12833         Fix memory leakage of gst_caps_to_string().
12834
12835         Use GST_PTR_FORMAT instead of gst_caps_to_string():
12836         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
12837         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
12838         (gst_spider_identity_sink_loop_type_finding):
12839         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12840         (find_suggest):
12841         * gst/gstpad.c: (gst_pad_try_relink_filtered),
12842         (gst_pad_set_explicit_caps):
12843         * gst/parse/grammar.y:
12844
12845 2004-01-28  David Schleef  <ds@schleef.org>
12846
12847         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
12848         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
12849         * docs/random/ds/0.9-suggested-changes: Notes from Company.
12850         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
12851         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
12852         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
12853         (gst_debug_log_default), (_gst_info_printf_extension),
12854         (_gst_info_printf_extension_arginfo):  Add printf extension.
12855         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
12856         * gst/gststructure.c: (gst_structure_to_string),
12857         (_gst_structure_parse_value): Use gst_value_deserialize() and
12858         remove old code.
12859         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
12860         (gst_value_deserialize_boolean), (gst_strtoi),
12861         (gst_value_deserialize_int), (gst_value_deserialize_double),
12862         (gst_value_deserialize_string), (gst_value_deserialize): Implement
12863         a bunch of deserialize functions and gst_value_deserialize.
12864         * gst/gstvalue.h: er, _de_serialize, not unserialize
12865         * testsuite/caps/string-conversions.c: (main): We don't currently
12866         handle (float) in caps, so convert these to (double).
12867         * testsuite/debug/Makefile.am: Add new test for the printf extension
12868         * testsuite/debug/printf_extension.c: (main): same
12869
12870 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12871
12872         * docs/random/company/time:
12873           Add some docs about clocking and time
12874
12875 2004-01-28  Julien MOUTTE <julien@moutte.net>
12876
12877         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
12878
12879 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12880
12881         * docs/pwg/advanced-clock.xml:
12882         * docs/pwg/advanced-dparams.xml:
12883         * docs/pwg/advanced-events.xml:
12884         * docs/pwg/advanced-interfaces.xml:
12885         * docs/pwg/advanced-midi.xml:
12886         * docs/pwg/advanced-request.xml:
12887         * docs/pwg/advanced-scheduling.xml:
12888         * docs/pwg/advanced-tagging.xml:
12889         * docs/pwg/advanced-types.xml:
12890         * docs/pwg/appendix-checklist.xml:
12891         * docs/pwg/building-boiler.xml:
12892         * docs/pwg/building-chainfn.xml:
12893         * docs/pwg/building-filterfactory.xml:
12894         * docs/pwg/building-pads.xml:
12895         * docs/pwg/building-props.xml:
12896         * docs/pwg/building-signals.xml:
12897         * docs/pwg/building-state.xml:
12898         * docs/pwg/building-testapp.xml:
12899         * docs/pwg/intro-basics.xml:
12900         * docs/pwg/intro-preface.xml:
12901         * docs/pwg/other-autoplugger.xml:
12902         * docs/pwg/other-sink.xml:
12903         * docs/pwg/other-source.xml:
12904         * docs/pwg/titlepage.xml:
12905           fix up id's
12906
12907 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12908
12909         * docs/95NonPath:
12910         * docs/HACKING:
12911         * docs/README:
12912         * docs/building-the-docs-on-debian:
12913           collect relevant bits of doc info
12914
12915 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12916
12917         * docs/pwg/advanced_tagging.xml:
12918           Half-assed commit so Thomas can re-arrange document IDs here to be
12919           consistent, too.
12920
12921 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12922
12923         * docs/manual/autoplugging.xml:
12924         * docs/manual/bins-api.xml:
12925         * docs/manual/bins.xml:
12926         * docs/manual/buffers-api.xml:
12927         * docs/manual/buffers.xml:
12928         * docs/manual/clocks.xml:
12929         * docs/manual/components.xml:
12930         * docs/manual/cothreads.xml:
12931         * docs/manual/debugging.xml:
12932         * docs/manual/dparams-app.xml:
12933         * docs/manual/dynamic.xml:
12934         * docs/manual/elements-api.xml:
12935         * docs/manual/elements.xml:
12936         * docs/manual/factories.xml:
12937         * docs/manual/gnome.xml:
12938         * docs/manual/goals.xml:
12939         * docs/manual/helloworld.xml:
12940         * docs/manual/helloworld2.xml:
12941         * docs/manual/init-api.xml:
12942         * docs/manual/intro.xml:
12943         * docs/manual/links-api.xml:
12944         * docs/manual/links.xml:
12945         * docs/manual/manual.xml:
12946         * docs/manual/motivation.xml:
12947         * docs/manual/pads-api.xml:
12948         * docs/manual/pads.xml:
12949         * docs/manual/plugins-api.xml:
12950         * docs/manual/plugins.xml:
12951         * docs/manual/programs.xml:
12952         * docs/manual/queues.xml:
12953         * docs/manual/quotes.xml:
12954         * docs/manual/schedulers.xml:
12955         * docs/manual/states-api.xml:
12956         * docs/manual/states.xml:
12957         * docs/manual/threads.xml:
12958         * docs/manual/typedetection.xml:
12959         * docs/manual/xml.xml:
12960           use chapter, part, section or misc as id starts for all bits
12961
12962 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12963
12964         * docs/gst/gstreamer-sections.txt:
12965           Fix up TITLE of the sections
12966
12967 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12968
12969         * docs/pwg/advanced_interfaces.xml:
12970           Add documentation on propertyprobing.
12971         * docs/pwg/advanced_events.xml:
12972         * docs/pwg/advanced_tagging.xml:
12973         * docs/pwg/building_boiler.xml:
12974         * docs/pwg/building_filterfactory.xml:
12975         * docs/pwg/pwg.xml:
12976           Move filterfactory and tagging into their own chapter, add a chapter
12977           on events. all these are empty placeholders that will be filled in
12978           some day.
12979
12980 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12981
12982         * docs/pwg/advanced_interfaces.xml:
12983           Docs for mixer interface. Also a check for website uploading.
12984
12985 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12986
12987         * docs/HACKING:
12988         * docs/Makefile.am:
12989         * docs/faq/Makefile.am:
12990         * docs/gst/Makefile.am:
12991         * docs/gst/tmpl/gstelement.sgml:
12992         * docs/gst/tmpl/gstplugin.sgml:
12993         * docs/gst/tmpl/gstreamer-unused.sgml:
12994         * docs/libs/Makefile.am:
12995         * docs/manual/Makefile.am:
12996         * docs/manuals.mak:
12997         * docs/pwg/Makefile.am:
12998         * docs/upload.mak:
12999           Separate out upload target and make it similar for
13000           both docbook and gtk-doc docs
13001
13002 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13003
13004         * docs/manuals.mak:
13005           Fix upload target to work with freedesktop
13006
13007 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13008
13009         * docs/pwg/advanced_types.xml:
13010           Add notes on creating your own types.
13011         * docs/pwg/building_boiler.xml:
13012         * docs/pwg/building_pads.xml:
13013         * docs/pwg/building_state.xml:
13014           Add some stuff about how to retrieve values from structures, how
13015           that relates to types and change layout slightly again to be almost
13016           perfect.
13017
13018 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13019
13020         * docs/pwg/advanced_dparams.xml:
13021         * docs/pwg/advanced_scheduling.xml:
13022           Change index layout slightly.
13023
13024 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13025
13026         * docs/pwg/advanced_clock.xml:
13027         * docs/pwg/advanced_interfaces.xml:
13028         * docs/pwg/advanced_midi.xml:
13029           General placeholders for now.
13030         * docs/pwg/advanced_request.xml:
13031           Explanation about sometimes and request pads.
13032         * docs/pwg/advanced_scheduling.xml:
13033           Concept of bytestream, loopfunctions and schedulers.
13034         * docs/pwg/building_boiler.xml:
13035           Add something about plugin-init.
13036
13037 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13038
13039         * docs/pwg/building_pads.xml:
13040           Fix broken docbook
13041
13042 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13043
13044         * docs/pwg/advanced_interfaces.xml:
13045         * docs/pwg/pwg.xml:
13046           Add as a placeholder for future filling-in.
13047         * docs/pwg/basics_autoplugging.xml:
13048         * docs/pwg/basics_buffers.xml:
13049         * docs/pwg/basics_elements.xml:
13050         * docs/pwg/basics_events.xml:
13051         * docs/pwg/basics_plugins.xml:
13052         * docs/pwg/basics_types.xml:
13053           Remove, because unused (this is all in intro_basics.xml).
13054         * docs/pwg/building_signals.xml:
13055           Short intro to signals + reference to GObject docs - we really
13056           shouldn't go into these sort of things to deply because we don't
13057           use them that extensively anyway.
13058         * docs/pwg/building_state.xml:
13059           Explanation of states. Benjamin, please check.
13060         * docs/pwg/building_testapp.xml:
13061           Put everything in one page - putting only a few lines of content
13062           per page doesn't really make sense.
13063
13064           Time to get into the advanced topics. ;).
13065
13066 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13067
13068         * docs/pwg/advanced_types.xml:
13069           Finish documenting the current state of mimetypes.
13070         * docs/pwg/building_boiler.xml:
13071         * docs/pwg/building_chainfn.xml:
13072         * docs/pwg/building_pads.xml:
13073         * docs/pwg/building_props.xml:
13074         * docs/pwg/building_testapp.xml:
13075           Start documenting the "how to build a simple audio filter" part
13076           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
13077           states and (maybe?) a short introduction to capsnego in the chapter
13078           on pads (building_pads.xml). Capsnego should probably be explained
13079           fully in advanced_capsnego.xml or so.
13080
13081 2004-01-26  David Schleef  <ds@schleef.org>
13082
13083         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
13084         * gst/gstpad.h: Add new function to allow element to (somewhat)
13085         specify non-fixed caps on a pad.
13086         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
13087         that I added a few weeks ago.
13088
13089 2004-01-26  David Schleef  <ds@schleef.org>
13090
13091         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
13092           making try_set_caps() work with non-fixed caps.
13093
13094 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13095
13096         * docs/pwg/advanced_types.xml:
13097         * docs/pwg/intro_basics.xml:
13098         * docs/pwg/intro_preface.xml:
13099         * docs/pwg/pwg.xml:
13100         * docs/pwg/titlepage.xml:
13101           First try to resurrect the PWG. I'm halfway integrating the mimetypes
13102           in here (docs/random/mimetypes), and will from there on work on both
13103           updating outdated parts and adding missing parts.
13104           That doesn't mean I'll fix it completely, but I'll try at least. ;).
13105
13106 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
13107
13108         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
13109           policy is set
13110
13111 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13112
13113         * gst/gstelement.h:
13114           remove gst_element_factory_get_version. It doesn't exist anymore.
13115         * gst/gstplugin.c:
13116         * gst/gstplugin.h:
13117           remove gst_plugin_set_name and change gst_plugin_get_longname to
13118           gst_plugin_get_description to match code.
13119         * gst/gsterror.h:
13120           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
13121         * gst/gstpad.c: (gst_pad_try_set_caps):
13122           make it work with nonfixed caps.
13123           Note that even in the nonfixed case the link function of the pad
13124           that tries to set caps isn't called.
13125
13126 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13127
13128         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
13129           fix bug where buffer was not assembled correctly
13130         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
13131           silence by default
13132         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
13133           only seek if there's no more buffers that could work without seeking
13134
13135 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13136
13137         * gst/gsttag.c: (_gst_tag_initialize):
13138         * gst/gsttag.h:
13139           Add application tag (for encoding/muxing app).
13140
13141 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13142
13143         * autogen.sh:
13144           make autopoint force, and libtoolize not copy
13145         * common/m4/as-docbook.m4:
13146           added docbook xml catalog setup check
13147         * common/m4/gst-doc.m4:
13148           use docbook check
13149
13150 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
13151
13152         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
13153         * gst/gsttag.h:
13154           add GstTagFlag
13155
13156 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13157
13158         * docs/gst/gstreamer-sections.txt:
13159         * docs/gst/tmpl/gst.sgml:
13160         * docs/gst/tmpl/gstbuffer.sgml:
13161         * docs/gst/tmpl/gstclock.sgml:
13162         * docs/gst/tmpl/gstelement.sgml:
13163         * docs/gst/tmpl/gstreamer-unused.sgml:
13164         * docs/gst/tmpl/gstxml.sgml:
13165           sync latest API changes to docs
13166
13167 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13168
13169         * gst/gstpluginfeature.c:
13170           fix doc snippet
13171         * tools/gst-inspect.c: (print_element_list):
13172           fix output of typefind
13173           add GPL header
13174         * tools/gst-launch.c:
13175           add GPL header
13176
13177 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13178
13179         * gst/elements/Makefile.am:
13180         * gst/elements/gstelements.c:
13181         * gst/elements/gsttypefindelement.c:
13182         * gst/elements/gsttypefindelement.h:
13183         * po/POTFILES.in:
13184         * po/fr.po:
13185         * po/nl.po:
13186           renamed gsttypefindelement to gsttypefind, conserving CVS history
13187
13188 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13189
13190         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
13191         * gst/gsttag.h:
13192           add some tags used in ogg as well
13193           fix _ in replaygain tags
13194
13195 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13196
13197         * gst/gsterror.h:
13198           fix wrong GST_LIBRARY_ERROR_ENCODE addition
13199
13200 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13201
13202         * gst/gstelement.c: (gst_element_error_full):
13203         * gst/gstelement.h:
13204           change _extended to _full
13205
13206 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13207
13208         reviewed by: <delete if not using a buddy>
13209
13210         * docs/gst/tmpl/gst.sgml:
13211         * docs/gst/tmpl/gstbuffer.sgml:
13212         * docs/gst/tmpl/gstclock.sgml:
13213         * docs/gst/tmpl/gstelement.sgml:
13214         * docs/gst/tmpl/gstreamer-unused.sgml:
13215         * docs/gst/tmpl/gstxml.sgml:
13216         * gst/gstelement.c: (gst_element_error_full):
13217         * gst/gstelement.h:
13218
13219 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13220
13221         * gst/gstelement.h: fix _gst_element_error_printf prototype
13222
13223 2004-01-20  David Schleef  <ds@schleef.org>
13224
13225         * gst/gststructure.c: (gst_structure_to_string):
13226         Convert function to use gst_value_serialize().
13227         * gst/gstvalue.c: (gst_value_serialize_list),
13228         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
13229         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
13230         (gst_value_serialize_int), (gst_value_serialize_double),
13231         (gst_string_wrap), (gst_value_serialize_string),
13232         (gst_value_serialize), (gst_value_deserialize):
13233         * gst/gstvalue.h:
13234         Add implementations for serialize.
13235
13236 2004-01-20  Julien MOUTTE  <julien@moutte.net>
13237
13238         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
13239         we want to keep that one in the future or change xvidenc.c to use 
13240         another error.
13241
13242 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13243
13244         * gst/gstelement.c: (_gst_element_error_printf):
13245         * gst/gstelement.h:
13246           privatise function
13247
13248 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13249
13250         * docs/random/error:
13251           doc explaining error system
13252         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
13253           cleanup
13254
13255 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13256
13257         * gst/gst-i18n-app.h:
13258         * gst/gst-i18n-lib.h:
13259           remove inclusion of config.h
13260         * po/POTFILES.in:
13261         * po/nl.po:
13262           add gst/gstelement.c
13263
13264 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13265
13266         * po/nl.po: updated Dutch translation
13267
13268 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13269
13270         * gst/gsterror.c: (_gst_core_errors_init),
13271         (_gst_library_errors_init), (_gst_resource_errors_init),
13272         (_gst_stream_errors_init):
13273         remove ending punctuation dots
13274
13275 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13276
13277         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
13278         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
13279         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13280         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13281         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13282         use GST_ERROR_SYSTEM
13283
13284 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13285
13286         * gst/gstelement.c: (gst_element_error_printf),
13287         (gst_element_error_extended):
13288         * gst/gstelement.h:
13289           add a helper printf function so we can have NULL values passed.
13290
13291 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13292
13293         * gst/gstelement.h:
13294           add G_STMT macros to gst_element_error, which isn't strictly
13295           necessary but people tell me to anyway.
13296
13297 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
13298
13299         * gst/Makefile.am:
13300         * gst/autoplug/gstspideridentity.c:
13301         (gst_spider_identity_sink_loop_type_finding):
13302         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
13303         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
13304         (gst_filesink_close_file), (gst_filesink_handle_event),
13305         (gst_filesink_chain):
13306         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
13307         (gst_filesrc_map_region), (gst_filesrc_get_read),
13308         (gst_filesrc_open_file):
13309         * gst/elements/gstidentity.c: (gst_identity_chain):
13310         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13311         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13312         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13313         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
13314         * gst/gst.h:
13315         * gst/gst_private.h:
13316         * gst/gstelement.c: (gst_element_class_init),
13317         (gst_element_default_error), (gst_element_error_func),
13318         (gst_element_error_extended):
13319         * gst/gstelement.h:
13320         * gst/gsterror.c: (_gst_core_errors_init),
13321         (_gst_library_errors_init), (_gst_resource_errors_init),
13322         (_gst_stream_errors_init), (gst_error_get_message):
13323         * gst/gsterror.h:
13324         * gst/gstinfo.c: (_gst_debug_init):
13325         * gst/gstmarshal.list:
13326         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13327         (gst_pad_recover_caps_error), (gst_pad_pull):
13328         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
13329         * gst/schedulers/gstbasicscheduler.c:
13330         (gst_basic_scheduler_chainhandler_proxy),
13331         (gst_basic_scheduler_gethandler_proxy),
13332         (gst_basic_scheduler_cothreaded_chain):
13333         * po/POTFILES.in:
13334         * po/fr.po:
13335         * po/nl.po:
13336           change error signal
13337           add error categories
13338
13339 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
13340
13341         * gst/gsttag.c: (_gst_tag_initialize):
13342         * gst/gsttag.h:
13343         Add replaygain tag
13344
13345 2004-01-18  Colin Walters  <walters@verbum.org>
13346
13347         * examples/retag/retag.c: Call gst_init before processing
13348         program args.  Add g_assert to _link_many call.
13349
13350 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13351
13352         * gst/gstpad.c: (gst_pad_alloc_buffer):
13353           Return a newly allocated buffer when the pad has no peer.
13354
13355 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13356
13357         * gst/gstclock.c: (gst_clock_get_time):
13358           make it compile with gcc 2.95 again.
13359           Patch by Scott Wheeler
13360
13361 2004-01-15  David Schleef  <ds@schleef.org>
13362
13363         * gst/gstcaps.h:
13364         Added gst_caps_is_simple() macro.
13365         * testsuite/caps/caps.c: (test1):
13366         * testsuite/caps/intersect2.c: (main):
13367         * testsuite/caps/intersection.c: (main):
13368         Fixes to make 'make check' work again after removing
13369         gst_caps_is_chained().
13370
13371 2004-01-15  Leif Johnson <leif@ambient.2y.net>
13372
13373         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
13374         and additions to the MIDI document.
13375
13376 2004-01-15  David Schleef  <ds@schleef.org>
13377
13378         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
13379         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
13380         of GST_RPAD_, since we don't know if it's a real or ghost pad.
13381
13382 2004-01-15  David Schleef  <ds@schleef.org>
13383
13384         * gst/gstqueue.c:
13385         * gst/gstqueue.h:
13386         Fix the spelling of "treshold" and make min_threshold actually
13387         affect the queue.
13388
13389 2004-01-15  David Schleef  <ds@schleef.org>
13390
13391         * gst/gstcaps.c:
13392         Add lots of documentation.
13393         * gst/gstcaps.h:
13394         Deprecate a few functions.
13395         * gst/gstpad.c:
13396         Removed use of deprecated functions.
13397
13398 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13399
13400         * gst/gstpad.c: (gst_pad_is_linked):
13401         * gst/gstpad.h:
13402           implement gst_pad_is_linked
13403         * gst/gstelement.h:
13404           reserve space for initiate_state_change
13405
13406 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13407
13408         * gst/autoplug/gstspideridentity.c:
13409         (gst_spider_identity_sink_loop_type_finding):
13410           break infinite loop by just returning instead of looping
13411         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
13412           set event time difference correctly. Set it to 1 second instead
13413           of 100ms to be more tolerant
13414         * gst/gstelement.c: (gst_element_set_time):
13415           add debugging output
13416
13417 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13418
13419         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
13420           query if buffers are inside the pool, ignore events
13421
13422 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13423
13424         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
13425         (gst_clock_set_speed), (gst_clock_set_active),
13426         (gst_clock_is_active), (gst_clock_reset),
13427         (gst_clock_handle_discont):
13428         * gst/gstclock.h:
13429           deprecate old interface and disable functions that aren't in use
13430           anymore.
13431         * gst/gstelement.h:
13432         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
13433         (gst_element_set_time), (gst_element_adjust_time):
13434           add concept of "element time" and functions to get/set this time.
13435         * gst/gstelement.c: (gst_element_change_state):
13436           update element time correctly.
13437         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13438           This is a debug message, not a g_critical.
13439         * gst/gstpad.c: (gst_pad_event_default):
13440           handle discontinuous events right with element time.
13441         * gst/gstscheduler.c: (gst_scheduler_state_transition):
13442           update to clocking fixes.
13443           set clocks on elements in READY=>PAUSED. The old behaviour caused
13444           a wrong element time on the first element that started playing.
13445         * gst/schedulers/gstbasicscheduler.c:
13446         (gst_basic_scheduler_class_init):
13447         * gst/schedulers/gstoptimalscheduler.c:
13448         (gst_opt_scheduler_class_init):
13449           remove code that just implements the default behaviour.
13450         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
13451           update to use new clocking functions
13452         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
13453         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
13454           update to test new element time.
13455         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
13456           use _get_allowed_caps instead of _get_caps. This catches filtered
13457           caps correctly.
13458         * testsuite/debug/commandline.c:
13459           update for new GST_DEBUG syntax.
13460         * testsuite/threads/Makefile.am:
13461           disable a test that only works sometimes.
13462
13463 2004-01-13  Julien MOUTTE <julien@moutte.net>
13464
13465         * po/LINGUAS: Adding fr.
13466         * po/fr.po: Adding french translation.
13467
13468 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13469
13470         * gst/parse/grammar.y:
13471         * po/POTFILES.in:
13472         * po/nl.po:
13473         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
13474           translate parsing error messages
13475
13476 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13477
13478         * po/POTFILES.in: adding gst-launch
13479         * po/nl.po: updated translation, all 99 strings translated
13480         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
13481         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
13482           fix strings for translation
13483
13484 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13485
13486         * gst/gst.c:
13487           - capitalize beginnings of popt options
13488           - fix strings for translation
13489           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
13490
13491 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13492
13493         * po/README: add some notes on how to update translations
13494
13495 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13496
13497         * ABOUT-NLS: removed, is autogenerated from autopoint
13498         * autogen.sh: add autopoint stuff
13499         * configure.ac: fix up gettext stuff
13500         * gst/Makefile.am: add i18n headers to noinst_HEADERS
13501         * gst/elements/gsttypefindelement.c: add header include
13502         * gst/gettext.h: add header, copy from system-installed header
13503         * gst/gst-i18n-app.h: to be included by each app having translations
13504         * gst/gst-i18n-lib.h: to be included by each lib having translations
13505         * gst/gst.c: (init_pre): fix up gettext calls
13506         * gst/gst_private.h: remove i18n stuff, moving to separate headers
13507         * po/LINGUAS: the new way to specify translations present
13508         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
13509         * po/Makevars: the variables filled in for GStreamer
13510         * po/POTFILES.in: added new files with translations
13511         * po/de.po: has new strings
13512         * po/nl.po: readded, has new strings
13513
13514 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13515
13516         * gst/gsttag.c: fix some strings marked for translation
13517
13518 2004-01-13  Iain <iain@prettypeople.org>
13519
13520         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
13521         group when we add an element to it, cos we unref it when we remove one
13522
13523 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
13524
13525         * testsuite/debug/commandline.c: (debug_not_reached):
13526         * testsuite/debug/output.c: (check_message):
13527           fix testsuite
13528
13529 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13530
13531         * examples/cutter/.cvsignore:
13532         * examples/helloworld/.cvsignore:
13533         * examples/launch/.cvsignore:
13534         * examples/manual/.cvsignore:
13535         * examples/mixer/.cvsignore:
13536         * examples/pingpong/.cvsignore:
13537         * examples/plugins/.cvsignore:
13538         * examples/queue/.cvsignore:
13539         * examples/queue2/.cvsignore:
13540         * examples/queue3/.cvsignore:
13541         * examples/queue4/.cvsignore:
13542         * examples/retag/.cvsignore:
13543         * examples/thread/.cvsignore:
13544         * examples/typefind/.cvsignore:
13545         * examples/xml/.cvsignore:
13546         * gst/.cvsignore:
13547         * gst/autoplug/.cvsignore:
13548         * gst/elements/.cvsignore:
13549         * gst/indexers/.cvsignore:
13550         * gst/parse/.cvsignore:
13551         * gst/registries/.cvsignore:
13552         * gst/schedulers/.cvsignore:
13553         * libs/gst/bytestream/.cvsignore:
13554         * libs/gst/control/.cvsignore:
13555         * libs/gst/getbits/.cvsignore:
13556         * tests/.cvsignore:
13557         * tests/bufspeed/.cvsignore:
13558         * tests/instantiate/.cvsignore:
13559         * tests/memchunk/.cvsignore:
13560         * tests/muxing/.cvsignore:
13561         * tests/sched/.cvsignore:
13562         * tests/seeking/.cvsignore:
13563         * tests/threadstate/.cvsignore:
13564         * testsuite/.cvsignore:
13565         * testsuite/caps/.cvsignore:
13566         * testsuite/cleanup/.cvsignore:
13567         * testsuite/dynparams/.cvsignore:
13568         * testsuite/plugin/.cvsignore:
13569         * tools/.cvsignore:
13570           update - this is huge, because it includes *.bb, *.bbg and *.da files
13571           which are generated for gcov.
13572
13573 2004-01-11  David Schleef  <ds@schleef.org>
13574
13575         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
13576         a function to parse integers in ways that strto[u]l() does not.
13577
13578 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13579
13580         * tools/gst-inspect.c: (print_caps):
13581           improve output of caps a bit
13582
13583 2004-01-11  David Schleef  <ds@schleef.org>
13584
13585         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
13586         inherit correct flags (READONLY and DONTKEEP).
13587
13588 2004-01-11  David Schleef  <ds@schleef.org>
13589
13590         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
13591         (gst_filesrc_map_region):
13592         * gst/gstbuffer.c: (_gst_buffer_initialize),
13593         (_gst_buffer_sub_free), (gst_buffer_default_copy),
13594         (gst_buffer_new), (gst_buffer_create_sub),
13595         (gst_buffer_is_span_fast), (gst_buffer_span):
13596         * gst/gstbuffer.h:
13597         Change GstBuffer private structure element names. (all files)
13598         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
13599         (gst_queue_link):
13600         * gst/gstqueue.h:
13601         Implement getcaps/pad_link functions that handle the case where
13602         there are data in the queue.
13603
13604 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13605
13606         * gst/elements/gstbufferstore.c:
13607           initialize debugging structure correctly
13608         * gst/elements/gsttee.c: (gst_tee_set_property):
13609           g_object_notify when property was changed
13610         * gst/elements/gsttypefindelement.c:
13611         (gst_type_find_element_change_state):
13612           clear caps correctly
13613
13614 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13615
13616         * gst/gstqueue.c: (gst_queue_init):
13617           Use better defaults for when a queue should block. This
13618           gets rid of jerky playback for quite a few files.
13619           It takes more memory.
13620
13621 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
13622
13623         (gst_xml_registry_parse_padtemplate):
13624           make critical message slightly more useful
13625
13626 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13627
13628         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
13629         (gst_debug_message_get), (gst_debug_log_default):
13630         * gst/gstinfo.h:
13631           Change gst_debug_log(_valist) to take a const format string.
13632           Change prototype of log function and functions using those to 
13633           take a GstDebugMessage instead of a string that requires using
13634           gst_debug_message_get.
13635
13636 2004-01-08  David Schleef  <ds@schleef.org>
13637
13638         * Makefile.am:
13639         * configure.ac:
13640         Add option --enable-gcov to build GStreamer with -fprofile-arcs
13641         and -ftest-coverage, which allows gcov to show information about
13642         testsuite coverage.
13643
13644 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13645
13646         * gst/gstutils.h:
13647           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
13648           GST_PARENT_CALL_WITH_DEFAULT
13649         * gst/elements/gstaggregator.c: 
13650         * gst/elements/gstbufferstore.c: 
13651         * gst/elements/gstfakesink.c: 
13652         * gst/elements/gstfakesrc.c: 
13653         * gst/elements/gstfdsink.c: 
13654         * gst/elements/gstfdsrc.c: 
13655         * gst/elements/gstfilesink.c: 
13656         * gst/elements/gstfilesrc.c: 
13657         * gst/elements/gstidentity.c: 
13658         * gst/elements/gstmd5sink.c: 
13659         * gst/elements/gstmultidisksrc.c:
13660         * gst/elements/gstpipefilter.c: 
13661         * gst/elements/gstshaper.c:
13662         * gst/elements/gststatistics.c:
13663         * gst/elements/gsttee.c:
13664         * gst/elements/gsttypefindelement.c:
13665           use them.
13666
13667 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
13668
13669         * docs/gst/gstreamer-docs.sgml: remove props
13670         * docs/gst/gstreamer-sections.txt: remove props
13671         * docs/gst/tmpl/gst.sgml:
13672         * docs/gst/tmpl/gstbin.sgml:
13673         * docs/gst/tmpl/gstbuffer.sgml:
13674         * docs/gst/tmpl/gstcaps.sgml:
13675         * docs/gst/tmpl/gstclock.sgml:
13676         * docs/gst/tmpl/gstelement.sgml:
13677         * docs/gst/tmpl/gstindex.sgml:
13678         * docs/gst/tmpl/gstobject.sgml:
13679         * docs/gst/tmpl/gstpad.sgml:
13680         * docs/gst/tmpl/gstpadtemplate.sgml:
13681         * docs/gst/tmpl/gstreamer-unused.sgml:
13682         * docs/gst/tmpl/gstthread.sgml:
13683         * docs/gst/tmpl/gstxml.sgml:
13684           sync with code reorganization
13685
13686 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
13687
13688         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13689         Make the 'Could not find compatible pad' message more informative.
13690
13691 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13692                                                                                 
13693         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
13694           Fix for if we pass NULL as property to location.
13695         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
13696         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
13697           Fix for instantiate-test (see below).
13698         * gst/gststructure.c: (_gst_structure_parse_value):
13699           Fix compile error on gcc-2.96.
13700         * configure.ac:
13701         * tests/Makefile.am:
13702         * tests/instantiate/Makefile.am:
13703         * tests/instantiate/create.c: (create_all_elements), (main):
13704           Add a test that instantiates all elements. This makes it easy to
13705           track dead code for old API/design (like setting event functions
13706           on sink pads and so on).
13707
13708 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
13709
13710         * gst/gstcaps.c: (gst_caps_append_structure):
13711           Move the poisoning to allow a NULL structure
13712         * gst/gstevent.c: (_gst_event_free):
13713           When freeing a navigation event, free the structure
13714           also
13715
13716 2004-01-04  David Schleef  <ds@schleef.org>
13717
13718         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13719         Remove usage of gst_pad_proxy_fixate.
13720         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
13721         (gst_caps_split_one), (gst_caps_replace):
13722         Add poisoning code.
13723         * gst/gstmarshal.list:
13724         Add pointer__pointer for fixate signal
13725         * gst/gstpad.c: (gst_real_pad_class_init),
13726         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
13727         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
13728         (gst_pad_set_explicit_caps), (gst_pad_template_new):
13729         Add poisoning code. Add fixate signal on RealPad. Change
13730         set_explicit_caps() to take const GstCaps, like try_set_caps().
13731         * gst/gstpad.h:
13732         * testsuite/caps/Makefile.am:
13733         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
13734
13735 2004-01-03  David Schleef  <ds@schleef.org>
13736
13737         * gst/elements/gsttypefindelement.c:
13738         (gst_type_find_element_have_type), (gst_type_find_element_init):
13739         Use gst_pad_use_explicit_caps for src pad.
13740         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
13741         before using it.
13742
13743 2004-01-03  David Schleef  <ds@schleef.org>
13744
13745         * gst/gstelement.c: (gst_element_link_pads_filtered),
13746         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
13747         that linking was successful.
13748         * gst/gstpad.c: (gst_pad_link_free),
13749         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
13750         (gst_pad_link_try), (gst_pad_link_unnegotiate),
13751         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
13752         GstPadLinkReturn correctly between functions, and don't fail
13753         when DELAYED is used (DELAYED is very important).  Better
13754         cleanup on unlinking and unnegotiation.  Should fix some spider
13755         bugs.
13756
13757 2004-01-02  David Schleef  <ds@schleef.org>
13758
13759         * gst/gstelement.c: (gst_element_class_init),
13760         (gst_element_base_class_init): ->padtemplates should be cleared
13761         in base_init, since we need to have a fresh list for every
13762         class.  (Alternately, we chould copy the list and share the
13763         actual pad templates (not the list), but that would require
13764         changing every plugin to move pad template registration from
13765         base_init to class_init.)
13766
13767 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13768
13769         * gst/gstelement.c: (gst_element_class_add_pad_template):
13770           Refuse registering a pad template if another pad template
13771           with the same name already exists (#114715).
13772
13773 2004-01-02  David Schleef  <ds@schleef.org>
13774
13775         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
13776         (gst_caps_is_equal_fixed): Add new function.
13777         * gst/gstcaps.h: ditto.
13778         * gst/gstpad.c: (gst_real_pad_class_init),
13779         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
13780         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
13781         check new caps against existing caps -- if they're the same, return
13782         OK without renegotiating.  caps-nego-failed signal fixed so that
13783         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
13784         to save an extra caps copy.  Don't complete negotiation if a pad
13785         link function returns DELAYED.
13786
13787 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13788
13789         * gst/gstpad.c: (gst_pad_try_relink_filtered):
13790           Fix wrong g_return_if_fail
13791
13792 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
13793
13794         * gst/gstbin.c: (gst_bin_class_init):
13795         Change the marshalling of element_added/element_removed
13796         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
13797         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
13798
13799 2004-01-01  David Schleef  <ds@schleef.org>
13800
13801         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13802         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
13803         (gst_pad_use_explicit_caps):
13804         * gst/gstpad.h:
13805         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
13806         to use an internal getcaps and link fuction so that negotiation
13807         always results in the explicitly set caps.
13808         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
13809         are particularly useful for decoders.
13810
13811 2003-12-31  David Schleef  <ds@schleef.org>
13812
13813         * gst/elements/gstidentity.c: (gst_identity_class_init),
13814         (gst_identity_init), (gst_identity_chain),
13815         (gst_identity_set_property), (gst_identity_get_property):
13816         * gst/elements/gstidentity.h:
13817         * gst/gstqueue.c: (gst_queue_init):
13818           Negotiation fixes.
13819
13820 2003-12-31  David Schleef  <ds@schleef.org>
13821
13822         * gst/gstcaps.c: (gst_caps_intersect),
13823         (_gst_caps_normalize_foreach), (gst_caps_normalize):
13824           Implement gst_caps_normalize().
13825         * testsuite/caps/normalisation.c: (main):
13826           Add an additional test
13827
13828 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13829
13830         * gst/gstqueue.c: (gst_queue_init):
13831           use gst_pad_proxy_getcaps()
13832
13833 2003-12-31  David Schleef  <ds@schleef.org>
13834
13835         * gst/elements/gstshaper.c: (gst_shaper_link):
13836         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13837         * gst/gstqueue.c: (gst_queue_link):
13838           Negotiation fixes.
13839
13840 2003-12-31  David Schleef  <ds@schleef.org>
13841
13842         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
13843         * gst/gstpad.h: Add functions that are useful as default pad
13844         link and fixate functions for elements.
13845
13846 2003-12-30  David Schleef  <ds@schleef.org>
13847
13848         * gst/gstpad.c: (gst_pad_link_try):
13849           Fix segfault when attempting to return to old caps
13850
13851 2003-12-29  David Schleef  <ds@schleef.org>
13852
13853         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
13854         (gst_caps_structure_simplify), (gst_caps_simplify):
13855         * gst/gstcaps.h:
13856           Add simplify function
13857         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
13858         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
13859         * gst/gstpad.h:
13860           Copy over srcnotify, sinknotify when calling old pad_link
13861           functions.  Add new is_negotiated() function.
13862         * gst/gststructure.c: (gst_structure_copy):
13863           Fix an incredibly stupid bug that should have been noticed
13864           weeks ago.  _copy() returned the argument, not the new copy.
13865
13866 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13867
13868         * gst/gstcaps.c: (gst_caps_append):
13869           add sanity checks
13870         * gst/gstcaps.h: (gst_caps_debug):
13871           remove, it doesn't exist anymore.
13872         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
13873         (gst_element_threadsafe_properties_post_run):
13874           make debugging messages not clutter up THREAD debug category
13875         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
13876         (gst_element_change_state):
13877           update to new caps API
13878         * gst/gstinterface.c: (gst_implements_interface_cast):
13879           don't put vital code in g_return_if_fail
13880         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
13881         (gst_pad_link_filtered):
13882           add pst_pad_try_link and use it.
13883         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
13884           implement correctly, deprecate first one.
13885         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
13886           add and implement.
13887         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
13888           implement.
13889         (gst_pad_get_negotiated_caps):
13890           add and implement. Make GST_PAD_CAPS call this function.
13891         (gst_pad_get_caps):
13892           remove unneeded check..
13893         (gst_pad_recover_caps_error):
13894           disable, always return FALSE.
13895         (gst_real_pad_dispose):
13896           don't free caps and appfilter anymore, they're unused.
13897         * gst/gstpad.h:
13898           Reflect changes mentioned above.
13899         * gst/gstsystemclock.c: (gst_system_clock_wait):
13900           Make 'clock is way behind' a debugging message.
13901         * gst/gstthread.c: (gst_thread_change_state):
13902           Fix debugging message
13903
13904 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
13905
13906         * gst/gstinfo.h:
13907           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
13908         * docs/gst/tmpl/gstreamer-unused.sgml:
13909           removed all traces of cvs conflicts
13910
13911 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13912
13913         * configure.ac:
13914         * gst/schedulers/cothreads_compat.h:
13915         * libs/Makefile.am:
13916           remove last instances of wingo cothread usage
13917
13918 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13919
13920         * gst/gstplugin.c:
13921         * gst/gstversion.h.in:
13922         * gst/parse/grammar.y:
13923           change comment block from /** to /* when not gtk-doc comments
13924
13925 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13926
13927         * gst/gst.c: whitespace and doc style fixes
13928
13929 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13930
13931         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
13932
13933 2003-12-24  Colin Walters  <walters@verbum.org>
13934
13935         * gst/elements/gsttypefindelement.c:
13936           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
13937           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
13938           Don't double-free caps.
13939
13940 2003-12-23  David Schleef  <ds@schleef.org>
13941
13942         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
13943           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
13944           Many little fixes and additions of debug statements to
13945           get rhythmbox working.
13946
13947 2003-12-23  Colin Walters  <walters@verbum.org>
13948
13949         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
13950         Use GST_PAD_LINK_SUCCESSFUL.
13951
13952 2003-12-23  David Schleef  <ds@schleef.org>
13953
13954         * gst/elements/gstaggregator.c:
13955         * gst/elements/gsttee.c:
13956           Use gst_pad_proxy_getcaps().
13957         * gst/gstpad.c:
13958         * gst/gstpad.h:
13959           Add gst_pad_proxy_getcaps(), which filter elements can use
13960           as a generic getcaps implementation.
13961           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
13962           was advertised.
13963
13964 2003-12-23  David Schleef  <ds@schleef.org>
13965
13966         * gst/gstpad.c:
13967           Rearrange/rewrite much of the pad negotiation code, since it
13968           resembled pasta.  This actually changes the way some
13969           negotiation works, since the previous code was inconsistent
13970           depending on how it was invoked.  Add (internal) structure
13971           GstPadLink, which is used to hold some information (more in
13972           the future) about the link between two pads.  Fixes a number
13973           of bugs, including random lossage of filter caps when the
13974           initial negotiation is delayed.  A few functions are still
13975           unimplemented.
13976         * gst/gstpad.h:
13977           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
13978           these when testing GstPadLinkReturn values instead of comparing
13979           directly.
13980
13981 2003-12-23  David Schleef  <ds@schleef.org>
13982
13983         * gst/gstvalue.c: 
13984         * gst/gstvalue.h:
13985           Rearrange lots of code.  Change registration of compare function
13986           into registration of compare/serialize/deserialize functions.
13987           Doesn't include implementation of gst_value_[de]serialize(),
13988           but that should be easy.
13989
13990 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13991
13992         * docs/gst/gstreamer-sections.txt:
13993         * docs/gst/tmpl/gstprops.sgml: removed
13994         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
13995           David removed props and caps code, so let's remove their docs as well.
13996           Removed all no longer existing symbols from gstreamer-sections.txt
13997           
13998 2003-12-22  Colin Walters  <walters@verbum.org>
13999
14000         * gst/gsttaginterface.c, gst/gsttaginterface.h,
14001           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
14002           of tags directly.
14003
14004 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14005
14006         * gst/elements/gstelements.c:
14007           Set ranks of elements to NONE, so the autoplugger doesn't use them.
14008         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
14009           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
14010           gst_caps (peer).
14011
14012 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14013
14014         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
14015         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
14016         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
14017         (gst_spider_identity_sink_loop_type_finding):
14018         * gst/autoplug/gstspideridentity.h:
14019           Fix autoplugging in spider element, so it works with new caps.
14020           This was mainly caused by identifying empty caps incorrectly.
14021
14022 2003-12-22  David Schleef  <ds@schleef.org>
14023
14024         * gststructure.c, gstvalue.c, gstvalue.h: Add
14025           gst_value_init_and_copy() and use it, to avoid silly mistakes in
14026           using g_value_copy()
14027
14028 2003-12-21  David Schleef  <ds@schleef.org>
14029
14030         * many, many files: Merge CAPS branch.  This includes:
14031           - implemention of GstValue and several GstValue types
14032           - implemention of GstStructure
14033           - entire rewrite of GstCaps
14034           - removal of GstProps
14035           - many changes to GstPad to compensate for new caps paradigm
14036           - removal of GstBufferpool
14037         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
14038         gstvalue.h, gst/gstcaps[2]*.[ch]:
14039           - rename gstcaps2.[ch] to gstcaps.[ch]
14040
14041 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
14042
14043         * gst/gstqueue.c: (gst_queue_handle_pending_events),
14044         (gst_queue_chain), (gst_queue_handle_src_event):
14045           implement timeout for sending events. Workaround for if the
14046           pipeline on this queue is not passing any data.
14047
14048 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
14049                                                                                 
14050         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
14051         * moved CVS to freedesktop.org