docs/pwg/advanced-types.xml: Hack long paragraph into 2 chunks as a workaround for...
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
2
3         * docs/pwg/advanced-types.xml:
4           Hack long paragraph into 2 chunks as a workaround for buggy
5           jadetex version in sid and breezy that loops infinitely and
6           eats all RAM.
7
8 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
9
10         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
11         (test_event), (timediff), (gstevents_suite):
12           Provide more error margin in clock measurements to allow for 
13           g_get_current_time inaccuracies.
14
15 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
16
17         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
18         (test_event), (timediff), (gstevents_suite):
19            Fix error message output so I might be able to tell why the
20            test works here but fails on the build farm.
21
22 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
23
24         * check/Makefile.am:
25         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
26         (test_event), (timediff), (gstevents_suite), (main):
27           I wrote a test!
28
29         * docs/design/part-seeking.txt:
30           Spelling correction
31
32         * docs/gst/tmpl/gstevent.sgml:
33         * docs/gst/tmpl/gstfakesrc.sgml:
34           Docs updates.
35
36         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
37           Treat a buffer-without-newsegment the same as a receiving 
38           a newsegment not in time format, and disable syncing to the clock
39           with a warning.
40
41         * gst/gstbus.c: (gst_bus_set_sync_handler):
42           Assert if anyone tries to replace the existing sync_handler for bus, 
43           as only the owner should be setting it.
44
45         * gst/gstevent.h:
46           Have a fixed set of custom event enums with events identified by
47           their structure name (as in 0.8), rather than a free-for-all
48           allowing collisions between enum values from different plugins.
49
50         * gst/gstpad.c: (gst_pad_class_init):
51           Docs change.
52           
53         * gst/gstqueue.c: (gst_queue_handle_sink_event):
54           Handle out-of-band downstream events from the sending thread.
55
56 2005-08-17  Andy Wingo  <wingo@pobox.com>
57
58         * gst/gstpipeline.c (gst_pipeline_change_state): Interpret
59         play-timeout==0 to mean no timeout at all. In that case, don't
60         bother with a get_state or a warning, just return directly, even
61         if it's ASYNC.
62
63         * gst/base/gstbasetransform.c: Debug changes.
64
65         * gst/gstutils.h:
66         * gst/gstutils.c (gst_bin_watch_for_state_change): Add function to
67         ensure bins post state change messages. A bit of a hack but I can't
68         think of a way to avoid it.
69
70         * check/gst/gstbin.c (test_watch_for_state_change): Added test.
71
72 2005-08-16  Andy Wingo  <wingo@pobox.com>
73
74         * gst/base/gstadapter.h:
75         * gst/base/gstadapter.c (gst_adapter_take): New function, like
76         peek() but you own the data. Not terribly efficient atm.
77
78 2005-08-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
79
80         * gst/gstutils.c: (gst_element_found_tags_for_pad), (push_and_ref),
81         (gst_element_found_tags):
82         * gst/gstutils.h:
83           Add two utility functions for tag handling.
84
85 2005-08-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
86
87         * docs/manual/advanced-dataaccess.xml:
88         * docs/manual/basics-helloworld.xml:
89           Fix docs to use _bin_add() before _link(), which fixes the examples
90           with recent core versions (reported by Madhan Raj M
91           <raj_madan@rediffmail.com>, #313199).
92
93 2005-08-16  Wim Taymans  <wim@fluendo.com>
94
95         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
96         Added subtract checks.
97
98         * docs/design/part-events.txt:
99         Some more docs about newsegment
100
101         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
102         Fix FIXME
103
104         * gst/gstcaps.c: (gst_caps_to_string):
105         Add comments, cleanups.
106         
107         * gst/gstelement.c: (gst_element_save_thyself):
108         cleanups
109         
110         * gst/gstvalue.c: (gst_value_collect_int_range),
111         (gst_string_unwrap), (gst_value_union_int_int_range),
112         (gst_value_union_int_range_int_range),
113         (gst_value_intersect_int_int_range),
114         (gst_value_intersect_int_range_int_range),
115         (gst_value_intersect_double_double_range),
116         (gst_value_intersect_double_range_double_range),
117         (gst_value_intersect_list), (gst_value_subtract_int_int_range),
118         (gst_value_subtract_int_range_int),
119         (gst_value_subtract_double_range_double),
120         (gst_value_subtract_double_range_double_range),
121         (gst_value_subtract_from_list), (gst_value_subtract_list),
122         (gst_value_can_compare), (gst_value_compare_fraction):
123         Cleanups, add comments, remove unneeded asserts.
124
125 2005-08-15  Thomas Vander Stichele  <thomas at apestaart dot org>
126
127         * tools/gst-launch.c: (event_loop):
128           don't convert NULL structures to strings
129
130 2005-08-15  Stefan Kost  <ensonic@users.sf.net>
131
132         * docs/gst/gstreamer-sections.txt:
133           made some defines private
134         * docs/gst/tmpl/gstconfig.sgml:
135         * docs/gst/tmpl/gstqueue.sgml:
136         * docs/gst/tmpl/gsttaglist.sgml:
137         * docs/gst/tmpl/gsttypes.sgml:
138         * docs/gst/tmpl/gstutils.sgml:
139         * docs/pwg/appendix-porting.xml:
140         * gst/base/gstbasesink.h:
141         * gst/base/gstbasesrc.c:
142         * gst/base/gstbasesrc.h:
143         * gst/elements/gstfakesink.c: (gst_fake_sink_class_init):
144         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init):
145         * gst/gstelement.c: (gst_element_class_init):
146         * gst/gstpad.c: (gst_pad_class_init):
147         * gst/gstqueue.c: (gst_queue_class_init):
148         * gst/gstxml.c: (gst_xml_class_init):
149           documented all undocumented signal inline
150         * libs/gst/controller/gst-controller.h:
151           added padding
152
153 2005-08-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
154
155         * docs/pwg/appendix-porting.xml:
156           Document _set_link_function -> _set_setcaps_function.
157
158 2005-08-15  Thomas Vander Stichele  <thomas at apestaart dot org>
159
160         * check/Makefile.am:
161           add a .check target for running the check
162         * check/gst-libs/controller.c: (GST_START_TEST):
163           cosmetic fixups
164         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
165           complete checks for gstbuffer; would be nice if I could get the
166           gcov stuff to work so I can see if I actually completed gstbuffer.c
167         * check/gstcheck.h:
168           add ASSERT_BUFFER_REFCOUNT
169
170 2005-08-13  Tim-Philipp Müller  <tim at centricular dot net>
171
172         * docs/gst/gstreamer-sections.txt:
173         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
174         * gst/gsttag.h:
175           Add GST_TAG_LANGUAGE_CODE as we have in 0.8, and don't
176           spew out a warning if a tag that is already registered
177           is re-registered, unless it is re-registered with a 
178           different type (#308438).
179
180 2005-08-12  Tim-Philipp Müller  <tim at centricular dot net>
181
182         * docs/pwg/appendix-porting.xml:
183         * docs/pwg/building-state.xml:
184           Add some paragraphs about state changes in 0.9 to the PWG
185           and the porting guide, in particular about the new meaning
186           of GST_STATE_PAUSED and how to write state change functions
187           with concurrent access by multiple threads in mind.
188
189 2005-08-11  Stefan Kost  <ensonic@users.sf.net>
190
191         * docs/gst/gstreamer-docs.sgml:
192         * docs/libs/gstreamer-libs-docs.sgml:
193           added deprecation and since indexes
194         * libs/gst/controller/gst-controller.c:
195         * libs/gst/controller/gst-helper.c:
196           added since tags
197
198
199 2005-08-11  Wim Taymans  <wim@fluendo.com>
200
201         * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked),
202         (gst_proxy_pad_set_target), (gst_proxy_pad_get_target),
203         (gst_proxy_pad_dispose), (gst_ghost_pad_do_activate_push),
204         (gst_ghost_pad_do_link), (gst_ghost_pad_set_internal),
205         (gst_ghost_pad_new_notarget), (gst_ghost_pad_get_target),
206         (gst_ghost_pad_set_target):
207         Actually implement (re)setting the target on a ghostpad
208         as described in the docs.
209
210 2005-08-10  Tim-Philipp Müller  <tim at centricular dot net>
211
212         * gst/gst.c: (gst_init_check_with_popt_table), (init_pre):
213           Check whether GST_DEBUG_NO_COLOR environment variable is
214           set and disable coloured debug output if that is the case.
215
216 2005-08-10  Tim-Philipp Müller  <tim at centricular dot net>
217
218         * gst/base/gsttypefindhelper.c: (helper_find_peek),
219         (gst_type_find_helper):
220           The memory returned by gst_type_find_peek() needs to
221           stay valid until the end of a typefind function, and
222           typefind functions may keep results from different 
223           offsets around, so we can't just unref the buffer from
224           the previous _peek(), but have to save all buffers 
225           returned by _peek() until typefinding is done and only
226           free them then.
227
228 2005-08-09  Tim-Philipp Müller  <tim at centricular dot net>
229
230         * docs/gst/gstreamer-sections.txt:
231         * gst/gstutils.h:
232           New macros: GST_ROUND_UP_2() through GST_ROUND_UP_64().
233
234 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
235
236         * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
237           Fix a pretty good memleak.
238
239 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
240
241         * gst/gstiterator.h:
242           Fix wrong include and 'make distcheck'.
243
244 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
245
246         * gst/gstbin.c: (bin_bus_handler):
247           Use gst_element_post_message() instead.
248
249 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
250
251         * gst/base/gstadapter.h:
252         * gst/base/gstbasesink.h:
253         * gst/base/gstbasesrc.h:
254         * gst/base/gstbasetransform.h:
255         * gst/base/gstcollectpads.h:
256         * gst/base/gstpushsrc.h:
257         * gst/gstiterator.h:
258           Add padding to our base elements' class and instance structs and
259           to GstIterator (you will need to rebuild all plugins and apps!)
260
261 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
262
263         * gst/gstbin.c: (bin_bus_handler):
264           Make default message forwarding from child->bus to bin->bus
265           threadsafe and make it not emit warnings if the parent has no bus.
266
267 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
268
269         * gst/gstelement.c: (activate_pads):
270           On paused->ready, set pad->caps to NULL, as is the documented
271           behaviour in this state change. Fixes playback of series of
272           media files when visualization is enabled in Totem.
273
274 2005-08-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
275
276         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
277           Allow NULL as filter-caps (which means "any").
278
279 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
280
281         * docs/libs/gstreamer-libs-sections.txt:
282         * libs/gst/controller/gst-controller.c:
283         * libs/gst/controller/gst-controller.h:
284         * libs/gst/controller/gst-helper.c:
285           adding more entries to the docs and fix small doc-bugs
286
287 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
288
289         * docs/gst/gstreamer-docs.sgml:
290         * docs/gst/gstreamer-sections.txt:
291         * docs/gst/gstreamer.types:
292         * docs/gst/tmpl/gstbasesink.sgml:
293         * docs/gst/tmpl/gstbasesrc.sgml:
294         * docs/gst/tmpl/gstbasetransform.sgml:
295         * docs/gst/tmpl/gstfakesrc.sgml:
296         * gst/base/gstcollectpads.c:
297         * gst/base/gstcollectpads.h:
298         * libs/gst/controller/gst-controller.c:
299         * libs/gst/controller/gst-controller.h:
300         * libs/gst/controller/gst-helper.c:
301         * libs/gst/controller/gst-interpolation.c:
302         * libs/gst/controller/lib.c:
303           added long/short desc for controller docs
304           added collectpads base class docs
305           added correct includes to base-class docs
306
307 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
308
309         * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
310         (gst_test_mono_source_set_property),
311         (gst_test_mono_source_class_init), (GST_START_TEST),
312         (gst_controller_suite):
313         * docs/gst/gstreamer-docs.sgml:
314         * docs/gst/gstreamer-sections.txt:
315         * docs/gst/gstreamer.types:
316         * docs/libs/gstreamer-libs-docs.sgml:
317         * docs/libs/gstreamer-libs-sections.txt:
318         * gst/base/gstadapter.c:
319         * libs/gst/controller/gst-controller.c:
320         (gst_controlled_property_new), (gst_controlled_property_free),
321         (gst_controller_new_valist),
322         (gst_controller_remove_properties_valist),
323         (gst_controller_sink_values), (_gst_controller_finalize):
324         * libs/gst/controller/gst-controller.h:
325         * libs/gst/controller/gst-helper.c:
326         (gst_object_control_properties), (gst_object_uncontrol_properties),
327         (gst_object_get_controller), (gst_object_set_controller),
328         (gst_object_sink_values), (gst_object_get_value_arrays),
329         (gst_object_get_value_array):
330           more tests (and fixes) for the controller
331           more docs for the controller
332           integrated companies docs for the adapter 
333
334 2005-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
335
336         * check/elements/gstfakesrc.c: (setup_fakesrc), (cleanup_fakesrc),
337         (GST_START_TEST), (fakesrc_suite):
338           add tests for sizetype
339
340 2005-08-04  Andy Wingo  <wingo@pobox.com>
341
342         * gst/elements/gstcapsfilter.c: Reimplement using basetransform,
343         fixes buffer_alloc proxying among other things.
344
345         * gst/base/gstbasetransform.c:
346         * gst/base/gstbasetransform.h:
347         Revert patch to gstbasetransform from 7-28 removing
348         delay_configure.
349
350         * gst/base/gstbasetransform.h (GstBaseTransformClass.get_size):
351         * gst/base/gstbasetransform.c (gst_base_transform_get_size):
352         Semantics changed, should return not the size of the output buffer
353         but the byte size of a buffer with a given caps.
354
355         * gst/base/gstbasetransform.c (gst_base_transform_getcaps): Better
356         debug object.
357         (gst_base_transform_configure_caps): Don't set out_size here: (in,
358         out) are not the pad caps until setcaps finishes.
359         (gst_base_transform_buffer_alloc): Proxy the buffer_alloc for the
360         not-in-place case as well. Deal with changing from in-place to
361         not-in-place within calling pad_alloc_buffer. Still a bit
362         concerned about the overhead here...
363
364 2005-08-03  Andy Wingo  <wingo@pobox.com>
365
366         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): Not
367         fixating is an error.
368
369 2005-08-04  Edward Hervey  <edward@fluendo.com>
370
371         * gst/base/gstadapter.h: 
372         Added gst_adapter_get_type() to the header
373
374 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
375
376         * check/Makefile.am:
377         * check/gst-libs/controller.c:
378         * libs/gst/controller/gst-controller.c:
379         (gst_controller_new_valist):
380           added check test suite for the controller
381         * gst/base/gstpushsrc.c:
382           fixed a doc typo
383
384 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
385
386         * docs/gst/Makefile.am:
387         * docs/gst/gstreamer-docs.sgml:
388         * docs/gst/gstreamer-sections.txt:
389         * docs/gst/gstreamer.types:
390         * docs/gst/tmpl/gstfakesrc.sgml:
391         * gst/base/README:
392         * gst/base/gstbasesink.c:
393         * gst/base/gstbasesink.h:
394         * gst/base/gstbasesrc.c:
395         * gst/base/gstbasesrc.h:
396         * gst/base/gstbasetransform.c:
397         * gst/base/gstpushsrc.c:
398         * gst/base/gstpushsrc.h:
399           add short/long description docs to base classes
400           add pushsrc to the docs
401           remove consolidated doc fragments
402
403 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
404
405         * configure.ac:
406         * docs/libs/Makefile.am:
407         * docs/libs/gstreamer-libs-docs.sgml:
408         * docs/libs/gstreamer-libs-sections.txt:
409         * docs/libs/gstreamer-libs.types:
410         * examples/Makefile.am:
411         * examples/controller/.cvsignore:
412         * examples/controller/Makefile.am:
413         * examples/controller/audio-example.c: (main):
414         * libs/gst/Makefile.am:
415         * libs/gst/controller/.cvsignore:
416         * libs/gst/controller/Makefile.am:
417         * libs/gst/controller/gst-controller.c:
418         (on_object_controlled_property_changed), (gst_timed_value_compare),
419         (gst_timed_value_find),
420         (gst_controlled_property_set_interpolation_mode),
421         (gst_controlled_property_new), (gst_controlled_property_free),
422         (gst_controller_find_controlled_property),
423         (gst_controller_new_valist), (gst_controller_new),
424         (gst_controller_remove_properties_valist),
425         (gst_controller_remove_properties), (gst_controller_set),
426         (gst_controller_set_from_list), (gst_controller_unset),
427         (gst_controller_get), (gst_controller_get_all),
428         (gst_controller_sink_values), (gst_controller_get_value_arrays),
429         (gst_controller_get_value_array),
430         (gst_controller_set_interpolation_mode),
431         (_gst_controller_finalize), (_gst_controller_init),
432         (_gst_controller_class_init), (gst_controller_get_type):
433         * libs/gst/controller/gst-controller.h:
434         * libs/gst/controller/gst-helper.c: (g_object_control_properties),
435         (g_object_uncontrol_properties), (g_object_get_controller),
436         (g_object_set_controller), (g_object_sink_values),
437         (g_object_get_value_arrays), (g_object_get_value_array):
438         * libs/gst/controller/gst-interpolation.c:
439         (gst_controlled_property_find_timed_value_node),
440         (interpolate_none_get), (interpolate_trigger_get),
441         (interpolate_trigger_get_value_array):
442         * libs/gst/controller/lib.c: (gst_controller_init):
443         * pkgconfig/Makefile.am:
444         * pkgconfig/gstreamer-control-uninstalled.pc.in:
445         * pkgconfig/gstreamer-control.pc.in:
446         * testsuite/Makefile.am:
447         * testsuite/controller/.cvsignore:
448         * testsuite/controller/Makefile.am:
449         * testsuite/controller/interpolator.c: (main):
450           added controller code
451           removed dparam pc files
452
453 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
454         * gst/base/gstcollectpads.c: (gst_collectpads_finalize),
455         (gst_collectpads_stop):
456           Broadcast the condition when shutting down, to make sure we wake all
457           threads up. Shut down pads on finalize, for safety.
458
459 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
460         * gst/base/gstbasetransform.c: (gst_base_transform_init),
461         (gst_base_transform_handle_buffer),
462         (gst_base_transform_change_state):
463           Handle PAUSED->READY->PAUSED transition after negotiation
464           occurred already.
465         * gst/gstmessage.c: (gst_message_init):
466           Extra piece of debug for new messages.
467
468 2005-08-01  Stefan Kost  <ensonic@users.sf.net>
469
470         * configure.ac:
471         * docs/gst/tmpl/gstbasesrc.sgml:
472         * docs/gst/tmpl/gstelement.sgml:
473         * docs/gst/tmpl/gstevent.sgml:
474         * docs/gst/tmpl/gstfakesrc.sgml:
475         * docs/gst/tmpl/gstformat.sgml:
476         * docs/gst/tmpl/gstghostpad.sgml:
477         * docs/gst/tmpl/gstpad.sgml:
478         * docs/gst/tmpl/gstquery.sgml:
479         * docs/gst/tmpl/gststructure.sgml:
480         * docs/gst/tmpl/gsttaglist.sgml:
481         * docs/gst/tmpl/gstvalue.sgml:
482         * docs/libs/gstreamer-libs-docs.sgml:
483         * docs/libs/gstreamer-libs-sections.txt:
484         * docs/libs/gstreamer-libs.types:
485         * libs/gst/Makefile.am:
486         * libs/gst/control/.cvsignore:
487         * libs/gst/control/Makefile.am:
488         * libs/gst/control/control.c:
489         * libs/gst/control/control.h:
490         * libs/gst/control/dparam.c:
491         * libs/gst/control/dparam.h:
492         * libs/gst/control/dparam_smooth.c:
493         * libs/gst/control/dparam_smooth.h:
494         * libs/gst/control/dparamcommon.h:
495         * libs/gst/control/dparammanager.c:
496         * libs/gst/control/dparammanager.h:
497         * libs/gst/control/dplinearinterp.c:
498         * libs/gst/control/dplinearinterp.h:
499         * libs/gst/control/unitconvert.c:
500         * libs/gst/control/unitconvert.h:
501         * testsuite/Makefile.am:
502         * testsuite/dynparams/.cvsignore:
503         * testsuite/dynparams/Makefile.am:
504         * testsuite/dynparams/dparamstest.c:
505         * tools/Makefile.am:
506         * tools/gst-inspect.c: (print_element_info), (main):
507         * tools/gst-xmlinspect.c: (print_element_info), (main):
508           deactivate and remove dparams (libgstcontrol)
509
510 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
511
512         * gst/elements/gsttypefindelement.c:
513         (gst_type_find_element_have_type), (gst_type_find_element_init),
514         (stop_typefinding), (gst_type_find_element_handle_event),
515         (gst_type_find_element_chain), (gst_type_find_element_getrange):
516         * gst/elements/gsttypefindelement.h:
517           Set caps on all outgoing buffers, not just the first one.
518
519 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
520
521         * gst/elements/gsttypefindelement.c:
522         (gst_type_find_element_have_type),
523         (gst_type_find_element_check_set_buffer_caps),
524         (gst_type_find_element_init), (stop_typefinding),
525         (gst_type_find_element_handle_event),
526         (gst_type_find_element_chain), (gst_type_find_element_getrange):
527         * gst/elements/gsttypefindelement.h:
528           Set caps on first outgoing buffer when we've found the type.
529
530 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
531
532         * docs/gst/gstreamer-docs.sgml:
533         * docs/gst/gstreamer-sections.txt:
534         * docs/gst/tmpl/gstscheduler.sgml:
535         * docs/gst/tmpl/gstschedulerfactory.sgml:
536           Remove some old cruft from docs.
537
538 2005-07-31  Tim-Philipp Müller  <tim at centricular dot net>
539
540         * gst/gstpad.h:
541           Fix inline docs for GstPadLinkReturn.
542           
543         * gst/gststructure.c: (gst_structure_has_name):
544         * gst/gststructure.h:
545         * docs/gst/gstreamer-sections.txt:
546           New API: gst_structure_has_name().
547
548 2005-07-30  Tim-Philipp Müller  <tim at centricular dot net>
549
550         * configure.ac:
551           Use AC_SYS_LARGEFILE, which will set _FILE_OFFSET_BITS=64
552           and _LARGEFILE_SOURCE in config.h as required. Do not 
553           export those flags in our .pc files any longer (#142209).
554
555           Remove unused GST_DISABLE_OMEGA_COTHREADS stuff.
556
557         * gst/elements/gstfilesink.c: (gst_file_sink_class_init),
558         (gst_file_sink_do_seek), (gst_file_sink_event),
559         (gst_file_sink_get_current_offset), (gst_file_sink_render):
560           Redo seek/tell calls with large file support in mind; add some
561           debugging messages; add log message that tells us when large
562           file support is unavailable or not enabled for some reason.
563
564         * gst/elements/gstfilesrc.c: (gst_file_src_class_init):
565           Add log message that tells us when large file support 
566           is unavailable or not enabled for some reason.
567
568 2005-07-29  Wim Taymans  <wim@fluendo.com>
569
570         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
571         Added test for removing an element with ghostpad from a bin.
572         Fixed test as current implementation does the right thing.
573
574         * gst/gstghostpad.c: (gst_proxy_pad_class_init),
575         (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
576         (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
577         (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
578         (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
579         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
580         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
581         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
582         (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
583         (gst_proxy_pad_get_target), (gst_proxy_pad_init),
584         (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
585         (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
586         (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
587         (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
588         (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
589         (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
590         * gst/gstghostpad.h:
591         Clean up ghostpads, remove properties for internal stuff.
592         Make threadsafe.
593         Fix refcounting.
594         Prepare for switching targets, not all use cases work yet.
595
596 2005-07-29  Wim Taymans  <wim@fluendo.com>
597
598         * docs/design/part-gstghostpad.txt:
599         Small update.
600
601         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
602         (gst_bin_remove_func):
603         Unlinking pads while holding the bin LOCK is not a good
604         idea.
605
606         * gst/gstpad.c: (gst_pad_class_init),
607         (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
608         (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
609         No prob setting template after creating the pad.
610
611 2005-07-29  Jan Schmidt  <thaytan@mad.scientist.com>
612
613         * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
614         (gst_bus_peek), (gst_bus_source_dispatch),
615         (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
616         (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
617           gst_bus_poll may be called from other threads. Handle
618           this nicely by not making poll_data disappear off the
619           stack once gst_bus_poll returns.
620           gst_bus_peek now increments the refcount on the returned
621           message.
622
623 2005-07-29  Wim Taymans  <wim@fluendo.com>
624
625         * docs/design/part-gstghostpad.txt:
626         Overview of current GhostPad datastructures and use
627         cases for changing the target.
628
629 2005-07-28  Wim Taymans  <wim@fluendo.com>
630
631         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
632         Added checks for hierarchy consistency whan adding linked
633         elements to bins.
634
635         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
636         Added check to test element scheduling without bin/pipeline.
637
638         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
639         First add elements to bin, then link.
640         
641         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
642         (gst_bin_remove_func):
643         Unlink pads from elements added/removed from bin to maintain
644         hierarchy consistency.
645
646 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
647
648         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
649         (gst_base_transform_handle_buffer):
650         * gst/base/gstbasetransform.h:
651           Remove broken delay_configure (fixes renegotiation of software
652           scaling pipelines); remove some leftover printf()s.
653
654 2005-07-28  Wim Taymans  <wim@fluendo.com>
655
656         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
657         Added some more tests for wrong hierarchy
658
659         * docs/design/part-overview.txt:
660         Some updates.
661
662         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
663         Cleanups.
664
665         * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
666         (gst_element_dispose):
667         Some more cleanups.
668
669         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
670         (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
671         (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
672         (gst_pad_set_caps), (gst_pad_send_event):
673         Check for correct hierarchy when linking pads. Moving to
674         strict requirement for ghostpads when linking elements in
675         different bins.
676
677         * gst/gstpad.h:
678         Clean ups. Added WRONG_HIERARCHY return value.
679
680 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
681
682         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
683           Better debug if no transform is possible.
684
685 2005-07-27  Wim Taymans  <wim@fluendo.com>
686
687         * docs/random/wtay/network-transp:
688         Some old doc I had.
689
690 2005-07-27  Wim Taymans  <wim@fluendo.com>
691
692         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
693         (gst_dp_event_from_packet):
694         Fix serialization of seek events.
695
696 2005-07-27  Wim Taymans  <wim@fluendo.com>
697
698         * check/gst-libs/gdp.c: (GST_START_TEST):
699         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
700         Fix compilation and fix event serialization.
701
702 2005-07-27  Wim Taymans  <wim@fluendo.com>
703
704         * CHANGES-0.9:
705         * docs/design/part-TODO.txt:
706         * docs/design/part-events.txt:
707         Some docs updates
708
709         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
710         (gst_base_sink_event), (gst_base_sink_do_sync),
711         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
712         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
713         (gst_base_src_do_seek), (gst_base_src_event_handler),
714         (gst_base_src_loop):
715         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
716         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
717         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
718         (gst_base_transform_event), (gst_base_transform_handle_buffer),
719         (gst_base_transform_set_passthrough),
720         (gst_base_transform_is_passthrough):
721         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
722         * gst/elements/gstfilesink.c: (gst_file_sink_event):
723         Event updates.
724
725         * gst/gstbuffer.h:
726         Use faster casts.
727
728         * gst/gstelement.c: (gst_element_seek):
729         * gst/gstelement.h:
730         Update gst_element_seek.
731
732         * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
733         (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
734         (gst_event_new_flush_start), (gst_event_new_flush_stop),
735         (gst_event_new_eos), (gst_event_new_newsegment),
736         (gst_event_parse_newsegment), (gst_event_new_tag),
737         (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
738         (gst_event_parse_qos), (gst_event_new_seek),
739         (gst_event_parse_seek), (gst_event_new_navigation):
740         * gst/gstevent.h:
741         Make GstEvent use GstStructure. Add parsing code, make sure the
742         API is sufficiently generic.
743         Mark possible directions of events and serialization.
744
745         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
746         (_gst_message_copy), (gst_message_new_segment_start),
747         (gst_message_new_segment_done), (gst_message_new_custom),
748         (gst_message_parse_segment_start),
749         (gst_message_parse_segment_done):
750         Small cleanups.
751
752         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
753         (gst_pad_set_caps), (gst_pad_send_event):
754         Update for new events. 
755         Catch events sent in wrong directions.
756
757         * gst/gstqueue.c: (gst_queue_link_src),
758         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
759         (gst_queue_handle_src_query):
760         Event updates.
761
762         * gst/gsttag.c:
763         * gst/gsttag.h:
764         Remove event code from this file.
765
766         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
767         (gst_dp_event_from_packet):
768         Event updates.
769
770 2005-07-27  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
771
772         * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
773         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
774         (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
775           Make debugging actually useful.
776
777 2005-07-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
778
779         * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
780         (gst_pad_fixate_caps):
781           Implement default fixation once again, so that gst_pad_fixate()
782           actually does anything at all. This probably needs to be some
783           sort of a last resort, and use profile-based fixation first, but
784           since that doesn't exist yet, this is the best we have. Fixes
785           visualization in Totem.
786
787 2005-07-22  Wim Taymans  <wim@fluendo.com>
788
789         * docs/design/part-events.txt:
790         Small update.
791
792         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
793         (gst_base_sink_do_sync), (gst_base_sink_activate_push),
794         (gst_base_sink_activate_pull):
795         Some more comments.
796
797         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
798         (gst_fake_src_create):
799         Fix handoff marshall.
800
801         * gst/elements/gstidentity.c: (gst_identity_class_init),
802         (gst_identity_transform_ip):
803         We're a real inplace element.
804
805         * gst/gstbus.c: (gst_bus_post):
806         Added some comments.
807
808         * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
809         * tests/muxing/case1.c: (main):
810         * tests/sched/dynamic-pipeline.c: (main):
811         * tests/sched/interrupt1.c: (main):
812         * tests/sched/interrupt2.c: (main):
813         * tests/sched/interrupt3.c: (main):
814         * tests/sched/runxml.c: (main):
815         * tests/sched/sched-stress.c: (main):
816         * tests/seeking/seeking1.c: (event_received), (main):
817         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
818         (main):
819         * tests/threadstate/threadstate3.c: (main):
820         * tests/threadstate/threadstate4.c: (main):
821         * tests/threadstate/threadstate5.c: (main):
822         Fix the tests.
823
824 2005-07-21  Wim Taymans  <wim@fluendo.com>
825
826         * docs/design/part-seeking.txt:
827         Some small additions.
828
829         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
830         (gst_base_sink_get_times), (gst_base_sink_do_sync),
831         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
832         * gst/base/gstbasesink.h:
833         discont values are gint64, handle the math correctly.
834
835         * gst/base/gstbasesrc.c: (gst_base_src_loop):
836         Make the basesrc report error if the source pad is not linked.
837
838         * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
839         (gst_queue_loop), (gst_queue_handle_src_query),
840         (gst_queue_src_activate_push):
841         Make queue collect data even if the srcpad is not linked.
842         Start pushing out data as soon as it is linked.
843
844         * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
845         * gst/gstutils.h:
846         Added gst_flow_get_name() to ease error reporting.
847
848 2005-07-20  Wim Taymans  <wim@fluendo.com>
849
850         * gst/gstmessage.c: (gst_message_new_segment_start),
851         (gst_message_new_segment_done), (gst_message_parse_segment_start),
852         (gst_message_parse_segment_done):
853         * gst/gstmessage.h:
854         Added a bunch of messages for advanced seeking.
855
856         * gst/parse/grammar.y:
857         * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
858         (gst_dpman_state_changed):
859         Fix some new-pad -> pad-added signals
860
861 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
862
863         * docs/manual/appendix-porting.xml:
864         * docs/pwg/appendix-porting.xml:
865           Document new-pad/state-change signal renames and the FixedList
866           type rename.
867
868 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
869
870         * docs/manual/advanced-autoplugging.xml:
871         * docs/manual/basics-helloworld.xml:
872         * docs/manual/basics-pads.xml:
873         * docs/random/ds/0.9-suggested-changes:
874         * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
875         * gst/gstelement.h:
876         * gst/gstevent.h:
877         * gst/gstformat.h:
878         * gst/gstquery.h:
879         * gst/gststructure.c: (gst_structure_value_get_generic_type),
880         (gst_structure_parse_array), (gst_structure_parse_value):
881         * gst/gstvalue.c: (gst_type_is_fixed),
882         (gst_value_list_prepend_value), (gst_value_list_append_value),
883         (gst_value_list_get_size), (gst_value_list_get_value),
884         (gst_value_transform_array_string), (gst_value_serialize_array),
885         (gst_value_deserialize_array), (gst_value_intersect_array),
886         (gst_value_is_fixed), (_gst_value_initialize):
887         * gst/gstvalue.h:
888           GstElement::new-pad -> pad-added, GstElement::state-change ->
889           state-changed, GstValueFixedList -> GstValueArray, add format and
890           flags as their own arguments in gst_element_seek() (should improve
891           "bindeability"), remove function generators since they don't work
892           under a whole bunch of compilers (they were deprecated already
893           anyway).
894
895 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
896
897         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
898         (_gst_debug_register_funcptr):
899         * gst/gstinfo.h:
900           Fix illegal cast on some platforms (#309253).
901
902 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
903
904         * gst/gstmessage.c: (gst_message_new_custom):
905         * gst/gstmessage.h:
906           Add _new_custom, make _new_application a macro to _new_custom.
907
908 2005-07-20  Wim Taymans  <wim@fluendo.com>
909
910         * gst/base/gstbasesrc.c: (gst_base_src_init),
911         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
912         * gst/base/gstbasesrc.h:
913         Add a gboolean to decide when to push out a discont.
914
915         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
916         (gst_queue_loop), (gst_queue_handle_src_query),
917         (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
918         (gst_queue_set_property), (gst_queue_get_property):
919         Some cleanups.
920
921         * tests/threadstate/threadstate1.c: (main):
922         Make a thread test compile and run... very silly..
923
924
925 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
926
927         * docs/manual/appendix-porting.xml:
928           Mention removal of libgstgconf-0.9.la and existence of gconf
929           elements.
930
931 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
932
933         * docs/pwg/advanced-clock.xml:
934         * docs/pwg/appendix-porting.xml:
935         * docs/pwg/intro-preface.xml:
936         * docs/pwg/other-base.xml:
937         * docs/pwg/other-manager.xml:
938         * docs/pwg/other-nton.xml:
939         * docs/pwg/other-ntoone.xml:
940         * docs/pwg/other-oneton.xml:
941         * docs/pwg/pwg.xml:
942           Document base classes, update sections of n-to-1 and 1-to-n (muxer,
943           demuxer), remove n-to-n (was never written), fix some code examples
944           and links and update the porting section to include all this.
945
946 2005-07-19  Wim Taymans  <wim@fluendo.com>
947
948         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
949         (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
950         (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
951         (gst_queue_src_activate_push), (gst_queue_change_state),
952         (gst_queue_get_property):
953         * gst/gstqueue.h:
954         Propagate GstFlowReturn more intelligently upstream and output
955         an ERROR/EOS when streaming stopped due to fatal error.
956
957 2005-07-19  Wim Taymans  <wim@fluendo.com>
958
959         * tools/gst-launch.c: (check_intr), (event_loop), (main):
960         Don't block forever for the state change to complete, the
961         pipeline already did with a sensible timeout.
962
963 2005-07-19  Wim Taymans  <wim@fluendo.com>
964
965         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
966         Make sure we never call the create function is we
967         got deactivated.
968
969 2005-07-19  Andy Wingo  <wingo@pobox.com>
970
971         * gst/parse/parse.l: Attempt to solve bug #172815.
972
973 2005-07-19  Wim Taymans  <wim@fluendo.com>
974
975         * docs/design/part-clocks.txt:
976         * docs/design/part-events.txt:
977         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
978         Small docs updates.
979         Only update the seeking values when we are not
980         busy streaming.
981
982 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
983
984         * gst/base/gstbasesrc.c: (gst_base_src_loop):
985           Oops, ignore the result of gst_pad_push_event here.
986
987 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
988
989         * gst/base/gstbasesrc.c: (gst_base_src_loop),
990         (gst_base_src_activate_push):
991           Send discont event from the loop function, as pads
992           aren't activated yet in the activate_push handler.
993
994         * gst/gstbin.c: (bin_bus_handler):
995           Don't leak element name.
996
997 2005-07-18  Andy Wingo  <wingo@pobox.com>
998
999         * configure.ac: Use AS_LIBTOOL_TAGS.
1000
1001 2005-07-18  Wim Taymans  <wim@fluendo.com>
1002
1003         * docs/gst/gstreamer.types:
1004         Remove deleted types.
1005
1006 2005-07-18  Wim Taymans  <wim@fluendo.com>
1007
1008         * check/elements/gstfakesrc.c: (GST_START_TEST):
1009         * configure.ac:
1010         * gst/Makefile.am:
1011         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
1012         (init_popt_callback):
1013         * gst/gst.h:
1014         * gst/gst_private.h:
1015         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
1016         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
1017         * gst/gstbin.h:
1018         * gst/gstbus.h:
1019         * gst/gstconfig.h.in:
1020         * gst/gstelement.c: (gst_element_class_init),
1021         (gst_element_set_base_time), (gst_element_get_base_time),
1022         (iterator_fold_with_resync), (gst_element_change_state),
1023         (gst_element_dispose), (gst_element_get_bus):
1024         * gst/gstelement.h:
1025         * gst/gstelementfactory.h:
1026         * gst/gsterror.c: (_gst_core_errors_init):
1027         * gst/gsterror.h:
1028         * gst/gstevent.h:
1029         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
1030         * gst/gstindex.c:
1031         * gst/gstinfo.c: (_gst_debug_init):
1032         * gst/gstmessage.c: (_gst_message_copy):
1033         * gst/gstmessage.h:
1034         * gst/gstminiobject.h:
1035         * gst/gstobject.c:
1036         * gst/gstobject.h:
1037         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
1038         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
1039         * gst/gstpad.h:
1040         * gst/gstparse.h:
1041         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
1042         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
1043         (gst_pipeline_get_last_stream_time):
1044         * gst/gstpipeline.h:
1045         * gst/gstpluginfeature.h:
1046         * gst/gstquery.h:
1047         * gst/gstscheduler.c:
1048         * gst/gstscheduler.h:
1049         * gst/gststructure.h:
1050         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
1051         (gst_task_finalize), (gst_task_func), (gst_task_create),
1052         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
1053         (gst_task_stop), (gst_task_pause):
1054         * gst/gsttask.h:
1055         * gst/gsttypefind.h:
1056         * gst/gsttypes.h:
1057         * gst/registries/gstlibxmlregistry.c: (load_feature),
1058         (gst_xml_registry_load), (gst_xml_registry_save_feature):
1059         * gst/registries/gstxmlregistry.c:
1060         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
1061         * gst/schedulers/threadscheduler.c:
1062         * libs/gst/control/dparammanager.h:
1063         * tools/gst-inspect.c: (print_element_list),
1064         (print_plugin_features), (print_element_features):
1065         * tools/gst-xmlinspect.c: (print_element_list),
1066         (print_plugin_info), (main):
1067         Removed plugable schedulers.
1068         Removed Scheduler/Manager from elements.
1069         Removed gsttypes.h, rearranged includes.
1070         Removed dependency pad<->element, element<>pipeline, and
1071         various others,  fix includes.
1072         implement gst_pad_get_parent() with gst_object_get_parent()
1073         Make GstTask sefcontained.
1074         Fix _get_state() on GstBin, it did not return ASYNC with a 0
1075         timeout.
1076         Fix endless loop in iterator_fold_with_resync.
1077
1078
1079 2005-07-18  Wim Taymans  <wim@fluendo.com>
1080
1081         * gst/Makefile.am:
1082         * gst/gstarch.h:
1083         Remove old file.
1084
1085 2005-07-18  Wim Taymans  <wim@fluendo.com>
1086
1087         * gst/Makefile.am:
1088         No more cothreads.h
1089
1090 2005-07-18  Wim Taymans  <wim@fluendo.com>
1091
1092         * gst/cothreads.c:
1093         * gst/cothreads.h:
1094         Let's remove these.
1095
1096 2005-07-18  Wim Taymans  <wim@fluendo.com>
1097
1098         * docs/design/part-dynamic.txt:
1099         * docs/design/part-events.txt:
1100         * docs/design/part-seeking.txt:
1101         Some more docs in the works.
1102
1103         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
1104         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
1105         (gst_base_transform_setcaps), (gst_base_transform_get_size),
1106         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
1107         (gst_base_transform_handle_buffer),
1108         (gst_base_transform_sink_activate_push),
1109         (gst_base_transform_src_activate_pull),
1110         (gst_base_transform_set_passthrough),
1111         (gst_base_transform_is_passthrough):
1112         Refcounting fixes.
1113
1114         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
1115         Cleanups.
1116
1117         * gst/gstevent.c: (gst_event_finalize):
1118         Set SRC to NULL.
1119
1120         * gst/gstutils.c: (gst_element_unlink),
1121         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
1122         (gst_pad_proxy_setcaps):
1123         * gst/gstutils.h:
1124         Add _get_parent_element() to get a pads parent as an element.
1125
1126 2005-07-18  Wim Taymans  <wim@fluendo.com>
1127
1128         * check/gst/gstbin.c: (GST_START_TEST):
1129         Remove bogus test.
1130
1131 2005-07-18  Wim Taymans  <wim@fluendo.com>
1132
1133         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
1134         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
1135         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
1136         (gst_base_sink_event), (gst_base_sink_do_sync),
1137         (gst_base_sink_chain), (gst_base_sink_loop),
1138         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
1139         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
1140         Refcounting fixes.
1141         Fix logic for returning ASYNC when not prerolled.
1142
1143 2005-07-18  Wim Taymans  <wim@fluendo.com>
1144
1145         * gst/gstqueue.c: (gst_queue_handle_sink_event):
1146         Fix nasty refcount bug.
1147
1148 2005-07-16 Philippe Khalaf <burger@speedy.org>
1149         * gst/elements/gstfdsrc.c:
1150         * gst/elements/gstfdsrc.h:
1151         * gst/elements/gstelements.c:
1152         * gst/elements/Makefile.am:
1153         Ported fdsrc to 0.9.
1154
1155 2005-07-16  Wim Taymans  <wim@fluendo.com>
1156
1157         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1158         (gst_base_sink_do_sync):
1159         Fix compile error.
1160
1161 2005-07-16  Wim Taymans  <wim@fluendo.com>
1162
1163         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1164         (gst_base_sink_event), (gst_base_sink_get_times),
1165         (gst_base_sink_do_sync), (gst_base_sink_change_state):
1166         * gst/base/gstbasesink.h:
1167         Store and use discont values when syncing buffers as described
1168         in design docs.
1169         
1170         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
1171         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
1172         (gst_base_src_activate_push):
1173         Push discont event when starting.
1174
1175         * gst/elements/gstidentity.c: (gst_identity_transform):
1176         Small cleanups.
1177
1178         * gst/gstbin.c: (gst_bin_change_state):
1179         Small cleanups in base_time  distribution.
1180
1181         * gst/gstelement.c: (gst_element_set_base_time),
1182         (gst_element_get_base_time), (gst_element_change_state):
1183         * gst/gstelement.h:
1184         Added methods for the base_time of the element.
1185         Some MT fixes.
1186
1187         * gst/gstpipeline.c: (gst_pipeline_send_event),
1188         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
1189         (gst_pipeline_get_last_stream_time):
1190         * gst/gstpipeline.h:
1191         MT fixes.
1192         Handle seeking as described in design doc, remove stream_time
1193         hack.
1194         Cleanups clock and stream_time selection code. Added accessors
1195         for the stream_time.
1196         
1197
1198 2005-07-16  Andy Wingo  <wingo@pobox.com>
1199
1200         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
1201         (#305291).
1202
1203 2005-07-16  Wim Taymans  <wim@fluendo.com>
1204
1205         * check/gst/gstbin.c: (GST_START_TEST):
1206         Make elements silent as the deep_notify refs the
1207         parent, which might make the test fail.
1208
1209         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
1210         Don't hold the lock for too long.
1211
1212 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
1213
1214         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
1215           Don't unref the caps we passed to gst_caps_make_writable() after
1216           passing them. gst_caps_make_writable() will do that for us.
1217
1218 2005-07-15  Andy Wingo  <wingo@pobox.com>
1219
1220         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
1221         (#157311).
1222
1223         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
1224         own marshalling function for the handoff signal. Properly type the
1225         buffer as a buffer. Fixes some warnings. Should do a more general
1226         solution.
1227         (gst_identity_class_init): Plug into the right marshaller.
1228
1229 2005-07-15  Wim Taymans  <wim@fluendo.com>
1230
1231         * docs/design/part-TODO.txt:
1232         * docs/design/part-clocks.txt:
1233         * docs/design/part-element-sink.txt:
1234         * docs/design/part-events.txt:
1235         * docs/design/part-gstpipeline.txt:
1236         Updated docs, mostly DISCONT related.
1237
1238 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
1239
1240         * docs/pwg/building-pads.xml:
1241           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
1242
1243 2005-07-15  Andy Wingo  <wingo@pobox.com>
1244
1245         * tools/gst-typefind.c: Update, add copyright block.
1246
1247         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
1248         Normalize and truncate caps before fixation.
1249
1250         * gst/gstcaps.h:
1251         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
1252         discards all but the first structure from its argument.
1253
1254 2005-07-15  Wim Taymans  <wim@fluendo.com>
1255
1256         * gst/base/gstbasetransform.c: (gst_base_transform_init),
1257         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
1258         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
1259         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
1260         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
1261         (gst_base_transform_chain), (gst_base_transform_change_state),
1262         (gst_base_transform_set_passthrough),
1263         (gst_base_transform_is_passthrough):
1264         * gst/base/gstbasetransform.h:
1265         Make passthrough work using the bufferpools.
1266         Changed API a bit, subclasses have to write into a buffer
1267         provided by the base class.
1268         More debug info in nego functions.
1269         
1270         * gst/elements/gstidentity.c: (gst_identity_init),
1271         (gst_identity_transform):
1272         Port to new base class.
1273
1274 2005-07-15  Wim Taymans  <wim@fluendo.com>
1275
1276         * gst/gstmessage.c: (gst_message_new_state_changed):
1277         * tools/gst-launch.c: (event_loop), (main):
1278         Totally dump messages in -launch with the -m option.
1279         Fix message name for State messages,
1280
1281 2005-07-14  Wim Taymans  <wim@fluendo.com>
1282
1283         * gst/base/gstbasesrc.c: (gst_base_src_loop):
1284         Post error messages on errors.
1285
1286 2005-07-14  Wim Taymans  <wim@fluendo.com>
1287
1288         * gst/gstcaps.c: (gst_caps_do_simplify):
1289         Remove debug info.
1290
1291         * gst/gsterror.h:
1292         Define error for stream stopped.
1293
1294         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1295         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
1296         Do proper return values.
1297
1298         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
1299         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
1300         (gst_pad_get_range):
1301         Better return values.
1302
1303         * gst/gstpad.h:
1304         Reorganise return values, add macro to check for fatal errors.
1305
1306         * gst/gstqueue.c: (gst_queue_chain):
1307         Return proper GstFlowReturn values,
1308
1309 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
1310
1311         * docs/gst/gstreamer-sections.txt:
1312         * docs/gst/gstreamer.types:
1313         * docs/gst/tmpl/gst.sgml:
1314         * docs/gst/tmpl/gstbasesink.sgml:
1315         * docs/gst/tmpl/gstbasesrc.sgml:
1316         * docs/gst/tmpl/gstbasetransform.sgml:
1317         * docs/gst/tmpl/gstbin.sgml:
1318         * docs/gst/tmpl/gstbuffer.sgml:
1319         * docs/gst/tmpl/gstcaps.sgml:
1320         * docs/gst/tmpl/gstclock.sgml:
1321         * docs/gst/tmpl/gstcompat.sgml:
1322         * docs/gst/tmpl/gstconfig.sgml:
1323         * docs/gst/tmpl/gstelement.sgml:
1324         * docs/gst/tmpl/gstelementdetails.sgml:
1325         * docs/gst/tmpl/gstelementfactory.sgml:
1326         * docs/gst/tmpl/gstenumtypes.sgml:
1327         * docs/gst/tmpl/gsterror.sgml:
1328         * docs/gst/tmpl/gstevent.sgml:
1329         * docs/gst/tmpl/gstfakesink.sgml:
1330         * docs/gst/tmpl/gstfakesrc.sgml:
1331         * docs/gst/tmpl/gstfilesink.sgml:
1332         * docs/gst/tmpl/gstfilesrc.sgml:
1333         * docs/gst/tmpl/gstfilter.sgml:
1334         * docs/gst/tmpl/gstformat.sgml:
1335         * docs/gst/tmpl/gstghostpad.sgml:
1336         * docs/gst/tmpl/gstimplementsinterface.sgml:
1337         * docs/gst/tmpl/gstindex.sgml:
1338         * docs/gst/tmpl/gstindexfactory.sgml:
1339         * docs/gst/tmpl/gstinfo.sgml:
1340         * docs/gst/tmpl/gstiterator.sgml:
1341         * docs/gst/tmpl/gstmacros.sgml:
1342         * docs/gst/tmpl/gstmemchunk.sgml:
1343         * docs/gst/tmpl/gstminiobject.sgml:
1344         * docs/gst/tmpl/gstobject.sgml:
1345         * docs/gst/tmpl/gstpad.sgml:
1346         * docs/gst/tmpl/gstpadtemplate.sgml:
1347         * docs/gst/tmpl/gstparse.sgml:
1348         * docs/gst/tmpl/gstpipeline.sgml:
1349         * docs/gst/tmpl/gstplugin.sgml:
1350         * docs/gst/tmpl/gstpluginfeature.sgml:
1351         * docs/gst/tmpl/gstquery.sgml:
1352         * docs/gst/tmpl/gstqueue.sgml:
1353         * docs/gst/tmpl/gstregistry.sgml:
1354         * docs/gst/tmpl/gstregistrypool.sgml:
1355         * docs/gst/tmpl/gstscheduler.sgml:
1356         * docs/gst/tmpl/gstschedulerfactory.sgml:
1357         * docs/gst/tmpl/gststructure.sgml:
1358         * docs/gst/tmpl/gstsystemclock.sgml:
1359         * docs/gst/tmpl/gsttaglist.sgml:
1360         * docs/gst/tmpl/gsttagsetter.sgml:
1361         * docs/gst/tmpl/gsttrace.sgml:
1362         * docs/gst/tmpl/gsttrashstack.sgml:
1363         * docs/gst/tmpl/gsttypefind.sgml:
1364         * docs/gst/tmpl/gsttypefindfactory.sgml:
1365         * docs/gst/tmpl/gsttypes.sgml:
1366         * docs/gst/tmpl/gsturihandler.sgml:
1367         * docs/gst/tmpl/gsturitype.sgml:
1368         * docs/gst/tmpl/gstutils.sgml:
1369         * docs/gst/tmpl/gstvalue.sgml:
1370         * docs/gst/tmpl/gstversion.sgml:
1371         * docs/gst/tmpl/gstxml.sgml:
1372         * docs/libs/tmpl/gstcontrol.sgml:
1373         * docs/libs/tmpl/gstdataprotocol.sgml:
1374         * docs/libs/tmpl/gstdparam.sgml:
1375         * docs/libs/tmpl/gstdplinint.sgml:
1376         * docs/libs/tmpl/gstdpman.sgml:
1377         * docs/libs/tmpl/gstdpsmooth.sgml:
1378         * docs/libs/tmpl/gstgetbits.sgml:
1379         * docs/libs/tmpl/gstunitconvert.sgml:
1380         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
1381         (gst_push_src_base_init), (gst_push_src_class_init),
1382         (gst_push_src_init), (gst_push_src_create):
1383         * gst/base/gstpushsrc.h:
1384         * gst/elements/gstelements.c:
1385         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
1386         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
1387         (gst_fake_sink_init), (gst_fake_sink_set_property),
1388         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
1389         (gst_fake_sink_event), (gst_fake_sink_preroll),
1390         (gst_fake_sink_render), (gst_fake_sink_change_state):
1391         * gst/elements/gstfakesink.h:
1392         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
1393         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
1394         (gst_fake_src_base_init), (gst_fake_src_class_init),
1395         (gst_fake_src_init), (gst_fake_src_event_handler),
1396         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
1397         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
1398         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
1399         (gst_fake_src_create_buffer), (gst_fake_src_create),
1400         (gst_fake_src_start), (gst_fake_src_stop):
1401         * gst/elements/gstfakesrc.h:
1402         * gst/elements/gstfilesink.c: (_do_init),
1403         (gst_file_sink_base_init), (gst_file_sink_class_init),
1404         (gst_file_sink_init), (gst_file_sink_dispose),
1405         (gst_file_sink_set_location), (gst_file_sink_set_property),
1406         (gst_file_sink_get_property), (gst_file_sink_open_file),
1407         (gst_file_sink_close_file), (gst_file_sink_query),
1408         (gst_file_sink_event), (gst_file_sink_render),
1409         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
1410         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
1411         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
1412         * gst/elements/gstfilesink.h:
1413         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
1414         (gst_file_src_class_init), (gst_file_src_init),
1415         (gst_file_src_finalize), (gst_file_src_set_location),
1416         (gst_file_src_set_property), (gst_file_src_get_property),
1417         (gst_file_src_map_region), (gst_file_src_map_small_region),
1418         (gst_file_src_create_mmap), (gst_file_src_create_read),
1419         (gst_file_src_create), (gst_file_src_is_seekable),
1420         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
1421         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
1422         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
1423         (gst_file_src_uri_handler_init):
1424         * gst/elements/gstfilesrc.h:
1425           more autistic cleanliness in functions/names/defines
1426
1427 2005-07-13  Andy Wingo  <wingo@pobox.com>
1428
1429         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
1430         source couldn't negotiate.
1431
1432         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
1433         connections again.
1434
1435         * gst/gstutils.h:
1436         * gst/gstutils.c (gst_element_link_pads_filtered): New old
1437         function. I am channeling Hades. Put your boots on suckers!!!
1438
1439 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
1440
1441         * testsuite/caps/Makefile.am:
1442         * testsuite/caps/value_compare.c:
1443         * testsuite/caps/value_intersect.c:
1444         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
1445           move two testsuite apps over to the check dir
1446
1447 2005-07-12  Wim Taymans  <wim@fluendo.com>
1448
1449         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
1450         Added more debug info in the negotiate process.
1451
1452         * gst/gstmessage.h:
1453         Prepare for segment playback.
1454
1455         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
1456         Better debugging.
1457
1458         * gst/gstutils.c:
1459         Some more docs.
1460
1461         * tools/gst-launch.c: (main):
1462         NULL pipeline on errors.
1463
1464 2005-07-12  Andy Wingo  <wingo@pobox.com>
1465
1466         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
1467         not it comes from a malloc region. Make sure our copy gets freed.
1468
1469 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1470
1471         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
1472         * check/gst/gstmessage.c: (GST_START_TEST):
1473         * check/gst/gststructure.c: (GST_START_TEST),
1474         (gst_structure_suite), (main):
1475           more testing
1476         * gst/gstelement.c: (gst_element_message_full):
1477           clean up GError and debug string now that they get copied
1478         * gst/gstmessage.c: (gst_message_new_error),
1479         (gst_message_new_warning), (gst_message_parse_error),
1480         (gst_message_parse_warning):
1481           use GST_TYPE_G_ERROR for structure_new, and take copies of
1482           arguments, so that we don't mess up refcounting
1483
1484 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1485
1486         * check/Makefile.am:
1487           add per-test valgrind targets
1488         * check/gst-libs/gdp.c: (GST_START_TEST),
1489         (gst_data_protocol_suite), (main):
1490           clean up
1491
1492 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1493
1494         * check/Makefile.am:
1495           instate more valgrindable tests
1496         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1497         (GST_START_TEST), (fakesrc_suite):
1498         * check/gst/gstpad.c: (GST_START_TEST):
1499         * check/gst/gststructure.c: (GST_START_TEST):
1500           fix test leaks
1501         * docs/gst/tmpl/gstminiobject.sgml:
1502         * gst/gstpad.c: (gst_pad_finalize):
1503           fix the static mutex leak
1504
1505 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1506
1507         * check/Makefile.am:
1508           add two more tests for valgrinding
1509         * check/gst/gstvalue.c: (GST_START_TEST):
1510           test refcount of deserialized buffer, found a leak
1511         * docs/gst/gstreamer-docs.sgml:
1512         * docs/gst/gstreamer-sections.txt:
1513         * docs/gst/gstreamer.types:
1514         * docs/gst/tmpl/gstminiobject.sgml:
1515           add miniobject to docs
1516         * gst/gstminiobject.c:
1517           add some docs
1518         * gst/gstvalue.c: (gst_value_deserialize_buffer),
1519         (gst_string_unwrap):
1520           fix a hard-to-find invalid write for one of the tests
1521           fix a leak for deserialized buffers
1522
1523 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1524
1525         * docs/pwg/advanced-events.xml:
1526         * docs/pwg/advanced-request.xml:
1527         * docs/pwg/advanced-scheduling.xml:
1528         * docs/pwg/appendix-porting.xml:
1529         * docs/pwg/building-boiler.xml:
1530         * docs/pwg/intro-preface.xml:
1531         * docs/pwg/other-ntoone.xml:
1532           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
1533           of example code and explanation for pad activation, loop() and
1534           getrange() functions and a bit more. Remove old comments pointing
1535           to loop-functions.
1536         * examples/pwg/Makefile.am:
1537           Add loop/getrange examples.
1538
1539 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1540
1541         * configure.ac:
1542           check for valgrind binary + some fixes
1543         * check/gst.supp:
1544           valgrind suppressions for the tests
1545         * check/Makefile.am:
1546           add a valgrind: target that valgrinds the unit tests
1547         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
1548         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
1549         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1550         * check/gst/gstghostpad.c:
1551           added some cleanup
1552         * check/gst/gstdata.c:
1553           removed
1554         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
1555         (thread_unref), (gst_mini_object_suite), (main):
1556           added
1557         * gst/gst.c: (gst_deinit):
1558         * gst/gst.h:
1559           add a method to clean up.
1560         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1561         (gst_system_clock_obtain):
1562           allow for disposing the system clock.
1563         * tools/gst-launch.c: (main):
1564           deinit
1565
1566 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1567
1568         * docs/gst/tmpl/gstbasesrc.sgml:
1569         * docs/gst/tmpl/gstfakesrc.sgml:
1570         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1571         (gst_base_src_init), (gst_base_src_set_property),
1572         (gst_base_src_get_property), (gst_base_src_get_range),
1573         (gst_base_src_start):
1574         * gst/base/gstbasesrc.h:
1575           add num-buffers property
1576         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1577         (gst_fakesrc_init), (gst_fakesrc_set_property),
1578         (gst_fakesrc_get_property), (gst_fakesrc_create),
1579         (gst_fakesrc_start):
1580           remove num-buffers property
1581
1582 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1583
1584         * docs/gst/gstreamer-sections.txt:
1585         * docs/gst/tmpl/gstbasesink.sgml:
1586         * docs/gst/tmpl/gstbasesrc.sgml:
1587         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
1588         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
1589         (gst_base_sink_finalize), (gst_base_sink_set_clock),
1590         (gst_base_sink_set_property), (gst_base_sink_get_property),
1591         (gst_base_sink_handle_object), (gst_base_sink_event),
1592         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
1593         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
1594         (gst_base_sink_loop), (gst_base_sink_deactivate),
1595         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
1596         (gst_base_sink_change_state):
1597         * gst/base/gstbasesink.h:
1598         * gst/base/gstbasesrc.h:
1599         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
1600         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
1601         (gst_filesink_init):
1602           more macro splitting
1603
1604 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1605
1606         * gst/gstelement.c: (gst_element_get_bus):
1607           add debug
1608         * tools/gst-launch.c: (check_intr), (event_loop):
1609           fix bus leaks
1610
1611 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1612
1613         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
1614           fix a caps leak
1615
1616 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1617
1618         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1619         (gst_base_src_finalize):
1620           add finalize method and clean up properly
1621         * gst/gstpipeline.c: (gst_pipeline_dispose):
1622           add debug
1623
1624 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1625
1626         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
1627         (gst_bin_suite):
1628           add more things to check
1629         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
1630         * gst/gstelement.c:
1631           more debug
1632
1633 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1634
1635         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1636         (GST_START_TEST), (fakesrc_suite):
1637         * check/gst-libs/gdp.c: (GST_START_TEST):
1638         * check/gst/gst.c: (GST_START_TEST):
1639         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
1640         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1641         * check/gst/gstbus.c: (GST_START_TEST):
1642         * check/gst/gstcaps.c: (GST_START_TEST):
1643         * check/gst/gstdata.c: (GST_START_TEST):
1644         * check/gst/gstelement.c: (GST_START_TEST):
1645         * check/gst/gstghostpad.c: (GST_START_TEST):
1646         * check/gst/gstiterator.c: (GST_START_TEST):
1647         * check/gst/gstmessage.c: (GST_START_TEST):
1648         * check/gst/gstobject.c: (GST_START_TEST):
1649         * check/gst/gstpad.c: (GST_START_TEST):
1650         * check/gst/gststructure.c: (GST_START_TEST):
1651         * check/gst/gstsystemclock.c: (GST_START_TEST),
1652         (gst_systemclock_suite):
1653         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
1654         * check/gst/gstvalue.c: (GST_START_TEST):
1655         * check/pipelines/cleanup.c: (GST_START_TEST):
1656         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
1657         * check/states/sinks.c: (GST_START_TEST):
1658         * check/gstcheck.c: (gst_check_init):
1659         * check/gstcheck.h:
1660           add debugging category
1661           use GST_START_TEST now, so we add a debug line
1662
1663 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1664
1665         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
1666           add test for state change message on a bin
1667         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
1668           add another test
1669         * gst/gstbin.c: (gst_bin_init):
1670         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
1671         * gst/gstelement.c: (gst_element_post_message),
1672         (gst_element_set_state):
1673         * gst/gstelementfactory.c: (gst_element_factory_create):
1674         * gst/gstmessage.c: (gst_message_new):
1675         * gst/gstscheduler.c:
1676           various debugging additions and cleanups
1677
1678 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1679
1680         * check/Makefile.am:
1681         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
1682         (main):
1683           adding tests for elements
1684         * gst/gstelement.c: (gst_element_dispose):
1685
1686 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1687
1688         * gst/registries/gstlibxmlregistry.c: (load_feature):
1689           plug more leaks.  A simple gst_init() now is leakfree, yay.
1690
1691 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1692
1693         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
1694         (gst_xml_registry_load):
1695           plug another memleak
1696
1697 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1698
1699         * configure.ac:
1700           use GST_SET_ERROR_CFLAGS
1701         * docs/faq/cvs.xml:
1702           change to ERROR_CFLAGS
1703
1704 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1705
1706         * configure.ac:
1707           make GST_ERROR_CFLAGS overridable and re-enable Werror
1708         * docs/faq/cvs.xml:
1709           add a note about error CFLAGS
1710         * docs/gst/tmpl/gstfakesrc.sgml:
1711         * gst/elements/gstfakesrc.c:
1712           comment out some unused code
1713         * gst/gst.c: (split_and_iterate):
1714         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
1715         (load_feature):
1716           plug some memleaks
1717
1718 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1719
1720         * common/Makefile.am:
1721         * common/gtk-doc.mak:
1722         * docs/gst/Makefile.am:
1723           factor out gtk-doc.mak
1724
1725 2005-07-07  Wim Taymans  <wim@fluendo.com>
1726
1727         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
1728         (gst_thread_scheduler_dispose):
1729         Unlock the STREAM_LOCK completely.
1730
1731 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1732
1733         * check/Makefile.am:
1734         * check/elements/.cvsignore:
1735         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1736         (START_TEST), (fakesrc_suite), (main):
1737         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1738         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
1739         (gst_fakesrc_create), (gst_fakesrc_start):
1740         * gst/elements/gstfakesrc.h:
1741           adding a first element test
1742
1743 2005-07-07  Andy Wingo  <wingo@pobox.com>
1744
1745         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
1746         debug message.
1747
1748 2005-07-07  Wim Taymans  <wim@fluendo.com>
1749
1750         * gst/gstquery.c:
1751         * gst/gstquery.h:
1752         Remove old types
1753
1754 2005-07-07  Wim Taymans  <wim@fluendo.com>
1755
1756         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
1757         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
1758         Allow subclasses to implement their own negotiation.
1759
1760 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1761
1762         * docs/design/part-gstbin.txt:
1763         * docs/design/part-gstpipeline.txt:
1764           Update design notes to reflect the movement of
1765           responsibility for bus handling from GstPipeline to
1766           GstBin
1767
1768 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1769
1770         * configure.ac:
1771           Remove unnecessary queue2/3/4 examples.
1772
1773 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1774
1775         * examples/Makefile.am:
1776         * examples/helloworld/helloworld.c: (event_loop), (main):
1777         * examples/queue/queue.c: (event_loop), (main):
1778         * examples/queue2/queue2.c: (main):
1779           Update a couple of the examples to work again.
1780
1781         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1782         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
1783          Spelling corrections and extra debug.
1784         
1785         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
1786         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
1787         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
1788         * gst/gstbin.h:
1789         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
1790         (gst_pipeline_change_state):
1791         * gst/gstpipeline.h:
1792           Move the bus handler for children to the GstBin, and create a
1793           separate bus for receiving messages from children to the one the
1794           bus sends 'upwards' on.
1795
1796 2005-07-06  Wim Taymans  <wim@fluendo.com>
1797
1798         * gst/base/README:
1799         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1800         (gst_base_sink_handle_object), (gst_base_sink_loop),
1801         (gst_base_sink_change_state):
1802         * gst/base/gstbasesink.h:
1803         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1804         (gst_base_src_init), (gst_base_src_setcaps),
1805         (gst_base_src_getcaps), (gst_base_src_loop),
1806         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
1807         (gst_base_src_start), (gst_base_src_change_state):
1808         * gst/base/gstbasesrc.h:
1809         Make basesrc negotiate.
1810         Handle the case where preroll fails in basesink.
1811         Update README.
1812
1813 2005-07-06  Wim Taymans  <wim@fluendo.com>
1814
1815         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
1816         Implement the fixate function.
1817         Clean up acceptcaps.
1818
1819 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1820
1821         * docs/pwg/building-filterfactory.xml:
1822         * docs/pwg/pwg.xml:
1823           Remove never-written filter-factory chapter; I'll add the various
1824           base classes to part 4 ("other element types") later on.
1825
1826 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1827
1828         * docs/pwg/advanced-negotiation.xml:
1829         * docs/pwg/building-boiler.xml:
1830         * docs/pwg/building-pads.xml:
1831         * docs/pwg/pwg.xml:
1832         * examples/pwg/Makefile.am:
1833           Add a chapter on caps negotiation, simplify the original code
1834           samples a bit w.r.t. caps negotiation, add link to the advanced
1835           section. Add a bunch of examples showing different use cases of
1836           different types of caps negotiation. Upstream renegotiation isn't
1837           fully documented yet since nobody knows how that works.
1838
1839 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
1840
1841         * check/gst/gstpad.c:
1842         * check/gstcheck.c:
1843         * gst/gstpad.c: (gst_pad_get_internal_links_default):
1844           if pad has no parent, return NULL as list of internal links
1845
1846 2005-07-05  Andy Wingo  <wingo@pobox.com>
1847
1848         * gst/elements/gstfilesrc.c:
1849         * gst/elements/gstfakesrc.c: 
1850         * gst/base/gstpushsrc.c:
1851         * gst/base/gstbasesrc.h: 
1852         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
1853         
1854 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
1855
1856         * Makefile.am:
1857           better report generation target (lcov needs a patch)
1858
1859 2005-07-05  Andy Wingo  <wingo@pobox.com>
1860
1861         * gst/elements, testsuite: Null if we got it...
1862
1863 2005-07-05  Wim Taymans  <wim@fluendo.com>
1864
1865         * configure.ac:
1866         * libs/gst/dataprotocol/Makefile.am:
1867         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
1868         * libs/gst/dataprotocol/dataprotocol.h:
1869         * pkgconfig/Makefile.am:
1870         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
1871         * pkgconfig/gstreamer-dataprotocol.pc.in:
1872         Ported dataprotol to 0.9. 
1873         Added pkgconfig files.
1874
1875 2005-07-05  Andy Wingo  <wingo@pobox.com>
1876
1877         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
1878         Default to returning TRUE for the case when tranform_caps returns
1879         a fixed caps, like for identity or volume.
1880
1881         * check/gst/gstbus.c (pound_bus_with_messages): 
1882         * check/gst/gstmessage.c (START_TEST): 
1883         * check/pipelines/simple_launch_lines.c (got_handoff): Application
1884         message API change.
1885
1886         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
1887         logic weaks here: always run transform_caps, trying passthrough
1888         operation only if the original caps intersects with the transform.
1889
1890         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
1891         source and sink caps.
1892
1893         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
1894         Intersect the peer caps with the pad template before going into
1895         transform_caps.
1896         (gst_base_transform_transform_caps): More debugging.
1897
1898         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
1899         src argument.
1900
1901 2005-07-04  Edward Hervey  <edward@fluendo.com>
1902
1903         * gst/gstutils.c:
1904         * gst/gstutils.h:
1905         (gst_pad_add_*_probe): now returns the signal id for better wrapping
1906         in bindings.
1907
1908 2005-07-04  Andy Wingo  <wingo@pobox.com>
1909
1910         * check/gst/gstpad.c: Only set explicit caps on pads.
1911
1912 2005-07-01  Andy Wingo  <wingo@pobox.com>
1913
1914         * tests/network-clock.scm: Commentary update.
1915
1916         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
1917         Didn't really make sense, not implementable with basetransform,
1918         etc.
1919         (gst_identity_transform): Unref inbuf via make_writable. Feeble
1920         attempt at implementing the sync property, needs an unlock method.
1921
1922         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
1923         New func, by default returns the same caps (the identity
1924         transformation).
1925         (gst_base_transform_getcaps): Uses transform_caps to return
1926         something sensible.
1927         (gst_base_transform_setcaps): Complicated logic to get caps on
1928         both pads, even if they are different, and to call set_caps once
1929         for every time both pads get their caps set.
1930         (gst_base_transform_handle_buffer): Give the ref to the transform
1931         function. Allows in-place modification of the buffer.
1932
1933         * gst/base/gstbasetransform.h (transform_caps): New class method.
1934         Given caps on one side, what can I do on the other.
1935         (set_caps): Take two caps, one for each side of the element.
1936
1937         * gst/gstpad.h:
1938         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
1939         caps in place. This is safe because we can check the mutability of
1940         the caps, and a good idea because fixate functions are just called
1941         as a matter of last resort. (Not actually implemented.)
1942         (gst_pad_set_caps): If the caps we're setting is actually the same
1943         as the existing pad caps, just update the pointer without calling
1944         setcaps. Assert that caps is either NULL or fixed, as per the
1945         docs.
1946
1947         * gst/gstghostpad.c: Update for fixate changes.
1948
1949 2005-07-02  Andy Wingo  <wingo@pobox.com>
1950
1951         * gst/gstcaps.c:
1952         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
1953         two refcounts makes it immutable, which is enough. Doc more.
1954
1955 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
1956
1957         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
1958           Put the mini_object into GValue as a mini_object,
1959           not a gpointer, since that's how we declared
1960           the signal.
1961
1962 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1963
1964         * examples/pwg/Makefile.am:
1965           Fix buildbot again.
1966
1967 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1968
1969         * docs/pwg/building-testapp.xml:
1970           Add extra check.
1971         * examples/pwg/Makefile.am:
1972           Fix buildbot.
1973
1974 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1975
1976         * configure.ac:
1977         * examples/Makefile.am:
1978         * examples/pwg/Makefile.am:
1979         * examples/pwg/extract.pl:
1980           Enable building the PWG examples.
1981         * docs/pwg/advanced-interfaces.xml:
1982           Add URI interface stub.
1983         * docs/pwg/advanced-types.xml:
1984         * docs/pwg/other-autoplugger.xml:
1985         * docs/pwg/appendix-porting.xml:
1986         * docs/pwg/pwg.xml:
1987           Add porting guide (mostly stubs), remove autoplugging (see ADM).
1988         * docs/pwg/building-boiler.xml:
1989         * docs/pwg/building-chainfn.xml:
1990         * docs/pwg/building-pads.xml:
1991         * docs/pwg/building-props.xml:
1992         * docs/pwg/building-state.xml:
1993         * docs/pwg/building-testapp.xml:
1994           Update the building-*.xml parts for 0.9 changes. All examples
1995           code blocks compile in examples/pwg/*.
1996
1997 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1998
1999         * docs/manual/advanced-autoplugging.xml:
2000         * docs/manual/appendix-checklist.xml:
2001         * docs/manual/appendix-integration.xml:
2002         * docs/manual/highlevel-components.xml:
2003           Fix playbin/decodebin examples, update docs a bit, mention bus
2004           instead of signals in various places, mention kmplayer and
2005           kaffeine since they have a working GStreamer backend in the KDE
2006           section.
2007
2008 2005-06-30  Wim Taymans  <wim@fluendo.com>
2009
2010         * CHANGES-0.9:
2011         * docs/design/draft-ghostpads.txt:
2012         * docs/design/draft-push-pull.txt:
2013         * docs/design/draft-query.txt:
2014         * docs/design/part-TODO.txt:
2015         * docs/design/part-query.txt:
2016         Added CHANGES-0.9 doc, updated status of other docs.
2017         
2018         * gst/gstquery.h:
2019         Remove "hmm" macro
2020
2021 2005-06-30  Wim Taymans  <wim@fluendo.com>
2022
2023         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
2024         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
2025         (gst_base_sink_change_state):
2026         * gst/base/gstbasesink.h:
2027         Some tweaks, only EOS and a buffer complete a preroll.
2028
2029 2005-06-30  Andy Wingo  <wingo@pobox.com>
2030
2031         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
2032         activate_push down to the internal pad as well.
2033
2034 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
2035
2036         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2037
2038         * gst/gsttaginterface.c:
2039           Some documentation fixes (#307394 and #307397).
2040
2041 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
2042
2043         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2044
2045         * gst/gstvalue.c: (gst_value_intersect_list):
2046           Fix memleak (#309125).
2047
2048 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2049
2050         * docs/manual/advanced-dataaccess.xml:
2051           Fix fakesrc example to compile; doesn't work, bug somewhere...?
2052         * docs/manual/basics-pads.xml:
2053           Add reference for filtered caps to above chapter.
2054
2055 2005-06-30  Wim Taymans  <wim@fluendo.com>
2056
2057         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
2058         (gst_bin_change_state):
2059         Probes are gone.
2060         Lame attempt at making the state change function a bit
2061         more readable.
2062
2063 2005-06-30  Wim Taymans  <wim@fluendo.com>
2064
2065         * docs/design/part-clocks.txt:
2066         * docs/design/part-element-sink.txt:
2067         * docs/design/part-events.txt:
2068         * docs/design/part-preroll.txt:
2069         * docs/design/part-states.txt:
2070         Some more tweeks and additions to the docs.
2071
2072 2005-06-30  Wim Taymans  <wim@fluendo.com>
2073
2074         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
2075         (default_have_data), (gst_pad_class_init), (gst_pad_init),
2076         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
2077         (gst_pad_check_pull_range), (gst_pad_get_range),
2078         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
2079         * gst/gstpad.h:
2080         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
2081         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
2082         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
2083         (gst_pad_remove_buffer_probe):
2084         Removed atomic operations, use existing LOCK.
2085         Move exception handling out of main code path.
2086
2087 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2088
2089         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
2090         (silly_return_true_function), (gst_pad_class_init),
2091         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
2092         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
2093         (gst_pad_send_event):
2094           Fix accumulator, add default value by using _emitv() instead
2095           of _emit() for signal emission.
2096
2097 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2098
2099         * docs/manual/advanced-dataaccess.xml:
2100         * examples/manual/Makefile.am:
2101           Add probe example.
2102         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
2103           Make work (??).
2104
2105 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
2106
2107         * gst/elements/gstfilesink.c: (gst_filesink_render):
2108           Simplify code so that we don't have to handle short
2109           writes and return GST_FLOW_ERROR if an error occured.
2110
2111 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2112
2113         * docs/gst/gstreamer-docs.sgml:
2114           Remove probes more.
2115
2116 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2117
2118         * docs/gst/gstreamer-sections.txt:
2119         * docs/gst/tmpl/gstpad.sgml:
2120         * docs/gst/tmpl/gstprobe.sgml:
2121         * gst/Makefile.am:
2122         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
2123         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
2124         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
2125         (gst_pad_push_event), (gst_pad_send_event):
2126         * gst/gstpad.h:
2127         * gst/gstutils.c: (gst_pad_add_data_probe),
2128         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
2129         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
2130         (gst_pad_remove_buffer_probe):
2131         * gst/gstutils.h:
2132           Remove old probes, add new g-signal-based probes and some utility
2133           functions.
2134
2135 2005-06-29  Edward Hervey  <edward@fluendo.com>
2136
2137         * gst/gstelementfactory.c:
2138         * gst/gstutils.h:
2139         * gst/gstutils.c:
2140         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
2141         the definition to the header file.
2142
2143 2005-06-29  Andy Wingo  <wingo@pobox.com>
2144
2145         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
2146         plugins from the source directory.
2147
2148 2005-06-29  Wim Taymans  <wim@fluendo.com>
2149
2150         * docs/gst/tmpl/gstbuffer.sgml:
2151         * docs/gst/tmpl/gstclock.sgml:
2152         Some fixings for blantently wrong text.
2153
2154 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
2155
2156         * check/Makefile.am:
2157         * gst/gst.c: (add_path_func), (init_pre):
2158         * gst/gstregistry.c: (gst_registry_add_path):
2159           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
2160           only scan the GST_PLUGIN_PATH locations, and not add
2161           system locations
2162
2163 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
2164
2165         * docs/gst/gstreamer-sections.txt:
2166         * docs/gst/tmpl/gstbasesrc.sgml:
2167         * gst/gstelement.c:
2168         * gst/gstelement.h:
2169         * gst/gstevent.c:
2170         * gst/gstutils.c:
2171           doc fixes
2172
2173 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2174
2175         * docs/manual/advanced-autoplugging.xml:
2176           Fix autoplugging example.
2177
2178 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2179
2180         * docs/manual/advanced-autoplugging.xml:
2181         * docs/manual/mime-world.fig:
2182           Try to get autoplugging working, fix type detection. Fix text
2183           in hello-world image.
2184
2185 2005-06-29  Wim Taymans  <wim@fluendo.com>
2186
2187         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
2188         (gst_base_sink_change_state):
2189         Small debug line.
2190
2191         * gst/gstclock.h:
2192         map SIGNAL and BROADCAST to the right function.
2193
2194         * gst/gstobject.h:
2195         Remove redundant braces.
2196
2197         * gst/gstpad.c: (gst_pad_set_caps):
2198         Don't call setcaps function when reseting caps to NULL.
2199
2200         * gst/gstsystemclock.c: (gst_system_clock_dispose),
2201         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
2202         (gst_system_clock_id_unschedule):
2203         Use BROADCAST as this is what we do.
2204
2205 2005-06-29  Wim Taymans  <wim@fluendo.com>
2206
2207         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
2208         We are actually prerolling before commiting the state
2209         change. 
2210
2211 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2212
2213         * docs/manual/advanced-clocks.xml:
2214         * docs/manual/advanced-interfaces.xml:
2215         * docs/manual/advanced-metadata.xml:
2216         * docs/manual/advanced-position.xml:
2217         * docs/manual/advanced-schedulers.xml:
2218         * docs/manual/advanced-threads.xml:
2219         * docs/manual/appendix-porting.xml:
2220         * docs/manual/basics-bins.xml:
2221         * docs/manual/basics-bus.xml:
2222         * docs/manual/basics-elements.xml:
2223         * docs/manual/basics-helloworld.xml:
2224         * docs/manual/basics-pads.xml:
2225         * docs/manual/highlevel-components.xml:
2226         * docs/manual/manual.xml:
2227         * docs/manual/thread.fig:
2228           Update (until threads/scheduling) Application Development Manual;
2229           remove GstThread, add GstBus, add simple porting checklist, add
2230           documentation for tag writing, clocks, make all examples until this
2231           part compile and run.
2232         * examples/manual/Makefile.am:
2233           Update from changes to Application Development Manual; add bus
2234           example, remove thread example.
2235
2236 2005-06-28  Wim Taymans  <wim@fluendo.com>
2237
2238         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
2239         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
2240         (gst_bus_source_dispatch):
2241         Add debugging messages.
2242         Make internal methods static.
2243         Handle the case where the bus is flushed in the handler.
2244         
2245         * gst/gstelement.c: (gst_element_get_bus):
2246         Fix refcount in _get_bus();
2247
2248         * gst/gstpipeline.c: (gst_pipeline_change_state),
2249         (gst_pipeline_get_clock_func):
2250         Clock refcounting fixes.
2251         Handle the case where preroll timed out more gracefully.
2252         
2253         * gst/gstsystemclock.c: (gst_system_clock_dispose):
2254         Clean up the internal thread in dispose. This is needed
2255         for subclasses that actually get disposed.
2256         
2257         * gst/schedulers/threadscheduler.c:
2258         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
2259         (gst_thread_scheduler_dispose):
2260         Free thread pool in dispose.
2261
2262 2005-06-28  Andy Wingo  <wingo@pobox.com>
2263
2264         * tests/network-clock-utils.scm (debug, print-event): New utils.
2265
2266         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
2267         (*packet-loss*): Unified loss probability.
2268         (network-time): Report out-of-band events.
2269
2270         * tests/plot-data: Add support for out-of-band events. Hack it
2271         into this script instead of passing it down the pipe; should fix
2272         this later.
2273
2274 2005-06-28  Wim Taymans  <wim@fluendo.com>
2275
2276         * docs/gst/gstreamer.types:
2277         * docs/gst/tmpl/gstbasesrc.sgml:
2278         * docs/gst/tmpl/gstpad.sgml:
2279         Docs fixes.
2280
2281 2005-06-28  Wim Taymans  <wim@fluendo.com>
2282
2283         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2284         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
2285         (gst_proxy_pad_do_fixatecaps):
2286         Correctly proxy the check_pull_range function.
2287
2288 2005-06-28  Andy Wingo  <wingo@pobox.com>
2289
2290         * tests/network-clock.scm: Removed need for slib.
2291         
2292 2005-06-28  Wim Taymans  <wim@fluendo.com>
2293
2294         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
2295         (gst_basesink_preroll_queue_flush):
2296         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
2297         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
2298         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2299         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
2300         (gst_proxy_pad_set_property):
2301         * gst/gstpad.c:
2302         * gst/gstpad.h:
2303         * gst/gstqueue.c: (gst_queue_init):
2304         The deprecated pad loop function is removed now.
2305
2306 2005-06-28  Andy Wingo  <wingo@pobox.com>
2307
2308         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
2309         New parameters, simulate network packet loss.
2310
2311         * tests/network-clock-utils.scm: Initialize the RNG.
2312
2313 2005-06-28  Wim Taymans  <wim@fluendo.com>
2314
2315         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
2316         (gst_basesink_event), (gst_basesink_deactivate):
2317         Flushing the preroll queue always needs to unlock the waiters.
2318
2319 2005-06-28  Edward Hervey  <edward@fluendo.com>
2320
2321         * gst/gstpipeline.c: (gst_pipeline_send_event): 
2322         Wheen a seek was successful on a pipeline, set the stream_time to the
2323         seek offset in order to have a synchronized stream_time.
2324
2325 2005-06-28  Wim Taymans  <wim@fluendo.com>
2326
2327         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2328         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
2329         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
2330         (gst_proxy_pad_do_fixatecaps):
2331         Call wrapper function instead of just calling the function
2332         pointers. This takes care of any locking and whatmore.
2333
2334 2005-06-28  Wim Taymans  <wim@fluendo.com>
2335
2336         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
2337         (gst_pad_pull_range):
2338         * gst/gstpad.h:
2339         CONNECTED -> LINKED.
2340
2341 2005-06-28  Andy Wingo  <wingo@pobox.com>
2342
2343         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
2344         source-munging commit!!!
2345
2346         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
2347         (gst_object_sink): Take gpointer arguments, not GstObject --
2348         avoids casts. Like GLib.
2349
2350         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
2351         activate.
2352
2353 2005-06-27  Andy Wingo  <wingo@pobox.com>
2354
2355         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
2356         remaining buffer.
2357
2358         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
2359         returns a sorted copy of the trace list.
2360         (gst_alloc_trace_print_live): New API, only prints traces with
2361         live objects. Sort the list.
2362         (gst_alloc_trace_print_all): Sort the list.
2363         (gst_alloc_trace_print): Align columns.
2364
2365         * gst/elements/gstttypefindelement.c:
2366         * gst/elements/gsttee.c:
2367         * gst/base/gstbasesrc.c:
2368         * gst/base/gstbasesink.c:
2369         * gst/base/gstbasetransform.c:
2370         * gst/gstqueue.c: Adapt for pad activation changes.
2371
2372         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
2373         sched.
2374         (gst_pipeline_dispose): Drop ref on sched.
2375
2376         * gst/gstpad.c (gst_pad_init): Set the default activate func.
2377         (gst_pad_activate_default): Push mode by default.
2378         (pre_activate_switch, post_activate_switch): New stubs, things to
2379         do before and after switching activation modes on pads.
2380         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
2381         the pad's activate function to choose which mode to activate.
2382         Shortcut on deactivation and call the right function directly.
2383         (gst_pad_activate_pull): New API, (de)activates a pad in pull
2384         mode.
2385         (gst_pad_activate_push): New API, same for push mode.
2386         (gst_pad_set_activate_function) 
2387         (gst_pad_set_activatepull_function) 
2388         (gst_pad_set_activatepush_function): Setters for new API.
2389
2390         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
2391         Trace all miniobjects.
2392         (gst_mini_object_make_writable): Unref the arg if we copy, like
2393         gst_caps_make_writable.
2394
2395         * gst/gstmessage.c (_gst_message_initialize): No trace init.
2396
2397         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
2398         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
2399         Adapt for new pad API.
2400
2401         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
2402
2403         * gst/gstelement.h:
2404         * gst/gstelement.c (gst_element_iterate_src_pads) 
2405         (gst_element_iterate_sink_pads): New API functions.
2406         
2407         * gst/gstelement.c (iterator_fold_with_resync): New utility,
2408         should fold into gstiterator.c in some form.
2409         (gst_element_pads_activate): Simplified via use of fold and
2410         delegation of decisions to gstpad->activate.
2411
2412         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
2413         help in debugging.
2414
2415         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
2416         class once in init, like gstmessage. Didn't run into this issue
2417         but it seems correct. Don't initialize a trace, gstminiobject does
2418         that.
2419
2420         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
2421         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
2422         to the bus.
2423         (assert_live_count): New util function, uses alloc traces to check
2424         cleanup.
2425
2426         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
2427         To be modified when unlink drops the internal pad.
2428
2429 2005-06-27  Wim Taymans  <wim@fluendo.com>
2430
2431         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
2432         (gst_bin_change_state):
2433         Cleanup the get_state() function a little, make sure it
2434         iterates the same set of elements.
2435         Added stub iterate_state_order().
2436
2437 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
2438
2439         * docs/gst/gstreamer-docs.sgml:
2440         * docs/gst/gstreamer-sections.txt:
2441         * docs/gst/gstreamer.types:
2442         * docs/gst/tmpl/gstbasesink.sgml:
2443         * docs/gst/tmpl/gstbasesrc.sgml:
2444         * docs/gst/tmpl/gstbasetransform.sgml:
2445         * docs/gst/tmpl/gstelement.sgml:
2446         * docs/gst/tmpl/gstiterator.sgml:
2447         * gst/base/gstbasesrc.c:
2448         * gst/base/gstbasesrc.h:
2449         * gst/base/gstbasetransform.h:
2450         * gst/gstelement.c:
2451         * gst/gstiterator.h:
2452           adding basetransform and iterator docs
2453
2454 2005-06-27  Andy Wingo  <wingo@pobox.com>
2455
2456         * docs/design/part-activation.txt: Notes on how activation should
2457         work -- not quite implemented yet.
2458
2459 2005-06-25  Wim Taymans  <wim@fluendo.com>
2460
2461         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
2462         At least get the chain function correct, needs more
2463         fixing.
2464
2465 2005-06-25  Wim Taymans  <wim@fluendo.com>
2466
2467         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2468         (gst_basesink_handle_object), (gst_basesink_event),
2469         (gst_basesink_do_sync), (gst_basesink_handle_event),
2470         (gst_basesink_change_state):
2471         * gst/gsttask.h:
2472         Right, two problems here: ghostpads don't take locks and
2473         glib _rec_mutex_lock_full() with depth==0 still locks.
2474         Catch illegal locking and g_warn them.
2475
2476 2005-06-25  Wim Taymans  <wim@fluendo.com>
2477
2478         * check/states/sinks.c: (START_TEST), (gst_object_suite):
2479         Have to check for completion now...
2480
2481 2005-06-25  Wim Taymans  <wim@fluendo.com>
2482
2483         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2484         (gst_basesink_handle_object), (gst_basesink_event),
2485         (gst_basesink_do_sync), (gst_basesink_handle_event),
2486         (gst_basesink_change_state):
2487         * gst/gstpad.h:
2488         Unlock STREAM_LOCK whatever the recursion was.
2489
2490 2005-06-25  Wim Taymans  <wim@fluendo.com>
2491
2492         * gst/base/gstbasesink.c: (gst_basesink_set_property),
2493         (gst_basesink_preroll_queue_empty),
2494         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
2495         (gst_basesink_event), (gst_basesink_do_sync),
2496         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
2497         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
2498         (gst_basesink_change_state):
2499         Reworked the base sink, handle event and buffer serialisation
2500         correctly and removed possible deadlock.
2501         Handle EOS correctly.
2502
2503 2005-06-25  Wim Taymans  <wim@fluendo.com>
2504
2505         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
2506         (gst_pipeline_change_state):
2507         * tools/gst-launch.c: (check_intr), (event_loop), (main):
2508         Allow elements to post EOS in the state change function.
2509         Fix up -launch, make it exit the poll loop when the
2510         pipeline actually changed state.
2511         Fix up warning parsing in -launch.
2512
2513 2005-06-25  Wim Taymans  <wim@fluendo.com>
2514
2515         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
2516         (gst_tee_sink_activate):
2517         Core takes STREAM_LOCK for us now.
2518
2519 2005-06-25  Wim Taymans  <wim@fluendo.com>
2520
2521         * gst/gstelement.c: (gst_element_get_state_func),
2522         (gst_element_set_state):
2523         * gst/gstelement.h:
2524         * gst/gstmessage.c: (gst_message_parse_error),
2525         (gst_message_parse_warning):
2526         Keep track of current target state while performing a state
2527         change so that subclasses can do something interesting.
2528         Fix parsing of warning/error messages when GError is NULL.
2529
2530 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
2531
2532         * docs/gst/Makefile.am:
2533         * docs/gst/gstreamer-docs.sgml:
2534         * docs/gst/gstreamer-sections.txt:
2535         * docs/gst/gstreamer.types:
2536         * docs/gst/tmpl/gstbasesink.sgml:
2537         * docs/gst/tmpl/gstbasesrc.sgml:
2538         * docs/gst/tmpl/gstbin.sgml:
2539         * docs/gst/tmpl/gstcompat.sgml:
2540         * docs/gst/tmpl/gstfakesink.sgml:
2541         * docs/gst/tmpl/gstfakesrc.sgml:
2542         * docs/gst/tmpl/gstfilesink.sgml:
2543         * docs/gst/tmpl/gstfilesrc.sgml:
2544         * docs/gst/tmpl/gstindex.sgml:
2545         * docs/manual/appendix-quotes.xml:
2546         * gst/base/gstbasesrc.h:
2547         * gst/elements/gstfakesrc.h:
2548         * gst/gstmessage.h:
2549           start pulling in base classes and elements in our docs
2550
2551 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
2552
2553         * docs/gst/Makefile.am:
2554         * docs/libs/Makefile.am:
2555           fixed make distcheck with gtk-doc 1.3
2556
2557 2005-06-23  Wim Taymans  <wim@fluendo.com>
2558
2559         * gst/gstelement.c: (gst_element_get_state_func),
2560         (gst_element_set_state), (gst_element_change_state):
2561         When the state did not change, also report NO_PREROLL
2562         when it matters.
2563
2564 2005-06-23  Wim Taymans  <wim@fluendo.com>
2565
2566         * gst/gstpad.c: (gst_pad_event_default):
2567         * gst/gstqueue.c: (gst_queue_loop):
2568         No unsafe task pausing please.
2569
2570 2005-06-23  Wim Taymans  <wim@fluendo.com>
2571
2572         * gst/schedulers/threadscheduler.c:
2573         (gst_thread_scheduler_task_start),
2574         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
2575         Ref the task before pushing it on the threadpool. This
2576         makes sure that we have a ref when the threadfunction is
2577         actually called.
2578
2579 2005-06-23  Andy Wingo  <wingo@pobox.com>
2580
2581         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
2582         offset is greater than the file's size.
2583
2584         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
2585         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
2586         * gst/gstobject.c (gst_object_class_init): Make the class lock
2587         recursive. Wim won't let me drop deep_notify. Decodebin works
2588         again, whoopdy doo.
2589
2590         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
2591         internal pad, and hacks accordingly. Doesn't do it on the target
2592         pad because we change its caps. Probably catches all cases of
2593         interest tho.
2594         (gst_ghost_pad_set_property): Connect to notify::caps as
2595         appropritate.
2596
2597         * tests/network-clock.scm (plot-simulation): Pipe data to the
2598         elite python skript.
2599
2600         * tests/network-clock-utils.scm (define-parameter): New macro,
2601         defines a parameter that can be set via the command line.
2602         (set-parameter!, parse-parameter-arguments): Command line args
2603         parser.
2604
2605         * tests/plot-data: Simple matplotlib-based plotter, takes input on
2606         stdin.
2607
2608 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
2609
2610         * gst/elements/gsttypefindelement.c:
2611         (gst_type_find_element_handle_event):
2612           Don't restart typefinding on a discont.
2613         * gst/gstelement.c: (gst_element_set_state):
2614           Debug spelling fix.
2615         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
2616           Allow changing mode of an active pad.
2617           Debug output fixes.
2618         * gst/registries/gstlibxmlregistry.c: (load_feature):
2619           Don't cast a static pad template to a normal pad template.
2620
2621 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
2622
2623         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2624         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2625           remove gst_strtoll completely, since it didn't actually do
2626           anything more than what g_ascii_strtoull already does.
2627           check for range errors when deserializing
2628           do a cast for the unsigned cases; but further fixing needs
2629           a decision on what the interpretation of "(int)" and
2630           deserialization should be for values that fall outside the
2631           type's boundaries (ie, refuse, or interpret as casting)
2632
2633 2005-06-23  Wim Taymans  <wim@fluendo.com>
2634
2635         * check/Makefile.am:
2636         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
2637         * docs/design/part-live-source.txt:
2638         * docs/design/part-states.txt:
2639         * gst/base/gstbasesrc.c: (gst_basesrc_init),
2640         (gst_basesrc_set_live), (gst_basesrc_is_live),
2641         (gst_basesrc_get_range), (gst_basesrc_activate),
2642         (gst_basesrc_change_state):
2643         * gst/base/gstbasesrc.h:
2644         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2645         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
2646         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
2647         * gst/gstelement.c: (gst_element_get_state_func),
2648         (gst_element_set_state):
2649         * gst/gstelement.h:
2650         * gst/gsttypes.h:
2651         * tools/gst-launch.c: (event_loop), (main):
2652         Added support for live sources and other elements that
2653         cannot do preroll.
2654         Updated design docs, added live-source design doc.
2655         Implemented live source functionality in basesrc
2656         Fix error condition in _bin_get_state()
2657         Implement live source handling in -launch.
2658         Added check for live sources.
2659         Fixed case in GstBin where elements were changed state
2660         multiple times.
2661
2662
2663 2005-06-23  Andy Wingo  <wingo@pobox.com>
2664
2665         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
2666         borken refcounting.
2667
2668         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
2669         gst_caps_replace takes care of this for us.
2670
2671         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
2672         gst_pad_set_caps on the target, not just its setcaps() function.
2673
2674         * tests/network-clock.scm: 
2675         * tests/network-clock-utils.scm: A network clock simulator.
2676         Something of an algorithmic testbed before doing something in C.
2677
2678 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2679
2680         * check/Makefile.am:
2681         * check/gst/capslist.h:
2682           copy over from 0.8, and add two with bitmasks specified with
2683           (int) 0xFF...
2684         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2685           add test to parse everything from capslist.h
2686         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
2687         (main):
2688           add test for structure deserialization
2689         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2690           add tests for deserialization of strings to int types
2691         * gst/gststructure.c: (gst_structure_nth_field_name):
2692         * gst/gststructure.h:
2693           add a way to get the name of a field referenced by index
2694         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2695           instead of checking if the resulting long long lies between
2696           min and max, we check if the long long would fit into
2697           a number of bytes for the final type.
2698           This fixes cases where a string represents 2^32 - 1, which
2699           when cast to int would be the (valid) -1, but is bigger than
2700           G_MAXINT
2701
2702 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2703
2704         * gst/parse/grammar.y:
2705           add a log line for type deserialization
2706
2707 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2708
2709         * check/gst/gstvalue.c: (START_TEST):
2710         * gst/gstvalue.c: (gst_value_deserialize):
2711           return long long, not int, so gint64 deserialization actually
2712           works.  Is there any flag that makes the compiler check this ?
2713           Fixes #308559
2714
2715 2005-06-22  Wim Taymans  <wim@fluendo.com>
2716
2717         * gst/gstbuffer.h:
2718         Added convenience macros for setting buffers in GValue.
2719
2720 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2721
2722         * check/gst/.cvsignore:
2723         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2724           add a test deserializing int64, and comment part out because
2725           it fails, yay !
2726
2727 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2728
2729         * check/Makefile.am:
2730         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
2731         * testsuite/Makefile.am:
2732         * testsuite/caps/Makefile.am:
2733         * testsuite/caps/value_serialize.c:
2734         * testsuite/test_gst_init.c:
2735           move a value_serialize test over
2736
2737 2005-06-20  Wim Taymans  <wim@fluendo.com>
2738
2739         * gst/gstpad.c:
2740         Small doc updates.
2741         
2742         * gst/gstvalue.c: (gst_value_compare_buffer),
2743         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
2744         (gst_value_compare_flags), (gst_value_serialize_flags),
2745         (gst_value_deserialize_flags), (_gst_value_initialize):
2746         Fix serialisation of buffers, they are not boxed types anymore
2747
2748 2005-06-20  Wim Taymans  <wim@fluendo.com>
2749
2750         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2751         Testcase to show error in buffer-on-caps serialisation.
2752
2753 2005-06-20  Andy Wingo  <wingo@pobox.com>
2754
2755         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
2756         will be adding to later.
2757
2758         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
2759         if its socks fill with rocks.
2760         (gst_system_clock_obtain): Set the name on object construction.
2761         Avoid double-checked locking.
2762
2763 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
2764
2765         * gst/gsturi.c: (gst_element_make_from_uri):
2766           Fix potential endless loop.
2767
2768 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2769
2770         * check/Makefile.am:
2771           add gsttag
2772         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
2773         (main):
2774           move over from testsuite dir and clean up
2775         * configure.ac:
2776         * gst/gsttag.c:
2777         * testsuite/Makefile.am:
2778         * testsuite/tags/.cvsignore:
2779         * testsuite/tags/Makefile.am:
2780         * testsuite/tags/merge.c:
2781           remove testsuite/tags
2782
2783 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2784
2785         * docs/gst/gstreamer-sections.txt:
2786         * docs/gst/tmpl/gstenumtypes.sgml:
2787         * win32/gstenumtypes.c:
2788           clean up documentation build a little
2789
2790 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2791
2792         * check/gstcheck.h:
2793           add macros for checking refcounts on objects and caps
2794         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
2795           add some more unit tests
2796         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
2797         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
2798           fix leaked refcounts (I hope :)) so unittest works
2799         * gst/gstpad.h:
2800           whitespace removal
2801
2802 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2803
2804         * configure.ac: back to HEAD
2805
2806 === release 0.9.1 ===
2807
2808 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2809
2810         * NEWS:
2811         * RELEASE:
2812           updated
2813
2814 2005-06-17  Andy Wingo  <wingo@pobox.com>
2815
2816         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
2817         assert; it's always possible that the pad gets deactivated in
2818         between the checks in gstpad.c and the implementation. Rely on
2819         finish_preroll() to return a FLUSHING or similar instead of on the
2820         assert.
2821         
2822         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
2823         clock and post an EOS message if we come out of finish_preroll in
2824         the playing state.
2825
2826 2005-06-16  David Schleef  <ds@schleef.org>
2827
2828         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
2829         (gst_capsfilter_set_property): Allow NULL as possible value
2830         for filter_caps property, indicating GST_CAPS_ANY.
2831
2832 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2833
2834         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
2835           fix debug output
2836         * gst/schedulers/Makefile.am:
2837           use libgst prefix
2838         * gstreamer.spec.in:
2839           fix spec for it
2840
2841 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2842
2843         * gstreamer.spec.in:
2844           clean up
2845
2846 2005-06-08  Andy Wingo  <wingo@pobox.com>
2847
2848         * gst/gstutils.c: RPAD fixes all around.
2849         (gst_element_link_pads): Refcounting fixes.
2850
2851         * tools/gst-inspect.c:
2852         * tools/gst-xmlinspect.c:
2853         * parse/grammar.y:
2854         * gst/base/gsttypefindhelper.c:
2855         * gst/base/gstbasesink.c:
2856         * gst/gstqueue.c: RPAD fixes.
2857
2858         * gst/gstghostpad.h:
2859         * gst/gstghostpad.c: New ghost pad implementation as full proxy
2860         pads. The tricky thing is they provide both source and sink
2861         interfaces, since they proxy the internal pad for the external
2862         pad, and vice versa. Implement with lower-level ProxyPad objects,
2863         with the interior proxy pad as a child of the exterior ghost pad.
2864         Should write a doc on this.
2865         
2866         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
2867         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
2868         gst_object API.
2869         
2870         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
2871         pads are real pads. No ghost pads in this file. Not documenting
2872         the myriad s/RPAD/PAD/ and REALIZE fixes.
2873         (gst_pad_class_init): Add properties for "direction" and
2874         "template". Both are construct-only, so they can't change during
2875         the life of the pad. Fixes properly deriving from GstPad.
2876         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
2877         derived objects, just set properties when creating the objects via
2878         g_object_new.
2879         (gst_pad_get_parent): Implement as a function, return NULL if the
2880         parent is not an element.
2881         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
2882         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
2883         
2884         * gst/gstobject.c (gst_object_class_init): Make name a construct
2885         property. Don't set it in the object init.
2886
2887         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
2888         with UNKNOWN direction.
2889         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
2890         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
2891         (gst_element_remove_pad): Remove ghost-pad special cases.
2892         (gst_element_pads_activate): Remove rpad cruft.
2893
2894         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
2895         catch the pad's-parent-not-an-element case.
2896
2897         * gst/gst.h: Include gstghostpad.h.
2898
2899         * gst/gst.c (init_post): No more real, ghost pads.
2900
2901         * gst/Makefile.am: Add gstghostpad.[ch].
2902
2903         * check/Makefile.am:
2904         * check/gst/gstbin.c:
2905         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
2906         into a bin creates ghost pads, and that the refcounts are right.
2907         Partly moved from gstbin.c.
2908
2909 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2910
2911         * check/gst-libs/.cvsignore:
2912         * check/gst/.cvsignore:
2913         * check/pipelines/.cvsignore:
2914           ignore more
2915         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
2916         (START_TEST), (cleanup_suite), (main):
2917           add some tests related to cleanup after running pipelines
2918
2919 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2920
2921         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
2922           add a testsuite for GstBuffer
2923
2924 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2925
2926         * gst/gstminiobject.h:
2927           add defines for accessing the refcount
2928
2929 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
2930
2931         * Makefile.am: added support for html unit test coverage reports
2932
2933 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
2934
2935         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
2936           Free existing caps if the capsfilter changes. Add a FIXME about
2937           setting those caps on the pads.
2938
2939         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
2940           Before adding a ghost pad to a parent bin, check that there isn't
2941           already one for the element on the bin. Prevents infinite recursion
2942           when using decodebin in parse pipelines. Andy says he'll rewrite the
2943           way this works anyway, so ignore the hack.
2944
2945 2005-06-02  Andy Wingo  <wingo@pobox.com>
2946
2947         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
2948         file size, pass it on to the type find helper.
2949
2950         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
2951         segment_start and segment_end properly according to the seek
2952         method. Segment_end is still a bit flaky because offset can be
2953         negative for CUR and END cases, but it takes -1 as an "unset"
2954         value.
2955
2956 2005-06-02  Wim Taymans  <wim@fluendo.com>
2957
2958         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
2959         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
2960         (gst_basesink_activate):
2961         * gst/base/gstbasesink.h:
2962         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2963         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2964         (gst_pad_query), (gst_pad_start_task):
2965         * gst/gstpad.h:
2966         * gst/gstqueue.c: (gst_queue_bufferalloc),
2967         (gst_queue_handle_sink_event), (gst_queue_chain):
2968         Bufferalloc: return GstFlowReturn to more accuratly report
2969         why allocation failed.
2970
2971 2005-06-02  Wim Taymans  <wim@fluendo.com>
2972
2973         * gst/gstpipeline.c: (gst_pipeline_send_event):
2974         Take snapshot of state without blocking.
2975
2976 2005-06-02  Wim Taymans  <wim@fluendo.com>
2977
2978         * docs/design/part-TODO.txt:
2979         * docs/design/part-caps.txt:
2980         * docs/design/part-clocks.txt:
2981         * docs/design/part-negotiation.txt:
2982         * docs/design/part-preroll.txt:
2983         Small doc updates 
2984
2985 2005-05-30  Wim Taymans  <wim@fluendo.com>
2986
2987         * gst/elements/gstidentity.c: (gst_identity_event),
2988         (gst_identity_transform), (gst_identity_get_property):
2989         Protect last_message property as it is accessed from
2990         multiple threads.
2991
2992 2005-05-30  Wim Taymans  <wim@fluendo.com>
2993
2994         * gst/gstelement.c: (gst_element_init),
2995         (gst_element_pads_activate), (gst_element_change_state):
2996         Slicker pad activation code.
2997
2998 2005-05-30  Wim Taymans  <wim@fluendo.com>
2999
3000         * gst/Makefile.am:
3001         * gst/gstelement.h:
3002         * gst/gstelementfactory.h:
3003         * gst/gsttypes.h:
3004         Move elementfactory methods to separate .h file.
3005
3006 2005-05-30  Wim Taymans  <wim@fluendo.com>
3007
3008         * docs/design/part-overview.txt:
3009         * gst/gstsystemclock.h:
3010         Small typo fixes, doc updates.
3011
3012 2005-05-30  Wim Taymans  <wim@fluendo.com>
3013
3014         * gst/gst.c: (gst_init_get_popt_table), (init_post),
3015         (init_popt_callback):
3016         Remove cpu-opt flag.
3017
3018 2005-05-30  Wim Taymans  <wim@fluendo.com>
3019
3020         * gst/gstbuffer.c: (gst_subbuffer_finalize),
3021         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
3022         * gst/gstbuffer.h:
3023         Avoid typechecking in places where not needed.
3024         Added accessor for malloc_data.
3025
3026 2005-05-30  Wim Taymans  <wim@fluendo.com>
3027
3028         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
3029         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
3030         (gst_pad_configure_sink), (gst_pad_configure_src),
3031         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
3032         (gst_pad_start_task):
3033         Propagate errors from _set_caps() in configure_src/sink
3034         functions instead of returning TRUE.
3035         FLUSH events can travel up and downstream
3036
3037
3038 2005-05-30  Wim Taymans  <wim@fluendo.com>
3039
3040         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
3041         (gst_basesink_activate):
3042         Handle EOS in preroll.
3043
3044 2005-05-30  Wim Taymans  <wim@fluendo.com>
3045
3046         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
3047         (gst_queue_loop), (gst_queue_handle_src_event):
3048         Remove old pieces of code
3049         Flushing the queue in an upstream event is a very bad idea.
3050
3051 2005-05-26  Andy Wingo  <wingo@pobox.com>
3052
3053         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
3054         gst_value_set_mini_object so as to add a ref on the object (which
3055         will be removed when the value is unset).
3056
3057         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
3058         arg type in ::handoff.
3059
3060         * gst/gstelement.c (gst_element_change_state): Also deactivate
3061         pads in READY->NULL, just in case the element didn't make it to
3062         PAUSED. Wingo tested, Wim approved.
3063
3064 2005-05-26  Wim Taymans  <wim@fluendo.com>
3065
3066         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3067         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
3068         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
3069         A flushing pad cannot be used to alloc_buffer from.
3070
3071 2005-05-26  Wim Taymans  <wim@fluendo.com>
3072
3073         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
3074         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
3075         (gst_bus_source_dispatch), (gst_bus_source_finalize),
3076         (gst_bus_create_watch), (gst_bus_add_watch_full):
3077         * gst/gstbus.h:
3078         Implement a real GSource and use g_main_context_wakeup() to
3079         signal new messages instead of the socketpair.
3080
3081 2005-05-25  Wim Taymans  <wim@fluendo.com>
3082
3083         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
3084         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
3085         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3086         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
3087         (gst_pad_send_event), (gst_pad_start_task):
3088         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
3089         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
3090         (gst_queue_sink_activate), (gst_queue_src_activate),
3091         (gst_queue_change_state):
3092         * gst/gstqueue.h:
3093         Fix state changes for non sinks. We now change sinks, then elements
3094         with unconnected srcpads, then the rest.
3095         More efficient queue unlocking in flush and state changes.
3096         Set the pad activate mode even if it does not have an activate
3097         function.
3098
3099 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3100
3101         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
3102           Don't go in pull mode for non-seekable sources.
3103         * gst/elements/gsttypefindelement.h:
3104         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3105         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
3106         (free_entry), (stop_typefinding),
3107         (gst_type_find_element_handle_event), (find_peek),
3108         (gst_type_find_element_chain), (do_pull_typefind),
3109         (gst_type_find_element_change_state):
3110           Allow typefinding (w/o seeking) in push-mode, simplified version
3111           of what was in 0.8.
3112         * gst/gstutils.c: (gst_buffer_join):
3113         * gst/gstutils.h:
3114           gst_buffer_join() from 0.8.
3115
3116 2005-05-25  Wim Taymans  <wim@fluendo.com>
3117
3118         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3119         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
3120         (gst_pad_send_event), (gst_pad_start_task):
3121         Disable attempt at mode switching until it is figured out.
3122
3123 2005-05-25  Wim Taymans  <wim@fluendo.com>
3124
3125         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
3126         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
3127         (gst_basesink_finish_preroll), (gst_basesink_chain),
3128         (gst_basesink_loop), (gst_basesink_activate),
3129         (gst_basesink_change_state):
3130         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
3131         (gst_basesrc_get_range), (gst_basesrc_loop),
3132         (gst_basesrc_activate):
3133         * gst/elements/gsttee.c: (gst_tee_sink_activate):
3134         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
3135         (gst_real_pad_init), (gst_real_pad_set_property),
3136         (gst_real_pad_get_property), (gst_pad_set_active),
3137         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
3138         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
3139         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
3140         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
3141         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3142         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
3143         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
3144         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
3145         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
3146         (gst_pad_stop_task):
3147         * gst/gstpad.h:
3148         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
3149         (gst_queue_loop), (gst_queue_src_activate):
3150         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
3151         (gst_task_get_state):
3152         * gst/gsttask.h:
3153         * gst/schedulers/threadscheduler.c:
3154         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
3155         Implement gst_pad_pause/start/stop_task(), take STREAM lock
3156         in task function.
3157         Remove ACTIVE pad flag, use FLUSHING everywhere
3158         Added _pad_chain(), _pad_get_range() to call chain/getrange 
3159         functions.
3160         Add locks around IS_FLUSHING when reading.
3161         Take STREAM lock in chain(), get_range() functions so plugins
3162         don't need to take it anymore.
3163         
3164
3165
3166 2005-05-25  Wim Taymans  <wim@fluendo.com>
3167
3168         * tools/gst-launch.c: (event_loop):
3169         Unref message after using its contents instead of
3170         before.
3171
3172 2005-05-24  Wim Taymans  <wim@fluendo.com>
3173
3174         * docs/design/draft-ghostpads.txt:
3175         * docs/design/draft-push-pull.txt:
3176         * docs/design/draft-query.txt:
3177         * docs/design/part-overview.txt:
3178         Docs updates, added general overview doc.
3179
3180 2005-05-21  David Schleef  <ds@schleef.org>
3181
3182         * docs/gst/tmpl/old/GstBin.sgml:
3183         * docs/gst/tmpl/old/GstBuffer.sgml:
3184         * docs/gst/tmpl/old/GstCaps.sgml:
3185         * docs/gst/tmpl/old/GstClock.sgml:
3186         * docs/gst/tmpl/old/GstCompat.sgml:
3187         * docs/gst/tmpl/old/GstData.sgml:
3188         * docs/gst/tmpl/old/GstElement.sgml:
3189         * docs/gst/tmpl/old/GstEvent.sgml:
3190         * docs/gst/tmpl/old/GstIndex.sgml:
3191         * docs/gst/tmpl/old/GstStructure.sgml:
3192         * docs/gst/tmpl/old/GstTag.sgml:
3193         * docs/gst/tmpl/old/cothreads.sgml:
3194         * docs/gst/tmpl/old/cothreads_compat.sgml:
3195         * docs/gst/tmpl/old/gettext.sgml:
3196         * docs/gst/tmpl/old/gobject2gtk.sgml:
3197         * docs/gst/tmpl/old/grammar.tab.sgml:
3198         * docs/gst/tmpl/old/gst-i18n-app.sgml:
3199         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
3200         * docs/gst/tmpl/old/gst_private.sgml:
3201         * docs/gst/tmpl/old/gstaggregator.sgml:
3202         * docs/gst/tmpl/old/gstarch.sgml:
3203         * docs/gst/tmpl/old/gstatomic_impl.sgml:
3204         * docs/gst/tmpl/old/gstbufferstore.sgml:
3205         * docs/gst/tmpl/old/gstdata_private.sgml:
3206         * docs/gst/tmpl/old/gstdisksink.sgml:
3207         * docs/gst/tmpl/old/gstdisksrc.sgml:
3208         * docs/gst/tmpl/old/gstelementfactory.sgml:
3209         * docs/gst/tmpl/old/gstextratypes.sgml:
3210         * docs/gst/tmpl/old/gstfakesink.sgml:
3211         * docs/gst/tmpl/old/gstfakesrc.sgml:
3212         * docs/gst/tmpl/old/gstfdsink.sgml:
3213         * docs/gst/tmpl/old/gstfdsrc.sgml:
3214         * docs/gst/tmpl/old/gstfilesink.sgml:
3215         * docs/gst/tmpl/old/gstfilesrc.sgml:
3216         * docs/gst/tmpl/old/gsthttpsrc.sgml:
3217         * docs/gst/tmpl/old/gstidentity.sgml:
3218         * docs/gst/tmpl/old/gstindexfactory.sgml:
3219         * docs/gst/tmpl/old/gstmarshal.sgml:
3220         * docs/gst/tmpl/old/gstmd5sink.sgml:
3221         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
3222         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
3223         * docs/gst/tmpl/old/gstpadtemplate.sgml:
3224         * docs/gst/tmpl/old/gstpipefilter.sgml:
3225         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
3226         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
3227         * docs/gst/tmpl/old/gstshaper.sgml:
3228         * docs/gst/tmpl/old/gstspider.sgml:
3229         * docs/gst/tmpl/old/gstspideridentity.sgml:
3230         * docs/gst/tmpl/old/gststatistics.sgml:
3231         * docs/gst/tmpl/old/gsttee.sgml:
3232         * docs/gst/tmpl/old/gsttimecache.sgml:
3233         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
3234         * docs/gst/tmpl/old/gstxmlregistry.sgml:
3235         * docs/gst/tmpl/old/gthread-cothreads.sgml:
3236         * docs/gst/tmpl/old/types.sgml:
3237           I didn't intend to add these or check them in.
3238
3239 2005-05-19  David Schleef  <ds@schleef.org>
3240
3241         * configure.ac: Use -no-common everywhere.  In a sane world, it
3242           would be the default in libtool, because without it, you can't
3243           build DLLs on Windows.
3244         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
3245         * docs/gst/gstreamer-sections.txt:
3246         * docs/gst/tmpl/gstcpu.sgml:
3247         * docs/gst/tmpl/gstdata.sgml:
3248         * docs/gst/tmpl/gstthread.sgml:
3249
3250 2005-05-19  David Schleef  <ds@schleef.org>
3251
3252         * gst/gstminiobject.c: (gst_value_set_mini_object),
3253         (gst_value_take_mini_object), (gst_value_get_mini_object):
3254         * gst/gstminiobject.h: Add GValue set/get functions.
3255
3256 2005-05-19  Wim Taymans  <wim@fluendo.com>
3257
3258         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
3259         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
3260         (gst_subbuffer_init), (gst_buffer_is_span_fast):
3261         * gst/gstbuffer.h:
3262         * gst/gstbus.c: (gst_bus_post):
3263         * gst/gstelement.c: (gst_element_get_random_pad):
3264         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
3265         Make subbufer unref the parent in finalize.
3266         some more debugging info.
3267
3268
3269 2005-05-19  Wim Taymans  <wim@fluendo.com>
3270
3271         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3272         (gst_basesink_init), (gst_basesink_finalize),
3273         (gst_basesink_activate), (gst_basesink_change_state):
3274         Don't free preroll queue too early.
3275
3276 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3277
3278         * gst/Makefile.am:
3279         * gst/ROADMAP:
3280           Hi, I'm outdated. Please shoot me.
3281
3282 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3283
3284         * gst/gstpipeline.c: (gst_pipeline_send_event):
3285           Do not access variables after they have been deleted.
3286
3287 2005-05-19  Wim Taymans  <wim@fluendo.com>
3288
3289         * tools/gst-inspect.c: (print_plugin_features):
3290         A plugin feature does unfortunatly not use the
3291         object name yet...
3292
3293 2005-05-18  Wim Taymans  <wim@fluendo.com>
3294
3295         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
3296         Port _span() functions to new subbuffers.
3297
3298 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3299
3300         * gst/gstbin.c: (gst_bin_add_func):
3301           Fix clock settery in bins when adding kids after the clock has
3302           been selected.
3303
3304 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3305
3306         * gst/elements/gstidentity.c: (gst_identity_class_init):
3307           Workaround until signals support GstMiniObject.
3308
3309 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
3310
3311         * gst/gstbuffer.c:
3312         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
3313
3314 2005-05-18  Wim Taymans  <wim@fluendo.com>
3315
3316         * gst/base/Makefile.am:
3317         * gst/base/gstadapter.c: (gst_adapter_base_init),
3318         (gst_adapter_class_init), (gst_adapter_init),
3319         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
3320         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
3321         (gst_adapter_flush), (gst_adapter_available),
3322         (gst_adapter_available_fast):
3323         * gst/base/gstadapter.h:
3324         Ported and added adapter to the base classes.
3325
3326 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3327
3328         * gst/gst.c:
3329         * gst/gstmessage.c:
3330           Make sure the class is reffed/unreffed once before threads can be
3331           used.  Fixes #304551.
3332
3333 2005-05-17  Wim Taymans  <wim@fluendo.com>
3334
3335         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
3336         (gst_basesink_chain_unlocked), (gst_basesink_activate):
3337         * gst/gstminiobject.c: (gst_mini_object_get_type),
3338         (gst_mini_object_free):
3339         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
3340         (gst_pad_push), (gst_pad_push_event):
3341         * gst/gstqueue.c: (gst_queue_change_state):
3342         Don't queue buffers in basesink when we are flushing.
3343         Unref buffer when flushing in basesink.
3344         Flush queue when going to READY
3345         Unref buffer when _push() returns an error.
3346         Don't free MiniObject instance when refcount is incremented
3347         in _finalize() so that we can recover objects.
3348
3349 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
3350
3351         * docs/manual/advanced-schedulers.xml:
3352         * docs/manual/appendix-checklist.xml:
3353         * docs/pwg/advanced-clock.xml:
3354         * docs/pwg/advanced-interfaces.xml:
3355         * docs/pwg/advanced-request.xml:
3356         * docs/pwg/advanced-types.xml:
3357         * docs/pwg/intro-preface.xml:
3358         * examples/plugins/example.c: (gst_example_get_type),
3359         (gst_example_class_init), (gst_example_chain),
3360         (gst_example_set_property), (gst_example_get_property),
3361         (gst_example_change_state), (plugin_init):
3362         * examples/plugins/example.h:
3363           small doc fixes
3364
3365 2005-05-17  Wim Taymans  <wim@fluendo.com>
3366
3367         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
3368         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
3369         * gst/gstqueue.c: (gst_queue_change_state):
3370         Clear queue when going to READY.
3371         Remove IN_SETCAPS flag too.
3372
3373 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
3374
3375         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
3376           Remove implicit cast from gboolean to GstElementStateReturn;
3377           make sure we still return failure in paused => ready case if
3378           the parent class fails to change state and our own stop 
3379           vfunc succeeds.
3380
3381 2005-05-17  Wim Taymans  <wim@fluendo.com>
3382
3383         * tools/gst-launch.c: (event_loop):
3384         Message was unreffed too soon.
3385
3386 2005-05-16  Andy Wingo  <wingo@pobox.com>
3387
3388         * gst/gstbin.c (sink_iterator_filter): Err... um...
3389
3390         * check/gst/gstbin.c (test_ghost_pads): New test for the
3391         ghosting-if-elements-not-in-same-bin behavior.
3392
3393 2005-05-16  David Schleef  <ds@schleef.org>
3394
3395         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
3396         accessing refcount directly.
3397
3398 2005-05-15  David Schleef  <ds@schleef.org>
3399
3400         * check/Makefile.am: remove GstData checks
3401         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
3402         * gst/Makefile.am: add miniobject, remove data
3403         * gst/gst.h: add miniobject, remove data
3404         * gst/gstdata.c: remove
3405         * gst/gstdata.h: remove
3406         * gst/gstdata_private.h: remove
3407         * gst/gsttypes.h: remove GstEvent and GstMessage
3408         * gst/gstelement.c: (gst_element_post_message): fix for API changes
3409         * gst/gstmarshal.list: change BOXED -> OBJECT
3410
3411         Implement GstMiniObject.
3412         * gst/gstminiobject.c:
3413         * gst/gstminiobject.h:
3414
3415         Modify to be subclasses of GstMiniObject.
3416         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
3417         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
3418         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
3419         (gst_subbuffer_get_type), (gst_subbuffer_init),
3420         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
3421         (gst_buffer_span):
3422         * gst/gstbuffer.h:
3423         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
3424         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
3425         (_gst_event_copy), (gst_event_new):
3426         * gst/gstevent.h:
3427         * gst/gstmessage.c: (_gst_message_initialize),
3428         (gst_message_get_type), (gst_message_class_init),
3429         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
3430         (gst_message_new), (gst_message_new_error),
3431         (gst_message_new_warning), (gst_message_new_tag),
3432         (gst_message_new_state_changed), (gst_message_new_application):
3433         * gst/gstmessage.h:
3434         * gst/gstprobe.c: (gst_probe_perform),
3435         (gst_probe_dispatcher_dispatch):
3436         * gst/gstprobe.h:
3437         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
3438         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
3439         (_gst_query_copy), (gst_query_new):
3440
3441         Update elements for GstData -> GstMiniObject changes
3442         * gst/gstquery.h:
3443         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
3444         (gst_queue_chain), (gst_queue_loop):
3445         * gst/elements/gstbufferstore.c:
3446         (gst_buffer_store_add_buffer_func),
3447         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
3448         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3449         (gst_fakesink_render):
3450         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
3451         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
3452         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
3453         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
3454         (gst_filesrc_create_read):
3455         * gst/elements/gstidentity.c: (gst_identity_class_init):
3456         * gst/elements/gsttypefindelement.c:
3457         (gst_type_find_element_src_event), (free_entry_buffers),
3458         (gst_type_find_element_handle_event):
3459         * libs/gst/dataprotocol/dataprotocol.c:
3460         (gst_dp_header_from_buffer):
3461         * libs/gst/dataprotocol/dataprotocol.h:
3462         * libs/gst/dataprotocol/dp-private.h:
3463
3464 2005-05-15  David Schleef  <ds@schleef.org>
3465
3466         * gst/elements/gstelements.c: Don't include headers that were
3467         just removed.
3468
3469 2005-05-15  David Schleef  <ds@schleef.org>
3470
3471         * gst/elements/Makefile.am: Remove some elements that don't
3472         need to be in the core (or even exist at all).
3473         * gst/elements/gstaggregator.c:
3474         * gst/elements/gstaggregator.h:
3475         * gst/elements/gstmd5sink.c:
3476         * gst/elements/gstmd5sink.h:
3477         * gst/elements/gstmultifilesrc.c:
3478         * gst/elements/gstmultifilesrc.h:
3479         * gst/elements/gstpipefilter.c:
3480         * gst/elements/gstpipefilter.h:
3481         * gst/elements/gstshaper.c:
3482         * gst/elements/gstshaper.h:
3483         * gst/elements/gststatistics.c:
3484         * gst/elements/gststatistics.h:
3485         * po/POTFILES.in: Remove above files.
3486
3487 2005-05-14  Andy Wingo  <wingo@pobox.com>
3488
3489         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
3490         so as to get the refs right.
3491         (sink_iterator_filter): New function, wraps bin_element_is_sink,
3492         unreffing objects that don't pass the filter.
3493
3494         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
3495         gst_element_set_bus.
3496         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
3497         normal cases, this will destroy the bus.
3498
3499         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
3500         object.
3501
3502         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
3503         has no sinks.
3504
3505 2005-05-13  Andy Wingo  <wingo@pobox.com>
3506
3507         * gst/gstutils.c (gst_element_link_pads): Instead of calling
3508         gst_pad_link, call pad_link_maybe_ghosting,
3509         (pad_link_maybe_ghosting): Links pads, making sure that the
3510         elements being linked are in the same bin.
3511         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
3512         Helpers for pad_link_maybe_ghosting.
3513
3514 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3515
3516         * configure.ac:
3517           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
3518
3519 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3520
3521         * docs/design/part-element-source.txt:
3522           Mention GstPushSrc
3523
3524 2005-05-12  Wim Taymans  <wim@fluendo.com>
3525
3526         * gst/base/gstbasesink.c: (gst_basesink_init),
3527         (gst_basesink_activate):
3528         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
3529         (gst_basesrc_is_seekable):
3530         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
3531         (bin_element_is_sink), (gst_bin_change_state):
3532         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3533         * gst/gstelement.h:
3534         Identify sinks by their flag to avoid overly complicated
3535         checks (fow now).
3536         Do state changes even for elements not reachable from the
3537         sinks.
3538         BaseSink is a sink now :)
3539         Some more debugging info in the basesrc.
3540
3541
3542 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3543
3544         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
3545           Implement _query on a bin, similar to _send_event.
3546
3547 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
3548
3549         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
3550           Discont event offset format should be GST_FORMAT_BYTES,
3551           not GST_FORMAT_TIME.
3552
3553 2005-05-12  Wim Taymans  <wim@fluendo.com>
3554
3555         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
3556         Same fix as Ronald's but without the signal. 
3557
3558 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3559
3560         * gst/gstutils.c: (gst_element_query_position):
3561           No, an element is not a pad.
3562
3563 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3564
3565         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
3566         (gst_bin_get_state):
3567           If a child is removed from a bin while we remove the child from
3568           the bin and while we're retrieving its state, signal this to the
3569           get_state function so we abort the wait (instead of waiting for
3570           a timeout) and can immediately re-iterate over all other elements.
3571
3572 2005-05-12  Wim Taymans  <wim@fluendo.com>
3573
3574         * gst/base/Makefile.am:
3575         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
3576         (gst_basesrc_start):
3577         * gst/base/gstbasesrc.h:
3578         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
3579         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
3580         (gst_pushsrc_init), (gst_pushsrc_create):
3581         * gst/base/gstpushsrc.h:
3582         Added is_seekable to BaseSrc
3583         Added simple PushSrc.
3584
3585 2005-05-11  Wim Taymans  <wim@fluendo.com>
3586
3587         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3588         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3589         (gst_element_link_pads), (gst_element_query_position),
3590         (gst_element_query_convert), (intersect_caps_func),
3591         (gst_pad_query_position), (gst_pad_query_convert):
3592         Fix refcounting in utils function.
3593         No point in trying to activate a pad when it's added, it could
3594         be added from the state change function and then we deadlock, the
3595         element has to decide what to do.
3596
3597 2005-05-10  Andy Wingo  <wingo@pobox.com>
3598
3599         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
3600         *all* the arguments.
3601
3602         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
3603         stream lock if it's a FLUSH_DONE; normal flushes don't get the
3604         lock (according to the docs -- if this is wrong change the docs).
3605
3606         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
3607         flush messages in the NULL state.
3608
3609         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
3610         message immediately and return.
3611         (gst_bus_set_flushing): New function. If a bus is flushing, it
3612         flushes out any queued messages and immediately unrefs new
3613         messages. This is so when an element goes to NULL, all of the
3614         unhandled messages coming from it can be freed, and their
3615         references to the element dropped. In other words: message source
3616         ref considered harmful :P
3617
3618         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
3619         we're finished with it.
3620
3621         * gst/gstmessage.c (gst_message_new_state_changed): 
3622
3623 2005-05-10  Wim Taymans  <wim@fluendo.com>
3624
3625         * gst/gstvalue.c: (gst_value_compare_flags),
3626         (gst_value_serialize_flags), (gst_value_deserialize_flags),
3627         (_gst_value_initialize):
3628         Added flags serialize/deserialize/compare code.
3629
3630 2005-05-09  Andy Wingo  <wingo@pobox.com>
3631
3632         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
3633         Intersect the peer's caps with our caps.
3634
3635 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3636
3637         * gst/base/gsttypefindhelper.c: (helper_find_peek):
3638         * gst/elements/gsttypefindelement.c: (find_peek):
3639           Handle negative offsets better. Fixes decodebin.
3640
3641 2005-05-09  Wim Taymans  <wim@fluendo.com>
3642
3643         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
3644         (gst_base_transform_event):
3645         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
3646         Implement accept_caps.
3647         Fix silly lock/unlock mismatch in base class.
3648
3649 2005-05-09  Wim Taymans  <wim@fluendo.com>
3650
3651         * docs/design/draft-push-pull.txt:
3652         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
3653         * gst/elements/gstfilesink.c: (gst_filesink_init),
3654         (gst_filesink_query):
3655         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3656         (gst_type_find_handle_src_query), (find_element_get_length):
3657         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
3658         * gst/gstelement.h:
3659         * gst/gstmessage.c:
3660         * gst/gstmessage.h:
3661         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
3662         (gst_real_pad_get_caps_unlocked),
3663         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
3664         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3665         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
3666         (gst_real_pad_dispose), (gst_real_pad_finalize),
3667         (gst_pad_load_and_link), (gst_pad_save_thyself),
3668         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
3669         (gst_pad_check_pull_range), (gst_pad_pull_range),
3670         (gst_pad_template_get_type), (gst_pad_template_class_init),
3671         (gst_pad_template_init), (gst_pad_template_dispose),
3672         (name_is_valid), (gst_static_pad_template_get),
3673         (gst_pad_template_new), (gst_static_pad_template_get_caps),
3674         (gst_pad_template_get_caps), (gst_pad_set_element_private),
3675         (gst_pad_get_element_private), (gst_pad_start_task),
3676         (gst_pad_pause_task), (gst_pad_stop_task),
3677         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
3678         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
3679         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
3680         (gst_ghost_pad_new):
3681         * gst/gstpad.h:
3682         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
3683         (gst_query_new_position), (gst_query_set_position),
3684         (gst_query_parse_position), (gst_query_new_convert),
3685         (gst_query_set_convert), (gst_query_parse_convert):
3686         * gst/gstquery.h:
3687         * gst/gstqueryutils.c:
3688         * gst/gstqueryutils.h:
3689         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3690         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3691         (gst_queue_handle_src_query):
3692         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3693         (gst_element_query_position), (gst_element_query_convert),
3694         (intersect_caps_func), (gst_pad_query_position),
3695         (gst_pad_query_convert):
3696         * gst/gstutils.h:
3697         * tools/gst-inspect.c: (print_pad_info):
3698         * tools/gst-xmlinspect.c: (print_element_info):
3699         Remove old query functions. Ported old code.
3700         Added position/convert helper functions to gstutils.
3701         Reordered gstpad.c code, grouping relevant things.
3702         Remove gst_message_new(), always need to speficy a specific
3703         message.
3704
3705
3706 2005-05-09  Andy Wingo  <wingo@pobox.com>
3707
3708         * gst/gstiterator.h: Add some includes.
3709
3710         * gst/gstqueryutils.h: Include more headers.
3711
3712         * gst/gstpad.h:
3713         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
3714         some uses of gst_pad_query.
3715
3716         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
3717         NULL out parameters.
3718         (gst_query_new_position): New proc, allocates a new position
3719         query.
3720
3721         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
3722         gstqueryutils.c to the build.
3723
3724         * gst/gststructure.c (gst_structure_set_valist): Implement with
3725         the generic G_VALUE_COLLECT.
3726         
3727 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
3728
3729         * gst/Makefile.am: (gst_headers):
3730         Added gstqueryutils.h to the list of headers to install, that was
3731         a 'nachty' move wingo :)
3732
3733 2005-05-06  Andy Wingo  <wingo@pobox.com>
3734
3735         * gst/gstquery.h
3736         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
3737         GstData, init a memchunk.
3738         (standard_definitions): Add a few query types, deprecate a few.
3739         (gst_query_get_type): New proc.
3740         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
3741         implementation.
3742         (gst_query_new_application, gst_query_get_structure): New public
3743         procs.
3744
3745         * docs/design/draft-query.txt: Removed LINKS from the query types,
3746         because all the rest can be dispatched to other pads -- seemed
3747         ugly to have a query that couldn't be dispatched. internal_links
3748         is fine as a pad method.
3749
3750         * gst/gstpad.h: Add query2 as a pad method, add the new functions
3751         in gstpad.c, but maintain binary compatibility for the moment.
3752         Will fix before 0.9 is out.
3753
3754         * gst/gstqueryutils.c: 
3755         * gst/gstqueryutils.h: New files, implement 3 methods for each
3756         query type: parse_query, parse_response, and set. Probably need an
3757         allocator as well.
3758
3759         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
3760
3761         * gst/elements/gstfilesink.c (gst_filesink_query2):
3762         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
3763         query_types, and formats methods.
3764
3765         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
3766         (gst_pad_set_query2_function): New functions.
3767         (gst_real_pad_init): Set query2_default as the default query2
3768         function. Basically just dispatches to internally linked pads.
3769
3770         Needs review!
3771         
3772         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
3773         without using the atomic operations. Only one thread can possibly
3774         be accessing the data at this point. Changed so as to avoid
3775         gst_atomic operations.
3776
3777 2005-05-06  Wim Taymans  <wim@fluendo.com>
3778
3779         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
3780         Also set caps if we use the fallback buffer alloc.
3781
3782 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
3783
3784         * docs/gst/Makefile.am:
3785         * docs/gst/gstreamer-docs.sgml:
3786         * docs/gst/gstreamer-sections.txt:
3787         * docs/gst/tmpl/gstatomic.sgml:
3788         * docs/gst/tmpl/gstmemchunk.sgml:
3789         * testsuite/elements/struct_i386.h:
3790         * win32/GStreamer.vcproj:
3791         * win32/Makefile:
3792           Purge GstAtomic stuff from docs and win32 makefiles as well
3793
3794 2005-05-06  Wim Taymans  <wim@fluendo.com>
3795
3796         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
3797         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
3798         * gst/gstpad.c: (gst_pad_peer_get_caps):
3799         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3800         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3801         (gst_queue_src_activate), (gst_queue_change_state):
3802         * gst/gstqueue.h:
3803         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3804         (intersect_caps_func):
3805         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
3806         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
3807         Some fixes for the peer_get_caps() change.
3808
3809 2005-05-06  Wim Taymans  <wim@fluendo.com>
3810
3811         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
3812         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
3813         (gst_basesink_activate):
3814         Actually do something with error codes returned from the push
3815         functions.
3816
3817 2005-05-06  Wim Taymans  <wim@fluendo.com>
3818
3819         * docs/design/part-element-sink.txt:
3820         * docs/design/part-element-source.txt:
3821         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3822         (gst_basesink_event), (gst_basesink_activate):
3823         * gst/base/gstbasesink.h:
3824         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
3825         (gst_basesrc_activate):
3826         * gst/base/gstbasesrc.h:
3827         * gst/gstelement.c: (gst_element_pads_activate):
3828         Some more documentation.
3829         Fixed scheduling decision in _pads_activate().
3830
3831 2005-05-05  Andy Wingo  <wingo@pobox.com>
3832
3833         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
3834         the test suite.
3835
3836 2005-05-05  Wim Taymans  <wim@fluendo.com>
3837
3838         * gst/base/Makefile.am:
3839         * gst/base/gstbasesink.h:
3840         * gst/base/gstbasesrc.c: (gst_basesrc_init),
3841         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
3842         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
3843         (gst_collectpads_class_init), (gst_collectpads_init),
3844         (gst_collectpads_finalize), (gst_collectpads_new),
3845         (gst_collectpads_set_function), (gst_collectpads_add_pad),
3846         (find_pad), (gst_collectpads_remove_pad),
3847         (gst_collectpads_is_active), (gst_collectpads_collect),
3848         (gst_collectpads_collect_range), (gst_collectpads_start),
3849         (gst_collectpads_stop), (gst_collectpads_peek),
3850         (gst_collectpads_pop), (gst_collectpads_available),
3851         (gst_collectpads_read), (gst_collectpads_flush),
3852         (gst_collectpads_chain):
3853         * gst/base/gstcollectpads.h:
3854         * gst/elements/Makefile.am:
3855         * gst/elements/gstelements.c:
3856         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3857         (gst_fakesink_get_times), (gst_fakesink_event),
3858         (gst_fakesink_preroll), (gst_fakesink_render):
3859         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
3860         (gst_filesink_init), (gst_filesink_set_location),
3861         (gst_filesink_open_file), (gst_filesink_close_file),
3862         (gst_filesink_pad_query), (gst_filesink_event),
3863         (gst_filesink_render), (gst_filesink_change_state):
3864         * gst/elements/gstfilesink.h:
3865         Added object to help in making collect pad based elements.
3866         Ported filesink.
3867         Make event function in sink baseclass return gboolean.
3868
3869 2005-05-05  Wim Taymans  <wim@fluendo.com>
3870
3871         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
3872         (gst_bin_get_by_name):
3873         * gst/gstbuffer.h:
3874         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
3875         (gst_clock_finalize):
3876         * gst/gstdata.c: (gst_data_replace):
3877         * gst/gstdata.h:
3878         * gst/gstelement.c: (gst_element_request_pad),
3879         (gst_element_pads_activate):
3880         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
3881         (gst_object_unref):
3882         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3883         (gst_pad_set_checkgetrange_function),
3884         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
3885         (gst_pad_check_pull_range), (gst_pad_pull_range),
3886         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3887         (gst_pad_pause_task), (gst_pad_stop_task):
3888         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3889         (gst_element_request_pad), (gst_pad_proxy_getcaps):
3890         Fix name lookup in GstBin.
3891         Added _data_replace() function and _buffer_replace()
3892         Use finalize method to clean up clock.
3893         Fix refcounting on request pads.
3894         Fix pad schedule mode error.
3895         Some more object refcounting debug info,
3896
3897
3898 2005-05-04  Andy Wingo <wingo@pobox.com>
3899
3900         * check/Makefile.am:
3901         * docs/gst/tmpl/gstatomic.sgml:
3902         * docs/gst/tmpl/gstplugin.sgml:
3903         * gst/base/gstbasesink.c: (gst_basesink_activate):
3904         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
3905         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
3906         (gst_basesrc_query), (gst_basesrc_set_property),
3907         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
3908         (gst_basesrc_activate):
3909         * gst/base/gstbasesrc.h:
3910         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
3911         (gst_base_transform_src_activate):
3912         * gst/elements/gstelements.c:
3913         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3914         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
3915         * gst/elements/gsttee.c: (gst_tee_sink_activate):
3916         * gst/elements/gsttypefindelement.c: (find_element_get_length),
3917         (gst_type_find_element_checkgetrange),
3918         (gst_type_find_element_activate):
3919         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
3920         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
3921         (gst_caps_load_thyself):
3922         * gst/gstelement.c: (gst_element_pads_activate),
3923         (gst_element_save_thyself), (gst_element_restore_thyself):
3924         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
3925         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
3926         * gst/gstpad.h:
3927         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
3928         (gst_xml_parse_file), (gst_xml_parse_memory),
3929         (gst_xml_get_element), (gst_xml_make_element):
3930         * gst/indexers/gstfileindex.c: (gst_file_index_load),
3931         (_file_index_id_save_xml), (gst_file_index_commit):
3932         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
3933         (read_enum), (load_pad_template), (load_feature), (load_plugin),
3934         (load_paths):
3935         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
3936         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
3937         * tools/gst-complete.c: (main):
3938         * tools/gst-compprep.c: (main):
3939         * tools/gst-inspect.c: (print_element_properties_info):
3940         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
3941         * tools/gst-xmlinspect.c: (print_element_properties):
3942         GCC 4 fixen.
3943         
3944 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
3945
3946         * gst/gstplugin.c: (gst_plugin_check_module),
3947         (gst_plugin_check_file), (gst_plugin_load_file):
3948             apply patch from #172526 to make register work on MacOSX
3949
3950 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3951
3952         * docs/gst/tmpl/gstconfig.sgml:
3953         * gst/gstconfig.h.in:
3954           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
3955         * testsuite/debug/printf_extension.c: (main):
3956           Do not use GST_PTR_FORMAT on pointers to types with
3957           sizeof < sizeof(gpointer).  Fixes test on 64-bit
3958         * testsuite/elements/property.h:
3959           use correct printf format
3960
3961 2005-05-02  Wim Taymans  <wim@fluendo.com>
3962
3963         * docs/design/draft-push-pull.txt:
3964         * docs/design/draft-query.txt:
3965         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
3966         (gst_basesrc_start):
3967         Added draft for new query API.
3968         Added draft for better selecting scheduling methods.
3969         Make basesrc ignore length if the subclass does not support
3970         it.
3971
3972 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3973
3974         * gst/Makefile.am:
3975           possible fixes for automake-1.5 - _LIBADD is reserved
3976
3977 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3978
3979         * docs/faq/Makefile.am:
3980         * docs/manual/Makefile.am:
3981         * docs/manuals.mak:
3982         * docs/pwg/Makefile.am:
3983         * gst/Makefile.am:
3984           possible fixes for automake-1.5
3985
3986 2005-04-28  Wim Taymans  <wim@fluendo.com>
3987
3988         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3989         (gst_basesink_pad_getcaps), (gst_basesink_init),
3990         (gst_basesink_do_sync):
3991         * gst/gstclock.c: (gst_clock_entry_new):
3992         * gst/gstevent.c: (gst_event_discont_get_value):
3993         * gst/gstpipeline.c: (pipeline_bus_handler),
3994         (gst_pipeline_change_state):
3995         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
3996         Better debugging of clocking info.
3997         Allow NULL values when getting discont values.
3998
3999 2005-04-27  Wim Taymans  <wim@fluendo.com>
4000
4001         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
4002         * check/gst/gstpad.c: (gst_pad_suite):
4003         Increase timeout for checks.
4004
4005 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
4006
4007         * check/Makefile.am:
4008           fix the broken rule for cleanup.  Apparently this rule is
4009           only needed on FC2, so maybe this warrants further autotool
4010           inspection.
4011
4012 2005-04-26  Wim Taymans  <wim@fluendo.com>
4013
4014         * gst/gsttrashstack.h:
4015         Ooohh. a nasty one! After having a failed pop() from the stack,
4016         it's possible that the stack is empty. In that case, don't
4017         follow the NULL pointer.
4018
4019 2005-04-25  Wim Taymans  <wim@fluendo.com>
4020
4021         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4022         (gst_pad_set_checkgetrange_function),
4023         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
4024         (gst_pad_check_pull_range), (gst_pad_pull_range),
4025         (gst_static_pad_template_get_caps), (gst_pad_start_task),
4026         (gst_pad_pause_task), (gst_pad_stop_task):
4027         * gst/gstplugin.c: (gst_plugin_load):
4028         * gst/gstplugin.h:
4029         Remove gst_library_load as it does more harm than good with
4030         the new g_module flags.
4031         Revert bogus caps template check in pad linking, pad caps
4032         are important when linking not the template, which is more
4033         general than the current caps.
4034
4035 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4036
4037         * gst/autoplug/.cvsignore:
4038         * gst/autoplug/Makefile.am:
4039         * gst/autoplug/gstsearchfuncs.c:
4040         * gst/autoplug/gstsearchfuncs.h:
4041         * gst/autoplug/gstspider.c:
4042         * gst/autoplug/gstspider.h:
4043         * gst/autoplug/gstspideridentity.c:
4044         * gst/autoplug/gstspideridentity.h:
4045         * gst/autoplug/spidertest.c:
4046           Die, spider, die.
4047
4048 2005-04-25  Wim Taymans  <wim@fluendo.com>
4049
4050         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4051         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
4052         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
4053         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
4054         * gst/gstpad.h:
4055         Added stubs for unimplemented functions. 
4056
4057 2005-04-24  David Schleef  <ds@schleef.org>
4058
4059         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
4060         please fix.
4061
4062 2005-04-24  David Schleef  <ds@schleef.org>
4063
4064         Convert everything from GstAtomicInt to g_atomic_int_*, and
4065         remove gstatomic.
4066         * gst/Makefile.am:
4067         * gst/gstatomic.c:
4068         * gst/gstatomic.h:
4069         * gst/gstatomic_impl.h:
4070         * gst/gstbuffer.c:
4071         * gst/gstcaps.c:
4072         * gst/gstcaps.h:
4073         * gst/gstclock.c:
4074         * gst/gstclock.h:
4075         * gst/gstdata.c:
4076         * gst/gstdata.h:
4077         * gst/gstdata_private.h:
4078         * gst/gstevent.c:
4079         * gst/gstinfo.c:
4080         * gst/gstinfo.h:
4081         * gst/gstmessage.c:
4082         * gst/gstobject.c:
4083         * gst/gstobject.h:
4084         * gst/gststructure.c:
4085         * gst/gststructure.h:
4086         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
4087         * gst/gstutils.h:
4088
4089 2005-04-24  David Schleef  <ds@schleef.org>
4090
4091         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
4092         make the regressions tests work.  Remove some code that is no
4093         longer true.
4094         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
4095         Disable warning for pads without templates.
4096
4097 2005-04-24  David Schleef  <ds@schleef.org>
4098
4099         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
4100         functions that handle filtered links.
4101         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
4102         removed functions.
4103         * gst/gstutils.c: Fix/remove utility functions that handle
4104         filtered caps.
4105         * gst/gstutils.h:
4106         * gst/gstvalue.c: Add serialization/deserialization of caps
4107         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
4108         requires fixing so that the filter caps notation creates
4109         a capsfilter element and sets the filter_caps property.  I
4110         think everyone probably wants to keep the shorthand notation.
4111         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
4112         * docs/gst/tmpl/gstpad.sgml:
4113
4114         * gst/elements/gstelements.c: Register capsfilter element.
4115         * gst/Makefile.am: fix spacing
4116         * docs/random/ds/0.9-suggested-changes: random
4117
4118 2005-04-23  David Schleef  <ds@schleef.org>
4119
4120         * gst/elements/Makefile.am:
4121         * gst/elements/gstcapsfilter.c: New element that acts like an
4122         identity, but filters caps.  Will eventually replace filtered
4123         caps in pad linking.
4124         * gst/gstutils.c: (gst_element_create_all_pads): New function
4125         to create all the ALWAYS pads that are registered with an
4126         element class.  This functionality should eventually be
4127         merged in with GstElement initialization.
4128         * gst/gstutils.h:
4129         * testsuite/trigger/README: part of trigger test code that should
4130         have been checked in a long time ago.
4131
4132 2005-04-23  David Schleef  <ds@schleef.org>
4133
4134         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
4135         needed with new versions of libtool (nobody will confirm this),
4136         and hard to carry around.
4137         * gst/autoplug/Makefile.am:
4138         * gst/base/Makefile.am:
4139         * gst/elements/Makefile.am:
4140         * gst/indexers/Makefile.am:
4141         * gst/schedulers/Makefile.am:
4142         * libs/gst/bytestream/Makefile.am:
4143         * libs/gst/control/Makefile.am:
4144         * libs/gst/dataprotocol/Makefile.am:
4145         * libs/gst/getbits/Makefile.am:
4146
4147 2005-04-21  Wim Taymans  <wim@fluendo.com>
4148
4149         * docs/design/draft-push-pull.txt:
4150         * docs/design/part-MT-refcounting.txt:
4151         * docs/design/part-TODO.txt:
4152         * docs/design/part-caps.txt:
4153         * docs/design/part-events.txt:
4154         * docs/design/part-gstbus.txt:
4155         * docs/design/part-gstpipeline.txt:
4156         * docs/design/part-messages.txt:
4157         * docs/design/part-push-pull.txt:
4158         * docs/design/part-query.txt:
4159         Some more docs.
4160
4161 2005-04-21  Wim Taymans  <wim@fluendo.com>
4162
4163         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
4164         (gst_message_new), (gst_message_new_error),
4165         (gst_message_new_warning), (gst_message_new_tag),
4166         (gst_message_new_state_changed), (gst_message_new_application),
4167         (gst_message_get_structure):
4168         * gst/gstmessage.h:
4169         * gst/gststructure.c: (gst_structure_set_parent_refcount),
4170         (gst_structure_copy_conditional):
4171         Use parent refcount in GstMessage to ensure GstStructure
4172         consistency.
4173         Cleaned up headers a bit.
4174         
4175
4176 2005-04-20  Wim Taymans  <wim@fluendo.com>
4177
4178         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4179         (gst_basesink_pad_getcaps), (gst_basesink_init),
4180         (gst_basesink_chain_unlocked):
4181         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
4182         (gst_type_find_helper):
4183         * gst/elements/gsttypefindelement.c:
4184         (gst_type_find_element_have_type), (gst_type_find_element_init),
4185         (stop_typefinding), (gst_type_find_element_handle_event),
4186         (find_suggest), (gst_type_find_element_chain),
4187         (gst_type_find_element_checkgetrange),
4188         (gst_type_find_element_getrange), (do_typefind),
4189         (gst_type_find_element_activate):
4190         * gst/gstbuffer.c: (_gst_buffer_sub_free),
4191         (gst_buffer_default_free), (gst_buffer_default_copy),
4192         (gst_buffer_set_caps):
4193         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
4194         (gst_caps_replace):
4195         * gst/gstmessage.c: (gst_message_new),
4196         (gst_message_new_state_changed):
4197         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4198         (gst_pad_set_checkgetrange_function),
4199         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
4200         (gst_pad_set_caps), (gst_pad_check_pull_range),
4201         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
4202         * gst/gstpad.h:
4203         * gst/gsttypefind.c: (gst_type_find_register):
4204         Make gst_caps_replace() work like other _replace() functions.
4205         Use _caps_replace() where possible.
4206         Make sure _message_new() initialises its field.
4207         Add gst_static_pad_template_get_caps()
4208
4209
4210 2005-04-18  Andy Wingo  <wingo@pobox.com>
4211
4212         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
4213         on the peer, not the pad. I think that was a typo. Pass an extra
4214         arg to see if random access is possible. Activate the pads as
4215         PULL_RANGE if possible.
4216
4217         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
4218
4219         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
4220         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
4221         to PROP_....
4222
4223 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4224
4225         * docs/faq/using.xml:
4226           Add note on gstreamer-properties (#154996).
4227
4228 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4229
4230         * docs/random/bbb/optional-properties:
4231           Some analysis on optional properties.
4232
4233 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4234
4235         * docs/gst/tmpl/gstelementfactory.sgml:
4236         * gst/gstelement.h:
4237         * gst/gstelementfactory.c: (gst_element_factory_init),
4238         (gst_element_factory_cleanup), (gst_element_register),
4239         (__gst_element_factory_add_static_pad_template),
4240         (gst_element_factory_get_static_pad_templates),
4241         (gst_element_factory_can_src_caps),
4242         (gst_element_factory_can_sink_caps):
4243         * gst/registries/Makefile.am:
4244         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
4245         (gst_xml_registry_class_init), (gst_xml_registry_init),
4246         (gst_xml_registry_new), (gst_xml_registry_set_property),
4247         (gst_xml_registry_get_property), (get_time), (make_dir),
4248         (gst_xml_registry_get_perms_func),
4249         (plugin_times_older_than_recurse), (plugin_times_older_than),
4250         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
4251         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
4252         (add_to_char_array), (read_string), (read_uint), (read_enum),
4253         (load_pad_template), (load_feature), (load_plugin), (load_paths),
4254         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
4255         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
4256         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
4257         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
4258         (gst_xml_registry_rebuild):
4259         * gst/registries/gstlibxmlregistry.h:
4260         * tools/gst-compprep.c: (main):
4261         * tools/gst-inspect.c: (print_pad_templates_info):
4262         * tools/gst-xmlinspect.c: (print_element_info):
4263           Use libxml2 for registry parsing, use staticpadtemplates in
4264           elementfactories. Makes gst_init() +/- 10x faster.
4265
4266 2005-04-12  Wim Taymans  <wim@fluendo.com>
4267
4268         * gst/base/Makefile.am:
4269         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4270         (gst_basesink_pad_getcaps), (gst_basesink_init),
4271         (gst_basesink_event), (gst_basesink_change_state):
4272         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4273         (gst_basesrc_init), (gst_basesrc_query),
4274         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
4275         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
4276         (gst_basesrc_check_get_range), (gst_basesrc_loop),
4277         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
4278         (gst_basesrc_stop), (gst_basesrc_activate),
4279         (gst_basesrc_change_state):
4280         * gst/base/gsttypefindhelper.c: (helper_find_peek),
4281         (helper_find_suggest), (gst_type_find_helper):
4282         * gst/base/gsttypefindhelper.h:
4283         * gst/elements/Makefile.am:
4284         * gst/elements/gstelements.c:
4285         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
4286         (gst_fakesink_get_times), (gst_fakesink_event),
4287         (gst_fakesink_preroll), (gst_fakesink_render):
4288         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4289         (gst_fakesrc_init), (gst_fakesrc_event_handler),
4290         (gst_fakesrc_get_property), (gst_fakesrc_create),
4291         (gst_fakesrc_start), (gst_fakesrc_stop):
4292         * gst/elements/gstfakesrc.h:
4293         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
4294         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
4295         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
4296         (gst_filesrc_create_read), (gst_filesrc_create),
4297         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
4298         (gst_filesrc_start):
4299         * gst/elements/gsttypefindelement.c:
4300         (gst_type_find_element_have_type), (gst_type_find_element_init),
4301         (start_typefinding), (stop_typefinding), (push_buffer_store),
4302         (gst_type_find_element_handle_event),
4303         (gst_type_find_element_chain),
4304         (gst_type_find_element_checkgetrange),
4305         (gst_type_find_element_getrange), (do_typefind),
4306         (gst_type_find_element_activate),
4307         (gst_type_find_element_change_state):
4308         * gst/elements/gsttypefindelement.h:
4309         * gst/gstpipeline.c: (pipeline_bus_handler):
4310         Added typefind helper.
4311         Small preroll fix in the base sink.
4312         Disable typefind code in basesrc.
4313         Crude port of typefindelement.
4314         Fakesrc cleanups.
4315
4316
4317 2005-04-11  Wim Taymans  <wim@fluendo.com>
4318
4319         * check/gst/gstbus.c: (gstbus_suite):
4320         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
4321         * check/gstcheck.h:
4322           Fix up the timeout so that the test does not fail.
4323
4324 2005-04-06  Wim Taymans  <wim@fluendo.com>
4325
4326         * gst/base/README:
4327         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4328         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
4329         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
4330         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
4331         (gst_basesrc_check_get_range), (gst_basesrc_loop),
4332         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
4333         (gst_basesrc_stop), (gst_basesrc_activate),
4334         (gst_basesrc_change_state), (basesrc_find_peek),
4335         (basesrc_find_suggest), (gst_basesrc_type_find):
4336         * gst/base/gstbasesrc.h:
4337         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
4338         (gst_filesrc_class_init), (gst_filesrc_init),
4339         (gst_filesrc_finalize), (gst_filesrc_set_location),
4340         (gst_filesrc_set_property), (gst_filesrc_get_property),
4341         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
4342         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
4343         (gst_filesrc_create_read), (gst_filesrc_create),
4344         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
4345         * gst/elements/gstfilesrc.h:
4346         * gst/gstelement.c: (gst_element_get_state_func),
4347         (gst_element_lost_state), (gst_element_pads_activate):
4348         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4349         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
4350         (gst_pad_pull_range):
4351         * gst/gstpad.h:
4352         More work on the generic source base class, implement seeking,
4353         query.
4354         Make filesrc extend the base source class.
4355         Added gst_pad_set_checkgetrange_function to GstPad.
4356
4357 2005-04-06  Andy Wingo  <wingo@pobox.com>
4358
4359         * pkgconfig/gstreamer-base.pc.in:
4360         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
4361
4362         * pkgconfig/Makefile.am:
4363         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
4364
4365 2005-04-04  Wim Taymans  <wim@fluendo.com>
4366
4367         * gst/base/Makefile.am:
4368         * gst/base/README:
4369         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4370         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4371         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4372         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
4373         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4374         (gst_basesrc_base_init), (gst_basesrc_class_init),
4375         (gst_basesrc_init), (gst_basesrc_get_formats),
4376         (gst_basesrc_get_query_types), (gst_basesrc_query),
4377         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
4378         (gst_basesrc_set_property), (gst_basesrc_get_property),
4379         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
4380         (gst_basesrc_loop), (gst_basesrc_activate),
4381         (gst_basesrc_change_state):
4382         * gst/base/gstbasesrc.h:
4383         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
4384         (gst_fakesrc_class_init), (gst_fakesrc_init),
4385         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
4386         (gst_fakesrc_get_property), (gst_fakesrc_create):
4387         * gst/elements/gstfakesrc.h:
4388         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
4389         (gst_filesrc_open_file), (gst_filesrc_loop),
4390         (gst_filesrc_activate), (filesrc_find_peek),
4391         (gst_filesrc_type_find):
4392         Made base source class, make fakesrc extend it.
4393         Add comments to basesink class.
4394         Some filesrc cleanup.
4395
4396 2005-03-31  David Schleef  <ds@schleef.org>
4397
4398         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
4399         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
4400         expected to link against libgstreamer.
4401         * gst/base/Makefile.am: link against libgstreamer
4402         * gst/elements/Makefile.am: same
4403
4404 2005-03-31  Andy Wingo  <wingo@pobox.com>
4405
4406         * tests/instantiate/Makefile.am:
4407         * tests/instantiate/caps.c: Add test to test speed of caps copy
4408         and free.
4409
4410         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
4411         GMemChunk to be fair.
4412
4413         * gst/gsttrashstack.h: Remove warning about using the fallback
4414         trash stack implementation, it's still faster than malloc.
4415
4416 2005-03-30  Andy Wingo  <wingo@pobox.com>
4417
4418         * tests/complexity.c: Add a copyright.
4419
4420 2005-03-31  Wim Taymans  <wim@fluendo.com>
4421
4422         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
4423         (gst_base_transform_class_init), (gst_base_transform_init),
4424         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
4425         (gst_base_transform_get_property),
4426         (gst_base_transform_sink_activate),
4427         (gst_base_transform_src_activate),
4428         (gst_base_transform_change_state):
4429         * gst/base/gstbasetransform.h:
4430         * gst/elements/gstidentity.c: (gst_identity_class_init),
4431         (gst_identity_event), (gst_identity_check_perfect),
4432         (gst_identity_transform), (gst_identity_start),
4433         (gst_identity_stop):
4434         Added start/stop methods to transform base class so subclasses 
4435         don't need to deal with state changes even.
4436
4437 2005-03-31  Wim Taymans  <wim@fluendo.com>
4438
4439         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
4440         (gst_event_new_discontinuous), (gst_event_discont_get_value):
4441         * gst/gstevent.h:
4442         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4443         (gst_pad_pull_range):
4444         Added rate to the discont event to prepare for variable speed
4445         and reverse playback.
4446
4447 2005-03-29  David Schleef  <ds@schleef.org>
4448
4449         * configure.ac:
4450         * testsuite/trigger/Makefile.am:
4451         * testsuite/trigger/trigger.c: A little example program to show
4452         how trigger-based elements can work.
4453
4454 2005-03-29  Wim Taymans  <wim@fluendo.com>
4455
4456         * gst/base/Makefile.am:
4457         * gst/base/README:
4458         * gst/base/gstbasesink.c: (gst_basesink_get_type),
4459         (gst_basesink_base_init), (gst_basesink_class_init),
4460         (gst_basesink_pad_getcaps), (gst_basesink_init),
4461         (gst_basesink_activate), (gst_basesink_change_state):
4462         * gst/base/gstbasesink.h:
4463         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
4464         (gst_base_transform_base_init), (gst_base_transform_finalize),
4465         (gst_base_transform_class_init), (gst_base_transform_init),
4466         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
4467         (gst_base_transform_event), (gst_base_transform_getrange),
4468         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
4469         (gst_base_transform_set_property),
4470         (gst_base_transform_get_property),
4471         (gst_base_transform_sink_activate),
4472         (gst_base_transform_src_activate),
4473         (gst_base_transform_change_state):
4474         * gst/base/gstbasetransform.h:
4475         * gst/elements/gstidentity.c: (gst_identity_finalize),
4476         (gst_identity_class_init), (gst_identity_init),
4477         (gst_identity_event), (gst_identity_check_perfect),
4478         (gst_identity_transform), (gst_identity_set_property),
4479         (gst_identity_get_property), (gst_identity_change_state):
4480         * gst/elements/gstidentity.h:
4481         * gst/gstelement.c: (gst_element_get_state_func),
4482         (gst_element_lost_state), (gst_element_pads_activate):
4483         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4484         (gst_pad_check_pull_range), (gst_pad_pull_range):
4485         * gst/gstpad.h:
4486         Simplify pad activation.
4487         Added function to check if pull_range can be performed.
4488         Error out when pulling inactive or flushing pads.
4489         Removed const from refcounted types as it does not make sense.
4490         Simplify pad templates in basesink
4491         Added base class for simple 1-to-1 transforms.
4492         Make identity subclass the base transform.
4493
4494 2005-03-29  Andy Wingo  <wingo@pobox.com>
4495
4496         * docs/libs/gstreamer-libs-overrides.txt: 
4497         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
4498         really don't understand what's going on, but like whatever. I want
4499         green buildbot!
4500
4501         * docs/gst/Makefile.am:
4502         * docs/libs/Makefile.am: Dist the overrides files.
4503
4504         * check/Makefile.am (clean-local): Remove .libs directories.
4505
4506         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
4507         elements to EXTRA_DIST, so po/ files are happy.
4508
4509         * po/POTFILES.in: Er, remove it here.
4510
4511         * po/POTFILES: Remove gstspider.c.
4512
4513         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
4514
4515         * docs/libs/gstreamer-libs-docs.sgml: 
4516         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
4517         bytestream.
4518
4519         * tests/complexity.c (main): Set the length of the preroll queue
4520         on the sinks to prevent a lockup.
4521
4522         * libs/gst/dataprotocol/Makefile.am: 
4523         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
4524         the same as the one in check/gst-libs/gdp.c.
4525
4526         * po/, docs/gst/: Commit automatic changes to docs and po files.
4527
4528         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
4529         the versioned libgstbase.
4530
4531         * check/Makefile.am: Depend on an unversioned gst-register, seems
4532         to make autoconf happier.
4533
4534         * gst/base/Makefile.am: Make libgstbase a versioned lib.
4535
4536 2005-03-28  Wim Taymans  <wim@fluendo.com>
4537
4538         * configure.ac:
4539         * docs/design/part-gstelement.txt:
4540         * docs/design/part-negotiation.txt:
4541         * docs/design/part-preroll.txt:
4542         * docs/design/part-scheduling.txt:
4543         * docs/design/part-states.txt:
4544         * gst/Makefile.am:
4545         * gst/base/Makefile.am:
4546         * gst/base/README:
4547         * gst/base/gstbasesink.c: (gst_basesink_get_template),
4548         (gst_basesink_base_init), (gst_basesink_class_init),
4549         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4550         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4551         (gst_basesink_set_pad_functions),
4552         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
4553         (gst_basesink_set_property), (gst_basesink_get_property),
4554         (gst_base_sink_get_template), (gst_base_sink_get_caps),
4555         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
4556         (gst_basesink_preroll_queue_push),
4557         (gst_basesink_preroll_queue_empty),
4558         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
4559         (gst_basesink_event), (gst_basesink_get_times),
4560         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
4561         (gst_basesink_chain_unlocked), (gst_basesink_chain),
4562         (gst_basesink_loop), (gst_basesink_activate),
4563         (gst_basesink_change_state):
4564         * gst/base/gstbasesink.h:
4565         * gst/elements/Makefile.am:
4566         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
4567         (gst_fakesink_class_init), (gst_fakesink_init),
4568         (gst_fakesink_set_property), (gst_fakesink_get_property),
4569         (gst_fakesink_get_times), (gst_fakesink_event),
4570         (gst_fakesink_preroll), (gst_fakesink_render),
4571         (gst_fakesink_change_state):
4572         * gst/elements/gstfakesink.h:
4573         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4574         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
4575         * gst/gstelement.c: (gst_element_add_pad),
4576         (gst_element_get_state_func), (gst_element_abort_state),
4577         (gst_element_commit_state), (gst_element_lost_state),
4578         (gst_element_set_state), (gst_element_pads_activate):
4579         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
4580         * gst/gstpipeline.c: (gst_pipeline_send_event),
4581         (gst_pipeline_change_state):
4582         Added state change code.
4583         Added/updated docs.
4584         Added sink base class, make fakesink extend the base class.
4585         Small cleanups in GstPipeline.
4586
4587 2005-03-26  David Schleef  <ds@schleef.org>
4588
4589         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
4590         is broken and should be implemented in a different library.
4591         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
4592         * gst/gst.h: remove gstcpu.h
4593         * gst/gstcpu.c: remove
4594         * gst/gstcpu.h: remove
4595         * gst/Makefile.am.future: Remove this file.  It's ancient.
4596
4597 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4598
4599         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4600         (gst_bin_send_event):
4601           Add default event/set_manager handlers. The set_manager handler
4602           takes care that the manager is distributed over kids that were
4603           already in the bin before the manager was set. The event handler
4604           is a utility virtual function that sends the event over all sinks,
4605           so that gst_element_send_event (bin, event); has the expected
4606           behaviour.
4607         * gst/gstpad.c: (gst_pad_event_default):
4608           Re-install default event handling for discontinuities, so that
4609           seeking works without requiring hacks in applications or extra
4610           code in sinks.
4611         * gst/gstpipeline.c: (gst_pipeline_class_init),
4612         (gst_pipeline_send_event):
4613           Half hack, half utility: set a pipeline to PAUSED for seek events,
4614           since that is the only way we can guarantee a/v sync. Means that
4615           you can do gst_element_seek (pipeline, method, pos); on a pipeline
4616           and it "just works".
4617
4618 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4619
4620         * gst/gstpipeline.c: (gst_pipeline_use_clock):
4621           Lock/unlock mismatch.
4622
4623 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
4624
4625         * docs/faq/gst-uninstalled:
4626           add gst-plugins-base
4627         * docs/gst/Makefile.am:
4628           don't error out until docs are fixed
4629         * docs/gst/gstreamer.types:
4630           remove thread
4631
4632 2005-03-22  Wim Taymans  <wim@fluendo.com>
4633
4634         * check/Makefile.am:
4635         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
4636         * gst/gststructure.c: (gst_structure_set_valist),
4637         (gst_structure_copy_conditional):
4638         Activated more tests.
4639         Added message test.
4640         Added G_TYPE_POINTER to GstStructure.
4641         
4642
4643 2005-03-22  Wim Taymans  <wim@fluendo.com>
4644
4645         * docs/design/part-TODO.txt:
4646         * docs/design/part-events.txt:
4647         * docs/design/part-gstbin.txt:
4648         * docs/design/part-gstbus.txt:
4649         * docs/design/part-gstpipeline.txt:
4650         * docs/design/part-messages.txt:
4651         * gst/gstbus.c:
4652         * gst/gstmessage.c:
4653         Docs updates
4654
4655 2005-03-21  Wim Taymans  <wim@fluendo.com>
4656
4657         * gst/gstbus.c: (gst_bus_post):
4658         Fix copy-and-paste error.
4659
4660 2005-03-21  Wim Taymans  <wim@fluendo.com>
4661
4662         * check/Makefile.am:
4663         * gst/Makefile.am:
4664         * gst/elements/Makefile.am:
4665         * gst/elements/gstelements.c:
4666         * gst/elements/gstfakesink.c: (gst_fakesink_init),
4667         (gst_fakesink_event), (gst_fakesink_chain):
4668         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4669         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
4670         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
4671         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
4672         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
4673         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
4674         (gst_fakesrc_loop), (gst_fakesrc_activate),
4675         (gst_fakesrc_change_state):
4676         * gst/elements/gstfakesrc.h:
4677         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
4678         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
4679         (gst_filesrc_open_file), (gst_filesrc_loop),
4680         (gst_filesrc_activate), (gst_filesrc_change_state),
4681         (filesrc_find_peek), (filesrc_find_suggest),
4682         (gst_filesrc_type_find):
4683         * gst/elements/gstidentity.c: (gst_identity_finalize),
4684         (gst_identity_class_init), (gst_identity_init),
4685         (gst_identity_proxy_getcaps), (identity_queue_push),
4686         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
4687         (gst_identity_getrange), (gst_identity_chain),
4688         (gst_identity_sink_loop), (gst_identity_src_loop),
4689         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
4690         (gst_identity_set_property), (gst_identity_get_property),
4691         (gst_identity_change_state):
4692         * gst/elements/gstidentity.h:
4693         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
4694         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
4695         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
4696         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
4697         (gst_tee_sink_activate):
4698         * gst/elements/gsttee.h:
4699         * gst/gst.c: (gst_register_core_elements), (init_post):
4700         * gst/gst.h:
4701         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
4702         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
4703         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
4704         (gst_bin_change_state):
4705         * gst/gstbin.h:
4706         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
4707         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
4708         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
4709         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
4710         (gst_bus_set_sync_handler), (gst_bus_create_watch),
4711         (bus_watch_callback), (bus_watch_destroy),
4712         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
4713         (poll_timeout), (gst_bus_poll):
4714         * gst/gstbus.h:
4715         * gst/gstcaps.h:
4716         * gst/gstdata.h:
4717         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4718         (gst_element_post_message), (gst_element_message_full),
4719         (gst_element_get_state_func), (gst_element_get_state),
4720         (gst_element_abort_state), (gst_element_commit_state),
4721         (gst_element_lost_state), (gst_element_set_state),
4722         (gst_element_pads_activate), (gst_element_change_state),
4723         (gst_element_dispose), (gst_element_set_manager_func),
4724         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
4725         (gst_element_set_manager), (gst_element_get_manager),
4726         (gst_element_set_bus), (gst_element_get_bus),
4727         (gst_element_set_scheduler), (gst_element_get_scheduler):
4728         * gst/gstelement.h:
4729         * gst/gstevent.c: (gst_event_new_segment_seek),
4730         (gst_event_new_flush):
4731         * gst/gstevent.h:
4732         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
4733         (_gst_message_free), (gst_message_get_type), (gst_message_new),
4734         (gst_message_new_eos), (gst_message_new_error),
4735         (gst_message_new_warning), (gst_message_new_tag),
4736         (gst_message_new_state_changed), (gst_message_new_application),
4737         (gst_message_get_structure), (gst_message_parse_tag),
4738         (gst_message_parse_state_changed), (gst_message_parse_error),
4739         (gst_message_parse_warning):
4740         * gst/gstmessage.h:
4741         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
4742         (gst_real_pad_set_property), (gst_pad_set_active),
4743         (gst_pad_is_active), (gst_pad_set_blocked_async),
4744         (gst_pad_set_blocked), (gst_pad_is_blocked),
4745         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
4746         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
4747         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
4748         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
4749         (gst_pad_link_filtered), (gst_pad_relink_filtered),
4750         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
4751         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
4752         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
4753         (gst_pad_set_caps), (gst_pad_configure_sink),
4754         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
4755         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
4756         (gst_real_pad_dispose), (gst_real_pad_finalize),
4757         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
4758         (gst_pad_event_default_dispatch), (gst_pad_event_default),
4759         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
4760         * gst/gstpad.h:
4761         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
4762         (pipeline_bus_handler), (gst_pipeline_change_state),
4763         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
4764         * gst/gstpipeline.h:
4765         * gst/gstprobe.h:
4766         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
4767         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
4768         (gst_queue_link_src), (gst_queue_bufferalloc),
4769         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
4770         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
4771         (gst_queue_loop), (gst_queue_handle_src_event),
4772         (gst_queue_handle_src_query), (gst_queue_src_activate),
4773         (gst_queue_change_state):
4774         * gst/gstqueue.h:
4775         * gst/gstscheduler.c: (gst_scheduler_init),
4776         (gst_scheduler_dispose), (gst_scheduler_create_task),
4777         (gst_scheduler_factory_create):
4778         * gst/gstscheduler.h:
4779         * gst/gststructure.c: (gst_structure_get_type),
4780         (gst_structure_copy_conditional):
4781         * gst/gststructure.h:
4782         * gst/gsttaginterface.h:
4783         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
4784         (gst_task_init), (gst_task_dispose), (gst_task_create),
4785         (gst_task_get_state), (gst_task_start), (gst_task_stop),
4786         (gst_task_pause):
4787         * gst/gsttask.h:
4788         * gst/gstthread.c:
4789         * gst/gstthread.h:
4790         * gst/gsttypes.h:
4791         * gst/schedulers/Makefile.am:
4792         * gst/schedulers/cothreads_compat.h:
4793         * gst/schedulers/entryscheduler.c:
4794         * gst/schedulers/faircothreads.c:
4795         * gst/schedulers/faircothreads.h:
4796         * gst/schedulers/fairscheduler.c:
4797         * gst/schedulers/gstbasicscheduler.c:
4798         * gst/schedulers/gstoptimalscheduler.c:
4799         * gst/schedulers/gthread-cothreads.h:
4800         * gst/schedulers/threadscheduler.c:
4801         (gst_thread_scheduler_task_get_type),
4802         (gst_thread_scheduler_task_class_init),
4803         (gst_thread_scheduler_task_init),
4804         (gst_thread_scheduler_task_start),
4805         (gst_thread_scheduler_task_stop),
4806         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
4807         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
4808         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
4809         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
4810         (plugin_init):
4811         * libs/gst/Makefile.am:
4812         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
4813         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
4814         (gst_file_pad_parent_set):
4815         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
4816         (gst_dp_event_from_packet):
4817         * tests/complexity.c: (main):
4818         * tests/mass_elements.c: (main):
4819         * testsuite/states/locked.c: (message_received), (main):
4820         * testsuite/states/parent.c: (main):
4821         * tools/gst-inspect.c: (print_element_flag_info),
4822         (print_implementation_info), (print_pad_info):
4823         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
4824         (main):
4825         * tools/gst-md5sum.c: (event_loop), (main):
4826         * tools/gst-typefind.c: (main):
4827         * tools/gst-xmlinspect.c: (print_element_info):
4828         Next big merge.
4829         Added GstBus for mainloop integration.
4830         Added GstMessage for sending notifications on the bus.
4831         Added GstTask as an abstraction for pipeline entry points.
4832         Removed GstThread.
4833         Removed Schedulers.
4834         Simplified GstQueue for multithreaded core.
4835         Made _link threadsafe, removed old capsnego.
4836         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
4837         Added pad blocking functions.
4838         Reworked scheduling functions in GstPad to prepare for
4839         scheduling updates soon.
4840         Moved events out of data stream.
4841         Simplified GstEvent types.
4842         Added return values to push/pull.
4843         Removed clocking from GstElement.
4844         Added prototypes for state change function for next merge.
4845         Removed iterate from bins and state change management.
4846         Fixed some elements, disabled others for now.
4847         Fixed -inspect and -launch.
4848         Added check for GstBus.
4849
4850 2005-03-10  Wim Taymans  <wim@fluendo.com>
4851
4852         * docs/design/part-MT-refcounting.txt:
4853         * docs/design/part-clocks.txt:
4854         * docs/design/part-gstelement.txt:
4855         * docs/design/part-gstobject.txt:
4856         * docs/design/part-standards.txt:
4857         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4858         (gst_bin_remove_func), (gst_bin_remove):
4859         * gst/gstbin.h:
4860         * gst/gstbuffer.c:
4861         * gst/gstcaps.h:
4862         * testsuite/clock/clock1.c: (main):
4863         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
4864         (main):
4865         * testsuite/dlopen/loadgst.c: (do_test):
4866         * testsuite/refcounting/bin.c: (add_remove_test1),
4867         (add_remove_test2), (main):
4868         * testsuite/refcounting/element.c: (main):
4869         * testsuite/refcounting/element_pad.c: (main):
4870         * testsuite/refcounting/pad.c: (main):
4871         * tools/gst-launch.c: (sigint_handler_sighandler):
4872         * tools/gst-typefind.c: (main):
4873         Doc updates.
4874         Added doc about clock.
4875         removed gst_bin_iterate_recurse_up(), marked methods
4876         for removal.
4877         Fix more testsuites.
4878
4879 2005-03-09  Wim Taymans  <wim@fluendo.com>
4880
4881         * gst/gstpad.c: (gst_pad_get_direction),
4882         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
4883         (gst_pad_collect_valist):
4884         * testsuite/bins/interface.c: (main):
4885         * testsuite/caps/audioscale.c: (test_caps):
4886         * testsuite/caps/caps.c: (test1), (test2), (test3):
4887         * testsuite/caps/deserialize.c: (main):
4888         * testsuite/caps/enumcaps.c: (main):
4889         * testsuite/caps/filtercaps.c: (main):
4890         * testsuite/caps/intersect2.c: (main):
4891         * testsuite/caps/random.c: (main):
4892         * testsuite/caps/renegotiate.c: (my_fixate), (main):
4893         * testsuite/caps/sets.c: (check_caps):
4894         * testsuite/caps/simplify.c: (check_caps), (main):
4895         * testsuite/caps/subtract.c: (check_caps):
4896         Fix _pad_get_direction wrt ghostpads.
4897         Fix caps testsuite.
4898
4899 2005-03-09  Wim Taymans  <wim@fluendo.com>
4900
4901         * check/Makefile.am:
4902         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
4903         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
4904         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
4905         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
4906         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
4907         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
4908         (gst_bin_remove), (gst_bin_iterate_recurse_up),
4909         (bin_element_is_sink), (gst_bin_iterate_sinks),
4910         (gst_bin_iterate_all_by_interface):
4911         * gst/gstbin.h:
4912         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
4913         (gst_element_change_state), (gst_element_dispose),
4914         (gst_element_finalize), (gst_element_set_loop_function):
4915         * gst/gstelement.h:
4916         * gst/gstiterator.c: (find_custom_fold_func):
4917         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4918         (gst_pad_collectv), (gst_pad_collect_valist),
4919         (gst_pad_template_new):
4920         * gst/gstpipeline.c: (gst_pipeline_class_init),
4921         (gst_pipeline_dispose), (gst_pipeline_set_property),
4922         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
4923         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
4924         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
4925         * gst/gstutils.h:
4926         * gst/schedulers/entryscheduler.c:
4927         * gst/schedulers/gstbasicscheduler.c:
4928         (gst_basic_scheduler_cothreaded_chain),
4929         (gst_basic_scheduler_chain_add_element):
4930         * testsuite/bins/interface.c: (main):
4931         Added GstBin test.
4932         Added GstSystemClock test.
4933         Implemented clock distribution code in GstBin.
4934         Implemented iterate sinks method for future use.
4935         Rearranged gstelement.h
4936         Fix GstIterator comparison bug.
4937         Moved some code to GstPipeline, mostly clocking related.
4938
4939 2005-03-09  Wim Taymans  <wim@fluendo.com>
4940
4941         * configure.ac:
4942         * gst/gst_private.h:
4943         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4944         (gst_bin_remove_func), (gst_bin_remove),
4945         (gst_bin_get_by_name_recurse_up):
4946         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
4947         (gst_clock_id_compare_func), (gst_clock_id_wait),
4948         (gst_clock_id_wait_async), (gst_clock_init),
4949         (gst_clock_adjust_unlocked), (gst_clock_get_time):
4950         * gst/gstelement.h:
4951         * gst/gstinfo.c: (_gst_debug_init):
4952         * gst/gstobject.h:
4953         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4954         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
4955         * gst/gstpad.h:
4956         Bump version number, we're now 0.9.0
4957         Add future debugging category.
4958         Fix NULL _unref() in _get_by_name_recurse_up
4959         Rearrange gstpad.h.
4960         Update some docs.
4961
4962 2005-03-08  Wim Taymans  <wim@fluendo.com>
4963
4964         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
4965         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4966         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
4967         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
4968         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
4969         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
4970         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
4971         * gst/elements/gstidentity.c: (gst_identity_class_init):
4972         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
4973         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
4974         * gst/elements/gstshaper.c: (gst_shaper_class_init):
4975         * gst/elements/gststatistics.c: (gst_statistics_class_init):
4976         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
4977         (gst_tee_link):
4978         * gst/gstelement.c: (gst_element_class_init),
4979         (gst_element_base_class_init), (gst_element_init),
4980         (gst_element_get_random_pad), (gst_element_wait_state_change),
4981         (gst_element_change_state), (gst_element_dispose),
4982         (gst_element_finalize), (gst_element_set_loop_function):
4983         * gst/gstelement.h:
4984         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
4985         * gst/gstthread.c: (gst_thread_class_init),
4986         (gst_thread_release_children_locks), (gst_thread_change_state):
4987         * gst/schedulers/gstbasicscheduler.c:
4988         (gst_basic_scheduler_loopfunc_wrapper),
4989         (gst_basic_scheduler_chain_wrapper),
4990         (gst_basic_scheduler_src_wrapper),
4991         (gst_basic_scheduler_remove_element):
4992         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4993         Remove threadsafe properties. Fix elements because GObject
4994         complains when installing a property before declaring a
4995         set/get_property handler.
4996         Rearrange gstelement.h file, use STATE macros for state locks.
4997         Free mutexes in the finalize method instead of dispose.
4998
4999 2005-03-08  Wim Taymans  <wim@fluendo.com>
5000
5001         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
5002         * gst/gstthread.c: (gst_thread_release_children_locks):
5003         Added parentage check.
5004         Fix build og GstThread again.
5005
5006 2005-03-08  Wim Taymans  <wim@fluendo.com>
5007
5008         * docs/design/part-MT-refcounting.txt:
5009         * docs/design/part-conventions.txt:
5010         * docs/design/part-gstobject.txt:
5011         * docs/design/part-relations.txt:
5012         * docs/design/part-standards.txt:
5013         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
5014         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
5015         (gst_bin_get_by_name), (gst_bin_get_by_interface),
5016         (gst_bin_iterate_all_by_interface):
5017         * gst/gstbuffer.h:
5018         * gst/gstclock.h:
5019         * gst/gstelement.c: (gst_element_class_init),
5020         (gst_element_change_state), (gst_element_set_loop_function):
5021         * gst/gstelement.h:
5022         * gst/gstiterator.c:
5023         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
5024         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
5025         (gst_object_dispatch_properties_changed), (gst_object_set_name),
5026         (gst_object_set_parent), (gst_object_unparent),
5027         (gst_object_check_uniqueness):
5028         * gst/gstobject.h:
5029         Docs updates, clean up some headers.
5030
5031 2005-03-07  Wim Taymans  <wim@fluendo.com>
5032
5033         * check/.cvsignore:
5034         * check/Makefile.am:
5035         * check/gst-libs/.cvsignore:
5036         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
5037         * check/gst/.cvsignore:
5038         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
5039         (START_TEST), (gstbus_suite), (main):
5040         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
5041         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
5042         (gst_data_suite), (main):
5043         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
5044         (add_fold_func), (gstiterator_suite), (main):
5045         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
5046         (thread_name_object), (thread_name_object_default),
5047         (gst_object_name_compare), (gst_object_suite), (main):
5048         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
5049         (gst_pad_suite), (main):
5050         * check/gstcheck.c: (gst_check_log_message_func),
5051         (gst_check_log_critical_func), (gst_check_init):
5052         * check/gstcheck.h:
5053         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
5054         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
5055         Added checks.
5056
5057 2005-03-07  Wim Taymans  <wim@fluendo.com>
5058
5059         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
5060         (gst_list_iterator_next), (gst_list_iterator_resync),
5061         (gst_list_iterator_free), (gst_iterator_new_list),
5062         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
5063         (gst_iterator_free), (gst_iterator_push), (filter_next),
5064         (filter_resync), (filter_uninit), (filter_free),
5065         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
5066         (gst_iterator_foreach), (find_custom_fold_func),
5067         (gst_iterator_find_custom):
5068         * gst/gstiterator.h:
5069         Added missing files.
5070
5071 2005-03-07  Wim Taymans  <wim@fluendo.com>
5072
5073         * Makefile.am:
5074         * configure.ac:
5075         * docs/design/part-MT-refcounting.txt:
5076         * docs/design/part-conventions.txt:
5077         * docs/design/part-gstobject.txt:
5078         * docs/design/part-relations.txt:
5079         * examples/mixer/mixer.c: (main):
5080         * examples/thread/thread.c: (eos), (main):
5081         * gst/Makefile.am:
5082         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
5083         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
5084         (gst_spider_plug_from_srcpad):
5085         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
5086         (gst_spider_identity_change_state),
5087         (gst_spider_identity_sink_loop_type_finding):
5088         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
5089         * gst/elements/gstidentity.c: (gst_identity_init):
5090         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
5091         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
5092         * gst/elements/gsttypefindelement.c: (free_entry):
5093         * gst/gst.c:
5094         * gst/gst.h:
5095         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
5096         (gst_bin_set_clock_func), (gst_bin_auto_clock),
5097         (gst_bin_set_index), (gst_bin_set_element_sched),
5098         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
5099         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
5100         (gst_bin_iterate_elements), (iterate_child_recurse),
5101         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
5102         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
5103         (compare_interface), (gst_bin_get_by_interface),
5104         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
5105         * gst/gstbin.h:
5106         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
5107         (gst_buffer_default_free), (gst_buffer_default_copy),
5108         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
5109         (gst_buffer_create_sub):
5110         * gst/gstbuffer.h:
5111         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
5112         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
5113         (gst_caps_unref), (gst_static_caps_get),
5114         (gst_caps_remove_and_get_structure), (gst_caps_append),
5115         (gst_caps_append_structure), (gst_caps_remove_structure),
5116         (gst_caps_copy_nth), (gst_caps_set_simple),
5117         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
5118         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
5119         (gst_caps_structure_intersect_field), (gst_caps_intersect),
5120         (gst_caps_structure_subtract_field), (gst_caps_subtract),
5121         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
5122         (gst_caps_structure_figure_out_union),
5123         (gst_caps_switch_structures), (gst_caps_do_simplify),
5124         (gst_caps_replace), (gst_caps_from_string),
5125         (gst_caps_copy_conditional):
5126         * gst/gstcaps.h:
5127         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
5128         (_gst_clock_id_free), (gst_clock_id_unref),
5129         (gst_clock_id_compare_func), (gst_clock_id_wait),
5130         (gst_clock_id_wait_async), (gst_clock_class_init),
5131         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
5132         (gst_clock_get_time), (gst_clock_set_time_adjust),
5133         (gst_clock_set_property), (gst_clock_get_property):
5134         * gst/gstclock.h:
5135         * gst/gstcompat.h:
5136         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
5137         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
5138         * gst/gstdata.h:
5139         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
5140         (gst_element_requires_clock), (gst_element_provides_clock),
5141         (gst_element_set_clock), (gst_element_clock_wait),
5142         (gst_element_wait), (gst_element_set_time_delay),
5143         (gst_element_is_indexable), (gst_element_add_pad),
5144         (gst_element_add_ghost_pad), (gst_element_remove_pad),
5145         (pad_compare_name), (gst_element_get_static_pad),
5146         (gst_element_request_pad), (gst_element_get_request_pad),
5147         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
5148         (gst_element_class_get_pad_template_list),
5149         (gst_element_class_get_pad_template), (gst_element_error_func),
5150         (gst_element_get_random_pad), (gst_element_get_event_masks),
5151         (gst_element_send_event), (gst_element_seek),
5152         (gst_element_get_query_types), (gst_element_query),
5153         (gst_element_get_formats), (gst_element_convert),
5154         (gst_element_is_locked_state), (gst_element_set_locked_state),
5155         (gst_element_sync_state_with_parent), (gst_element_change_state),
5156         (gst_element_finalize), (gst_element_yield),
5157         (gst_element_interrupt), (gst_element_set_scheduler),
5158         (gst_element_get_scheduler), (gst_element_set_loop_function):
5159         * gst/gstelement.h:
5160         * gst/gstevent.h:
5161         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
5162         (gst_format_get_by_nick), (gst_format_get_details),
5163         (gst_format_iterate_definitions):
5164         * gst/gstformat.h:
5165         * gst/gstindex.c: (gst_index_gtype_resolver):
5166         * gst/gstinfo.c:
5167         * gst/gstinfo.h:
5168         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
5169         (gst_mem_chunk_free):
5170         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
5171         (gst_object_ref), (gst_object_unref), (gst_object_sink),
5172         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
5173         (gst_object_dispatch_properties_changed),
5174         (gst_object_set_name_default), (gst_object_set_name),
5175         (gst_object_get_name), (gst_object_set_name_prefix),
5176         (gst_object_get_name_prefix), (gst_object_set_parent),
5177         (gst_object_get_parent), (gst_object_unparent),
5178         (gst_object_check_uniqueness), (gst_object_save_thyself),
5179         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
5180         (gst_object_set_property), (gst_object_get_property),
5181         (gst_object_get_path_string):
5182         * gst/gstobject.h:
5183         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
5184         (gst_real_pad_init), (gst_real_pad_get_property),
5185         (gst_pad_custom_new), (gst_pad_get_direction),
5186         (gst_pad_set_active), (gst_pad_is_active),
5187         (gst_pad_set_event_function), (gst_pad_is_linked),
5188         (gst_pad_link_free), (gst_pad_link_intersect),
5189         (gst_pad_link_fixate), (gst_pad_set_caps),
5190         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
5191         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
5192         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
5193         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
5194         (gst_pad_get_caps), (gst_pad_peer_get_caps),
5195         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
5196         (gst_pad_realize), (gst_pad_get_allowed_caps),
5197         (gst_real_pad_dispose), (gst_real_pad_finalize),
5198         (gst_pad_collectv), (gst_pad_collect_valist),
5199         (gst_pad_template_dispose), (gst_pad_template_new),
5200         (gst_pad_get_internal_links):
5201         * gst/gstpad.h:
5202         * gst/gstpipeline.c: (gst_pipeline_dispose),
5203         (gst_pipeline_change_state):
5204         * gst/gstpipeline.h:
5205         * gst/gstplugin.c:
5206         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
5207         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
5208         * gst/gstpluginfeature.h:
5209         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5210         * gst/gstquery.c: (_gst_query_type_initialize),
5211         (gst_query_type_register), (gst_query_type_get_by_nick),
5212         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
5213         * gst/gstquery.h:
5214         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
5215         * gst/gstscheduler.c: (gst_scheduler_add_element),
5216         (gst_scheduler_factory_create):
5217         * gst/gststructure.c: (gst_structure_set_parent_refcount),
5218         (gst_structure_free), (gst_structure_set_name),
5219         (gst_structure_id_set_value), (gst_structure_set_value),
5220         (gst_structure_set_valist), (gst_structure_remove_field),
5221         (gst_structure_remove_fields),
5222         (gst_structure_remove_fields_valist),
5223         (gst_structure_remove_all_fields), (gst_structure_foreach),
5224         (gst_structure_map_in_place),
5225         (gst_caps_structure_fixate_field_nearest_int),
5226         (gst_caps_structure_fixate_field_nearest_double):
5227         * gst/gststructure.h:
5228         * gst/gstsystemclock.c: (gst_system_clock_class_init),
5229         (gst_system_clock_init), (gst_system_clock_dispose),
5230         (gst_system_clock_async_thread),
5231         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
5232         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
5233         * gst/gstsystemclock.h:
5234         * gst/gsttag.c: (gst_tag_list_add_value_internal),
5235         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
5236         * gst/gsttaginterface.c:
5237         * gst/gstthread.c: (gst_thread_dispose),
5238         (gst_thread_release_children_locks), (gst_thread_change_state),
5239         (gst_thread_main_loop):
5240         * gst/gsttrashstack.h:
5241         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
5242         * gst/gsttypes.h:
5243         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
5244         (gst_element_request_pad), (gst_element_get_pad_from_template),
5245         (gst_element_request_compatible_pad),
5246         (gst_element_get_compatible_pad_filtered),
5247         (gst_element_get_compatible_pad), (gst_element_state_get_name),
5248         (gst_element_link_pads_filtered), (gst_element_link_filtered),
5249         (gst_element_link_many), (gst_element_link),
5250         (gst_element_link_pads), (gst_element_unlink_pads),
5251         (gst_element_unlink_many), (gst_element_unlink),
5252         (gst_pad_can_link_filtered), (gst_pad_can_link),
5253         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
5254         (gst_object_default_error), (gst_bin_add_many),
5255         (gst_bin_remove_many), (gst_element_populate_std_props),
5256         (gst_element_class_install_std_props), (gst_buffer_merge),
5257         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
5258         (link_fold_func), (gst_pad_proxy_setcaps):
5259         * gst/gstutils.h:
5260         * gst/gstvalue.c: (gst_value_deserialize_string):
5261         * gst/parse/grammar.y:
5262         * gst/schedulers/gstbasicscheduler.c:
5263         (gst_basic_scheduler_cothreaded_chain),
5264         (gst_basic_scheduler_chain_recursive_add),
5265         (gst_basic_scheduler_pad_link):
5266         * gst/schedulers/gstoptimalscheduler.c:
5267         (get_group_schedule_function),
5268         (gst_opt_scheduler_state_transition),
5269         (gst_opt_scheduler_add_element), (element_get_reachables_func):
5270         * libs/gst/bytestream/bytestream.c:
5271         * libs/gst/dataprotocol/dataprotocol.c:
5272         (gst_dp_header_from_buffer):
5273         * po/nb.po:
5274         * po/ru.po:
5275         * tests/threadstate/threadstate2.c: (eos):
5276         * tools/gst-compprep.c: (main):
5277         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
5278         (print_pad_info), (print_children_info):
5279         * tools/gst-launch.c: (idle_func), (main):
5280         * tools/gst-md5sum.c: (idle_func), (main):
5281         * tools/gst-xmlinspect.c: (print_element_info):
5282         First THREADED backport attempt, focusing on adding locks and
5283         making sure the API is threadsafe. Needs more work. More docs
5284         follow this week.
5285
5286 2005-02-24  Andy Wingo  <wingo@pobox.com>
5287
5288         * tests/bench-complexity.scm:
5289         * tests/complexity.gnuplot: New files, good for running complexity
5290         benchmarks.
5291
5292         * tests/Makefile.am:
5293         * tests/complexity.c: New test, sets up N elements, at each level
5294         teeing into M streams per element. Eeeenteresting.
5295
5296         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
5297         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
5298         running bench-mass_elements.scm.
5299
5300         * tests/bench-mass_elements.scm: New script, runs mass_elements
5301         for various numbers of identities, outputting the results to a
5302         file. Requires guile 1.6. Just for testing.
5303
5304 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5305
5306         * gst/schedulers/fairscheduler.c:
5307           compile with debug disabled
5308
5309 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
5310
5311         * configure.ac:
5312           hunting season on 0.9 is now OPEN
5313
5314 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
5315
5316         * docs/libs/tmpl/gstcontrol.sgml:
5317         * docs/libs/tmpl/gstdparam.sgml:
5318         * docs/libs/tmpl/gstdplinint.sgml:
5319         * docs/libs/tmpl/gstdpman.sgml:
5320         * docs/libs/tmpl/gstdpsmooth.sgml:
5321         * docs/libs/tmpl/gstunitconvert.sgml:
5322           more docs for the state of dparams
5323
5324 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5325
5326         * gst/gstelementfactory.c: (gst_element_factory_create):
5327         * gst/gstobject.c: (gst_object_init),
5328         (gst_object_set_name_default), (gst_object_set_name):
5329           name objects by default, not in gst_element_factory_create. Allows
5330           using elements created with g_object_new. (fixes #167283)
5331
5332 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5333
5334         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
5335           make the time that debugging functions print relative to when
5336           gst_init was called
5337
5338 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
5339
5340         * gst/gsttaginterface.c:
5341           Fix inline docs: tag setter vararg functions are NULL-terminated,
5342           GST_TAG_INVALID doesn't exist any more.
5343
5344 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5345
5346         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
5347         Allocate the 1 byte more memory that was forgotten!!!!!
5348         fixes memory corruption on 64bit platforms
5349
5350 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
5351
5352         * docs/pwg/building-pads.xml:
5353         * docs/pwg/intro-basics.xml:
5354           fixed a few typos, relabeled introductionary list of types
5355         * docs/random/ensonic/dparams.txt:
5356           more notes abut dparam changes
5357         * libs/gst/control/dparam.c: (gst_dparam_attach):
5358         * libs/gst/control/dparammanager.c:
5359         * libs/gst/control/dparammanager.h:
5360           - many comments and notes on dparam implementation
5361           - new dparams are were not initialized to the default value
5362             from param spec
5363
5364 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
5365
5366         submitted by: Peter Astakhov
5367
5368         * po/LINGUAS:
5369         * po/ru.po:
5370           adding Russian translation
5371
5372 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5373
5374         * configure.ac:
5375         * docs/gst/Makefile.am:
5376         * docs/libs/Makefile.am:
5377           make sure popt is added to gtk-doc flags.  Fixes #147782.
5378
5379 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
5380
5381         * docs/faq/using.xml:
5382           Fix typo in FAQ (artssink => artsdsink)
5383
5384 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5385
5386         * tools/gst-launch.1.in:
5387           Fix typo (#166699).
5388
5389 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
5390
5391         * docs/faq/using.xml:
5392           Add -v argument to fakesrc/fakesink gst-launch line,
5393           so that the promised output will actually show up.
5394
5395 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5396
5397         * gst/gstthread.c: (gst_thread_change_state):
5398           Implement state-change error handling (#166073).
5399
5400 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5401
5402         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
5403           Release interrupt after handling (#166250).
5404
5405 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5406
5407         * configure.ac:
5408           back to HEAD
5409
5410 === release 0.8.9 ===
5411
5412 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5413
5414         * NEWS:
5415         * RELEASE:
5416         * configure.ac:
5417           releasing 0.8.9, "Like Eating Glass"
5418
5419 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5420
5421         submitted by: Clytie Siddall
5422
5423         * po/vi.po: Added Vietnamese translation
5424
5425 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5426
5427         patch by: Tim Philipp-Müller
5428
5429         * configure.ac:
5430         * gst/gstpad.c:
5431           unref data when probe function returns FALSE.  Fixes #166362
5432
5433 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5434
5435         * gst/gst.c: (gst_init_get_popt_table):
5436           Fix typo (#166269).
5437
5438 2005-02-04  Andy Wingo  <wingo@pobox.com>
5439
5440         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
5441         the debugging on whether the caps are compatible.
5442
5443 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5444
5445         * docs/manual/basics-elements.xml:
5446           Fix two typos.
5447
5448 2005-02-02  Wim Taymans  <wim@fluendo.com>
5449
5450         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
5451         (schedule_chain), (get_invalid_call), (chain_invalid_call),
5452         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
5453         Remove some FIXMEs after analysing and commenting why they
5454         are not issues.
5455
5456 2005-02-02  Wim Taymans  <wim@fluendo.com>
5457
5458         * gst/schedulers/gstoptimalscheduler.c:
5459         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
5460         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
5461         (get_invalid_call), (chain_invalid_call),
5462         (get_group_schedule_function), (loop_group_schedule_function),
5463         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
5464         (gst_opt_scheduler_state_transition),
5465         (gst_opt_scheduler_add_element),
5466         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
5467         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
5468         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
5469         (gst_opt_scheduler_show):
5470         Added lock to protect scheduler data structures.
5471
5472 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5473
5474         * testsuite/threads/threadi.c: (cb_data):
5475           Fix buglet in test.
5476
5477 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5478
5479         * testsuite/threads/Makefile.am:
5480         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
5481           On Wim's request, split the test in three separately-compiled
5482           tests that each test a very specific bug. Two of them still fail,
5483           will create bugs for those. threadi.c indicates why they fail.
5484
5485 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5486
5487         * gst/schedulers/gstoptimalscheduler.c:
5488         (get_group_schedule_function):
5489           Try to work with the threading mess that queue_link is.
5490
5491 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5492
5493         * gst/gstbin.c: (gst_bin_remove_func):
5494           Explicitely make an element release locks in a group when being
5495           remove from a bin.
5496         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
5497           If there's no scheduler, always return immediately (similar to
5498           gst_element_interrupt).
5499
5500 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5501
5502         * gst/gstbin.c: (gst_bin_child_state_change_func):
5503           Remove a piece of code that could never be reached.
5504         * docs/gst/gstreamer-sections.txt:
5505         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
5506         (gst_pad_call_get_function):
5507         * gst/gstpad.h:
5508         * testsuite/pad/Makefile.am:
5509           Fix #150546, enable tests.
5510
5511 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5512
5513         * docs/pwg/advanced-types.xml:
5514           Fix description for buffer-frames=0.
5515         * docs/gst/tmpl/gstbin.sgml:
5516         * gst/gstbin.c: (gst_bin_child_state_change_func),
5517         (gst_bin_change_state), (gst_bin_change_state_norecurse):
5518         * gst/gstbin.h:
5519         * testsuite/threads/Makefile.am:
5520         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
5521         (cb_state), (cb_play), (main):
5522           Fix non-recursive state changes to *really* change the state
5523           of the object, and not just call parent_class->state_change.
5524           Fix a lot of lockups caused by this. Fixes #132775. Add test
5525           for the problem. Also enable test to show #142588 (fixed).
5526         * gst/gstthread.c: (gst_thread_change_state),
5527         (gst_thread_child_state_change):
5528           Don't exit the thread if we go to NULL and are inside thread
5529           context. Instead, return control to the main thread context
5530           and exit from there.
5531         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
5532           Don't unset virtual functions, since those may still be used.
5533           That's not necessarily correct, but suffices for now.
5534         * configure.ac:
5535         * testsuite/Makefile.am:
5536         * testsuite/pad/Makefile.am:
5537         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
5538         (gst_test_sink_base_init), (gst_test_sink_chain),
5539         (gst_test_sink_init), (main):
5540         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
5541         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
5542         (main):
5543         * testsuite/pad/link.c: (gst_test_element_class_init),
5544         (gst_test_element_base_init), (gst_test_src_get),
5545         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
5546         (gst_test_filter_loop), (gst_test_filter_init),
5547         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
5548         (cb_error), (main):
5549           Add tests to show #150546. Pass, but should fail (currently
5550           disabled from the testsuite).
5551         * gst/gstscheduler.c: (gst_scheduler_dispose):
5552           Dereference child schedulers on dispose (#94464).
5553         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
5554           Fix typo.
5555         * testsuite/threads/thread.c: (main):
5556           Add more debug.
5557
5558 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5559
5560         * gst/gstpad.c: (gst_pad_push):
5561           Oops, revert previous commit, broke testsuite...
5562
5563 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5564
5565         * gst/gstpad.c: (gst_pad_push):
5566           Add check that the pad on which the push is performed is not a
5567           get-based pad (#150546).
5568
5569 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5570
5571         * gst/elements/gsttypefindelement.c:
5572         (gst_type_find_element_handle_event):
5573           Fix buffer pushing if stream EOSes during typefinding.
5574
5575 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
5576
5577         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5578
5579         * gst/gstvalue.c: (gst_string_wrap):
5580           Allow NULL-strings as argument (#165365).
5581
5582 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
5583
5584         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5585
5586         * gst/schedulers/faircothreads.c:
5587         (gst_fair_scheduler_cothread_queue_show):
5588           Fix build without debug enabled.
5589
5590 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
5591
5592         * docs/gst/gstreamer-sections.txt:
5593         * docs/libs/gstreamer-libs-docs.sgml:
5594         * docs/libs/gstreamer-libs-sections.txt:
5595         * docs/libs/tmpl/gstcontrol.sgml:
5596         * docs/libs/tmpl/gstdparam.sgml:
5597         * docs/libs/tmpl/gstdplinint.sgml:
5598         * docs/libs/tmpl/gstdpman.sgml:
5599         * docs/libs/tmpl/gstdpsmooth.sgml:
5600         * docs/libs/tmpl/gstputbits.sgml:
5601         * docs/libs/tmpl/gstunitconvert.sgml:
5602         * libs/gst/control/dparam.c:
5603         * libs/gst/control/dparam.h:
5604         * libs/gst/control/dparammanager.c:
5605         (gst_dpman_add_required_dparam_callback),
5606         (gst_dpman_add_required_dparam_direct),
5607         (gst_dpman_add_required_dparam_array),
5608         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
5609         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
5610         (gst_dpman_get_manager)
5611           restructured DParam docs
5612
5613 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
5614
5615         * gst-element-check.m4:
5616           Only check for gst-inspect if we haven't already
5617           found it in previous element check runs
5618
5619 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
5620
5621         * docs/gst/Makefile.am:
5622         * docs/libs/Makefile.am:
5623           fixed install rules to treat style.css as optional
5624
5625 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
5626
5627         * docs/gst/Makefile.am:
5628         * docs/libs/Makefile.am:
5629           install style.css along with docs
5630         * docs/gst/tmpl/gstbin.sgml:
5631         * docs/gst/tmpl/gstclock.sgml:
5632         * docs/gst/tmpl/gstdata.sgml:
5633         * docs/gst/tmpl/gstelement.sgml:
5634         * gst/gstbin.h:
5635         * gst/gstelement.c: (gst_element_class_init):
5636         * gst/gstelement.h:
5637           fixing incomplete docs
5638
5639 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
5640
5641         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5642           Don't unref seek event twice when fflush() fails
5643           
5644 2005-01-22  David Schleef  <ds@schleef.org>
5645
5646         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
5647
5648 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
5649
5650         * docs/gst/Makefile.am:
5651         * docs/libs/Makefile.am:
5652           added params for deprecation guards
5653         * gst/gst.c:
5654         * gst/gst.h:
5655         * gst/gsterror.c: (_gst_resource_errors_init),
5656         (_gst_stream_errors_init):
5657         * gst/gsterror.h:
5658           documented some more enums
5659
5660 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
5661         * gst/autoplug/gstspideridentity.c:
5662         Cosmetic fix - spider_find_peek should be static
5663         * gst/parse/parse.l:
5664         Applying fix for #164261
5665
5666 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
5667
5668         * docs/gst/gstreamer-sections.txt:
5669         * docs/gst/tmpl/gstplugin.sgml:
5670         * docs/libs/gstreamer-libs-sections.txt:
5671         * docs/libs/tmpl/gstcontrol.sgml:
5672         * gst/gstbuffer.h:
5673         * gst/gsttag.h:
5674         * gst/gstvalue.c:
5675           added docs for the TAG defines
5676
5677 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5678
5679         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
5680           Only unref entry if there is an entry.
5681
5682 2005-01-17  Wim Taymans  <wim@fluendo.com>
5683
5684         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5685         (remove_from_group), (schedule_group), (normalize_group),
5686         (gst_opt_scheduler_iterate):
5687         Also ref/unref decoupled elements before iterating the
5688         group since they are not added to the list of elements.
5689
5690 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5691
5692         * docs/manual/highlevel-components.xml:
5693           Add subtitle/streamselection as new features to playbin.
5694
5695 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5696
5697         * docs/manual/manual.xml:
5698           Re-enable dataaccess docs (oops).
5699
5700 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5701
5702         * docs/pwg/advanced-types.xml:
5703         * docs/random/mimetypes:
5704           Add documentation on libsndfile types (#163309), by Steve Baker
5705           <steve@stevebaker.org>.
5706         * gst/gstelement.c: (gst_element_release_request_pad):
5707           If an element has no explicit function, just remove the pad.
5708
5709 2005-01-17  Luca Ognibene  <luogni@tin.it>
5710
5711         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5712
5713         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
5714           Fix memleak (#163801).
5715
5716 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5717
5718         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
5719           I think this is actually more correct...
5720
5721 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5722
5723         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5724           Another workaround for memory access while destroyed in callback.
5725           Please, someone with refcount knowledge, have a look at this.
5726
5727 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5728
5729         * docs/faq/faq.xml:
5730         * docs/faq/legal.xml:
5731           move the legal Q&A here
5732
5733 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5734
5735         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
5736         (gst_tee_request_new_pad):
5737           Fix negotiation.
5738
5739 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5740
5741         * docs/random/omega/caps2:
5742         * testsuite/caps/caps_strings:
5743           replace framerate aproximations by their real value
5744           (24000/1001, 30000/1001, 60000/1001)
5745           Partially fixes bug #164049
5746
5747 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5748
5749         * docs/gst/Makefile.am:
5750           don't fail on the stupid GstPoptOption
5751
5752 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5753
5754         * gst/gstpad.h:
5755         * gst/gstprobe.c:
5756           allow probes to work on ghost pads by realizing the pad
5757           probe debugging
5758
5759 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5760
5761         * docs/gst/gstreamer-sections.txt:
5762         * docs/gst/tmpl/gstpad.sgml:
5763         * gst/gstpad.c: (gst_pad_set_active_recursive):
5764         * gst/gstpad.h:
5765           Add gst_pad_set_active_recursive().
5766
5767 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5768
5769         * docs/random/release:
5770           updates
5771         * gst/gst_private.h:
5772         * gst/gstinfo.c:
5773         * gst/gstobject.c:
5774           move deep_notify logging to a new category
5775         * gst/gstprobe.c:
5776         * gst/gstprobe.h:
5777           add stuff so bindings can wrap probes
5778
5779 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5780
5781         * gst/gstplugin.c: (gst_plugin_load):
5782           Fix plugin loading if plugin/lib was already loaded. Fixes
5783           #163383
5784
5785 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
5786
5787         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5788
5789         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
5790           Protect plugin loading by a mutex so it's threadsafe. Fixes
5791           #163234.
5792
5793 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5794
5795         * gst/gstevent.c: (_gst_event_copy):
5796           Reference source object when copying events, since it'll be
5797           dereferenced on event dereferencing as well.
5798
5799 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5800
5801         * docs/gst/gstreamer-sections.txt:
5802         * docs/gst/tmpl/gstevent.sgml:
5803         * gst/gstevent.c: (gst_event_new_filler_stamped),
5804         (gst_event_filler_get_duration):
5805         * gst/gstevent.h:
5806           Add two new functions for filler events (which are used to
5807           synchronize streams if one of them is not having any data
5808           for a while) without interrupting the actual data-stream.
5809           Basically a no-op.
5810         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5811         (gst_queue_link_sink), (gst_queue_link_src),
5812         (gst_queue_change_state):
5813           Allow for renegotiation while filled. Required for stream
5814           switching while playing.
5815
5816 2005-01-08  Benjamin Otte  <otte@gnome.org>
5817
5818         * gst/gstelement.c: (gst_element_link_many):
5819           fix up g_return_if_fail's
5820         * po/LINGUAS:
5821         * po/de.po:
5822           add German translation, that was somehow not included
5823
5824 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5825
5826         * docs/random/mimetypes:
5827           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
5828           do not add them to riff-lib as they are not common
5829
5830 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5831
5832         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5833           Check for existence of probe after performing the probe before
5834           re-accessing it to prevent segfaults caused by removal of the
5835           probe in the callback.
5836
5837 2005-01-05  David Schleef  <ds@schleef.org>
5838
5839         * testsuite/registry/Makefile.am:
5840         * testsuite/registry/gst-print-formats.c:
5841         (print_pad_templates_info), (print_element_list),
5842         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
5843         (g_list_uniqify), (get_pad_templates_info),
5844         (get_element_mime_list), (print_mime_list), (main): A little
5845         program that looks through the registry to find elements of
5846         a given type.  Not particularly interesting as a test, except
5847         that there's no other test covering the same area.
5848
5849 2005-01-05  David Schleef  <ds@schleef.org>
5850
5851         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
5852         (fault_handler_sigaction), (fault_spin),
5853         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
5854         in signal.h-type signal handlers by not calling forbidden functions,
5855         including gst_element_set_state().
5856
5857 2005-01-05  David Schleef  <ds@schleef.org>
5858
5859         * gst/gstvalue.h: Mark _gst_reserved[] as private
5860
5861 2005-01-05  David Schleef  <ds@schleef.org>
5862
5863         * gst/gstvalue.c: Fix doc build problem.
5864
5865 2005-01-05  David Schleef  <ds@schleef.org>
5866
5867         * gst/gstvalue.c: Add some documentation
5868
5869 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
5870
5871         * docs/README:
5872           another shell oneliner for empty return value docs
5873         * gst/gstcaps.c:
5874         * gst/gstvalue.c:
5875         * libs/gst/control/dparam.c:
5876           more doc fixes (parameters and return values)
5877
5878 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
5879
5880         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5881
5882         * gst/gstregistry.h:
5883         * gst/registries/gstxmlregistry.c:
5884           Fix macro's for Mingw (fixes #162276).
5885
5886 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
5887
5888         * docs/README:
5889           quick shell oneliner to find undocumented members
5890         * docs/gst/tmpl/gstplugin.sgml:
5891         * docs/gst/tmpl/gstscheduler.sgml:
5892         * docs/gst/tmpl/gstthread.sgml:
5893           more enumtypes cleanup
5894         * gst/gsterror.h:
5895           activated documentation comments, now someone needs to document
5896           the enums :(
5897
5898 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5899
5900         * docs/manual/manual.xml:
5901           Add dataaccess part (doh!).
5902
5903 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5904
5905         * docs/manual/advanced-autoplugging.xml:
5906           Fix typo (intiate -> initiate).
5907
5908 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5909
5910         * docs/random/bbb/streamselection:
5911           Add some notes on how to handle multi-subtitle/-audio streams.
5912
5913 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
5914
5915         * docs/gst/gstreamer-docs.sgml:
5916         * docs/gst/gstreamer-sections.txt:
5917         * docs/gst/tmpl/gstenumtypes.sgml:
5918         * docs/gst/tmpl/gsterror.sgml:
5919         * docs/gst/tmpl/gstevent.sgml:
5920         * docs/gst/tmpl/gstpad.sgml:
5921         * docs/gst/tmpl/gstpadtemplate.sgml:
5922         * docs/gst/tmpl/gstthread.sgml:
5923           removed gstenumtypes section from docs and put all the enums into
5924           their sections
5925
5926 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5927
5928         * gst/gstplugin.c:
5929           document gst_library_load a bit more (riff special case + return
5930           value if already loaded)
5931         * testsuite/bytestream/filepadsink.c:
5932           plugin name is 'gstbytestream', not 'bytestream'
5933
5934 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5935
5936         * docs/random/bbb/subtitles:
5937           Add some first mind rumblings on proper subtitle support.
5938
5939 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
5940
5941         * po/ca.po:
5942         * po/sv.po:
5943           updated translations
5944
5945 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5946
5947         * docs/manual/advanced-dataaccess.xml:
5948           Add section on how to use fakesrc/fakesink/identity in your
5949           application, plus section on how to embed plugins. Also mention
5950           probes.
5951         * docs/manual/appendix-checklist.xml:
5952         * docs/manual/appendix-debugging.xml:
5953         * docs/manual/appendix-gnome.xml:
5954         * docs/manual/appendix-integration.xml:
5955           Debug -> checklist, GNOME -> integration, add sections on Linux,
5956           KDE integration and add other things useful for application
5957           development.
5958         * docs/manual/manual.xml:
5959           Remove some fixmes, update some file pointers.
5960         * docs/pwg/appendix-checklist.xml:
5961           Fix typo.
5962         * docs/pwg/building-boiler.xml:
5963           Remove ugly header and add commented fixme.
5964         * docs/pwg/pwg.xml:
5965           Add fixme.
5966         * examples/manual/Makefile.am:
5967           Add example for added docs.
5968
5969 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5970
5971         * configure.ac:
5972           back to HEAD
5973
5974 === release 0.8.8 ===
5975
5976 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5977
5978         * NEWS:
5979         * RELEASE:
5980         * configure.ac:
5981           Releasing 0.8.8, "I'll Take Care Of You"
5982
5983 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5984
5985         * configure.ac:
5986           second prerelease
5987
5988 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5989
5990         patch by: Wim Taymans
5991
5992         * gst/gstbin.c:
5993           Fix for #159852 - make iterate emission threadsafe
5994
5995 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5996
5997         * docs/faq/cvs.xml:
5998           notes about new fdo account request
5999
6000 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
6001
6002         * docs/gst/gstreamer-docs.sgml:
6003         * docs/gst/tmpl/gstenumtypes.sgml:
6004         * docs/gst/tmpl/gstplugin.sgml:
6005         * docs/libs/gstreamer-libs-docs.sgml:
6006           Added missing short docs. Added ids for navigation.
6007
6008 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6009
6010         * docs/manual/advanced-autoplugging.xml:
6011         * docs/manual/advanced-schedulers.xml:
6012         * docs/manual/advanced-threads.xml:
6013           Rewrites. Remove cothreads, go a bit into opt specifically,
6014           document threads and their gotchas, and do some technical stuff
6015           on autoplugging plus add some working examples. Fixes #157395.
6016         * examples/manual/Makefile.am:
6017           Add typefind/autoplugger example (one that actually works).
6018           Remove queue example since it's a duplicate of the thread one.
6019
6020 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6021
6022         * gst/gstvalue.c: (gst_value_deserialize_string):
6023           use deprecated g_value_set_string_take_ownership to keep compatible
6024           with glib 2.2
6025
6026 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6027
6028         * gst/gstvalue.c: (gst_value_deserialize_string):
6029           revert last patch, only dom a g_utf8_validate now before accepting
6030           the string - caps parsing strips " from strings so we can't rely on
6031           them
6032         * testsuite/caps/value_serialize.c: (test_string_deserialization):
6033           disable a test that tested the above and comment it
6034
6035 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
6036
6037         Patch reviewed by David Schleef  <ds@schleef.org>
6038
6039         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
6040         bug #153882)
6041         * win32/gstenumtypes.h: same
6042
6043 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6044
6045         * gst/gstpad.c: (gst_pad_query):
6046           Do query on realized pad, similar to how convert/send_event handle
6047           this. Also makes sense, since this pad belongs to the function to
6048           which this query will be sent. Fixes #158163.
6049
6050 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
6051
6052         * docs/manual/appendix-programs.xml: fix pipeline to actually work
6053
6054 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
6055
6056         * docs/faq/general.xml: fix pipeline to actually work
6057
6058 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6059
6060         * gst/gstvalue.c: (gst_value_deserialize_string):
6061           check that a simple string that gets deserialized does not contain
6062           invalid characters
6063         * testsuite/caps/value_serialize.c: (test_string_deserialization):
6064           remove a test that tested a wring behaviour
6065
6066 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
6067
6068         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6069
6070         * docs/manual/intro-motivation.xml:
6071           Fix typos.
6072
6073 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
6074
6075         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6076
6077         * docs/gst/tmpl/gstprobe.sgml:
6078           Fix documentation of probe callback - it is supposed to return
6079           FALSE, not TRUE, to remove data from the stream (#159087).
6080
6081 2004-12-16  Daniel Gazard  <dany42@free.fr>
6082
6083         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6084
6085         * gst/gstelementfactory.c: (gst_element_factory_create):
6086           Fix compile failure if compiling without libxml2 support (#149936).
6087
6088 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6089
6090         * docs/manual/advanced-autoplugging.xml:
6091         * docs/manual/highlevel-components.xml:
6092           Move spider from autoplugging to components. Autoplugging is for
6093           internals, not for solutions. ;-).
6094
6095 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6096
6097         * docs/random/ds/0.9-suggested-changes:
6098           Make note on device/location/uri property names.
6099
6100 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6101
6102         * docs/manual/advanced-autoplugging.xml:
6103         * docs/manual/advanced-clocks.xml:
6104         * docs/manual/advanced-interfaces.xml:
6105         * docs/manual/advanced-metadata.xml:
6106         * docs/manual/advanced-position.xml:
6107         * docs/manual/advanced-schedulers.xml:
6108         * docs/manual/advanced-threads.xml:
6109         * docs/manual/appendix-gnome.xml:
6110         * docs/manual/appendix-programs.xml:
6111         * docs/manual/appendix-quotes.xml:
6112         * docs/manual/autoplugging.xml:
6113         * docs/manual/basics-bins.xml:
6114         * docs/manual/basics-data.xml:
6115         * docs/manual/basics-elements.xml:
6116         * docs/manual/basics-helloworld.xml:
6117         * docs/manual/basics-init.xml:
6118         * docs/manual/basics-pads.xml:
6119         * docs/manual/basics-plugins.xml:
6120         * docs/manual/bins-api.xml:
6121         * docs/manual/bins.xml:
6122         * docs/manual/buffers-api.xml:
6123         * docs/manual/buffers.xml:
6124         * docs/manual/clocks.xml:
6125         * docs/manual/components.xml:
6126         * docs/manual/cothreads.xml:
6127         * docs/manual/debugging.xml:
6128         * docs/manual/dparams-app.xml:
6129         * docs/manual/dynamic.xml:
6130         * docs/manual/elements-api.xml:
6131         * docs/manual/elements.xml:
6132         * docs/manual/factories.xml:
6133         * docs/manual/gnome.xml:
6134         * docs/manual/goals.xml:
6135         * docs/manual/helloworld.xml:
6136         * docs/manual/helloworld2.xml:
6137         * docs/manual/highlevel-components.xml:
6138         * docs/manual/highlevel-xml.xml:
6139         * docs/manual/init-api.xml:
6140         * docs/manual/intro-basics.xml:
6141         * docs/manual/intro-motivation.xml:
6142         * docs/manual/intro-preface.xml:
6143         * docs/manual/intro.xml:
6144         * docs/manual/links-api.xml:
6145         * docs/manual/links.xml:
6146         * docs/manual/manual.xml:
6147         * docs/manual/motivation.xml:
6148         * docs/manual/pads-api.xml:
6149         * docs/manual/pads.xml:
6150         * docs/manual/plugins-api.xml:
6151         * docs/manual/plugins.xml:
6152         * docs/manual/programs.xml:
6153         * docs/manual/queues.xml:
6154         * docs/manual/quotes.xml:
6155         * docs/manual/schedulers.xml:
6156         * docs/manual/states-api.xml:
6157         * docs/manual/states.xml:
6158         * docs/manual/threads.xml:
6159         * docs/manual/typedetection.xml:
6160         * docs/manual/win32.xml:
6161         * docs/manual/xml.xml:
6162           Try 2. This time, include a short preface as a "general
6163           introduction", also add code blocks around all code samples
6164           so they get compiled. We still need a way to tell readers
6165           the filename of the code sample. In some cases, don't show
6166           all code in the documentation, but do include it in the generated
6167           code. This allows for focussing on specific bits in the docs,
6168           while still having a full test application available.
6169         * examples/manual/Makefile.am:
6170           Fix up examples for new ADM. Add several of the new examples that
6171           were either added or were missing from the build system.
6172         * examples/manual/extract.pl:
6173           Allow nameless blocks.
6174
6175 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6176
6177         * docs/manual/elements-api.xml:
6178         * docs/manual/helloworld.xml:
6179         * examples/manual/extract.pl:
6180           fix last example.  Add example of adding code blocks that are not
6181           shown in docbook output.
6182
6183 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6184
6185         * docs/manual/dynamic.xml:
6186         * docs/manual/elements-api.xml:
6187         * docs/manual/gnome.xml:
6188         * docs/manual/helloworld2.xml:
6189         * docs/manual/init-api.xml:
6190         * docs/manual/queues.xml:
6191         * docs/manual/threads.xml:
6192         * docs/manual/xml.xml:
6193         * examples/manual/extract.pl:
6194           Make it possible to extract example code from separate blocks.
6195           Should make Ronald happy.
6196
6197 2004-12-15  Wim Taymans  <wim@fluendo.com>
6198
6199         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6200         (remove_from_group), (group_elements_set_visited),
6201         (normalize_group), (gst_opt_scheduler_iterate):
6202         Fix bug where a flag was not updated on a decoupled entry point 
6203         because we were just checking the group element list and decoupled
6204         elements are not in that list..
6205
6206 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6207
6208         * docs/manual/advanced-autoplugging.xml:
6209         * docs/manual/advanced-clocks.xml:
6210         * docs/manual/advanced-dparams.xml:
6211         * docs/manual/advanced-interfaces.xml:
6212         * docs/manual/advanced-metadata.xml:
6213         * docs/manual/advanced-position.xml:
6214         * docs/manual/advanced-schedulers.xml:
6215         * docs/manual/advanced-threads.xml:
6216         * docs/manual/appendix-debugging.xml:
6217         * docs/manual/appendix-gnome.xml:
6218         * docs/manual/appendix-programs.xml:
6219         * docs/manual/appendix-quotes.xml:
6220         * docs/manual/appendix-win32.xml:
6221         * docs/manual/autoplugging.xml:
6222         * docs/manual/basics-bins.xml:
6223         * docs/manual/basics-data.xml:
6224         * docs/manual/basics-elements.xml:
6225         * docs/manual/basics-helloworld.xml:
6226         * docs/manual/basics-init.xml:
6227         * docs/manual/basics-pads.xml:
6228         * docs/manual/basics-plugins.xml:
6229         * docs/manual/bins-api.xml:
6230         * docs/manual/bins.xml:
6231         * docs/manual/buffers-api.xml:
6232         * docs/manual/buffers.xml:
6233         * docs/manual/clocks.xml:
6234         * docs/manual/components.xml:
6235         * docs/manual/cothreads.xml:
6236         * docs/manual/debugging.xml:
6237         * docs/manual/dparams-app.xml:
6238         * docs/manual/dynamic.xml:
6239         * docs/manual/elements-api.xml:
6240         * docs/manual/elements.xml:
6241         * docs/manual/factories.xml:
6242         * docs/manual/gnome.xml:
6243         * docs/manual/goals.xml:
6244         * docs/manual/helloworld.xml:
6245         * docs/manual/helloworld2.xml:
6246         * docs/manual/highlevel-components.xml:
6247         * docs/manual/highlevel-xml.xml:
6248         * docs/manual/init-api.xml:
6249         * docs/manual/intro-motivation.xml:
6250         * docs/manual/intro-preface.xml:
6251         * docs/manual/intro.xml:
6252         * docs/manual/links-api.xml:
6253         * docs/manual/links.xml:
6254         * docs/manual/manual.xml:
6255         * docs/manual/motivation.xml:
6256         * docs/manual/pads-api.xml:
6257         * docs/manual/pads.xml:
6258         * docs/manual/plugins-api.xml:
6259         * docs/manual/plugins.xml:
6260         * docs/manual/programs.xml:
6261         * docs/manual/queues.xml:
6262         * docs/manual/quotes.xml:
6263         * docs/manual/schedulers.xml:
6264         * docs/manual/states-api.xml:
6265         * docs/manual/states.xml:
6266         * docs/manual/threads.xml:
6267         * docs/manual/typedetection.xml:
6268         * docs/manual/win32.xml:
6269         * docs/manual/xml.xml:
6270           First try at rewriting the ADM. Needs lotsamore work, but some
6271           parts might already be somewhat useful.
6272         * docs/pwg/advanced-interfaces.xml:
6273           Remove properties interface, it never actually existed (except for
6274           on my HD...).
6275
6276 2004-12-13  David Schleef  <ds@schleef.org>
6277
6278         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
6279         be NULL (bug #160220).
6280
6281 2004-12-13  David Schleef  <ds@schleef.org>
6282
6283         * configure.ac: remove all mmx stuff, because it's not used.
6284         * docs/random/ds/0.9-suggested-changes: additional notes
6285         * include/Makefile.am: we don't use these anymore
6286         * include/mmx.h: remove
6287         * include/sse.h: remove
6288
6289 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6290
6291         * docs/random/mimetypes:
6292           Add FOURCC code for h264 codec (VSSH)
6293           Add alternate FOURCC codes for h263 related codecs
6294
6295 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
6296
6297         * docs/manual/programs.xml:
6298           Added more gst-launch examples.
6299
6300 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6301
6302         * gst/gstqueue.c: (gst_queue_handle_src_query):
6303           Check for availability again.
6304
6305 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6306
6307         * gst/gstcaps.c: (gst_caps_compare_structures):
6308           Simple caps go first. This has the nice side-effect of fixing an
6309           obscure warning.
6310
6311 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6312
6313         * gst/gstversion.h.in:
6314           Protect header.
6315
6316 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6317
6318         * gst/schedulers/gstoptimalscheduler.c:
6319         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
6320         (gst_opt_scheduler_get_wrapper):
6321           When we're recursing into a chain run, only run the directly
6322           related group, not all queued ones. This will fix a possible
6323           deadlock in chains with more than two groups.
6324
6325 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6326
6327         * autogen.sh:
6328           remove patch if autopoint fails
6329
6330 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6331
6332         * docs/gst/gstreamer-sections.txt:
6333           Document Thomas' addition, fix build, make Luis the sheriff happy.
6334
6335 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
6336
6337         * gst/gstplugin.c:
6338         * gst/gstplugin.h:
6339           add accessor for version field
6340
6341 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6342
6343         submitted by: Luca Ferretti <elle.uca@infinito.it>
6344
6345         * po/LINGUAS:
6346         * po/it.po:
6347           New tranlation added: Italian
6348
6349 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6350
6351         * gst/gstpad.c: (gst_pad_is_negotiated),
6352         (gst_pad_get_negotiated_caps):
6353           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
6354           it doesn't actually check the contents), so be sure to hand it
6355           a RealPad else we'll crash.
6356
6357 2004-12-03  Wim Taymans  <wim@fluendo.com>
6358
6359         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
6360         (gst_queue_link), (gst_queue_handle_src_query):
6361         Reverted to 1.110 until this makes the testsuite and various
6362         apps work.
6363
6364 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
6365
6366         * docs/upload.mak: fix included CVS conflict strings
6367
6368 2004-12-01  William Jon McCann  <mccann@jhu.edu>
6369
6370         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6371
6372         * gst/gstelement.c: (gst_element_error_full):
6373           Use g_error_new_literal because error text may have
6374           percentage signs in it. Fixes #160019.
6375
6376 2004-12-01  Benjamin Otte  <otte@gnome.org>
6377
6378         * gst/elements/gstbufferstore.c:
6379         (gst_buffer_store_add_buffer_func):
6380           don't try to make subbuffers bigger than they can be. (fixes
6381           #159970)
6382
6383 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6384
6385         * docs/gst/gstreamer-sections.txt:
6386         * docs/gst/tmpl/gstvalue.sgml:
6387           Add new function to docs to fix build.
6388
6389 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6390
6391         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
6392         * gst/gstpad.c: (_gst_pad_default_fixate_value),
6393         (_gst_pad_default_fixate_foreach):
6394         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
6395         * gst/gstvalue.h:
6396           Deprecate _type_is_fixed, use _value_is_fixed instead, since
6397           in some cases (arrays), the fixedness depends on the content.
6398         * gst/gstqueue.c: (gst_queue_handle_src_query):
6399           Check for availability before doing something.
6400
6401 2004-11-29  Wim Taymans  <wim@fluendo.com>
6402
6403         * testsuite/threads/Makefile.am:
6404         * testsuite/threads/signals.c: (gst_test_get_type),
6405         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
6406         (gst_test_set_property), (gst_test_get_property),
6407         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
6408         (gst_test_do_prop), (run_thread), (main):
6409         Added a bunch of testcases that show threadsafety bugs in glib.
6410
6411 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
6412
6413         * docs/manual/programs.xml:
6414           Added a first batch of gst-launch examples, as provided by Ronald
6415           and others from the devel-mlist
6416
6417 2004-11-28  Benjamin Otte  <otte@gnome.org>
6418
6419         * gst/gstelement.c: (gst_element_negotiate_pads):
6420           simplify
6421         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
6422         (gst_value_serialize_string), (gst_value_deserialize_string):
6423           add unwrapping of previously wrapped strings. Fix bug in wrapping
6424           while at it.
6425         * testsuite/caps/value_serialize.c: (test1),
6426         (test_string_serialization), (test_string_deserialization), (main):
6427           add tests for string (de)serialization
6428
6429 2004-11-26  Wim Taymans  <wim@fluendo.com>
6430
6431         * testsuite/threads/159566.c: (object_deep_notify), (main):
6432         * testsuite/threads/Makefile.am:
6433         Added testsuite to show bug #159566
6434
6435 2004-11-25  Wim Taymans  <wim@fluendo.com>
6436
6437         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
6438         (gst_thread_child_state_change), (gst_thread_main_loop):
6439         Ref the thread object in the GThread mainloop. Break out of the
6440         thread mainloop if it holds the last ref. This properly exits
6441         the threads when disposing the thread from its own context. It
6442         also avoids possible deadlocks in the dispose function.
6443
6444 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
6445
6446         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
6447         it is necessary to wait.
6448
6449 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6450
6451         * docs/pwg/building-boiler.xml:
6452           Make description somewhat clearer.
6453
6454 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6455
6456         * docs/upload.mak:
6457           Apparently docs changed location on FDO's server.
6458
6459 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6460
6461         * docs/pwg/appendix-checklist.xml:
6462           Add some random notes on things to check when writing an element.
6463           This list can be extended as people see fit.
6464
6465 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
6466
6467         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
6468         (gst_queue_link_src): Allow for renegotiating the caps of the sink
6469         pad. The queue will now wait until it is empty and forward the new
6470         caps to the source.
6471         * gst/gstbin.c (gst_bin_set_element_sched)
6472         (gst_bin_unset_element_sched): Make sure that all elements and
6473         links are registered and unregistered with the scheduler exactly
6474         once. This elaborates on a fix by Benjamin Otte, but
6475         guarantees that decoupled elements are also registered.
6476
6477 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
6478
6479         * docs/manual/quotes.xml:
6480           add a quote
6481         * configure.ac:
6482         * gst/gst.c:
6483         * gst/gstinfo.c:
6484           add LIBDIR and move init message higher up so it's at the start
6485
6486 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
6487
6488         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
6489         * gstreamer.spec.in: add fair
6490
6491 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6492
6493         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6494         * gst/elements/gstidentity.c: (gst_identity_class_init):
6495           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
6496           <teuf@gnome.org> (#157263).
6497         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
6498         (gst_type_find_handle_src_query):
6499           Subtract size of internally stored data from position queries.
6500
6501 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
6502
6503         * gst/schedulers/fairscheduler.c:
6504         * gst/schedulers/faircothreads.c:
6505         * gst/schedulers/faircothreads.h:
6506         New cothread based scheduler: Fair scheduler.
6507         * gst/schedulers/gthread-cothreads.h: 
6508         Add the standard #if around the whole file.
6509         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
6510         compilation of the functions defined in this file. This is
6511         necessary to be able to use this file as a normal header.
6512         * gst/schedulers/Makefile.am: Add compiling support for fair
6513         scheduler.
6514         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
6515         scheduler cothreads layer from documentation generation.
6516
6517 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6518
6519         * gst/autoplug/gstspideridentity.c:
6520         (gst_spider_identity_sink_loop_type_finding):
6521           Don't crash if that function is not implemented.
6522
6523 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6524
6525         * docs/pwg/advanced-types.xml:
6526           Another typo.
6527
6528 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6529
6530         * docs/pwg/intro-preface.xml:
6531           Hm, ok, so the brackets weren't really useful...
6532         * docs/pwg/other-ntoone.xml:
6533           Fix embarassing typo.
6534
6535 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6536
6537         * docs/pwg/intro-preface.xml:
6538           Rewrite preface.
6539
6540 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6541
6542         * docs/pwg/advanced-scheduling.xml:
6543         * docs/pwg/advanced-tagging.xml:
6544         * docs/pwg/advanced-types.xml:
6545         * docs/pwg/building-boiler.xml:
6546         * docs/pwg/building-chainfn.xml:
6547         * docs/pwg/building-signals.xml:
6548         * docs/pwg/building-state.xml:
6549         * docs/pwg/building-testapp.xml:
6550         * docs/pwg/intro-basics.xml:
6551         * docs/pwg/other-manager.xml:
6552         * docs/pwg/other-source.xml:
6553           Typo fixes.
6554         * docs/pwg/other-manager.xml:
6555           Add some first content. No example code yet.
6556         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
6557           Remove double newlines.
6558
6559 2004-11-04  Wim Taymans  <wim@fluendo.com>
6560
6561         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6562         (remove_from_group), (normalize_group), (group_migrate_connected),
6563         (gst_opt_scheduler_iterate):
6564         * testsuite/schedulers/.cvsignore:
6565         * testsuite/schedulers/Makefile.am:
6566         * testsuite/schedulers/queue_link.c: (main):
6567         Added testcase for scheduler segfault.
6568         Fix scheduler segfault when removing a decoupled
6569         entry point as the last element from a group.
6570
6571 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6572
6573         * gst/gstmarshal.list: add missing marshaller, fixes build
6574
6575 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6576
6577         * docs/random/signal: added notes about using BOXED for GstBuffer
6578         signal marshallers, not POINTER
6579
6580 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6581
6582         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6583         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
6584         POINTER=>BOXED changes to marshal GstBuffers
6585
6586 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6587
6588         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
6589         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
6590
6591 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
6592
6593         * docs/gst/gstreamer-sections.txt:
6594         * docs/gst/tmpl/gstcaps.sgml:
6595         * docs/gst/tmpl/gsterror.sgml:
6596         * docs/gst/tmpl/gstinfo.sgml:
6597         * docs/gst/tmpl/gstmacros.sgml:
6598         * docs/gst/tmpl/gstutils.sgml:
6599         * docs/random/ensonic/interfaces.txt:
6600         * gst/gstinfo.h:
6601           added some more docs, removed two obsolete defines
6602
6603 2004-11-02  Kjartan Maraas <as at gnome.org>
6604
6605         reviewed by: Wim Taymans, Ronald Bultje.
6606
6607         * gst/cothreads.c: (cothread_create):
6608         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
6609         (gst_bin_child_state_change_func):
6610         * gst/gstbuffer.c: (gst_buffer_span):
6611         * gst/gstelement.c: (gst_element_get_index),
6612         (gst_element_get_event_masks), (gst_element_get_query_types),
6613         (gst_element_get_formats):
6614         * gst/gsterror.c: (_gst_core_errors_init),
6615         (_gst_library_errors_init), (_gst_resource_errors_init),
6616         (_gst_stream_errors_init):
6617         * gst/gstobject.c: (gst_object_default_deep_notify):
6618         * gst/gstpad.c: (gst_pad_get_event_masks),
6619         (gst_pad_get_internal_links_default):
6620         * gst/gstplugin.c: (gst_plugin_register_func),
6621         (gst_plugin_get_module):
6622         * gst/gststructure.c: (gst_structure_get_string),
6623         (gst_structure_get_abbrs), (gst_structure_from_abbr),
6624         (gst_structure_to_abbr):
6625         * gst/gstutils.c: (gst_print_element_args):
6626         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6627         (setup_group_scheduler), (gst_opt_scheduler_iterate):
6628         Aplied part of patch #157127: Cleanup of issues reported by 
6629         sparse.
6630         Also do not try to use cothreads when there is no cothread
6631         context yet.
6632
6633 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
6634
6635         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6636         (gst_opt_scheduler_iterate):
6637         Applied patch #154061. Running a pipeline in which an element 
6638         calls GST_ELEMENT_ERROR in the chain function, the opt 
6639         scheduler doesn't unref the chain so it never gets freed.
6640
6641 2004-11-02  Wim Taymans  <wim@fluendo.com>
6642
6643         * gst/gststructure.c: (gst_structure_get_abbrs),
6644         (gst_structure_from_abbr), (gst_structure_to_abbr):
6645         Remove that ugly if-then thing in the code that converts
6646         between strings and types.
6647
6648 2004-11-02  Wim Taymans  <wim@fluendo.com>
6649
6650         * gst/gstscheduler.c: (gst_scheduler_add_element),
6651         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
6652         Aplied clock distribution patch, this should fix bug
6653         #148787.
6654
6655 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
6656
6657         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
6658
6659         * po/LINGUAS:
6660         * po/nb.po:
6661           Added Norwegian Bokmaal translation
6662
6663 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6664
6665         * tools/gst-inspect.c: (print_signal_info):
6666           print signal arguments as pointers if they are
6667
6668 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
6669
6670         * docs/pwg/building-boiler.xml:
6671           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
6672
6673 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6674
6675         * gst/parse/parse.l:
6676         * testsuite/parse/parse1.c: (main):
6677         Since parse can do 'element name=a:b' make 'a:b.' work as
6678         well. 
6679         Added testcase to verify fix.
6680
6681 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6682
6683         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
6684         Use the realpad when printing the direction.
6685         Add extra \n when printing extensions of typefind factories.
6686
6687 2004-10-13  David Schleef  <ds@schleef.org>
6688
6689         * examples/manual/Makefile.am: $< isn't portable in Makefile
6690         rules.
6691
6692 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
6693
6694         * docs/gst/tmpl/gstobject.sgml:
6695         * docs/gst/tmpl/gstplugin.sgml:
6696         * docs/gst/tmpl/gstpluginfeature.sgml:
6697         * docs/gst/tmpl/gstregistry.sgml:
6698         * docs/gst/tmpl/gstversion.sgml:
6699         * gst/gstbin.c:
6700           more api documentation
6701         * gst/gstplugin.c: (gst_plugin_register_func),
6702         (gst_plugin_check_file), (gst_plugin_load_file):
6703           better error signaling and logging
6704
6705 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6706
6707         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
6708           Subtract current queue contents from position queries.
6709
6710 2004-10-11  Johan Dahlin  <johan@gnome.org>
6711
6712         * gst/gsturi.c (gst_uri_get_location): unescape string
6713         (gst_uri_construct): escape string.
6714
6715 2004-10-11  Benjamin Otte  <otte@gnome.org>
6716
6717         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
6718         (gst_pad_try_set_caps_nonfixed):
6719           allow renegotiation of unconnected pads (as inside spider). Simply
6720           return OK if unconnected - mimic try_set_caps there.
6721
6722 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6723
6724         * gst/gstbin.c: (gst_bin_sync_children_state):
6725           Add missing break.
6726
6727 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6728
6729         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
6730         Set element to EOS before sending EOS event
6731
6732 2004-10-08  Wim Taymans  <wim at fluendo dot com>
6733
6734         * gst/elements/gsttypefindelement.c:
6735         (gst_type_find_element_handle_event):
6736         Handle EOS events when doing the transition from
6737         typefind to data passing. This should fix the
6738         infinite loops in short files.
6739
6740 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6741
6742         * gst/gstthread.c: (gst_thread_change_state),
6743         (gst_thread_child_state_change):
6744         Make sure no iteration happens while performing
6745         the state change as it could mess up the internal
6746         consistency of the thread state.
6747
6748 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6749
6750         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
6751         (gst_thread_change_state), (gst_thread_child_state_change):
6752         Do not try to grab the iterate lock in the state change method
6753         when we are in the same thread as the iterate or else we
6754         could deadlock. Some other cleanups.
6755
6756 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6757
6758         * configure.ac:
6759           bump nano to cvs
6760
6761 === release 0.8.7 ===
6762
6763 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6764
6765         * configure.ac:
6766         * NEWS:
6767         * RELEASE:
6768         * configure.ac:
6769           releasing 0.8.7, "A Cruise"
6770
6771 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6772
6773         * docs/random/mimetypes:
6774         Add an entry for Sony ATRAC3 audio format with mime-type
6775         used by rmdemux et riff-read
6776
6777 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6778
6779         * gst/elements/gsttypefindelement.c: (stop_typefinding):
6780         Push the buffer store instead of clearing it in case that
6781         the stream is not seekable.
6782
6783 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6784
6785         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
6786         (gst_thread_main_loop):
6787         Lock the iteration and the state change so that automatic
6788         negotiation and fixation does not happen at the same time
6789         as the in stream negotiation.
6790
6791 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6792
6793         * configure.ac:
6794           bump nano to cvs
6795
6796 === release 0.8.6 ===
6797
6798 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6799
6800         * configure.ac:
6801         * NEWS:
6802         * RELEASE:
6803         * configure.ac:
6804           releasing 0.8.6, "Narc"
6805
6806 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6807
6808         * configure.ac:
6809           prerel bump
6810
6811 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6812
6813         patch by: Steve Lhomme
6814
6815         * gst/elements/gstfakesrc.c:
6816         * gst/elements/gstidentity.c:
6817         * gst/gstthread.c:
6818           Fix for #153881
6819
6820 2004-10-01  Wim Taymans  <wim at fluendo dot com>
6821
6822         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
6823         Fix threadsafety of the crc checking function.
6824
6825 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6826
6827         patch by: Ronald Bultje
6828
6829         * gst/elements/gsttypefindelement.c: (stop_typefinding),
6830         (gst_type_find_element_handle_event),
6831         (gst_type_find_element_chain):
6832         * gst/elements/gsttypefindelement.h:
6833          #153657.
6834          Filter out discont event from seekable sources when typefind
6835          asks them to seek.  Fixes typefind with demuxers for
6836          avi, asf and matroska.
6837
6838 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6839
6840         * docs/gst/gstreamer-sections.txt:
6841         * gst/gstcaps.c:
6842         * gst/gstcaps.h:
6843         * gst/gstpad.c:
6844           Revert preferred caps: (#147789)
6845
6846 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
6847
6848         * win32/dirent.c:
6849           fix a memory leak
6850
6851 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6852
6853         * configure.ac:
6854           bump for prerelease
6855
6856 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6857
6858         * docs/Makefile.am:
6859         * docs/manual/elements-api.xml:
6860           restructure so that common stuff is shown first
6861         * docs/manual/init-api.xml:
6862           convert to examples
6863         * docs/manual/manual.xml:
6864         * docs/manuals.mak:
6865         * docs/url.entities:
6866           link to API on the website, possibly override later in build
6867         * examples/manual/.cvsignore:
6868           ignore more
6869         * examples/manual/Makefile.am:
6870           add more examples
6871         * examples/manual/extract.pl:
6872           error out on failure
6873
6874 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6875
6876         * docs/gst/tmpl/gstthread.sgml:
6877         * docs/manual/init-api.xml:
6878         * examples/manual/Makefile.am:
6879           convert two code bits to examples
6880
6881 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6882
6883         * gst/gstelement.c: (gst_element_change_state):
6884           Well, actually, I was about to remove this insane assert when
6885           I noticed Wim already did that. A warning is nice so we can
6886           fix actual ugs (using --g-fatal-warnings and backtraces), so
6887           I added that instead.
6888
6889 2004-09-06  Wim Taymans  <wim@fluendo.com>
6890
6891         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
6892         (gst_element_threadsafe_properties_post_run),
6893         (gst_element_set_state), (gst_element_change_state):
6894         Added extra refcounting around various places. 
6895
6896 2004-09-06  Wim Taymans  <wim@fluendo.com>
6897
6898         * gst/gstpad.c: (gst_pad_link_call_link_functions):
6899         Fix debug info.
6900
6901 2004-09-06  Wim Taymans  <wim@fluendo.com>
6902
6903         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6904         (remove_from_group):
6905         Some more debug info.
6906
6907 2004-09-03  Wim Taymans  <wim@fluendo.com>
6908
6909         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
6910         (gst_fakesrc_init), (gst_fakesrc_set_clock),
6911         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
6912         (gst_fakesrc_get), (gst_fakesrc_change_state):
6913         * gst/elements/gstfakesrc.h:
6914         * gst/elements/gstidentity.c: (gst_identity_class_init),
6915         (gst_identity_init), (gst_identity_chain),
6916         (gst_identity_set_property), (gst_identity_get_property),
6917         (gst_identity_change_state):
6918         * gst/elements/gstidentity.h:
6919         Added datarate properties to limit the datarate.
6920
6921 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6922
6923         * gst/autoplug/gstspider.c: (plugin_init):
6924           don't set a rank. We don't want to autoplug by inserting spiders.
6925
6926 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6927
6928         * gst/autoplug/gstspider.c: (gst_spider_class_init),
6929         (gst_spider_identity_plug):
6930           add a template for spider's sink
6931         * gst/gst.c: (gst_register_core_elements):
6932           queue's rank should be NULL, we don't want spider to add it.
6933
6934 2004-08-18  David Schleef  <ds@schleef.org>
6935
6936         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
6937         * docs/libs/Makefile.am: same
6938         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
6939         * docs/random/ds/0.9-planning: random additions
6940         * docs/random/ds/0.9-suggested-changes: same
6941         * gst/gstxml.h: remove vestigal GstXMLNs definition
6942
6943         Preferred caps: (#147789)
6944         * docs/gst/gstreamer-sections.txt: Add symbols
6945         * docs/gst/tmpl/gstcaps.sgml: Add symbols
6946         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
6947         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
6948         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
6949         (gst_caps_get_preferred), (gst_caps_set_preferred),
6950         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
6951         (gst_caps_use_preferred): Handle caps preferences
6952         * gst/gstcaps.h: Add caps preferences
6953         * gst/gstpad.c: (gst_pad_link_get_preferred),
6954         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
6955         (gst_pad_renegotiate), (gst_pad_guess_preferred),
6956         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
6957         negotiation.
6958
6959 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6960
6961         * gst/autoplug/gstspideridentity.c:
6962         (gst_spider_identity_request_new_pad):
6963         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
6964         (gst_aggregator_init):
6965         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
6966         (gst_fakesink_init):
6967         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
6968         (gst_fakesrc_init):
6969         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
6970         (gst_fdsink_init):
6971         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
6972         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
6973         (gst_filesink_init):
6974         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
6975         (gst_filesrc_init):
6976         * gst/elements/gstidentity.c: (gst_identity_base_init),
6977         (gst_identity_init):
6978         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
6979         (gst_multifilesrc_init):
6980         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
6981         (gst_pipefilter_init):
6982         * gst/elements/gststatistics.c: (gst_statistics_base_init),
6983         (gst_statistics_init):
6984         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
6985         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
6986           s/gst_pad_new/&_from_template/
6987           register pad templates in the base_init function
6988           add static pad template definitions
6989
6990 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6991
6992         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
6993         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
6994         * testsuite/refcounting/pad.c: (main):
6995         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
6996           s/gst_pad_new/&_from_template/
6997           prepare deprecation of gst_pad_new
6998
6999 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
7000
7001         patch by: Luca Ognibene <skaboy81@virgilio.it>
7002
7003         * gst/gstcaps.c:
7004         * gst/gstelement.c:
7005         * gst/gstpad.c:
7006         * gst/gstxml.c:
7007           fix memleaks.  Fixes #150001
7008
7009 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7010
7011         * docs/random/ds/0.9-suggested-changes:
7012           add notes - mostly about pad templates
7013
7014 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
7015
7016         * win32/GStreamer.vcproj:
7017           temporary locale files are .gmo not .mo
7018
7019 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7020
7021         * configure.ac: bump nano to cvs
7022
7023 === release 0.8.5 ===
7024
7025 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7026
7027         * configure.ac:
7028           releasing 0.8.5, "Stuttgart"
7029         * NEWS:
7030         * RELEASE:
7031         * configure.ac:
7032         * docs/random/release:
7033           updates for release
7034
7035 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7036
7037         patch by: Wim Taymans (wim@fluendo.com)
7038
7039         * gst/gstbuffer.c:
7040         * gst/gstindex.h:
7041         * libs/gst/dataprotocol/dataprotocol.c:
7042           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
7043
7044 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7045
7046         * Makefile.am:
7047         * win32/MANIFEST:
7048           add win32 dir to the build.  Fixes #149981.
7049
7050 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7051
7052         * configure.ac:
7053           bump libtool versioning
7054         * gst/gststructure.c:
7055           mark function as static
7056         * po/af.po:
7057         * po/az.po:
7058         * po/ca.po:
7059         * po/cs.po:
7060         * po/en_GB.po:
7061         * po/fr.po:
7062         * po/nl.po:
7063         * po/sq.po:
7064         * po/sr.po:
7065         * po/sv.po:
7066         * po/tr.po:
7067         * po/uk.po:
7068           translations update
7069         * win32/README.txt:
7070           trademark protection
7071
7072 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7073
7074         * configure.ac:
7075           fix GST_ORIGIN
7076           set GST_PACKAGE to source, and distinguish between release and other
7077         * tools/gst-inspect.c:
7078           print out plugin an element factory is part of so we see this info
7079
7080 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7081
7082         * docs/gst/gstreamer-sections.txt:
7083         * docs/gst/tmpl/gstbuffer.sgml:
7084         * docs/gst/tmpl/gstschedulerfactory.sgml:
7085           reorder docs a little, make GstBuffer's more sensible.
7086         * gst/gstbuffer.h:
7087           API: added GST_BUFFER_FLAG_DELTA_UNIT
7088         * gst/gstscheduler.c:
7089           comment API addition
7090
7091 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7092
7093         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
7094           work with non-regular files that can be mmapped (like /dev/zero)
7095         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
7096           get rid of typefinds that require a seek when we can't seek instead
7097           of trying them over and over again
7098         * tools/gst-launch.c: (idle_func), (error_cb), (main):
7099           return non-zero failure value when the pipeline was interrupted or
7100           an error occurred
7101
7102 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
7103
7104         * win32/config.h:
7105         * win32/GStreamer.vcproj:
7106           compile and install the locales
7107
7108 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
7109
7110         * gst/gstvalue.c:
7111           fix a possible memory leak under Windows
7112
7113 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
7114
7115         * win32/GStreamer.vcproj:
7116           fix a memory leak that occured under Windows
7117         * win32/gstreamer.def:
7118           add gst_scheduler_register
7119
7120 2004-08-11  Benjamin Otte  <otte@gnome.org>
7121
7122         * docs/gst/gstreamer-sections.txt:
7123         * gst/gstscheduler.c: (gst_scheduler_register):
7124         * gst/gstscheduler.h:
7125           API:
7126           add gst_scheduler_register shortcut similar to gst_element_register
7127         * gst/schedulers/entryscheduler.c: (plugin_init):
7128         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
7129         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
7130           use it
7131
7132 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
7133
7134         * gst/gstvalue.h:
7135           fix a memory leak that occured under Windows
7136
7137 2004-08-10  Colin Walters  <walters@redhat.com>
7138
7139         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
7140         Don't use O_EXCL to open temporary registry.  It will prevent
7141         registry creation if a temporary one already exists, which
7142         is unnecessary.
7143
7144 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7145
7146         * docs/gst/gstreamer-sections.txt:
7147         * docs/gst/tmpl/gstvalue.sgml:
7148           remove some valuable stuff from the documentation due to the use of GST_EXPORT
7149
7150 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7151
7152         * win32/gstbytestream.vcproj:
7153         * win32/gstelements.vcproj:
7154         * win32/gstgetbits.vcproj:
7155         * win32/gst-inspect.vcproj:
7156         * win32/gst-launch.vcproj:
7157         * win32/gstoptimalscheduler.vcproj:
7158         * win32/GStreamer.vcproj:
7159         * win32/gst-register.vcproj:
7160         * win32/gstspider.vcproj:
7161           update the include and lib dirs to fit standard libraries as
7162           described in the Win32 manual
7163
7164 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7165
7166         * win32/config.h:
7167         * win32/gstversion.h:
7168           enable NLS again, push the version number for the coming 0.8.5 release
7169
7170 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7171
7172         * gst/gstvalue.h:
7173           export gst_type_XXX for windows DLLs
7174
7175 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7176
7177         * docs/faq/gst-uninstalled:
7178           fix PKG_CONFIG_PATH and PYTHONPATH
7179         * gst/schedulers/Makefile.am:
7180           cleanup
7181         * libs/gst/bytestream/bytestream.c:
7182           remove newline
7183         * po/LINGUAS:
7184         * po/sq.po:
7185           adding Albanian translation (Laurent Dhima)
7186         * po/cs.po:
7187           updated
7188
7189 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7190
7191         * po/ca.po:
7192         * po/sv.po:
7193           updated translations
7194
7195 2004-08-04  Benjamin Otte  <otte@gnome.org>
7196
7197         * tests/mass_elements.c: (main):
7198           allow specifying src and sink element explicitly, so I can test
7199           videotestsrc instead of fakesrc
7200
7201 2004-08-04  Benjamin Otte  <otte@gnome.org>
7202
7203         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
7204         (gst_structure_id_empty_new), (gst_structure_empty_new),
7205         (gst_structure_copy):
7206           add gst_structure_id_empty_new_with_size to allow preallocating
7207           value array sizes. Use this in gst_structure_copy to get rid of
7208           reallocs.
7209           don't do quark=>string=>quark when copying structures
7210
7211 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
7212
7213         * docs/manual/win32.xml:
7214         * win32/README.txt:
7215           update documentation with the clean version of dependencies
7216
7217 2004-08-03  Benjamin Otte  <otte@gnome.org>
7218
7219         * gst/schedulers/entryscheduler.c:
7220         (gst_entry_scheduler_remove_element):
7221           fix for GST_DISABLE_DEBUG
7222         * tools/gst-launch.c: (print_tag):
7223           fixes for G_DISABLE_ASSERT
7224
7225 2004-08-03  Benjamin Otte  <otte@gnome.org>
7226
7227         * gst/gst.c: (gst_register_core_elements):
7228           fix for G_DISABLE_ASSERT
7229         * gst/gstinfo.c: (__gst_in_valgrind):
7230           add for GST_DISABLE_DEBUG
7231
7232 2004-08-03  Benjamin Otte  <otte@gnome.org>
7233
7234         * gst/parse/parse.l:
7235           fix for G_DISABLE_ASSERT
7236
7237 2004-08-03  Wim Taymans  <wim@fluendo.com>
7238
7239         * gst/gstbin.c: (gst_bin_get_type),
7240         (gst_bin_child_state_change_func):
7241         * gst/gstthread.c: (gst_thread_change_state):
7242         Backported some debug logging from a reverted patch
7243         Don't try to destroy the thread twice. Added some more
7244         debugging in GstThread. Unlock and signal even if we
7245         are in the thread context.
7246
7247 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7248
7249         * po/uk.po:
7250           updated translation
7251
7252 2004-07-30  David Schleef  <ds@schleef.org>
7253
7254         * gst/gstatomic_impl.h: Enable atomic code for x86_64
7255
7256 2004-07-29  David Schleef  <ds@schleef.org>
7257
7258         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
7259         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
7260
7261 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
7262
7263         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7264         (gst_bin_add_func), (gst_bin_remove_func),
7265         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
7266         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
7267         (gst_bin_change_state_norecurse), (gst_bin_dispose),
7268         (gst_bin_sync_children_state):
7269         * gst/gstbin.h:
7270         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
7271         (gst_thread_change_state):
7272         * testsuite/states/Makefile.am:
7273           revert state change patches as agreed so we can rework them
7274           gradually
7275
7276 2004-07-29  Benjamin Otte  <otte@gnome.org>
7277
7278         * libs/gst/control/Makefile.am:
7279           link to libgstreamer (fixes Debian bug 262019, see
7280           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
7281
7282 2004-07-29  Wim Taymans  <wim@fluendo.com>
7283
7284         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
7285         (check_from_fraction_convert), (transform_test), (main):
7286         Make the test less pedantic about float roundoff errors.
7287
7288 2004-07-29  Benjamin Otte  <otte@gnome.org>
7289
7290         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
7291         (gst_filesrc_srcpad_event):
7292           make seek events to before start/after end of file not fail, but
7293           seek to start/end instead
7294         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
7295           add more output
7296
7297 2004-07-29  Benjamin Otte  <otte@gnome.org>
7298
7299         * gst/gstpad.c: (gst_pad_set_explicit_caps):
7300           check that caps are fixed
7301         * gst/gstpad.c: (gst_pad_template_new):
7302           don't try to simplify caps, costs too much time on gst_init
7303         * gst/gstplugin.c: (gst_plugin_add_feature):
7304           G_ERROR if features are added twice
7305         * gst/gsttypefind.c: (gst_type_find_register):
7306         * gst/gstelementfactory.c: (gst_element_register):
7307           don't add features twice
7308         * docs/random/ds/0.9-suggested-changes:
7309           add note about possible gst_init optimization
7310
7311 2004-07-28  David Schleef  <ds@schleef.org>
7312
7313         * testsuite/elements/Makefile.am:
7314         * testsuite/elements/struct_i386.h:
7315         * testsuite/elements/struct_size.c: (main):  A little test
7316         to keep distcheck from working if someone changes a structure
7317         size accidentally.
7318
7319 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7320
7321         * docs/libs/Makefile.am:
7322         * docs/libs/gstreamer-libs-docs.sgml:
7323         * docs/libs/gstreamer-libs-sections.txt:
7324         * docs/libs/tmpl/gstbytestream.sgml:
7325         * docs/libs/tmpl/gstcontrol.sgml:
7326         * docs/libs/tmpl/gstdataprotocol.sgml:
7327         * docs/libs/tmpl/gstgetbits.sgml:
7328         * libs/gst/bytestream/Makefile.am:
7329         * libs/gst/bytestream/bytestream.c:
7330         * libs/gst/bytestream/bytestream.h:
7331         * libs/gst/control/Makefile.am:
7332         * libs/gst/dataprotocol/Makefile.am:
7333         * libs/gst/getbits/Makefile.am:
7334         * libs/gst/getbits/getbits.h:
7335           various doc and style fixes, adding bytestream to libs docs.
7336
7337 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7338
7339         * docs/gst/gstreamer-docs.sgml:
7340         * docs/libs/Makefile.am:
7341         * docs/libs/gstreamer-libs-docs.sgml:
7342         * docs/libs/gstreamer-libs-sections.txt:
7343         * libs/gst/control/dparam.c:
7344           more doc fixes.  gst-libs docs now build the same way as gst.
7345
7346 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7347
7348         * configure.ac:
7349         * testsuite/Makefile.am:
7350         * testsuite/bins/Makefile.am:
7351         * testsuite/caps/Makefile.am:
7352         * testsuite/cleanup/Makefile.am:
7353         * testsuite/clock/Makefile.am:
7354         * testsuite/debug/Makefile.am:
7355         * testsuite/dlopen/Makefile.am:
7356         * testsuite/dynparams/Makefile.am:
7357         * testsuite/elements/.cvsignore:
7358         * testsuite/elements/Makefile.am:
7359         * testsuite/enumcaps/Makefile.am:
7360         * testsuite/enumcaps/enumcaps.c:
7361         * testsuite/ghostpads/Makefile.am:
7362         * testsuite/indexers/Makefile.am:
7363         * testsuite/negotiation/Makefile.am:
7364         * testsuite/parse/Makefile.am:
7365         * testsuite/plugin/Makefile.am:
7366         * testsuite/refcounting/Makefile.am:
7367         * testsuite/schedulers/.cvsignore:
7368         * testsuite/states/Makefile.am:
7369         * testsuite/tags/Makefile.am:
7370         * testsuite/threads/Makefile.am:
7371           fold enumcaps into caps dir
7372           clean up Makefile.am's for testsuite
7373
7374 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7375
7376         * docs/gst/Makefile.am:
7377         * docs/libs/Makefile.am:
7378           clean up docs build.  Fixes needless rebuilding of template files.
7379
7380 2004-07-28  Wim Taymans  <wim@fluendo.com>
7381
7382         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
7383         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
7384         Make sure that a bin state change tries to keep the children
7385         in sync. 
7386         Added debug logging to the thread.
7387
7388 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
7389
7390         * win32/GStreamer.vcproj:
7391         * win32/gstreamer.def:
7392           more exports for the plugins
7393
7394 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
7395
7396         * win32/gstgetbits.vcproj:
7397         * win32/gstgetbits.def:
7398         * win32/msvc71.sln:
7399           add support for the getbits plugin
7400
7401 2004-07-27  Wim Taymans  <wim@fluendo.com>
7402
7403         * gst/gstvalue.c: (gst_value_transform_double_fraction),
7404         (gst_value_transform_fraction_double), (_gst_value_initialize):
7405         * testsuite/caps/Makefile.am:
7406         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
7407         (check_from_fraction_convert), (transform_test), (main):
7408         Added transform functions between double and fraction.
7409         Added testcase to verify transforms
7410
7411 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7412
7413         * win32/GStreamer.vcproj:
7414           rename GStreamer-0.8.lib to libgstreamer.lib
7415
7416 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7417
7418         * win32/gstelements.vcproj:
7419         * win32/gstoptimalscheduler.vcproj:
7420           fixes for the Release build
7421
7422 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7423
7424         * win32/config.h:
7425           update the version number
7426
7427 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7428
7429         * win32/GStreamer.vcproj:
7430           add gstinterface to the build
7431
7432 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7433
7434         * win32/gstreamer.def:
7435           add many definitions needed by plugins,
7436           GST_CAT_DEFAULT only available in the Debug build ?
7437
7438 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7439
7440         * gst/gstelement.c: (gst_element_set_eos_recursive):
7441           various whitespace fixes.
7442           doc fix, fixes #148497
7443
7444 2004-07-25  Benjamin Otte  <otte@gnome.org>
7445
7446         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
7447           don't delay links on the sink elements, it causes unnegotiated
7448           links.
7449         * gst/elements/gsttypefindelement.c:
7450         (gst_type_find_element_base_init):
7451           add our padtemplates, we indeed do have some.
7452         * gst/elements/gsttypefindelement.c:
7453         (gst_type_find_element_handle_event),
7454         (gst_type_find_element_chain):
7455           don't push data when typefinding failed.
7456         * gst/gstpad.c: (gst_pad_link_fixate):
7457           check that no fixate function returns empty caps.
7458         * gst/gstpad.c: (gst_pad_push):
7459           check that the link is negotiated before data gets pushed.
7460         * tools/gst-register.c: (main):
7461           don't assert (fixes #148283)
7462
7463 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7464
7465         * docs/gst/gstreamer-sections.txt:
7466         * docs/gst/tmpl/gstconfig.sgml:
7467           add GST_PLUGIN_EXPORT definition
7468
7469 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7470
7471         * gst/gstplugin.h:
7472         * gst/gstconfig.h.in:
7473         * win32/gstconfig.h:
7474         * win32/gstelements.def:
7475         * win32/gstelements.vcproj:
7476         * win32/gstoptimalscheduler.def:
7477         * win32/gstoptimalscheduler.vcproj:
7478         * win32/gstspider.def:
7479         * win32/gstspider.vcproj:
7480           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
7481
7482 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7483
7484         * docs/gst/gstreamer-sections.txt:
7485           remove GST_CAT_DEFAULT because the type has changed
7486
7487 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7488
7489         * win32/gstbytestream.vcproj:
7490         * win32/gstelements.vcproj:
7491         * win32/gst-inspect.vcproj:
7492         * win32/gst-launch.vcproj:
7493         * win32/gstoptimalscheduler.vcproj:
7494         * win32/GStreamer.vcproj:
7495         * win32/gst-register.vcproj:
7496         * win32/gstspider.vcproj:
7497         * win32/msvc71.sln:
7498           Copy the files where needed after building, The testsuite will be
7499           built separately
7500
7501 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7502
7503         * win32/config.h:
7504         * win32/README.txt:
7505         * docs/manual/win32.xml:
7506         Fixed the plugin and GStreamer location
7507
7508 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7509
7510         * win32/gstreamer.def:
7511         More exports for the plugins
7512
7513 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7514
7515         * gst/gstinfo.h:
7516         Marc was right, we need to export literally GST_CAT_DEFAULT
7517
7518 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7519
7520         * win32/config.h:
7521         NLS crashes in gettext, disabled until this is solved
7522
7523 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7524
7525         * win32/gst-inspect.vcproj:
7526         * win32/gst-launch.vcproj:
7527         Should use NLS when available
7528
7529 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7530
7531         * gst/registries/gstxmlregistry.c:
7532         removing the file doesn't seem to be a good idea on Linux
7533
7534 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7535
7536         * gst/registries/gstxmlregistry.c:
7537         Remove the registry before renaming the tempfile (needed for Windows)
7538
7539 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7540
7541         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
7542         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
7543         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
7544         * gst/elements/gstmultifilesrc.h:
7545         Added newmedia property so it generates newmedia events between each
7546         file when property is set, as well as fixed eos handling
7547
7548 2004-07-22  David Schleef  <ds@schleef.org>
7549
7550         * gst/gststructure.c: (gst_structure_id_empty_new),
7551         (gst_structure_empty_new):  Set type field correctly.
7552         * gst/gststructure.h: Check type field correctly.
7553         * testsuite/caps/Makefile.am:
7554         * testsuite/caps/structure.c: (test1), (main): Add a very small
7555         test for structures.
7556
7557 2004-07-22  David Schleef  <ds@schleef.org>
7558
7559         * docs/random/ds/0.9-suggested-changes: more comments
7560         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
7561
7562 2004-07-22  Benjamin Otte  <otte@gnome.org>
7563
7564         * gst/gstelementfactory.c: (gst_element_register):
7565           set the factory in the class struct, so gst_element_get_factory
7566           actually works
7567         * gst/parse/grammar.y:
7568           set element to playing when it gets unlocked as we can't rely on the
7569           bin state - all elements in the bin state might still be locked in
7570           NULL)
7571
7572 2004-07-22  Benjamin Otte  <otte@gnome.org>
7573
7574         * gst/gstelement.c: (gst_element_set_state_func):
7575           make this a static function
7576
7577 2004-07-22  Wim Taymans  <wim@fluendo.com>
7578
7579         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
7580         (gst_opt_scheduler_pad_link):
7581         fix 147894-2 and the group_link problem.
7582
7583 2004-07-22  Wim Taymans  <wim@fluendo.com>
7584
7585         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7586         (handoff_identity), (main):
7587         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7588         (handoff_identity), (main):
7589         * testsuite/schedulers/Makefile.am:
7590         * testsuite/schedulers/group_link.c: (main):
7591         Show bug in scheduler when linking chain and loop based element 
7592         where the chain based element was not yet in a group.
7593
7594 2004-07-21  Benjamin Otte  <otte@gnome.org>
7595
7596         * gst/.cvsignore:
7597         * gst/autoplug/.cvsignore:
7598         * gst/elements/.cvsignore:
7599         * gst/indexers/.cvsignore:
7600         * libs/gst/bytestream/.cvsignore:
7601         * libs/gst/control/.cvsignore:
7602         * libs/gst/getbits/.cvsignore:
7603         * testsuite/states/.cvsignore:
7604         * testsuite/threads/.cvsignore:
7605           keep this up to date, since I seem to be the only one who cares
7606           about not missing files on commits (editor's note: no you don't,
7607           but feel free to change them at the time you add stuff instead
7608           of later on)
7609
7610 2004-07-21  Benjamin Otte  <otte@gnome.org>
7611
7612         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7613         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
7614         (gst_bin_child_state_change_func), (set_kid_state_func),
7615         (gst_bin_set_state), (gst_bin_change_state_norecurse):
7616           make state changes work correctly and reentrant (so removing
7617           elements from bins during state changes of bins doesn't cause
7618           segfaults or even wrong states)
7619           add debugging category and debugging output to print children states
7620         * gst/gstbin.c: (gst_bin_dispose): 
7621           add some assertion checks
7622         * gst/gstbin.h:
7623         * gst/gstbin.c: (gst_bin_sync_children_state):
7624           deprecate this function - it just does gst_bin_set_state (bin,
7625           GST_STATE (bin)) 
7626         * testsuite/threads/queue.c: (main):
7627           don't use gst_bin_sync_children_state anymore
7628         * testsuite/states/Makefile.am:
7629         * testsuite/states/bin.c:
7630           test that the state changes of bins work as expected
7631         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
7632           some adjustments to change states correctly, too
7633         * gst/gstthread.c: (gst_thread_change_state):
7634           don't enable/disable "threadsafe" properties, they're unused and
7635           cause random segfaults
7636         * testsuite/threads/Makefile.am:
7637           the queue check randomly passes now, ignore it
7638
7639 2004-07-21  Benjamin Otte  <otte@gnome.org>
7640
7641         * gst/gstpad.c:
7642           check if data is NULL before outputting debug info. (fixes #145100)
7643
7644 2004-07-21  Benjamin Otte  <otte@gnome.org>
7645
7646         * gst/schedulers/entryscheduler.c:
7647         (gst_entry_scheduler_loop_wrapper),
7648         (gst_entry_scheduler_chain_wrapper),
7649         (gst_entry_scheduler_get_wrapper):
7650           reset the state when the cothread starts, so we don't get assertion
7651           failures on restarting of cothreads
7652
7653 2004-07-20  Benjamin Otte  <otte@gnome.org>
7654
7655         * gst/gstelement.c: (gst_element_link_pads_filtered):
7656           use correct sinkpad, if only sinkpad is specified, but not srcpad
7657           (fixes #147889)
7658         * gst/gstelement.c: (gst_element_set_state_func),
7659         (gst_element_change_state): ref/unref the element, signal handlers
7660         could get rid of the element otherwise
7661
7662 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7663
7664         * docs/random/ds/0.9-suggested-changes:
7665           Make note about renaming fixed-list to array.
7666         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
7667         (_gst_value_initialize):
7668           Add array intersections.
7669         * testsuite/caps/intersect2.c: (main):
7670           Add test for array intersections.
7671
7672 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7673
7674         * configure.ac: back to cvs
7675
7676 === release 0.8.4 ===
7677
7678 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7679
7680         * configure.ac:
7681           releasing 0.8.4, "Paella"
7682           bump libtool versioning
7683
7684 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7685
7686         * po/LINGUAS:
7687         * po/ca.po:
7688           adding Catalan translation (Jordi Mallach)
7689
7690 2004-07-20  Wim Taymans  <wim@fluendo.com>
7691
7692         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7693         (handoff_identity), (main):
7694         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7695         (handoff_identity), (main):
7696         * testsuite/schedulers/Makefile.am:
7697         Added failing testcase for variant of #147894
7698
7699 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7700
7701         patch by: David Moore
7702
7703         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7704         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
7705         (group_migrate_connected):
7706         * testsuite/schedulers/Makefile.am:
7707           fix for #142813 (Deadlock in optimal scheduler)
7708
7709 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7710
7711         patch by: Wim Taymans
7712
7713         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7714         (gst_opt_scheduler_schedule_run_queue),
7715         (gst_opt_scheduler_get_wrapper), (get_group),
7716         (group_migrate_connected):
7717         * testsuite/schedulers/Makefile.am:
7718           fix for #147819 (Add some checks in the opt scheduler)
7719
7720 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7721
7722         patch by: Benjamin Otte
7723
7724         * gst/gstelementfactory.c: (__gst_element_details_set):
7725           fix for #147929: running gst-register in non-utf8 locale can cause
7726           invalid registry
7727
7728 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7729
7730         patch by: Wim Taymans
7731
7732         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
7733         (group_has_element), (element_get_reachables_func),
7734         (group_migrate_connected):
7735           fix for #147894 (opt scheduler decoupled elements mismanagement)
7736         * testsuite/schedulers/Makefile.am:
7737           testsuite app now passes
7738
7739 2004-07-19  Wim Taymans  <wim@fluendo.com>
7740
7741         * testsuite/schedulers/147819.c: (handoff_identity1),
7742         (handoff_identity2), (main):
7743         * testsuite/schedulers/Makefile.am:
7744         Added testcase for bug 147819
7745
7746 2004-07-19  Wim Taymans  <wim@fluendo.com>
7747
7748         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7749         (handoff_identity), (main):
7750         * testsuite/schedulers/Makefile.am:
7751         Added testcase for bug 147894
7752
7753 2004-07-16  Wim Taymans  <wim@fluendo.com>
7754
7755         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
7756         * testsuite/schedulers/142183.c: (handoff_identity), (main):
7757         * testsuite/schedulers/Makefile.am:
7758         Added testsuite for bug 142183 in its two incarnations. Refcount
7759         is not increased for scheduled elements and threadsafe properties
7760         mutexes are not properly unlocked.
7761
7762 2004-07-16  Wim Taymans  <wim@fluendo.com>
7763
7764         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
7765         (create_chain), (destroy_chain), (create_group), (destroy_group),
7766         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
7767         (group_dec_link), (gst_opt_scheduler_pad_link),
7768         (group_inc_links_for_element), (group_migrate_connected):
7769         Call group_inc_link with the proper src->sink ordering -- 
7770         break this, and we break sort_chain. patch from wingo for bug
7771         147713.
7772         Partially revert patch 1.89. When adding a loop based element to 
7773         the scheduler, the links to other groups are automatically followed
7774         and incremented. This should not happen because the bin will call
7775         pad_link explicitly for those connection, resulting in them counted 
7776         twice. Results in assertion failure on pipeline cleanup.
7777
7778 2004-07-16  Wim Taymans  <wim@fluendo.com>
7779
7780         * testsuite/schedulers/143777-2.c: (main):
7781         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
7782         (main):
7783         * testsuite/schedulers/Makefile.am:
7784         Added cleanup code to testcase 143777-2.
7785         Added testcase to show bug 147713, does not really show the
7786         deadlock as I can't figure out how to trigger it, but it does
7787         demonstrate bad ordering in the scheduler.
7788
7789 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7790
7791         * gst/gstvalue.c: (gst_value_deserialize_fraction):
7792           change strndup to g_strndup.  Fixes #147707
7793
7794 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7795
7796         * po/af.po:
7797         * po/az.po:
7798         * po/cs.po:
7799         * po/en_GB.po:
7800         * po/fr.po:
7801         * po/nl.po:
7802         * po/sr.po:
7803         * po/sv.po:
7804         * po/tr.po:
7805         * po/uk.po:
7806           updated translations
7807
7808 2004-07-16  Benjamin Otte  <otte@gnome.org>
7809
7810         * gst/gstvalue.c: (gst_greatest_common_divisor):
7811           use ints and return ints, fractions only use ints, too, so this
7812           avoids accidently casting multiplications to unsigned
7813         (gst_value_lcopy_fraction): it's ints, not uint32
7814         (gst_value_set_fraction): disallow minint, multiplying and negation
7815           are broken with it
7816         (gst_value_fraction_multiply): fix to make large numbers work and get
7817         rid of the assumption that the multiplication of two ints fits an
7818         int64 - dunno if that's true for all systems
7819         * testsuite/caps/Makefile.am:
7820         * testsuite/caps/fraction-multiply-and-zero.c:
7821         (check_multiplication), (check_equal), (zero_test), (main):
7822           add tests for all the stuff above
7823         * testsuite/caps/value_compare.c: (test1):
7824           fix comment
7825         * tests/.cvsignore:
7826         * testsuite/caps/.cvsignore:
7827         * testsuite/debug/.cvsignore:
7828         * testsuite/dlopen/.cvsignore:
7829         * testsuite/states/.cvsignore:
7830           get up to date
7831
7832 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7833
7834         * docs/manual/bins-api.xml:
7835         * docs/manual/factories.xml:
7836         * docs/manual/helloworld.xml:
7837         * docs/manual/links-api.xml: 
7838           fixes for out of date info, incorrect info and grammar
7839
7840 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7841
7842         * docs/manual/pads.xml:
7843         * docs/manual/pads-api.xml: grammar fix
7844
7845 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7846
7847         * docs/manual/pads-api.xml: typo + grammar fix
7848
7849 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7850
7851         * docs/gst/gstreamer-sections.txt:
7852           add new symbols
7853         * docs/gst/tmpl/gstelement.sgml:
7854         * docs/gst/tmpl/gstpad.sgml:
7855         * docs/gst/tmpl/gsttypes.sgml:
7856         * docs/gst/tmpl/gstvalue.sgml:
7857           update docs
7858         * gst/gststructure.c: (gst_structure_set_valist),
7859         (gst_structure_from_abbr), (gst_structure_to_abbr):
7860         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
7861         (gst_greatest_common_divisor), (gst_value_init_fraction),
7862         (gst_value_copy_fraction), (gst_value_collect_fraction),
7863         (gst_value_lcopy_fraction), (gst_value_set_fraction),
7864         (gst_value_get_fraction_numerator),
7865         (gst_value_get_fraction_denominator),
7866         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
7867         (gst_value_deserialize_fraction),
7868         (gst_value_transform_fraction_string),
7869         (gst_value_transform_string_fraction),
7870         (gst_value_compare_fraction), (_gst_value_initialize):
7871         * gst/gstvalue.h:
7872           adding GstFraction GValue type, get/set, and multiply
7873         * testsuite/caps/Makefile.am:
7874         * testsuite/caps/fraction.c: (test), (main):
7875         * testsuite/caps/string-conversions.c: (main):
7876         * testsuite/caps/value_compare.c: (test1), (main):
7877           add regression tests for GstFraction
7878
7879 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7880         
7881         * docs/manual/init-api.xml: Grammar fix
7882
7883 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7884
7885         * docs/manual/states.xml: Fix inconsistent information
7886
7887 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7888
7889         * gst/gstelement.c: (gst_element_set_state):
7890         * gst/gstpad.c: (gst_pad_try_set_caps):
7891         * gst/gststructure.c:
7892         * gst/gstthread.c: (gst_thread_child_state_change):
7893         * gst/gstvalue.c: (gst_value_compare_double):
7894         * gst/gstvalue.h:
7895         * testsuite/parse/parse1.c: (main):
7896           debugging additions and style cleanups
7897
7898 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7899
7900         * docs/manual/states.xml: Grammar fix
7901
7902 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7903
7904         * docs/manual/pads.xml: Grammar fix
7905
7906 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7907
7908         * docs/manual/elements.xml: Fixed image reference
7909
7910 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7911
7912         * docs/manual/goals.xml: Grammar fix
7913
7914 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7915
7916         * docs/manual/motivation.xml:
7917         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
7918
7919 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7920
7921         * docs/manual/motivation.xml: Fix spelling
7922
7923 2004-07-15  Benjamin Otte  <otte@gnome.org>
7924
7925         * gst/gstelement.h: 
7926           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
7927           strings.
7928         * gst/gstelement.c (gst_element_class_init):
7929           GError's are boxed, not objects
7930         * gst/gstmarshal.list:
7931           update list for the fixed error signal
7932
7933 2004-07-14  Andy Wingo  <wingo@pobox.com>
7934
7935         * gst/gsttag.c: Add a tag merge func for pointers. The header was
7936         there all along, but the function wasn't. (guile-gstreamer's build
7937         system uses the address of the function -- I wasn't actually
7938         trying to use this.)
7939
7940 2004-07-14  Andy Wingo  <wingo@pobox.com>
7941
7942         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
7943         as gst_pad_proxy_pad_link) just link to every other pad when they
7944         are called. In the case where the graph has cycles, this will mean
7945         that a call to try_set_caps will recurse. Allow this recursion
7946         and return OK, while we wait for the first try_set_caps to give a
7947         proper return value.
7948         (gst_pad_link_call_link_functions): Since this function is the
7949         only one to set the NEGOTIATING flag on a pad, if the flag is set
7950         it means that the link functions have indirectly recursed. If this
7951         happens, error out to avoid infinite recursion and an eventual
7952         SEGV.
7953         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
7954         (gst_pad_proxy_getcaps): Intersect the result with the template
7955         caps to ensure that the return value is valid.
7956
7957 2004-07-14  Andy Wingo  <wingo@pobox.com>
7958
7959         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
7960         one refcount, the calling function is the owner of the buffer.
7961
7962 2004-07-14  Wim Taymans  <wim@fluendo.com>
7963
7964         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7965         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7966         Fix stupid warning when an element is to be migrated but
7967         is already migrated.
7968
7969 2004-07-14  Wim Taymans  <wim@fluendo.com>
7970
7971         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7972         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7973         Make sure that a single non-loop-based element does not 
7974         end up in a group. This fixes the testsuite again.
7975
7976 2004-07-14  Wim Taymans  <wim@fluendo.com>
7977
7978         * gst/schedulers/gstoptimalscheduler.c: (create_group),
7979         (add_to_group), (merge_groups), (schedule_group),
7980         (gst_opt_scheduler_get_wrapper), (group_elements),
7981         (group_dec_link), (gst_opt_scheduler_pad_link),
7982         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
7983         (gst_opt_scheduler_iterate):
7984         move isolated groups to a new chain.
7985         Emit a warning instead of segfaulting in some error cases.
7986         Fix a bug where the link count between groups was not calculated 
7987         correctly. Fixes #144510.
7988
7989 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
7990         * gst/elements/gstfilesrc.c:
7991           Binary files support under Windows now OK
7992       
7993 2004-07-13  Benjamin Otte  <otte@gnome.org>
7994
7995           compatibility fixes for Solaris 8/gcc 2.95
7996         * configure.ac:
7997           include libintl libs in LDFLAGS
7998         * gstvalue.c (gst_value_deserialize_buffer):
7999           cast isxdigit stuff to int to silence compiler warning
8000
8001 2004-07-12  Benjamin Otte  <otte@gnome.org>
8002
8003         * gst/gsttypes.h:
8004           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
8005           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
8006           just causes support madness
8007         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
8008           make it work without this
8009         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
8010         (gst_file_index_commit):
8011           glib IO channels don't want binary mode
8012         * testsuite/bytestream/filepadsink.c: (main):
8013         * testsuite/bytestream/test1.c: (read_param_file):
8014           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
8015
8016 2004-07-12  Benjamin Otte  <otte@gnome.org>
8017
8018         * gst/gstelement.c: (gst_element_class_init),
8019         (gst_element_set_state), (gst_element_set_state_func):
8020           virutalize gst_element_set_state, use set_state member in class
8021           struct that was already added in 0.7 for this.
8022         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
8023         (gst_bin_change_state):
8024           make gst_bin_foreach works similar to other foreach functions, plug
8025           memleaks in it. Make functions using it work with the new approach.
8026           Document gst_bin_foreach, so it can be exported if we want to
8027         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
8028           use virtualized set_state to make set_state on bins set the state of
8029           all its children.
8030
8031 2004-07-12  Benjamin Otte  <otte@gnome.org>
8032
8033         * configure.ac:
8034           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
8035           http://bugs.gentoo.org/show_bug.cgi?id=53967)
8036         * gst/gstpad.c: (gst_pad_alloc_buffer):
8037           allow buffer_alloc functions to return NULL and allocate a normal
8038           buffer in that case
8039
8040 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
8041         * gst/elements/gstfilesink.c:
8042         * gst/elements/gstfilesrc.c:
8043         * gst/indexers/gstfileindex.c:
8044         * gst/gsttypes.h:
8045         * testsuite/bytestream/filepadsink.c:
8046         * testsuite/bytestream/test1.c:
8047           Handle binary files under Windows
8048
8049 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
8050         * docs/manual/win32.xml:
8051         * win32/config.h:
8052         * win32/gst-register.vcproj:
8053         * win32/gstreamer.def:
8054           Update to another gettext public build
8055
8056 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
8057         * gst/gstplugin.c:
8058           Fix an impossible C syntax
8059         * win32/config.h:
8060           Disable i18n under Windows for the moment
8061         * win32/gst-register.vcproj:
8062           Use this configuration
8063
8064 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
8065         * docs/manual/quotes.xml:
8066           Keep the quotes file alive
8067         * docs/random/ds/0.9-suggested-changes:
8068           Add the suggestion of including a 'rowstride' as part of video
8069           format caps
8070
8071 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8072
8073         * gst/gstelement.c: (gst_element_set_state),
8074         (gst_element_change_state):
8075           d'oh.  Set PENDING state correctly before forcing bin to change.
8076         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8077         (gst_structure_parse_fixed_list):
8078         * gst/schedulers/gstoptimalscheduler.c:
8079         (gst_opt_scheduler_state_transition):
8080         * testsuite/states/parent.c: (main):
8081           remove comment now that it's fixed.
8082
8083 2004-07-11  Benjamin Otte  <otte@gnome.org>
8084
8085         * gst/gstclock.h:
8086           GST_SECOND shouldn't cause a conversion to unsigned.
8087         * testsuite/clock/.cvsignore:
8088         * testsuite/clock/Makefile.am:
8089         * testsuite/clock/signedness.c: (main):
8090           make sure it never will again
8091
8092 2004-07-11  Andy Wingo  <wingo@pobox.com>
8093
8094         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
8095         whose state is higher than the bin state, raise the bin state to
8096         ensure that bin state := highest child state.
8097         
8098 2004-07-11  Andy Wingo  <wingo@pobox.com>
8099
8100         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
8101         procedure on the children of a bin. Assumes that the procedure can
8102         change the set of children.
8103         (set_kid_state_func): New static function.
8104         (gst_bin_change_state): Use gst_bin_foreach to call
8105         set_kid_state_func. Fixes a bug: if a child had a state-change
8106         handler that removes it from the bin, there would be a segfault.
8107         Hopefully it should also work in the case where the state-change
8108         handler on one child adds or removes other children. In any case,
8109         fixes should go to gst_bin_foreach.
8110
8111 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
8112
8113         * gst/gstelement.c: (gst_element_set_state):
8114           compatibility fix for latest plugins release.  Change loop back
8115           to while {}
8116
8117 2004-07-09  Wim Taymans  <wim@fluendo.com>
8118
8119         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
8120         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
8121         (gst_thread_main_loop):
8122         Since remove is virtual in GstBin we must not assume the 
8123         elements GList to have anothing useful.
8124         Add some more logging to GstThread and be a bit more paranoid
8125         when resetting the scheduler.
8126         Set the state of the bin to NULL before removing the children.
8127
8128 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8129
8130         * testsuite/threads/Makefile.am:
8131         * testsuite/threads/threadg.c:
8132           added test to check if problem when removing all elements from a
8133           GstThread before setting GstThread state to NULL
8134
8135 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8136
8137         * docs/gst/tmpl/gstelement.sgml:
8138         * docs/gst/tmpl/gsttypes.sgml:
8139         * gst/gstbin.c: (gst_bin_change_state):
8140         * gst/gstelement.c: (gst_element_set_state),
8141         (gst_element_change_state):
8142           rework so that for bins we try to set the state on all children
8143           as well even if the bin is in the correct state already.
8144           change while to do so at least one iteration is done.
8145           For regular elements, we fall back to the previous behaviour for
8146           now since we first need a new plugins release.
8147         * testsuite/states/parent.c: (main):
8148           test for this case
8149           Fixes #123774
8150
8151 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8152
8153         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
8154         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
8155         (gst_queue_release_locks), (gst_queue_change_state),
8156         (gst_queue_set_property):
8157           add proper lock debugging.  Change dispose to finalize, since
8158           we're freeing mutexes and other stuff which should happen only once.
8159
8160 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8161
8162         * docs/gst/tmpl/gstelement.sgml:
8163         * docs/gst/tmpl/gstplugin.sgml:
8164         * docs/gst/tmpl/gsttypes.sgml:
8165         * docs/pwg/building-state.xml:
8166         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
8167         * gst/gstelement.c: (gst_element_change_state):
8168         * gst/gstthread.c: (gst_thread_change_state):
8169           catch wrong state changes in element base class.
8170
8171 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8172
8173         * gst/gstinfo.h:
8174           clean up layout a little.
8175
8176 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8177
8178         * configure.ac:
8179         * testsuite/Makefile.am:
8180         * testsuite/states/Makefile.am:
8181         * testsuite/states/parent.c: (main):
8182           re-enable states testsuite dir.  Add test for state changes and
8183           parent behaviour
8184
8185 2004-07-09  Wim Taymans  <wim@fluendo.com>
8186
8187         * gst/schedulers/gstoptimalscheduler.c:
8188         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
8189         (element_get_reachables_func), (element_get_reachables),
8190         (debug_element), (rechain_group), (group_migrate_connected),
8191         (gst_opt_scheduler_pad_unlink):
8192         Do not try to migrate decoupled elements to a new group since
8193         they are not added to groups.
8194
8195 2004-07-08  Benjamin Otte  <otte@gnome.org>
8196
8197         * gst/gstelement.c: (gst_element_error_func):
8198           make reentrant (= allow removing elements in error handler)
8199
8200 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8201
8202         * gst/gstpad.c: (gst_pad_event_default_dispatch),
8203         (gst_pad_send_event), (gst_pad_call_chain_function):
8204           events sent to elements below PAUSED cannot be handled, so
8205           don't try to
8206
8207 2004-07-08  Wim Taymans  <wim@fluendo.com>
8208
8209         * gst/schedulers/gstoptimalscheduler.c:
8210         (chain_recursively_migrate_group), (create_group),
8211         (schedule_group), (gst_opt_scheduler_pad_link),
8212         (group_elements_set_visited), (element_get_reachables_func),
8213         (element_get_reachables), (group_can_reach_group), (debug_element),
8214         (rechain_group), (group_migrate_connected),
8215         (gst_opt_scheduler_pad_unlink):
8216         * testsuite/schedulers/Makefile.am:
8217         Implemented group splitting and rechaining.
8218         Fixes 143777 and 143777-2 in the testsuite.
8219
8220 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8221
8222         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
8223           extra debugging
8224         * gst/gstevent.h:
8225         * gst/gstinfo.c: (gst_debug_log_default):
8226           print time nicely.  add thread pointer until someone figures out
8227           a completely portable way of getting at thread id's.
8228         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
8229         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
8230         (gst_pad_call_chain_function):
8231           extra debugging
8232         * gst/schedulers/gstoptimalscheduler.c:
8233         (get_group_schedule_function), (loop_group_schedule_function),
8234         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
8235         (pad_clear_queued), (gst_opt_scheduler_iterate):
8236           rename BUFPEN and friends to DATAPEN since that's what they are.
8237
8238 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8239
8240         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
8241         * gst/gstbuffer.h:
8242         * gst/gstpad.c:
8243           cleanups and debugging
8244
8245 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8246
8247         * configure.ac:
8248         * gst/gstvalue.c: (gst_value_compare_enum),
8249         (gst_value_serialize_enum), (gst_value_deserialize_enum),
8250         (gst_value_can_compare), (gst_value_compare):
8251         * testsuite/Makefile.am:
8252         * testsuite/enumcaps/Makefile.am:
8253         * testsuite/enumcaps/enumcaps.c:
8254           Fix enum serialization, deserialization, comparison in caps, add
8255           a test to ensure that this continues working in the future.
8256
8257 2004-07-06  David Schleef  <ds@schleef.org>
8258
8259         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
8260         Fix memleak.
8261
8262 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8263
8264         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
8265         * gst/gstplugin.h:
8266         * gst/registries/gstxmlregistry.c:
8267         (plugin_times_older_than_recurse), (plugin_times_older_than),
8268         (gst_xml_registry_parse_padtemplate):
8269           only rebuild registry when actual plugins have a newer time than
8270           the registry.  Fixes #145520
8271
8272 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8273
8274         * docs/manual/manual.xml:
8275         * docs/manual/win32.xml:
8276           add chapter on win32 building.  fixes #142422
8277
8278 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8279
8280         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
8281
8282         * gst/autoplug/gstspider.c: (gst_spider_init),
8283         (gst_spider_dispose):
8284           fix spider memleaks.  fixes #137863
8285
8286 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8287
8288         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
8289
8290         * gst/schedulers/gstoptimalscheduler.c:
8291         (gst_opt_scheduler_pad_unlink):
8292           fix SIGBUS error, fixes #145338
8293
8294 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8295
8296         * gst/gstobject.c: (gst_object_replace):
8297         * gst/gstscheduler.c: (gst_scheduler_get_clock):
8298         * gst/gstsystemclock.c: (gst_system_clock_obtain):
8299           clean up clock lifecycle.  Fixes #109831
8300
8301 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8302
8303         * po/LINGUAS:
8304         * po/cs.po:
8305           added Czech translation (Miloslav Trmac)
8306
8307 2004-07-04  David Schleef  <ds@schleef.org>
8308
8309         * tools/Makefile.am:
8310         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
8311
8312 2004-07-04  David Schleef  <ds@schleef.org>
8313
8314         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
8315
8316 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8317
8318         * gst/gstbin.c: (gst_bin_restore_thyself):
8319           chain to parent restore so the bins get restored correctly
8320           in the editor
8321
8322 2004-07-03  David Schleef  <ds@schleef.org>
8323
8324         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
8325         Actually do something in these functions, like before the big
8326         caps change.  (bug #145137)
8327
8328 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8329
8330         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
8331         (gst_element_get_compatible_pad_filtered):
8332         * gst/gstthread.c: (gst_thread_main_loop):
8333           more debugging
8334
8335 2004-07-02  David Schleef  <ds@schleef.org>
8336
8337         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
8338         * gst/gstobject.h:
8339         * gst/gstparse.h:
8340         * gst/gsttrace.h:
8341         * gst/gstxml.h:
8342
8343 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8344
8345         * gst/gstpad.c: (gst_pad_check_schedulers),
8346         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
8347         (gst_pad_link_prepare):
8348           revert until testsuite is fixed
8349
8350 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8351
8352         * testsuite/Makefile.am:
8353         * testsuite/caps/filtercaps.c: (main):
8354         * testsuite/clock/clock1.c: (main):
8355         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
8356           fix some more tests
8357
8358 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8359
8360         * testsuite/cleanup/cleanup1.c: (create_pipeline):
8361         * testsuite/cleanup/cleanup2.c: (create_pipeline):
8362         * testsuite/cleanup/cleanup4.c: (main):
8363           fix testsuite
8364
8365 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8366
8367         * libs/gst/control/control.c:
8368         * libs/gst/control/dparam.c:
8369         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
8370         * libs/gst/control/dparammanager.c:
8371         * libs/gst/control/dparammanager.h:
8372         * testsuite/dynparams/Makefile.am:
8373         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
8374         (gst_dptest_change_state), (gst_dptest_chain), (main):
8375           fix testcase for dparams
8376           add debugging category
8377
8378 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8379
8380         * testsuite/Rules:
8381           change path
8382
8383 2004-07-02  Benjamin Otte  <otte@gnome.org>
8384
8385         * tests/.cvsignore:
8386         * tests/Makefile.am:
8387         * tests/mass_elements.c: (gst_get_current_time), (main):
8388           add simple benchmark to test various speeds of fakesrc ! identity !
8389           identity ! ... ! fakesink.
8390           Usage: mass_elements [num_identities] [num_buffers]
8391           If not specified they default to 1000.
8392
8393 2004-07-02  Benjamin Otte  <otte@gnome.org>
8394
8395         * gst/gstpad.c: (gst_pad_check_schedulers),
8396         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
8397         (gst_pad_link_prepare):
8398           check that pads that get linked belong to the same manager. The old
8399           code allowed linking elements before putting them into bins, so it
8400           worked to link them and then put them in different threads, which
8401           lead to weird behaviour.
8402           Since this effectively disallows linking elements before putting
8403           them in a bin, some applications might not work after this and error
8404           out. If these applications are too critical, we might need to revert
8405           that patch. Please test this before the next release...
8406
8407 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8408
8409         * gst/gstpad.c: (gst_pad_get_caps):
8410           throw an error if the getcaps function does not return a subset of
8411           the template caps.
8412         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
8413           make disconts without position info an error in debugging
8414         * tests/spidey_bench.c: (handoff), (main):
8415           don't count first try when averaging
8416
8417 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8418
8419         * gst/gstplugin.c: (gst_plugin_load_file):
8420           figure out problem with dynamic test
8421
8422 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8423
8424         * docs/gst/Makefile.am:
8425           fix docs build
8426
8427 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8428
8429         * po/POTFILES.in:
8430         * po/af.po:
8431         * po/az.po:
8432         * po/en_GB.po:
8433         * po/fr.po:
8434         * po/nl.po:
8435         * po/sr.po:
8436         * po/sv.po:
8437         * po/tr.po:
8438         * po/uk.po:
8439         * tools/gst-register.c: (plugin_added_func), (main):
8440           i18n-ize -register, fix plural
8441
8442 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8443
8444         * gst/elements/gstidentity.c: (gst_identity_class_init),
8445         (gst_identity_init), (gst_identity_chain),
8446         (gst_identity_set_property), (gst_identity_get_property):
8447         * gst/elements/gstidentity.h:
8448           check for perfect stream
8449
8450 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8451
8452         * gst/elements/gstidentity.c: (gst_identity_chain):
8453           print offset_end
8454
8455 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8456
8457         * docs/gst/Makefile.am:
8458         * docs/gst/gstreamer-docs.sgml:
8459           doc fixes
8460
8461 2004-06-24  David Schleef  <ds@schleef.org>
8462
8463         * autogen.sh:  Remove call to env, since the buildbot isn't
8464         broken anymore.
8465
8466 2004-06-24  Wim Taymans  <wim@fluendo.com>
8467
8468         * gst/elements/Makefile.am:
8469         * gst/elements/gstelements.c:
8470         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
8471         (gst_multifdsink_class_init), (gst_multifdsink_init),
8472         (gst_multifdsink_add), (gst_multifdsink_remove),
8473         (gst_multifdsink_clear), (gst_multifdsink_chain),
8474         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
8475         * gst/elements/gstmultifdsink.h:
8476         Added an element that writes to multiple filedescriptors at once.
8477
8478 2004-06-24  Benjamin Otte  <otte@gnome.org>
8479
8480         * gst/parse/grammar.y:
8481           don't try to link elements before they have been added to bins
8482
8483 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8484
8485         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
8486         (gst_file_pad_get_length):
8487         * libs/gst/bytestream/filepad.h:
8488           add 2 new functions
8489
8490 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8491
8492         * docs/gst/gstreamer-sections.txt:
8493         remove from docs, the define that Benjamin removed from gstelement.h
8494
8495 2004-06-22  Benjamin Otte  <otte@gnome.org>
8496
8497         * gst/gstelement.h:
8498           remove define that referenced a nonexisting GstElement struct member
8499
8500 2004-06-20  Benjamin Otte  <otte@gnome.org>
8501
8502         * gst/gstdata.c: (gst_data_is_writable):
8503           whoops, return values were wrong, so writable data was marked as
8504           non-writable and vice versa. (fixes #143953, spotted by Francis
8505           Labonte)
8506           Shows how rarely we need to copy data ;)
8507
8508 2004-06-20  Benjamin Otte  <otte@gnome.org>
8509
8510         * testsuite/schedulers/.cvsignore:
8511         * testsuite/schedulers/Makefile.am:
8512         * testsuite/schedulers/143777-2.c: (main):
8513           add test for opt breakage in bug #143777
8514
8515 2004-06-20  Benjamin Otte  <otte@gnome.org>
8516
8517         * gst/gstpad.c: (gst_pad_call_chain_function):
8518           check for if we were unlinked while inside the chainfunction (fixes
8519           entrygthread having issues with #143777)
8520         * testsuite/schedulers/143777.c: (main):
8521         * testsuite/schedulers/Makefile.am:
8522           add a test for that fix
8523
8524 2004-06-20  Benjamin Otte  <otte@gnome.org>
8525
8526         * gst/gstvalue.c: (gst_value_set_int_range):
8527           test that start is smaller then end
8528         * libs/gst/bytestream/Makefile.am:
8529         * libs/gst/bytestream/filepad.c: 
8530         * libs/gst/bytestream/filepad.h:
8531           add GstFilePad - a pad that behaves like a FILE*
8532         * testsuite/bytestream/.cvsignore:
8533         * testsuite/bytestream/Makefile.am:
8534         * testsuite/bytestream/filepadsink.c: 
8535           test for the GstFilePad
8536
8537 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8538
8539         * gst/elements/gstidentity.c: (gst_identity_class_init),
8540         (gst_identity_init), (gst_identity_set_clock),
8541         (gst_identity_chain), (gst_identity_set_property),
8542         (gst_identity_get_property):
8543         * gst/elements/gstidentity.h:
8544         * gst/gstclock.c: (gst_clock_id_wait):
8545           add a "sync" property to sync to the clock
8546
8547 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8548
8549         * gst/gstelementfactory.c: (gst_element_factory_create):
8550           make the freakin "elementfactory bla has no type" message more
8551           useful. So we actually can do something when someone shows up
8552           complaining about it.
8553
8554 2004-06-15  Johan Dahlin  <johan@gnome.org>
8555
8556         * tools/gst-inspect.c (main): Fallback to plugin if no element is
8557         found. This matches the old behavior better. Thanks to Thomas for
8558         pointing out.
8559
8560 2004-06-14  David Schleef  <ds@schleef.org>
8561
8562         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
8563         -fomit-frame-pointer.  Appears to generate correct code in
8564         other cases as well.
8565
8566 2004-06-14  Johan Dahlin  <johan@gnome.org>
8567
8568         * tools/gst-inspect.c (main): Add two new command line options: -a
8569         to print all elements and -n to print the name on each line. Also
8570         fix some error reporting.
8571         (main): Simplify, remove -n and always print names if -a is specified
8572
8573 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
8574
8575         * win32/gstconfig.h:
8576         * win32/GSTreamer.vcproj:
8577         * win32/Makefile:
8578         * gst/gstconfig.h.in:
8579         * gst/gst.h:
8580         * gst/gstbin.h:
8581         * gst/gstelement.h:
8582         * gst/gstevent.h:
8583         * gst/gstobject.h:
8584         * gst/gstpad.h:
8585         * docs/gst/gstreamer-sections.txt:
8586         * docs/gst/tmpl/gstconfig.sgml:
8587           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
8588
8589 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8590         * docs/gst/gstreamer-sections.txt:
8591         * docs/gst/tmpl/gstconfig.sgml:
8592         Add the GSTREAMER_EXPORT macro to the docs
8593
8594 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8595
8596         * tools/gst-compprep.c: (handle_xmlerror), (main):
8597         Add a check for the version that introduced SetStructuredError to fix
8598         the build on FC1
8599
8600 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8601
8602         * win32/msvc71.sln:
8603         * win32/testsuite/:
8604           prepare to compile the testsuite with MSVC
8605
8606 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8607
8608         * docs/manual/win32.xml:
8609           attempt to transform the Win32 README into an XML doc
8610
8611 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8612
8613         * gst/gst.c:
8614         * gst/gstbin.*:
8615         * gst/config.h.in:
8616         * gst/gstelement.*:
8617         * gst/gstevent.h:
8618         * gst/gstobject.*:
8619         * gst/gstpad.h:
8620         * tools/gst-register.c:
8621         * win32/gstreamer.def:
8622           extern symbols are now exported for the Windows DLL
8623
8624 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8625
8626         * gst/gstinfo.h:
8627           fix a problem to enable/disable DEBUG under MSVC
8628
8629 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8630
8631         * win32/:
8632           enable more debug code in DEBUG build
8633
8634 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8635
8636         * win32/config.h:
8637         * gst/gst-i18n-app.h:
8638           enable NLS under Windows
8639
8640 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
8641         * tools/gst-compprep.c: (handle_xmlerror), (main):
8642           Make an error that baffled me a bit clearer
8643
8644 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8645
8646         * gst/gstqueue.c:
8647           don't use g_queue_get_length () because it's 2.4, use ->length
8648
8649 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
8650
8651         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
8652
8653         * tools/gst-inspect.c: (print_signal_info):
8654           don't free random data twice. (fixes #144185)
8655
8656 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
8657
8658         * gst/gstqueue.c:
8659         * gst/gstqueue.h:
8660           fix removing from the wrong queue on event timeout
8661           fix disposing of the event queue by casting correctly
8662           add mutexes for handling the event queue
8663           someone was sleeping when fixing queue last time around :)
8664
8665 2004-06-10  Johan Dahlin  <johan@gnome.org>
8666
8667         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
8668         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
8669
8670 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8671
8672         * docs/random/gdp:
8673         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
8674         * libs/gst/dataprotocol/dataprotocol.c:
8675         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8676         (gst_dp_buffer_from_header):
8677         * libs/gst/dataprotocol/dataprotocol.h:
8678         * libs/gst/dataprotocol/dp-private.h:
8679           rev version to 0.1, add buffer flags and copy them
8680
8681 2004-06-09  Johan Dahlin  <johan@gnome.org>
8682
8683         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
8684         the flags from the buffer we're copying.
8685
8686 2004-06-09  Wim Taymans  <wim@fluendo.com>
8687
8688         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
8689         * gst/elements/gstidentity.c: (gst_identity_init),
8690         (gst_identity_chain):
8691         Print more buffer info in fakesink.
8692         Make identity output similar to fakesink.
8693
8694 2004-06-07  Daniel Gazard  <dany42@free.fr>
8695
8696         reviewed by Benjamin Otte  <otte@gnome.org>
8697
8698         * configure.ac:
8699           fix cross compiling not working. (fixes #143741)
8700
8701 2004-06-07  Benjamin Otte  <otte@gnome.org>
8702
8703         * gst/gstelement.c: (gst_element_set_time_delay):
8704           add failure check
8705         * gst/gstinfo.h:
8706           put brackets around macro arguments of GST_TIME_ARGS, add note to
8707           move it to correct header in 0.9
8708
8709 2004-06-07  Benjamin Otte  <otte@gnome.org>
8710
8711         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
8712         (gst_file_index_load), (_file_index_id_save_entries),
8713         (gst_file_index_commit), (gst_file_index_add_association),
8714         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
8715         (gst_file_index_plugin_init):
8716           make debugging use a default category
8717
8718 2004-06-06  David Moore  <dcm@acm.org>
8719
8720         reviewed by Benjamin Otte  <otte@gnome.org>
8721
8722         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
8723         (gst_fdsrc_change_state):
8724           reset offset counter when going READY => PAUSED. (fixes #142903)
8725
8726 2004-06-06  ed@catmur.co.uk
8727
8728         reviewed by Benjamin Otte  <otte@gnome.org>
8729
8730         * gst/registries/gstxmlregistry.c:
8731         (gst_xml_registry_rebuild_recurse):
8732           don't rely on g_dir_open to figure out if a file is a directory, use
8733           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
8734           directories. (fixes #142850)
8735
8736 2004-06-06  Benjamin Otte  <otte@gnome.org>
8737
8738         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
8739           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
8740         * libs/gst/bytestream/adapter.c:
8741         * libs/gst/bytestream/adapter.h:
8742           fix copyright in header and typo in debugging category name
8743
8744 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8745
8746         * configure.ac:
8747           bump nano to cvs
8748
8749 === release 0.8.3 ===
8750
8751 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8752
8753         * configure.ac:
8754           update libtool versioning
8755           do a new release
8756         * docs/gst/tmpl/gstelement.sgml:
8757         * docs/gst/tmpl/gsttypes.sgml:
8758         * gst/gstinfo.c: (_gst_debug_init):
8759           put back GST_CAT_DATAFLOW to fix API breakage
8760
8761 2004-06-04  David Schleef  <ds@schleef.org>
8762
8763         * autogen.sh: Add a temporary 'env' to test buildbot problems.
8764
8765 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8766
8767         * configure.ac:
8768           bump nano to cvs
8769
8770 === release 0.8.2 ===
8771
8772 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8773
8774         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
8775           check GST_DEBUG environment variable which is parsed the same way
8776           as --gst-debug=
8777
8778 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8779
8780         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
8781                             gstmd5sink.c gstshaper.c gsttee.c
8782                             gsttypefindelement.c
8783         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
8784
8785           - removing trailing commas at end of enums
8786             it is correct C99 code but C90 compilers would complain
8787             (AIX, Forte, ...)
8788             ('should' fix #143290, at least partially)
8789
8790 2004-05-27  Wim Taymans  <wim@fluendo.com>
8791
8792         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
8793         (chain_group_set_enabled), (create_group), (add_to_group),
8794         (merge_groups), (setup_group_scheduler), (group_elements),
8795         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
8796         Don't try to follow the pad connections with other groups
8797         when a loop based element is added to the scheduler because
8798         the bin will inform the scheduler about the pad links a little
8799         later.
8800
8801 2004-05-27  Wim Taymans  <wim@fluendo.com>
8802
8803         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8804         (remove_from_chain), (chain_group_set_enabled),
8805         (setup_group_scheduler), (group_element_set_enabled),
8806         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
8807         (gst_opt_scheduler_show):
8808         Elements without a group can do a state change as well, just wait
8809         with the setup of the scheduling function when it is added to a
8810         chain.
8811
8812 2004-05-27  Wim Taymans  <wim@fluendo.com>
8813
8814         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8815         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
8816         (merge_groups), (setup_group_scheduler),
8817         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
8818         (gst_opt_scheduler_show):
8819         Fixes to maintain internal consistency of the scheduler data
8820         structures. 
8821          - adding an enabled group to a chain should increment the
8822            number of enabled elements in that chain.
8823          - removing an enabled group from a chain could disable the
8824            chain.
8825          - removing a disabled group from a chain could enable the
8826            chain.
8827          - add g_assert when internal inconsistency is detected.
8828          - adding an element to a group could increase the number of
8829            links this group has with other groups.
8830          - merging two groups also merges the chains.
8831          - also show group links in the _show method.
8832            
8833
8834 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8835
8836         * gst/gstcaps.c: (gst_caps_structure_simplify):
8837           don't print error messages when there is no error
8838         * gst/gstvalue.c: (gst_value_compare_int_range):
8839           compare the second value, too
8840         * testsuite/caps/Makefile.am:
8841         * testsuite/caps/random.c: (assert_on_error), (main):
8842           add tests to make sure the two things above are checked for
8843
8844 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8845
8846         * configure.ac:
8847         * libs/gst/dataprotocol/Makefile.am:
8848         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
8849         * libs/gst/dataprotocol/dataprotocol.h:
8850           wrap header in GST_ENABLE_NEW.  make code use it
8851
8852 2004-05-23  Johan Dahlin  <johan@gnome.org>
8853
8854         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
8855         so verbose and print GstElement signal names all the time.
8856
8857 2004-05-22  David Schleef  <ds@schleef.org>
8858
8859         * gst/registries/gstxmlregistry.c:
8860         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
8861         (bug #142957)
8862
8863 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
8864
8865         * configure.ac:
8866           scrub cflags for glib2 so gcc doesn't complain when glib is in
8867           /usr/local
8868
8869 2004-05-21  Johan Dahlin  <johan@gnome.org>
8870
8871         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
8872         __GNUC__, patch from Brian Cameron, fixes bug #142804
8873
8874 2004-05-20  David Schleef  <ds@schleef.org>
8875
8876         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
8877         comparison code.  (bug #142819)
8878
8879 2004-05-20  Wim Taymans  <wim@fluendo.com>
8880
8881         * gst/gstbuffer.c: (gst_buffer_default_copy):
8882         * gst/gstbuffer.h:
8883         Added Comment to a flag.
8884         copy relevant flags in _buffer_copy.
8885
8886 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8887
8888         reviewed by: Wim Taymans <wim at fluendo dot com>
8889
8890         * gst/gstbuffer.h:
8891           add GST_BUFFER_IN_CAPS buffer flag
8892         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8893         (gst_structure_parse_any_list), (gst_structure_parse_list),
8894         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
8895         * gst/gstvalue.c: (gst_value_serialize_any_list),
8896         (gst_value_transform_any_list_string),
8897         (gst_value_list_prepend_value), (gst_value_list_append_value),
8898         (gst_value_list_get_size), (gst_value_list_get_value),
8899         (gst_value_transform_list_string),
8900         (gst_value_transform_fixed_list_string),
8901         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
8902         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
8903         (_gst_value_initialize):
8904         * gst/gstvalue.h:
8905           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
8906           < , > as a format.
8907         * testsuite/caps/string-conversions.c: (main):
8908           add regression tests for < >
8909
8910 2004-05-20  Johan Dahlin  <johan@gnome.org>
8911
8912         * docs/gst/Makefile.am (all-local): Re-add
8913
8914 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8915
8916         * docs/gst/Makefile.am:
8917         * docs/gst/gstreamer-docs.sgml:
8918         * docs/libs/Makefile.am:
8919         * docs/libs/gstreamer-libs-docs.sgml:
8920           fix distcheck issues
8921
8922 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8923
8924         * libs/gst/dataprotocol/Makefile.am:
8925           add to autotest
8926
8927 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8928
8929         * libs/gst/dataprotocol/Makefile.am:
8930         * libs/gst/dataprotocol/dataprotocol.c:
8931         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8932         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
8933         * libs/gst/dataprotocol/dp-private.h:
8934           use GST macros to read/write fixed length ints
8935           add some more asserts
8936
8937 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8938
8939         * docs/libs/gstreamer-libs-docs.sgml:
8940         * docs/libs/gstreamer-libs-sections.txt:
8941           remove idct and putbits
8942         * configure.ac:
8943         * docs/libs/tmpl/gstdataprotocol.sgml:
8944         * libs/gst/Makefile.am:
8945         * libs/gst/dataprotocol/Makefile.am:
8946         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
8947         (buffer_test), (caps_test), (event_test), (main):
8948         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
8949         (gst_dp_dump_byte_array), (gst_dp_init),
8950         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
8951         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8952         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
8953         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
8954         (gst_dp_validate_header), (gst_dp_validate_payload),
8955         (gst_dp_validate_packet), (plugin_init):
8956         * libs/gst/dataprotocol/dataprotocol.h:
8957         * libs/gst/dataprotocol/dp-private.h:
8958           add dataprotocol
8959
8960 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8961
8962         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
8963           fix int variable deserialization and add a helper so we can actually
8964           debug this.
8965
8966 2004-05-18  David Schleef  <ds@schleef.org>
8967
8968         * testsuite/debug/commandline.c: (main): Call ./commandline, not
8969           argv[0].  Calling yourself is probably not the best way to
8970           construct a test like this, btw.
8971
8972 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8973
8974         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
8975           don't claim to be more intelligent than a scheduler when the
8976           scheduler claims the pipeline is stopped
8977         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
8978         (safe_cothread_destroy),
8979         (gst_entry_scheduler_remove_all_cothreads),
8980         (gst_entry_scheduler_reset), (_remove_cothread),
8981         (gst_entry_scheduler_state_transition):
8982           hold off cothread destruction if we're not in main cothread
8983         * configure.ac:
8984         * testsuite/Makefile.am:
8985           add new test dir
8986         * testsuite/schedulers/.cvsignore:
8987         * testsuite/schedulers/Makefile.am:
8988           add tests
8989         * testsuite/schedulers/relink.c: (cb_handoff), (main):
8990           check relinking and adding/removing elements from a running pipeline
8991         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
8992           check unlinking in a running pipeline
8993         * testsuite/schedulers/unref.c: (cb_handoff), (main):
8994           check unreffing a running pipeline
8995         * testsuite/schedulers/useless_iteration.c: (main):
8996           check iterating a pipeline that contains running threads works
8997
8998 2004-05-18  David Schleef  <ds@schleef.org>
8999
9000         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
9001           is false.
9002
9003 2004-05-18  Wim Taymans  <wim@fluendo.com>
9004
9005         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
9006         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
9007         Fixed an error introduced with patch for 1.63. When setting
9008         a get based element as the entry point in a group, make sure
9009         to mark the group as GET based.
9010
9011 2004-05-18  Wim Taymans  <wim@fluendo.com>
9012
9013         * gst/schedulers/gstoptimalscheduler.c: (create_group),
9014         (setup_group_scheduler), (loop_group_schedule_function),
9015         (gst_opt_scheduler_pad_link):
9016         Added some more debug info and fixed a bug where the group
9017         type was set to LOOP but it was in fact unknown.
9018
9019 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9020
9021         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
9022           make resetting scheduler work twice in a row
9023
9024 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9025
9026         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
9027         (CREATE_USERIALIZATION), (_gst_value_initialize),
9028         (gst_value_compare_float), (gst_value_serialize_float),
9029         (gst_value_deserialize_float), (gst_value_compare_enum),
9030         (gst_value_serialize_enum), (gst_value_deserialize_enum):
9031           add serialization and comparison functions for long, int64, enum and
9032           float values
9033         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
9034           use best serialization function in type hierarchy instead of only a
9035           matching one. This is required for enums to work.
9036         * gst/parse/grammar.y:
9037           use gst_caps_deserialize
9038         * testsuite/parse/Makefile.am:
9039           parse1 now works
9040         * testsuite/parse/parse1.c: (main):
9041           remove aggregator check, aggregator is broken, this test works now
9042           but fails because of bug #138012
9043         * testsuite/parse/parse2.c: (main):
9044           s/xvideosink/xvimagesink - this test looks a lot like we should
9045           disable it
9046
9047 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9048
9049         * gst/gstelement.c: (gst_element_class_init):
9050           whoops, store the signal id correctly
9051         * gst/schedulers/gstbasicscheduler.c:
9052         (gst_basic_scheduler_chain_wrapper):
9053           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
9054           chain function isn't linked
9055
9056 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
9057         * configure.ac:
9058         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
9059         support until we decide where the flags should be used
9060         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
9061         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
9062         * gst/gstpad.c: (gst_pad_link_call_link_functions):
9063         Output refused caps in the debug info
9064
9065 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9066
9067         * gst/elements/gstidentity.c: (gst_identity_chain):
9068           add duration debug
9069         * gst/gstinfo.c: (gst_debug_log_default):
9070           add timestamp
9071
9072 2004-05-13  Benjamin Otte  <otte@gnome.org>
9073
9074         * gst/gstpipeline.c: (gst_pipeline_dispose),
9075         (gst_pipeline_change_state):
9076           call gst_scheduler_reset on dispose (fixes #141416)
9077
9078 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9079
9080         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
9081           compute mapsize correctly
9082         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
9083           use correct datatypes when calling a varargs function
9084         * gst/elements/gsttypefindelement.c: (stop_typefinding):
9085           push a DISCONT event as first thing
9086         * gst/gst_private.h:
9087         * gst/gstinfo.c: (_gst_debug_init):
9088           remove GST_DATAFLOW debugging category
9089         * gst/gstbin.c: (gst_bin_iterate):
9090           use GST_SCHEDULING category
9091         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
9092         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
9093         (gst_pad_call_get_function):
9094           add GST_DATAFLOW to easily track flow of buffers or events.
9095         * gst/gstqueue.c: (gst_queue_get_type),
9096         (gst_queue_handle_pending_events), (gst_queue_chain),
9097         (gst_queue_get), (gst_queue_handle_src_event):
9098           use own static debugging category GST_DATAFLOW for dataflow,
9099           use DEBUG category for showing which path events go, use LOG
9100           category for buffers.
9101
9102 2004-05-10  David Schleef  <ds@schleef.org>
9103
9104         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
9105
9106 2004-05-10  David Schleef  <ds@schleef.org>
9107
9108         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
9109         symbols, because otherwise we don't know what they are.  Thanks,
9110         the GStreamer team.
9111         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
9112
9113 2004-05-10  David Schleef  <ds@schleef.org>
9114
9115         (from Steve Lhomme)
9116         * win32/Makefile: When using make clean the MS Visual Studio makefiles
9117         are deleted.  Fix.
9118         * win32/Makefile.inspect:
9119         * win32/Makefile.launch:
9120         * win32/Makefile.register:
9121
9122 2004-05-10  David Schleef  <ds@schleef.org>
9123
9124         * gst/gstinfo.h: Add missing inline function.
9125         * gst/gsttrace.c: add include
9126         * gst/parse/grammar.y: remove unused code
9127         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
9128         more portable.
9129         * tools/gst-register.c: wrap unistd.h
9130         
9131         More additions/fixes from Steve for the MSVC build.
9132         * win32/GStreamer.vcproj:
9133         * win32/Makefile:
9134         * win32/Makefile.inspect:
9135         * win32/Makefile.launch:
9136         * win32/Makefile.register:
9137         * win32/README.txt:
9138         * win32/gst-inspect.vcproj:
9139         * win32/gst-launch.vcproj:
9140         * win32/gst-register.vcproj:
9141         * win32/gstbytestream.def:
9142         * win32/gstbytestream.vcproj:
9143         * win32/gstconfig.h:
9144         * win32/gstelements.def:
9145         * win32/gstelements.vcproj:
9146         * win32/gstenumtypes.c:
9147         * win32/gstenumtypes.h:
9148         * win32/gstoptimalscheduler.def:
9149         * win32/gstoptimalscheduler.vcproj:
9150         * win32/gstreamer.def:
9151         * win32/gstspider.def:
9152         * win32/gstspider.vcproj:
9153         * win32/gstversion.h:
9154         * win32/msvc71.sln:
9155
9156 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9157
9158         * gst/gstelement.c: (gst_element_class_init),
9159         (gst_element_no_more_pads):
9160         * gst/gstelement.h:
9161           add gst_element_no_more_pads and the "no-more-pads" signal
9162
9163 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9164
9165         * gst/gstregistry.c: (gst_registry_add_plugin):
9166           refuse to add plugins when a plugin with same name is already
9167           registered. Fixes a bunch of "How to remove plugins?" issues.
9168           May lead to other problems though, let's test
9169
9170 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9171
9172         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
9173         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
9174         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
9175
9176 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9177
9178         * tests/Makefile.am: fix am16 issue
9179
9180 2004-05-09  Benjamin Otte  <otte@gnome.org>
9181
9182         * libs/gst/bytestream/Makefile.am:
9183           we should indeed add .c files to makefiles or they won't be built
9184           (d'oh)
9185
9186 2004-05-08  Benjamin Otte  <otte@gnome.org>
9187
9188         * gst/gstpad.c: (gst_pad_proxy_fixate):
9189           really reduce the set of caps
9190
9191 2004-05-08  Benjamin Otte  <otte@gnome.org>
9192
9193         * tests/Makefile.am:
9194         * tests/spidey_bench.c: (handoff), (main):
9195           add benchmark to test how long spider needs to create a pipeline
9196
9197 2004-05-08  Benjamin Otte  <otte@gnome.org>
9198
9199         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
9200           mark links as unengaged when unnegotiating instead of deactivating.
9201           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
9202
9203 2004-05-08  Benjamin Otte  <otte@gnome.org>
9204
9205         * docs/manual/helloworld.xml:
9206           s/audiosink/osssink (patch by Patrick Guimond)
9207
9208 2004-05-07  David Schleef  <ds@schleef.org>
9209
9210         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
9211         since it contains important stuff.
9212
9213 2004-05-07  David Schleef  <ds@schleef.org>
9214
9215         * testsuite/caps/caps.c: (test3), (main): A check for appending
9216         ANY caps.
9217
9218 2004-05-07  David Schleef  <ds@schleef.org>
9219
9220         * common/m4/as-compiler-flag.m4: Properly quote arguments,
9221         which may contain commas.  Fixes detection of -Wa,-mregnames
9222
9223 2004-05-06  David Schleef  <ds@schleef.org>
9224
9225         Changes to handle compilers that don't have variadic macro
9226         support.  In particular, glib headers define some inlines
9227         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
9228         builds.
9229         * gst/Makefile.am:
9230         * gst/cothreads.c:
9231         * gst/elements/gstfdsink.c:
9232         * gst/elements/gstfdsrc.c:
9233         * gst/elements/gstfilesink.c:
9234         * gst/elements/gstfilesrc.c:
9235         * gst/gst_private.h:
9236         * gst/gstatomic.c:
9237         * gst/gstcaps.c: (gst_caps_append):
9238         * gst/gstcpu.c: (gst_cpuid_i386):
9239         * gst/gstelement.c:
9240         * gst/gsterror.c:
9241         * gst/gstfilter.c:
9242         * gst/gstinfo.h:
9243         * gst/gstprobe.c:
9244         * gst/gstquery.c:
9245         * gst/gstregistry.c:
9246         * gst/gststructure.c:
9247         * gst/gsttaginterface.c:
9248         * gst/gsttrace.c: (gst_trace_new):
9249         * gst/gsttrashstack.c:
9250         * gst/gsturi.c:
9251         * gst/gstvalue.c:
9252         * gst/parse/grammar.y:
9253         * gst/parse/parse.l:
9254         * tools/gst-inspect.c: (main):
9255         * tools/gst-launch.c: (main):
9256         * tools/gst-xmlinspect.c: (PUT_STRING):
9257
9258 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9259
9260         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9261         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9262         * gst/elements/gstfilesrc.h:
9263           send NEW_MEDIA events correctly
9264         * gst/elements/gsttypefindelement.c: (start_typefinding),
9265         (gst_type_find_element_handle_event):
9266           restart typefinding when we get a NEW_MEDIA event
9267         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
9268         (gst_bin_dispose):
9269           don't die when someone removes elements in callbacks
9270         * gst/gstelement.c: (gst_element_change_state):
9271           improve debugging
9272         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
9273           we need a NEW_MEDIA event to engage a link
9274         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
9275           don't g_print debugging stuff
9276         * testsuite/caps/simplify.c: (check_caps):
9277
9278 2004-05-04  Benjamin Otte  <otte@gnome.org>
9279
9280         * gst/parse/grammar.y:
9281           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
9282
9283 2004-05-04  Benjamin Otte  <otte@gnome.org>
9284
9285         * testsuite/caps/renegotiate.c: (main):
9286           improve output in error case
9287
9288 2004-05-04  Benjamin Otte  <otte@gnome.org>
9289
9290         * gst/parse/grammar.y:
9291           fix assert to not trigger when there's no error argument
9292         * gst/parse/parse.l:
9293           fix definition of caps to allow more than two structures
9294         * testsuite/caps/Makefile.am:
9295         * testsuite/caps/renegotiate.c: (main):
9296           it's sinesrc and works in that case
9297
9298 2004-05-04  Wim Taymans  <wim@fluendo.com>
9299
9300         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
9301         (group_dec_link), (gst_opt_scheduler_pad_unlink):
9302         when removing an element from a group, we always need to
9303         decrement the link count that this group had with other 
9304         groups through the element.
9305         added an extra assert to catch inconsistencies when decrementing
9306         the link count.
9307
9308 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9309
9310         * configure.ac:
9311         * docs/gst/Makefile.am:
9312         * docs/gst/gstreamer-sections.txt:
9313         * docs/gst/tmpl/gstcompat.sgml:
9314         * examples/appreader/Makefile.am:
9315         * examples/cutter/Makefile.am:
9316         * examples/events/Makefile.am:
9317         * examples/helloworld/Makefile.am:
9318         * examples/helloworld2/Makefile.am:
9319         * examples/launch/Makefile.am:
9320         * examples/manual/Makefile.am:
9321         * examples/mixer/Makefile.am:
9322         * examples/pingpong/Makefile.am:
9323         * examples/plugins/Makefile.am:
9324         * examples/queue/Makefile.am:
9325         * examples/queue2/Makefile.am:
9326         * examples/queue3/Makefile.am:
9327         * examples/queue4/Makefile.am:
9328         * examples/retag/Makefile.am:
9329         * examples/thread/Makefile.am:
9330         * examples/typefind/Makefile.am:
9331         * examples/xml/Makefile.am:
9332         * gst/Makefile.am:
9333         * gst/autoplug/Makefile.am:
9334         * gst/elements/Makefile.am:
9335         * gst/gstcompat.h:
9336         * gst/indexers/Makefile.am:
9337         * gst/parse/Makefile.am:
9338         * gst/registries/Makefile.am:
9339         * gst/schedulers/Makefile.am:
9340         * libs/gst/bytestream/Makefile.am:
9341         * libs/gst/control/Makefile.am:
9342         * libs/gst/getbits/Makefile.am:
9343         * po/af.po:
9344         * po/az.po:
9345         * po/en_GB.po:
9346         * po/fr.po:
9347         * po/nl.po:
9348         * po/sr.po:
9349         * po/sv.po:
9350         * po/tr.po:
9351         * po/uk.po:
9352         * tests/Makefile.am:
9353         * tests/bufspeed/Makefile.am:
9354         * tests/instantiate/Makefile.am:
9355         * tests/memchunk/Makefile.am:
9356         * tests/muxing/Makefile.am:
9357         * tests/negotiation/Makefile.am:
9358         * tests/probes/Makefile.am:
9359         * tests/sched/Makefile.am:
9360         * tests/seeking/Makefile.am:
9361         * tests/threadstate/Makefile.am:
9362         * testsuite/caps/Makefile.am:
9363         * testsuite/cleanup/Makefile.am:
9364         * testsuite/dlopen/Makefile.am:
9365         * testsuite/dynparams/Makefile.am:
9366         * testsuite/plugin/Makefile.am:
9367         * testsuite/states/Makefile.am:
9368         * tools/Makefile.am:
9369           reorganize compile/link flags to be consistent
9370           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
9371
9372 2004-05-04  David Schleef  <ds@schleef.org>
9373
9374         The "once more, with feeling" check-in.
9375         * testsuite/caps/Makefile.am: dist caps_strings
9376         * testsuite/caps/renegotiate.c: (main): This test triggers a
9377           segfault in the core.  Marking as failing.
9378
9379 2004-05-03  David Schleef  <ds@schleef.org>
9380
9381         * testsuite/caps/deserialize.c: (main): Fix problems noticed
9382           by the build bots.
9383         * testsuite/caps/renegotiate.c: (main): Same.
9384
9385 2004-05-03  David Schleef  <ds@schleef.org>
9386
9387         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
9388
9389 2004-05-03  David Schleef  <ds@schleef.org>
9390
9391         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
9392           variable to find our source file.
9393
9394 2004-05-03  David Schleef  <ds@schleef.org>
9395
9396         * configure.ac:  Link plugins with libgstreamer and dependent
9397           libraries
9398         * testsuite/caps/Makefile.am:
9399         * testsuite/caps/caps_strings:
9400         * testsuite/caps/deserialize.c: (main): Add a little test to slog
9401           through a file of caps strings and test each one
9402
9403 2004-05-04  Benjamin Otte  <otte@gnome.org>
9404
9405         * libs/gst/bytestream/Makefile.am:
9406         * libs/gst/bytestream/adapter.c: 
9407         * libs/gst/bytestream/adapter.h:
9408           add GstAdapter, similar to bytestream, but doesn't require ugly event
9409           handling or uglier loopbased elements
9410
9411 2004-05-03  David Schleef  <ds@schleef.org>
9412
9413         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
9414         * testsuite/caps/erathostenes.c:
9415         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
9416
9417 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9418
9419         * docs/pwg/pwg.xml:
9420           remove hardcoded stylesheet path (duh)
9421         * docs/random/release:
9422         * docs/gst/gstreamer-sections.txt:
9423         * gst/Makefile.am:
9424         * gst/gst.h:
9425         * gst/gst_private.h:
9426         * gst/gstcaps.c:
9427         * gst/gstevent.c:
9428         * gst/gstformat.c:
9429         * gst/gstinfo.c:
9430         * gst/gstinfo.h:
9431         * gst/gstinterface.c:
9432         * gst/gstmemchunk.c:
9433         * gst/gstprobe.c:
9434         * gst/gstquery.c:
9435         * gst/gstregistry.c:
9436         * gst/gstregistrypool.c:
9437         * gst/gststructure.c:
9438         * gst/gsttaginterface.c:
9439         * gst/gstthread.c:
9440         * gst/gsttrace.c:
9441         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
9442         * gst/gsturi.c:
9443         * gst/gstvalue.c:
9444           deprecate gst_info; remove gstlog.h
9445    
9446
9447 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9448
9449         * Makefile.am:
9450         * po/en_GB.po:
9451         * po/sv.po:
9452         * po/uk.po:
9453           updated translations
9454
9455 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9456
9457         * gst/gstbin.c: (gst_bin_dispose):
9458           better debugging
9459
9460 2004-05-03  Johan Dahlin  <johan@gnome.org>
9461
9462         * gst/schedulers/gstoptimalscheduler.c
9463         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
9464         really is a GstElement. Avoids critical when running gst-launch -v
9465         and a oggdemux/decoding pipeline.
9466
9467 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9468
9469         * docs/gst/tmpl/gstpipeline.sgml :
9470         * docs/manual/elements-api.xml :
9471                 doc fix by Patrick Guimond (Protector) from devel ML
9472                 reviewed by ronald
9473
9474 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9475
9476         * docs/gst/Makefile.am :
9477         * docs/libs/Makefile.am :
9478                 apply a patch from Arwed v. Merkatz so that gtk-doc
9479                 generated docs install (same for .devhelp file)
9480                 (fixes part 1 of #138836)
9481
9482 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9483
9484         * docs/faq/dependencies.xml: typo
9485         * docs/faq/getting.xml :
9486             - fix download URL for new gstreamer site
9487             - hide sf.net download page as latest version aren't there
9488             - fix apt URLs
9489             - fill "get via CVS" paragraph (link to dev page on the site)
9490         * docs/faq/general.xml:
9491             hide status tables as they no more exists
9492             change case on plugins license file to reflect reality
9493         * docs/faq/troubleshooting.xml:
9494             remove the wiki question/answer as there is no more wiki
9495
9496 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9497
9498         * gst/gsterror.h:
9499           include the headers needed for declarations used in this header
9500
9501 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9502
9503         * docs/random/uraeus/gstreamer_and_midi.txt :
9504           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
9505           (fixes #132288)
9506
9507 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
9508
9509         reviewed by Benjamin Otte  <otte@gnome.org>
9510
9511         * gst/schedulers/gthread-cothreads.h:
9512           free allocated data for main cothread, too when destroying context
9513           (fixes #141417)
9514
9515 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9516
9517         * docs/manual/goals.xml : remove duplicated paragraph at end 
9518         of doc page (fixes #141448)
9519
9520 2004-04-29  David Schleef  <ds@schleef.org>
9521
9522         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
9523         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
9524
9525 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9526
9527         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
9528           fix property
9529         * gst/gstcaps.c:
9530           fix doc string
9531         * po/POTFILES.in:
9532           rename typefind source file
9533
9534 2004-04-28  David Schleef  <ds@schleef.org>
9535
9536         Several new files from Steve Lhomme's MSVC patch (bug #141317):
9537         * win32/GStreamer.vcproj:
9538         * win32/Makefile:
9539         * win32/config.h:
9540         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
9541         (_trewinddir), (_ttelldir), (_tseekdir):
9542         * win32/dirent.h:
9543         * win32/gst-inspect.vcproj:
9544         * win32/gst-launch.vcproj:
9545         * win32/gst-register.vcproj:
9546         * win32/gstbytestream.vcproj:
9547         * win32/gstelements.vcproj:
9548         * win32/gstoptimalscheduler.vcproj:
9549         * win32/gstspider.vcproj:
9550         * win32/gtchar.h:
9551         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
9552         * win32/mman.h:
9553         * win32/mman.inl:
9554         * win32/msvc71.sln:
9555
9556 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9557
9558         * gst/gst.c: (init_post):
9559         * gst/gstinfo.c:
9560           remove useless _gst_progname stuff
9561         * tools/gst-inspect.c: (print_field), (print_caps):
9562           improve caps output
9563
9564 2004-04-28  David Schleef  <ds@schleef.org>
9565
9566         Disable parsing of a lot of files that aren't part of the
9567         exported API.  Move corresponding template files to old/,
9568         waiting for removal when they don't contain anything
9569         interesting.
9570         * docs/gst/Makefile.am:
9571         * docs/gst/gstreamer-sections.txt:
9572         * docs/gst/tmpl/cothreads.sgml:
9573         * docs/gst/tmpl/cothreads_compat.sgml:
9574         * docs/gst/tmpl/gettext.sgml:
9575         * docs/gst/tmpl/gobject2gtk.sgml:
9576         * docs/gst/tmpl/grammar.tab.sgml:
9577         * docs/gst/tmpl/gst-i18n-app.sgml:
9578         * docs/gst/tmpl/gst-i18n-lib.sgml:
9579         * docs/gst/tmpl/gst_private.sgml:
9580         * docs/gst/tmpl/gstaggregator.sgml:
9581         * docs/gst/tmpl/gstarch.sgml:
9582         * docs/gst/tmpl/gstatomic_impl.sgml:
9583         * docs/gst/tmpl/gstbufferstore.sgml:
9584         * docs/gst/tmpl/gstdata_private.sgml:
9585         * docs/gst/tmpl/gstdisksink.sgml:
9586         * docs/gst/tmpl/gstdisksrc.sgml:
9587         * docs/gst/tmpl/gstelementfactory.sgml:
9588         * docs/gst/tmpl/gstextratypes.sgml:
9589         * docs/gst/tmpl/gstfakesink.sgml:
9590         * docs/gst/tmpl/gstfakesrc.sgml:
9591         * docs/gst/tmpl/gstfdsink.sgml:
9592         * docs/gst/tmpl/gstfdsrc.sgml:
9593         * docs/gst/tmpl/gstfilesink.sgml:
9594         * docs/gst/tmpl/gstfilesrc.sgml:
9595         * docs/gst/tmpl/gsthttpsrc.sgml:
9596         * docs/gst/tmpl/gstidentity.sgml:
9597         * docs/gst/tmpl/gstindexfactory.sgml:
9598         * docs/gst/tmpl/gstmarshal.sgml:
9599         * docs/gst/tmpl/gstmd5sink.sgml:
9600         * docs/gst/tmpl/gstmultidisksrc.sgml:
9601         * docs/gst/tmpl/gstmultifilesrc.sgml:
9602         * docs/gst/tmpl/gstpadtemplate.sgml:
9603         * docs/gst/tmpl/gstpipefilter.sgml:
9604         * docs/gst/tmpl/gstschedulerfactory.sgml:
9605         * docs/gst/tmpl/gstsearchfuncs.sgml:
9606         * docs/gst/tmpl/gstshaper.sgml:
9607         * docs/gst/tmpl/gstspider.sgml:
9608         * docs/gst/tmpl/gstspideridentity.sgml:
9609         * docs/gst/tmpl/gststatistics.sgml:
9610         * docs/gst/tmpl/gsttee.sgml:
9611         * docs/gst/tmpl/gsttimecache.sgml:
9612         * docs/gst/tmpl/gsttypefind.sgml:
9613         * docs/gst/tmpl/gsttypefindfactory.sgml:
9614         * docs/gst/tmpl/gstxmlregistry.sgml:
9615         * docs/gst/tmpl/gthread-cothreads.sgml:
9616         * docs/gst/tmpl/old/cothreads.sgml:
9617         * docs/gst/tmpl/old/cothreads_compat.sgml:
9618         * docs/gst/tmpl/old/gettext.sgml:
9619         * docs/gst/tmpl/old/gobject2gtk.sgml:
9620         * docs/gst/tmpl/old/grammar.tab.sgml:
9621         * docs/gst/tmpl/old/gst-i18n-app.sgml:
9622         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
9623         * docs/gst/tmpl/old/gst_private.sgml:
9624         * docs/gst/tmpl/old/gstaggregator.sgml:
9625         * docs/gst/tmpl/old/gstarch.sgml:
9626         * docs/gst/tmpl/old/gstatomic_impl.sgml:
9627         * docs/gst/tmpl/old/gstbufferstore.sgml:
9628         * docs/gst/tmpl/old/gstdata_private.sgml:
9629         * docs/gst/tmpl/old/gstdisksink.sgml:
9630         * docs/gst/tmpl/old/gstdisksrc.sgml:
9631         * docs/gst/tmpl/old/gstelementfactory.sgml:
9632         * docs/gst/tmpl/old/gstextratypes.sgml:
9633         * docs/gst/tmpl/old/gstfakesink.sgml:
9634         * docs/gst/tmpl/old/gstfakesrc.sgml:
9635         * docs/gst/tmpl/old/gstfdsink.sgml:
9636         * docs/gst/tmpl/old/gstfdsrc.sgml:
9637         * docs/gst/tmpl/old/gstfilesink.sgml:
9638         * docs/gst/tmpl/old/gstfilesrc.sgml:
9639         * docs/gst/tmpl/old/gsthttpsrc.sgml:
9640         * docs/gst/tmpl/old/gstidentity.sgml:
9641         * docs/gst/tmpl/old/gstindexfactory.sgml:
9642         * docs/gst/tmpl/old/gstmarshal.sgml:
9643         * docs/gst/tmpl/old/gstmd5sink.sgml:
9644         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
9645         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
9646         * docs/gst/tmpl/old/gstpadtemplate.sgml:
9647         * docs/gst/tmpl/old/gstpipefilter.sgml:
9648         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
9649         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
9650         * docs/gst/tmpl/old/gstshaper.sgml:
9651         * docs/gst/tmpl/old/gstspider.sgml:
9652         * docs/gst/tmpl/old/gstspideridentity.sgml:
9653         * docs/gst/tmpl/old/gststatistics.sgml:
9654         * docs/gst/tmpl/old/gsttee.sgml:
9655         * docs/gst/tmpl/old/gsttimecache.sgml:
9656         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
9657         * docs/gst/tmpl/old/gstxmlregistry.sgml:
9658         * docs/gst/tmpl/old/gthread-cothreads.sgml:
9659         * docs/gst/tmpl/old/types.sgml:
9660         * docs/gst/tmpl/types.sgml:
9661
9662         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
9663         gtkdoc-scan doesn't like files with the same name in different
9664         directories.
9665         * gst/elements/Makefile.am:
9666         * gst/elements/gstelements.c:
9667         * gst/elements/gsttypefind.c: 
9668         * gst/elements/gsttypefind.h:
9669         * gst/elements/gsttypefindelement.c:
9670         * gst/elements/gsttypefindelement.h:
9671
9672 2004-04-28  David Schleef  <ds@schleef.org>
9673
9674         A bunch of portability fixes, derived from Steve Lhomme's MSVC
9675         patch (bug #141317):
9676         * gst/gst-i18n-lib.h: Allow disabling gettext.
9677         * gst/gstatomic_impl.h: disable warning when it's dumb.
9678         * gst/gstclock.c: fix include
9679         * gst/gstcompat.h: fix variadic macro
9680         * gst/gstinfo.c: fix include
9681         * gst/gstmacros.h: add defines for inlines on MSVC
9682         * gst/gstplugin.c: fix includes
9683         * gst/gstregistry.c: fix includes
9684         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
9685         * gst/gstsystemclock.c: fix include
9686         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
9687         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
9688         * gst/registries/gstxmlregistry.c:
9689         (gst_xml_registry_parse_element_factory): fix use of non-portable
9690         functions
9691         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
9692         * libs/gst/control/dparammanager.h: same
9693
9694 2004-04-28  David Schleef  <ds@schleef.org>
9695
9696         Move a bunch of unused files to old/ with names that are
9697         not case-insensitive-unique.  These files still contain some
9698         useful information that needs to be merged into gstbin.sgml,
9699         etc., so they shouldn't be deleted yet.
9700         * docs/gst/tmpl/GstBin.sgml:
9701         * docs/gst/tmpl/GstBuffer.sgml:
9702         * docs/gst/tmpl/GstCaps.sgml:
9703         * docs/gst/tmpl/GstClock.sgml:
9704         * docs/gst/tmpl/GstCompat.sgml:
9705         * docs/gst/tmpl/GstData.sgml:
9706         * docs/gst/tmpl/GstElement.sgml:
9707         * docs/gst/tmpl/GstEvent.sgml:
9708         * docs/gst/tmpl/GstIndex.sgml:
9709         * docs/gst/tmpl/GstStructure.sgml:
9710         * docs/gst/tmpl/GstTag.sgml:
9711         * docs/gst/tmpl/old/GstBin.sgml:
9712         * docs/gst/tmpl/old/GstBuffer.sgml:
9713         * docs/gst/tmpl/old/GstCaps.sgml:
9714         * docs/gst/tmpl/old/GstClock.sgml:
9715         * docs/gst/tmpl/old/GstCompat.sgml:
9716         * docs/gst/tmpl/old/GstData.sgml:
9717         * docs/gst/tmpl/old/GstElement.sgml:
9718         * docs/gst/tmpl/old/GstEvent.sgml:
9719         * docs/gst/tmpl/old/GstIndex.sgml:
9720         * docs/gst/tmpl/old/GstStructure.sgml:
9721         * docs/gst/tmpl/old/GstTag.sgml:
9722
9723 2004-04-28  David Schleef  <ds@schleef.org>
9724
9725         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
9726         (gst_caps_append), (gst_caps_append_structure),
9727         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
9728         (gst_caps_set_simple), (gst_caps_set_simple_valist),
9729         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
9730         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
9731         (gst_caps_intersect), (gst_caps_normalize),
9732         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
9733         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
9734         * gst/gstcaps.h: use GST_IS_CAPS().
9735
9736 2004-04-26  David Schleef  <ds@schleef.org>
9737
9738         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
9739         assembly.  gcc doesn't handle it correctly. (bug #141083)
9740         * gst/gsttrashstack.h: same
9741
9742 2004-04-25  Benjamin Otte  <otte@gnome.org>
9743
9744         * gst/gstelement.c: (gst_element_change_state):
9745           fix assertion to do an int comparison
9746
9747 2004-04-25  Benjamin Otte  <otte@gnome.org>
9748
9749         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9750           better debugging output on error
9751
9752 2004-04-25  Benjamin Otte  <otte@gnome.org>
9753
9754         * gst/gstcaps.c: (gst_caps_subtract):
9755           fix memleak
9756
9757 2004-04-23  Benjamin Otte  <otte@gnome.org>
9758
9759         * gst/gstvalue.c: (gst_value_compare_buffer),
9760         (_gst_value_initialize):
9761           add comparison function for buffers
9762
9763 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9764
9765         * docs/pwg/pwg.xml:
9766           Just found out that this so-called "ima-wav" format is really
9767           just "dvi adpcm" (according to the MS WAV documentation). So
9768           renaming it. We didn't use it yet anyway.
9769
9770 2004-04-23  Benjamin Otte  <otte@gnome.org>
9771
9772         * gst/gstcaps.c: (gst_caps_is_always_compatible):
9773           call gst_caps_is_subset
9774
9775 2004-04-23  Benjamin Otte  <otte@gnome.org>
9776
9777         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
9778         (gst_caps_is_subset):
9779           add documentation
9780
9781 2004-04-23  Benjamin Otte  <otte@gnome.org>
9782           
9783         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
9784         (gst_caps_structure_subtract), (gst_caps_subtract),
9785         (gst_caps_structure_figure_out_union),
9786         (gst_caps_structure_simplify), (gst_caps_do_simplify):
9787           fix simplifying and subtracting not working correctly with optional
9788           properties
9789           solve assorted problems that make it now simplify ebven more
9790         * docs/gst/tmpl/gstcaps.sgml:
9791         * gst/gstcaps.h:
9792           make gst_caps_do_simplify return a bool to indicate if it simplified
9793         * testsuite/caps/simplify.c: (main):
9794           add more checks. The tests is quite a bit useless right now because
9795           the core is heavily simplifying itself.
9796         * testsuite/caps/caps.h:
9797           fix caps to contain all optional properties
9798
9799 2004-04-22  Benjamin Otte  <otte@gnome.org>
9800
9801         * docs/gst/tmpl/gstcaps.sgml:
9802         * docs/gst/tmpl/gstfilesrc.sgml:
9803         * docs/gst/tmpl/gststructure.sgml:
9804         * docs/gst/tmpl/gstvalue.sgml:
9805           update for recent API changes
9806         * gst/gstcaps.c: (gst_caps_do_simplify):
9807           fix to stop trying with a freed structure
9808         * gst/gstpad.c: (gst_pad_link_fixate):
9809           simplify caps
9810         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
9811           remove C++ comment
9812         * gst/gstpad.h:
9813           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
9814         * gst/gststructure.c: (gst_structure_value_get_generic_type),
9815         (gst_structure_to_string):
9816           keep the correct type when using lists of ranges
9817         * gst/gstvalue.c: (gst_value_list_prepend_value),
9818         (gst_value_list_append_value):
9819           copy the value before adding to the list (d'oh)
9820         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
9821         (gst_value_subtract_int_range_int_range):
9822           handle overflows correctly
9823         * gst/gstvalue.c: (gst_value_subtract_from_list):
9824           fix memleak
9825         * testsuite/caps/caps.h:
9826           add a caps that caused segfaults
9827
9828 2004-04-22  Benjamin Otte  <otte@gnome.org>
9829
9830         * testsuite/refcounting/pad.c: (main):
9831           fix test
9832
9833 2004-04-22  Benjamin Otte  <otte@gnome.org>
9834
9835         * gst/gstcaps.c: (gst_caps_subtract):
9836           allow subtracting ANY and EMPTY from ANY caps
9837
9838 2004-04-22  Benjamin Otte  <otte@gnome.org>
9839
9840         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
9841         (gst_caps_union):
9842           only simplify in functions that create new caps. Simplifying in
9843           gst_caps_append breaks tests.
9844
9845 2004-04-22  Benjamin Otte  <otte@gnome.org>
9846
9847         * gst/gstcaps.c: (gst_caps_structure_simplify):
9848           unset GValue after use
9849         * gst/gstcaps.c: (gst_caps_append), 
9850         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
9851           use gst_caps_simplify (reduces registry size by 30%)
9852         * gst/gstpad.c: (gst_pad_template_new):
9853           don't allow NULL caps
9854
9855 2004-04-22  Benjamin Otte  <otte@gnome.org>
9856
9857         * docs/gst/gstreamer-sections.txt:
9858           add gst_caps_do_simplify
9859         * gst/gstcaps.c:
9860           add documentation for gst_caps_do_simplify
9861         * gst/gstvalue.h:
9862           fix typo in gst_value_register_subtract_func declaration for gst-doc
9863
9864 2004-04-22  Benjamin Otte  <otte@gnome.org>
9865
9866         * gst/gstcaps.c: (gst_caps_from_string_inplace):
9867           fix bug when converting from empty string.
9868         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
9869         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
9870           use gst_caps_new_empty to allocate a new caps. Only that function
9871           allocates memory for caps now.
9872         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
9873         (gst_caps_remove_structure):
9874           add ability to remove one structure (but not to header yet)
9875         * gst/gstcaps.c: (gst_caps_compare_structures),
9876         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
9877         (gst_caps_structure_simplify), (gst_caps_do_simplify),
9878         * gst/gstcaps.h:
9879           add gst_caps_do_simplify that tries to simplify a caps in place.
9880           Deprecate old gst_caps_simplify function.
9881         * testsuite/caps/caps.h:
9882           add caps.h containing a common set of caps to test against.
9883         * testsuite/caps/sets.c: (check_caps), (main):
9884           use it.
9885         * testsuite/caps/.cvsignore:
9886         * testsuite/caps/Makefile.am:
9887         * testsuite/caps/simplify.c: (check_caps), (main):
9888           add test to check correctness and efficency of caps simplification.
9889
9890 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
9891
9892         reviewed by Benjamin Otte  <otte@gnome.org>
9893
9894         * gst/gstparse.c: (_gst_parse_escape):
9895           Free the GString used in _gst_parse_escape()
9896
9897 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9898
9899         * gst/gstpad.c: (gst_pad_link_negotiate):
9900           refuse to link if the link is not possible
9901         * configure.ac:
9902         * testsuite/Makefile.am:
9903         * testsuite/negotiation/.cvsignore:
9904         * testsuite/negotiation/Makefile.am:
9905         * testsuite/negotiation/pad_link.c: (main):
9906           add test that checks the above behaviour
9907
9908 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9909
9910         * docs/gst/gstreamer-sections.txt:
9911           add newly added API
9912
9913 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9914
9915         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9916         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
9917         (gst_filesrc_open_file), (gst_filesrc_close_file),
9918         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
9919         * gst/elements/gstfilesrc.h:
9920           add support for non-regular files (#140734)
9921
9922 2004-04-21  Benjamin Otte  <otte@gnome.org>
9923
9924         * gst/gstpad.c: (gst_pad_link_fixate):
9925           add sophisticated error checking code to see if fixation functions
9926           did their fixation right
9927
9928 2004-04-21  Benjamin Otte  <otte@gnome.org>
9929
9930         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
9931           check for ANY caps before appending/unioning
9932         * gst/gstcaps.c: (gst_caps_is_subset),
9933         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
9934         (gst_caps_structure_subtract), (gst_caps_subtract):
9935         * gst/gstcaps.h:
9936           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
9937           the API. deprecate gst_caps_is_equal_fixed
9938         * gst/gstpad.c: (gst_pad_try_set_caps):
9939         * gst/gstqueue.c: (gst_queue_link):
9940           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
9941         * gst/gststructure.c: (gst_structure_get_name_id):
9942         * gst/gststructure.h:
9943           add function gst_structure_get_name_id
9944         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
9945         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
9946         (gst_value_subtract_int_range_int_range),
9947         (gst_value_subtract_double_double_range),
9948         (gst_value_subtract_double_range_double),
9949         (gst_value_subtract_double_range_double_range),
9950         (gst_value_subtract_from_list), (gst_value_subtract_list),
9951         (gst_value_can_intersect), (gst_value_subtract),
9952         (gst_value_can_subtract), (gst_value_register_subtract_func),
9953         (_gst_value_initialize):
9954         * gst/gstvalue.h:
9955           add support for subtracting values from each other. Note that
9956           subtracting means subtracting as in set theory. Required for caps
9957           stuff above.
9958         * testsuite/caps/.cvsignore:
9959         * testsuite/caps/Makefile.am:
9960         * testsuite/caps/erathostenes.c: (erathostenes), (main):
9961         * testsuite/caps/sets.c: (check_caps), (main):
9962         * testsuite/caps/subtract.c: (check_caps), (main):
9963           add tests for subtraction and equality code.
9964
9965 2004-04-20  David Schleef  <ds@schleef.org>
9966
9967         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
9968         * gst/indexers/Makefile.am:
9969         * gst/schedulers/Makefile.am:
9970         * libs/gst/bytestream/Makefile.am:
9971         * libs/gst/control/Makefile.am:
9972         * libs/gst/getbits/Makefile.am:
9973
9974 2004-04-20  David Schleef  <ds@schleef.org>
9975
9976         * common/as-libtool.mak: Fine-tune DLL building.
9977         * configure.ac: Link plugins against libgstreamer.  Define plugindir
9978         (like gst-plugins)
9979         * examples/plugins/Makefile.am: remove plugindir
9980         * gst/autoplug/Makefile.am: DLL building fixes
9981         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
9982         Windows.
9983         * gst/elements/gstelements.c: Conditionally disable pipefilter.
9984         * gst/indexers/Makefile.am: DLL building fixes
9985         * gst/schedulers/Makefile.am: DLL building fixes.
9986         * libs/gst/bytestream/Makefile.am: DLL building fixes.
9987         * libs/gst/control/Makefile.am: same
9988         * libs/gst/getbits/Makefile.am: same
9989         * testsuite/Makefile.am: New dlopen directory
9990         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
9991         when dlopened.
9992         * testsuite/dlopen/dlopen_gst.c: (main): same
9993         * testsuite/dlopen/loadgst.c: (do_test): same
9994
9995 2004-04-20  David Schleef  <ds@schleef.org>
9996
9997         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
9998         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
9999
10000 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10001
10002         * gst/gstelement.c: (gst_element_wait),
10003         (gst_element_set_time_delay), (gst_element_change_state):
10004           Use GST_TIME_*
10005
10006 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10007
10008         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
10009         (gst_spider_identity_plug):
10010           improve debugging messages
10011         * gst/gstbin.c: (gst_bin_remove_func):
10012           make sure the state_change function is only called with simple state
10013           transitions
10014
10015 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10016
10017         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
10018         (gst_fakesink_set_property), (gst_fakesink_chain):
10019         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
10020         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
10021         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
10022         * gst/elements/gstidentity.c: (gst_identity_chain),
10023         (gst_identity_set_property):
10024         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
10025         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
10026           add warnings to _set_property for unknown arguments
10027           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
10028
10029 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10030
10031         * Makefile.am:
10032         * docs/manuals.mak:
10033           add .po file download snippet
10034           fix a bug in the doc makefile
10035
10036 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10037
10038         * Makefile.am:
10039         * po/LINGUAS:
10040         * po/en_GB.po:
10041           Added en_GB translation (Gareth Owen)
10042
10043 2004-04-20  Johan Dahlin  <johan@gnome.org>
10044
10045         * gst/gstpad.c (_invent_event): Clean up
10046
10047 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10048
10049         * testsuite/caps/filtercaps.c: (main):
10050           fix test to test things correctly (caps are complicated)
10051
10052 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10053
10054         * testsuite/caps/Makefile.am:
10055         * testsuite/caps/filtercaps.c: (main):
10056           add test (that doesn't work right now, but should)
10057
10058 2004-04-19  David Schleef  <ds@schleef.org>
10059
10060         * configure.ac: Add test for allowing unaligned access.  Add define
10061         to put in gstconfig.h.
10062         * docs/gst/gstreamer-sections.txt: New symbols
10063         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
10064         * docs/gst/tmpl/gstfilesrc.sgml:
10065         * docs/gst/tmpl/gstparse.sgml:
10066         * docs/gst/tmpl/gsttypes.sgml:
10067         * docs/gst/tmpl/gstutils.sgml:
10068         * docs/gst/tmpl/gstvalue.sgml:
10069         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
10070         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
10071         on most !i386/!powerpc architectures.  From Daniel Gazard
10072         <daniel.gazard@free.fr>.  (bug #140156)
10073         * po/af.po: Check in changes made by gettext.
10074         * po/az.po:
10075         * po/fr.po:
10076         * po/nl.po:
10077         * po/sr.po:
10078         * po/sv.po:
10079
10080 2004-04-20  Benjamin Otte  <otte@gnome.org>
10081
10082         * gst/schedulers/entryscheduler.c: 
10083         (gst_entry_scheduler_yield):
10084           refuse to yield when decoupled elements insist on doing that.
10085           At least it's better than crashing
10086
10087 2004-04-19  David Schleef  <ds@schleef.org>
10088
10089         * docs/libs/Makefile.am: Change sinclude to include
10090         * docs/gst/Makefile.am: same
10091         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
10092
10093 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10094
10095         * po/LINGUAS:
10096         * po/uk.po:
10097           Added Ukrainian translation (Maxim V. Dziumanenko)
10098
10099 2004-04-19  Johan Dahlin  <johan@gnome.org>
10100
10101         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
10102         checking here, do it before calling the function.
10103         Clean up, use for loops instead of while loops while iterating
10104         over lists.
10105
10106         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
10107         in debug message.
10108         (gst_spider_create_and_plug): Improve debug message.
10109         General: Replace while loops which iterates over GLists with for
10110         loops. Which are much cleaner, improves readability, especially
10111         for gst_spider_identity_plug
10112
10113         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
10114         fixes bug 140477
10115
10116 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10117
10118         * po/LINGUAS:
10119         * po/tr.po:
10120           Added Turkish translation (Baris Cicek)
10121
10122 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10123
10124         * docs/faq/troubleshooting.xml:
10125           Mention gst-register in the FAQ (fixes 139045).
10126
10127 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10128
10129         * docs/gst/gstreamer-sections.txt:
10130
10131 2004-04-17  Benjamin Otte  <otte@gnome.org>
10132
10133         * gst/gstelement.c: (gst_element_dispose):
10134           simplify
10135         * gst/gstpad.c: (gst_pad_call_chain_function):
10136           don't create loads of events due to bad macro usage
10137
10138 2004-04-16  David Schleef  <ds@schleef.org>
10139
10140         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
10141         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
10142         * gst/gstvalue.c: (gst_value_serialize_buffer),
10143         (gst_value_deserialize_buffer), (gst_type_is_fixed),
10144         (_gst_value_initialize): Create a new function gst_type_is_fixed()
10145         to indicate types that are fixed wrt caps or not.  Switching to
10146         this function fixes (bug #140298).
10147         * gst/gstvalue.h:
10148
10149 2004-04-16  David Schleef  <ds@schleef.org>
10150
10151         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
10152         for GST_UNALIGNED_ACESS, since we essentially know which archs
10153         are ok.
10154
10155 2004-04-17  Benjamin Otte  <otte@gnome.org>
10156
10157         * docs/gst/Makefile.am:
10158           ignore gst/parse directory when building docs (fixes #140205)
10159
10160 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10161
10162         * testsuite/refcounting/mem.c: (vmsize):
10163           do error checking
10164
10165 2004-04-16  Johan Dahlin  <johan@gnome.org>
10166
10167         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
10168         and gst_pad_call_get_function.
10169
10170 2004-04-15  David Schleef  <ds@schleef.org>
10171
10172         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
10173         checks if we can access unaligned memory.
10174         * configure.ac: Use it.
10175
10176 2004-04-16  Benjamin Otte  <otte@gnome.org>
10177
10178         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
10179         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
10180         * gst/elements/gstfilesrc.h:
10181           s/seek_happened/need_discont/ and require discont before sending any
10182           data
10183
10184 2004-04-15  David Schleef  <ds@schleef.org>
10185
10186         * gst/gstvalue.c: (gst_value_serialize_buffer),
10187         (gst_value_deserialize_buffer), (_gst_value_initialize):
10188         Register these types as fundamental types. (bug #140015)
10189
10190 2004-04-16  Benjamin Otte  <otte@gnome.org>
10191
10192         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
10193         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
10194         (gst_pad_pull):
10195           implement enforcing discont events before buffers are passed. This
10196           allows state changes of only some elements and later correctly going
10197           on where they left off (or in short: you can now set audio sinks to
10198           NULL to release the device when the pipeline is paused)
10199         * gst/gstpad.c: (gst_pad_call_chain_function),
10200         (gst_pad_call_get_function):
10201         * gst/gstpad.h:
10202           add gst_pad_call_chain_function and gst_pad_call_get_function for
10203           scheduler interaction. They are required because of the changes
10204           above.
10205         * gst/schedulers/entryscheduler.c: (get_buffer),
10206         (gst_entry_scheduler_chain_wrapper),
10207         (gst_entry_scheduler_get_wrapper),
10208         (gst_entry_scheduler_state_transition),
10209         (gst_entry_scheduler_pad_link):
10210         * gst/schedulers/gstbasicscheduler.c:
10211         (gst_basic_scheduler_chain_wrapper),
10212         (gst_basic_scheduler_src_wrapper),
10213         (gst_basic_scheduler_chainhandler_proxy),
10214         (gst_basic_scheduler_gethandler_proxy),
10215         (gst_basic_scheduler_cothreaded_chain),
10216         (gst_basic_scheduler_chain_elements):
10217         * gst/schedulers/gstoptimalscheduler.c:
10218         (get_group_schedule_function), (pad_clear_queued),
10219         (gst_opt_scheduler_pad_link):
10220           use the new functions instead of calling get/chain-functions
10221           directly.
10222
10223 2004-04-15  David Schleef  <ds@schleef.org>
10224
10225         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
10226         * docs/gst/tmpl/gstinfo.sgml: same
10227         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
10228         gtk-doc put here.
10229         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
10230         * examples/queue/queue.c: (main):  We iterate pipelines, not
10231         bins.  (bug #139996)
10232
10233 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10234
10235         * docs/pwg/advanced-types.xml:
10236           Add MS RLE support. Also document Qt RLE although I have no sample
10237           files for that yet. And document an extra property for ADPCM.
10238
10239 2004-04-15  David Schleef  <ds@schleef.org>
10240
10241         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
10242         (_gst_plugin_fault_handler_setup):  Disable more stuff on
10243         Windows.
10244
10245 2004-04-15  David Schleef  <ds@schleef.org>
10246
10247         * gst/gstinfo.c: (_gst_debug_init): Change some internal
10248         symbol names to not conflict with new gstinfo.h symbols.
10249         * gst/gstinfo.h: Add inline functions for all those crazy
10250         compilers that don't know how to handle variadic macros (MSVC).
10251
10252 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10253
10254         * configure.ac: bump nano to 1
10255
10256 === release 0.8.1 ===
10257
10258 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10259
10260         * NEWS:
10261         * RELEASE:
10262         * configure.ac:
10263           releasing 0.8.1, "Snow Brigade"
10264
10265 2004-04-14  David Schleef  <ds@schleef.org>
10266
10267         * testsuite/Makefile.am: define tests_ignore
10268         * testsuite/Rules: Added new tests_ignore, which get compiled,
10269         but not run (generally because they're inconsistent or have
10270         heisenbugs).  Now we can ensure all the .c files compile in
10271         testsuite/.
10272         * testsuite/bins/Makefile.am: define tests_ignore
10273         * testsuite/bytestream/Makefile.am:
10274         * testsuite/caps/Makefile.am:
10275         * testsuite/clock/Makefile.am:
10276         * testsuite/debug/Makefile.am:
10277         * testsuite/debug/global.c: (gst_debug_log_one),
10278         (gst_debug_log_two): Fix compilation problem.
10279         * testsuite/dynparams/Makefile.am:
10280         * testsuite/elements/Makefile.am:
10281         * testsuite/ghostpads/Makefile.am:
10282         * testsuite/indexers/Makefile.am:
10283         * testsuite/parse/Makefile.am:
10284         * testsuite/plugin/Makefile.am:
10285         * testsuite/refcounting/Makefile.am:
10286         * testsuite/refcounting/element_pad.c: (main): Don't return leak
10287         results, because it's not calculated correctly.
10288         * testsuite/refcounting/pad.c: (main): same
10289         * testsuite/states/Makefile.am:
10290         * testsuite/tags/Makefile.am:
10291         * testsuite/threads/Makefile.am:
10292
10293 2004-04-14  David Schleef  <ds@schleef.org>
10294
10295         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
10296         generating bad code around the cpu detection asm code.
10297
10298 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10299
10300         * tools/gst-inspect.c: (print_element_info):
10301           print numeric version of rank as well, since we added some - 1
10302           rank values to elements
10303
10304 2004-04-13  David Schleef  <ds@schleef.org>
10305
10306         * configure.ac:  Disable various code when compiling for MinGW.
10307         * gst/elements/Makefile.am:
10308         * gst/elements/gstelements.c:
10309         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10310         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
10311         * gst/registries/gstxmlregistry.c: (make_dir):
10312
10313 2004-04-13  David Schleef  <ds@schleef.org>
10314
10315         * gst/Makefile.am:
10316         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
10317         assembly.
10318         * gst/gstcpuid_i386.s: remove
10319
10320 2004-04-13  David Schleef  <ds@schleef.org>
10321
10322         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
10323         seems to think it needs to be done.
10324         * docs/gst/tmpl/gstfakesink.sgml:
10325         * docs/gst/tmpl/gstfakesrc.sgml:
10326         * docs/gst/tmpl/gstfdsink.sgml:
10327         * docs/gst/tmpl/gstfdsrc.sgml:
10328         * docs/gst/tmpl/gstfilesink.sgml:
10329         * docs/gst/tmpl/gstfilesrc.sgml:
10330         * docs/gst/tmpl/gstidentity.sgml:
10331         * docs/gst/tmpl/gstmd5sink.sgml:
10332         * docs/gst/tmpl/gstmultifilesrc.sgml:
10333         * docs/gst/tmpl/gstpipefilter.sgml:
10334         * docs/gst/tmpl/gstshaper.sgml:
10335         * docs/gst/tmpl/gstspider.sgml:
10336         * docs/gst/tmpl/gstspideridentity.sgml:
10337         * docs/gst/tmpl/gststatistics.sgml:
10338         * docs/gst/tmpl/gsttee.sgml:
10339         * docs/gst/tmpl/gsttypefind.sgml:
10340         * docs/gst/tmpl/gstutils.sgml:
10341
10342 2004-04-13  David Schleef  <ds@schleef.org>
10343
10344         * configure.ac: Changes to remove POSIXisms (mmap in this case)
10345         and to build DLLs on Windows.
10346         * gst/Makefile.am:
10347         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
10348         (gst_filesrc_open_file):
10349         * gst/schedulers/Makefile.am:
10350
10351 2004-04-13  David Schleef  <ds@schleef.org>
10352
10353         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
10354         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
10355         fixating lists.
10356
10357 2004-04-12  David Schleef  <ds@schleef.org>
10358
10359         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
10360         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
10361         to using it.
10362         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
10363         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
10364         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
10365         * gst/gststructure.c: (gst_structure_set_valist),
10366         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
10367         support for buffers.
10368         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
10369         intended to be const.
10370         * gst/gsttag.h: same
10371         * gst/gstvalue.c: (gst_value_serialize_buffer),
10372         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
10373         to (de)serialize buffers.
10374         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
10375         * testsuite/caps/string-conversions.c: (main):
10376         * testsuite/caps/value_serialize.c: add new test
10377
10378 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10379
10380         * docs/pwg/advanced-types.xml:
10381           Document MS video 1 (video/x-msvideocodec) mimetype/format.
10382
10383 2004-04-11  Benjamin Otte  <otte@gnome.org>
10384
10385         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
10386           rename categories to basic_*
10387         * gst/schedulers/gstbasicscheduler.c: 
10388         (gst_basic_scheduler_chain_wrapper),
10389         (gst_basic_scheduler_chainhandler_proxy),
10390         (gst_basic_scheduler_gethandler_proxy),
10391         (gst_basic_scheduler_eventhandler_proxy):
10392           debugging category fixes - put common stuff in log category
10393         * gst/schedulers/gstbasicscheduler.c: 
10394         (gst_basic_scheduler_chain_elements):
10395           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
10396           active and linking two active chains
10397
10398 2004-04-10  Benjamin Otte  <otte@gnome.org>
10399
10400         * docs/pwg/intro-preface.xml:
10401           fix dead links and remove reference to Wiki
10402
10403 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10404
10405         * gst/schedulers/gstbasicscheduler.c:
10406           make sure we can switch back to the main function if we're still in
10407           the main function (supposed to fix #139617)
10408         * gst/schedulers/gthread-cothreads.h:
10409           don't throw an error when switching to the same cothread
10410
10411 2004-04-09  Benjamin Otte  <otte@gnome.org>
10412
10413         * gst/gstbin.c: (gst_bin_get_type):
10414         * gst/gstclock.c: (gst_clock_get_type):
10415         * gst/gstindex.c: (gst_index_get_type):
10416         * gst/gstobject.c: (gst_object_get_type),
10417         (gst_signal_object_get_type):
10418         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
10419         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
10420         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
10421         * gst/gstqueue.c: (gst_queue_get_type):
10422         * gst/gstregistry.c: (gst_registry_get_type):
10423         * gst/gstsystemclock.c: (gst_system_clock_get_type):
10424         * gst/gstthread.c: (gst_thread_get_type):
10425           don't use memchunks for these objects, use malloc instead
10426
10427 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10428
10429         * docs/gst/.cvsignore:
10430         * docs/gst/Makefile.am:
10431         * docs/gst/gstreamer-sections.txt:
10432         * docs/gst/tmpl/gstaggregator.sgml:
10433         * docs/gst/tmpl/gstbuffer.sgml:
10434         * docs/gst/tmpl/gstclock.sgml:
10435         * docs/gst/tmpl/gstelement.sgml:
10436         * docs/gst/tmpl/gstfakesink.sgml:
10437         * docs/gst/tmpl/gstfakesrc.sgml:
10438         * docs/gst/tmpl/gstfdsink.sgml:
10439         * docs/gst/tmpl/gstfdsrc.sgml:
10440         * docs/gst/tmpl/gstfilesink.sgml:
10441         * docs/gst/tmpl/gstfilesrc.sgml:
10442         * docs/gst/tmpl/gstidentity.sgml:
10443         * docs/gst/tmpl/gstindex.sgml:
10444         * docs/gst/tmpl/gstinfo.sgml:
10445         * docs/gst/tmpl/gstmd5sink.sgml:
10446         * docs/gst/tmpl/gstmultifilesrc.sgml:
10447         * docs/gst/tmpl/gstpad.sgml:
10448         * docs/gst/tmpl/gstpipefilter.sgml:
10449         * docs/gst/tmpl/gstpipeline.sgml:
10450         * docs/gst/tmpl/gstpluginfeature.sgml:
10451         * docs/gst/tmpl/gstqueue.sgml:
10452         * docs/gst/tmpl/gstregistry.sgml:
10453         * docs/gst/tmpl/gstscheduler.sgml:
10454         * docs/gst/tmpl/gstshaper.sgml:
10455         * docs/gst/tmpl/gstspider.sgml:
10456         * docs/gst/tmpl/gstspideridentity.sgml:
10457         * docs/gst/tmpl/gststatistics.sgml:
10458         * docs/gst/tmpl/gstsystemclock.sgml:
10459         * docs/gst/tmpl/gsttee.sgml:
10460         * docs/gst/tmpl/gstthread.sgml:
10461         * docs/gst/tmpl/gsttypefind.sgml:
10462         * docs/gst/tmpl/gstutils.sgml:
10463           further doc build fixes
10464
10465 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10466
10467         * docs/gst/Makefile.am:
10468           make docs exit on scanning problems
10469           fix nonsrcdir build issues
10470         * docs/gst/gstreamer-sections.txt:
10471           adding stuff from -unused
10472         * gst/gstqueue.h:
10473           create GstQueueSize
10474         * gst/schedulers/cothreads_compat.h:
10475           fix cothread warnings
10476
10477 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10478
10479         * docs/gst/gstreamer-sections.txt:
10480           remove defines deprecated by Benjamin
10481
10482 2004-04-07  Benjamin Otte  <otte@gnome.org>
10483
10484         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10485           when the buffer is complete, don't check if other buffers are needed
10486         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
10487           check that the offset is >0 so we don't try to read before the
10488           beginning of the file
10489         * gst/gstpad.c: (gst_pad_set_pad_template):
10490           sink the template, so we don't end up with 130k pad templates
10491
10492 2004-04-06  Benjamin Otte  <otte@gnome.org>
10493
10494         * gst/autoplug/gstspider.c: (gst_spider_link_add):
10495           don't ref the element, adding already reffed it. And we didn't unref
10496           it later anyway... (huge memleak when you used many spider elements)
10497         * gst/gstelement.c: (gst_element_base_class_finalize):
10498         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
10499         (gst_element_register):
10500         * gst/gsturi.c: (gst_element_make_from_uri):
10501           use gst_object_(un)ref instead of g_object(un)ref
10502
10503 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10504
10505         * gst/gstbuffer.h:
10506           remove macro that wouldn't work anymore because struct member has
10507           been removed.
10508         * gst/schedulers/entryscheduler.c: (schedule_forward):
10509           fix segfault for unconnected pads
10510         
10511 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10512
10513         reviewed by David Schleef <ds@schleef.org>
10514
10515         * gst/gstinfo.h:
10516           *_FORMAT modifiers should require putting a % in front of them for
10517           consistency reasons.
10518
10519 2004-04-05  Colin Walters  <walters@redhat.com>
10520
10521         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
10522         space.
10523
10524 2004-04-05  Benjamin Otte  <otte@gnome.org>
10525
10526         * configure.ac:
10527         * gst/Makefile.am:
10528         * gst/gst_private.h:
10529         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
10530           add support for detecting if GStreamer runs inside valgrind.
10531           requires valgrind (d'oh) and --enable-debug for correct cdetection.
10532           print a big message in valgrind that GStreamer has detected it's
10533           running inside and might now use different code.
10534         * gst/gstmemchunk.c: (populate), (free_area),
10535         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
10536         (gst_mem_chunk_free):
10537           flag memchunks for valgrind, so it can detect leaking of chunks.
10538           This allows detecting leaks of GstBuffer and GstEvent correctly
10539           inside valgrind.
10540
10541 2004-04-05  David Schleef  <ds@schleef.org>
10542
10543         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
10544           jensgr@gmx.net (Jens Granseuer)
10545
10546 2004-04-05  David Schleef  <ds@schleef.org>
10547
10548         * gst/gstbuffer.c: (_gst_buffer_sub_free),
10549         (gst_buffer_default_free), (gst_buffer_default_copy),
10550         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
10551         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
10552         structures in one place.
10553
10554 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10555
10556         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
10557           (GST_TIME_FORMAT, GST_TIME_ARGS)
10558
10559 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10560
10561         * testsuite/elements/Makefile.am:
10562           disable test until it stops breaking make distcheck
10563
10564 2004-04-05  Johan Dahlin  <johan@gnome.org>
10565
10566         * po/sv.po: Updated translation
10567
10568 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10569
10570         * gst/gstplugin.c: (gst_plugin_load_file):
10571           fix segfault for when original plugin was loaded statically
10572
10573 2004-04-05  Benjamin Otte  <otte@gnome.org>
10574
10575         * testsuite/debug/category.c: (main):
10576         * testsuite/debug/commandline.c: (main):
10577         * testsuite/debug/output.c: (main):
10578           fix tests to work again with debugging enabled
10579
10580 2004-04-05  Benjamin Otte  <otte@gnome.org>
10581
10582         * gst/schedulers/gstbasicscheduler.c:
10583         (gst_basic_scheduler_pad_link):
10584           fix to work with recent scheduling changes
10585
10586 2004-04-05  Benjamin Otte  <otte@gnome.org>
10587
10588         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
10589         prepareChangeLog doesn't work when cvs indents):
10590           don't throw an error when no element can be scheduled, there's too
10591           many weird reasons why it doesn't work. Return STOPPED instead.
10592           decoupled elemts' schedulability doesn't depend on bufpens.
10593
10594 2004-04-04  Benjamin Otte  <otte@gnome.org>
10595
10596         * gst/schedulers/gstbasicscheduler.c:
10597         (gst_basic_scheduler_pad_select):
10598           fix uninitialized variable warnings
10599
10600 2004-04-04  Benjamin Otte  <otte@gnome.org>
10601
10602         * gst/gstpad.c: (gst_pad_collect_valist):
10603           fix uninitialized variable warning
10604         * gst/schedulers/entryscheduler.c: (schedule_forward):
10605           fix shadowed variable
10606
10607 2004-04-04  Benjamin Otte  <otte@gnome.org>
10608
10609         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
10610         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
10611         (gst_pad_select):
10612         * gst/gstpad.h:
10613         * gst/gstscheduler.c: (gst_scheduler_pad_select),
10614         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
10615         * gst/gstscheduler.h:
10616           implement gst_pad_collect as replacement for gst_pad_select.
10617           deprecate gst_pad_select and gst_scheduler_(un)lock_element
10618           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
10619           new pad_select, lock and unlock calls.
10620         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
10621         * gst/cothreads.h:
10622         * gst/schedulers/cothreads_compat.h:
10623         * gst/schedulers/gthread-cothreads.h:
10624           remove unused cothread_lock and cothread_unlock calls
10625         * gst/schedulers/entryscheduler.c:
10626         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
10627         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
10628         (gst_entry_scheduler_pad_select):
10629           update to new API
10630         * gst/schedulers/gstbasicscheduler.c:
10631         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
10632         (gst_basic_scheduler_pad_select):
10633           remove useless lock and unlock calls, update pad_select to new API
10634           (untested)
10635         * gst/schedulers/gstoptimalscheduler.c:
10636         (gst_opt_scheduler_class_init):
10637           remove useless select, lock and unlock function calls
10638         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
10639           use gst_pad_collect instead of gst_pad_select
10640
10641 2004-04-04  Benjamin Otte  <otte@gnome.org>
10642
10643         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
10644         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
10645         (schedule_next_element), (print_entry):
10646           add can_schedule_pad to handle element states.
10647           add schedule_forward to select the correct entry to schedule next
10648
10649 2004-04-03  Benjamin Otte  <otte@gnome.org>
10650
10651         * gst/schedulers/entryscheduler.c: 
10652           remove unused variable, fix error inside Rb, fix compile warning in
10653           unreachable code
10654
10655 2004-04-03  Benjamin Otte  <otte@gnome.org>
10656
10657         * gst/schedulers/entryscheduler.c:
10658           completely revamp the inner workings, so it's a lot easier to
10659           understand and extend
10660
10661 2004-04-03  Andy Wingo  <wingo@pobox.com>
10662
10663         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
10664         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
10665         This allows better introspection of pipeline topology.
10666         (add_to_chain): Don't do trickery to put loop elements first;
10667         rather, queue a chain sort by marking the chain as dirty.
10668         (remove_from_chain): Mark the chain dirty.
10669         (sort_chain): New function. Sorts the group list so that terminal
10670         sinks are first. This means elements on the sink side will be
10671         preferentially sscheduled before elements on the src side of the
10672         pipeline.
10673         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
10674         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
10675         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
10676         (group_inc_link): Change argument and variable names to match the
10677         new link structure member names (src and sink).
10678         (group_dec_link): Add some description
10679
10680 2004-04-03  Benjamin Otte  <otte@gnome.org>
10681
10682         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
10683         * gst/gstinfo.h:
10684         * testsuite/debug/category.c: (main):
10685         * testsuite/debug/commandline.c: (main):
10686         * testsuite/debug/output.c: (main):
10687         * testsuite/debug/printf_extension.c: (main):
10688           fix to successfully build and test with --disable-gst-debug
10689           configure switch (fixes #138705)
10690
10691 2004-04-03  Benjamin Otte  <otte@gnome.org>
10692
10693         * docs/pwg/building-boiler.xml:
10694           add cvs login line and s/anonymous/anoncvs/
10695
10696 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
10697
10698         reviewed by Benjamin Otte  <otte@gnome.org>
10699
10700         * gst/gststructure.c: (gst_structure_free):
10701           memleak fix: free fields array (partial fix for #134839)
10702
10703 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10704
10705         * docs/random/ds/0.9-suggested-changes:
10706           Add a note to change handoff use in fakesrc to be usable in
10707           a more generic way (fakesrc should be renamed to appsrc or so).
10708         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
10709           Change signal type to scope, so we can fill the buffer in the
10710           handoff handler (that's the whole use of this signal...).
10711
10712 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10713
10714         * docs/pwg/other-ntoone.xml:
10715           Document muxers and n-to-1 elements.
10716
10717 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
10718
10719         * gst/registries/gstxmlregistry.c
10720         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
10721         determine if a file is a G_MODULE. The old one discards paths
10722         containing "so" somewhere in the middle. My home directory is
10723         called "soto". Go figure...
10724
10725 2004-03-31  David Schleef  <ds@schleef.org>
10726
10727         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
10728         to eventually deprecate gst_buffer_merge().  (bug: #136408)
10729         * gst/gstbuffer.h:
10730
10731 2004-03-31  David Schleef  <ds@schleef.org>
10732
10733         * gst/gstvalue.c: (gst_value_union_int_int_range),
10734         (gst_value_union_int_range_int_range), (gst_value_can_union),
10735         (gst_value_union), (_gst_value_initialize):  Add some union
10736         implementations.  We didn't have any previously.
10737         * testsuite/caps/Makefile.am:
10738         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
10739         (gst_audioscale_getcaps), (test_caps), (main): A little test
10740         that is the same as the caps manipulation in audioscale.
10741
10742 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10743
10744         * docs/faq/general.xml:
10745           add entry about "does gst support format X?"
10746
10747 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10748
10749         * gst/gstthread.c:
10750           fix docs
10751         * gst/gstutils.h:
10752           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
10753
10754 2004-03-30  Benjamin Otte  <otte@gnome.org>
10755
10756         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10757           set the offset of the buffer to the requested offset
10758         * gst/elements/gsttypefind.c: (stop_typefinding):
10759           revert patch 1.18 (which I unfortunately don't know the reason for).
10760           This is needed to allow downstream elements to seek. Otherwise
10761           typefind might overwrite a previous seek by downstream elements.
10762           This lead to errors with id3tag and typefind on some mp3s.
10763         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10764         (gst_entry_scheduler_iterate):
10765           be more verbose when debugging
10766
10767 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10768
10769         * gst/gstcaps.c: (gst_caps_from_string_inplace):
10770           make sure we don't get NULL strings
10771
10772 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10773
10774         * gst/gstcaps.c:
10775         * gst/gstelement.c:
10776         * gst/gstelementfactory.c: (gst_element_factory_get_type):
10777         * gst/gstindex.c: (gst_index_resolver_get_type),
10778         (gst_index_get_type), (gst_index_factory_get_type):
10779         * gst/gstinfo.c:
10780         * gst/gstpad.c:
10781         * gst/gstplugin.c:
10782         * gst/gsturi.c: (gst_uri_handler_get_type):
10783         * gst/gstvalue.c:
10784           first batch of documentation fixes
10785
10786 2004-03-29  David Schleef  <ds@schleef.org>
10787
10788         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
10789         * docs/gst/gstreamer-docs.sgml:  More hacking
10790         * docs/gst/gstreamer-sections.txt:
10791         * docs/gst/tmpl/cothreads_compat.sgml:
10792         * docs/gst/tmpl/gstcaps.sgml:
10793         * docs/gst/tmpl/gstclock.sgml:
10794         * docs/gst/tmpl/gstelement.sgml:
10795         * docs/gst/tmpl/gstevent.sgml:
10796         * docs/gst/tmpl/gstpad.sgml:
10797         * docs/gst/tmpl/gstutils.sgml:
10798         * docs/gst/tmpl/gstxml.sgml:
10799         * docs/gst/tmpl/gthread-cothreads.sgml:
10800         * docs/random/ds/0.9-suggested-changes:
10801         * gst/elements/gstfakesink.h: doc fixes
10802         * gst/elements/gstfakesrc.h: doc fixes
10803         * gst/gstcaps.c: doc fixes
10804         * gst/gstcaps.h: doc fixes
10805         * gst/gstelement.c: doc fixes
10806         * gst/gstelement.h: doc fixes
10807         * gst/gstindex.c: doc fixes
10808         * gst/gstinfo.c: doc fixes
10809         * gst/gstpad.c: doc fixes
10810         * gst/gstpad.h: doc fixes
10811         * gst/gstplugin.c: doc fixes
10812         * gst/gsttypefind.h: doc fixes
10813         * gst/gsturi.c: doc fixes
10814         * gst/gstvalue.c: doc fixes
10815
10816 2004-03-29  Colin Walters  <walters@redhat.com>
10817
10818         * gst/registries/gstxmlregistry.c (get_time)
10819         (plugin_times_older_than_recurse):
10820         Use the result of stat to determine whether a path is a file,
10821         so we don't attempt to opendir() files.
10822
10823 2004-03-29  Benjamin Otte  <otte@gnome.org>
10824
10825         * gst/gstpad.c: (gst_pad_set_explicit_caps):
10826           print caps in debugging output when setting caps failed
10827         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10828         (schedule_next_element), (get_buffer), (run_chainhandler),
10829         (element_may_start), (gst_entry_scheduler_chain_handler),
10830         (gst_entry_scheduler_get_handler),
10831         (gst_entry_scheduler_state_transition),
10832         (gst_entry_scheduler_pad_link):
10833           make this scheduler a testcase for mandatory
10834           discont-before-first-buffer which is needed if we want to allow apps
10835           to release the sound device.
10836           add SCHED_ASSERT macro to print scheduler state before an assertion
10837           triggers.
10838
10839 2004-03-29  Benjamin Otte  <otte@gnome.org>
10840
10841         * COPYING:
10842           replace by LGPL (former COPYING.LIB). The core is completely
10843           licensed LGPL.
10844         * COPYING.LIB:
10845           remove
10846
10847 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10848
10849         * po/af.po:
10850         * po/sv.po:
10851           updated Afrikaans and Swedish
10852
10853 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10854
10855         * po/LINGUAS:
10856         * po/az.po:
10857           adding Azerbaijani (Mətin Əmirov)
10858
10859 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
10860
10861         * gst/gstelement.h: 
10862         * gst/gstelement.c (gst_element_set_time_delay): New function for
10863         setting element time taking into account a hardware buffering
10864         delay.
10865         (gst_element_set_time): Now just an invocation of
10866         gst_element_set_time_delay.
10867         * gst/gstclock.h: 
10868         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
10869         allowing to set event times in the future.
10870         (gst_clock_get_event_time): Now just an invocation of
10871         gst_clock_get_event_time_delay.
10872
10873 2004-03-28  Benjamin Otte  <otte@gnome.org>
10874
10875         * gst/gstbin.c: (gst_bin_set_element_sched),
10876         (gst_bin_unset_element_sched):
10877           don't add decoupled elements to schedulers - otherwise it's
10878           impossible to control if a link to a decoupled element was already
10879           removed from a scheduler or not.
10880         * gst/schedulers/cothreads_compat.h:
10881         * gst/schedulers/gthread-cothreads.h:
10882           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
10883           is no "unused" warning.
10884         * gst/schedulers/Makefile.am:
10885         * gst/schedulers/entryscheduler.c:
10886           add new scheduler, based on ideas from talking to David and Martin.
10887           It's supposed to be small and correct. Currently it's also slow (but
10888           it's not noticable)
10889         * examples/retag/retag.c: (main):
10890         * testsuite/bytestream/test1.c: (main):
10891           fix missing NULLs at end of variadic functions
10892         * testsuite/elements/.cvsignore:
10893           update
10894
10895 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
10896
10897         * gst/gstevent.h:
10898         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
10899
10900 2004-03-25  David Schleef  <ds@schleef.org>
10901
10902         * docs/gst/gstreamer-sections.txt:  More doc hacking.
10903         * docs/gst/tmpl/gstaggregator.sgml:
10904         * docs/gst/tmpl/gstautoplugfactory.sgml:
10905         * docs/gst/tmpl/gstbin.sgml:
10906         * docs/gst/tmpl/gstbuffer.sgml:
10907         * docs/gst/tmpl/gstbufferstore.sgml:
10908         * docs/gst/tmpl/gstfakesink.sgml:
10909         * docs/gst/tmpl/gstfakesrc.sgml:
10910         * docs/gst/tmpl/gstmd5sink.sgml:
10911         * docs/gst/tmpl/gstreamer-unused.sgml:
10912         * docs/gst/tmpl/gstsearchfuncs.sgml:
10913         * docs/gst/tmpl/gstshaper.sgml:
10914         * docs/gst/tmpl/gstspider.sgml:
10915         * docs/gst/tmpl/gsttee.sgml:
10916         * docs/gst/tmpl/gstutils.sgml:
10917         * docs/gst/tmpl/gstvalue.sgml:
10918         * docs/gst/tmpl/gstxml.sgml:
10919         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
10920         and we don't support it.
10921         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
10922         (gst_use_threads), (gst_has_threads): same
10923         * gst/gstthreaddummy.c: same
10924         * gst/autoplug/gstspider.c: Make gst_spider_details static.
10925         * gst/autoplug/gstspider.h: same
10926         * gst/elements/gstaggregator.h: Remove bogus function from header
10927         * gst/elements/gstfakesink.h: same
10928         * gst/elements/gstfakesrc.h: same
10929         * gst/elements/gstmd5sink.h: same
10930         * gst/elements/gstshaper.h: same
10931         * gst/elements/gsttee.h: same
10932         * gst/gstbin.c: doc fixes
10933         * gst/gstbin.h: Remove unused definition.
10934         * gst/gstbuffer.c: doc fixes
10935         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
10936         * gst/gstfilter.c: doc fixes
10937         * gst/gsttag.c: doc fixes
10938         * gst/gstvalue.c: doc fixes
10939
10940 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10941
10942         * docs/pwg/advanced-types.xml:
10943           Document typefinding.
10944         * docs/pwg/other-oneton.xml:
10945           Document one-to-n elements, demuxers and parsers.
10946
10947 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
10948
10949         reviewed by: David Schleef  <ds@schleef.org>
10950
10951         * configure.ac: Check bison version (bug #127838)
10952
10953 2004-03-25  David Schleef  <ds@schleef.org>
10954
10955         * docs/gst/gstreamer-docs.sgml: More fine tuning.
10956         * docs/gst/gstreamer-sections.txt:
10957         * docs/gst/tmpl/gstautoplug.sgml:
10958         * docs/gst/tmpl/gststaticautoplug.sgml:
10959         * docs/gst/tmpl/gststaticautoplugrender.sgml:
10960         * docs/gst/tmpl/gstutils.sgml:
10961         * docs/gst/tmpl/gstxml.sgml:
10962
10963 2004-03-24  David Schleef  <ds@schleef.org>
10964
10965         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
10966         manual being such complete crap, that I decided to do major
10967         hacking of it.  This checkin replaces any fine tuning that
10968         may have been done previously, with the benefit of actually
10969         being complete for much of the API that was changed since
10970         0.6.  Further fine tuning will occur shortly.  (bug #134721)
10971         * docs/gst/gstreamer-sections.txt:
10972         * docs/gst/tmpl/GstBin.sgml:
10973         * docs/gst/tmpl/GstBuffer.sgml:
10974         * docs/gst/tmpl/GstCaps.sgml:
10975         * docs/gst/tmpl/GstClock.sgml:
10976         * docs/gst/tmpl/GstCompat.sgml:
10977         * docs/gst/tmpl/GstData.sgml:
10978         * docs/gst/tmpl/GstElement.sgml:
10979         * docs/gst/tmpl/GstEvent.sgml:
10980         * docs/gst/tmpl/GstIndex.sgml:
10981         * docs/gst/tmpl/GstStructure.sgml:
10982         * docs/gst/tmpl/GstTag.sgml:
10983         * docs/gst/tmpl/cothreads.sgml:
10984         * docs/gst/tmpl/cothreads_compat.sgml:
10985         * docs/gst/tmpl/gettext.sgml:
10986         * docs/gst/tmpl/grammar.tab.sgml:
10987         * docs/gst/tmpl/gst-i18n-app.sgml:
10988         * docs/gst/tmpl/gst-i18n-lib.sgml:
10989         * docs/gst/tmpl/gst.sgml:
10990         * docs/gst/tmpl/gst_private.sgml:
10991         * docs/gst/tmpl/gstaggregator.sgml:
10992         * docs/gst/tmpl/gstarch.sgml:
10993         * docs/gst/tmpl/gstatomic.sgml:
10994         * docs/gst/tmpl/gstatomic_impl.sgml:
10995         * docs/gst/tmpl/gstbin.sgml:
10996         * docs/gst/tmpl/gstbuffer.sgml:
10997         * docs/gst/tmpl/gstbufferstore.sgml:
10998         * docs/gst/tmpl/gstcaps.sgml:
10999         * docs/gst/tmpl/gstclock.sgml:
11000         * docs/gst/tmpl/gstcompat.sgml:
11001         * docs/gst/tmpl/gstconfig.sgml:
11002         * docs/gst/tmpl/gstcpu.sgml:
11003         * docs/gst/tmpl/gstdata.sgml:
11004         * docs/gst/tmpl/gstdata_private.sgml:
11005         * docs/gst/tmpl/gstelement.sgml:
11006         * docs/gst/tmpl/gstenumtypes.sgml:
11007         * docs/gst/tmpl/gsterror.sgml:
11008         * docs/gst/tmpl/gstevent.sgml:
11009         * docs/gst/tmpl/gstfakesink.sgml:
11010         * docs/gst/tmpl/gstfakesrc.sgml:
11011         * docs/gst/tmpl/gstfilesink.sgml:
11012         * docs/gst/tmpl/gstfilter.sgml:
11013         * docs/gst/tmpl/gstindex.sgml:
11014         * docs/gst/tmpl/gstinfo.sgml:
11015         * docs/gst/tmpl/gstinterface.sgml:
11016         * docs/gst/tmpl/gstlog.sgml:
11017         * docs/gst/tmpl/gstmacros.sgml:
11018         * docs/gst/tmpl/gstmarshal.sgml:
11019         * docs/gst/tmpl/gstmd5sink.sgml:
11020         * docs/gst/tmpl/gstmultifilesrc.sgml:
11021         * docs/gst/tmpl/gstobject.sgml:
11022         * docs/gst/tmpl/gstpad.sgml:
11023         * docs/gst/tmpl/gstparse.sgml:
11024         * docs/gst/tmpl/gstpipeline.sgml:
11025         * docs/gst/tmpl/gstplugin.sgml:
11026         * docs/gst/tmpl/gstpluginfeature.sgml:
11027         * docs/gst/tmpl/gstqueue.sgml:
11028         * docs/gst/tmpl/gstreamer-unused.sgml:
11029         * docs/gst/tmpl/gstregistry.sgml:
11030         * docs/gst/tmpl/gstregistrypool.sgml:
11031         * docs/gst/tmpl/gstscheduler.sgml:
11032         * docs/gst/tmpl/gstsearchfuncs.sgml:
11033         * docs/gst/tmpl/gstshaper.sgml:
11034         * docs/gst/tmpl/gstspider.sgml:
11035         * docs/gst/tmpl/gstspideridentity.sgml:
11036         * docs/gst/tmpl/gststructure.sgml:
11037         * docs/gst/tmpl/gstsystemclock.sgml:
11038         * docs/gst/tmpl/gsttag.sgml:
11039         * docs/gst/tmpl/gsttaginterface.sgml:
11040         * docs/gst/tmpl/gsttee.sgml:
11041         * docs/gst/tmpl/gstthread.sgml:
11042         * docs/gst/tmpl/gsttrace.sgml:
11043         * docs/gst/tmpl/gsttrashstack.sgml:
11044         * docs/gst/tmpl/gsttypefind.sgml:
11045         * docs/gst/tmpl/gsttypes.sgml:
11046         * docs/gst/tmpl/gsturi.sgml:
11047         * docs/gst/tmpl/gsturitype.sgml:
11048         * docs/gst/tmpl/gstutils.sgml:
11049         * docs/gst/tmpl/gstvalue.sgml:
11050         * docs/gst/tmpl/gstversion.sgml:
11051         * docs/gst/tmpl/gstxml.sgml:
11052         * docs/gst/tmpl/gstxmlregistry.sgml:
11053         * docs/gst/tmpl/gthread-cothreads.sgml:
11054         * docs/gst/tmpl/types.sgml:
11055
11056 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11057
11058         * docs/pwg/other-sink.xml:
11059         * docs/pwg/other-source.xml:
11060           Documentation on how to write source and sink elements. Other
11061           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
11062           manager, autoplugger) are all still pending.
11063
11064 2004-03-25  Benjamin Otte  <otte@gnome.org>
11065
11066         * testsuite/elements/Makefile.am:
11067         * testsuite/elements/gst-compprep-check:
11068           add check to make sure gst-compprep works
11069         * testsuite/elements/gst-inspect-check.in:
11070           improve initialization output
11071         * testsuite/Makefile.am:
11072         * testsuite/gst-inspect-check:
11073           remove old file
11074
11075 2004-03-24  David Schleef  <ds@schleef.org>
11076
11077         * testsuite/elements/Makefile.am:
11078         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
11079         to the testsuite.
11080
11081 2004-03-24  Benjamin Otte  <otte@gnome.org>
11082
11083         * libs/gst/control/dparam.c: (gst_dparam_attach),
11084         (gst_dparam_detach):
11085         * libs/gst/control/dparammanager.c: (gst_dpman_init):
11086           fix lvalue casts for real
11087
11088 2004-03-24  Benjamin Otte  <otte@gnome.org>
11089
11090         * gst/schedulers/gstbasicscheduler.c:
11091         (gst_basic_scheduler_src_wrapper):
11092         * gst/schedulers/gstoptimalscheduler.c:
11093         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
11094         (pad_clear_queued), (gst_opt_scheduler_add_element),
11095         (gst_opt_scheduler_remove_element):
11096           fix GStreamer to not have issues with lvalue casts anymore (fixes
11097           #136841)
11098
11099 2004-03-24  Benjamin Otte  <otte@gnome.org>
11100
11101         * gst/gstelement.c:
11102           add documentation about a gobject quirk where the object hasn't the
11103           correct class pointer set on initialization
11104         * gst/schedulers/gstbasicscheduler.c:
11105         (gst_basic_scheduler_src_wrapper):
11106           make sure to not run into an infinite loop
11107
11108 2004-03-22  Benjamin Otte  <otte@gnome.org>
11109
11110         * gst/gstutils.c: (gst_util_dump_mem):
11111         * gst/gstutils.h:
11112           first argument of gst_util_dump_mem should be const
11113
11114 2004-03-22  Johan Dahlin  <johan@gnome.org>
11115
11116         * gst/gstvalue.h: Clean up a little bit.
11117
11118 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
11119
11120         reviewed by Benjamin Otte  <otte@gnome.org>
11121
11122         * gst/autoplug/gstspider.c: (gst_spider_dispose):
11123         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
11124         (gst_aggregator_class_init), (gst_aggregator_init):
11125         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
11126         (gst_filesrc_dispose), (gst_filesrc_set_location):
11127         * gst/elements/gstidentity.c: (gst_identity_finalize),
11128         (gst_identity_class_init), (gst_identity_chain):
11129         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11130         * gst/elements/gststatistics.c: (gst_statistics_finalize),
11131         (gst_statistics_class_init):
11132         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
11133         (gst_tee_get_property):
11134           clean up used memory in this elements correctly on teardown (closes
11135           #137279)
11136
11137 2004-03-20  Colin Walters  <walters@redhat.com>
11138
11139         * gst/registries/gstxmlregistry.c:
11140         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
11141         registry saving atomic.
11142
11143 2004-03-20  Colin Walters  <walters@redhat.com>
11144
11145         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
11146         Just use
11147         access() instead of actually creating and deleting files.
11148
11149 2004-03-18  David Schleef  <ds@schleef.org>
11150
11151         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
11152         (bug #137625)
11153
11154 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11155
11156         * po/sv.po: updated translation (Christian Rose)
11157
11158 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11159
11160         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
11161         (gst_filesink_get_query_types), (_do_init),
11162         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
11163           return FALSE silently
11164         * po/af.po: updated translation (Petri Jooste)
11165
11166 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11167
11168         * Makefile.am:
11169         * configure.ac:
11170           dist common properly
11171         * po/af.po:
11172         * po/fr.po:
11173         * po/nl.po:
11174         * po/sr.po:
11175         * po/sv.po:
11176           refreshing translations
11177
11178 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11179
11180         * po/LINGUAS:
11181         * po/sv.po:
11182         * po/af.po:
11183           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
11184
11185 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11186
11187         * Makefile.am: use common/release.mak
11188
11189 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11190
11191         * docs/faq/gst-uninstalled:
11192           adding gst-monkeysaudio to the list of possible plugin dirs
11193
11194 2004-03-16  David Schleef  <ds@schleef.org>
11195
11196         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
11197         (gst_init_check_with_popt_table):  Fix some gettext strings to
11198         make them easier to translate.  Required making the strings
11199         non-const.
11200
11201 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11202
11203         * configure.ac: bump nano to 1
11204
11205 === release 0.8.0 ===
11206
11207 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11208
11209         * configure.ac: release 0.8.0, "Executive Slacks"
11210
11211 2004-03-16  Johan Dahlin  <johan@gnome.org>
11212
11213         * gst/schedulers/gstoptimalscheduler.c
11214         (gst_opt_scheduler_pad_unlink): Remove double ;,
11215         spotted by Scott Wheeler
11216
11217 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11218
11219         * configure.ac: bump libtool version
11220
11221 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11222
11223         * gst/gstcaps.h:
11224         * gst/gststructure.h:
11225           add reserved padding
11226
11227 2004-03-15  Benjamin Otte  <otte@gnome.org>
11228
11229         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
11230           set the first parameter for select call correctly.
11231           (fixes #137230)
11232
11233 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11234
11235         * *.c,*.h: don't mix tabs and spaces
11236
11237 2004-03-15  Johan Dahlin  <johan@gnome.org>
11238
11239         * gst/schedulers/gstoptimalscheduler.c
11240         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
11241         crash on MPEG playback. My boolean arithmetic is a bit rusty.
11242
11243         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
11244         
11245 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11246
11247         * testsuite/Rules:
11248           fix gst-register rules
11249
11250 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11251
11252         * testsuite/Rules:
11253           use versioned gst-register
11254
11255 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11256
11257         * docs/libs/gstreamer-libs-sections.txt:
11258           remove </SUBSECTION>
11259         * gst/gstplugin.c:
11260         * gst/gstregistry.c: (gst_registry_add_plugin):
11261         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
11262         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
11263           add debugging and fix some comment blocks
11264
11265 2004-03-15  Johan Dahlin  <johan@gnome.org>
11266
11267         * *.h: Revert indent changes.
11268         
11269 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
11270
11271         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
11272           g_error_free the g_error
11273         * tools/gst-feedback-m.m:
11274           check for other versions of gstreamer
11275         * tools/gst-indent:
11276           use sh, not bash
11277
11278 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
11279
11280         * tools/gst-register.c: do not spill paths when registries are not
11281           writable, until we fix the "user running gst-register" case.
11282
11283 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11284
11285         * *.c, *.h: commit of gst-indent run on core
11286
11287 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11288
11289         * tools/gst-indent:
11290         * tools/Makefile.am:
11291           add our indentation style as a script
11292
11293 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11294
11295         * po/sr.po:
11296         * po/LINGUAS:
11297           added Serbian translation
11298
11299 2004-03-13  Benjamin Otte  <otte@gnome.org>
11300
11301         * gst/gstelement.c:
11302           add documentation note about gst_element_found_tags_for_pad not
11303           being usable in getfunctions. (see #137042)
11304
11305 2004-03-12  David Schleef  <ds@schleef.org>
11306
11307         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
11308         change API right now!  Readd gst_caps_is_simple() macro.
11309         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
11310         uninitialized variable.  I'd bet this caused crashes.
11311         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
11312
11313 2004-03-12  Johan Dahlin  <johan@gnome.org>
11314
11315         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
11316         * gst/gstcaps.h: Clean up
11317
11318         * gst/gst.c (init_post): call gst_caps_get_type() instead of
11319         _gst_caps_initalize()
11320
11321         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
11322         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
11323
11324         * gst/gststructure.c (gst_structure_get_type): Ditto
11325
11326         * gst/gststructure.h: Ditto
11327         
11328 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11329
11330         * gst/gstqueue.c: (gst_queue_init):
11331           Reset default max. values in queues. Reason is simply to avoid
11332           braindead use. If you want wider values, use the properties. The
11333           default is supposed to always work. Wider values would make this
11334           beast a memory hog by default (250 full-PAL RGB32 video frames?
11335           That's 440 MB! No thank you).
11336
11337 2004-03-10  David Schleef  <ds@schleef.org>
11338
11339         * tools/gst-run.c: (main):  Fix crash when no relevant tools
11340         were found.  (bug #136793)
11341
11342 2004-03-10  Johan Dahlin  <johan@gnome.org>
11343
11344         * gst/schedulers/gstoptimalscheduler.c
11345         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
11346         links to elements within the same group, so we can finally remove
11347         that annoying warning. Refactor the code a little bit
11348         (group_dec_links_for_element): Split out
11349
11350 2004-03-09  David Schleef  <ds@schleef.org>
11351
11352         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
11353         (bug #134863)
11354
11355 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11356
11357         * configure.ac: first bug fix due to major/minor bump
11358
11359 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11360
11361         * configure.ac: bump nano to 1
11362
11363 === release 0.7.6 ===
11364
11365 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11366
11367         * NEWS:
11368         * RELEASE:
11369         * configure.ac:
11370           releasing 0.7.6, "Almost"
11371         * po/fr.po:
11372         * po/nl.po:
11373         * tools/Makefile.am:
11374         * tools/gst-feedback-m.m:
11375           unversioned source
11376
11377 2004-03-09  Johan Dahlin  <johan@gnome.org>
11378
11379         Reviewed by: Thomas Vander Stichele
11380
11381         * gst/gstelement.c (gst_element_class_init): register second
11382         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
11383         language bindings can (de)marshall correctly.
11384
11385         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
11386
11387         * gst/gsterror.c (gst_g_error_get_type): New function
11388
11389         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
11390         with VOID:OBJECT,OBJECT,STRING 
11391
11392 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
11393
11394         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
11395         Free a leaked g_timer on early returns.
11396
11397 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11398
11399         * docs/pwg/advanced-types.xml:
11400           Add cinepak description.
11401
11402 2004-03-07  David Schleef  <ds@schleef.org>
11403
11404         * docs/random/mimetypes:  Added cinepak description
11405
11406 2004-03-07  Andy Wingo  <wingo@pobox.com>
11407
11408         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
11409
11410         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
11411         there are no links to other groups when a group is destroyed.
11412         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
11413         removed from a group, make sure the link count to elements linked
11414         to other pads is appropriately decremented. This really fixes
11415         #135672.
11416
11417         The 1.60->1.61 patch has been reapplied in light of this fix.
11418
11419         * gst/gstelement.c (gst_element_dispose): Really protect against
11420         multiple invocations this time.
11421
11422 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11423
11424         * docs/gst/gstreamer-sections.txt:
11425         * docs/gst/tmpl/gsttag.sgml:
11426           remove some deprecated functions, document some existing ones
11427         * gst/gsttag.c: (gst_tag_get_flag):
11428         * gst/gsttag.h:
11429           add accessor function
11430
11431 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11432
11433         * docs/gst/gstreamer-sections.txt:
11434         * docs/gst/tmpl/gsttag.sgml:
11435         * docs/gst/tmpl/gstxml.sgml:
11436         * gst/gsttag.c: (gst_tag_get_flag):
11437         * gst/gsttag.h:
11438
11439 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
11440
11441         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
11442         leak
11443
11444 2004-03-05  David Schleef  <ds@schleef.org>
11445
11446         * REQUIREMENTS: Add bison and flex.
11447         * configure.ac: Fix comment about bison.
11448         * docs/random/ds/0.9-suggested-changes: yer ma
11449         * tools/gst-inspect.c: (print_element_info):  Fix warning.
11450
11451 2004-03-05  Benjamin Otte  <otte@gnome.org>
11452
11453         * gst/gstelement.c: (gst_element_error_full):
11454           revert recent recursive state changing commit - messing with other
11455           elements' states is evil and should be done by apps only.
11456
11457 2004-03-05  Benjamin Otte  <otte@gnome.org>
11458
11459         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
11460           check for empty intersection instead of NULL caps
11461         (gst_element_get_compatible_pad_filtered):
11462           remove old workaround that is only a bug nowadays
11463
11464 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11465
11466         * gst/gstelement.c: (gst_element_error_full):
11467           make elements try to recursively change state to PAUSED on all
11468           parents after an error to suppress ensuing warnings
11469         * gst/parse/grammar.y:
11470           make it check if it was able to sync the state, and throw an error
11471           if not, so stuff like
11472           oggdemux ! vorbisdec ! osssink gets caught
11473
11474 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11475
11476         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
11477           it contains lib64; use AS_AC_EXPAND to handle it properly
11478
11479 2004-03-05  David Schleef  <ds@schleef.org>
11480
11481         * gst/gstcpuid_i386.s:  Remove unused code
11482         * libs/gst/getbits/getbits.c: (gst_getbits_init),
11483         (gst_getbits_newbuf): Remove MMX code
11484         * libs/gst/getbits/getbits.h: Remove MMX code
11485
11486 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
11487
11488         * debian/.cvsignore:
11489         * debian/README.Debian:
11490         * debian/changelog:
11491         * debian/control:
11492         * debian/control.in:
11493         * debian/copyright:
11494         * debian/gstreamer-core-libs-dev.files:
11495         * debian/gstreamer-core-libs.files:
11496         * debian/gstreamer-core.files:
11497         * debian/gstreamer-core.postinst:
11498         * debian/gstreamer-core.postrm:
11499         * debian/gstreamer-doc.files:
11500         * debian/gstreamer-doc.links:
11501         * debian/gstreamer-doc.lintian:
11502         * debian/gstreamer-runtime.files:
11503         * debian/gstreamer-runtime.manpages:
11504         * debian/gstreamer-runtime.postinst:
11505         * debian/gstreamer-runtime.postrm:
11506         * debian/gstreamer-tools.files:
11507         * debian/gstreamer-tools.manpages:
11508         * debian/libgstreamer-dev.files:
11509         * debian/libgstreamer0.4.1.files:
11510         * debian/libgstreamerVERSION.files:
11511         * debian/rules:
11512         Debian package info not maintained here.
11513
11514 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11515
11516         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11517         * gst/gstbin.c: (gst_bin_class_init):
11518         * gst/gstelement.c: (gst_element_class_init):
11519         * gst/gstindex.c: (gst_index_class_init):
11520         * gst/gstobject.c: (gst_object_class_init),
11521         (gst_signal_object_class_init):
11522         * gst/gstpad.c: (gst_pad_template_class_init):
11523         * gst/gstregistry.c: (gst_registry_class_init):
11524         * gst/gsturi.c: (gst_uri_handler_base_init):
11525         * gst/gstxml.c: (gst_xml_class_init):
11526         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11527         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
11528           make all signal names use dashes instead of underscore
11529
11530 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11531
11532         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
11533
11534 2004-03-03  Benjamin Otte  <otte@gnome.org>
11535
11536         * gst/schedulers/gstoptimalscheduler.c:
11537           revert last commit by Andy Wingo. It causes segfaults on unreffing
11538           in Rhythmbox. (see bug #135672)
11539
11540 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11541
11542         * po/fr.po: fix typo
11543
11544 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11545
11546         * tools/gst-inspect.c: (main): 
11547         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
11548
11549 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11550
11551         * configure.ac:
11552           get GLIB_ONLY and POPT flags for the nonversioned binaries
11553         * tools/Makefile.am:
11554           use them
11555
11556 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11557
11558         * gst/gst.c: (init_post):
11559           change so that GST_REGISTRY now is where the global registry gets
11560           saved, since that is where plugins now get attached to first, and
11561           spilled over to the user registry.  Note that in the case of using
11562           GST_REGISTRY env var, we don't want to affect any real registries
11563           beyond the one given by this var, and thus we don't set a user
11564           registry to spill to.  So make sure GST_REGISTRY is writable.
11565
11566 2004-03-01  David Schleef  <ds@schleef.org>
11567
11568         * AUTHORS:  Added some names.  Add yourself if you're missing.
11569
11570 2004-03-01  David Schleef  <ds@schleef.org>
11571
11572         * MAINTAINERS: Add
11573
11574 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
11575
11576         * configure.ac:
11577           remove whitespace
11578         * docs/gst/tmpl/gstbuffer.sgml:
11579         * docs/gst/tmpl/gstdata.sgml:
11580         * docs/gst/tmpl/gstreamer-unused.sgml:
11581         * docs/gst/tmpl/gstxml.sgml:
11582           doc update
11583         * docs/manuals.mak:
11584           add a FIXME
11585         * docs/pwg/intro-preface.xml:
11586         * docs/pwg/pwg.xml:
11587           remove GNOME
11588         * gst/gst.c: (init_post):
11589           try GST_PLUGIN_PATH paths for the _global_registry first
11590         * gst/gstelement.h:
11591           add the error message as well, otherwise (null) debug info doesn't
11592           make much sense
11593         * tools/gst-register.c: (main):
11594           spill paths to next registry if this registry is not writable
11595         * po/fr.po:
11596         * po/nl.po:
11597           translation updates
11598
11599 2004-03-01  Johan Dahlin  <johan@gnome.org>
11600
11601         * gst/gstbuffer.c (_gst_buffer_initialize): 
11602         * gst/gstdata.c (gst_data_get_type): 
11603         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
11604         instead of ref, since some applications that uses GBoxed
11605         routines depends on a function that actually returns a copy.
11606
11607 2004-02-27  Benjamin Otte  <otte@gnome.org>
11608
11609         * gst/gstbuffer.h:
11610           remove gst_buffer_free, use gst_data_unref
11611         * gst/gstdata.c: (gst_data_get_type):
11612           use refcounting in GstData GBoxed registration
11613         * gst/gstdata.h:
11614           remove gst_data_free, use gst_data_unref
11615
11616 2004-02-27  Johan Dahlin  <johan@gnome.org>
11617
11618         * gst/gstdata.c (gst_data_get_type): New function, register
11619         GstData as a GBoxed type.
11620
11621         * gst/gstdata.h (GST_TYPE_DATA): New macro
11622
11623 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
11624
11625         * Makefile.am:
11626         * gstreamer.spec.in:
11627           put back RELEASE
11628         * gst/Makefile.am:
11629           clean up non-disting of built files
11630         * testsuite/debug/commandline.c:
11631           test fix for option rename
11632
11633 2004-02-26  David Schleef  <ds@schleef.org>
11634
11635         * configure.ac:  We don't really need glib-2.3.  Also remove
11636         some unneeded checks for library functions.
11637         * gst/Makefile.am:  Instead, we need to not dist files created
11638         by glib-genmarshal.
11639
11640 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11641
11642         * configure.ac:
11643           bump glib required version to 2.3.0 for g_value_takes_boxed
11644
11645  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
11646
11647         * common/m4/gst-docs.m4
11648         change flavour text from enable to disable as enable is our default
11649         closes bug Bug 135304
11650
11651 === release 0.7.5 ===
11652  
11653  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11654  
11655         * NEWS:
11656           instate NEWS file
11657         * Makefile.am:
11658         * gstreamer.spec.in:
11659         * RELEASE:
11660           put back release
11661         * configure.ac:
11662         * docs/random/release:
11663           more updates
11664
11665 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11666
11667         * gst/gsttag.c: (_gst_tag_initialize):
11668         * po/fr.po:
11669         * po/nl.po:
11670           remove hyphen from codec tags
11671
11672 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11673
11674         * gst/parse/Makefile.am:
11675           fix dependency so that a make from a clean build works the first
11676           time
11677
11678 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11679
11680         * docs/random/release:
11681           update release strategy
11682         * po/fr.po:
11683           auto-update po file
11684         * po/nl.po:
11685           update dutch translation
11686
11687 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11688
11689         * docs/manual/debugging.xml:
11690         fix manual for new debugging system
11691
11692 2004-02-25  Andy Wingo  <wingo@pobox.com>
11693
11694         * gst/gstpad.c (gst_pad_link_prepare): Re-add
11695         gst_pad_link_prepare. Please email the list with specific reasons
11696         for reverting.
11697
11698 2004-02-24  Andy Wingo  <wingo@pobox.com>
11699
11700         * gst/gstelement.c (gst_element_dispose): Protect against multiple
11701         invocations.
11702
11703         * gst/schedulers/gstoptimalscheduler.c:
11704         I added a mess of prototypes at the top of the file by way of
11705         documentation. Some of the operations on chains and groups were
11706         re-organized.
11707
11708         (create_group): Added a type argument so if the group is enabled,
11709         the setup_group_scheduler knows what to do.
11710         (group_elements): Added a type argument here, too, to be passed on
11711         to create_group.
11712         (group_element_set_enabled): If an unlinked PLAYING element is
11713         added to a bin, we have to create a new group to hold the element,
11714         and this function will be called before the group is added to the
11715         chain. Thus we have a valid case for group->chain==NULL. Instead
11716         of calling chain_group_set_enabled, just set the flag on the group
11717         (the chain's status will be set when the group is added to it).
11718         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
11719         Setup the group scheduler when the group is enabled, not
11720         specifically when an element goes PAUSED->PLAYING. This means
11721         PLAYING elements can be added, linked, and scheduled into a
11722         PLAYING pipeline, as was intended.
11723         (add_to_group): Don't ref the group twice. I don't know when this
11724         double-ref got in here. Removing it has the potential to cause
11725         segfaults if other parts of the scheduler are buggy. If you find
11726         that the scheduler is segfaulting for you, put in an extra ref
11727         here and see if that hacks over the underlying issue. Of course,
11728         then find out what code is unreffing a group it doesn't own...
11729         (create_group): Make the extra refcount floating, and remove it
11730         after adding the element. This means that...
11731         (unref_group): Destroy when the refcount reaches 0, not 1, like
11732         every other refcounted object in the known universe.
11733         (remove_from_group): When a group becomes empty, set it to be not
11734         active, and remove it from its chain. Don't unref it again,
11735         there's no floating reference any more.
11736         (destroy_group): We have to remove the group from the chain in
11737         remove_from_group (rather than here) to break refcounting cycles
11738         (the chain always has a ref on the group). So assert that
11739         group->chain==NULL.
11740         (ref_group_by_count): Removed, it was commented out anyway.
11741         (merge_chains): Use the remove_from_chain and add_to_chain
11742         primitives to do the reparenting, instead of rolling our own
11743         implementation.
11744         (add_to_chain): The first non-disabled group in the chain's group
11745         list will be the entry point for the chain. Because buffers can
11746         accumulate in loop elements' peer bufpens, we preferentially
11747         schedule loop groups before get groups to avoid unnecessary
11748         execution of get-based groups when the bufpens are already full.
11749         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
11750         (get_group_schedule_function): Ditto.
11751         (loop_group_schedule_function): Ditto.
11752         (gst_opt_scheduler_loop_wrapper): Ditto.
11753         (gst_opt_scheduler_iterate): Ditto.
11754
11755         I understand the opt scheduler now, yippee!
11756
11757         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
11758         (gst_pad_get_name, gst_pad_set_chain_function) 
11759         (gst_pad_set_get_function, gst_pad_set_event_function) 
11760         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
11761         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
11762         (gst_pad_set_query_function, gst_pad_get_query_types) 
11763         (gst_pad_get_query_types_default) 
11764         (gst_pad_set_internal_link_function) 
11765         (gst_pad_set_formats_function, gst_pad_set_link_function) 
11766         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
11767         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
11768         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
11769         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
11770         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
11771         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
11772         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
11773         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
11774         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
11775         (gst_pad_event_default_dispatch, gst_pad_event_default) 
11776         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
11777         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
11778         (gst_pad_get_formats_default, gst_pad_get_formats): Better
11779         argument checks, and some doc fixes.
11780
11781         (gst_pad_custom_new_from_template): Um, does anyone
11782         use these functions? Actually make a custom pad instead of a
11783         normal one.
11784         (gst_pad_try_set_caps): Transpose some checks.
11785         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
11786         the pad is in negotiation.
11787         (gst_pad_try_relink_filtered): Use pad_link_prepare.
11788         
11789         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
11790
11791         * gst/gstelement.h: 
11792         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
11793         on the list.
11794
11795 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11796
11797         * gst/gstbin.c: (gst_bin_add):
11798           add error for not being able to add elements
11799
11800 2004-02-22  Julien MOUTTE <julien@moutte.net>
11801
11802         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
11803         audio-codec and video-codec.
11804
11805 2004-02-22  Benjamin Otte  <otte@gnome.org>
11806
11807         reported by: Padraig O'Briain <padraig.obriain@sun.com>
11808
11809         * autogen.sh:
11810           replace test -e with test -x for mkinstalldirs to be more portable.
11811           (fixes #134816)
11812
11813 2004-02-22  Benjamin Otte  <otte@gnome.org>
11814
11815         * gst/gstpad.c:
11816           revert last patch from Andy, it makes gst_pad_can_link_filtered much
11817           too noisy
11818         * gst/gsttag.c: (_gst_tag_initialize):
11819         * gst/gsttag.h:
11820           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
11821         * libs/gst/control/dparam.c: (gst_dparam_attach):
11822         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
11823           check that types for attached dparams match
11824
11825 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11826
11827         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
11828         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11829         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11830           fix errors
11831
11832 2004-02-20  Andy Wingo  <wingo@pobox.com>
11833
11834         * gst/gstbin.c:
11835         * gst/gstbuffer.c:
11836         * gst/gstplugin.c:
11837         * gst/registries/gstxmlregistry.c: 
11838         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
11839
11840         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
11841         (gst_element_add_pad): DEBUG->INFO, some fixes.
11842         (gst_element_get_compatible_pad_template): Just see if the
11843         templates' caps intersect, not if one is a strict subset of the
11844         other. This conforms more to what gst_pad_link_intersect() does.
11845         (gst_element_class_add_pad_template): Don't memcpy the pad
11846         template, just ref it.
11847         (gst_element_get_compatible_pad_filtered): Clean up debug messages
11848
11849         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
11850         (gst_pad_link_filtered): Debug changes.
11851         (gst_pad_link_prepare): New function, consolidated from
11852         can_link_filtered and link_filtered.
11853
11854         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
11855         look more like that of the functions in gstelement.c
11856
11857         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
11858         object, and return the empty string if object is NULL.
11859
11860         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
11861         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
11862         LOG, not DEBUG. We still get flex info on debug.
11863
11864         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
11865         debug string more verbose.
11866         (plugin_times_older_than): DEBUG->LOG.
11867
11868 2004-02-20  Julien MOUTTE <julien@moutte.net>
11869
11870         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
11871         will emit found_tag for each stream they demux with the codec.
11872
11873 2004-02-20  Benjamin Otte  <otte@gnome.org>
11874
11875         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
11876           copy navigation event correctly. Check freeing tag lists. 
11877         * gst/gstthread.c: (gst_thread_change_state):
11878           don't abort() on state changing mess - it might happen because of
11879           bugs.
11880         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
11881           use boxed functions
11882         * gst/gstvalue.h:
11883           fix GST_VALUE_HOLDS_CAPS
11884
11885 2004-02-19  David Schleef  <ds@schleef.org>
11886
11887         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
11888         and use it for GST_FUNCTION.  (bug #134750)
11889
11890 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11891
11892         * po/fr.po:
11893         * po/nl.po:
11894           updating translations
11895
11896 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11897
11898         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
11899
11900 2004-02-18  kost@imn.htwk-leipzig.de
11901
11902         reviewed by: David Schleef  <ds@schleef.org>
11903
11904         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
11905         for libgstcontrol.
11906
11907 2004-02-18  David Schleef  <ds@schleef.org>
11908
11909         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11910         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11911         (gst_dpsmooth_new): Additional fixes to get double dparams working.
11912         * tools/gst-inspect.c: (print_element_info): Support dumping of
11913         double dparam information.
11914
11915 2004-02-17  David Schleef  <ds@schleef.org>
11916
11917         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11918         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
11919         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
11920         Use GST_TYPE_CAPS in signal prototype.
11921         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
11922         Convert GST_TYPE_CAPS to boxed.
11923         * gst/gstelement.c: (gst_element_class_init):
11924         Use GST_TYPE_TAG_LIST in signal prototype.
11925         * gst/gstindex.c: (gst_index_class_init):
11926         * gst/gstindex.h:
11927         Add GST_TYPE_INDEX_ENTRY type.
11928         * gst/gstmarshal.list:
11929         Add necessary marshal types.
11930         * gst/gstpad.c: (gst_real_pad_class_init),
11931         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
11932         (gst_pad_recover_caps_error):
11933         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
11934         * gst/gststructure.c: (_gst_structure_initialize),
11935         (gst_structure_copy), (_gst_structure_copy_conditional):
11936         * gst/gststructure.h:
11937         Convert GST_TYPE_STRUCTURE to boxed.
11938         * gst/gsttag.c: (gst_tag_list_get_type):
11939         * gst/gsttag.h:
11940         Add GST_TYPE_TAG_LIST type.
11941
11942 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11943
11944         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
11945         to what we agreed with david.
11946         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
11947
11948 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11949
11950         * po/nl.po: update translation
11951
11952 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11953
11954         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
11955           throw an error if spider is trying to play a mime type there is
11956           no decoder for
11957         * po/POTFILES.in:
11958           add gst/autoplug/gstspider.c for translation
11959
11960 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11961
11962         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
11963         silently when the pad is negotiating.
11964
11965 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11966
11967         * docs/faq/Makefile.am:
11968           add script to run gstreamer uninstalled 
11969         * docs/faq/faq.xml:
11970         * docs/faq/developing.xml:
11971         * docs/faq/gst-uninstalled:
11972           extract script to run gstreamer uninstalled
11973         * docs/manuals.mak:
11974           add EXTRA_SOURCES variable for Makefile.am's to set to
11975           use additional SOURCE files for the doc build
11976
11977 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11978
11979         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
11980
11981 2004-02-15  Julien MOUTTE  <julien@moutte.net>
11982
11983         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
11984         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
11985         an error was thrown by osssink. Basically a state change failure for
11986         an element in a different scheduling group was considered as
11987         successful, which means that caps nego was going on and weird stuff
11988         happened. Like I wrote in the comment there, if someone wants to
11989         revert that please drop me a mail explaining why because I really see
11990         no point in keeping that broken behaviour there.
11991         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
11992         be empty, we then return NULL which will trigger a nice error when 
11993         pulling from the pad.
11994
11995 2004-02-13  David Schleef  <ds@schleef.org>
11996
11997         * libs/gst/control/dparam.c: (gst_dparam_class_init),
11998         (gst_dparam_get_property), (gst_dparam_set_property),
11999         (gst_dparam_do_update_default):
12000         * libs/gst/control/dparam.h:
12001         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
12002         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
12003         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
12004         (gst_dpsmooth_do_update_double):
12005         * libs/gst/control/dparam_smooth.h:
12006         * libs/gst/control/dparammanager.c:
12007         (gst_dpman_inline_direct_update):
12008         Add support for double dparams.
12009
12010 2004-02-13  David Schleef  <ds@schleef.org>
12011
12012         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
12013         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
12014
12015 2004-02-13  Mattias Wadman  <mattias@sudac.org>
12016
12017         reviewed by: David Schleef  <ds@schleef.org>
12018
12019         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
12020         (gst_fdsrc_init), (gst_fdsrc_set_property),
12021         (gst_fdsrc_get_property), (gst_fdsrc_get):
12022         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
12023         and sends an EOS event if file descriptor reading times out.
12024
12025 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12026
12027         * configure.ac:
12028           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
12029
12030 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12031
12032         * configure.ac: pass required libxml version as argument
12033         (bug reported by Christophe Fergeau)
12034
12035 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12036   
12037         * docs/gst/gstreamer-docs.sgml:
12038         * docs/gst/tmpl/gstxml.sgml:
12039         * docs/libs/gstreamer-libs-docs.sgml:
12040           version API docs
12041
12042 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12043
12044         * gst/gstinfo.c:
12045         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
12046         (gst_registry_pool_feature_filter):
12047         * gst/gstthread.c: (gst_thread_class_init):
12048         * gst/gstvalue.c:
12049           add includes exposed by building without libxml
12050         * gst/indexers/Makefile.am:
12051           do not build fileindex when LOADSAVE disabled; we should have
12052           a better libxml check later since fileindex depends on xml, not
12053           LOADSAVE or REGISTRY
12054         * libs/gst/control/Makefile.am:
12055           link with m
12056         * tools/Makefile.am:
12057           fix wrong source code for gst-xmlinspect
12058
12059 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12060
12061         * configure.ac:
12062           fix gcov help output
12063           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
12064         * docs/random/release:
12065           some updated releasing notes
12066         * gstreamer.spec.in:
12067           more updates
12068
12069 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12070
12071         * docs/faq/faq.xml:
12072         * docs/manual/manual.xml:
12073         * docs/pwg/pwg.xml:
12074         * docs/pwg/titlepage.xml:
12075           put version in documentation
12076
12077 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12078
12079         * tools/Makefile.am: fix man page installation
12080
12081 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12082
12083         * configure.ac:
12084           don't check for libxml when load/save and registry disabled (#105844)
12085         * gstreamer.spec.in:
12086           sync with fedora candidate spec
12087
12088 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12089
12090         * po/fr.po:
12091         * po/nl.po:
12092           replace multidisksrc with multifilesrc
12093
12094 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12095
12096         * po/POTFILES.in:
12097           update to multidisksrc => multifilesrc file renaming (#134145)
12098
12099 2004-02-11  David Schleef  <ds@schleef.org>
12100
12101         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
12102         * docs/gst/tmpl/gstpadtemplate.sgml: same
12103         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
12104         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
12105         fixing dance.
12106         * gst/gstutils.c: Remove disabled code that uses GstProps.
12107         * gst/registries/gstxmlregistry.h: same
12108         * docs/random/ds/0.9-suggested-changes: random notes
12109
12110 2004-02-11  kost@imn.htwk-leipzig.de
12111
12112         reviewed by: David Schleef  <ds@schleef.org>
12113
12114         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
12115         initialisation of clock (bug #134128)
12116
12117 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12118
12119         * configure.ac:
12120         * gst/elements/Makefile.am:
12121         * gst/elements/gstelements.c:
12122         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
12123         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
12124         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
12125         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
12126         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
12127         * gst/elements/gstmultifilesrc.h:
12128           rename multidisksrc to multifilesrc (part of #122200)
12129
12130 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12131
12132         * docs/manuals.mak:
12133           fix automake complaints
12134         * gst-element-check.m4:
12135           fix unquotedness
12136
12137 2004-02-11  David Schleef  <ds@schleef.org>
12138
12139         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
12140         * gst/gstatomic_impl.h: Disable sparc implementation.
12141
12142 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12143
12144         * gst-element-check.m4:
12145           fix underquoted macros as reported by automake 1.8.x (#133800)
12146         * configure.ac:
12147           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
12148           by autopoint (fixes #132996)
12149
12150 2004-02-10  Andy Wingo  <wingo@pobox.com>
12151
12152         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
12153         way to do inheritance.
12154         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
12155         (gst_pad_get_query_types, gst_pad_get_query_types_default):
12156         Routine docs.
12157         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
12158         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
12159         doc.
12160         (gst_pad_unlink, gst_pad_is_linked): Docs.
12161         (gst_pad_renegotiate): A brief description of capsnego.
12162         (gst_pad_try_set_caps): Document.
12163         (gst_pad_try_set_caps_nonfixed): Document.
12164         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
12165         (gst_pad_set_parent): Deprecated (although not out of the API).
12166         (gst_pad_get_parent): Deprecated, although many plugins use this.
12167         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
12168         are private and will go away in 0.9.
12169         (gst_pad_perform_negotiate): Doc.
12170         (gst_pad_link_unnegotiate): I think this is meant to be static.
12171         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
12172         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
12173         (gst_pad_get_peer): Doc updates.
12174         (gst_pad_caps_change_notify): Doc.
12175         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
12176         (gst_ghost_pad_new): Doc fixes.
12177
12178         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
12179         (gst_object_check_uniqueness): 
12180
12181         * gst/gstelement.c (gst_element_add_pad) 
12182         (gst_element_add_ghost_pad, gst_element_remove_pad) 
12183         (gst_element_remove_ghost_pad, gst_element_get_pad) 
12184         (gst_element_get_static_pad, gst_element_get_pad_list) 
12185         (gst_element_class_get_pad_template_list) 
12186         (gst_element_class_get_pad_template): Work on the docs.
12187         (gst_element_get_pad_template_list): Uses the class method.
12188         (gst_element_get_compatible_pad_template): Docs, and consolidate
12189         some test conditions. 
12190         (gst_element_get_pad_from_template): New static function.
12191         (gst_element_request_compatible_pad): Docs, and work with
12192         non-request compatible templates. 
12193         (gst_element_get_compatible_pad_filtered): Docs and remove
12194         redundant checks.
12195         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
12196         (gst_element_link_filtered, gst_element_link_many) 
12197         (gst_element_link, gst_element_link_pads) 
12198         (gst_element_unlink_many): Docs.
12199
12200 2004-02-05  Andy Wingo  <wingo@pobox.com>
12201
12202         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
12203         s/pointer/boxed/.
12204
12205         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
12206
12207         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
12208         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
12209         with the type=GST_TYPE_CAPS. This allows language bindings to know
12210         what kind of data they're dealing with.
12211
12212         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
12213         to NULL when g_value_init is called. GstCaps, which rolls its own
12214         type implementation, now does the same instead of allocating empty
12215         caps.
12216         (_gst_caps_initialize, _gst_caps_collect_value,
12217         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
12218         table methods. This allows G_VALUE_COLLECT to work.
12219
12220 2004-02-05  Andy Wingo  <wingo@pobox.com>
12221
12222         * configure.ac:
12223         * testsuite/Makefile.am (SUBDIRS): 
12224         * testsuite/ghostpads/Makefile.am: 
12225         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
12226
12227         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
12228         These two routines are the only ones that set
12229         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
12230         pad template. They should be made static, depending on ABI needs.
12231         (gst_real_pad_dispose): Handle the case of ghost pads without a
12232         parent. Assert after dealing with ghost pads that the ghost pad
12233         list is empty.
12234         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
12235         set after creation.
12236         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
12237         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
12238         functions. set_property will call add_ghost_pad/remove_ghost_pad
12239         as appropriate.
12240         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
12241
12242         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
12243         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
12244         (gst_element_remove_pad): Handle ghost pads as well.
12245         (gst_element_remove_ghost_pad): Deprecated (could be removed,
12246         depending on API-stability needs).
12247
12248 2004-02-05  Andy Wingo  <wingo@pobox.com>
12249
12250         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
12251         of course they're const
12252
12253 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12254
12255         * tools/Makefile.am:
12256         * tools/gst-feedback:
12257         * tools/gst-feedback-0.7:
12258           make gst-feedback versioned too for consistency
12259
12260 2004-02-11  David Schleef  <ds@schleef.org>
12261
12262         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12263         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
12264
12265 2004-02-10  Julien MOUTTE <julien@moutte.net>
12266
12267         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
12268         the structure does not contain a valid tag list. Adding a safety check
12269         to remove a noisy warning in that case.
12270
12271 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
12272
12273         * gst/gst.c: fix name to be in line with others
12274
12275 2004-02-09  Julien MOUTTE <julien@moutte.net>
12276
12277         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
12278         not shout that loud when len is 0. Just return 0 silently.
12279
12280 2004-02-09  Julien MOUTTE  <julien@moutte.net>
12281
12282         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
12283         because data_unref has one and I prefer the debug to be symetric.
12284         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
12285         were refed when added to the queue and unrefed only once when the queue
12286         was flushed. Now the flush handler unref the buffers two times : first
12287         unref for the ref added when pushing in the queue's tail and second
12288         unref to destroy the flushed buffer.
12289
12290 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
12291
12292         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
12293
12294 2004-02-06  David Schleef  <ds@schleef.org>
12295
12296         * docs/random/ds/0.9-suggested-changes: Random ramblings
12297         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
12298         to int before printing.
12299         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
12300         * gst/parse/parse.l: same.  See bug #129600
12301
12302 2004-02-06  David Schleef  <ds@schleef.org>
12303
12304         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
12305         (gst_index_add_entry), (gst_index_add_associationv),
12306         (gst_index_add_association): Add gst_index_add_associationv()
12307         and clean up gst_index_add_association(). #127133
12308
12309 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12310
12311         * autogen.sh: check out common with right tag if CVS/Tag exists
12312
12313 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12314
12315         * testsuite/ghostpads/ghostpads.c: (main):
12316           fix testsuite from segfaulting
12317
12318 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12319
12320         * Makefile.am: add release target
12321         * configure.ac: bump nano to 1
12322         * docs/random/release:
12323
12324 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12325
12326         * gst/gstcaps.h:
12327         * gst/gstelement.c: (gst_element_base_class_init),
12328         (gst_element_class_set_details), (gst_element_clear_pad_caps):
12329         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12330         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
12331         (gst_real_pad_dispose):
12332         * gst/gststructure.c: (gst_structure_free),
12333         (gst_structure_from_string):
12334           put reverted patch back in
12335         * gst/gstelement.c: (gst_element_remove_pad):
12336           free explicit caps if they're set
12337         * gst/gstpad.c: (_gst_pad_default_fixate_func):
12338           copy the structure when fixating
12339
12340 2004-02-05  David Schleef  <ds@schleef.org>
12341
12342         * gst/gstmarshal.list:
12343         * gst/gstpad.c: (gst_real_pad_class_init),
12344         (_gst_real_pad_fixate_accumulator):
12345         Revert POINTER->BOXED change in signal marshaller.
12346
12347 === release 0.7.4 ===
12348                                                                                 
12349 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12350                                                                                 
12351         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
12352         * configure.ac: changed for release
12353
12354 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
12355
12356         * gstreamer.spec.in:
12357           bump required version of gtk-doc
12358
12359 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
12360
12361         * gst/gstcaps.h:
12362         * gst/gstelement.c: (gst_element_base_class_init),
12363         (gst_element_class_set_details), (gst_element_clear_pad_caps):
12364         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12365         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
12366         (gst_real_pad_dispose):
12367         * gst/gststructure.c: (gst_structure_free),
12368         (gst_structure_from_string):
12369           revert patch that breaks applications, reapply after release
12370           to get this fixed properly
12371
12372 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12373
12374         * gst/gsttag.c: (_gst_tag_initialize):
12375         * gst/gsttag.h:
12376           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
12377
12378 2004-02-04  David Schleef  <ds@schleef.org>
12379
12380         Fix some memleaks:
12381         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
12382         (gst_spider_plug_from_srcpad):
12383         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
12384
12385 2004-02-04  David Schleef  <ds@schleef.org>
12386
12387         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
12388         a GstRealPad before accessing its structure members.
12389
12390 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12391
12392         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
12393         (gst_clock_get_speed):
12394         * gst/gstclock.h:
12395           reset padding, remove unused fields
12396
12397 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12398
12399         * gst/autoplug/gstspideridentity.c:
12400         (gst_spider_identity_sink_loop_type_finding):
12401           use get_allowed_caps, not get_caps (fixes #132519)
12402         * gst/elements/gsttypefind.c: (stop_typefinding):
12403           use correct order when sending buffers and seeking
12404
12405 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12406
12407         * configure.ac:
12408         * gst/gstelement.h:
12409         * gst/gstpad.h:
12410         * gst/gstqueue.h:
12411           upgrade libtool CURRENT, reset padding
12412
12413 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12414
12415         * configure.ac:
12416           bump to prerelease
12417           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
12418
12419 2004-02-04  David Schleef  <ds@schleef.org>
12420
12421         * docs/random/ds/0.9-suggested-changes: random notes
12422         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
12423         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
12424         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
12425         expansion.
12426         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
12427         (gst_filesink_get_query_types): same
12428         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
12429         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
12430         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
12431         to use new GST_PTR_FORMAT.
12432         * gst/gstelement.h: deprecate function factory macros
12433         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
12434         These are our last variadic macros that can't be replaced with
12435         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
12436         attempting to deprecate gst_element_clock_wait().
12437         * gst/gstevent.h: same
12438         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12439         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
12440         * gst/gstpad.h: deprecate function factory macros similar to above.
12441
12442 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12443
12444         * configure.ac:
12445         * tools/Makefile.am:
12446         * tools/gst-run.c: (popt_callback), (hash_print_key),
12447         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
12448         (get_candidates), (main):
12449           add new source file to generate non-versioned wrapper binaries
12450           for our tools.
12451
12452 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12453
12454         * gst/gstevent.c: (_gst_event_free):
12455           actually break; inside the switch statement
12456         * gst/parse/grammar.y:
12457           fix memleak where GValues weren't unset
12458
12459 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12460
12461         * gst/gststructure.c: (gst_structure_from_string):
12462           fix huge memleak
12463         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12464         (new_entry), (gst_type_find_element_chain):
12465         * gst/gstelement.c: (gst_element_base_class_init),
12466         (gst_element_class_set_details):
12467         * gst/gstpad.c: (gst_pad_can_link_filtered):
12468           fix smaller memleaks
12469         * gst/gstpad.c: (gst_real_pad_dispose):
12470           check that explicit caps are gone
12471         * gst/gststructure.c: (gst_structure_free):
12472           actually free the structure
12473         * gst/gstelement.c: (gst_element_clear_pad_caps):
12474           unset explicit caps
12475
12476 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12477
12478         * tools/Makefile.am:
12479           use AM_CFLAGS since all the CFLAGS are the same
12480           use AM_LDFAGS
12481
12482 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12483
12484         * docs/manual/gnome.xml:
12485           expand example a little
12486         * gst/gst.c: (gst_init_with_popt_table),
12487         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
12488           make sure popt option displays are done with right textdomain
12489           use GstPoptOption type
12490         * gst/gst.h:
12491           create GstPoptOption type
12492
12493 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12494
12495         * gst/gsterror.c: (_gst_stream_errors_init):
12496         * gst/gsterror.h:
12497           adding error type for no codec
12498         * po/POTFILES.in:
12499           add gst-inspect
12500         * po/nl.po:
12501           update dutch translation
12502         * tools/gst-inspect.c: (print_element_list), (main):
12503           do proper internationalization
12504         * tools/gst-launch.c: (idle_func):
12505           remove commented out function call
12506
12507 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12508
12509         * docs/README:
12510           add some error fixing notes
12511         * docs/gst/gstreamer-sections.txt:
12512           remove double entries
12513         * docs/gst/tmpl/gstbin.sgml:
12514         * docs/gst/tmpl/gstclock.sgml:
12515           remove override
12516         * docs/gst/tmpl/gstelement.sgml:
12517         * docs/gst/tmpl/gstindex.sgml:
12518         * docs/gst/tmpl/gstobject.sgml:
12519         * docs/gst/tmpl/gstpadtemplate.sgml:
12520         * docs/gst/tmpl/gstreamer-unused.sgml:
12521         * docs/gst/tmpl/gsttag.sgml:
12522         * docs/gst/tmpl/gstthread.sgml:
12523         * docs/gst/tmpl/gstxml.sgml:
12524         * gst/gsttag.h:
12525           sync header prototypes with c decls
12526         * gst/gsttaginterface.c:
12527           fix doc headers
12528
12529 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12530
12531         * gst/parse/Makefile.am:
12532         * gst/gstobject.h:
12533           get rid of gstmarshal.h dependency. It's not needed.
12534         * gst/gst.h:
12535         * gst/elements/gstfakesink.c:
12536         * gst/elements/gstfakesrc.c:
12537         * gst/elements/gstidentity.c:
12538         * gst/gstbin.c:
12539         * gst/gstelement.c:
12540         * gst/gstindex.c:
12541         * gst/gstobject.c:
12542         * gst/gstpad.c:
12543         * gst/gstthread.c:
12544         * gst/gstxml.c:
12545         * libs/gst/control/dparam.c:
12546         * libs/gst/control/dparammanager.c:
12547           include gstmarshal.h.
12548         Fixes #132045
12549
12550 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12551
12552         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
12553         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
12554         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
12555         * gst/elements/gstfilesrc.h:
12556           don't ref the filesrc when creating mmaped buffers. Don't keep a
12557           list of not-yet-destroyed buffers.
12558         * gst/gstbuffer.h:
12559           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
12560
12561 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12562
12563         * gst/gst.c: (init_pre):
12564           remove textdomain
12565
12566 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12567
12568         * docs/pwg/advanced-events.xml:
12569         * docs/pwg/advanced-scheduling.xml:
12570         * docs/pwg/intro-basics.xml:
12571         * docs/pwg/other-manager.xml:
12572         * docs/pwg/other-nton.xml:
12573         * docs/pwg/other-ntoone.xml:
12574         * docs/pwg/other-oneton.xml:
12575         * docs/pwg/pwg.xml:
12576           All sort of documentation... Forgot what. Point is that I want this
12577           in before I leave. The 'other-*' will be the last section and will
12578           explain issues specific to these type of elements.
12579
12580 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12581
12582         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12583         (gst_filesrc_get_read):
12584           set all the values on buffers that we can
12585
12586 2004-02-02  David Schleef  <ds@schleef.org>
12587
12588         Change usage of isblah() to g_ascii_isblah() to be more locale
12589         independent.  (#133076)
12590         * gst/gsturi.c: (gst_uri_protocol_check_internal):
12591         * gst/gstutils.c:
12592         * gst/parse/parse.l:
12593
12594 2004-02-02  Jon Trowbridge  <trow@gnu.org>
12595
12596         reviewed by: David Schleef  <ds@schleef.org>
12597
12598         Fix memory leaks:
12599         * gst/gstcaps.c: (gst_caps_to_string):
12600         * gst/registries/gstxmlregistry.c:
12601         (gst_xml_registry_add_path_list_func),
12602         (gst_xml_registry_parse_padtemplate):
12603
12604 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12605
12606         * gst/gstelement.c: (gst_element_default_error):
12607           suffix error messages with period
12608
12609 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12610
12611         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12612         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12613         * gst/gsterror.c: (gst_error_get_message):
12614           Suffix with dots
12615         * po/fr.po:
12616         * po/nl.po:
12617           Update translation files
12618
12619 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12620
12621         * gst/autoplug/gstspideridentity.c:
12622         (gst_spider_identity_sink_loop_type_finding):
12623         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12624         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12625         (gst_filesink_close_file), (gst_filesink_handle_event),
12626         (gst_filesink_chain):
12627         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12628         (gst_filesrc_get_read), (gst_filesrc_open_file):
12629         * gst/elements/gstidentity.c: (gst_identity_chain):
12630         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12631         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12632         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12633         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12634         * gst/gsterror.c: (_gst_core_errors_init),
12635         (_gst_library_errors_init), (_gst_resource_errors_init),
12636         (_gst_stream_errors_init), (gst_error_get_message):
12637         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12638         (gst_pad_recover_caps_error), (gst_pad_pull):
12639         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12640         * gst/schedulers/gstbasicscheduler.c:
12641         (gst_basic_scheduler_chainhandler_proxy),
12642         (gst_basic_scheduler_gethandler_proxy),
12643         (gst_basic_scheduler_cothreaded_chain):
12644           Suffix error messages with period.
12645           Use (NULL) instead of NULL
12646
12647 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12648
12649         * docs/gst/tmpl/gstelement.sgml:
12650         * docs/gst/tmpl/gstxml.sgml:
12651         * gst/gstelement.c: (gst_element_error_full):
12652           add element path to error
12653
12654 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12655
12656         * docs/random/mimetypes:
12657           update raw int/float info
12658         * gst/gsttag.c: (_gst_tag_initialize):
12659         * gst/gsttag.h:
12660           add GST_TAG_ENCODER
12661
12662 2004-01-30  David Schleef  <ds@schleef.org>
12663
12664         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
12665           missing (#132991)
12666
12667 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
12668
12669         reviewed by Benjamin Otte 
12670           parts of the patch submitted in bug #113913
12671
12672         * configure.ac:
12673           use AC_C_INLINE. Use = instead of == with test
12674         * examples/plugins/example.c:
12675         * gst/autoplug/gstspideridentity.c:
12676         * gst/elements/gstfdsrc.c:
12677         * gst/elements/gstfilesrc.c:
12678         * gst/elements/gstidentity.c:
12679         * gst/elements/gstmultidisksrc.c:
12680         * gst/elements/gststatistics.c:
12681         * gst/gstelement.c:
12682         * gst/gstobject.c:
12683         * gst/gstpad.c:
12684         * gst/gstpipeline.c:
12685         * gst/gstthread.c:
12686           don't end enums with a comma
12687         * gst/gstindex.c: (gst_index_compare_func):
12688           do explicit casting to gint
12689         * gst/gsttrace.c: (gst_trace_text_flush):
12690           #define strsize as a macro
12691
12692 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
12693
12694         * docs/README:
12695         * docs/gst/gstreamer-docs.sgml:
12696         * docs/gst/gstreamer-sections.txt:
12697         * docs/gst/tmpl/gstelement.sgml:
12698         * docs/gst/tmpl/gsterror.sgml:
12699         * docs/gst/tmpl/gstinterface.sgml:
12700         * docs/gst/tmpl/gstreamer-unused.sgml:
12701         * docs/gst/tmpl/gststructure.sgml:
12702         * docs/gst/tmpl/gsttag.sgml:
12703         * docs/gst/tmpl/gsttaginterface.sgml:
12704         * docs/gst/tmpl/gstvalue.sgml:
12705         make sure all API ends up in the built docs
12706         * gst/gstinterface.c:
12707         * gst/gststructure.c: (gst_structure_id_set_value),
12708         (gst_structure_set_value), (gst_structure_id_get_value):
12709         * gst/gststructure.h:
12710         * gst/gstvalue.h:
12711         sync .h with .c declarations
12712
12713 2004-01-30  Julien Moutte  <julien@moutte.net>
12714
12715         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
12716         Ronald will fix riffread.
12717
12718 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12719
12720         * docs/pwg/advanced-interfaces.xml:
12721           Added tuner interface docs.
12722
12723 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12724
12725         * docs/random/mimetypes:
12726           correct Theora information
12727         * gst/gstelement.h:
12728           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
12729
12730 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12731
12732         * gst/gstelement.c: (gst_element_error_full):
12733         * gst/gstelement.h:
12734           GST_ELEMENT_ERROR in enum -> _IN_ERROR
12735
12736 2004-01-29  Julien MOUTTE  <julien@moutte.net>
12737
12738         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
12739         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
12740         again and even before DISCONT.
12741         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
12742         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
12743         bytestream so that it's not stopping to fill the bytestream if events
12744         different than EOS or DISCONT are received. Instead it process them so
12745         that they go downstream.
12746
12747 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12748
12749         * docs/gst/tmpl/gstelement.sgml:
12750         * docs/gst/tmpl/gstreamer-unused.sgml:
12751         * docs/gst/tmpl/gstxml.sgml:
12752         * gst/autoplug/gstspideridentity.c:
12753         (gst_spider_identity_sink_loop_type_finding):
12754         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12755         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12756         (gst_filesink_close_file), (gst_filesink_handle_event),
12757         (gst_filesink_chain):
12758         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12759         (gst_filesrc_get_read), (gst_filesrc_open_file):
12760         * gst/elements/gstidentity.c: (gst_identity_chain):
12761         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12762         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12763         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12764         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12765         * gst/gstelement.h:
12766         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12767         (gst_pad_recover_caps_error), (gst_pad_pull):
12768         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12769         * gst/schedulers/gstbasicscheduler.c:
12770         (gst_basic_scheduler_chainhandler_proxy),
12771         (gst_basic_scheduler_gethandler_proxy),
12772         (gst_basic_scheduler_cothreaded_chain):
12773           gst_element_error -> GST_ELEMENT_ERROR
12774
12775 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12776
12777         * docs/Makefile.am:
12778         * docs/gst/tmpl/gstelement.sgml:
12779         * docs/gst/tmpl/gstxml.sgml:
12780         * docs/manuals.mak:
12781         * docs/pwg/advanced-request.xml:
12782         * docs/pwg/advanced-scheduling.xml:
12783         * docs/pwg/advanced-tagging.xml:
12784           fix non-validating docbook using CDATA
12785           make sure make check-local gets run first to check if it validates
12786
12787 2004-01-29  Julien MOUTTE <julien@moutte.net>
12788
12789         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
12790         handling (up and downstream).
12791         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
12792         my_filter thing.
12793
12794 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12795
12796         * docs/pwg/advanced-tagging.xml:
12797           Add docs about tag writing.
12798
12799 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12800
12801         * docs/pwg/advanced-tagging.xml:
12802           Add a part about tag reading and application signalling... Tag
12803           writing still needs to be documented.
12804         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12805           We can set file locations in READY, too.
12806
12807 2004-01-29  Julien MOUTTE <julien@moutte.net>
12808
12809         * docs/random/ds/element-checklist: Adding some notes about src
12810         events.
12811
12812 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12813
12814         * docs/random/mimetypes:
12815           Update docs to point to correct elements for various mimetypes, and
12816           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
12817           <stephane.loeuillet@tiscali.fr>.
12818
12819 2004-01-28  David Schleef  <ds@schleef.org>
12820
12821         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
12822
12823 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12824
12825         * docs/random/mimetypes:
12826           update docs for audio/x-raw-float. Add "buffer-frames=0 means
12827           undefined"
12828         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12829           make it only work in NULL.
12830         * gst/gstcaps.c:
12831           don't posion NULL caps
12832         * gst/gstelement.c: (gst_element_set_time):
12833           add debugging statement
12834         * gst/gstelement.c: (gst_element_emit_found_tag),
12835         (gst_element_found_tag_func), (gst_element_found_tags):
12836         * gst/gstelement.h:
12837           These functions take const taglists
12838         * gst/gstpad.c: (gst_pad_proxy_getcaps):
12839           fix memleak
12840         * gst/gstpad.c: (gst_pad_event_default):
12841           make more effort on handling discont and clocks, g_warn if everything
12842           fails
12843         * gst/gststructure.c: (gst_structure_remove_fields),
12844         (gst_structure_remove_fields_valist):
12845         * gst/gststructure.h:
12846           add gst_structure_remove_fields(_valist)
12847         * gst/gsttag.c:
12848           fix doc glitch
12849
12850 2004-01-28  David Schleef  <ds@schleef.org>
12851
12852         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
12853         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
12854         Fix memory leakage of gst_caps_to_string().
12855
12856         Use GST_PTR_FORMAT instead of gst_caps_to_string():
12857         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
12858         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
12859         (gst_spider_identity_sink_loop_type_finding):
12860         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12861         (find_suggest):
12862         * gst/gstpad.c: (gst_pad_try_relink_filtered),
12863         (gst_pad_set_explicit_caps):
12864         * gst/parse/grammar.y:
12865
12866 2004-01-28  David Schleef  <ds@schleef.org>
12867
12868         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
12869         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
12870         * docs/random/ds/0.9-suggested-changes: Notes from Company.
12871         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
12872         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
12873         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
12874         (gst_debug_log_default), (_gst_info_printf_extension),
12875         (_gst_info_printf_extension_arginfo):  Add printf extension.
12876         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
12877         * gst/gststructure.c: (gst_structure_to_string),
12878         (_gst_structure_parse_value): Use gst_value_deserialize() and
12879         remove old code.
12880         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
12881         (gst_value_deserialize_boolean), (gst_strtoi),
12882         (gst_value_deserialize_int), (gst_value_deserialize_double),
12883         (gst_value_deserialize_string), (gst_value_deserialize): Implement
12884         a bunch of deserialize functions and gst_value_deserialize.
12885         * gst/gstvalue.h: er, _de_serialize, not unserialize
12886         * testsuite/caps/string-conversions.c: (main): We don't currently
12887         handle (float) in caps, so convert these to (double).
12888         * testsuite/debug/Makefile.am: Add new test for the printf extension
12889         * testsuite/debug/printf_extension.c: (main): same
12890
12891 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12892
12893         * docs/random/company/time:
12894           Add some docs about clocking and time
12895
12896 2004-01-28  Julien MOUTTE <julien@moutte.net>
12897
12898         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
12899
12900 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12901
12902         * docs/pwg/advanced-clock.xml:
12903         * docs/pwg/advanced-dparams.xml:
12904         * docs/pwg/advanced-events.xml:
12905         * docs/pwg/advanced-interfaces.xml:
12906         * docs/pwg/advanced-midi.xml:
12907         * docs/pwg/advanced-request.xml:
12908         * docs/pwg/advanced-scheduling.xml:
12909         * docs/pwg/advanced-tagging.xml:
12910         * docs/pwg/advanced-types.xml:
12911         * docs/pwg/appendix-checklist.xml:
12912         * docs/pwg/building-boiler.xml:
12913         * docs/pwg/building-chainfn.xml:
12914         * docs/pwg/building-filterfactory.xml:
12915         * docs/pwg/building-pads.xml:
12916         * docs/pwg/building-props.xml:
12917         * docs/pwg/building-signals.xml:
12918         * docs/pwg/building-state.xml:
12919         * docs/pwg/building-testapp.xml:
12920         * docs/pwg/intro-basics.xml:
12921         * docs/pwg/intro-preface.xml:
12922         * docs/pwg/other-autoplugger.xml:
12923         * docs/pwg/other-sink.xml:
12924         * docs/pwg/other-source.xml:
12925         * docs/pwg/titlepage.xml:
12926           fix up id's
12927
12928 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12929
12930         * docs/95NonPath:
12931         * docs/HACKING:
12932         * docs/README:
12933         * docs/building-the-docs-on-debian:
12934           collect relevant bits of doc info
12935
12936 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12937
12938         * docs/pwg/advanced_tagging.xml:
12939           Half-assed commit so Thomas can re-arrange document IDs here to be
12940           consistent, too.
12941
12942 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12943
12944         * docs/manual/autoplugging.xml:
12945         * docs/manual/bins-api.xml:
12946         * docs/manual/bins.xml:
12947         * docs/manual/buffers-api.xml:
12948         * docs/manual/buffers.xml:
12949         * docs/manual/clocks.xml:
12950         * docs/manual/components.xml:
12951         * docs/manual/cothreads.xml:
12952         * docs/manual/debugging.xml:
12953         * docs/manual/dparams-app.xml:
12954         * docs/manual/dynamic.xml:
12955         * docs/manual/elements-api.xml:
12956         * docs/manual/elements.xml:
12957         * docs/manual/factories.xml:
12958         * docs/manual/gnome.xml:
12959         * docs/manual/goals.xml:
12960         * docs/manual/helloworld.xml:
12961         * docs/manual/helloworld2.xml:
12962         * docs/manual/init-api.xml:
12963         * docs/manual/intro.xml:
12964         * docs/manual/links-api.xml:
12965         * docs/manual/links.xml:
12966         * docs/manual/manual.xml:
12967         * docs/manual/motivation.xml:
12968         * docs/manual/pads-api.xml:
12969         * docs/manual/pads.xml:
12970         * docs/manual/plugins-api.xml:
12971         * docs/manual/plugins.xml:
12972         * docs/manual/programs.xml:
12973         * docs/manual/queues.xml:
12974         * docs/manual/quotes.xml:
12975         * docs/manual/schedulers.xml:
12976         * docs/manual/states-api.xml:
12977         * docs/manual/states.xml:
12978         * docs/manual/threads.xml:
12979         * docs/manual/typedetection.xml:
12980         * docs/manual/xml.xml:
12981           use chapter, part, section or misc as id starts for all bits
12982
12983 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12984
12985         * docs/gst/gstreamer-sections.txt:
12986           Fix up TITLE of the sections
12987
12988 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12989
12990         * docs/pwg/advanced_interfaces.xml:
12991           Add documentation on propertyprobing.
12992         * docs/pwg/advanced_events.xml:
12993         * docs/pwg/advanced_tagging.xml:
12994         * docs/pwg/building_boiler.xml:
12995         * docs/pwg/building_filterfactory.xml:
12996         * docs/pwg/pwg.xml:
12997           Move filterfactory and tagging into their own chapter, add a chapter
12998           on events. all these are empty placeholders that will be filled in
12999           some day.
13000
13001 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13002
13003         * docs/pwg/advanced_interfaces.xml:
13004           Docs for mixer interface. Also a check for website uploading.
13005
13006 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13007
13008         * docs/HACKING:
13009         * docs/Makefile.am:
13010         * docs/faq/Makefile.am:
13011         * docs/gst/Makefile.am:
13012         * docs/gst/tmpl/gstelement.sgml:
13013         * docs/gst/tmpl/gstplugin.sgml:
13014         * docs/gst/tmpl/gstreamer-unused.sgml:
13015         * docs/libs/Makefile.am:
13016         * docs/manual/Makefile.am:
13017         * docs/manuals.mak:
13018         * docs/pwg/Makefile.am:
13019         * docs/upload.mak:
13020           Separate out upload target and make it similar for
13021           both docbook and gtk-doc docs
13022
13023 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13024
13025         * docs/manuals.mak:
13026           Fix upload target to work with freedesktop
13027
13028 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13029
13030         * docs/pwg/advanced_types.xml:
13031           Add notes on creating your own types.
13032         * docs/pwg/building_boiler.xml:
13033         * docs/pwg/building_pads.xml:
13034         * docs/pwg/building_state.xml:
13035           Add some stuff about how to retrieve values from structures, how
13036           that relates to types and change layout slightly again to be almost
13037           perfect.
13038
13039 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13040
13041         * docs/pwg/advanced_dparams.xml:
13042         * docs/pwg/advanced_scheduling.xml:
13043           Change index layout slightly.
13044
13045 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13046
13047         * docs/pwg/advanced_clock.xml:
13048         * docs/pwg/advanced_interfaces.xml:
13049         * docs/pwg/advanced_midi.xml:
13050           General placeholders for now.
13051         * docs/pwg/advanced_request.xml:
13052           Explanation about sometimes and request pads.
13053         * docs/pwg/advanced_scheduling.xml:
13054           Concept of bytestream, loopfunctions and schedulers.
13055         * docs/pwg/building_boiler.xml:
13056           Add something about plugin-init.
13057
13058 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13059
13060         * docs/pwg/building_pads.xml:
13061           Fix broken docbook
13062
13063 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13064
13065         * docs/pwg/advanced_interfaces.xml:
13066         * docs/pwg/pwg.xml:
13067           Add as a placeholder for future filling-in.
13068         * docs/pwg/basics_autoplugging.xml:
13069         * docs/pwg/basics_buffers.xml:
13070         * docs/pwg/basics_elements.xml:
13071         * docs/pwg/basics_events.xml:
13072         * docs/pwg/basics_plugins.xml:
13073         * docs/pwg/basics_types.xml:
13074           Remove, because unused (this is all in intro_basics.xml).
13075         * docs/pwg/building_signals.xml:
13076           Short intro to signals + reference to GObject docs - we really
13077           shouldn't go into these sort of things to deply because we don't
13078           use them that extensively anyway.
13079         * docs/pwg/building_state.xml:
13080           Explanation of states. Benjamin, please check.
13081         * docs/pwg/building_testapp.xml:
13082           Put everything in one page - putting only a few lines of content
13083           per page doesn't really make sense.
13084
13085           Time to get into the advanced topics. ;).
13086
13087 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13088
13089         * docs/pwg/advanced_types.xml:
13090           Finish documenting the current state of mimetypes.
13091         * docs/pwg/building_boiler.xml:
13092         * docs/pwg/building_chainfn.xml:
13093         * docs/pwg/building_pads.xml:
13094         * docs/pwg/building_props.xml:
13095         * docs/pwg/building_testapp.xml:
13096           Start documenting the "how to build a simple audio filter" part
13097           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
13098           states and (maybe?) a short introduction to capsnego in the chapter
13099           on pads (building_pads.xml). Capsnego should probably be explained
13100           fully in advanced_capsnego.xml or so.
13101
13102 2004-01-26  David Schleef  <ds@schleef.org>
13103
13104         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
13105         * gst/gstpad.h: Add new function to allow element to (somewhat)
13106         specify non-fixed caps on a pad.
13107         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
13108         that I added a few weeks ago.
13109
13110 2004-01-26  David Schleef  <ds@schleef.org>
13111
13112         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
13113           making try_set_caps() work with non-fixed caps.
13114
13115 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13116
13117         * docs/pwg/advanced_types.xml:
13118         * docs/pwg/intro_basics.xml:
13119         * docs/pwg/intro_preface.xml:
13120         * docs/pwg/pwg.xml:
13121         * docs/pwg/titlepage.xml:
13122           First try to resurrect the PWG. I'm halfway integrating the mimetypes
13123           in here (docs/random/mimetypes), and will from there on work on both
13124           updating outdated parts and adding missing parts.
13125           That doesn't mean I'll fix it completely, but I'll try at least. ;).
13126
13127 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
13128
13129         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
13130           policy is set
13131
13132 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13133
13134         * gst/gstelement.h:
13135           remove gst_element_factory_get_version. It doesn't exist anymore.
13136         * gst/gstplugin.c:
13137         * gst/gstplugin.h:
13138           remove gst_plugin_set_name and change gst_plugin_get_longname to
13139           gst_plugin_get_description to match code.
13140         * gst/gsterror.h:
13141           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
13142         * gst/gstpad.c: (gst_pad_try_set_caps):
13143           make it work with nonfixed caps.
13144           Note that even in the nonfixed case the link function of the pad
13145           that tries to set caps isn't called.
13146
13147 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13148
13149         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
13150           fix bug where buffer was not assembled correctly
13151         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
13152           silence by default
13153         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
13154           only seek if there's no more buffers that could work without seeking
13155
13156 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13157
13158         * gst/gsttag.c: (_gst_tag_initialize):
13159         * gst/gsttag.h:
13160           Add application tag (for encoding/muxing app).
13161
13162 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13163
13164         * autogen.sh:
13165           make autopoint force, and libtoolize not copy
13166         * common/m4/as-docbook.m4:
13167           added docbook xml catalog setup check
13168         * common/m4/gst-doc.m4:
13169           use docbook check
13170
13171 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
13172
13173         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
13174         * gst/gsttag.h:
13175           add GstTagFlag
13176
13177 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13178
13179         * docs/gst/gstreamer-sections.txt:
13180         * docs/gst/tmpl/gst.sgml:
13181         * docs/gst/tmpl/gstbuffer.sgml:
13182         * docs/gst/tmpl/gstclock.sgml:
13183         * docs/gst/tmpl/gstelement.sgml:
13184         * docs/gst/tmpl/gstreamer-unused.sgml:
13185         * docs/gst/tmpl/gstxml.sgml:
13186           sync latest API changes to docs
13187
13188 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13189
13190         * gst/gstpluginfeature.c:
13191           fix doc snippet
13192         * tools/gst-inspect.c: (print_element_list):
13193           fix output of typefind
13194           add GPL header
13195         * tools/gst-launch.c:
13196           add GPL header
13197
13198 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13199
13200         * gst/elements/Makefile.am:
13201         * gst/elements/gstelements.c:
13202         * gst/elements/gsttypefindelement.c:
13203         * gst/elements/gsttypefindelement.h:
13204         * po/POTFILES.in:
13205         * po/fr.po:
13206         * po/nl.po:
13207           renamed gsttypefindelement to gsttypefind, conserving CVS history
13208
13209 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13210
13211         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
13212         * gst/gsttag.h:
13213           add some tags used in ogg as well
13214           fix _ in replaygain tags
13215
13216 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13217
13218         * gst/gsterror.h:
13219           fix wrong GST_LIBRARY_ERROR_ENCODE addition
13220
13221 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13222
13223         * gst/gstelement.c: (gst_element_error_full):
13224         * gst/gstelement.h:
13225           change _extended to _full
13226
13227 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13228
13229         reviewed by: <delete if not using a buddy>
13230
13231         * docs/gst/tmpl/gst.sgml:
13232         * docs/gst/tmpl/gstbuffer.sgml:
13233         * docs/gst/tmpl/gstclock.sgml:
13234         * docs/gst/tmpl/gstelement.sgml:
13235         * docs/gst/tmpl/gstreamer-unused.sgml:
13236         * docs/gst/tmpl/gstxml.sgml:
13237         * gst/gstelement.c: (gst_element_error_full):
13238         * gst/gstelement.h:
13239
13240 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13241
13242         * gst/gstelement.h: fix _gst_element_error_printf prototype
13243
13244 2004-01-20  David Schleef  <ds@schleef.org>
13245
13246         * gst/gststructure.c: (gst_structure_to_string):
13247         Convert function to use gst_value_serialize().
13248         * gst/gstvalue.c: (gst_value_serialize_list),
13249         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
13250         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
13251         (gst_value_serialize_int), (gst_value_serialize_double),
13252         (gst_string_wrap), (gst_value_serialize_string),
13253         (gst_value_serialize), (gst_value_deserialize):
13254         * gst/gstvalue.h:
13255         Add implementations for serialize.
13256
13257 2004-01-20  Julien MOUTTE  <julien@moutte.net>
13258
13259         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
13260         we want to keep that one in the future or change xvidenc.c to use 
13261         another error.
13262
13263 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13264
13265         * gst/gstelement.c: (_gst_element_error_printf):
13266         * gst/gstelement.h:
13267           privatise function
13268
13269 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13270
13271         * docs/random/error:
13272           doc explaining error system
13273         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
13274           cleanup
13275
13276 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13277
13278         * gst/gst-i18n-app.h:
13279         * gst/gst-i18n-lib.h:
13280           remove inclusion of config.h
13281         * po/POTFILES.in:
13282         * po/nl.po:
13283           add gst/gstelement.c
13284
13285 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13286
13287         * po/nl.po: updated Dutch translation
13288
13289 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13290
13291         * gst/gsterror.c: (_gst_core_errors_init),
13292         (_gst_library_errors_init), (_gst_resource_errors_init),
13293         (_gst_stream_errors_init):
13294         remove ending punctuation dots
13295
13296 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13297
13298         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
13299         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
13300         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13301         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13302         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13303         use GST_ERROR_SYSTEM
13304
13305 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13306
13307         * gst/gstelement.c: (gst_element_error_printf),
13308         (gst_element_error_extended):
13309         * gst/gstelement.h:
13310           add a helper printf function so we can have NULL values passed.
13311
13312 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13313
13314         * gst/gstelement.h:
13315           add G_STMT macros to gst_element_error, which isn't strictly
13316           necessary but people tell me to anyway.
13317
13318 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
13319
13320         * gst/Makefile.am:
13321         * gst/autoplug/gstspideridentity.c:
13322         (gst_spider_identity_sink_loop_type_finding):
13323         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
13324         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
13325         (gst_filesink_close_file), (gst_filesink_handle_event),
13326         (gst_filesink_chain):
13327         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
13328         (gst_filesrc_map_region), (gst_filesrc_get_read),
13329         (gst_filesrc_open_file):
13330         * gst/elements/gstidentity.c: (gst_identity_chain):
13331         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13332         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13333         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13334         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
13335         * gst/gst.h:
13336         * gst/gst_private.h:
13337         * gst/gstelement.c: (gst_element_class_init),
13338         (gst_element_default_error), (gst_element_error_func),
13339         (gst_element_error_extended):
13340         * gst/gstelement.h:
13341         * gst/gsterror.c: (_gst_core_errors_init),
13342         (_gst_library_errors_init), (_gst_resource_errors_init),
13343         (_gst_stream_errors_init), (gst_error_get_message):
13344         * gst/gsterror.h:
13345         * gst/gstinfo.c: (_gst_debug_init):
13346         * gst/gstmarshal.list:
13347         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13348         (gst_pad_recover_caps_error), (gst_pad_pull):
13349         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
13350         * gst/schedulers/gstbasicscheduler.c:
13351         (gst_basic_scheduler_chainhandler_proxy),
13352         (gst_basic_scheduler_gethandler_proxy),
13353         (gst_basic_scheduler_cothreaded_chain):
13354         * po/POTFILES.in:
13355         * po/fr.po:
13356         * po/nl.po:
13357           change error signal
13358           add error categories
13359
13360 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
13361
13362         * gst/gsttag.c: (_gst_tag_initialize):
13363         * gst/gsttag.h:
13364         Add replaygain tag
13365
13366 2004-01-18  Colin Walters  <walters@verbum.org>
13367
13368         * examples/retag/retag.c: Call gst_init before processing
13369         program args.  Add g_assert to _link_many call.
13370
13371 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13372
13373         * gst/gstpad.c: (gst_pad_alloc_buffer):
13374           Return a newly allocated buffer when the pad has no peer.
13375
13376 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13377
13378         * gst/gstclock.c: (gst_clock_get_time):
13379           make it compile with gcc 2.95 again.
13380           Patch by Scott Wheeler
13381
13382 2004-01-15  David Schleef  <ds@schleef.org>
13383
13384         * gst/gstcaps.h:
13385         Added gst_caps_is_simple() macro.
13386         * testsuite/caps/caps.c: (test1):
13387         * testsuite/caps/intersect2.c: (main):
13388         * testsuite/caps/intersection.c: (main):
13389         Fixes to make 'make check' work again after removing
13390         gst_caps_is_chained().
13391
13392 2004-01-15  Leif Johnson <leif@ambient.2y.net>
13393
13394         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
13395         and additions to the MIDI document.
13396
13397 2004-01-15  David Schleef  <ds@schleef.org>
13398
13399         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
13400         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
13401         of GST_RPAD_, since we don't know if it's a real or ghost pad.
13402
13403 2004-01-15  David Schleef  <ds@schleef.org>
13404
13405         * gst/gstqueue.c:
13406         * gst/gstqueue.h:
13407         Fix the spelling of "treshold" and make min_threshold actually
13408         affect the queue.
13409
13410 2004-01-15  David Schleef  <ds@schleef.org>
13411
13412         * gst/gstcaps.c:
13413         Add lots of documentation.
13414         * gst/gstcaps.h:
13415         Deprecate a few functions.
13416         * gst/gstpad.c:
13417         Removed use of deprecated functions.
13418
13419 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13420
13421         * gst/gstpad.c: (gst_pad_is_linked):
13422         * gst/gstpad.h:
13423           implement gst_pad_is_linked
13424         * gst/gstelement.h:
13425           reserve space for initiate_state_change
13426
13427 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13428
13429         * gst/autoplug/gstspideridentity.c:
13430         (gst_spider_identity_sink_loop_type_finding):
13431           break infinite loop by just returning instead of looping
13432         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
13433           set event time difference correctly. Set it to 1 second instead
13434           of 100ms to be more tolerant
13435         * gst/gstelement.c: (gst_element_set_time):
13436           add debugging output
13437
13438 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13439
13440         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
13441           query if buffers are inside the pool, ignore events
13442
13443 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13444
13445         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
13446         (gst_clock_set_speed), (gst_clock_set_active),
13447         (gst_clock_is_active), (gst_clock_reset),
13448         (gst_clock_handle_discont):
13449         * gst/gstclock.h:
13450           deprecate old interface and disable functions that aren't in use
13451           anymore.
13452         * gst/gstelement.h:
13453         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
13454         (gst_element_set_time), (gst_element_adjust_time):
13455           add concept of "element time" and functions to get/set this time.
13456         * gst/gstelement.c: (gst_element_change_state):
13457           update element time correctly.
13458         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13459           This is a debug message, not a g_critical.
13460         * gst/gstpad.c: (gst_pad_event_default):
13461           handle discontinuous events right with element time.
13462         * gst/gstscheduler.c: (gst_scheduler_state_transition):
13463           update to clocking fixes.
13464           set clocks on elements in READY=>PAUSED. The old behaviour caused
13465           a wrong element time on the first element that started playing.
13466         * gst/schedulers/gstbasicscheduler.c:
13467         (gst_basic_scheduler_class_init):
13468         * gst/schedulers/gstoptimalscheduler.c:
13469         (gst_opt_scheduler_class_init):
13470           remove code that just implements the default behaviour.
13471         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
13472           update to use new clocking functions
13473         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
13474         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
13475           update to test new element time.
13476         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
13477           use _get_allowed_caps instead of _get_caps. This catches filtered
13478           caps correctly.
13479         * testsuite/debug/commandline.c:
13480           update for new GST_DEBUG syntax.
13481         * testsuite/threads/Makefile.am:
13482           disable a test that only works sometimes.
13483
13484 2004-01-13  Julien MOUTTE <julien@moutte.net>
13485
13486         * po/LINGUAS: Adding fr.
13487         * po/fr.po: Adding french translation.
13488
13489 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13490
13491         * gst/parse/grammar.y:
13492         * po/POTFILES.in:
13493         * po/nl.po:
13494         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
13495           translate parsing error messages
13496
13497 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13498
13499         * po/POTFILES.in: adding gst-launch
13500         * po/nl.po: updated translation, all 99 strings translated
13501         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
13502         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
13503           fix strings for translation
13504
13505 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13506
13507         * gst/gst.c:
13508           - capitalize beginnings of popt options
13509           - fix strings for translation
13510           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
13511
13512 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13513
13514         * po/README: add some notes on how to update translations
13515
13516 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13517
13518         * ABOUT-NLS: removed, is autogenerated from autopoint
13519         * autogen.sh: add autopoint stuff
13520         * configure.ac: fix up gettext stuff
13521         * gst/Makefile.am: add i18n headers to noinst_HEADERS
13522         * gst/elements/gsttypefindelement.c: add header include
13523         * gst/gettext.h: add header, copy from system-installed header
13524         * gst/gst-i18n-app.h: to be included by each app having translations
13525         * gst/gst-i18n-lib.h: to be included by each lib having translations
13526         * gst/gst.c: (init_pre): fix up gettext calls
13527         * gst/gst_private.h: remove i18n stuff, moving to separate headers
13528         * po/LINGUAS: the new way to specify translations present
13529         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
13530         * po/Makevars: the variables filled in for GStreamer
13531         * po/POTFILES.in: added new files with translations
13532         * po/de.po: has new strings
13533         * po/nl.po: readded, has new strings
13534
13535 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13536
13537         * gst/gsttag.c: fix some strings marked for translation
13538
13539 2004-01-13  Iain <iain@prettypeople.org>
13540
13541         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
13542         group when we add an element to it, cos we unref it when we remove one
13543
13544 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
13545
13546         * testsuite/debug/commandline.c: (debug_not_reached):
13547         * testsuite/debug/output.c: (check_message):
13548           fix testsuite
13549
13550 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13551
13552         * examples/cutter/.cvsignore:
13553         * examples/helloworld/.cvsignore:
13554         * examples/launch/.cvsignore:
13555         * examples/manual/.cvsignore:
13556         * examples/mixer/.cvsignore:
13557         * examples/pingpong/.cvsignore:
13558         * examples/plugins/.cvsignore:
13559         * examples/queue/.cvsignore:
13560         * examples/queue2/.cvsignore:
13561         * examples/queue3/.cvsignore:
13562         * examples/queue4/.cvsignore:
13563         * examples/retag/.cvsignore:
13564         * examples/thread/.cvsignore:
13565         * examples/typefind/.cvsignore:
13566         * examples/xml/.cvsignore:
13567         * gst/.cvsignore:
13568         * gst/autoplug/.cvsignore:
13569         * gst/elements/.cvsignore:
13570         * gst/indexers/.cvsignore:
13571         * gst/parse/.cvsignore:
13572         * gst/registries/.cvsignore:
13573         * gst/schedulers/.cvsignore:
13574         * libs/gst/bytestream/.cvsignore:
13575         * libs/gst/control/.cvsignore:
13576         * libs/gst/getbits/.cvsignore:
13577         * tests/.cvsignore:
13578         * tests/bufspeed/.cvsignore:
13579         * tests/instantiate/.cvsignore:
13580         * tests/memchunk/.cvsignore:
13581         * tests/muxing/.cvsignore:
13582         * tests/sched/.cvsignore:
13583         * tests/seeking/.cvsignore:
13584         * tests/threadstate/.cvsignore:
13585         * testsuite/.cvsignore:
13586         * testsuite/caps/.cvsignore:
13587         * testsuite/cleanup/.cvsignore:
13588         * testsuite/dynparams/.cvsignore:
13589         * testsuite/plugin/.cvsignore:
13590         * tools/.cvsignore:
13591           update - this is huge, because it includes *.bb, *.bbg and *.da files
13592           which are generated for gcov.
13593
13594 2004-01-11  David Schleef  <ds@schleef.org>
13595
13596         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
13597         a function to parse integers in ways that strto[u]l() does not.
13598
13599 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13600
13601         * tools/gst-inspect.c: (print_caps):
13602           improve output of caps a bit
13603
13604 2004-01-11  David Schleef  <ds@schleef.org>
13605
13606         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
13607         inherit correct flags (READONLY and DONTKEEP).
13608
13609 2004-01-11  David Schleef  <ds@schleef.org>
13610
13611         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
13612         (gst_filesrc_map_region):
13613         * gst/gstbuffer.c: (_gst_buffer_initialize),
13614         (_gst_buffer_sub_free), (gst_buffer_default_copy),
13615         (gst_buffer_new), (gst_buffer_create_sub),
13616         (gst_buffer_is_span_fast), (gst_buffer_span):
13617         * gst/gstbuffer.h:
13618         Change GstBuffer private structure element names. (all files)
13619         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
13620         (gst_queue_link):
13621         * gst/gstqueue.h:
13622         Implement getcaps/pad_link functions that handle the case where
13623         there are data in the queue.
13624
13625 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13626
13627         * gst/elements/gstbufferstore.c:
13628           initialize debugging structure correctly
13629         * gst/elements/gsttee.c: (gst_tee_set_property):
13630           g_object_notify when property was changed
13631         * gst/elements/gsttypefindelement.c:
13632         (gst_type_find_element_change_state):
13633           clear caps correctly
13634
13635 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13636
13637         * gst/gstqueue.c: (gst_queue_init):
13638           Use better defaults for when a queue should block. This
13639           gets rid of jerky playback for quite a few files.
13640           It takes more memory.
13641
13642 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
13643
13644         (gst_xml_registry_parse_padtemplate):
13645           make critical message slightly more useful
13646
13647 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13648
13649         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
13650         (gst_debug_message_get), (gst_debug_log_default):
13651         * gst/gstinfo.h:
13652           Change gst_debug_log(_valist) to take a const format string.
13653           Change prototype of log function and functions using those to 
13654           take a GstDebugMessage instead of a string that requires using
13655           gst_debug_message_get.
13656
13657 2004-01-08  David Schleef  <ds@schleef.org>
13658
13659         * Makefile.am:
13660         * configure.ac:
13661         Add option --enable-gcov to build GStreamer with -fprofile-arcs
13662         and -ftest-coverage, which allows gcov to show information about
13663         testsuite coverage.
13664
13665 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13666
13667         * gst/gstutils.h:
13668           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
13669           GST_PARENT_CALL_WITH_DEFAULT
13670         * gst/elements/gstaggregator.c: 
13671         * gst/elements/gstbufferstore.c: 
13672         * gst/elements/gstfakesink.c: 
13673         * gst/elements/gstfakesrc.c: 
13674         * gst/elements/gstfdsink.c: 
13675         * gst/elements/gstfdsrc.c: 
13676         * gst/elements/gstfilesink.c: 
13677         * gst/elements/gstfilesrc.c: 
13678         * gst/elements/gstidentity.c: 
13679         * gst/elements/gstmd5sink.c: 
13680         * gst/elements/gstmultidisksrc.c:
13681         * gst/elements/gstpipefilter.c: 
13682         * gst/elements/gstshaper.c:
13683         * gst/elements/gststatistics.c:
13684         * gst/elements/gsttee.c:
13685         * gst/elements/gsttypefindelement.c:
13686           use them.
13687
13688 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
13689
13690         * docs/gst/gstreamer-docs.sgml: remove props
13691         * docs/gst/gstreamer-sections.txt: remove props
13692         * docs/gst/tmpl/gst.sgml:
13693         * docs/gst/tmpl/gstbin.sgml:
13694         * docs/gst/tmpl/gstbuffer.sgml:
13695         * docs/gst/tmpl/gstcaps.sgml:
13696         * docs/gst/tmpl/gstclock.sgml:
13697         * docs/gst/tmpl/gstelement.sgml:
13698         * docs/gst/tmpl/gstindex.sgml:
13699         * docs/gst/tmpl/gstobject.sgml:
13700         * docs/gst/tmpl/gstpad.sgml:
13701         * docs/gst/tmpl/gstpadtemplate.sgml:
13702         * docs/gst/tmpl/gstreamer-unused.sgml:
13703         * docs/gst/tmpl/gstthread.sgml:
13704         * docs/gst/tmpl/gstxml.sgml:
13705           sync with code reorganization
13706
13707 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
13708
13709         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13710         Make the 'Could not find compatible pad' message more informative.
13711
13712 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13713                                                                                 
13714         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
13715           Fix for if we pass NULL as property to location.
13716         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
13717         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
13718           Fix for instantiate-test (see below).
13719         * gst/gststructure.c: (_gst_structure_parse_value):
13720           Fix compile error on gcc-2.96.
13721         * configure.ac:
13722         * tests/Makefile.am:
13723         * tests/instantiate/Makefile.am:
13724         * tests/instantiate/create.c: (create_all_elements), (main):
13725           Add a test that instantiates all elements. This makes it easy to
13726           track dead code for old API/design (like setting event functions
13727           on sink pads and so on).
13728
13729 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
13730
13731         * gst/gstcaps.c: (gst_caps_append_structure):
13732           Move the poisoning to allow a NULL structure
13733         * gst/gstevent.c: (_gst_event_free):
13734           When freeing a navigation event, free the structure
13735           also
13736
13737 2004-01-04  David Schleef  <ds@schleef.org>
13738
13739         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13740         Remove usage of gst_pad_proxy_fixate.
13741         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
13742         (gst_caps_split_one), (gst_caps_replace):
13743         Add poisoning code.
13744         * gst/gstmarshal.list:
13745         Add pointer__pointer for fixate signal
13746         * gst/gstpad.c: (gst_real_pad_class_init),
13747         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
13748         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
13749         (gst_pad_set_explicit_caps), (gst_pad_template_new):
13750         Add poisoning code. Add fixate signal on RealPad. Change
13751         set_explicit_caps() to take const GstCaps, like try_set_caps().
13752         * gst/gstpad.h:
13753         * testsuite/caps/Makefile.am:
13754         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
13755
13756 2004-01-03  David Schleef  <ds@schleef.org>
13757
13758         * gst/elements/gsttypefindelement.c:
13759         (gst_type_find_element_have_type), (gst_type_find_element_init):
13760         Use gst_pad_use_explicit_caps for src pad.
13761         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
13762         before using it.
13763
13764 2004-01-03  David Schleef  <ds@schleef.org>
13765
13766         * gst/gstelement.c: (gst_element_link_pads_filtered),
13767         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
13768         that linking was successful.
13769         * gst/gstpad.c: (gst_pad_link_free),
13770         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
13771         (gst_pad_link_try), (gst_pad_link_unnegotiate),
13772         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
13773         GstPadLinkReturn correctly between functions, and don't fail
13774         when DELAYED is used (DELAYED is very important).  Better
13775         cleanup on unlinking and unnegotiation.  Should fix some spider
13776         bugs.
13777
13778 2004-01-02  David Schleef  <ds@schleef.org>
13779
13780         * gst/gstelement.c: (gst_element_class_init),
13781         (gst_element_base_class_init): ->padtemplates should be cleared
13782         in base_init, since we need to have a fresh list for every
13783         class.  (Alternately, we chould copy the list and share the
13784         actual pad templates (not the list), but that would require
13785         changing every plugin to move pad template registration from
13786         base_init to class_init.)
13787
13788 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13789
13790         * gst/gstelement.c: (gst_element_class_add_pad_template):
13791           Refuse registering a pad template if another pad template
13792           with the same name already exists (#114715).
13793
13794 2004-01-02  David Schleef  <ds@schleef.org>
13795
13796         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
13797         (gst_caps_is_equal_fixed): Add new function.
13798         * gst/gstcaps.h: ditto.
13799         * gst/gstpad.c: (gst_real_pad_class_init),
13800         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
13801         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
13802         check new caps against existing caps -- if they're the same, return
13803         OK without renegotiating.  caps-nego-failed signal fixed so that
13804         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
13805         to save an extra caps copy.  Don't complete negotiation if a pad
13806         link function returns DELAYED.
13807
13808 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13809
13810         * gst/gstpad.c: (gst_pad_try_relink_filtered):
13811           Fix wrong g_return_if_fail
13812
13813 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
13814
13815         * gst/gstbin.c: (gst_bin_class_init):
13816         Change the marshalling of element_added/element_removed
13817         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
13818         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
13819
13820 2004-01-01  David Schleef  <ds@schleef.org>
13821
13822         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13823         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
13824         (gst_pad_use_explicit_caps):
13825         * gst/gstpad.h:
13826         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
13827         to use an internal getcaps and link fuction so that negotiation
13828         always results in the explicitly set caps.
13829         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
13830         are particularly useful for decoders.
13831
13832 2003-12-31  David Schleef  <ds@schleef.org>
13833
13834         * gst/elements/gstidentity.c: (gst_identity_class_init),
13835         (gst_identity_init), (gst_identity_chain),
13836         (gst_identity_set_property), (gst_identity_get_property):
13837         * gst/elements/gstidentity.h:
13838         * gst/gstqueue.c: (gst_queue_init):
13839           Negotiation fixes.
13840
13841 2003-12-31  David Schleef  <ds@schleef.org>
13842
13843         * gst/gstcaps.c: (gst_caps_intersect),
13844         (_gst_caps_normalize_foreach), (gst_caps_normalize):
13845           Implement gst_caps_normalize().
13846         * testsuite/caps/normalisation.c: (main):
13847           Add an additional test
13848
13849 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13850
13851         * gst/gstqueue.c: (gst_queue_init):
13852           use gst_pad_proxy_getcaps()
13853
13854 2003-12-31  David Schleef  <ds@schleef.org>
13855
13856         * gst/elements/gstshaper.c: (gst_shaper_link):
13857         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13858         * gst/gstqueue.c: (gst_queue_link):
13859           Negotiation fixes.
13860
13861 2003-12-31  David Schleef  <ds@schleef.org>
13862
13863         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
13864         * gst/gstpad.h: Add functions that are useful as default pad
13865         link and fixate functions for elements.
13866
13867 2003-12-30  David Schleef  <ds@schleef.org>
13868
13869         * gst/gstpad.c: (gst_pad_link_try):
13870           Fix segfault when attempting to return to old caps
13871
13872 2003-12-29  David Schleef  <ds@schleef.org>
13873
13874         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
13875         (gst_caps_structure_simplify), (gst_caps_simplify):
13876         * gst/gstcaps.h:
13877           Add simplify function
13878         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
13879         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
13880         * gst/gstpad.h:
13881           Copy over srcnotify, sinknotify when calling old pad_link
13882           functions.  Add new is_negotiated() function.
13883         * gst/gststructure.c: (gst_structure_copy):
13884           Fix an incredibly stupid bug that should have been noticed
13885           weeks ago.  _copy() returned the argument, not the new copy.
13886
13887 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13888
13889         * gst/gstcaps.c: (gst_caps_append):
13890           add sanity checks
13891         * gst/gstcaps.h: (gst_caps_debug):
13892           remove, it doesn't exist anymore.
13893         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
13894         (gst_element_threadsafe_properties_post_run):
13895           make debugging messages not clutter up THREAD debug category
13896         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
13897         (gst_element_change_state):
13898           update to new caps API
13899         * gst/gstinterface.c: (gst_implements_interface_cast):
13900           don't put vital code in g_return_if_fail
13901         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
13902         (gst_pad_link_filtered):
13903           add pst_pad_try_link and use it.
13904         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
13905           implement correctly, deprecate first one.
13906         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
13907           add and implement.
13908         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
13909           implement.
13910         (gst_pad_get_negotiated_caps):
13911           add and implement. Make GST_PAD_CAPS call this function.
13912         (gst_pad_get_caps):
13913           remove unneeded check..
13914         (gst_pad_recover_caps_error):
13915           disable, always return FALSE.
13916         (gst_real_pad_dispose):
13917           don't free caps and appfilter anymore, they're unused.
13918         * gst/gstpad.h:
13919           Reflect changes mentioned above.
13920         * gst/gstsystemclock.c: (gst_system_clock_wait):
13921           Make 'clock is way behind' a debugging message.
13922         * gst/gstthread.c: (gst_thread_change_state):
13923           Fix debugging message
13924
13925 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
13926
13927         * gst/gstinfo.h:
13928           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
13929         * docs/gst/tmpl/gstreamer-unused.sgml:
13930           removed all traces of cvs conflicts
13931
13932 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13933
13934         * configure.ac:
13935         * gst/schedulers/cothreads_compat.h:
13936         * libs/Makefile.am:
13937           remove last instances of wingo cothread usage
13938
13939 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13940
13941         * gst/gstplugin.c:
13942         * gst/gstversion.h.in:
13943         * gst/parse/grammar.y:
13944           change comment block from /** to /* when not gtk-doc comments
13945
13946 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13947
13948         * gst/gst.c: whitespace and doc style fixes
13949
13950 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13951
13952         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
13953
13954 2003-12-24  Colin Walters  <walters@verbum.org>
13955
13956         * gst/elements/gsttypefindelement.c:
13957           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
13958           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
13959           Don't double-free caps.
13960
13961 2003-12-23  David Schleef  <ds@schleef.org>
13962
13963         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
13964           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
13965           Many little fixes and additions of debug statements to
13966           get rhythmbox working.
13967
13968 2003-12-23  Colin Walters  <walters@verbum.org>
13969
13970         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
13971         Use GST_PAD_LINK_SUCCESSFUL.
13972
13973 2003-12-23  David Schleef  <ds@schleef.org>
13974
13975         * gst/elements/gstaggregator.c:
13976         * gst/elements/gsttee.c:
13977           Use gst_pad_proxy_getcaps().
13978         * gst/gstpad.c:
13979         * gst/gstpad.h:
13980           Add gst_pad_proxy_getcaps(), which filter elements can use
13981           as a generic getcaps implementation.
13982           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
13983           was advertised.
13984
13985 2003-12-23  David Schleef  <ds@schleef.org>
13986
13987         * gst/gstpad.c:
13988           Rearrange/rewrite much of the pad negotiation code, since it
13989           resembled pasta.  This actually changes the way some
13990           negotiation works, since the previous code was inconsistent
13991           depending on how it was invoked.  Add (internal) structure
13992           GstPadLink, which is used to hold some information (more in
13993           the future) about the link between two pads.  Fixes a number
13994           of bugs, including random lossage of filter caps when the
13995           initial negotiation is delayed.  A few functions are still
13996           unimplemented.
13997         * gst/gstpad.h:
13998           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
13999           these when testing GstPadLinkReturn values instead of comparing
14000           directly.
14001
14002 2003-12-23  David Schleef  <ds@schleef.org>
14003
14004         * gst/gstvalue.c: 
14005         * gst/gstvalue.h:
14006           Rearrange lots of code.  Change registration of compare function
14007           into registration of compare/serialize/deserialize functions.
14008           Doesn't include implementation of gst_value_[de]serialize(),
14009           but that should be easy.
14010
14011 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
14012
14013         * docs/gst/gstreamer-sections.txt:
14014         * docs/gst/tmpl/gstprops.sgml: removed
14015         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
14016           David removed props and caps code, so let's remove their docs as well.
14017           Removed all no longer existing symbols from gstreamer-sections.txt
14018           
14019 2003-12-22  Colin Walters  <walters@verbum.org>
14020
14021         * gst/gsttaginterface.c, gst/gsttaginterface.h,
14022           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
14023           of tags directly.
14024
14025 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14026
14027         * gst/elements/gstelements.c:
14028           Set ranks of elements to NONE, so the autoplugger doesn't use them.
14029         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
14030           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
14031           gst_caps (peer).
14032
14033 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14034
14035         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
14036         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
14037         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
14038         (gst_spider_identity_sink_loop_type_finding):
14039         * gst/autoplug/gstspideridentity.h:
14040           Fix autoplugging in spider element, so it works with new caps.
14041           This was mainly caused by identifying empty caps incorrectly.
14042
14043 2003-12-22  David Schleef  <ds@schleef.org>
14044
14045         * gststructure.c, gstvalue.c, gstvalue.h: Add
14046           gst_value_init_and_copy() and use it, to avoid silly mistakes in
14047           using g_value_copy()
14048
14049 2003-12-21  David Schleef  <ds@schleef.org>
14050
14051         * many, many files: Merge CAPS branch.  This includes:
14052           - implemention of GstValue and several GstValue types
14053           - implemention of GstStructure
14054           - entire rewrite of GstCaps
14055           - removal of GstProps
14056           - many changes to GstPad to compensate for new caps paradigm
14057           - removal of GstBufferpool
14058         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
14059         gstvalue.h, gst/gstcaps[2]*.[ch]:
14060           - rename gstcaps2.[ch] to gstcaps.[ch]
14061
14062 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
14063
14064         * gst/gstqueue.c: (gst_queue_handle_pending_events),
14065         (gst_queue_chain), (gst_queue_handle_src_event):
14066           implement timeout for sending events. Workaround for if the
14067           pipeline on this queue is not passing any data.
14068
14069 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
14070                                                                                 
14071         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
14072         * moved CVS to freedesktop.org